@genesislcap/ai-assistant 14.466.1-alpha-73081f7.0 → 14.467.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.
@@ -5475,7 +5475,7 @@
5475
5475
  },
5476
5476
  {
5477
5477
  "kind": "Content",
5478
- "text": "<string, unknown>;\n kind: \"event\";\n })[];\n meta: {\n timestamp: string;\n host: string;\n agentSummary: ({\n toolDefinitions: string | import(\"@genesislcap/foundation-ai\")."
5478
+ "text": "<string, unknown>;\n kind: \"event\";\n })[];\n meta: {\n timestamp: string;\n host: string;\n agentSummary: {\n toolDefinitions: string | import(\"@genesislcap/foundation-ai\")."
5479
5479
  },
5480
5480
  {
5481
5481
  "kind": "Reference",
@@ -5484,16 +5484,25 @@
5484
5484
  },
5485
5485
  {
5486
5486
  "kind": "Content",
5487
- "text": "[];\n toolHandlers: any;\n onActivate: any;\n onDeactivate: any;\n getDebugSnapshot: any;\n description: string;\n fallback?: never;\n excludeFromClassifier?: boolean;\n name: string;\n displayName?: import(\"../config/config\")."
5487
+ "text": "[];\n name: string;\n provider?: import(\"../config/config\")."
5488
5488
  },
5489
5489
  {
5490
5490
  "kind": "Reference",
5491
- "text": "SystemPromptInput",
5492
- "canonicalReference": "@genesislcap/ai-assistant!SystemPromptInput:type"
5491
+ "text": "ProviderInput",
5492
+ "canonicalReference": "@genesislcap/ai-assistant!ProviderInput:type"
5493
5493
  },
5494
5494
  {
5495
5495
  "kind": "Content",
5496
- "text": ";\n systemPrompt?: import(\"../config/config\")."
5496
+ "text": ";\n chatInputDuringExecution?: "
5497
+ },
5498
+ {
5499
+ "kind": "Reference",
5500
+ "text": "ChatInputDuringExecutionMode",
5501
+ "canonicalReference": "@genesislcap/foundation-ai!ChatInputDuringExecutionMode:type"
5502
+ },
5503
+ {
5504
+ "kind": "Content",
5505
+ "text": ";\n description?: string;\n fallback?: true;\n displayName?: import(\"../config/config\")."
5497
5506
  },
5498
5507
  {
5499
5508
  "kind": "Reference",
@@ -5502,12 +5511,12 @@
5502
5511
  },
5503
5512
  {
5504
5513
  "kind": "Content",
5505
- "text": ";\n provider?: import(\"../config/config\")."
5514
+ "text": ";\n systemPrompt?: import(\"../config/config\")."
5506
5515
  },
5507
5516
  {
5508
5517
  "kind": "Reference",
5509
- "text": "ProviderInput",
5510
- "canonicalReference": "@genesislcap/ai-assistant!ProviderInput:type"
5518
+ "text": "SystemPromptInput",
5519
+ "canonicalReference": "@genesislcap/ai-assistant!SystemPromptInput:type"
5511
5520
  },
5512
5521
  {
5513
5522
  "kind": "Content",
@@ -5529,34 +5538,34 @@
5529
5538
  },
5530
5539
  {
5531
5540
  "kind": "Content",
5532
- "text": ";\n primerHistory?: "
5541
+ "text": ";\n onUnresolvedTool?: import(\"../config/config\")."
5533
5542
  },
5534
5543
  {
5535
5544
  "kind": "Reference",
5536
- "text": "ChatMessage",
5537
- "canonicalReference": "@genesislcap/foundation-ai!ChatMessage:interface"
5545
+ "text": "UnresolvedToolInput",
5546
+ "canonicalReference": "@genesislcap/ai-assistant!UnresolvedToolInput:type"
5538
5547
  },
5539
5548
  {
5540
5549
  "kind": "Content",
5541
- "text": "[];\n subAgents?: "
5550
+ "text": ";\n primerHistory?: "
5542
5551
  },
5543
5552
  {
5544
5553
  "kind": "Reference",
5545
- "text": "AgentConfig",
5546
- "canonicalReference": "@genesislcap/ai-assistant!AgentConfig:type"
5554
+ "text": "ChatMessage",
5555
+ "canonicalReference": "@genesislcap/foundation-ai!ChatMessage:interface"
5547
5556
  },
