@framers/agentos 0.11.5 → 0.12.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.
Files changed (66) hide show
  1. package/dist/api/runtime/SelfImprovementSessionManager.d.ts.map +1 -1
  2. package/dist/api/runtime/SelfImprovementSessionManager.js +22 -8
  3. package/dist/api/runtime/SelfImprovementSessionManager.js.map +1 -1
  4. package/dist/cognition/emergent/ComposableToolBuilder.d.ts +59 -17
  5. package/dist/cognition/emergent/ComposableToolBuilder.d.ts.map +1 -1
  6. package/dist/cognition/emergent/ComposableToolBuilder.js +173 -53
  7. package/dist/cognition/emergent/ComposableToolBuilder.js.map +1 -1
  8. package/dist/cognition/emergent/CreateWorkflowTool.d.ts +19 -2
  9. package/dist/cognition/emergent/CreateWorkflowTool.d.ts.map +1 -1
  10. package/dist/cognition/emergent/CreateWorkflowTool.js +30 -2
  11. package/dist/cognition/emergent/CreateWorkflowTool.js.map +1 -1
  12. package/dist/cognition/emergent/EmergentCapabilityEngine.d.ts +68 -3
  13. package/dist/cognition/emergent/EmergentCapabilityEngine.d.ts.map +1 -1
  14. package/dist/cognition/emergent/EmergentCapabilityEngine.js +441 -78
  15. package/dist/cognition/emergent/EmergentCapabilityEngine.js.map +1 -1
  16. package/dist/cognition/emergent/EmergentJudge.d.ts +2 -0
  17. package/dist/cognition/emergent/EmergentJudge.d.ts.map +1 -1
  18. package/dist/cognition/emergent/EmergentJudge.js +3 -1
  19. package/dist/cognition/emergent/EmergentJudge.js.map +1 -1
  20. package/dist/cognition/emergent/EmergentToolRegistry.d.ts +43 -5
  21. package/dist/cognition/emergent/EmergentToolRegistry.d.ts.map +1 -1
  22. package/dist/cognition/emergent/EmergentToolRegistry.js +98 -19
  23. package/dist/cognition/emergent/EmergentToolRegistry.js.map +1 -1
  24. package/dist/cognition/emergent/ForgeToolMetaTool.d.ts +1 -0
  25. package/dist/cognition/emergent/ForgeToolMetaTool.d.ts.map +1 -1
  26. package/dist/cognition/emergent/ForgeToolMetaTool.js +7 -0
  27. package/dist/cognition/emergent/ForgeToolMetaTool.js.map +1 -1
  28. package/dist/cognition/emergent/StepGate.d.ts +73 -0
  29. package/dist/cognition/emergent/StepGate.d.ts.map +1 -0
  30. package/dist/cognition/emergent/StepGate.js +124 -0
  31. package/dist/cognition/emergent/StepGate.js.map +1 -0
  32. package/dist/cognition/emergent/index.d.ts +3 -1
  33. package/dist/cognition/emergent/index.d.ts.map +1 -1
  34. package/dist/cognition/emergent/index.js +1 -0
  35. package/dist/cognition/emergent/index.js.map +1 -1
  36. package/dist/cognition/emergent/types.d.ts +32 -2
  37. package/dist/cognition/emergent/types.d.ts.map +1 -1
  38. package/dist/cognition/emergent/types.js +10 -0
  39. package/dist/cognition/emergent/types.js.map +1 -1
  40. package/dist/core/llm/providers/implementations/OpenRouterProvider.d.ts.map +1 -1
  41. package/dist/core/llm/providers/implementations/OpenRouterProvider.js +4 -2
  42. package/dist/core/llm/providers/implementations/OpenRouterProvider.js.map +1 -1
  43. package/dist/core/tools/ITool.d.ts +6 -0
  44. package/dist/core/tools/ITool.d.ts.map +1 -1
  45. package/dist/core/tools/ToolExecutor.d.ts +19 -0
  46. package/dist/core/tools/ToolExecutor.d.ts.map +1 -1
  47. package/dist/core/tools/ToolExecutor.js +9 -0
  48. package/dist/core/tools/ToolExecutor.js.map +1 -1
  49. package/dist/core/tools/ToolOrchestrator.d.ts +13 -0
  50. package/dist/core/tools/ToolOrchestrator.d.ts.map +1 -1
  51. package/dist/core/tools/ToolOrchestrator.js +129 -13
  52. package/dist/core/tools/ToolOrchestrator.js.map +1 -1
  53. package/dist/extensions/ExtensionRegistry.d.ts +7 -0
  54. package/dist/extensions/ExtensionRegistry.d.ts.map +1 -1
  55. package/dist/extensions/ExtensionRegistry.js +24 -0
  56. package/dist/extensions/ExtensionRegistry.js.map +1 -1
  57. package/dist/io/media/images/imageToBuffer.d.ts.map +1 -1
  58. package/dist/io/media/images/imageToBuffer.js +3 -2
  59. package/dist/io/media/images/imageToBuffer.js.map +1 -1
  60. package/dist/io/speech/SpeechProviderResolver.d.ts.map +1 -1
  61. package/dist/io/speech/SpeechProviderResolver.js +13 -12
  62. package/dist/io/speech/SpeechProviderResolver.js.map +1 -1
  63. package/dist/io/speech/SpeechRuntime.d.ts.map +1 -1
  64. package/dist/io/speech/SpeechRuntime.js +16 -8
  65. package/dist/io/speech/SpeechRuntime.js.map +1 -1
  66. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"SelfImprovementSessionManager.d.ts","sourceRoot":"","sources":["../../../src/api/runtime/SelfImprovementSessionManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SelfImprovementSessionManager.d.ts","sourceRoot":"","sources":["../../../src/api/runtime/SelfImprovementSessionManager.ts"],"names":[],"mappings":"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"}
