agentfootprint 2.11.1 → 2.11.3

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 (91) hide show
  1. package/dist/core/Agent.js +81 -1238
  2. package/dist/core/Agent.js.map +1 -1
  3. package/dist/core/agent/AgentBuilder.js +489 -0
  4. package/dist/core/agent/AgentBuilder.js.map +1 -0
  5. package/dist/core/agent/buildAgentChart.js +227 -0
  6. package/dist/core/agent/buildAgentChart.js.map +1 -0
  7. package/dist/core/agent/buildToolRegistry.js +115 -0
  8. package/dist/core/agent/buildToolRegistry.js.map +1 -0
  9. package/dist/core/agent/stages/breakFinal.js +28 -0
  10. package/dist/core/agent/stages/breakFinal.js.map +1 -0
  11. package/dist/core/agent/stages/callLLM.js +129 -0
  12. package/dist/core/agent/stages/callLLM.js.map +1 -0
  13. package/dist/core/agent/stages/iterationStart.js +24 -0
  14. package/dist/core/agent/stages/iterationStart.js.map +1 -0
  15. package/dist/core/agent/stages/prepareFinal.js +45 -0
  16. package/dist/core/agent/stages/prepareFinal.js.map +1 -0
  17. package/dist/core/agent/stages/route.js +36 -0
  18. package/dist/core/agent/stages/route.js.map +1 -0
  19. package/dist/core/agent/stages/seed.js +95 -0
  20. package/dist/core/agent/stages/seed.js.map +1 -0
  21. package/dist/core/agent/stages/toolCalls.js +250 -0
  22. package/dist/core/agent/stages/toolCalls.js.map +1 -0
  23. package/dist/esm/core/Agent.js +83 -1239
  24. package/dist/esm/core/Agent.js.map +1 -1
  25. package/dist/esm/core/agent/AgentBuilder.js +485 -0
  26. package/dist/esm/core/agent/AgentBuilder.js.map +1 -0
  27. package/dist/esm/core/agent/buildAgentChart.js +223 -0
  28. package/dist/esm/core/agent/buildAgentChart.js.map +1 -0
  29. package/dist/esm/core/agent/buildToolRegistry.js +111 -0
  30. package/dist/esm/core/agent/buildToolRegistry.js.map +1 -0
  31. package/dist/esm/core/agent/stages/breakFinal.js +24 -0
  32. package/dist/esm/core/agent/stages/breakFinal.js.map +1 -0
  33. package/dist/esm/core/agent/stages/callLLM.js +125 -0
  34. package/dist/esm/core/agent/stages/callLLM.js.map +1 -0
  35. package/dist/esm/core/agent/stages/iterationStart.js +20 -0
  36. package/dist/esm/core/agent/stages/iterationStart.js.map +1 -0
  37. package/dist/esm/core/agent/stages/prepareFinal.js +41 -0
  38. package/dist/esm/core/agent/stages/prepareFinal.js.map +1 -0
  39. package/dist/esm/core/agent/stages/route.js +32 -0
  40. package/dist/esm/core/agent/stages/route.js.map +1 -0
  41. package/dist/esm/core/agent/stages/seed.js +91 -0
  42. package/dist/esm/core/agent/stages/seed.js.map +1 -0
  43. package/dist/esm/core/agent/stages/toolCalls.js +246 -0
  44. package/dist/esm/core/agent/stages/toolCalls.js.map +1 -0
  45. package/dist/esm/events/dispatcher.js +5 -2
  46. package/dist/esm/events/dispatcher.js.map +1 -1
  47. package/dist/esm/memory/define.types.js.map +1 -1
  48. package/dist/esm/reliability/buildReliabilityGateChart.js +6 -1
  49. package/dist/esm/reliability/buildReliabilityGateChart.js.map +1 -1
  50. package/dist/esm/strategies/attach.js +4 -2
  51. package/dist/esm/strategies/attach.js.map +1 -1
  52. package/dist/esm/strategies/compose.js +4 -0
  53. package/dist/esm/strategies/compose.js.map +1 -1
  54. package/dist/events/dispatcher.js +5 -2
  55. package/dist/events/dispatcher.js.map +1 -1
  56. package/dist/memory/define.types.js.map +1 -1
  57. package/dist/reliability/buildReliabilityGateChart.js +6 -1
  58. package/dist/reliability/buildReliabilityGateChart.js.map +1 -1
  59. package/dist/strategies/attach.js +4 -2
  60. package/dist/strategies/attach.js.map +1 -1
  61. package/dist/strategies/compose.js +4 -0
  62. package/dist/strategies/compose.js.map +1 -1
  63. package/dist/types/core/Agent.d.ts +5 -333
  64. package/dist/types/core/Agent.d.ts.map +1 -1
  65. package/dist/types/core/agent/AgentBuilder.d.ts +348 -0
  66. package/dist/types/core/agent/AgentBuilder.d.ts.map +1 -0
  67. package/dist/types/core/agent/buildAgentChart.d.ts +74 -0
  68. package/dist/types/core/agent/buildAgentChart.d.ts.map +1 -0
  69. package/dist/types/core/agent/buildToolRegistry.d.ts +62 -0
  70. package/dist/types/core/agent/buildToolRegistry.d.ts.map +1 -0
  71. package/dist/types/core/agent/stages/breakFinal.d.ts +23 -0
  72. package/dist/types/core/agent/stages/breakFinal.d.ts.map +1 -0
  73. package/dist/types/core/agent/stages/callLLM.d.ts +54 -0
  74. package/dist/types/core/agent/stages/callLLM.d.ts.map +1 -0
  75. package/dist/types/core/agent/stages/iterationStart.d.ts +16 -0
  76. package/dist/types/core/agent/stages/iterationStart.d.ts.map +1 -0
  77. package/dist/types/core/agent/stages/prepareFinal.d.ts +20 -0
  78. package/dist/types/core/agent/stages/prepareFinal.d.ts.map +1 -0
  79. package/dist/types/core/agent/stages/route.d.ts +19 -0
  80. package/dist/types/core/agent/stages/route.d.ts.map +1 -0
  81. package/dist/types/core/agent/stages/seed.d.ts +54 -0
  82. package/dist/types/core/agent/stages/seed.d.ts.map +1 -0
  83. package/dist/types/core/agent/stages/toolCalls.d.ts +50 -0
  84. package/dist/types/core/agent/stages/toolCalls.d.ts.map +1 -0
  85. package/dist/types/events/dispatcher.d.ts.map +1 -1
  86. package/dist/types/memory/define.types.d.ts +3 -1
  87. package/dist/types/memory/define.types.d.ts.map +1 -1
  88. package/dist/types/reliability/buildReliabilityGateChart.d.ts.map +1 -1
  89. package/dist/types/strategies/attach.d.ts.map +1 -1
  90. package/dist/types/strategies/compose.d.ts.map +1 -1
  91. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Agent.js","sourceRoot":"","sources":["../../../src/core/Agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Agent.js","sourceRoot":"","sources":["../../../src/core/Agent.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,485 @@