5548
5557
  {
5549
5558
  "kind": "Content",
5550
- "text": "[];\n chatInputDuringExecution?: "
5559
+ "text": "[];\n subAgents?: "
5551
5560
  },
5552
5561
  {
5553
5562
  "kind": "Reference",
5554
- "text": "ChatInputDuringExecutionMode",
5555
- "canonicalReference": "@genesislcap/foundation-ai!ChatInputDuringExecutionMode:type"
5563
+ "text": "AgentConfig",
5564
+ "canonicalReference": "@genesislcap/ai-assistant!AgentConfig:type"
5556
5565
  },
5557
5566
  {
5558
5567
  "kind": "Content",
5559
- "text": ";\n manualSelection?: import(\"../config/config\")."
5568
+ "text": "[];\n manualSelection?: import(\"../config/config\")."
5560
5569
  },
5561
5570
  {
5562
5571
  "kind": "Reference",
@@ -5565,97 +5574,43 @@
5565
5574
  },
5566
5575
  {
5567
5576
  "kind": "Content",
5568
- "text": ";\n } | {\n toolDefinitions: string | import(\"@genesislcap/foundation-ai\")."
5569
- },
5570
- {
5571
- "kind": "Reference",
5572
- "text": "ChatToolDefinition",
5573
- "canonicalReference": "@genesislcap/foundation-ai!ChatToolDefinition:interface"
5574
- },
5575
- {
5576
- "kind": "Content",
5577
- "text": "[];\n toolHandlers: any;\n onActivate: any;\n onDeactivate: any;\n getDebugSnapshot: any;\n fallback: true;\n description?: never;\n name: string;\n displayName?: import(\"../config/config\")."
5578
- },
5579
- {
5580
- "kind": "Reference",
5581
- "text": "SystemPromptInput",
5582
- "canonicalReference": "@genesislcap/ai-assistant!SystemPromptInput:type"
5583
- },
5584
- {
5585
- "kind": "Content",
5586
- "text": ";\n systemPrompt?: import(\"../config/config\")."
5587
- },
5588
- {
5589
- "kind": "Reference",
5590
- "text": "SystemPromptInput",
5591
- "canonicalReference": "@genesislcap/ai-assistant!SystemPromptInput:type"
5592
- },
5593
- {
5594
- "kind": "Content",
5595
- "text": ";\n provider?: import(\"../config/config\")."
5596
- },
5597
- {
5598
- "kind": "Reference",
5599
- "text": "ProviderInput",
5600
- "canonicalReference": "@genesislcap/ai-assistant!ProviderInput:type"
5601
- },
5602
- {
5603
- "kind": "Content",
5604
- "text": ";\n temperature?: import(\"../config/config\")."
5605
- },
5606
- {
5607
- "kind": "Reference",
5608
- "text": "TemperatureInput",
5609
- "canonicalReference": "@genesislcap/ai-assistant!TemperatureInput:type"
5610
- },
5611
- {
5612
- "kind": "Content",
5613
- "text": ";\n toolChoice?: import(\"../config/config\")."
5614
- },
5615
- {
5616
- "kind": "Reference",
5617
- "text": "ToolChoiceInput",
5618
- "canonicalReference": "@genesislcap/ai-assistant!ToolChoiceInput:type"
5619
- },
5620
- {
5621
- "kind": "Content",
5622
- "text": ";\n primerHistory?: "
5577
+ "text": ";\n onActivate?: (ctx: import(\"../config/config\")."
5623
5578
  },
5624
5579
  {
5625
5580
  "kind": "Reference",
5626
- "text": "ChatMessage",
5627
- "canonicalReference": "@genesislcap/foundation-ai!ChatMessage:interface"
5581
+ "text": "AgentLifecycleContext",
5582
+ "canonicalReference": "@genesislcap/ai-assistant!AgentLifecycleContext:interface"
5628
5583
  },
5629
5584
  {
5630
5585
  "kind": "Content",
5631
- "text": "[];\n subAgents?: "
5586
+ "text": ") => void | "
5632
5587
  },
