experimental-ash 0.2.0-alpha.5 → 0.2.0-alpha.7
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/src/execution/node-step.d.ts.map +1 -1
- package/dist/src/execution/node-step.js +27 -36
- package/dist/src/execution/node-step.js.map +1 -1
- package/dist/src/harness/execute-tool.d.ts +38 -0
- package/dist/src/harness/execute-tool.d.ts.map +1 -0
- package/dist/src/harness/execute-tool.js +59 -0
- package/dist/src/harness/execute-tool.js.map +1 -0
- package/dist/src/harness/provider-tools.d.ts +2 -2
- package/dist/src/harness/provider-tools.d.ts.map +1 -1
- package/dist/src/harness/provider-tools.js +8 -5
- package/dist/src/harness/provider-tools.js.map +1 -1
- package/dist/src/harness/tool-loop.js +1 -1
- package/dist/src/harness/tool-loop.js.map +1 -1
- package/dist/src/harness/tools.d.ts +3 -3
- package/dist/src/harness/tools.d.ts.map +1 -1
- package/dist/src/harness/tools.js +11 -6
- package/dist/src/harness/tools.js.map +1 -1
- package/dist/src/harness/types.d.ts +8 -3
- package/dist/src/harness/types.d.ts.map +1 -1
- package/dist/src/internal/application/package.js +1 -1
- package/dist/src/internal/nitro/routes/workflow-data.d.ts.map +1 -1
- package/dist/src/internal/nitro/routes/workflow-data.js +29 -4
- package/dist/src/internal/nitro/routes/workflow-data.js.map +1 -1
- package/dist/src/public/index.d.ts +2 -1
- package/dist/src/public/index.d.ts.map +1 -1
- package/dist/src/public/index.js.map +1 -1
- package/package.json +1 -1
- package/dist/src/runtime/tools/execute-tool.d.ts +0 -20
- package/dist/src/runtime/tools/execute-tool.d.ts.map +0 -1
- package/dist/src/runtime/tools/execute-tool.js +0 -90
- package/dist/src/runtime/tools/execute-tool.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-step.d.ts","sourceRoot":"","sources":["../../../src/execution/node-step.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"node-step.d.ts","sourceRoot":"","sources":["../../../src/execution/node-step.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAGnD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAIjE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAE9C,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,yCAAyC,CAAC;AAC9F,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAOpE;;;;;GAKG;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,MAAM,EAAE;IACnC,QAAQ,CAAC,uBAAuB,EAAE,8BAA8B,CAAC;IACjE,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;CAChC,KAAK,OAAO,CAAC;AAEd;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,uBAAuB,EAAE,8BAA8B,CAAC;IACjE;;;;OAIG;IACH,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IACtC,QAAQ,CAAC,IAAI,CAAC,EAAE,aAAa,CAAC;IAC9B,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,wBAAwB,CAAC;CACzC;AAID;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,4BAA4B,GAAG,MAAM,CAoBnF"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { createToolLoopHarness } from "../harness/tool-loop.js";
|
|
2
2
|
import { resolveInstalledPackageInfo } from "../internal/application/package.js";
|
|
3
3
|
import { resolveRuntimeModelReference } from "../runtime/agent/resolve-model.js";
|
|
4
|
-
import { executeRuntimeToolCall } from "../runtime/tools/execute-tool.js";
|
|
5
4
|
import { findRegisteredRuntimeTool } from "../runtime/tools/registry.js";
|
|
6
5
|
import { createSubagentToolExecutor } from "./subagent-tool.js";
|
|
7
6
|
import { createToolCompactionHandler } from "./tool-compaction.js";
|
|
@@ -13,7 +12,7 @@ const NOOP_EMIT = async () => { };
|
|
|
13
12
|
export function createExecutionNodeStep(input) {
|
|
14
13
|
const parentEmit = input.emit ?? NOOP_EMIT;
|
|
15
14
|
const resolveModel = createRuntimeModelResolver(input.compiledArtifactsSource);
|
|
16
|
-
const
|
|
15
|
+
const executableTools = createNodeExecutableTools({
|
|
17
16
|
createRuntime: input.createRuntime,
|
|
18
17
|
node: input.node,
|
|
19
18
|
parentEmit,
|
|
@@ -26,7 +25,7 @@ export function createExecutionNodeStep(input) {
|
|
|
26
25
|
onCompaction,
|
|
27
26
|
resolveModel,
|
|
28
27
|
runtimeIdentity: buildRuntimeIdentity(input.node),
|
|
29
|
-
|
|
28
|
+
executableTools,
|
|
30
29
|
toolNeedsApprovalFns,
|
|
31
30
|
});
|
|
32
31
|
}
|
|
@@ -79,52 +78,44 @@ function createRuntimeModelResolver(compiledArtifactsSource) {
|
|
|
79
78
|
compiledArtifactsSource,
|
|
80
79
|
});
|
|
81
80
|
}
|
|
82
|
-
function
|
|
83
|
-
const
|
|
81
|
+
function createNodeExecutableTools(input) {
|
|
82
|
+
const tools = new Map();
|
|
84
83
|
for (const tool of input.node.turnAgent.tools) {
|
|
85
|
-
|
|
86
|
-
continue;
|
|
87
|
-
}
|
|
88
|
-
executors.set(tool.name, createToolExecutor({
|
|
84
|
+
const definition = resolveExecutableToolDefinition({
|
|
89
85
|
createRuntime: input.createRuntime,
|
|
90
86
|
node: input.node,
|
|
91
87
|
parentEmit: input.parentEmit,
|
|
92
88
|
tool,
|
|
93
|
-
})
|
|
89
|
+
});
|
|
90
|
+
if (definition !== null) {
|
|
91
|
+
tools.set(tool.name, definition);
|
|
92
|
+
}
|
|
94
93
|
}
|
|
95
|
-
return
|
|
94
|
+
return tools;
|
|
96
95
|
}
|
|
97
|
-
function
|
|
96
|
+
function resolveExecutableToolDefinition(input) {
|
|
98
97
|
if (input.tool.kind === "subagent") {
|
|
99
|
-
return
|
|
98
|
+
return {
|
|
99
|
+
execute: createSubagentToolExecutor({
|
|
100
|
+
createRuntime: input.createRuntime,
|
|
101
|
+
parentEmit: input.parentEmit,
|
|
102
|
+
subagentTool: input.tool,
|
|
103
|
+
}),
|
|
104
|
+
name: input.tool.name,
|
|
105
|
+
};
|
|
100
106
|
}
|
|
101
107
|
const registeredTool = findRegisteredRuntimeTool(input.node.toolRegistry, input.tool.name);
|
|
102
108
|
if (registeredTool === null) {
|
|
103
|
-
return
|
|
109
|
+
return null;
|
|
104
110
|
}
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
if (input.tool.kind === "subagent") {
|
|
109
|
-
return createSubagentToolExecutor({
|
|
110
|
-
createRuntime: input.createRuntime,
|
|
111
|
-
parentEmit: input.parentEmit,
|
|
112
|
-
subagentTool: input.tool,
|
|
113
|
-
});
|
|
111
|
+
const execute = registeredTool.definition.execute;
|
|
112
|
+
if (execute === undefined) {
|
|
113
|
+
return null;
|
|
114
114
|
}
|
|
115
|
-
return
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
callId,
|
|
120
|
-
input: (args ?? {}),
|
|
121
|
-
kind: "tool-call",
|
|
122
|
-
toolName: input.tool.name,
|
|
123
|
-
},
|
|
124
|
-
registry: input.node.toolRegistry,
|
|
125
|
-
visibleTools: input.node.toolRegistry.preparedTools,
|
|
126
|
-
});
|
|
127
|
-
return toolResult.output;
|
|
115
|
+
return {
|
|
116
|
+
execute,
|
|
117
|
+
inputValidator: registeredTool.definition.inputValidator,
|
|
118
|
+
name: input.tool.name,
|
|
128
119
|
};
|
|
129
120
|
}
|
|
130
121
|
//# sourceMappingURL=node-step.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-step.js","sourceRoot":"","sources":["../../../src/execution/node-step.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"node-step.js","sourceRoot":"","sources":["../../../src/execution/node-step.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,OAAO,EAAE,2BAA2B,EAAE,MAAM,oCAAoC,CAAC;AAIjF,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AAIjF,OAAO,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AAEzE,OAAO,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AA6BnE,MAAM,SAAS,GAAkB,KAAK,IAAI,EAAE,GAAE,CAAC,CAAC;AAEhD;;;GAGG;AACH,MAAM,UAAU,uBAAuB,CAAC,KAAmC;IACzE,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,IAAI,SAAS,CAAC;IAC3C,MAAM,YAAY,GAAG,0BAA0B,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;IAC/E,MAAM,eAAe,GAAG,yBAAyB,CAAC;QAChD,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,UAAU;KACX,CAAC,CAAC;IACH,MAAM,oBAAoB,GAAG,0BAA0B,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACpE,MAAM,YAAY,GAAG,2BAA2B,CAAC,oBAAoB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IAEnF,OAAO,qBAAqB,CAAC;QAC3B,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,YAAY;QACZ,YAAY;QACZ,eAAe,EAAE,oBAAoB,CAAC,KAAK,CAAC,IAAI,CAAC;QACjD,eAAe;QACf,oBAAoB;KACrB,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,SAAS,oBAAoB,CAAC,IAA8B;IAC1D,MAAM,WAAW,GAAG,2BAA2B,EAAE,CAAC;IAElD,MAAM,QAAQ,GAAoB;QAChC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE;QAC1B,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI;QAClC,UAAU,EAAE,WAAW,CAAC,OAAO;QAC/B,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;KACjC,CAAC;IAEF,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,EAAE,IAAI,EAAE,CAAC;IACzD,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,EAAE,IAAI,EAAE,CAAC;IAC5D,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,4BAA4B,EAAE,IAAI,EAAE,CAAC;IAEpE,IAAI,MAAM,IAAI,SAAS,IAAI,UAAU,EAAE,CAAC;QACtC,OAAO;YACL,GAAG,QAAQ;YACX,KAAK,EAAE;gBACL,UAAU,EAAE,UAAU,IAAI,SAAS;gBACnC,SAAS,EAAE,SAAS,IAAI,SAAS;gBACjC,MAAM,EAAE,MAAM,IAAI,SAAS;aAC5B;SACF,CAAC;IACJ,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;GAGG;AACH,SAAS,oBAAoB,CAAC,IAA8B;IAC1D,OAAO,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;AAChG,CAAC;AAED,SAAS,0BAA0B,CACjC,IAA8B;IAE9B,MAAM,GAAG,GAAG,IAAI,GAAG,EAAkD,CAAC;IACtE,KAAK,MAAM,UAAU,IAAI,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC;QAChE,MAAM,EAAE,GAAG,UAAU,CAAC,UAAU,CAAC,aAAa,CAAC;QAC/C,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;YACrB,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,0BAA0B,CACjC,uBAAuD;IAEvD,OAAO,CAAC,cAAc,EAAE,EAAE,CACxB,4BAA4B,CAAC,cAAc,EAAE;QAC3C,uBAAuB;KACxB,CAAC,CAAC;AACP,CAAC;AAED,SAAS,yBAAyB,CAAC,KAIlC;IACC,MAAM,KAAK,GAAG,IAAI,GAAG,EAAoC,CAAC;IAE1D,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;QAC9C,MAAM,UAAU,GAAG,+BAA+B,CAAC;YACjD,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,IAAI;SACL,CAAC,CAAC;QAEH,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;YACxB,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,+BAA+B,CAAC,KAKxC;IACC,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QACnC,OAAO;YACL,OAAO,EAAE,0BAA0B,CAAC;gBAClC,aAAa,EAAE,KAAK,CAAC,aAAa;gBAClC,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,YAAY,EAAE,KAAK,CAAC,IAAI;aACzB,CAAC;YACF,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI;SACtB,CAAC;IACJ,CAAC;IAED,MAAM,cAAc,GAAG,yBAAyB,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAE3F,IAAI,cAAc,KAAK,IAAI,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,OAAO,GAAG,cAAc,CAAC,UAAU,CAAC,OAAO,CAAC;IAElD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,OAAO;QACP,cAAc,EAAE,cAAc,CAAC,UAAU,CAAC,cAAc;QACxD,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI;KACtB,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { type JsonValue } from "../runtime/json.js";
|
|
2
|
+
import type { StandardSchemaValidator } from "../runtime/standard-schema.js";
|
|
3
|
+
/**
|
|
4
|
+
* Harness-owned definition of an authored tool ready for execution.
|
|
5
|
+
*
|
|
6
|
+
* Carries just the pieces the harness needs — no registry metadata, no
|
|
7
|
+
* serializable descriptors. The execution layer resolves a
|
|
8
|
+
* {@link ResolvedToolDefinition} into this shape before handing it off.
|
|
9
|
+
*/
|
|
10
|
+
export interface ExecutableToolDefinition {
|
|
11
|
+
readonly execute: (input: unknown) => Promise<unknown> | unknown;
|
|
12
|
+
readonly inputValidator?: StandardSchemaValidator;
|
|
13
|
+
readonly name: string;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Result of executing one authored tool through the harness.
|
|
17
|
+
*/
|
|
18
|
+
export type ToolExecutionResult = {
|
|
19
|
+
readonly ok: false;
|
|
20
|
+
readonly code: string;
|
|
21
|
+
readonly message: string;
|
|
22
|
+
} | {
|
|
23
|
+
readonly ok: true;
|
|
24
|
+
readonly output: JsonValue;
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* Executes one authored tool call through the harness-owned pipeline.
|
|
28
|
+
*
|
|
29
|
+
* Validates input (when an {@link ExecutableToolDefinition.inputValidator} is
|
|
30
|
+
* present), invokes the authored `execute` function, and validates that the
|
|
31
|
+
* returned value is JSON-serializable.
|
|
32
|
+
*
|
|
33
|
+
* The unified Ash context is already active when this function is called
|
|
34
|
+
* (the caller runs inside the execution layer's ALS scope), so authored code
|
|
35
|
+
* can access `getSession()`, `getSandbox()`, etc. directly.
|
|
36
|
+
*/
|
|
37
|
+
export declare function executeAuthoredTool(definition: ExecutableToolDefinition, input: unknown): Promise<ToolExecutionResult>;
|
|
38
|
+
//# sourceMappingURL=execute-tool.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"execute-tool.d.ts","sourceRoot":"","sources":["../../../src/harness/execute-tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,KAAK,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAM7E;;;;;;GAMG;AACH,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;IACjE,QAAQ,CAAC,cAAc,CAAC,EAAE,uBAAuB,CAAC;IAClD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAC3B;IAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACvE;IAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAA;CAAE,CAAC;AAEtD;;;;;;;;;;GAUG;AACH,wBAAsB,mBAAmB,CACvC,UAAU,EAAE,wBAAwB,EACpC,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,mBAAmB,CAAC,CA8C9B"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { isJsonValue } from "../runtime/json.js";
|
|
2
|
+
import { formatStandardSchemaIssues, validateStandardSchemaValue, } from "../runtime/standard-schema.js";
|
|
3
|
+
/**
|
|
4
|
+
* Executes one authored tool call through the harness-owned pipeline.
|
|
5
|
+
*
|
|
6
|
+
* Validates input (when an {@link ExecutableToolDefinition.inputValidator} is
|
|
7
|
+
* present), invokes the authored `execute` function, and validates that the
|
|
8
|
+
* returned value is JSON-serializable.
|
|
9
|
+
*
|
|
10
|
+
* The unified Ash context is already active when this function is called
|
|
11
|
+
* (the caller runs inside the execution layer's ALS scope), so authored code
|
|
12
|
+
* can access `getSession()`, `getSandbox()`, etc. directly.
|
|
13
|
+
*/
|
|
14
|
+
export async function executeAuthoredTool(definition, input) {
|
|
15
|
+
let parsedInput = input;
|
|
16
|
+
if (definition.inputValidator !== undefined) {
|
|
17
|
+
let validationResult;
|
|
18
|
+
try {
|
|
19
|
+
validationResult = await validateStandardSchemaValue(definition.inputValidator, parsedInput);
|
|
20
|
+
}
|
|
21
|
+
catch (error) {
|
|
22
|
+
return {
|
|
23
|
+
code: "TOOL_INPUT_VALIDATION_FAILED",
|
|
24
|
+
message: formatErrorMessage(error),
|
|
25
|
+
ok: false,
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
if (!validationResult.ok) {
|
|
29
|
+
return {
|
|
30
|
+
code: "TOOL_INPUT_INVALID",
|
|
31
|
+
message: `Tool "${definition.name}" received invalid input: ${formatStandardSchemaIssues(validationResult.issues)}.`,
|
|
32
|
+
ok: false,
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
parsedInput = validationResult.value;
|
|
36
|
+
}
|
|
37
|
+
try {
|
|
38
|
+
const output = await definition.execute(parsedInput);
|
|
39
|
+
if (!isJsonValue(output)) {
|
|
40
|
+
return {
|
|
41
|
+
code: "TOOL_OUTPUT_NOT_SERIALIZABLE",
|
|
42
|
+
message: `Tool "${definition.name}" returned a non-JSON-serializable value.`,
|
|
43
|
+
ok: false,
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
return { ok: true, output };
|
|
47
|
+
}
|
|
48
|
+
catch (error) {
|
|
49
|
+
return {
|
|
50
|
+
code: "TOOL_EXECUTION_FAILED",
|
|
51
|
+
message: formatErrorMessage(error),
|
|
52
|
+
ok: false,
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
function formatErrorMessage(error) {
|
|
57
|
+
return error instanceof Error ? error.message : String(error);
|
|
58
|
+
}
|
|
59
|
+
//# sourceMappingURL=execute-tool.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"execute-tool.js","sourceRoot":"","sources":["../../../src/harness/execute-tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAkB,MAAM,oBAAoB,CAAC;AAEjE,OAAO,EACL,0BAA0B,EAC1B,2BAA2B,GAC5B,MAAM,+BAA+B,CAAC;AAsBvC;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,UAAoC,EACpC,KAAc;IAEd,IAAI,WAAW,GAAY,KAAK,CAAC;IAEjC,IAAI,UAAU,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;QAC5C,IAAI,gBAAyE,CAAC;QAE9E,IAAI,CAAC;YACH,gBAAgB,GAAG,MAAM,2BAA2B,CAAC,UAAU,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;QAC/F,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,IAAI,EAAE,8BAA8B;gBACpC,OAAO,EAAE,kBAAkB,CAAC,KAAK,CAAC;gBAClC,EAAE,EAAE,KAAK;aACV,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,gBAAgB,CAAC,EAAE,EAAE,CAAC;YACzB,OAAO;gBACL,IAAI,EAAE,oBAAoB;gBAC1B,OAAO,EAAE,SAAS,UAAU,CAAC,IAAI,6BAA6B,0BAA0B,CAAC,gBAAgB,CAAC,MAAM,CAAC,GAAG;gBACpH,EAAE,EAAE,KAAK;aACV,CAAC;QACJ,CAAC;QAED,WAAW,GAAG,gBAAgB,CAAC,KAAK,CAAC;IACvC,CAAC;IAED,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAErD,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;YACzB,OAAO;gBACL,IAAI,EAAE,8BAA8B;gBACpC,OAAO,EAAE,SAAS,UAAU,CAAC,IAAI,2CAA2C;gBAC5E,EAAE,EAAE,KAAK;aACV,CAAC;QACJ,CAAC;QAED,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAC9B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,IAAI,EAAE,uBAAuB;YAC7B,OAAO,EAAE,kBAAkB,CAAC,KAAK,CAAC;YAClC,EAAE,EAAE,KAAK;SACV,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAc;IACxC,OAAO,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAChE,CAAC"}
|
|
@@ -8,8 +8,8 @@ type WebSearchBackend = "anthropic" | "gateway" | "google" | "openai";
|
|
|
8
8
|
* Determines the web search backend for a model reference.
|
|
9
9
|
*
|
|
10
10
|
* - OpenAI models (gateway or BYO): native OpenAI search
|
|
11
|
-
* - Anthropic models
|
|
12
|
-
* - Google models
|
|
11
|
+
* - Direct/BYO Anthropic models: native Anthropic search
|
|
12
|
+
* - Direct/BYO Google models: native Google search grounding
|
|
13
13
|
* - Other models on AI Gateway: Perplexity search via gateway
|
|
14
14
|
* - Other BYO models: not available (returns `null`)
|
|
15
15
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider-tools.d.ts","sourceRoot":"","sources":["../../../src/harness/provider-tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAElC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAE3E;;GAEG;AACH,KAAK,gBAAgB,GAAG,WAAW,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEtE;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,qBAAqB,GAAG,gBAAgB,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"provider-tools.d.ts","sourceRoot":"","sources":["../../../src/harness/provider-tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAElC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAE3E;;GAEG;AACH,KAAK,gBAAgB,GAAG,WAAW,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEtE;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,qBAAqB,GAAG,gBAAgB,GAAG,IAAI,CAwBhG;AAED;;;;;;GAMG;AACH,wBAAsB,4BAA4B,CAChD,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAuB1B"}
|
|
@@ -2,13 +2,19 @@
|
|
|
2
2
|
* Determines the web search backend for a model reference.
|
|
3
3
|
*
|
|
4
4
|
* - OpenAI models (gateway or BYO): native OpenAI search
|
|
5
|
-
* - Anthropic models
|
|
6
|
-
* - Google models
|
|
5
|
+
* - Direct/BYO Anthropic models: native Anthropic search
|
|
6
|
+
* - Direct/BYO Google models: native Google search grounding
|
|
7
7
|
* - Other models on AI Gateway: Perplexity search via gateway
|
|
8
8
|
* - Other BYO models: not available (returns `null`)
|
|
9
9
|
*/
|
|
10
10
|
export function resolveWebSearchBackend(modelRef) {
|
|
11
11
|
const providerId = modelRef.id.split("/")[0] ?? "";
|
|
12
|
+
if (modelRef.source === undefined) {
|
|
13
|
+
if (providerId === "openai" || providerId.startsWith("openai.")) {
|
|
14
|
+
return "openai";
|
|
15
|
+
}
|
|
16
|
+
return "gateway";
|
|
17
|
+
}
|
|
12
18
|
if (providerId === "openai" || providerId.startsWith("openai.")) {
|
|
13
19
|
return "openai";
|
|
14
20
|
}
|
|
@@ -18,9 +24,6 @@ export function resolveWebSearchBackend(modelRef) {
|
|
|
18
24
|
if (providerId.startsWith("google.")) {
|
|
19
25
|
return "google";
|
|
20
26
|
}
|
|
21
|
-
if (modelRef.source === undefined) {
|
|
22
|
-
return "gateway";
|
|
23
|
-
}
|
|
24
27
|
return null;
|
|
25
28
|
}
|
|
26
29
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider-tools.js","sourceRoot":"","sources":["../../../src/harness/provider-tools.ts"],"names":[],"mappings":"AASA;;;;;;;;GAQG;AACH,MAAM,UAAU,uBAAuB,CAAC,QAA+B;IACrE,MAAM,UAAU,GAAG,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAEnD,IAAI,UAAU,KAAK,QAAQ,IAAI,UAAU,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"provider-tools.js","sourceRoot":"","sources":["../../../src/harness/provider-tools.ts"],"names":[],"mappings":"AASA;;;;;;;;GAQG;AACH,MAAM,UAAU,uBAAuB,CAAC,QAA+B;IACrE,MAAM,UAAU,GAAG,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAEnD,IAAI,QAAQ,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAClC,IAAI,UAAU,KAAK,QAAQ,IAAI,UAAU,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAChE,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAI,UAAU,KAAK,QAAQ,IAAI,UAAU,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAChE,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,IAAI,UAAU,KAAK,WAAW,IAAI,UAAU,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QACtE,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,IAAI,UAAU,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QACrC,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAChD,OAAyB;IAEzB,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,CAAC;YAClD,OAAO,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAoB,CAAC;QACvD,CAAC;QACD,KAAK,WAAW,CAAC,CAAC,CAAC;YACjB,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;YACxD,8DAA8D;YAC9D,qEAAqE;YACrE,oEAAoE;YACpE,0DAA0D;YAC1D,OAAO,SAAS,CAAC,KAAK,CAAC,kBAAkB,EAAqB,CAAC;QACjE,CAAC;QACD,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,CAAC;YAClD,OAAO,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAoB,CAAC;QAC1D,CAAC;QACD,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;YACvC,OAAO,OAAO,CAAC,KAAK,CAAC,gBAAgB,EAAqB,CAAC;QAC7D,CAAC;IACH,CAAC;AACH,CAAC"}
|
|
@@ -93,7 +93,7 @@ export function createToolLoopHarness(config) {
|
|
|
93
93
|
const tools = await buildToolSetWithProviderTools({
|
|
94
94
|
approvedTools: getApprovedTools(session),
|
|
95
95
|
definitions: session.agent.tools,
|
|
96
|
-
|
|
96
|
+
executableTools: config.executableTools,
|
|
97
97
|
isRoot: session.agent.isRoot,
|
|
98
98
|
modelReference: session.agent.modelReference,
|
|
99
99
|
needsApprovalFns: config.toolNeedsApprovalFns,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-loop.js","sourceRoot":"","sources":["../../../src/harness/tool-loop.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"tool-loop.js","sourceRoot":"","sources":["../../../src/harness/tool-loop.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type ToolSet } from "ai";
|
|
2
2
|
import type { NeedsApprovalContext } from "../public/definitions/tool.js";
|
|
3
3
|
import type { RuntimeModelReference } from "../runtime/agent/bootstrap.js";
|
|
4
|
-
import type {
|
|
4
|
+
import type { ExecutableToolMap, SessionToolDefinition } from "./types.js";
|
|
5
5
|
/**
|
|
6
6
|
* Builds an AI SDK `ToolSet` from serializable session definitions and an
|
|
7
7
|
* executor map that provides the actual execute functions.
|
|
@@ -9,7 +9,7 @@ import type { SessionToolDefinition, ToolExecutorMap } from "./types.js";
|
|
|
9
9
|
export declare function buildToolSet(input: {
|
|
10
10
|
readonly approvedTools?: ReadonlySet<string>;
|
|
11
11
|
readonly definitions: readonly SessionToolDefinition[];
|
|
12
|
-
readonly
|
|
12
|
+
readonly executableTools: ExecutableToolMap;
|
|
13
13
|
readonly isRoot?: boolean;
|
|
14
14
|
readonly needsApprovalFns?: ReadonlyMap<string, (ctx: NeedsApprovalContext) => boolean>;
|
|
15
15
|
}): ToolSet;
|
|
@@ -30,7 +30,7 @@ export declare function buildToolSet(input: {
|
|
|
30
30
|
export declare function buildToolSetWithProviderTools(input: {
|
|
31
31
|
readonly approvedTools?: ReadonlySet<string>;
|
|
32
32
|
readonly definitions: readonly SessionToolDefinition[];
|
|
33
|
-
readonly
|
|
33
|
+
readonly executableTools: ExecutableToolMap;
|
|
34
34
|
readonly isRoot?: boolean;
|
|
35
35
|
readonly modelReference: RuntimeModelReference;
|
|
36
36
|
readonly needsApprovalFns?: ReadonlyMap<string, (ctx: NeedsApprovalContext) => boolean>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../../src/harness/tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,OAAO,EAAQ,MAAM,IAAI,CAAC;AACpD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../../src/harness/tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,OAAO,EAAQ,MAAM,IAAI,CAAC;AACpD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAK3E,OAAO,KAAK,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAE3E;;;GAGG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE;IAClC,QAAQ,CAAC,aAAa,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC7C,QAAQ,CAAC,WAAW,EAAE,SAAS,qBAAqB,EAAE,CAAC;IACvD,QAAQ,CAAC,eAAe,EAAE,iBAAiB,CAAC;IAC5C,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,oBAAoB,KAAK,OAAO,CAAC,CAAC;CACzF,GAAG,OAAO,CAmDV;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,6BAA6B,CAAC,KAAK,EAAE;IACzD,QAAQ,CAAC,aAAa,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC7C,QAAQ,CAAC,WAAW,EAAE,SAAS,qBAAqB,EAAE,CAAC;IACvD,QAAQ,CAAC,eAAe,EAAE,iBAAiB,CAAC;IAC5C,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,cAAc,EAAE,qBAAqB,CAAC;IAC/C,QAAQ,CAAC,gBAAgB,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,oBAAoB,KAAK,OAAO,CAAC,CAAC;CACzF,GAAG,OAAO,CAAC,OAAO,CAAC,CAwBnB"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { jsonSchema, tool } from "ai";
|
|
2
2
|
import { WEB_SEARCH_TOOL_DEFINITION } from "../runtime/framework-tools/web-search.js";
|
|
3
|
+
import { executeAuthoredTool } from "./execute-tool.js";
|
|
3
4
|
import { resolveWebSearchBackend, resolveWebSearchProviderTool } from "./provider-tools.js";
|
|
4
5
|
import { normalizeToolInputSchema } from "./tool-schema.js";
|
|
5
6
|
/**
|
|
@@ -26,12 +27,16 @@ export function buildToolSet(input) {
|
|
|
26
27
|
return required;
|
|
27
28
|
},
|
|
28
29
|
};
|
|
29
|
-
const
|
|
30
|
-
if (
|
|
30
|
+
const executableTool = input.executableTools.get(definition.name);
|
|
31
|
+
if (executableTool !== undefined) {
|
|
31
32
|
tools[definition.name] = tool({
|
|
32
33
|
...baseToolDefinition,
|
|
33
34
|
execute: async (rawInput) => {
|
|
34
|
-
|
|
35
|
+
const result = await executeAuthoredTool(executableTool, rawInput);
|
|
36
|
+
if (!result.ok) {
|
|
37
|
+
return { code: result.code, message: result.message };
|
|
38
|
+
}
|
|
39
|
+
return result.output;
|
|
35
40
|
},
|
|
36
41
|
});
|
|
37
42
|
continue;
|
|
@@ -59,15 +64,15 @@ export async function buildToolSetWithProviderTools(input) {
|
|
|
59
64
|
...buildToolSet({
|
|
60
65
|
approvedTools: input.approvedTools,
|
|
61
66
|
definitions: input.definitions,
|
|
62
|
-
|
|
67
|
+
executableTools: input.executableTools,
|
|
63
68
|
isRoot: input.isRoot,
|
|
64
69
|
needsApprovalFns: input.needsApprovalFns,
|
|
65
70
|
}),
|
|
66
71
|
};
|
|
67
72
|
// Inject the real provider tool for web_search when the execution layer
|
|
68
|
-
// skipped its
|
|
73
|
+
// skipped its executable definition (i.e. the framework definition uses the sentinel).
|
|
69
74
|
const hasWebSearchInSession = input.definitions.some((t) => t.name === WEB_SEARCH_TOOL_DEFINITION.name);
|
|
70
|
-
if (hasWebSearchInSession && !input.
|
|
75
|
+
if (hasWebSearchInSession && !input.executableTools.has(WEB_SEARCH_TOOL_DEFINITION.name)) {
|
|
71
76
|
const backend = resolveWebSearchBackend(input.modelReference);
|
|
72
77
|
if (backend !== null) {
|
|
73
78
|
tools[WEB_SEARCH_TOOL_DEFINITION.name] = await resolveWebSearchProviderTool(backend);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../../src/harness/tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAgB,IAAI,EAAE,MAAM,IAAI,CAAC;AAGpD,OAAO,EAAE,0BAA0B,EAAE,MAAM,0CAA0C,CAAC;AACtF,OAAO,EAAE,uBAAuB,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAC;AAC5F,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAG5D;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,KAM5B;IACC,MAAM,KAAK,GAAoC,EAAE,CAAC;IAElD,KAAK,MAAM,UAAU,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;QAC3C,MAAM,kBAAkB,GAAG;YACzB,WAAW,EAAE,UAAU,CAAC,WAAW;YACnC,WAAW,EAAE,UAAU,CACrB,wBAAwB,CAAC,UAAU,CAAC,UAAU,CAAqC,CACpF;YACD,aAAa,EAAE,KAAK,IAAI,EAAE;gBACxB,MAAM,MAAM,GAAG,KAAK,CAAC,gBAAgB,EAAE,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;gBAC5D,MAAM,QAAQ,GACZ,MAAM,KAAK,SAAS;oBAClB,CAAC,CAAC,MAAM,CAAC;wBACL,aAAa,EAAE,KAAK,CAAC,aAAa,IAAI,IAAI,GAAG,EAAE;wBAC/C,QAAQ,EAAE,UAAU,CAAC,IAAI;qBAC1B,CAAC;oBACJ,CAAC,CAAC,KAAK,CAAC;gBAEZ,IAAI,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;oBACvC,MAAM,IAAI,KAAK,CACb,qGAAqG,UAAU,CAAC,IAAI,oCAAoC,CACzJ,CAAC;gBACJ,CAAC;gBAED,OAAO,QAAQ,CAAC;YAClB,CAAC;SACF,CAAC;QAEF,MAAM,
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../../src/harness/tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,7 @@ import type { RunMode } from "../run-mode.js";
|
|
|
6
6
|
import type { RuntimeModelReference } from "../runtime/agent/bootstrap.js";
|
|
7
7
|
import type { InputResponse } from "../runtime/input/types.js";
|
|
8
8
|
import type { JsonValue } from "../runtime/json.js";
|
|
9
|
+
import type { ExecutableToolDefinition } from "./execute-tool.js";
|
|
9
10
|
/**
|
|
10
11
|
* Serializable tool definition stored on the session.
|
|
11
12
|
*
|
|
@@ -104,9 +105,13 @@ export interface StepResult {
|
|
|
104
105
|
*/
|
|
105
106
|
export type StepFn = (session: HarnessSession, input?: StepInput) => Promise<StepResult>;
|
|
106
107
|
/**
|
|
107
|
-
* Map from tool name to its
|
|
108
|
+
* Map from tool name to its executable definition.
|
|
109
|
+
*
|
|
110
|
+
* The harness runs each definition through {@link executeAuthoredTool} at call
|
|
111
|
+
* time, which handles input validation, output serialization checks, and error
|
|
112
|
+
* wrapping.
|
|
108
113
|
*/
|
|
109
|
-
export type
|
|
114
|
+
export type ExecutableToolMap = ReadonlyMap<string, ExecutableToolDefinition>;
|
|
110
115
|
/**
|
|
111
116
|
* Callback that writes one event to the event stream.
|
|
112
117
|
*
|
|
@@ -145,7 +150,7 @@ export interface ToolLoopHarnessConfig {
|
|
|
145
150
|
* authoritative server-side metadata.
|
|
146
151
|
*/
|
|
147
152
|
readonly runtimeIdentity?: RuntimeIdentity;
|
|
148
|
-
readonly
|
|
153
|
+
readonly executableTools: ExecutableToolMap;
|
|
149
154
|
readonly toolNeedsApprovalFns?: ReadonlyMap<string, (ctx: NeedsApprovalContext) => boolean>;
|
|
150
155
|
}
|
|
151
156
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/harness/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAEtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,KAAK,EAAE,wBAAwB,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACxF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAC3E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/harness/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ import { ASH_PACKAGE_NAME } from "../../package-name.js";
|
|
|
6
6
|
let cachedPackageInfo;
|
|
7
7
|
// The package build stamps the published version into `dist` so bundled
|
|
8
8
|
// deployments can still report package metadata without resolving package.json.
|
|
9
|
-
const BUNDLED_FALLBACK_PACKAGE_VERSION = "0.2.0-alpha.
|
|
9
|
+
const BUNDLED_FALLBACK_PACKAGE_VERSION = "0.2.0-alpha.7";
|
|
10
10
|
const BUNDLED_FALLBACK_PACKAGE_VERSION_PLACEHOLDER = "__ASH_PACKAGE_VERSION_PLACEHOLDER__";
|
|
11
11
|
function resolveFallbackPackageVersion() {
|
|
12
12
|
return BUNDLED_FALLBACK_PACKAGE_VERSION === BUNDLED_FALLBACK_PACKAGE_VERSION_PLACEHOLDER
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow-data.d.ts","sourceRoot":"","sources":["../../../../../src/internal/nitro/routes/workflow-data.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,OAAO,KAAK,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAEtF,KAAK,aAAa,GAAG,UAAU,CAAC,OAAO,QAAQ,CAAC,CAAC;AAEjD,KAAK,iBAAiB,GAAG,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAC3E,KAAK,qBAAqB,GAAG,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AAChF,KAAK,sBAAsB,GAAG,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AAClF,KAAK,uBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AAEpF;;GAEG;AACH,qBAAa,uBAAwB,SAAQ,KAAK;IAChD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;gBAEX,KAAK,EAAE,MAAM;CAK1B;
|
|
1
|
+
{"version":3,"file":"workflow-data.d.ts","sourceRoot":"","sources":["../../../../../src/internal/nitro/routes/workflow-data.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,OAAO,KAAK,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAEtF,KAAK,aAAa,GAAG,UAAU,CAAC,OAAO,QAAQ,CAAC,CAAC;AAEjD,KAAK,iBAAiB,GAAG,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAC3E,KAAK,qBAAqB,GAAG,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AAChF,KAAK,sBAAsB,GAAG,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AAClF,KAAK,uBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AAEpF;;GAEG;AACH,qBAAa,uBAAwB,SAAQ,KAAK;IAChD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;gBAEX,KAAK,EAAE,MAAM;CAK1B;AA8DD;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAoB/F;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAa9E;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,eAAe,GACrB,OAAO,CAAC,sBAAsB,CAAC,CAuBjC;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,eAAe,GACrB,OAAO,CAAC,uBAAuB,CAAC,CAuBlC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { WorkflowRunNotFoundError } from "workflow/errors";
|
|
1
|
+
import { WorkflowRunNotFoundError, WorkflowWorldError } from "workflow/errors";
|
|
2
2
|
import { getWorld } from "workflow/runtime";
|
|
3
3
|
/**
|
|
4
4
|
* Error raised when one requested workflow run cannot be found.
|
|
@@ -30,7 +30,16 @@ function toPaginationOptions(query) {
|
|
|
30
30
|
return pagination;
|
|
31
31
|
}
|
|
32
32
|
function isRunNotFoundError(error) {
|
|
33
|
-
|
|
33
|
+
if (WorkflowRunNotFoundError.is(error)) {
|
|
34
|
+
return true;
|
|
35
|
+
}
|
|
36
|
+
// Fallback: some world implementations throw a generic WorkflowWorldError
|
|
37
|
+
// with HTTP status 404 instead of the typed WorkflowRunNotFoundError. This
|
|
38
|
+
// can happen when instanceof checks fail across module boundaries.
|
|
39
|
+
if (WorkflowWorldError.is(error) && error.status === 404) {
|
|
40
|
+
return true;
|
|
41
|
+
}
|
|
42
|
+
return false;
|
|
34
43
|
}
|
|
35
44
|
async function ensureWorkflowRunExists(world, runId) {
|
|
36
45
|
try {
|
|
@@ -96,7 +105,15 @@ export async function listWorkflowRunSteps(runId, query) {
|
|
|
96
105
|
if (pagination !== undefined) {
|
|
97
106
|
params.pagination = pagination;
|
|
98
107
|
}
|
|
99
|
-
|
|
108
|
+
try {
|
|
109
|
+
return await world.steps.list(params);
|
|
110
|
+
}
|
|
111
|
+
catch (error) {
|
|
112
|
+
if (isRunNotFoundError(error)) {
|
|
113
|
+
throw new WorkflowRunMissingError(runId);
|
|
114
|
+
}
|
|
115
|
+
throw error;
|
|
116
|
+
}
|
|
100
117
|
}
|
|
101
118
|
/**
|
|
102
119
|
* Lists events for one workflow run with data-resolution disabled.
|
|
@@ -112,6 +129,14 @@ export async function listWorkflowRunEvents(runId, query) {
|
|
|
112
129
|
if (pagination !== undefined) {
|
|
113
130
|
params.pagination = pagination;
|
|
114
131
|
}
|
|
115
|
-
|
|
132
|
+
try {
|
|
133
|
+
return await world.events.list(params);
|
|
134
|
+
}
|
|
135
|
+
catch (error) {
|
|
136
|
+
if (isRunNotFoundError(error)) {
|
|
137
|
+
throw new WorkflowRunMissingError(runId);
|
|
138
|
+
}
|
|
139
|
+
throw error;
|
|
140
|
+
}
|
|
116
141
|
}
|
|
117
142
|
//# sourceMappingURL=workflow-data.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow-data.js","sourceRoot":"","sources":["../../../../../src/internal/nitro/routes/workflow-data.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"workflow-data.js","sourceRoot":"","sources":["../../../../../src/internal/nitro/routes/workflow-data.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC/E,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAW5C;;GAEG;AACH,MAAM,OAAO,uBAAwB,SAAQ,KAAK;IACvC,KAAK,CAAS;IAEvB,YAAY,KAAa;QACvB,KAAK,CAAC,iBAAiB,KAAK,cAAc,CAAC,CAAC;QAC5C,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAC;QACtC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;CACF;AAED,SAAS,mBAAmB,CAC1B,KAAsB;IAEtB,MAAM,UAAU,GAIZ,EAAE,CAAC;IAEP,IAAI,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChE,UAAU,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;IACnC,CAAC;IAED,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;QACpC,UAAU,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;IACjC,CAAC;IAED,IAAI,KAAK,CAAC,SAAS,KAAK,KAAK,IAAI,KAAK,CAAC,SAAS,KAAK,MAAM,EAAE,CAAC;QAC5D,UAAU,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;IACzC,CAAC;IAED,IACE,UAAU,CAAC,MAAM,KAAK,SAAS;QAC/B,UAAU,CAAC,KAAK,KAAK,SAAS;QAC9B,UAAU,CAAC,SAAS,KAAK,SAAS,EAClC,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAc;IACxC,IAAI,wBAAwB,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;QACvC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,0EAA0E;IAC1E,2EAA2E;IAC3E,mEAAmE;IACnE,IAAI,kBAAkB,CAAC,EAAE,CAAC,KAAK,CAAC,IAAK,KAA6B,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;QAClF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,KAAK,UAAU,uBAAuB,CAAC,KAAoB,EAAE,KAAa;IACxE,IAAI,CAAC;QACH,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE;YAC1B,WAAW,EAAE,MAAM;SACpB,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,uBAAuB,CAAC,KAAK,CAAC,CAAC;QAC3C,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,KAAwB;IAC7D,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IACzB,MAAM,UAAU,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAC9C,MAAM,MAAM,GAAiD;QAC3D,WAAW,EAAE,MAAM;KACpB,CAAC;IAEF,IAAI,OAAO,KAAK,CAAC,YAAY,KAAK,QAAQ,IAAI,KAAK,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5E,MAAM,CAAC,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC;IAC3C,CAAC;IAED,IAAI,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChE,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;IAC/B,CAAC;IAED,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,MAAM,CAAC,UAAU,GAAG,UAAU,CAAC;IACjC,CAAC;IAED,OAAO,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACvC,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,KAAa;IAChD,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IAEzB,IAAI,CAAC;QACH,OAAO,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE;YACjC,WAAW,EAAE,MAAM;SACpB,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,uBAAuB,CAAC,KAAK,CAAC,CAAC;QAC3C,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,KAAa,EACb,KAAsB;IAEtB,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IACzB,MAAM,UAAU,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAE9C,MAAM,uBAAuB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAE5C,MAAM,MAAM,GAAkD;QAC5D,WAAW,EAAE,MAAM;QACnB,KAAK;KACN,CAAC;IAEF,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,MAAM,CAAC,UAAU,GAAG,UAAU,CAAC;IACjC,CAAC;IAED,IAAI,CAAC;QACH,OAAO,MAAM,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACxC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,uBAAuB,CAAC,KAAK,CAAC,CAAC;QAC3C,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,KAAa,EACb,KAAsB;IAEtB,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IACzB,MAAM,UAAU,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAE9C,MAAM,uBAAuB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAE5C,MAAM,MAAM,GAAmD;QAC7D,WAAW,EAAE,MAAM;QACnB,KAAK;KACN,CAAC;IAEF,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,MAAM,CAAC,UAAU,GAAG,UAAU,CAAC;IACjC,CAAC;IAED,IAAI,CAAC;QACH,OAAO,MAAM,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACzC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,uBAAuB,CAAC,KAAK,CAAC,CAAC;QAC3C,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
|
|
@@ -9,8 +9,9 @@ export { ContextKey, type ContextKeyOptions } from "../context/key.js";
|
|
|
9
9
|
export { createContinuousLoopRuntime } from "../execution/continuous-runtime.js";
|
|
10
10
|
export type { SkillHandle, SkillResource } from "../execution/skills/types.js";
|
|
11
11
|
export { createWorkflowRuntime } from "../execution/workflow-runtime.js";
|
|
12
|
+
export type { ExecutableToolDefinition, ToolExecutionResult } from "../harness/execute-tool.js";
|
|
12
13
|
export { createToolLoopHarness } from "../harness/tool-loop.js";
|
|
13
|
-
export type { CompactionCallbackResult, CompactionConfig, HarnessEmitFn, HarnessSession, SessionAgent, SessionToolDefinition, StepDone, StepFn, StepInput, StepNext, StepResult,
|
|
14
|
+
export type { CompactionCallbackResult, CompactionConfig, ExecutableToolMap, HarnessEmitFn, HarnessSession, SessionAgent, SessionToolDefinition, StepDone, StepFn, StepInput, StepNext, StepResult, ToolLoopHarnessConfig, } from "../harness/types.js";
|
|
14
15
|
export type { RunMode } from "../run-mode.js";
|
|
15
16
|
export type { InputOption, InputRequest, InputResponse, } from "../runtime/input/types.js";
|
|
16
17
|
export { inputOptionSchema, inputRequestSchema, inputResponseSchema, isInputRequest, isInputResponse, } from "../runtime/input/types.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/public/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,KAAK,oBAAoB,GAC1B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,YAAY,EACV,cAAc,EACd,mBAAmB,EACnB,YAAY,EACZ,WAAW,EACX,SAAS,EACT,QAAQ,EACR,SAAS,EACT,OAAO,GACR,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,UAAU,EACV,UAAU,EACV,QAAQ,EACR,QAAQ,EACR,KAAK,OAAO,EACZ,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,QAAQ,GACT,MAAM,yBAAyB,CAAC;AACjC,YAAY,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,KAAK,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACvE,OAAO,EAAE,2BAA2B,EAAE,MAAM,oCAAoC,CAAC;AACjF,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC/E,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,YAAY,EACV,wBAAwB,EACxB,gBAAgB,EAChB,aAAa,EACb,cAAc,EACd,YAAY,EACZ,qBAAqB,EACrB,QAAQ,EACR,MAAM,EACN,SAAS,EACT,QAAQ,EACR,UAAU,EACV,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/public/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,KAAK,oBAAoB,GAC1B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,YAAY,EACV,cAAc,EACd,mBAAmB,EACnB,YAAY,EACZ,WAAW,EACX,SAAS,EACT,QAAQ,EACR,SAAS,EACT,OAAO,GACR,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,UAAU,EACV,UAAU,EACV,QAAQ,EACR,QAAQ,EACR,KAAK,OAAO,EACZ,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,QAAQ,GACT,MAAM,yBAAyB,CAAC;AACjC,YAAY,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,KAAK,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACvE,OAAO,EAAE,2BAA2B,EAAE,MAAM,oCAAoC,CAAC;AACjF,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC/E,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACzE,YAAY,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAChG,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,YAAY,EACV,wBAAwB,EACxB,gBAAgB,EAChB,iBAAiB,EACjB,aAAa,EACb,cAAc,EACd,YAAY,EACZ,qBAAqB,EACrB,QAAQ,EACR,MAAM,EACN,SAAS,EACT,QAAQ,EACR,UAAU,EACV,qBAAqB,GACtB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC9C,YAAY,EACV,WAAW,EACX,YAAY,EACZ,aAAa,GACd,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACnB,cAAc,EACd,eAAe,GAChB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,KAAK,yBAAyB,EAC9B,KAAK,eAAe,EACpB,KAAK,oBAAoB,EACzB,KAAK,2BAA2B,EAChC,WAAW,GACZ,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,KAAK,KAAK,EACV,KAAK,OAAO,EACZ,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,uBAAuB,EAC5B,aAAa,EACb,cAAc,EACd,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,KAAK,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpF,OAAO,EAAE,WAAW,EAAE,KAAK,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC3E,YAAY,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,EACL,cAAc,EACd,KAAK,kBAAkB,GACxB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,KAAK,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC9E,OAAO,EACL,KAAK,uBAAuB,EAC5B,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,EACnB,KAAK,sBAAsB,EAC3B,qBAAqB,GACtB,MAAM,uBAAuB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/public/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EACL,eAAe,EACf,sBAAsB,GAEvB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAWlE,OAAO,EACL,UAAU,EACV,UAAU,EACV,QAAQ,EACR,QAAQ,EAMR,QAAQ,GACT,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,UAAU,EAA0B,MAAM,mBAAmB,CAAC;AACvE,OAAO,EAAE,2BAA2B,EAAE,MAAM,oCAAoC,CAAC;AAEjF,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/public/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EACL,eAAe,EACf,sBAAsB,GAEvB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAWlE,OAAO,EACL,UAAU,EACV,UAAU,EACV,QAAQ,EACR,QAAQ,EAMR,QAAQ,GACT,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,UAAU,EAA0B,MAAM,mBAAmB,CAAC;AACvE,OAAO,EAAE,2BAA2B,EAAE,MAAM,oCAAoC,CAAC;AAEjF,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAEzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAsBhE,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACnB,cAAc,EACd,eAAe,GAChB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAKL,WAAW,GACZ,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAML,aAAa,EACb,cAAc,EACd,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,cAAc,EAA2B,MAAM,2BAA2B,CAAC;AACpF,OAAO,EAAE,WAAW,EAAwB,MAAM,wBAAwB,CAAC;AAE3E,OAAO,EACL,cAAc,GAEf,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,YAAY,EAAyB,MAAM,yBAAyB,CAAC;AAC9E,OAAO,EAEL,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,EAEnB,qBAAqB,GACtB,MAAM,uBAAuB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import type { RuntimeToolCallActionRequest, RuntimeToolResultActionResult } from "../actions/types.js";
|
|
2
|
-
import type { PreparedRuntimeAuthoredTool } from "../sessions/turn.js";
|
|
3
|
-
import { type RuntimeToolRegistry } from "./registry.js";
|
|
4
|
-
/**
|
|
5
|
-
* Input for executing one authored tool call through the runtime-owned wrapper.
|
|
6
|
-
*
|
|
7
|
-
* The unified Ash context is already active when this function is called
|
|
8
|
-
* (the caller runs inside `runStep`'s ALS scope), so authored code can
|
|
9
|
-
* access `getSession()`, `getSandbox()`, etc. directly.
|
|
10
|
-
*/
|
|
11
|
-
export interface ExecuteRuntimeToolCallInput {
|
|
12
|
-
readonly action: RuntimeToolCallActionRequest;
|
|
13
|
-
readonly registry: RuntimeToolRegistry;
|
|
14
|
-
readonly visibleTools: readonly PreparedRuntimeAuthoredTool[];
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* Executes one authored tool call through the runtime-owned wrapper.
|
|
18
|
-
*/
|
|
19
|
-
export declare function executeRuntimeToolCall(input: ExecuteRuntimeToolCallInput): Promise<RuntimeToolResultActionResult>;
|
|
20
|
-
//# sourceMappingURL=execute-tool.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"execute-tool.d.ts","sourceRoot":"","sources":["../../../../src/runtime/tools/execute-tool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,4BAA4B,EAC5B,6BAA6B,EAC9B,MAAM,qBAAqB,CAAC;AAE7B,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAGvE,OAAO,EAA6B,KAAK,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEpF;;;;;;GAMG;AACH,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,MAAM,EAAE,4BAA4B,CAAC;IAC9C,QAAQ,CAAC,QAAQ,EAAE,mBAAmB,CAAC;IACvC,QAAQ,CAAC,YAAY,EAAE,SAAS,2BAA2B,EAAE,CAAC;CAC/D;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,2BAA2B,GACjC,OAAO,CAAC,6BAA6B,CAAC,CAuFxC"}
|
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
import { isJsonValue } from "../json.js";
|
|
2
|
-
import { formatStandardSchemaIssues, validateStandardSchemaValue } from "../standard-schema.js";
|
|
3
|
-
import { findRegisteredRuntimeTool } from "./registry.js";
|
|
4
|
-
/**
|
|
5
|
-
* Executes one authored tool call through the runtime-owned wrapper.
|
|
6
|
-
*/
|
|
7
|
-
export async function executeRuntimeToolCall(input) {
|
|
8
|
-
const visibleTool = input.visibleTools.find((tool) => tool.name === input.action.toolName);
|
|
9
|
-
if (visibleTool === undefined) {
|
|
10
|
-
return createErrorToolResult(input.action, {
|
|
11
|
-
code: "TOOL_NOT_VISIBLE",
|
|
12
|
-
message: `Tool "${input.action.toolName}" was not available on this runtime turn.`,
|
|
13
|
-
});
|
|
14
|
-
}
|
|
15
|
-
const registeredTool = findRegisteredRuntimeTool(input.registry, input.action.toolName);
|
|
16
|
-
if (registeredTool === null) {
|
|
17
|
-
return createErrorToolResult(input.action, {
|
|
18
|
-
code: "TOOL_NOT_REGISTERED",
|
|
19
|
-
message: `Tool "${input.action.toolName}" is not registered in the current compiled runtime.`,
|
|
20
|
-
});
|
|
21
|
-
}
|
|
22
|
-
if (visibleTool.sourceId !== registeredTool.prepared.sourceId ||
|
|
23
|
-
visibleTool.logicalPath !== registeredTool.prepared.logicalPath) {
|
|
24
|
-
return createErrorToolResult(input.action, {
|
|
25
|
-
code: "TOOL_REGISTRY_MISMATCH",
|
|
26
|
-
message: `Tool "${input.action.toolName}" no longer matches the current compiled runtime definition.`,
|
|
27
|
-
});
|
|
28
|
-
}
|
|
29
|
-
const authoredExecute = registeredTool.definition.execute;
|
|
30
|
-
if (authoredExecute === undefined) {
|
|
31
|
-
return createErrorToolResult(input.action, {
|
|
32
|
-
code: "TOOL_NOT_EXECUTABLE",
|
|
33
|
-
message: `Tool "${input.action.toolName}" is client-side and cannot execute on the server runtime.`,
|
|
34
|
-
});
|
|
35
|
-
}
|
|
36
|
-
let parsedInput = input.action.input;
|
|
37
|
-
if (registeredTool.definition.inputValidator !== undefined) {
|
|
38
|
-
let validationResult;
|
|
39
|
-
try {
|
|
40
|
-
validationResult = await validateStandardSchemaValue(registeredTool.definition.inputValidator, parsedInput);
|
|
41
|
-
}
|
|
42
|
-
catch (error) {
|
|
43
|
-
return createErrorToolResult(input.action, {
|
|
44
|
-
code: "TOOL_INPUT_VALIDATION_FAILED",
|
|
45
|
-
message: formatErrorMessage(error),
|
|
46
|
-
});
|
|
47
|
-
}
|
|
48
|
-
if (!validationResult.ok) {
|
|
49
|
-
return createErrorToolResult(input.action, {
|
|
50
|
-
code: "TOOL_INPUT_INVALID",
|
|
51
|
-
message: `Tool "${input.action.toolName}" received invalid input: ${formatStandardSchemaIssues(validationResult.issues)}.`,
|
|
52
|
-
});
|
|
53
|
-
}
|
|
54
|
-
parsedInput = validationResult.value;
|
|
55
|
-
}
|
|
56
|
-
try {
|
|
57
|
-
const output = await authoredExecute(parsedInput);
|
|
58
|
-
if (!isJsonValue(output)) {
|
|
59
|
-
return createErrorToolResult(input.action, {
|
|
60
|
-
code: "TOOL_OUTPUT_NOT_SERIALIZABLE",
|
|
61
|
-
message: `Tool "${input.action.toolName}" returned a non-JSON-serializable value.`,
|
|
62
|
-
});
|
|
63
|
-
}
|
|
64
|
-
return {
|
|
65
|
-
callId: input.action.callId,
|
|
66
|
-
kind: "tool-result",
|
|
67
|
-
output,
|
|
68
|
-
toolName: input.action.toolName,
|
|
69
|
-
};
|
|
70
|
-
}
|
|
71
|
-
catch (error) {
|
|
72
|
-
return createErrorToolResult(input.action, {
|
|
73
|
-
code: "TOOL_EXECUTION_FAILED",
|
|
74
|
-
message: formatErrorMessage(error),
|
|
75
|
-
});
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
function createErrorToolResult(action, output) {
|
|
79
|
-
return {
|
|
80
|
-
callId: action.callId,
|
|
81
|
-
isError: true,
|
|
82
|
-
kind: "tool-result",
|
|
83
|
-
output,
|
|
84
|
-
toolName: action.toolName,
|
|
85
|
-
};
|
|
86
|
-
}
|
|
87
|
-
function formatErrorMessage(error) {
|
|
88
|
-
return error instanceof Error ? error.message : String(error);
|
|
89
|
-
}
|
|
90
|
-
//# sourceMappingURL=execute-tool.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"execute-tool.js","sourceRoot":"","sources":["../../../../src/runtime/tools/execute-tool.ts"],"names":[],"mappings":"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"}
|