1
+ /**
2
+ * AgentBuilder — fluent builder for Agent. Extracted from Agent.ts in
3
+ * v2.11.2 as part of the core/agent decomposition. Same surface, same
4
+ * behavior; just lives in its own file for readability.
5
+ *
6
+ * Re-exported by Agent.ts so external consumers importing
7
+ * `AgentBuilder` from `'../core/Agent.js'` continue to work.
8
+ */
9
+ import { buildDefaultInstruction, } from '../outputSchema.js';
10
+ import { validateCannedAgainstSchema, } from '../outputFallback.js';
11
+ import { defineInstruction } from '../../lib/injection-engine/factories/defineInstruction.js';
12
+ import { defaultCommentaryTemplates } from '../../recorders/observability/commentary/commentaryTemplates.js';
13
+ import { defaultThinkingTemplates } from '../../recorders/observability/thinking/thinkingTemplates.js';
14
+ import { Agent } from '../Agent.js';
15
+ /**
16
+ * Fluent builder. `tool()` accepts any Tool<TArgs, TResult> and registers
17
+ * it by its schema.name. Duplicate names throw at build time.
18
+ */
19
+ export class AgentBuilder {
20
+ opts;
21
+ systemPromptValue = '';
22
+ /**
23
+ * Cache policy for the base system prompt. Set via the optional
24
+ * 2nd argument to `.system(text, { cache })`. Default `'always'` —
25
+ * the base prompt is stable per-turn and an ideal cache anchor.
26
+ */
27
+ systemPromptCachePolicy = 'always';
28
+ /**
29
+ * Global cache kill switch. Set via `Agent.create({ caching: 'off' })`
30
+ * (handled in `AgentOptions` propagation). Defaults to `false`
31
+ * (caching enabled). When `true`, the CacheGate decider routes to
32
+ * `'no-markers'` every iteration regardless of other rules.
33
+ */
34
+ cachingDisabledValue = false;
35
+ /**
36
+ * Optional explicit CacheStrategy override. Default: undefined,
37
+ * which means the agent auto-resolves from
38
+ * `getDefaultCacheStrategy(provider.name)` at construction. Power
39
+ * users override here for custom backends or test mocks.
40
+ */
41
+ cacheStrategyOverride;
42
+ registry = [];
43
+ injectionList = [];
44
+ memoryList = [];
45
+ /**
46
+ * Optional terminal contract — see `outputSchema()`. Stored on the
47
+ * builder, propagated to the Agent at `.build()` time.
48
+ */
49
+ outputSchemaParser;
50
+ /** 3-tier output fallback chain — set via `.outputFallback({...})`.
51
+ * Optional; absent = current throw-on-validation-failure behavior. */
52
+ outputFallbackCfg;
53
+ /**
54
+ * Optional `ToolProvider` set via `.toolProvider()`. Propagated to
55
+ * the Agent's Tools slot subflow + tool-call dispatcher; consulted
56
+ * per iteration so dynamic chains (`gatedTools`, `skillScopedTools`)
57
+ * react to current activation state.
58
+ */
59
+ toolProviderRef;
60
+ /**
61
+ * Optional override for `AgentOptions.maxIterations`. When set via
62
+ * the `.maxIterations()` builder method, takes precedence over the
63
+ * value passed to `Agent.create({ maxIterations })`.
64
+ */
65
+ maxIterationsOverride;
66
+ /**
67
+ * Recorders collected via `.recorder()`. Attached to the built Agent
68
+ * before `build()` returns (each via `agent.attach(rec)`).
69
+ */
70
+ recorderList = [];
71
+ // Voice config — defaults until the consumer calls .appName() /
72
+ // .commentaryTemplates() / .thinkingTemplates(). Stored as plain
73
+ // dicts (Record<string, string>) so the builder doesn't depend on
74
+ // the template-engine modules at compile time; the runtime types
75
+ // come from the agentfootprint barrel exports.
76
+ appNameValue = 'Chatbot';
77
+ commentaryOverrides = {};
78
+ thinkingOverrides = {};
79
+ constructor(opts) {
80
+ this.opts = opts;
81
+ // Cache layer: opts.caching === 'off' propagates to scope's
82
+ // `cachingDisabled` kill switch read by CacheGate. opts.cacheStrategy
83
+ // overrides the registry-resolved default.
84
+ if (opts.caching === 'off')
85
+ this.cachingDisabledValue = true;
86
+ if (opts.cacheStrategy !== undefined)
87
+ this.cacheStrategyOverride = opts.cacheStrategy;
88
+ }
89
+ /**
90
+ * Set the base system prompt.
91
+ *
92
+ * @param prompt - The system prompt text. Stable per-turn.
93
+ * @param options - Optional config. `cache` controls how the
94
+ * CacheDecision subflow treats this prompt block:
95
+ * - `'always'` (default) — cache the base prompt as a stable
96
+ * prefix anchor. Highest cache-hit rate; recommended for
97
+ * production agents whose system prompt rarely changes.
98
+ * - `'never'` — skip caching. Use if the prompt contains volatile
99
+ * content (timestamps, per-request user IDs).
100
+ * - `'while-active'` — semantically equivalent to `'always'` for
101
+ * the base prompt (it's always active by definition).
102
+ * - `{ until }` — conditional invalidation (e.g., flush after iter 5).
103
+ */
104
+ system(prompt, options) {
105
+ this.systemPromptValue = prompt;
106
+ if (options?.cache !== undefined) {
107
+ this.systemPromptCachePolicy = options.cache;
108
+ }
109
+ return this;
110
+ }
111
+ tool(tool) {
112
+ const name = tool.schema.name;
113
+ if (this.registry.some((e) => e.name === name)) {
114
+ throw new Error(`Agent.tool(): duplicate tool name '${name}'`);
115
+ }
116
+ this.registry.push({ name, tool: tool });
117
+ return this;
118
+ }
119
+ /**
120
+ * Register many tools at once. Convenience for tool sources that
121
+ * return a list (e.g., `await mcpClient(...).tools()`). Each tool
122
+ * is registered via `.tool()` so duplicate-name validation still
123
+ * fires per-entry.
124
+ */
125
+ tools(tools) {
126
+ for (const t of tools)
127
+ this.tool(t);
128
+ return this;
129
+ }
130
+ /**
131
+ * Wire a chainable `ToolProvider` (from `agentfootprint/tool-providers`)
132
+ * as the agent's per-iteration tool source.
133
+ *
134
+ * The provider is consulted EVERY iteration via `provider.list(ctx)`
135
+ * with `ctx = { iteration, activeSkillId, identity }`. Tools the
136
+ * provider emits flow into the Tools slot alongside any static
137
+ * tools registered via `.tool()` / `.tools()`. The tool-call
138
+ * dispatcher also consults the provider so dynamic chains
139
+ * (`gatedTools`, `skillScopedTools`) dispatch correctly when their
140
+ * visible-set changes mid-turn.
141
+ *
142
+ * Throws if called more than once on the same builder (avoids
143
+ * silent override surprises).
144
+ *
145
+ * @example Permission-gated baseline
146
+ * import { gatedTools, staticTools } from 'agentfootprint/tool-providers';
147
+ * import { PermissionPolicy } from 'agentfootprint/security';
148
+ *
149
+ * const policy = PermissionPolicy.fromRoles({
150
+ * readonly: ['lookup', 'list_skills', 'read_skill'],
151
+ * admin: ['lookup', 'list_skills', 'read_skill', 'delete'],
152
+ * }, 'readonly');
153
+ *
154
+ * const provider = gatedTools(
155
+ * staticTools(allTools),
156
+ * (toolName) => policy.isAllowed(toolName),
157
+ * );
158
+ *
159
+ * const agent = Agent.create({ provider: llm, model })
160
+ * .system('You answer.')
161
+ * .toolProvider(provider)
162
+ * .build();
163
+ */
164
+ toolProvider(provider) {
165
+ if (this.toolProviderRef) {
166
+ throw new Error('AgentBuilder.toolProvider: already set. Each agent has at most one external ToolProvider.');
167
+ }
168
+ this.toolProviderRef = provider;
169
+ return this;
170
+ }
171
+ /**
172
+ * Override the ReAct iteration cap set via `Agent.create({
173
+ * maxIterations })`. Convenience for builder-style code that prefers
174
+ * fluent setters over constructor opts. Last call wins.
175
+ *
176
+ * Throws if `n` is not a positive integer or exceeds the hard cap
177
+ * (`clampIterations`'s upper bound).
178
+ */
179
+ maxIterations(n) {
180
+ if (!Number.isInteger(n) || n <= 0) {
181
+ throw new Error(`AgentBuilder.maxIterations: expected a positive integer, got ${n}.`);
182
+ }
183
+ this.maxIterationsOverride = n;
184
+ return this;
185
+ }
186
+ /**
187
+ * Attach a footprintjs `CombinedRecorder` to the built Agent. Wired
188
+ * via `agent.attach(rec)` immediately after construction, so the
189
+ * recorder sees every event from the very first run.
190
+ *
191
+ * Equivalent to calling `agent.attach(rec)` post-build; the builder
192
+ * method is a convenience for codebases that prefer fully-fluent
193
+ * agent assembly. Multiple recorders are supported (each gets its
194
+ * own `attach()` call).
195
+ */
196
+ recorder(rec) {
197
+ this.recorderList.push(rec);
198
+ return this;
199
+ }
200
+ /**
201
+ * Set the agent's display name — substituted as `{{appName}}` in
202
+ * commentary + thinking templates. Same place to brand a tenant
203
+ * ("Acme Bot"), distinguish multi-agent roles ("Triage" vs
204
+ * "Reviewer"), or localize ("Asistente"). Default: `'Chatbot'`.
205
+ */
206
+ appName(name) {
207
+ this.appNameValue = name;
208
+ return this;
209
+ }
210
+ /**
211
+ * Override agentfootprint's bundled commentary templates. Spread on
212
+ * top of `defaultCommentaryTemplates`; missing keys fall back. Same
213
+ * `Record<string, string>` shape with `{{vars}}` substitution as
214
+ * the bundled defaults — see `defaultCommentaryTemplates` for the
215
+ * full key list.
216
+ *
217
+ * Use cases: i18n (`'agent.turn_start': 'El usuario...'`), brand
218
+ * voice ("You: {{userPrompt}}"), per-tenant customization.
219
+ */
220
+ commentaryTemplates(templates) {
221
+ this.commentaryOverrides = { ...this.commentaryOverrides, ...templates };
222
+ return this;
223
+ }
224
+ /**
225
+ * Override agentfootprint's bundled thinking templates. Same
226
+ * contract shape as commentary; different vocabulary — first-person
227
+ * status the chat bubble shows mid-call. Per-tool overrides go via
228
+ * `tool.<toolName>` keys (e.g., `'tool.weather': 'Looking up the
229
+ * weather…'`). See `defaultThinkingTemplates` for the full key list.
230
+ */
231
+ thinkingTemplates(templates) {
232
+ this.thinkingOverrides = { ...this.thinkingOverrides, ...templates };
233
+ return this;
234
+ }
235
+ // ─── Injection sugar — context engineering surface ───────────
236
+ //
237
+ // ALL of these push into the same `injectionList`. The Injection
238
+ // primitive is identical across flavors; the methods are just
239
+ // narrative-friendly aliases. Duplicate ids throw at build time.
240
+ /**
241
+ * Register any `Injection`. Use this for power-user / custom flavors;
242
+ * for built-in flavors use the typed sugar (`.skill`, `.steering`,
243
+ * `.instruction`, `.fact`).
244
+ */
245
+ injection(injection) {
246
+ if (this.injectionList.some((i) => i.id === injection.id)) {
247
+ throw new Error(`Agent.injection(): duplicate id '${injection.id}'`);
248
+ }
249
+ this.injectionList.push(injection);
250
+ return this;
251
+ }
252
+ /**
253
+ * Register a Skill — LLM-activated, system-prompt + tools.
254
+ * Auto-attaches the `read_skill` activation tool to the agent.
255
+ * Skill stays active for the rest of the turn once activated.
256
+ */
257
+ skill(injection) {
258
+ return this.injection(injection);
259
+ }
260
+ /**
261
+ * Bulk-register every Skill in a `SkillRegistry`. Use for shared
262
+ * skill catalogs across multiple Agents — register skills once on
263
+ * the registry; attach the same registry to every consumer Agent.
264
+ *
265
+ * @example
266
+ * const registry = new SkillRegistry();
267
+ * registry.register(billingSkill).register(refundSkill);
268
+ * const supportAgent = Agent.create({ provider }).skills(registry).build();
269
+ * const escalationAgent = Agent.create({ provider }).skills(registry).build();
270
+ */
271
+ skills(registry) {
272
+ for (const skill of registry.list())
273
+ this.injection(skill);
274
+ return this;
275
+ }
276
+ /**
277
+ * Register a Steering doc — always-on system-prompt rule.
278
+ * Use for invariant guidance: output format, persona, safety policies.
279
+ */
280
+ steering(injection) {
281
+ return this.injection(injection);
282
+ }
283
+ /**
284
+ * Register an Instruction — rule-based system-prompt guidance.
285
+ * Predicate runs each iteration. Use for context-dependent rules
286
+ * including the "Dynamic ReAct" `on-tool-return` pattern.
287
+ */
288
+ instruction(injection) {
289
+ return this.injection(injection);
290
+ }
291
+ /**
292
+ * Bulk-register many instructions at once. Convenience for consumer
293
+ * code that organizes its instruction set in a flat array (`const
294
+ * instructions = [outputFormat, dataRouting, ...]`). Each element
295
+ * is registered via `.instruction()` so duplicate-id checks still
296
+ * fire per-entry.
297
+ */
298
+ instructions(injections) {
299
+ for (const i of injections)
300
+ this.instruction(i);
301
+ return this;
302
+ }
303
+ /**
304
+ * Register a Fact — developer-supplied data the LLM should see.
305
+ * User profile, env info, computed summary, current time, …
306
+ * Distinct from Skills (LLM-activated guidance) and Steering
307
+ * (always-on rules) in INTENT — the engine treats them all alike.
308
+ */
309
+ fact(injection) {
310
+ return this.injection(injection);
311
+ }
312
+ /**
313
+ * Register a Memory subsystem — load/persist conversation context,
314
+ * facts, narrative beats, or causal snapshots across runs.
315
+ *
316
+ * The `MemoryDefinition` is produced by `defineMemory({ type, strategy,
317
+ * store })`. Multiple memories layer cleanly via per-id scope keys
318
+ * (`memoryInjection_${id}`):
319
+ *
320
+ * ```ts
321
+ * Agent.create({ provider })
322
+ * .memory(defineMemory({ id: 'short', type: MEMORY_TYPES.EPISODIC,
323
+ * strategy: { kind: MEMORY_STRATEGIES.WINDOW, size: 10 },
324
+ * store }))
325
+ * .memory(defineMemory({ id: 'facts', type: MEMORY_TYPES.SEMANTIC,
326
+ * strategy: { kind: MEMORY_STRATEGIES.EXTRACT,
327
+ * extractor: 'pattern' }, store }))
328
+ * .build();
329
+ * ```
330
+ *
331
+ * The READ subflow runs at the configured `timing` (default
332
+ * `MEMORY_TIMING.TURN_START`) and writes its formatted output to the
333
+ * `memoryInjection_${id}` scope key for the slot subflows to consume.
334
+ */
335
+ memory(definition) {
336
+ if (this.memoryList.some((m) => m.id === definition.id)) {
337
+ throw new Error(`Agent.memory(): duplicate id '${definition.id}' — each memory needs a unique id ` +
338
+ 'to keep its scope key (`memoryInjection_${id}`) collision-free.');
339
+ }
340
+ this.memoryList.push(definition);
341
+ return this;
342
+ }
343
+ /**
344
+ * Register a RAG retriever — semantic search over a vector-indexed
345
+ * corpus. Identical plumbing to `.memory()` (RAG resolves to a
346
+ * `MemoryDefinition` produced by `defineRAG()`); this alias exists
347
+ * so the consumer's intent reads clearly:
348
+ *
349
+ * ```ts
350
+ * agent
351
+ * .memory(shortTermConversation) // remembers what the USER said
352
+ * .rag(productDocs) // retrieves what the CORPUS says
353
+ * .build();
354
+ * ```
355
+ *
356
+ * Both end up as memory subflows, but the alias separates "user
357
+ * conversation memory" from "document corpus retrieval" in code
358
+ * intent, ids, and Lens chips.
359
+ */
360
+ rag(definition) {
361
+ return this.memory(definition);
362
+ }
363
+ /**
364
+ * Declarative terminal contract. The agent's final answer must be
365
+ * JSON matching `parser`. Auto-injects a system-prompt instruction
366
+ * telling the LLM the shape, and exposes `agent.runTyped()` /
367
+ * `agent.parseOutput()` for parse + validate at the call site.
368
+ *
369
+ * The `parser` is duck-typed: any object with a `parse(unknown): T`
370
+ * method works (Zod, Valibot, ArkType, hand-written). The optional
371
+ * `description` field on the parser drives the auto-generated
372
+ * instruction; consumers can also override via `opts.instruction`.
373
+ *
374
+ * Throws if called more than once on the same builder (avoids
375
+ * silent override surprises).
376
+ *
377
+ * @param parser Validation strategy that throws on shape failure.
378
+ * @param opts Optional `{ name, instruction }` to customize.
379
+ *
380
+ * @example
381
+ * import { z } from 'zod';
382
+ * const Output = z.object({
383
+ * status: z.enum(['ok', 'err']),
384
+ * items: z.array(z.string()),
385
+ * }).describe('A status enum + an array of strings.');
386
+ *
387
+ * const agent = Agent.create({...})
388
+ * .outputSchema(Output)
389
+ * .build();
390
+ *
391
+ * const typed = await agent.runTyped({ message: '...' });
392
+ * typed.status; // narrowed to 'ok' | 'err'
393
+ */
394
+ outputSchema(parser, opts) {
395
+ if (this.outputSchemaParser) {
396
+ throw new Error('AgentBuilder.outputSchema: already set. Each agent has at most one terminal contract.');
397
+ }
398
+ this.outputSchemaParser = parser;
399
+ const instructionText = opts?.instruction ?? buildDefaultInstruction(parser);
400
+ const id = opts?.name ?? 'output-schema';
401
+ // Always-on system-slot instruction. Activates every iteration so
402
+ // long runs keep the contract present (recency-first redundancy).
403
+ this.injectionList.push(defineInstruction({
404
+ id,
405
+ activeWhen: () => true,
406
+ prompt: instructionText,
407
+ }));
408
+ return this;
409
+ }
410
+ /**
411
+ * 3-tier degradation for output-schema validation failures. Pairs
412
+ * with `.outputSchema()` — calling `.outputFallback()` without an
413
+ * `outputSchema` first throws (the fallback has nothing to validate).
414
+ *
415
+ * Three tiers:
416
+ *
417
+ * 1. **Primary** — LLM emitted schema-valid JSON. Caller gets it.
418
+ * 2. **Fallback** — `OutputSchemaError` thrown. The async
419
+ * `fallback(error, raw)` runs; its return is re-validated.
420
+ * 3. **Canned** — static safety-net value. NEVER throws when set.
421
+ *
422
+ * `canned` is validated against the schema at builder time —
423
+ * fail-fast on misconfig (a `canned` that doesn't validate would
424
+ * defeat the fail-open guarantee).
425
+ *
426
+ * Two typed events fire on tier transitions for observability:
427
+ * - `agentfootprint.resilience.output_fallback_triggered`
428
+ * - `agentfootprint.resilience.output_canned_used`
429
+ *
430
+ * @example
431
+ * ```ts
432
+ * import { z } from 'zod';
433
+ * const Refund = z.object({ amount: z.number(), reason: z.string() });
434
+ *
435
+ * const agent = Agent.create({...})
436
+ * .outputSchema(Refund)
437
+ * .outputFallback({
438
+ * fallback: async (err, raw) => ({ amount: 0, reason: 'manual review' }),
439
+ * canned: { amount: 0, reason: 'unable to process' },
440
+ * })
441
+ * .build();
442
+ * ```
443
+ */
444
+ outputFallback(options) {
445
+ if (!this.outputSchemaParser) {
446
+ throw new Error('AgentBuilder.outputFallback: call .outputSchema(parser) FIRST. ' +
447
+ 'outputFallback supplements outputSchema; one without the other is incoherent.');
448
+ }
449
+ if (this.outputFallbackCfg) {
450
+ throw new Error('AgentBuilder.outputFallback: already set. Each agent has at most one fallback chain.');
451
+ }
452
+ // Build-time validation — canned MUST satisfy the schema.
453
+ if (options.canned !== undefined) {
454
+ validateCannedAgainstSchema(options.canned, this.outputSchemaParser);
455
+ }
456
+ this.outputFallbackCfg = {
457
+ fallback: options.fallback,
458
+ ...(options.canned !== undefined && { canned: options.canned }),
459
+ hasCanned: options.canned !== undefined,
460
+ };
461
+ return this;
462
+ }
463
+ build() {
464
+ // Resolve the voice config: bundled defaults + consumer overrides.
465
+ // Templates flow through the same barrel exports the rest of the
466
+ // library uses, so a future locale-pack swap is a single import.
467
+ const voice = {
468
+ appName: this.appNameValue,
469
+ commentaryTemplates: { ...defaultCommentaryTemplates, ...this.commentaryOverrides },
470
+ thinkingTemplates: { ...defaultThinkingTemplates, ...this.thinkingOverrides },
471
+ };
472
+ const opts = this.maxIterationsOverride !== undefined
473
+ ? { ...this.opts, maxIterations: this.maxIterationsOverride }
474
+ : this.opts;
475
+ const agent = new Agent(opts, this.systemPromptValue, this.registry, voice, this.injectionList, this.memoryList, this.outputSchemaParser, this.toolProviderRef, this.systemPromptCachePolicy, this.cachingDisabledValue, this.cacheStrategyOverride, this.outputFallbackCfg);
476
+ // Attach builder-collected recorders so they receive events from
477
+ // the very first run. Mirrors what consumers would do post-build
478
+ // via `agent.attach(rec)`; the builder method is purely sugar.
479
+ for (const rec of this.recorderList) {
480
+ agent.attach(rec);
481
+ }
482
+ return agent;
483
+ }
484
+ }
485
+ //# sourceMappingURL=AgentBuilder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AgentBuilder.js","sourceRoot":"","sources":["../../../../src/core/agent/AgentBuilder.ts"],"names":[],"mappings":"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"}