5633
5588
  {
5634
5589
  "kind": "Reference",
5635
- "text": "AgentConfig",
5636
- "canonicalReference": "@genesislcap/ai-assistant!AgentConfig:type"
5590
+ "text": "Promise",
5591
+ "canonicalReference": "!Promise:interface"
5637
5592
  },
5638
5593
  {
5639
5594
  "kind": "Content",
5640
- "text": "[];\n chatInputDuringExecution?: "
5595
+ "text": "<void>;\n onDeactivate?: (ctx: import(\"../config/config\")."
5641
5596
  },
5642
5597
  {
5643
5598
  "kind": "Reference",
5644
- "text": "ChatInputDuringExecutionMode",
5645
- "canonicalReference": "@genesislcap/foundation-ai!ChatInputDuringExecutionMode:type"
5599
+ "text": "AgentLifecycleContext",
5600
+ "canonicalReference": "@genesislcap/ai-assistant!AgentLifecycleContext:interface"
5646
5601
  },
5647
5602
  {
5648
5603
  "kind": "Content",
5649
- "text": ";\n manualSelection?: import(\"../config/config\")."
5604
+ "text": ") => void | "
5650
5605
  },
5651
5606
  {
5652
5607
  "kind": "Reference",
5653
- "text": "ManualSelectionConfig",
5654
- "canonicalReference": "@genesislcap/ai-assistant!ManualSelectionConfig:interface"
5608
+ "text": "Promise",
5609
+ "canonicalReference": "!Promise:interface"
5655
5610
  },
5656
5611
  {
5657
5612
  "kind": "Content",
5658
- "text": ";\n })[];\n activeSystemPrompt: string;\n activePrimerHistory: "
5613
+ "text": "<void>;\n getDebugSnapshot?: () => unknown;\n }[];\n activeSystemPrompt: string;\n activePrimerHistory: "
5659
5614
  },
5660
5615
  {
5661
5616
  "kind": "Reference",
@@ -5674,7 +5629,7 @@
5674
5629
  "isStatic": false,
5675
5630
  "returnTypeTokenRange": {
5676
5631
  "startIndex": 1,
5677
- "endIndex": 64
5632
+ "endIndex": 54
5678
5633
  },
5679
5634
  "releaseTag": "Beta",
5680
5635
  "isProtected": false,
@@ -9630,6 +9585,51 @@
9630
9585
  "endIndex": 2
9631
9586
  }
9632
9587
  },
9588
+ {
9589
+ "kind": "PropertySignature",
9590
+ "canonicalReference": "@genesislcap/ai-assistant!StatefulAgentInit#onUnresolvedTool:member",
9591
+ "docComment": "/**\n * Hook consulted when the model calls a tool that isn't dispatchable in the current state — a *stale* tool (valid in an earlier state of this agent) or an *unknown* one. Receives the current `state` alongside the attempted tool name and the currently dispatchable tools, so a machine-driven agent can return a step-aware redirect (e.g. \"that belongs to a later step — finish this one first\"). Return `undefined` to keep the framework default; a pre-init call also degrades to the default rather than throwing. See {@link UnresolvedToolContext}.\n */\n",
9592
+ "excerptTokens": [
9593
+ {
9594
+ "kind": "Content",
9595
+ "text": "onUnresolvedTool?: "
9596
+ },
9597
+ {
9598
+ "kind": "Content",
9599
+ "text": "(ctx: "
9600
+ },
9601
+ {
9602
+ "kind": "Reference",
9603
+ "text": "UnresolvedToolContext",
9604
+ "canonicalReference": "@genesislcap/ai-assistant!UnresolvedToolContext:interface"
9605
+ },
9606
+ {
9607
+ "kind": "Content",
9608
+ "text": " & {\n state: S;\n }) => string | undefined | "
9609
+ },
9610
+ {
9611
+ "kind": "Reference",
9612
+ "text": "Promise",
9613
+ "canonicalReference": "!Promise:interface"
9614
+ },
9615
+ {
9616
+ "kind": "Content",
9617
+ "text": "<string | undefined>"
9618
+ },
9619
+ {
9620
+ "kind": "Content",
9621
+ "text": ";"
9622
+ }
9623
+ ],
9624
+ "isReadonly": false,
9625
+ "isOptional": true,
9626
+ "releaseTag": "Beta",
9627
+ "name": "onUnresolvedTool",
9628
+ "propertyTypeTokenRange": {
9629
+ "startIndex": 1,
9630
+ "endIndex": 6
9631
+ }
9632
+ },
9633
9633
  {
9634
9634
  "kind": "PropertySignature",
9635
9635
  "canonicalReference": "@genesislcap/ai-assistant!StatefulAgentInit#primerHistory:member",
@@ -10974,6 +10974,149 @@
10974
10974
  ],
