@anvia/core 0.13.5 → 0.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agent/index.d.ts +11 -11
- package/dist/agent/index.js +8 -8
- package/dist/{agent-W8sT6P5T.d.ts → agent-C1yoidvI.d.ts} +15 -8
- package/dist/audio-generation/index.d.ts +1 -1
- package/dist/{chunk-6FLW6XS6.js → chunk-7NULHGAO.js} +3 -3
- package/dist/{chunk-XH6LZMGH.js → chunk-BIYXGG33.js} +6 -6
- package/dist/chunk-BIYXGG33.js.map +1 -0
- package/dist/{chunk-TTKCFLW6.js → chunk-BPU264XB.js} +6 -6
- package/dist/{chunk-3LB36HON.js → chunk-CNANX5OL.js} +52 -17
- package/dist/chunk-CNANX5OL.js.map +1 -0
- package/dist/{chunk-77D7XBWL.js → chunk-DC2GJDPR.js} +2 -2
- package/dist/{chunk-LJT67CFB.js → chunk-GCZIIYZW.js} +7 -6
- package/dist/chunk-GCZIIYZW.js.map +1 -0
- package/dist/{chunk-F3C5653H.js → chunk-I7TM7TKX.js} +4 -4
- package/dist/{chunk-3LMKHICK.js → chunk-MEUZ4NBO.js} +2 -2
- package/dist/{chunk-IBKCOBAS.js → chunk-QTZHDPQX.js} +2 -2
- package/dist/{chunk-FE5QL4G3.js → chunk-TIV3WFSR.js} +1 -1
- package/dist/{chunk-FE5QL4G3.js.map → chunk-TIV3WFSR.js.map} +1 -1
- package/dist/completion/index.d.ts +3 -3
- package/dist/completion/index.js +2 -2
- package/dist/evals/index.d.ts +8 -8
- package/dist/evals/index.js +9 -9
- package/dist/extractor/index.d.ts +8 -8
- package/dist/extractor/index.js +9 -9
- package/dist/guardrails/index.d.ts +1 -1
- package/dist/hooks/index.d.ts +3 -3
- package/dist/image-generation/index.d.ts +1 -1
- package/dist/{index-BtyK30mL.d.ts → index-VH93vDXo.d.ts} +32 -10
- package/dist/index.d.ts +12 -12
- package/dist/index.js +11 -11
- package/dist/internal/agent.d.ts +8 -8
- package/dist/internal/agent.js +7 -7
- package/dist/{json-BOHFS4AG.d.ts → json-CaCUxJqG.d.ts} +1 -1
- package/dist/loaders/index.d.ts +1 -1
- package/dist/mcp/index.d.ts +4 -4
- package/dist/memory/index.d.ts +3 -3
- package/dist/{middleware-D6p0Uzky.d.ts → middleware-CGEYQndv.d.ts} +3 -3
- package/dist/observability/index.d.ts +3 -3
- package/dist/pipeline/index.d.ts +8 -8
- package/dist/request/index.d.ts +8 -8
- package/dist/request/index.js +6 -6
- package/dist/skills/index.d.ts +4 -4
- package/dist/skills/index.js +5 -5
- package/dist/{think-tool-B7p_7_5P.d.ts → think-tool-DABDgW_E.d.ts} +1 -1
- package/dist/tool/index.d.ts +5 -5
- package/dist/tool/index.js +5 -5
- package/dist/{tool-DhT6kR0Z.d.ts → tool-tHPNeWMR.d.ts} +2 -1
- package/dist/transcription/index.d.ts +1 -1
- package/dist/{types-9TeQF79I.d.ts → types-BHxJcHMk.d.ts} +1 -1
- package/dist/{types-CibT6_rS.d.ts → types-BbLcbRqM.d.ts} +2 -2
- package/dist/{types-BNq9tWdA.d.ts → types-Byo50mwr.d.ts} +4 -1
- package/dist/{types-BjPcB4PA.d.ts → types-D78Vnorg.d.ts} +1 -1
- package/dist/{types-CaXSh3vK.d.ts → types-DPYoqg8M.d.ts} +1 -1
- package/dist/{types-Cz24JCei.d.ts → types-DW1Va3vx.d.ts} +1 -1
- package/dist/ui/index.d.ts +1 -1
- package/dist/ui/index.js +2 -2
- package/dist/vector-store/index.d.ts +4 -4
- package/dist/vector-store/index.js +2 -2
- package/package.json +1 -1
- package/dist/chunk-3LB36HON.js.map +0 -1
- package/dist/chunk-LJT67CFB.js.map +0 -1
- package/dist/chunk-XH6LZMGH.js.map +0 -1
- /package/dist/{chunk-6FLW6XS6.js.map → chunk-7NULHGAO.js.map} +0 -0
- /package/dist/{chunk-TTKCFLW6.js.map → chunk-BPU264XB.js.map} +0 -0
- /package/dist/{chunk-77D7XBWL.js.map → chunk-DC2GJDPR.js.map} +0 -0
- /package/dist/{chunk-F3C5653H.js.map → chunk-I7TM7TKX.js.map} +0 -0
- /package/dist/{chunk-3LMKHICK.js.map → chunk-MEUZ4NBO.js.map} +0 -0
- /package/dist/{chunk-IBKCOBAS.js.map → chunk-QTZHDPQX.js.map} +0 -0
package/dist/agent/index.d.ts
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import { D as DynamicContextOptions, b as DynamicToolOptions, c as AgentEventStore, d as AgentEventStoreOptions, A as Agent } from '../agent-
|
|
2
|
-
export { e as AgentEventAppendInput, f as AgentEventRecord, g as AgentEventStoreInclude, h as AgentSession, i as AgentToolOptions } from '../agent-
|
|
1
|
+
import { D as DynamicContextOptions, b as DynamicToolOptions, c as AgentEventStore, d as AgentEventStoreOptions, A as Agent } from '../agent-C1yoidvI.js';
|
|
2
|
+
export { e as AgentEventAppendInput, f as AgentEventRecord, g as AgentEventStoreInclude, h as AgentSession, i as AgentToolOptions } from '../agent-C1yoidvI.js';
|
|
3
3
|
import { Z as ZodSchema } from '../zod-schema-C7F4clpm.js';
|
|
4
|
-
import { C as CompletionModel, g as JsonValue, v as ToolChoice } from '../types-
|
|
4
|
+
import { C as CompletionModel, g as JsonValue, v as ToolChoice } from '../types-Byo50mwr.js';
|
|
5
5
|
import { GuardrailPolicyInput } from '../guardrails/index.js';
|
|
6
|
-
import { P as PromptHook } from '../types-
|
|
7
|
-
import { a as McpServer } from '../types-
|
|
8
|
-
import { e as MemoryStore, f as MemoryOptions } from '../types-
|
|
9
|
-
import {
|
|
10
|
-
import { a as SkillSet } from '../types-
|
|
11
|
-
import { k as ToolSearchDocument, l as ToolSet, A as AgentMiddleware, e as ToolMiddleware } from '../middleware-
|
|
12
|
-
import { A as AnyTool, e as ToolApprovalsOptions } from '../tool-
|
|
13
|
-
import { a as VectorSearchIndex } from '../types-
|
|
6
|
+
import { P as PromptHook } from '../types-D78Vnorg.js';
|
|
7
|
+
import { a as McpServer } from '../types-BbLcbRqM.js';
|
|
8
|
+
import { e as MemoryStore, f as MemoryOptions } from '../types-DPYoqg8M.js';
|
|
9
|
+
import { i as AgentObserver, O as ObserveOptions } from '../index-VH93vDXo.js';
|
|
10
|
+
import { a as SkillSet } from '../types-DW1Va3vx.js';
|
|
11
|
+
import { k as ToolSearchDocument, l as ToolSet, A as AgentMiddleware, e as ToolMiddleware } from '../middleware-CGEYQndv.js';
|
|
12
|
+
import { A as AnyTool, e as ToolApprovalsOptions } from '../tool-tHPNeWMR.js';
|
|
13
|
+
import { a as VectorSearchIndex } from '../types-BHxJcHMk.js';
|
|
14
14
|
import 'zod';
|
|
15
15
|
import '@modelcontextprotocol/sdk/client/sse.js';
|
|
16
16
|
import '@modelcontextprotocol/sdk/client/stdio.js';
|
package/dist/agent/index.js
CHANGED
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
import {
|
|
2
2
|
AgentBuilder
|
|
3
|
-
} from "../chunk-
|
|
4
|
-
import "../chunk-
|
|
5
|
-
import "../chunk-
|
|
3
|
+
} from "../chunk-7NULHGAO.js";
|
|
4
|
+
import "../chunk-GCZIIYZW.js";
|
|
5
|
+
import "../chunk-CNANX5OL.js";
|
|
6
6
|
import "../chunk-YK4WAAS4.js";
|
|
7
7
|
import "../chunk-XUUY2L2D.js";
|
|
8
|
-
import "../chunk-
|
|
9
|
-
import "../chunk-
|
|
8
|
+
import "../chunk-BIYXGG33.js";
|
|
9
|
+
import "../chunk-I7TM7TKX.js";
|
|
10
10
|
import "../chunk-2ODTMRHP.js";
|
|
11
11
|
import "../chunk-M6RPFHG7.js";
|
|
12
|
+
import "../chunk-QTZHDPQX.js";
|
|
13
|
+
import "../chunk-TIV3WFSR.js";
|
|
14
|
+
import "../chunk-WQKHFADH.js";
|
|
12
15
|
import "../chunk-YBBD4HZ3.js";
|
|
13
16
|
import "../chunk-OIMLU4SF.js";
|
|
14
|
-
import "../chunk-IBKCOBAS.js";
|
|
15
|
-
import "../chunk-FE5QL4G3.js";
|
|
16
|
-
import "../chunk-WQKHFADH.js";
|
|
17
17
|
import "../chunk-CWUJUSOS.js";
|
|
18
18
|
export {
|
|
19
19
|
AgentBuilder
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { C as CompletionModel, M as Message, D as Document, g as JsonValue, v as ToolChoice, J as JsonObject } from './types-
|
|
1
|
+
import { C as CompletionModel, M as Message, D as Document, g as JsonValue, v as ToolChoice, J as JsonObject } from './types-Byo50mwr.js';
|
|
2
2
|
import { GuardrailPolicyInput, GuardrailPolicy } from './guardrails/index.js';
|
|
3
|
-
import { P as PromptHook } from './types-
|
|
4
|
-
import { h as MemoryContext, j as MemoryRegistration, S as SessionOptions } from './types-
|
|
5
|
-
import {
|
|
6
|
-
import { e as ToolApprovalsOptions, T as Tool, A as AnyTool, f as ToolCallContext, N as NormalizedToolOutput } from './tool-
|
|
7
|
-
import { A as AgentMiddleware, e as ToolMiddleware, k as ToolSearchDocument, l as ToolSet } from './middleware-
|
|
8
|
-
import { V as VectorFilter, c as VectorSearchResult, a as VectorSearchIndex } from './types-
|
|
3
|
+
import { P as PromptHook } from './types-D78Vnorg.js';
|
|
4
|
+
import { h as MemoryContext, j as MemoryRegistration, S as SessionOptions } from './types-DPYoqg8M.js';
|
|
5
|
+
import { j as AgentTraceOptions, P as PromptResponse, d as AgentStreamEvent, f as AgentStreamEventWithoutToolCallDeltas, g as AgentStreamOptions, k as AgentObserverRegistration } from './index-VH93vDXo.js';
|
|
6
|
+
import { e as ToolApprovalsOptions, T as Tool, A as AnyTool, f as ToolCallContext, N as NormalizedToolOutput } from './tool-tHPNeWMR.js';
|
|
7
|
+
import { A as AgentMiddleware, e as ToolMiddleware, k as ToolSearchDocument, l as ToolSet } from './middleware-CGEYQndv.js';
|
|
8
|
+
import { V as VectorFilter, c as VectorSearchResult, a as VectorSearchIndex } from './types-BHxJcHMk.js';
|
|
9
9
|
|
|
10
10
|
type CompletionRetryContext = {
|
|
11
11
|
error: unknown;
|
|
@@ -66,7 +66,14 @@ declare class PromptRequest<M extends CompletionModel = CompletionModel> {
|
|
|
66
66
|
steer(input: string | Message | Message[]): boolean;
|
|
67
67
|
send(): Promise<PromptResponse>;
|
|
68
68
|
stream(): AsyncIterable<AgentStreamEvent>;
|
|
69
|
-
|
|
69
|
+
stream(options: {
|
|
70
|
+
includeToolCallDeltas: false;
|
|
71
|
+
}): AsyncIterable<AgentStreamEventWithoutToolCallDeltas>;
|
|
72
|
+
stream(options: {
|
|
73
|
+
includeToolCallDeltas?: true;
|
|
74
|
+
}): AsyncIterable<AgentStreamEvent>;
|
|
75
|
+
stream(options: AgentStreamOptions): AsyncIterable<AgentStreamEvent>;
|
|
76
|
+
readableStream(options?: AgentStreamOptions): ReadableStream<Uint8Array>;
|
|
70
77
|
private runCompletion;
|
|
71
78
|
private generatedAssistantMessage;
|
|
72
79
|
private providerTraceRequest;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
Agent,
|
|
3
3
|
normalizeAgentId
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-GCZIIYZW.js";
|
|
5
5
|
import {
|
|
6
6
|
ToolSet
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-BIYXGG33.js";
|
|
8
8
|
import {
|
|
9
9
|
resolveMemoryOptions
|
|
10
10
|
} from "./chunk-M6RPFHG7.js";
|
|
@@ -212,4 +212,4 @@ var AgentBuilder = class {
|
|
|
212
212
|
export {
|
|
213
213
|
AgentBuilder
|
|
214
214
|
};
|
|
215
|
-
//# sourceMappingURL=chunk-
|
|
215
|
+
//# sourceMappingURL=chunk-7NULHGAO.js.map
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import {
|
|
2
2
|
InMemoryVectorStore,
|
|
3
3
|
createTool
|
|
4
|
-
} from "./chunk-
|
|
5
|
-
import {
|
|
6
|
-
embedDocuments
|
|
7
|
-
} from "./chunk-YBBD4HZ3.js";
|
|
4
|
+
} from "./chunk-I7TM7TKX.js";
|
|
8
5
|
import {
|
|
9
6
|
isToolResultContentArray,
|
|
10
7
|
serializeToolResultOutput
|
|
11
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-TIV3WFSR.js";
|
|
9
|
+
import {
|
|
10
|
+
embedDocuments
|
|
11
|
+
} from "./chunk-YBBD4HZ3.js";
|
|
12
12
|
|
|
13
13
|
// src/tool/errors.ts
|
|
14
14
|
var ToolCallError = class extends Error {
|
|
@@ -224,4 +224,4 @@ export {
|
|
|
224
224
|
createToolMiddleware,
|
|
225
225
|
createThinkTool
|
|
226
226
|
};
|
|
227
|
-
//# sourceMappingURL=chunk-
|
|
227
|
+
//# sourceMappingURL=chunk-BIYXGG33.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/tool/errors.ts","../src/tool/tool.ts","../src/tool/tool-set.ts","../src/tool/dynamic-tools.ts","../src/tool/middleware.ts","../src/tool/think-tool.ts"],"sourcesContent":["export class ToolCallError extends Error {\n constructor(\n message: string,\n readonly cause?: unknown,\n ) {\n super(message);\n this.name = \"ToolCallError\";\n }\n}\n\nexport class ToolNotFoundError extends Error {\n constructor(readonly toolName: string) {\n super(`Tool not found: ${toolName}`);\n this.name = \"ToolNotFoundError\";\n }\n}\n\nexport class ToolJsonError extends Error {\n constructor(\n message: string,\n readonly cause?: unknown,\n ) {\n super(message);\n this.name = \"ToolJsonError\";\n }\n}\n","import type { JsonObject, JsonValue, ToolDefinition, ToolResultContent } from \"../completion/types\";\nimport {\n isToolResultContentArray,\n serializeToolResultOutput as serializeToolOutput,\n} from \"../completion/types\";\n\nexport type ToolApprovalRunContext = {\n agentId: string;\n runId: string;\n sessionId?: string;\n metadata?: JsonObject;\n};\n\nexport type ToolApprovalContext<Args = unknown> = {\n toolName: string;\n args: Args;\n rawArgs: string;\n toolCallId?: string;\n internalCallId: string;\n run: ToolApprovalRunContext;\n};\n\nexport type ToolApprovalPolicy<Args = unknown> = {\n when(ctx: ToolApprovalContext<Args>): boolean | Promise<boolean>;\n reason?: string | ((ctx: ToolApprovalContext<Args>) => string | Promise<string>);\n rejectMessage?: string | ((ctx: ToolApprovalContext<Args>) => string | Promise<string>);\n};\n\nexport type ToolApprovalRequest<Args = unknown> = ToolApprovalContext<Args> & {\n reason?: string;\n rejectMessage?: string;\n};\n\nexport type ToolApprovalDecision =\n | boolean\n | { approved: true; reason?: string }\n | { approved: false; reason?: string; rejectMessage?: string };\n\nexport type ToolApprovalsOptions = {\n handler(request: ToolApprovalRequest): ToolApprovalDecision | Promise<ToolApprovalDecision>;\n};\n\nexport type ToolCallStreamEvent = {\n agentId: string;\n agentName?: string | undefined;\n event: unknown;\n};\n\nexport type ToolCallContext = {\n emitStreamEvent?(event: ToolCallStreamEvent): void | Promise<void>;\n includeToolCallDeltas?: boolean;\n};\n\nexport interface Tool<Args = unknown, Output = unknown> {\n readonly name: string;\n readonly approval?: ToolApprovalPolicy<Args>;\n definition(prompt: string): ToolDefinition | Promise<ToolDefinition>;\n call(args: Args, context?: ToolCallContext): Output | Promise<Output>;\n parseApprovalArgs?(args: unknown): Args;\n}\n\nexport type AnyTool = Omit<Tool<unknown, unknown>, \"approval\"> & {\n readonly approval?: unknown;\n};\n\nexport type NormalizedToolOutput = string | ToolResultContent[];\n\nexport const ToolOutput = {\n content(content: ToolResultContent[]): ToolResultContent[] {\n return content;\n },\n};\n\nexport { isToolResultContentArray, serializeToolOutput };\n\nexport function normalizeToolResultOutput(output: unknown): NormalizedToolOutput {\n return isToolResultContentArray(output) ? output : serializeToolOutput(output);\n}\n\nexport function toolResultContentToText(content: ToolResultContent[]): string {\n return content\n .map((item) => (item.type === \"text\" ? item.text : `[image:${item.mediaType ?? \"image/png\"}]`))\n .join(\"\\n\");\n}\n\nexport function parseToolArgs(args: string): JsonValue {\n if (args.trim() === \"\") {\n return {};\n }\n\n return JSON.parse(args) as JsonValue;\n}\n","import type { ToolDefinition } from \"../completion/types\";\nimport { ToolCallError, ToolJsonError, ToolNotFoundError } from \"./errors\";\nimport {\n type AnyTool,\n type NormalizedToolOutput,\n normalizeToolResultOutput,\n parseToolArgs,\n type ToolCallContext,\n} from \"./tool\";\n\nexport class ToolSet {\n private readonly tools = new Map<string, AnyTool>();\n\n static fromTools(tools: AnyTool[]): ToolSet {\n const toolSet = new ToolSet();\n for (const tool of tools) {\n toolSet.addTool(tool);\n }\n return toolSet;\n }\n\n addTool(tool: AnyTool): this {\n this.tools.set(tool.name, tool);\n return this;\n }\n\n addTools(tools: AnyTool[] | ToolSet): this {\n const values = Array.isArray(tools) ? tools : tools.values();\n for (const tool of values) {\n this.addTool(tool);\n }\n return this;\n }\n\n deleteTool(toolName: string): boolean {\n return this.tools.delete(toolName);\n }\n\n contains(toolName: string): boolean {\n return this.tools.has(toolName);\n }\n\n get(toolName: string): AnyTool | undefined {\n return this.tools.get(toolName);\n }\n\n values(): AnyTool[] {\n return [...this.tools.values()];\n }\n\n async getToolDefinitions(prompt = \"\"): Promise<ToolDefinition[]> {\n const defs: ToolDefinition[] = [];\n for (const tool of this.tools.values()) {\n defs.push(await tool.definition(prompt));\n }\n return defs;\n }\n\n async call(\n toolName: string,\n args: string,\n context?: ToolCallContext,\n ): Promise<NormalizedToolOutput> {\n const tool = this.tools.get(toolName);\n if (tool === undefined) {\n throw new ToolNotFoundError(toolName);\n }\n\n let parsedArgs: unknown;\n try {\n parsedArgs = parseToolArgs(args);\n } catch (error) {\n throw new ToolJsonError(`Invalid JSON arguments for tool ${toolName}`, error);\n }\n\n try {\n const output = await tool.call(parsedArgs, context);\n return normalizeToolResultOutput(output);\n } catch (error) {\n if (error instanceof Error) {\n throw new ToolCallError(error.message, error);\n }\n throw new ToolCallError(`Tool ${toolName} failed`, error);\n }\n }\n}\n","import type { ToolDefinition } from \"../completion\";\nimport type { EmbeddedDocument, EmbeddingModel, VectorMetadata } from \"../embeddings\";\nimport { embedDocuments } from \"../embeddings\";\nimport type {\n VectorInspectPage,\n VectorInspectRequest,\n VectorSearchResult,\n VectorSearchToolOptions,\n} from \"../vector-store\";\nimport {\n InMemoryVectorStore,\n type VectorSearchIndex,\n type VectorSearchRequest,\n} from \"../vector-store\";\nimport type { AnyTool, Tool } from \"./tool\";\nimport { ToolSet } from \"./tool-set\";\n\nexport type ToolSearchDocument<Metadata extends VectorMetadata = VectorMetadata> = {\n toolName: string;\n definition: ToolDefinition;\n text: string;\n metadata?: Metadata | undefined;\n};\n\nexport type EmbedToolsOptions<Metadata extends VectorMetadata = VectorMetadata> = {\n content?: ((tool: AnyTool, definition: ToolDefinition) => string | string[]) | undefined;\n metadata?: ((tool: AnyTool, definition: ToolDefinition) => Metadata | undefined) | undefined;\n concurrency?: number | undefined;\n};\n\nexport interface DynamicToolIndex<Metadata extends VectorMetadata = VectorMetadata>\n extends VectorSearchIndex<ToolSearchDocument<Metadata>, Metadata> {\n readonly toolSet: ToolSet;\n}\n\nexport async function embedTools<Metadata extends VectorMetadata = VectorMetadata>(\n model: EmbeddingModel,\n tools: AnyTool[] | ToolSet,\n options: EmbedToolsOptions<Metadata> = {},\n): Promise<Array<EmbeddedDocument<ToolSearchDocument<Metadata>, Metadata>>> {\n const toolList = Array.isArray(tools) ? tools : tools.values();\n const definitions = await Promise.all(\n toolList.map(async (tool) => ({ tool, definition: await tool.definition(\"\") })),\n );\n const documents = definitions.map(({ tool, definition }) => {\n const content = options.content?.(tool, definition) ?? defaultToolEmbeddingText(definition);\n const texts = Array.isArray(content) ? content : [content];\n const metadata = options.metadata?.(tool, definition);\n const document: ToolSearchDocument<Metadata> = {\n toolName: tool.name,\n definition,\n text: texts.join(\"\\n\"),\n };\n if (metadata !== undefined) {\n document.metadata = metadata;\n }\n return { tool, document, texts, metadata };\n });\n\n return embedDocuments(model, documents, {\n id: (item) => item.tool.name,\n content: (item) => item.texts,\n metadata: (item) => item.metadata,\n concurrency: options.concurrency,\n }).then((embedded) =>\n embedded.map((item) => ({\n ...item,\n document: item.document.document,\n })),\n );\n}\n\nexport async function createToolIndex<Metadata extends VectorMetadata = VectorMetadata>(\n model: EmbeddingModel,\n tools: AnyTool[] | ToolSet,\n options: EmbedToolsOptions<Metadata> = {},\n): Promise<DynamicToolIndex<Metadata>> {\n const toolSet = Array.isArray(tools) ? ToolSet.fromTools(tools) : tools;\n const embedded = await embedTools(model, toolSet, options);\n const index = InMemoryVectorStore.fromDocuments(embedded).index(model);\n return new DynamicToolSearchIndex(index, toolSet);\n}\n\nexport function isDynamicToolIndex(value: unknown): value is DynamicToolIndex {\n return (\n typeof value === \"object\" &&\n value !== null &&\n \"toolSet\" in value &&\n (value as { toolSet?: unknown }).toolSet instanceof ToolSet\n );\n}\n\nclass DynamicToolSearchIndex<Metadata extends VectorMetadata>\n implements DynamicToolIndex<Metadata>\n{\n readonly inspect?: (\n request: VectorInspectRequest,\n ) => Promise<VectorInspectPage<ToolSearchDocument<Metadata>, Metadata>>;\n\n constructor(\n private readonly index: VectorSearchIndex<ToolSearchDocument<Metadata>, Metadata>,\n readonly toolSet: ToolSet,\n ) {\n if (index.inspect !== undefined) {\n this.inspect = (request) =>\n index.inspect?.(request) as Promise<\n VectorInspectPage<ToolSearchDocument<Metadata>, Metadata>\n >;\n }\n }\n\n search(\n request: VectorSearchRequest,\n ): Promise<Array<VectorSearchResult<ToolSearchDocument<Metadata>, Metadata>>> {\n return this.index.search(request);\n }\n\n searchIds(request: VectorSearchRequest): Promise<Array<{ score: number; id: string }>> {\n return this.index.searchIds(request);\n }\n\n asTool(options: VectorSearchToolOptions): Tool<{ query: string; topK?: number }, unknown> {\n return this.index.asTool(options);\n }\n}\n\nfunction defaultToolEmbeddingText(definition: ToolDefinition): string[] {\n return [definition.name, definition.description, JSON.stringify(definition.parameters)];\n}\n","import type {\n CompletionRequest,\n CompletionResponse,\n JsonValue,\n ToolResultContent,\n} from \"../completion\";\n\ntype MaybePromise<T> = T | Promise<T>;\n\nexport type CompletionRequestMiddlewareArgs = {\n turn: number;\n request: CompletionRequest;\n originalRequest: CompletionRequest;\n};\n\nexport type CompletionRequestMiddlewareResult =\n | {\n request: CompletionRequest;\n }\n | undefined;\n\nexport type CompletionResponseMiddlewareArgs<RawResponse = unknown> = {\n turn: number;\n request: CompletionRequest;\n response: CompletionResponse<RawResponse>;\n originalResponse: CompletionResponse<RawResponse>;\n};\n\nexport type CompletionResponseMiddlewareResult<RawResponse = unknown> =\n | {\n response: CompletionResponse<RawResponse>;\n }\n | undefined;\n\nexport type ToolInputMiddlewareArgs = {\n toolName: string;\n args: string;\n originalArgs: string;\n turn: number;\n toolCallId?: string | undefined;\n internalCallId: string;\n};\n\nexport type ToolInputMiddlewareResult =\n | {\n args: JsonValue | string;\n }\n | undefined;\n\nexport type ToolResultMiddlewareArgs = {\n toolName: string;\n args: string;\n result: string;\n originalResult: string;\n structuredResult?: ToolResultContent[] | undefined;\n originalStructuredResult?: ToolResultContent[] | undefined;\n turn: number;\n toolCallId?: string | undefined;\n internalCallId: string;\n};\n\nexport type ToolOutputMiddlewareArgs = ToolResultMiddlewareArgs;\n\nexport type ToolOutputMiddlewareResult =\n | string\n | {\n result?: string | undefined;\n structuredResult?: ToolResultContent[] | undefined;\n }\n | undefined;\n\nexport interface AgentMiddleware<RawResponse = unknown> {\n onCompletionRequest?(\n args: CompletionRequestMiddlewareArgs,\n ): MaybePromise<CompletionRequestMiddlewareResult>;\n onCompletionResponse?(\n args: CompletionResponseMiddlewareArgs<RawResponse>,\n ): MaybePromise<CompletionResponseMiddlewareResult<RawResponse>>;\n onToolInput?(args: ToolInputMiddlewareArgs): MaybePromise<ToolInputMiddlewareResult>;\n onToolOutput?(args: ToolOutputMiddlewareArgs): MaybePromise<ToolOutputMiddlewareResult>;\n /**\n * @deprecated Use `onToolOutput` instead.\n */\n onResult?(args: ToolResultMiddlewareArgs): string | undefined | Promise<string | undefined>;\n}\n\n/**\n * @deprecated Use `AgentMiddleware` instead.\n */\nexport type ToolMiddleware<RawResponse = unknown> = AgentMiddleware<RawResponse>;\n\nexport function createMiddleware<RawResponse = unknown>(\n middleware: AgentMiddleware<RawResponse>,\n): AgentMiddleware<RawResponse> {\n return middleware;\n}\n\n/**\n * @deprecated Use `createMiddleware` instead.\n */\nexport function createToolMiddleware<RawResponse = unknown>(\n middleware: ToolMiddleware<RawResponse>,\n): ToolMiddleware<RawResponse> {\n return middleware;\n}\n","import { z } from \"zod\";\nimport { createTool } from \"./create-tool\";\n\nconst defaultThinkToolDescription =\n \"Use this tool to record a thought while reasoning through a complex task. It does not retrieve information, store memory, or change external state.\";\n\nconst thinkToolInput = z.object({\n thought: z.string().describe(\"A thought to record while reasoning through a task.\"),\n});\n\nexport type CreateThinkToolOptions = {\n name?: string;\n description?: string;\n};\n\nexport function createThinkTool(options: CreateThinkToolOptions = {}) {\n return createTool({\n name: options.name ?? \"think\",\n description: options.description ?? defaultThinkToolDescription,\n input: thinkToolInput,\n output: z.string(),\n execute: (args) => args.thought,\n });\n}\n"],"mappings":"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","names":[]}
|
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
import {
|
|
2
2
|
AgentBuilder
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-7NULHGAO.js";
|
|
4
4
|
import {
|
|
5
5
|
extractRagText
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-CNANX5OL.js";
|
|
7
7
|
import {
|
|
8
8
|
createTool
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-I7TM7TKX.js";
|
|
10
10
|
import {
|
|
11
11
|
CompletionRequestBuilder
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-QTZHDPQX.js";
|
|
13
13
|
import {
|
|
14
14
|
CompletionCapabilityError,
|
|
15
15
|
Message,
|
|
16
16
|
Usage
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-TIV3WFSR.js";
|
|
18
18
|
|
|
19
19
|
// src/extractor/extractor.ts
|
|
20
20
|
var SUBMIT_TOOL_NAME = "submit";
|
|
@@ -138,4 +138,4 @@ export {
|
|
|
138
138
|
Extractor,
|
|
139
139
|
ExtractorBuilder
|
|
140
140
|
};
|
|
141
|
-
//# sourceMappingURL=chunk-
|
|
141
|
+
//# sourceMappingURL=chunk-BPU264XB.js.map
|
|
@@ -4,18 +4,15 @@ import {
|
|
|
4
4
|
import {
|
|
5
5
|
parseToolArgs,
|
|
6
6
|
toolResultContentToText
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-BIYXGG33.js";
|
|
8
8
|
import {
|
|
9
9
|
runControl,
|
|
10
10
|
toolCallControl
|
|
11
11
|
} from "./chunk-2ODTMRHP.js";
|
|
12
|
-
import {
|
|
13
|
-
mapWithConcurrency
|
|
14
|
-
} from "./chunk-OIMLU4SF.js";
|
|
15
12
|
import {
|
|
16
13
|
CompletionRequestBuilder,
|
|
17
14
|
isStreamingCompletionModel
|
|
18
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-QTZHDPQX.js";
|
|
19
16
|
import {
|
|
20
17
|
AssistantContent,
|
|
21
18
|
Message,
|
|
@@ -23,7 +20,10 @@ import {
|
|
|
23
20
|
Usage,
|
|
24
21
|
assertCompletionRequestSupported,
|
|
25
22
|
textFromAssistantContent
|
|
26
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-TIV3WFSR.js";
|
|
24
|
+
import {
|
|
25
|
+
mapWithConcurrency
|
|
26
|
+
} from "./chunk-OIMLU4SF.js";
|
|
27
27
|
import {
|
|
28
28
|
appendGuardrailPolicies,
|
|
29
29
|
hasEnforcedOutputGuardrails,
|
|
@@ -313,7 +313,11 @@ var CompletionStreamAccumulator = class {
|
|
|
313
313
|
if (event.name !== void 0 && event.name.length > 0) toolCall.name = event.name;
|
|
314
314
|
if (event.signature !== void 0) toolCall.signature = event.signature;
|
|
315
315
|
if (event.argumentsDelta !== void 0) {
|
|
316
|
-
|
|
316
|
+
if (event.argumentsMode === "replace") {
|
|
317
|
+
toolCall.argumentsText = event.argumentsDelta;
|
|
318
|
+
} else {
|
|
319
|
+
toolCall.argumentsText += event.argumentsDelta;
|
|
320
|
+
}
|
|
317
321
|
}
|
|
318
322
|
return void 0;
|
|
319
323
|
}
|
|
@@ -640,6 +644,19 @@ function addTurn(turn, event) {
|
|
|
640
644
|
}
|
|
641
645
|
return { type: "tool_call", turn, toolCall: event.toolCall };
|
|
642
646
|
}
|
|
647
|
+
function addTurnToToolCallDelta(turn, event) {
|
|
648
|
+
const mapped = {
|
|
649
|
+
type: "tool_call_delta",
|
|
650
|
+
turn,
|
|
651
|
+
id: event.id
|
|
652
|
+
};
|
|
653
|
+
if (event.callId !== void 0) mapped.callId = event.callId;
|
|
654
|
+
if (event.name !== void 0) mapped.name = event.name;
|
|
655
|
+
if (event.argumentsDelta !== void 0) mapped.argumentsDelta = event.argumentsDelta;
|
|
656
|
+
if (event.argumentsMode !== void 0) mapped.argumentsMode = event.argumentsMode;
|
|
657
|
+
if (event.signature !== void 0) mapped.signature = event.signature;
|
|
658
|
+
return mapped;
|
|
659
|
+
}
|
|
643
660
|
function isGenerationDeltaEvent(type) {
|
|
644
661
|
return type === "text_delta" || type === "reasoning_delta" || type === "tool_call_delta" || type === "tool_call";
|
|
645
662
|
}
|
|
@@ -647,13 +664,14 @@ function isGenerationDeltaEvent(type) {
|
|
|
647
664
|
// src/internal/prompt-runtime/tool-execution.ts
|
|
648
665
|
var MCP_TOOL_METADATA_KEY = /* @__PURE__ */ Symbol.for("anvia.mcp.tool.metadata");
|
|
649
666
|
var ToolCallExecutor = class {
|
|
650
|
-
constructor(agent, activeHook, approvals, runContext, concurrency, requestMiddlewares, cancel) {
|
|
667
|
+
constructor(agent, activeHook, approvals, runContext, concurrency, requestMiddlewares, includeToolCallDeltas, cancel) {
|
|
651
668
|
this.agent = agent;
|
|
652
669
|
this.activeHook = activeHook;
|
|
653
670
|
this.approvals = approvals;
|
|
654
671
|
this.runContext = runContext;
|
|
655
672
|
this.concurrency = concurrency;
|
|
656
673
|
this.requestMiddlewares = requestMiddlewares;
|
|
674
|
+
this.includeToolCallDeltas = includeToolCallDeltas;
|
|
657
675
|
this.cancel = cancel;
|
|
658
676
|
}
|
|
659
677
|
agent;
|
|
@@ -662,6 +680,7 @@ var ToolCallExecutor = class {
|
|
|
662
680
|
runContext;
|
|
663
681
|
concurrency;
|
|
664
682
|
requestMiddlewares;
|
|
683
|
+
includeToolCallDeltas;
|
|
665
684
|
cancel;
|
|
666
685
|
async execute(toolCalls, onResult, onStreamEvent, observation) {
|
|
667
686
|
for (const toolCall of toolCalls) {
|
|
@@ -829,7 +848,7 @@ var ToolCallExecutor = class {
|
|
|
829
848
|
}) : effectiveArgs;
|
|
830
849
|
hookArgs.args = middlewareArgs;
|
|
831
850
|
try {
|
|
832
|
-
|
|
851
|
+
const toolContext = {
|
|
833
852
|
emitStreamEvent: async (event) => {
|
|
834
853
|
const streamEventArgs = {
|
|
835
854
|
turn: observation?.turn ?? 0,
|
|
@@ -848,7 +867,9 @@ var ToolCallExecutor = class {
|
|
|
848
867
|
onStreamEvent?.(payload);
|
|
849
868
|
}
|
|
850
869
|
}
|
|
851
|
-
}
|
|
870
|
+
};
|
|
871
|
+
toolContext.includeToolCallDeltas = this.includeToolCallDeltas;
|
|
872
|
+
return await this.agent.callTool(toolCall.function.name, middlewareArgs, toolContext);
|
|
852
873
|
} catch (error) {
|
|
853
874
|
const errorAction = await this.activeHook?.onToolError?.({
|
|
854
875
|
...hookArgs,
|
|
@@ -1674,11 +1695,12 @@ var PromptRequest = class _PromptRequest {
|
|
|
1674
1695
|
throw finalError;
|
|
1675
1696
|
}
|
|
1676
1697
|
}
|
|
1677
|
-
async *stream() {
|
|
1698
|
+
async *stream(options = {}) {
|
|
1678
1699
|
if (!this.agent.model.capabilities.streaming || !isStreamingCompletionModel(this.agent.model)) {
|
|
1679
1700
|
throw new Error("This completion model does not support streaming");
|
|
1680
1701
|
}
|
|
1681
1702
|
this.startRun();
|
|
1703
|
+
const includeToolCallDeltas = options.includeToolCallDeltas !== false;
|
|
1682
1704
|
const runId = globalThis.crypto.randomUUID();
|
|
1683
1705
|
const emit = async (event) => {
|
|
1684
1706
|
await this.recordAgentEvent(runId, event);
|
|
@@ -1767,6 +1789,9 @@ var PromptRequest = class _PromptRequest {
|
|
|
1767
1789
|
try {
|
|
1768
1790
|
for await (const event of this.agent.model.streamCompletion(request)) {
|
|
1769
1791
|
if (event.type === "error") {
|
|
1792
|
+
if (event.usage !== void 0) {
|
|
1793
|
+
usage = Usage.add(usage, event.usage);
|
|
1794
|
+
}
|
|
1770
1795
|
throw event.error;
|
|
1771
1796
|
}
|
|
1772
1797
|
hasProviderProgress = true;
|
|
@@ -1774,6 +1799,9 @@ var PromptRequest = class _PromptRequest {
|
|
|
1774
1799
|
firstDeltaMs = Date.now() - generationStartedAt;
|
|
1775
1800
|
}
|
|
1776
1801
|
const mapped = accumulator.accept(event);
|
|
1802
|
+
if (includeToolCallDeltas && event.type === "tool_call_delta") {
|
|
1803
|
+
yield await emit(addTurnToToolCallDelta(currentTurns, event));
|
|
1804
|
+
}
|
|
1777
1805
|
if (mapped !== void 0) {
|
|
1778
1806
|
await generationObservers.update?.({ turn: currentTurns, delta: mapped });
|
|
1779
1807
|
if (mapped.type === "tool_call") {
|
|
@@ -1933,7 +1961,8 @@ var PromptRequest = class _PromptRequest {
|
|
|
1933
1961
|
{
|
|
1934
1962
|
turn: currentTurns,
|
|
1935
1963
|
runObservers,
|
|
1936
|
-
toolDefinitions: request.tools
|
|
1964
|
+
toolDefinitions: request.tools,
|
|
1965
|
+
includeToolCallDeltas
|
|
1937
1966
|
}
|
|
1938
1967
|
);
|
|
1939
1968
|
toolResultsPromise.then(
|
|
@@ -1959,14 +1988,19 @@ var PromptRequest = class _PromptRequest {
|
|
|
1959
1988
|
} catch (error) {
|
|
1960
1989
|
const finalError = await this.runRunErrorHook(error, usage, newMessages);
|
|
1961
1990
|
this.runState = finalError instanceof PromptCancelledError ? "cancelled" : "errored";
|
|
1962
|
-
|
|
1991
|
+
const finalUsage = usage;
|
|
1992
|
+
await runObservers.error({
|
|
1993
|
+
error: finalError,
|
|
1994
|
+
usage: finalUsage,
|
|
1995
|
+
messages: [...newMessages]
|
|
1996
|
+
});
|
|
1963
1997
|
await this.memoryRecorder.recordError(runId, finalError, newMessages);
|
|
1964
|
-
yield await emit({ type: "error", error: finalError });
|
|
1998
|
+
yield await emit({ type: "error", error: finalError, usage: finalUsage });
|
|
1965
1999
|
throw finalError;
|
|
1966
2000
|
}
|
|
1967
2001
|
}
|
|
1968
|
-
readableStream() {
|
|
1969
|
-
return toReadableStream(this.stream());
|
|
2002
|
+
readableStream(options = {}) {
|
|
2003
|
+
return toReadableStream(this.stream(options));
|
|
1970
2004
|
}
|
|
1971
2005
|
async runCompletion(request, turn, runObservers) {
|
|
1972
2006
|
assertCompletionRequestSupported(this.agent.model, request);
|
|
@@ -2084,6 +2118,7 @@ var PromptRequest = class _PromptRequest {
|
|
|
2084
2118
|
},
|
|
2085
2119
|
this.concurrency,
|
|
2086
2120
|
this.requestMiddlewares,
|
|
2121
|
+
observation?.includeToolCallDeltas ?? false,
|
|
2087
2122
|
(reason) => this.cancelled(newMessages, reason)
|
|
2088
2123
|
);
|
|
2089
2124
|
return executor.execute(toolCalls, onResult, onStreamEvent, observation);
|
|
@@ -2442,4 +2477,4 @@ export {
|
|
|
2442
2477
|
extractRagText,
|
|
2443
2478
|
PromptRequest
|
|
2444
2479
|
};
|
|
2445
|
-
//# sourceMappingURL=chunk-
|
|
2480
|
+
//# sourceMappingURL=chunk-CNANX5OL.js.map
|