@@ -18,6 +18,7 @@
18
18
  * against the fully initialized AgentOS at tool-call time, not at
19
19
  * bootstrap.
20
20
  */
21
+ import { randomUUID } from 'node:crypto';
21
22
  import { PersonalityMutationStore } from '../../cognition/emergent/PersonalityMutationStore.js';
22
23
  import { resolveSelfImprovementSessionKey } from '../../cognition/emergent/sessionScope.js';
23
24
  import { HEXACO_TRAIT_KEYS, normalizeHexacoTraits, } from '../../cognition/substrate/personas/hexaco.js';
@@ -352,19 +353,32 @@ export class SelfImprovementSessionManager {
352
353
  });
353
354
  },
354
355
  // --- Tools ---
355
- executeTool: async (name, args, context) => {
356
+ executeTool: async (name, args, context, signal) => {
356
357
  const orchestrator = accessors.getToolOrchestrator();
357
- const tool = await orchestrator.getTool(name);
358
- if (!tool) {
359
- throw new Error(`Tool "${name}" not found in orchestrator.`);
360
- }
361
- const result = await tool.execute((args ?? {}), context ?? {
358
+ const caller = context ?? {
362
359
  gmiId: 'self-improvement',
363
360
  personaId: 'self-improvement',
364
361
  userContext: { userId: 'system' },
362
+ };
363
+ // Through processToolCall, so a workflow step meets the disabled list,
364
+ // the permission check (as the caller) and the approval a direct call
365
+ // meets; an expired step's signal stops it before its tool starts.
366
+ const result = await orchestrator.processToolCall({
367
+ toolCallRequest: {
368
+ id: `workflow-step-${randomUUID()}`,
369
+ name,
370
+ arguments: (args ?? {}),
371
+ },
372
+ gmiId: caller.gmiId,
373
+ personaId: caller.personaId,
374
+ personaCapabilities: caller.personaCapabilities ?? [],
375
+ userContext: caller.userContext,
376
+ correlationId: caller.correlationId,
377
+ sessionData: caller.sessionData,
378
+ ...(signal ? { signal } : {}),
365
379
  });
366
- if (!result.success) {
367
- throw new Error(result.error ?? `Tool "${name}" failed.`);
380
+ if (result.isError) {
381
+ throw new Error(result.errorDetails?.message ?? `Tool "${name}" failed.`);
368
382
  }
369
383
  return result.output;
370
384
  },
@@ -1 +1 @@
1
- {"version":3,"file":"SelfImprovementSessionManager.js","sourceRoot":"","sources":["../../../src/api/runtime/SelfImprovementSessionManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SelfImprovementSessionManager.js","sourceRoot":"","sources":["../../../src/api/runtime/SelfImprovementSessionManager.ts"],"names":[],"mappings":"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"}
@@ -12,11 +12,10 @@
12
12
  * - Steps execute sequentially; the first failure aborts the pipeline and surfaces
13
13
  * the error immediately.
14
14
  * - The composite tool's final output is the last step's raw output value.
15
- * - Every tool invocation is delegated to a caller-supplied `executeTool`
16
- * callback; the builder holds no registry, and the callback decides which
17
- * checks a step meets.
15
+ * - Every step runs through a {@link StepGate}; the builder holds no registry.
18
16
  */
19
17
  import type { ComposableToolSpec } from './types.js';
18
+ import { type Chainability, type StepGate } from './StepGate.js';
20
19
  import type { ITool, ToolExecutionResult, ToolExecutionContext, JSONSchemaObject } from '../../core/tools/ITool.js';
21
20
  /**
22
21
  * Builds composite `ITool` instances by chaining existing tool invocations.
@@ -38,16 +37,17 @@ import type { ITool, ToolExecutionResult, ToolExecutionContext, JSONSchemaObject
38
37
  * Reference expressions nested inside plain objects are resolved recursively, so
39
38
  * `{ query: "$input.topic", limit: 10 }` becomes `{ query: "actual-topic", limit: 10 }`.
40
39
  *
41
- * All tool invocations are delegated to the `executeTool` callback supplied at
42
- * construction time. The builder never holds a reference to any tool registry,
43
- * and it applies no permission or approval check of its own.
40
+ * Every step runs through a {@link StepGate}, which is where the host's checks
41
+ * live, and is checked first against the chainability rule: a tool that
42
+ * declares no side effects is chained freely, a tool with side effects only
43
+ * when the host lists it, and a tool that declares nothing by no one.
44
44
  *
45
45
  * @example
46
46
  * ```ts
47
- * const builder = new ComposableToolBuilder(async (toolName, args, ctx) => {
48
- * const tool = registry.get(toolName);
49
- * return tool.execute(args, ctx);
50
- * });
47
+ * const builder = new ComposableToolBuilder(
48
+ * createStepGate({ resolve: (name) => registry.get(name) }),
49
+ * );
50
+ * builder.bind({ sideEffectingTools: ['send_email'] });
51
51
  *
52
52
  * const spec: ComposableToolSpec = {
53
53
  * mode: 'compose',
@@ -62,26 +62,46 @@ import type { ITool, ToolExecutionResult, ToolExecutionContext, JSONSchemaObject
62
62
  * ```
63
63
  */
64
64
  export declare class ComposableToolBuilder {
65
- private readonly executeTool;
66
65
  /**
67
66
  * When true, unresolved `$`-prefixed reference expressions throw instead
68
67
  * of silently passing through as literal strings. Useful for development
69
68
  * and testing to catch typos in inputMapping expressions early.
70
69
  */
71
70
  readonly strictMode: boolean;
71
+ private gate;
72
+ private sideEffectingTools;
72
73
  /**
73
- * @param executeTool - Callback invoked for each pipeline step. Receives the
74
- * target tool name, the resolved argument object, and the outer execution
75
- * context forwarded from the composite tool's own `execute` call.
76
- * Must return a {@link ToolExecutionResult}; a `success: false` result aborts
77
- * the remainder of the pipeline.
74
+ * @param gateOrExecute - A {@link StepGate}. A bare `(toolName, args, context)`
75
+ * callback is still accepted so existing construction keeps working, but
76
+ * nothing can be composed through one: it cannot say what a step tool is,
77
+ * so no step can be checked. Bind a gate with {@link bind}.
78
78
  * @param options - Optional builder configuration.
79
79
  * @param options.strictMode - When true, unresolved reference expressions
80
80
  * throw an error instead of falling through as literal strings.
81
81
  */
82
- constructor(executeTool: (toolName: string, args: unknown, context: ToolExecutionContext) => Promise<ToolExecutionResult>, options?: {
82
+ constructor(gateOrExecute: StepGate | ((toolName: string, args: unknown, context: ToolExecutionContext) => Promise<ToolExecutionResult>), options?: {
83
83
  strictMode?: boolean;
84
84
  });
85
+ /**
86
+ * Bind the gate and the host's list of side-effecting tools that may be
87
+ * chained. The engine calls this from its configuration; a host that uses
88
+ * the builder on its own may call it too.
89
+ */
90
+ bind(options: {
91
+ gate?: StepGate;
92
+ sideEffectingTools?: readonly string[];
93
+ }): void;
94
+ /** Whether steps can be resolved and checked at all. */
95
+ hasGate(): boolean;
96
+ /** The tool a step names, as the gate resolves it now; undefined without a gate. */
97
+ resolve(stepTool: string): ITool | undefined;
98
+ /** Whether a step naming this tool may be chained right now. */
99
+ check(stepTool: string): Chainability;
100
+ /**
101
+ * Whether any step of the spec names a tool that has side effects right now,
102
+ * or a tool that is itself a composition (whose own steps may).
103
+ */
104
+ hasSideEffectingStep(spec: ComposableToolSpec): boolean;
85
105
  /**
86
106
  * Build an `ITool`-compatible object from a {@link ComposableToolSpec}.
87
107
  *
@@ -106,6 +126,28 @@ export declare class ComposableToolBuilder {
106
126
  * ```
107
127
  */
108
128
  build(name: string, description: string, inputSchema: JSONSchemaObject, spec: ComposableToolSpec): ITool;
129
+ /**
130
+ * Run a pipeline. Every step is re-checked against the chainability rule
131
+ * before it runs, because a tool is replaced by name, and the instance that
132
+ * was checked is the one the gate runs. With `options.dry` (forge-time
133
+ * tests), a step whose tool has side effects, or is itself a composition,
134
+ * is not executed: its output is taken from `stepOutputs`, and the step is
135
+ * listed as an effect that would have run. `options.signal`, when given,
136
+ * reaches every step's run.
137
+ *
138
+ * Compositions nest no deeper than {@link MAX_COMPOSITION_DEPTH}: the depth
139
+ * travels in `context.sessionData.emergentDepth`, and a run at the limit is
140
+ * refused with `step_cycle`.
141
+ *
142
+ * A refusal or a failure ends the run; `details` then names the step, the
143
+ * steps that completed before it, and the effects so far.
144
+ */
145
+ runPipeline(spec: ComposableToolSpec, args: Record<string, unknown>, context: ToolExecutionContext, options?: {
146
+ dry?: {
147
+ stepOutputs: Record<string, unknown>;
148
+ };
149
+ signal?: AbortSignal;
150
+ }): Promise<ToolExecutionResult>;
109
151
  /**
110
152
  * Validate a {@link ComposableToolSpec} before building.
111
153
  *
@@ -1 +1 @@
1
- {"version":3,"file":"ComposableToolBuilder.d.ts","sourceRoot":"","sources":["../../../src/cognition/emergent/ComposableToolBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAkB,MAAM,YAAY,CAAC;AACrE,OAAO,KAAK,EACV,KAAK,EACL,mBAAmB,EACnB,oBAAoB,EACpB,gBAAgB,EACjB,MAAM,2BAA2B,CAAC;AA0BnC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AACH,qBAAa,qBAAqB;IAmB9B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAlB9B;;;;OAIG;IACH,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAE7B;;;;;;;;;OASG;gBAEgB,WAAW,EAAE,CAC5B,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,OAAO,EACb,OAAO,EAAE,oBAAoB,KAC1B,OAAO,CAAC,mBAAmB,CAAC,EACjC,OAAO,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,OAAO,CAAA;KAAE;IASpC;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,KAAK,CACH,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,gBAAgB,EAC7B,IAAI,EAAE,kBAAkB,GACvB,KAAK;IA4DR;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,QAAQ,CAAC,IAAI,EAAE,kBAAkB,GAAG;QAAE,KAAK,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE;CAgB1E"}
1
+ {"version":3,"file":"ComposableToolBuilder.d.ts","sourceRoot":"","sources":["../../../src/cognition/emergent/ComposableToolBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAkB,MAAM,YAAY,CAAC;AACrE,OAAO,EAIL,KAAK,YAAY,EACjB,KAAK,QAAQ,EACd,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EACV,KAAK,EACL,mBAAmB,EACnB,oBAAoB,EACpB,gBAAgB,EACjB,MAAM,2BAA2B,CAAC;AA0BnC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AACH,qBAAa,qBAAqB;IAChC;;;;OAIG;IACH,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAE7B,OAAO,CAAC,IAAI,CAAuB;IACnC,OAAO,CAAC,kBAAkB,CAAyB;IAEnD;;;;;;;;OAQG;gBAED,aAAa,EACT,QAAQ,GACR,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,oBAAoB,KAAK,OAAO,CAAC,mBAAmB,CAAC,CAAC,EACtG,OAAO,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,OAAO,CAAA;KAAE;IAMpC;;;;OAIG;IACH,IAAI,CAAC,OAAO,EAAE;QAAE,IAAI,CAAC,EAAE,QAAQ,CAAC;QAAC,kBAAkB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;KAAE,GAAG,IAAI;IAShF,wDAAwD;IACxD,OAAO,IAAI,OAAO;IAIlB,oFAAoF;IACpF,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS;IAI5C,gEAAgE;IAChE,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY;IAOrC;;;OAGG;IACH,oBAAoB,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO;IAevD;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,KAAK,CACH,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,gBAAgB,EAC7B,IAAI,EAAE,kBAAkB,GACvB,KAAK;IAaR;;;;;;;;;;;;;;;OAeG;IACG,WAAW,CACf,IAAI,EAAE,kBAAkB,EACxB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,OAAO,EAAE,oBAAoB,EAC7B,OAAO,GAAE;QAAE,GAAG,CAAC,EAAE;YAAE,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;SAAE,CAAC;QAAC,MAAM,CAAC,EAAE,WAAW,CAAA;KAAO,GACrF,OAAO,CAAC,mBAAmB,CAAC;IAsG/B;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,QAAQ,CAAC,IAAI,EAAE,kBAAkB,GAAG;QAAE,KAAK,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE;CAgB1E"}
@@ -12,10 +12,9 @@
12
12
  * - Steps execute sequentially; the first failure aborts the pipeline and surfaces
13
13
  * the error immediately.
14
14
  * - The composite tool's final output is the last step's raw output value.
15
- * - Every tool invocation is delegated to a caller-supplied `executeTool`
16
- * callback; the builder holds no registry, and the callback decides which
17
- * checks a step meets.
15
+ * - Every step runs through a {@link StepGate}; the builder holds no registry.
18
16
  */
17
+ import { COMPOSE_NEEDS_GATE_MESSAGE, MAX_COMPOSITION_DEPTH, checkChainable, } from './StepGate.js';
19
18
  // ============================================================================
20
19
  // COMPOSABLE TOOL BUILDER
21
20
  // ============================================================================
@@ -39,16 +38,17 @@
39
38
  * Reference expressions nested inside plain objects are resolved recursively, so
40
39
  * `{ query: "$input.topic", limit: 10 }` becomes `{ query: "actual-topic", limit: 10 }`.
41
40
  *
42
- * All tool invocations are delegated to the `executeTool` callback supplied at
43
- * construction time. The builder never holds a reference to any tool registry,
44
- * and it applies no permission or approval check of its own.
41
+ * Every step runs through a {@link StepGate}, which is where the host's checks
42
+ * live, and is checked first against the chainability rule: a tool that
43
+ * declares no side effects is chained freely, a tool with side effects only
44
+ * when the host lists it, and a tool that declares nothing by no one.
45
45
  *
46
46
  * @example
47
47
  * ```ts
48
- * const builder = new ComposableToolBuilder(async (toolName, args, ctx) => {
49
- * const tool = registry.get(toolName);
50
- * return tool.execute(args, ctx);
51
- * });
48
+ * const builder = new ComposableToolBuilder(
49
+ * createStepGate({ resolve: (name) => registry.get(name) }),
50
+ * );
51
+ * builder.bind({ sideEffectingTools: ['send_email'] });
52
52
  *
53
53
  * const spec: ComposableToolSpec = {
54
54
  * mode: 'compose',
@@ -64,18 +64,60 @@
64
64
  */
65
65
  export class ComposableToolBuilder {
66
66
  /**
67
- * @param executeTool - Callback invoked for each pipeline step. Receives the
68
- * target tool name, the resolved argument object, and the outer execution
69
- * context forwarded from the composite tool's own `execute` call.
70
- * Must return a {@link ToolExecutionResult}; a `success: false` result aborts
71
- * the remainder of the pipeline.
67
+ * @param gateOrExecute - A {@link StepGate}. A bare `(toolName, args, context)`
68
+ * callback is still accepted so existing construction keeps working, but
69
+ * nothing can be composed through one: it cannot say what a step tool is,
70
+ * so no step can be checked. Bind a gate with {@link bind}.
72
71
  * @param options - Optional builder configuration.
73
72
  * @param options.strictMode - When true, unresolved reference expressions
74
73
  * throw an error instead of falling through as literal strings.
75
74
  */
76
- constructor(executeTool, options) {
77
- this.executeTool = executeTool;
75
+ constructor(gateOrExecute, options) {
76
+ this.sideEffectingTools = [];
78
77
  this.strictMode = options?.strictMode ?? false;
78
+ this.gate = typeof gateOrExecute === 'function' ? undefined : gateOrExecute;
79
+ }
80
+ /**
81
+ * Bind the gate and the host's list of side-effecting tools that may be
82
+ * chained. The engine calls this from its configuration; a host that uses
83
+ * the builder on its own may call it too.
84
+ */
85
+ bind(options) {
86
+ if (options.gate) {
87
+ this.gate = options.gate;
88
+ }
89
+ if (options.sideEffectingTools) {
90
+ this.sideEffectingTools = options.sideEffectingTools;
91
+ }
92
+ }
93
+ /** Whether steps can be resolved and checked at all. */
94
+ hasGate() {
95
+ return this.gate !== undefined;
96
+ }
97
+ /** The tool a step names, as the gate resolves it now; undefined without a gate. */
98
+ resolve(stepTool) {
99
+ return this.gate?.resolve(stepTool);
100
+ }
101
+ /** Whether a step naming this tool may be chained right now. */
102
+ check(stepTool) {
103
+ if (!this.gate) {
104
+ return { ok: false, code: 'compose_needs_gate', message: COMPOSE_NEEDS_GATE_MESSAGE };
105
+ }
106
+ return checkChainable(stepTool, this.gate.resolve(stepTool), this.sideEffectingTools);
107
+ }
108
+ /**
109
+ * Whether any step of the spec names a tool that has side effects right now,
110
+ * or a tool that is itself a composition (whose own steps may).
111
+ */
112
+ hasSideEffectingStep(spec) {
113
+ const gate = this.gate;
114
+ if (!gate) {
115
+ return true;
116
+ }
117
+ return spec.steps.some((step) => {
118
+ const tool = gate.resolve(step.tool);
119
+ return tool?.hasSideEffects !== false || isComposition(tool);
120
+ });
79
121
  }
80
122
  // --------------------------------------------------------------------------
81
123
  // PUBLIC API
@@ -104,51 +146,125 @@ export class ComposableToolBuilder {
104
146
  * ```
105
147
  */
106
148
  build(name, description, inputSchema, spec) {
107
- // Capture instance fields in local bindings so that the returned object's
108
- // `execute` closure does not retain a reference to `this` beyond what is needed.
109
- const executeTool = this.executeTool;
110
- const strictMode = this.strictMode;
111
149
  return {
112
- // -----------------------------------------------------------------------
113
- // Identity fields required by ITool
114
- // -----------------------------------------------------------------------
115
150
  id: `composable:${name}`,
116
151
  name,
117
152
  displayName: name,
118
153
  description,
119
154
  inputSchema,
120
155
  hasSideEffects: true,
121
- // -----------------------------------------------------------------------
122
- // Core execution — runs the pipeline defined in spec
123
- // -----------------------------------------------------------------------
124
- async execute(args, context) {
125
- /** Shared evaluation context threaded through each step. */
126
- const pipelineCtx = {
127
- input: args,
128
- prev: null,
129
- steps: {},
156
+ execute: (args, context) => this.runPipeline(spec, args, context),
157
+ };
158
+ }
159
+ /**
160
+ * Run a pipeline. Every step is re-checked against the chainability rule
161
+ * before it runs, because a tool is replaced by name, and the instance that
162
+ * was checked is the one the gate runs. With `options.dry` (forge-time
163
+ * tests), a step whose tool has side effects, or is itself a composition,
164
+ * is not executed: its output is taken from `stepOutputs`, and the step is
165
+ * listed as an effect that would have run. `options.signal`, when given,
166
+ * reaches every step's run.
167
+ *
168
+ * Compositions nest no deeper than {@link MAX_COMPOSITION_DEPTH}: the depth
169
+ * travels in `context.sessionData.emergentDepth`, and a run at the limit is
170
+ * refused with `step_cycle`.
171
+ *
172
+ * A refusal or a failure ends the run; `details` then names the step, the
173
+ * steps that completed before it, and the effects so far.
174
+ */
175
+ async runPipeline(spec, args, context, options = {}) {
176
+ const gate = this.gate;
177
+ if (!gate) {
178
+ return {
179
+ success: false,
180
+ error: `compose_needs_gate: ${COMPOSE_NEEDS_GATE_MESSAGE}`,
181
+ details: { code: 'compose_needs_gate' },
182
+ };
183
+ }
184
+ const depthValue = context.sessionData?.emergentDepth;
185
+ const depth = typeof depthValue === 'number' && depthValue >= 0 ? depthValue : 0;
186
+ if (depth >= MAX_COMPOSITION_DEPTH) {
187
+ return {
188
+ success: false,
189
+ error: `step_cycle: compositions nest more than ${MAX_COMPOSITION_DEPTH} deep; ` +
190
+ 'a composition that reaches itself, or a chain that long, does not run',
191
+ details: { code: 'step_cycle', depth },
192
+ };
193
+ }
194
+ const stepContext = {
195
+ ...context,
196
+ sessionData: { ...(context.sessionData ?? {}), emergentDepth: depth + 1 },
197
+ };
198
+ const pipelineCtx = { input: args, prev: null, steps: {} };
199
+ const completed = [];
200
+ const effects = [];
201
+ let lastOutput = null;
202
+ for (const step of spec.steps) {
203
+ const tool = gate.resolve(step.tool);
204
+ const verdict = checkChainable(step.tool, tool, this.sideEffectingTools);
205
+ if (!verdict.ok || !tool) {
206
+ const code = verdict.ok ? 'step_missing' : verdict.code;
207
+ const message = verdict.ok ? `step tool "${step.tool}" is not registered` : verdict.message;
208
+ return {
209
+ success: false,
210
+ error: `Step "${step.name}" (tool: "${step.tool}") refused: ${code}: ${message}`,
211
+ details: { code, step: step.name, tool: step.tool, completed, effects },
130
212
  };
131
- let lastOutput = null;
132
- for (const step of spec.steps) {
133
- // Resolve the step's inputMapping against the current pipeline context.
134
- const resolvedArgs = resolveMapping(step.inputMapping, pipelineCtx, strictMode);
135
- // Invoke the underlying tool via the caller-supplied executor.
136
- const result = await executeTool(step.tool, resolvedArgs, context);
137
- if (!result.success) {
138
- // Abort the pipeline on first failure, surfacing the step's error.
139
- return {
140
- success: false,
141
- error: `Step "${step.name}" (tool: "${step.tool}") failed: ${result.error ?? 'unknown error'}`,
142
- };
143
- }
144
- lastOutput = result.output;
145
- // Advance the pipeline context so subsequent steps can reference this step.
146
- pipelineCtx.prev = lastOutput;
147
- pipelineCtx.steps[step.name] = lastOutput;
213
+ }
214
+ const resolvedArgs = resolveMapping(step.inputMapping, pipelineCtx, this.strictMode);
215
+ const nested = isComposition(tool);
216
+ if (options.dry && (verdict.sideEffects || nested)) {
217
+ if (!(step.name in options.dry.stepOutputs)) {
218
+ return {
219
+ success: false,
220
+ error: `dry_run_needs_output: step "${step.name}" (tool: "${step.tool}") ` +
221
+ (nested ? 'is a composition' : 'has side effects') +
222
+ ` and is not executed while forging; give its output in testCases[].stepOutputs["${step.name}"]`,
223
+ details: { code: 'dry_run_needs_output', step: step.name, tool: step.tool, completed, effects },
224
+ };
148
225
  }
149
- return { success: true, output: lastOutput };
150
- },
151
- };
226
+ lastOutput = options.dry.stepOutputs[step.name];
227
+ effects.push({
228
+ step: step.name,
229
+ tool: step.tool,
230
+ wouldRun: true,
231
+ ...(nested ? { nested: true } : {}),
232
+ args: resolvedArgs,
233
+ });
234
+ }
235
+ else {
236
+ const result = await gate.run(tool, resolvedArgs, stepContext, options.signal);
237
+ if (!result.success) {
238
+ return {
239
+ success: false,
240
+ error: `Step "${step.name}" (tool: "${step.tool}") failed: ${result.error ?? 'unknown error'}`,
241
+ details: {
242
+ ...(result.details ?? {}),
243
+ step: step.name,
244
+ tool: step.tool,
245
+ completed,
246
+ effects,
247
+ // Whether a refused or failed side-effecting step took effect is not known here.
248
+ ...(verdict.sideEffects ? { unknownEffect: step.name } : {}),
249
+ },
250
+ };
251
+ }
252
+ lastOutput = result.output;
253
+ const inner = result.details?.effects;
254
+ if (Array.isArray(inner)) {
255
+ effects.push(...inner);
256
+ }
257
+ else if (verdict.sideEffects) {
258
+ effects.push({ step: step.name, tool: step.tool, ran: true });
259
+ }
260
+ }
261
+ completed.push(step.name);
262
+ pipelineCtx.prev = lastOutput;
263
+ pipelineCtx.steps[step.name] = lastOutput;
264
+ }
265
+ return effects.length > 0
266
+ ? { success: true, output: lastOutput, details: { effects } }
267
+ : { success: true, output: lastOutput };
152
268
  }
153
269
  /**
154
270
  * Validate a {@link ComposableToolSpec} before building.
@@ -192,6 +308,10 @@ export class ComposableToolBuilder {
192
308
  // ============================================================================
193
309
  // INTERNAL HELPERS — not exported
194
310
  // ============================================================================
311
+ /** Whether a resolved step tool is itself an emergent composition (the engine marks its executables). */
312
+ function isComposition(tool) {
313
+ return tool?.emergentMode === 'compose';
314
+ }
195
315
  /**
196
316
  * Resolve an entire `inputMapping` object against the current pipeline context.
197
317
  *
@@ -1 +1 @@
1
- {"version":3,"file":"ComposableToolBuilder.js","sourceRoot":"","sources":["../../../src/cognition/emergent/ComposableToolBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AA8BH,+EAA+E;AAC/E,0BAA0B;AAC1B,+EAA+E;AAE/E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AACH,MAAM,OAAO,qBAAqB;IAQhC;;;;;;;;;OASG;IACH,YACmB,WAIgB,EACjC,OAAkC;QALjB,gBAAW,GAAX,WAAW,CAIK;QAGjC,IAAI,CAAC,UAAU,GAAG,OAAO,EAAE,UAAU,IAAI,KAAK,CAAC;IACjD,CAAC;IAED,6EAA6E;IAC7E,aAAa;IACb,6EAA6E;IAE7E;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,KAAK,CACH,IAAY,EACZ,WAAmB,EACnB,WAA6B,EAC7B,IAAwB;QAExB,0EAA0E;QAC1E,iFAAiF;QACjF,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACrC,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QAEnC,OAAO;YACL,0EAA0E;YAC1E,oCAAoC;YACpC,0EAA0E;YAC1E,EAAE,EAAE,cAAc,IAAI,EAAE;YACxB,IAAI;YACJ,WAAW,EAAE,IAAI;YACjB,WAAW;YACX,WAAW;YACX,cAAc,EAAE,IAAI;YAEpB,0EAA0E;YAC1E,qDAAqD;YACrD,0EAA0E;YAC1E,KAAK,CAAC,OAAO,CACX,IAA6B,EAC7B,OAA6B;gBAE7B,4DAA4D;gBAC5D,MAAM,WAAW,GAAoB;oBACnC,KAAK,EAAE,IAAI;oBACX,IAAI,EAAE,IAAI;oBACV,KAAK,EAAE,EAAE;iBACV,CAAC;gBAEF,IAAI,UAAU,GAAY,IAAI,CAAC;gBAE/B,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;oBAC9B,wEAAwE;oBACxE,MAAM,YAAY,GAAG,cAAc,CAAC,IAAI,CAAC,YAAY,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;oBAEhF,+DAA+D;oBAC/D,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;oBAEnE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;wBACpB,mEAAmE;wBACnE,OAAO;4BACL,OAAO,EAAE,KAAK;4BACd,KAAK,EAAE,SAAS,IAAI,CAAC,IAAI,aAAa,IAAI,CAAC,IAAI,cAAc,MAAM,CAAC,KAAK,IAAI,eAAe,EAAE;yBAC/F,CAAC;oBACJ,CAAC;oBAED,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC;oBAE3B,4EAA4E;oBAC5E,WAAW,CAAC,IAAI,GAAG,UAAU,CAAC;oBAC9B,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC;gBAC5C,CAAC;gBAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;YAC/C,CAAC;SACF,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,QAAQ,CAAC,IAAwB;QAC/B,MAAM,MAAM,GAAa,EAAE,CAAC;QAE5B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1D,MAAM,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;QACrE,CAAC;aAAM,CAAC;YACN,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAC3B,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;oBAC7D,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,uCAAuC,CAAC,CAAC;gBACzE,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAC1E,CAAC;CACF;AAED,+EAA+E;AAC/E,kCAAkC;AAClC,+EAA+E;AAE/E;;;;;;;;;;;;GAYG;AACH,SAAS,cAAc,CACrB,OAAgC,EAChC,GAAoB,EACpB,SAAkB,KAAK;IAEvB,MAAM,QAAQ,GAA4B,EAAE,CAAC;IAC7C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACnD,QAAQ,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;IACnD,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAS,YAAY,CAAC,KAAc,EAAE,GAAoB,EAAE,SAAkB,KAAK;IACjF,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACvD,OAAO,iBAAiB,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;IAC/C,CAAC;IAED,IAAI,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,cAAc,CAAC,KAAgC,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;IACvE,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,SAAS,iBAAiB,CAAC,IAAY,EAAE,GAAoB,EAAE,SAAkB,KAAK;IACpF,gCAAgC;IAChC,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtB,OAAO,GAAG,CAAC,KAAK,CAAC;IACnB,CAAC;IACD,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC1C,OAAO,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACtC,CAAC;IAED,8BAA8B;IAC9B,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;QACrB,OAAO,GAAG,CAAC,IAAI,CAAC;IAClB,CAAC;IACD,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACzC,OAAO,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;IAED,sCAAsC;IACtC,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;IACxD,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,KAAK,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC1C,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,4BAA4B;QAE7D,sDAAsD;QACtD,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC5C,IAAI,KAAK,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;YAC/B,8EAA8E;YAC9E,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,MAAM,UAAU,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;QAErC,IAAI,SAAS,KAAK,EAAE,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAChD,OAAO,UAAU,CAAC;QACpB,CAAC;QACD,IAAI,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC9B,OAAO,WAAW,CAAC,UAAU,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;IAED,wEAAwE;IACxE,2EAA2E;IAC3E,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CACb,qCAAqC,IAAI,wCAAwC,CAClF,CAAC;IACJ,CAAC;IACD,2EAA2E;IAC3E,4DAA4D;IAC5D,OAAO,CAAC,IAAI,CAAC,iDAAiD,IAAI,sBAAsB,CAAC,CAAC;IAC1F,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,WAAW,CAAC,IAAa,EAAE,IAAY;IAC9C,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACjC,IAAI,OAAO,GAAY,IAAI,CAAC;IAC5B,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,IAAI,OAAO,IAAI,IAAI,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YACnD,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO,GAAI,OAAmC,CAAC,OAAO,CAAC,CAAC;IAC1D,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;GAKG;AACH,SAAS,aAAa,CAAC,KAAc;IACnC,OAAO,CACL,KAAK,KAAK,IAAI;QACd,OAAO,KAAK,KAAK,QAAQ;QACzB,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QACrB,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC,SAAS,CAClD,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"ComposableToolBuilder.js","sourceRoot":"","sources":["../../../src/cognition/emergent/ComposableToolBuilder.ts"],"names":[],"mappings":"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"}
@@ -72,10 +72,27 @@ export interface CreateWorkflowDeps {
72
72
  /** List of tool names that are permitted in workflow steps. */
73
73
  allowedTools: string[];
74
74
  };
75
- /** Execute a tool by name with the given arguments. */
76
- executeTool: (name: string, args: unknown, context?: ToolExecutionContext) => Promise<unknown>;
75
+ /**
76
+ * Execute a tool by name with the given arguments. `signal` is aborted when
77
+ * the step expires: an implementation that waits on an approval checks it
78
+ * before the tool starts, so a late approval starts nothing.
79
+ */
80
+ executeTool: (name: string, args: unknown, context?: ToolExecutionContext, signal?: AbortSignal) => Promise<unknown>;
77
81
  /** Return the list of all currently available tool names. */
78
82
  listTools: () => string[];
83
+ /**
84
+ * The chainability rule. When given, `create` refuses a step this rule
85
+ * refuses, and `run` checks every step again before it runs. The emergent
86
+ * engine supplies it; a host that builds this tool itself owns the checks
87
+ * its `executeTool` applies.
88
+ */
89
+ checkStep?: (name: string) => {
90
+ ok: true;
91
+ } | {
92
+ ok: false;
93
+ code: string;
94
+ message: string;
95
+ };
79
96
  }
80
97
  /**
81
98
  * ITool implementation enabling agents to compose, execute, and list
@@ -1 +1 @@
1
- {"version":3,"file":"CreateWorkflowTool.d.ts","sourceRoot":"","sources":["../../../src/cognition/emergent/CreateWorkflowTool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CreateWorkflowTool.d.ts","sourceRoot":"","sources":["../../../src/cognition/emergent/CreateWorkflowTool.ts"],"names":[],"mappings":"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"}