10975
10975
  "extendsTokenRanges": []
10976
10976
  },
10977
+ {
10978
+ "kind": "Interface",
10979
+ "canonicalReference": "@genesislcap/ai-assistant!UnresolvedToolContext:interface",
10980
+ "docComment": "/**\n * Context passed to an agent's `onUnresolvedTool` hook when the model calls a tool the driver cannot dispatch.\n *\n * @beta\n */\n",
10981
+ "excerptTokens": [
10982
+ {
10983
+ "kind": "Content",
10984
+ "text": "export interface UnresolvedToolContext "
10985
+ }
10986
+ ],
10987
+ "fileUrlPath": "src/config/config.ts",
10988
+ "releaseTag": "Beta",
10989
+ "name": "UnresolvedToolContext",
10990
+ "preserveMemberOrder": false,
10991
+ "members": [
10992
+ {
10993
+ "kind": "PropertySignature",
10994
+ "canonicalReference": "@genesislcap/ai-assistant!UnresolvedToolContext#availableTools:member",
10995
+ "docComment": "/**\n * The tool names dispatchable right now, so the hook can steer the model back to a valid call.\n */\n",
10996
+ "excerptTokens": [
10997
+ {
10998
+ "kind": "Content",
10999
+ "text": "availableTools: "
11000
+ },
11001
+ {
11002
+ "kind": "Content",
11003
+ "text": "string[]"
11004
+ },
11005
+ {
11006
+ "kind": "Content",
11007
+ "text": ";"
11008
+ }
11009
+ ],
11010
+ "isReadonly": false,
11011
+ "isOptional": false,
11012
+ "releaseTag": "Beta",
11013
+ "name": "availableTools",
11014
+ "propertyTypeTokenRange": {
11015
+ "startIndex": 1,
11016
+ "endIndex": 2
11017
+ }
11018
+ },
11019
+ {
11020
+ "kind": "PropertySignature",
11021
+ "canonicalReference": "@genesislcap/ai-assistant!UnresolvedToolContext#kind:member",
11022
+ "docComment": "/**\n * Why the call could not be dispatched: - `'stale'` — the tool was advertised earlier this activation but is not part of the current step (e.g. a stateful agent has moved on). - `'unknown'` — the tool was never advertised this activation (a hallucinated name).\n */\n",
11023
+ "excerptTokens": [
11024
+ {
11025
+ "kind": "Content",
11026
+ "text": "kind: "
11027
+ },
11028
+ {
11029
+ "kind": "Content",
11030
+ "text": "'stale' | 'unknown'"
11031
+ },
11032
+ {
11033
+ "kind": "Content",
11034
+ "text": ";"
11035
+ }
11036
+ ],
11037
+ "isReadonly": false,
11038
+ "isOptional": false,
11039
+ "releaseTag": "Beta",
11040
+ "name": "kind",
11041
+ "propertyTypeTokenRange": {
11042
+ "startIndex": 1,
11043
+ "endIndex": 2
11044
+ }
11045
+ },
11046
+ {
11047
+ "kind": "PropertySignature",
11048
+ "canonicalReference": "@genesislcap/ai-assistant!UnresolvedToolContext#toolName:member",
11049
+ "docComment": "/**\n * The tool name the model attempted to call.\n */\n",
11050
+ "excerptTokens": [
11051
+ {
11052
+ "kind": "Content",
11053
+ "text": "toolName: "
11054
+ },
11055
+ {
11056
+ "kind": "Content",
11057
+ "text": "string"
11058
+ },
11059
+ {
11060
+ "kind": "Content",
11061
+ "text": ";"
11062
+ }
11063
+ ],
11064
+ "isReadonly": false,
11065
+ "isOptional": false,
11066
+ "releaseTag": "Beta",
11067
+ "name": "toolName",
11068
+ "propertyTypeTokenRange": {
11069
+ "startIndex": 1,
11070
+ "endIndex": 2
11071
+ }
11072
+ }
11073
+ ],
11074
+ "extendsTokenRanges": []
11075
+ },
11076
+ {
11077
+ "kind": "TypeAlias",
11078
+ "canonicalReference": "@genesislcap/ai-assistant!UnresolvedToolInput:type",
11079
+ "docComment": "/**\n * Optional per-agent hook consulted only on the already-failing unresolved-tool path — when the model calls a tool the driver cannot dispatch. Lets the agent replace the framework's default message with a context-aware redirect.\n *\n * Return a non-empty string to override the default tool-result message; return `undefined` (or an empty/whitespace string, or throw) to fall back to the framework default. The happy path is never affected. See {@link UnresolvedToolContext}.\n *\n * @beta\n */\n",
11080
+ "excerptTokens": [
11081
+ {
11082
+ "kind": "Content",
11083
+ "text": "export type UnresolvedToolInput = "
11084
+ },
11085
+ {
11086
+ "kind": "Content",
11087
+ "text": "(ctx: "
11088
+ },
11089
+ {
11090
+ "kind": "Reference",
11091
+ "text": "UnresolvedToolContext",
11092
+ "canonicalReference": "@genesislcap/ai-assistant!UnresolvedToolContext:interface"
11093
+ },
11094
+ {
11095
+ "kind": "Content",
11096
+ "text": ") => string | undefined | "
11097
+ },
11098
+ {
11099
+ "kind": "Reference",
11100
+ "text": "Promise",
11101
+ "canonicalReference": "!Promise:interface"
11102
+ },
11103
+ {
11104
+ "kind": "Content",
11105
+ "text": "<string | undefined>"
11106
+ },
11107
+ {
11108
+ "kind": "Content",
11109
+ "text": ";"
11110
+ }
11111
+ ],
11112
+ "fileUrlPath": "src/config/config.ts",
11113
+ "releaseTag": "Beta",
11114
+ "name": "UnresolvedToolInput",
11115
+ "typeTokenRange": {
11116
+ "startIndex": 1,
11117
+ "endIndex": 6
11118
+ }
11119
+ },
10977
11120
  {
10978
11121
  "kind": "Variable",
10979
11122
  "canonicalReference": "@genesislcap/ai-assistant!userIconSvg:var",
@@ -578,6 +578,18 @@ declare interface BaseAgentConfig {
578
578
  * @beta
579
579
  */
580
580
  toolChoice?: ToolChoiceInput;
581
+ /**
582
+ * Optional hook consulted when the model calls a tool the driver cannot
583
+ * dispatch — either a *stale* tool (advertised earlier this activation but
584
+ * not part of the current step) or an *unknown* one (never advertised this
585
+ * activation). Return a context-aware redirect string to replace the
586
+ * framework's default message, or `undefined` to keep it. Consulted only on
587
+ * the already-failing unresolved-tool path; the happy path is unaffected.
588
+ * See {@link UnresolvedToolInput}.
589
+ *
590
+ * @beta
591
+ */
592
+ onUnresolvedTool?: UnresolvedToolInput;
581
593
  /**
582
594
  * Optional primer history prepended to every call (not visible to the user).
583
595
  * Used to establish agent identity and behavioural rules.
@@ -813,6 +825,13 @@ export declare class ChatDriver extends EventTarget implements AiDriver {
813
825
  * call; top-level turns are `'auto'`).
814
826
  */
815
827
  private activeToolChoiceInput?;
828
+ /**
829
+ * Active agent's unresolved-tool hook, captured from `applyAgent`. Consulted
830
+ * only when a tool call cannot be dispatched (a stale or hallucinated name);
831
+ * `undefined` keeps the framework's default messages. See
832
+ * `resolveUnresolvedToolContent`.
833
+ */
834
+ private activeOnUnresolvedTool?;
816
835
  /**
817
836
  * Caches validated provider lookups per name within the current agent. Cleared
818
837
  * by `applyAgent` so each new agent's static/function-resolved names are
@@ -888,6 +907,15 @@ export declare class ChatDriver extends EventTarget implements AiDriver {
888
907
  * each specialist turn so the shared driver runs with the right tools and prompt.
889
908
  */
890
909
  applyAgent(config: AgentConfig): void;
910
+ /**
911
+ * Resolve the tool-result content for an unresolved tool call. Consults the
912
+ * active agent's `onUnresolvedTool` hook (if any) with the attempted tool
913
+ * name, the failure `kind`, and the currently dispatchable tools, and returns
914
+ * the hook's non-empty string. Falls back to `fallback` when no hook is set,
915
+ * the hook returns nothing/empty, or the hook throws — so a misbehaving hook
916
+ * can never break tool dispatch.
917
+ */
918
+ private resolveUnresolvedToolContent;
891
919
  /**
892
920
  * Returns the most recently resolved provider name. Falls back to the
893
921
  * registry's default when no per-turn resolution has happened yet.
@@ -1693,44 +1721,25 @@ export declare class FoundationAiAssistant extends GenesisElement {
1693
1721
  meta: {
1694
1722
  timestamp: string;
1695
1723
  host: string;
1696
- agentSummary: ({
1724
+ agentSummary: {
1697
1725
  toolDefinitions: string | ChatToolDefinition[];
1698
- toolHandlers: any;
1699
- onActivate: any;
1700
- onDeactivate: any;
1701
- getDebugSnapshot: any;
1702
- description: string;
1703
- fallback?: never;
1704
- excludeFromClassifier?: boolean;
1705
1726
  name: string;
1706
- displayName?: SystemPromptInput;
1707
- systemPrompt?: SystemPromptInput;
1708
1727
  provider?: ProviderInput;
1709
- temperature?: TemperatureInput;
1710
- toolChoice?: ToolChoiceInput;
1711
- primerHistory?: ChatMessage[];
1712
- subAgents?: AgentConfig[];
1713
1728
  chatInputDuringExecution?: ChatInputDuringExecutionMode;
1714
- manualSelection?: ManualSelectionConfig;
1715
- } | {
1716
- toolDefinitions: string | ChatToolDefinition[];
1717
- toolHandlers: any;
1718
- onActivate: any;
1719
- onDeactivate: any;
1720
- getDebugSnapshot: any;
1721
- fallback: true;
1722
- description?: never;
1723
- name: string;
1729
+ description?: string;
1730
+ fallback?: true;
1724
1731
  displayName?: SystemPromptInput;
1725
1732
  systemPrompt?: SystemPromptInput;
1726
- provider?: ProviderInput;
1727
1733
  temperature?: TemperatureInput;
1728
1734
  toolChoice?: ToolChoiceInput;
1735
+ onUnresolvedTool?: UnresolvedToolInput;
1729
1736
  primerHistory?: ChatMessage[];
1730
1737
  subAgents?: AgentConfig[];
1731
- chatInputDuringExecution?: ChatInputDuringExecutionMode;
1732
1738
  manualSelection?: ManualSelectionConfig;
1733
- })[];
1739
+ onActivate?: (ctx: AgentLifecycleContext) => void | Promise<void>;
1740
+ onDeactivate?: (ctx: AgentLifecycleContext) => void | Promise<void>;
1741
+ getDebugSnapshot?: () => unknown;
1742
+ }[];
1734
1743
  activeSystemPrompt: string;
1735
1744
  activePrimerHistory: ChatMessage[];
1736
1745
  activeFoldStack: string[];
@@ -2260,6 +2269,19 @@ export declare interface StatefulAgentInit<S> {
2260
2269
  * for the default.
2261
2270
  */
2262
2271
  toolChoice?: ChatToolChoice | ((ctx: StatefulAgentContext<S>) => ChatToolChoice | Promise<ChatToolChoice>);
2272
+ /**
2273
+ * Hook consulted when the model calls a tool that isn't dispatchable in the
2274
+ * current state — a *stale* tool (valid in an earlier state of this agent) or
2275
+ * an *unknown* one. Receives the current `state` alongside the attempted tool
2276
+ * name and the currently dispatchable tools, so a machine-driven agent can
2277
+ * return a step-aware redirect (e.g. "that belongs to a later step — finish
2278
+ * this one first"). Return `undefined` to keep the framework default; a
2279
+ * pre-init call also degrades to the default rather than throwing.
2280
+ * See {@link UnresolvedToolContext}.
2281
+ */
2282
+ onUnresolvedTool?: (ctx: UnresolvedToolContext & {
2283
+ state: S;
2284
+ }) => string | undefined | Promise<string | undefined>;
2263
2285
  /**
2264
2286
  * Optional getter for the debug-log snapshot. Defaults to auto-snapshotting
2265
2287
  * any property on `state` that looks like a foundation-state-machine
@@ -2497,6 +2519,44 @@ export declare interface TurnSnapshot {
2497
2519
  agentSnapshot?: unknown;
2498
2520
  }
2499
2521
 
2522
+ /**
2523
+ * Context passed to an agent's `onUnresolvedTool` hook when the model calls a
2524
+ * tool the driver cannot dispatch.
2525
+ *
2526
+ * @beta
2527
+ */
2528
+ export declare interface UnresolvedToolContext {
2529
+ /** The tool name the model attempted to call. */
2530
+ toolName: string;
2531
+ /**
2532
+ * Why the call could not be dispatched:
2533
+ * - `'stale'` — the tool was advertised earlier this activation but is not
2534
+ * part of the current step (e.g. a stateful agent has moved on).
2535
+ * - `'unknown'` — the tool was never advertised this activation (a
2536
+ * hallucinated name).
2537
+ */
2538
+ kind: 'stale' | 'unknown';
2539
+ /**
2540
+ * The tool names dispatchable right now, so the hook can steer the model
2541
+ * back to a valid call.
2542
+ */
2543
+ availableTools: string[];
2544
+ }
2545
+
2546
+ /**
2547
+ * Optional per-agent hook consulted only on the already-failing unresolved-tool
2548
+ * path — when the model calls a tool the driver cannot dispatch. Lets the agent
2549
+ * replace the framework's default message with a context-aware redirect.
2550
+ *
2551
+ * Return a non-empty string to override the default tool-result message; return
2552
+ * `undefined` (or an empty/whitespace string, or throw) to fall back to the
2553
+ * framework default. The happy path is never affected. See
2554
+ * {@link UnresolvedToolContext}.
2555
+ *
2556
+ * @beta
2557
+ */
2558
+ export declare type UnresolvedToolInput = (ctx: UnresolvedToolContext) => string | undefined | Promise<string | undefined>;
2559
+
2500
2560
  /** Person silhouette — default user avatar. */
2501
2561
  export declare const userIconSvg = "<svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z\" fill=\"currentColor\"/></svg>";
2502
2562
 
@@ -237,6 +237,13 @@ export declare class ChatDriver extends EventTarget implements AiDriver {
237
237
  * call; top-level turns are `'auto'`).
238
238
  */
239
239
  private activeToolChoiceInput?;
240
+ /**
241
+ * Active agent's unresolved-tool hook, captured from `applyAgent`. Consulted
242
+ * only when a tool call cannot be dispatched (a stale or hallucinated name);
243
+ * `undefined` keeps the framework's default messages. See
244
+ * `resolveUnresolvedToolContent`.
245
+ */
246
+ private activeOnUnresolvedTool?;
240
247
  /**
241
248
  * Caches validated provider lookups per name within the current agent. Cleared
242
249
  * by `applyAgent` so each new agent's static/function-resolved names are
@@ -312,6 +319,15 @@ export declare class ChatDriver extends EventTarget implements AiDriver {
312
319
  * each specialist turn so the shared driver runs with the right tools and prompt.
313
320
  */
314
321
  applyAgent(config: AgentConfig): void;
322
+ /**
323
+ * Resolve the tool-result content for an unresolved tool call. Consults the
324
+ * active agent's `onUnresolvedTool` hook (if any) with the attempted tool
325
+ * name, the failure `kind`, and the currently dispatchable tools, and returns
326
+ * the hook's non-empty string. Falls back to `fallback` when no hook is set,
327
+ * the hook returns nothing/empty, or the hook throws — so a misbehaving hook
328
+ * can never break tool dispatch.
329
+ */
330
+ private resolveUnresolvedToolContent;
315
331
  /**
316
332
  * Returns the most recently resolved provider name. Falls back to the
317
333
  * registry's default when no per-turn resolution has happened yet.
@@ -1 +1 @@
1
- {"version":3,"file":"chat-driver.d.ts","sourceRoot":"","sources":["../../../../src/components/chat-driver/chat-driver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat-driver.d.ts","sourceRoot":"","sources":["../../../../src/components/chat-driver/chat-driver.ts"],"names":[],"mappings":"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"}