@adonis-agora/agent 0.65.1 → 0.66.1

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 (136) hide show
  1. package/CHANGELOG.md +53 -0
  2. package/dist/src/ag-ui/core/encoder.d.ts.map +1 -1
  3. package/dist/src/ag-ui/core/encoder.js +6 -1
  4. package/dist/src/ag-ui/core/encoder.js.map +1 -1
  5. package/dist/src/ag-ui/frames.d.ts.map +1 -1
  6. package/dist/src/ag-ui/frames.js +1 -0
  7. package/dist/src/ag-ui/frames.js.map +1 -1
  8. package/dist/src/agent-loop.d.ts +12 -1
  9. package/dist/src/agent-loop.d.ts.map +1 -1
  10. package/dist/src/agent-loop.js +100 -14
  11. package/dist/src/agent-loop.js.map +1 -1
  12. package/dist/src/agent-service.d.ts +6 -0
  13. package/dist/src/agent-service.d.ts.map +1 -1
  14. package/dist/src/agent-service.js +10 -4
  15. package/dist/src/agent-service.js.map +1 -1
  16. package/dist/src/ai-sdk/ai-sdk-model.js +6 -2
  17. package/dist/src/ai-sdk/ai-sdk-model.js.map +1 -1
  18. package/dist/src/authz/authz-tool-authorizer.d.ts +1 -1
  19. package/dist/src/authz/authz-tool-authorizer.js +1 -1
  20. package/dist/src/channels/handler.d.ts.map +1 -1
  21. package/dist/src/channels/handler.js +6 -0
  22. package/dist/src/channels/handler.js.map +1 -1
  23. package/dist/src/client/chat-client.d.ts.map +1 -1
  24. package/dist/src/client/chat-client.js +5 -1
  25. package/dist/src/client/chat-client.js.map +1 -1
  26. package/dist/src/client/index.d.ts +1 -1
  27. package/dist/src/client/index.d.ts.map +1 -1
  28. package/dist/src/client/index.js +1 -1
  29. package/dist/src/client/index.js.map +1 -1
  30. package/dist/src/client/sse.d.ts +12 -0
  31. package/dist/src/client/sse.d.ts.map +1 -1
  32. package/dist/src/client/sse.js +18 -0
  33. package/dist/src/client/sse.js.map +1 -1
  34. package/dist/src/define_config.d.ts +1 -1
  35. package/dist/src/genui/catalog.d.ts +13 -0
  36. package/dist/src/genui/catalog.d.ts.map +1 -1
  37. package/dist/src/genui/catalog.js +4 -0
  38. package/dist/src/genui/catalog.js.map +1 -1
  39. package/dist/src/genui/index.d.ts +3 -2
  40. package/dist/src/genui/index.d.ts.map +1 -1
  41. package/dist/src/genui/index.js +3 -2
  42. package/dist/src/genui/index.js.map +1 -1
  43. package/dist/src/genui/progressive.d.ts +44 -0
  44. package/dist/src/genui/progressive.d.ts.map +1 -0
  45. package/dist/src/genui/progressive.js +101 -0
  46. package/dist/src/genui/progressive.js.map +1 -0
  47. package/dist/src/genui/public.d.ts +3 -2
  48. package/dist/src/genui/public.d.ts.map +1 -1
  49. package/dist/src/genui/public.js +1 -0
  50. package/dist/src/genui/public.js.map +1 -1
  51. package/dist/src/genui/tools.d.ts +29 -6
  52. package/dist/src/genui/tools.d.ts.map +1 -1
  53. package/dist/src/genui/tools.js +40 -6
  54. package/dist/src/genui/tools.js.map +1 -1
  55. package/dist/src/genui/tree.d.ts +26 -5
  56. package/dist/src/genui/tree.d.ts.map +1 -1
  57. package/dist/src/genui/tree.js +81 -12
  58. package/dist/src/genui/tree.js.map +1 -1
  59. package/dist/src/index.d.ts +2 -1
  60. package/dist/src/index.d.ts.map +1 -1
  61. package/dist/src/index.js +2 -1
  62. package/dist/src/index.js.map +1 -1
  63. package/dist/src/partial-json.d.ts +28 -0
  64. package/dist/src/partial-json.d.ts.map +1 -0
  65. package/dist/src/partial-json.js +231 -0
  66. package/dist/src/partial-json.js.map +1 -0
  67. package/dist/src/react/core/agent-chat-transport.d.ts.map +1 -1
  68. package/dist/src/react/core/agent-chat-transport.js +3 -0
  69. package/dist/src/react/core/agent-chat-transport.js.map +1 -1
  70. package/dist/src/react/core/approvals/use-action-proposals.d.ts +7 -0
  71. package/dist/src/react/core/approvals/use-action-proposals.d.ts.map +1 -1
  72. package/dist/src/react/core/approvals/use-action-proposals.js +54 -8
  73. package/dist/src/react/core/approvals/use-action-proposals.js.map +1 -1
  74. package/dist/src/react/core/genui/generative-ui.d.ts +29 -4
  75. package/dist/src/react/core/genui/generative-ui.d.ts.map +1 -1
  76. package/dist/src/react/core/genui/generative-ui.js +96 -40
  77. package/dist/src/react/core/genui/generative-ui.js.map +1 -1
  78. package/dist/src/react/core/genui/index.d.ts +2 -2
  79. package/dist/src/react/core/genui/index.d.ts.map +1 -1
  80. package/dist/src/react/core/genui/index.js +1 -1
  81. package/dist/src/react/core/genui/index.js.map +1 -1
  82. package/dist/src/react/core/genui/json-render.d.ts.map +1 -1
  83. package/dist/src/react/core/genui/json-render.js +3 -1
  84. package/dist/src/react/core/genui/json-render.js.map +1 -1
  85. package/dist/src/react/core/genui/share-structure.d.ts +13 -0
  86. package/dist/src/react/core/genui/share-structure.d.ts.map +1 -0
  87. package/dist/src/react/core/genui/share-structure.js +49 -0
  88. package/dist/src/react/core/genui/share-structure.js.map +1 -0
  89. package/dist/src/react/core/genui/types.d.ts +33 -0
  90. package/dist/src/react/core/genui/types.d.ts.map +1 -1
  91. package/dist/src/react/core/genui/use-generative-ui.d.ts.map +1 -1
  92. package/dist/src/react/core/genui/use-generative-ui.js +4 -0
  93. package/dist/src/react/core/genui/use-generative-ui.js.map +1 -1
  94. package/dist/src/react/core/transcript/model.d.ts +5 -0
  95. package/dist/src/react/core/transcript/model.d.ts.map +1 -1
  96. package/dist/src/react/core/transcript/model.js +17 -0
  97. package/dist/src/react/core/transcript/model.js.map +1 -1
  98. package/dist/src/react/core/transcript/use-chat-transcript.d.ts.map +1 -1
  99. package/dist/src/react/core/transcript/use-chat-transcript.js +15 -2
  100. package/dist/src/react/core/transcript/use-chat-transcript.js.map +1 -1
  101. package/dist/src/runners/inline-agent-runner.d.ts +9 -0
  102. package/dist/src/runners/inline-agent-runner.d.ts.map +1 -1
  103. package/dist/src/runners/inline-agent-runner.js +28 -4
  104. package/dist/src/runners/inline-agent-runner.js.map +1 -1
  105. package/dist/src/spi/token-stream-sink.d.ts +2 -0
  106. package/dist/src/spi/token-stream-sink.d.ts.map +1 -1
  107. package/dist/src/spi/token-stream-sink.js.map +1 -1
  108. package/dist/src/spi/tool.d.ts +54 -2
  109. package/dist/src/spi/tool.d.ts.map +1 -1
  110. package/dist/src/sse.d.ts.map +1 -1
  111. package/dist/src/sse.js +1 -0
  112. package/dist/src/sse.js.map +1 -1
  113. package/dist/src/stores/factory.d.ts +2 -2
  114. package/dist/src/stores/factory.js +2 -2
  115. package/dist/src/stream-events.d.ts +7 -0
  116. package/dist/src/stream-events.d.ts.map +1 -1
  117. package/dist/src/testing/fake-model-provider.d.ts +9 -1
  118. package/dist/src/testing/fake-model-provider.d.ts.map +1 -1
  119. package/dist/src/testing/fake-model-provider.js +12 -1
  120. package/dist/src/testing/fake-model-provider.js.map +1 -1
  121. package/dist/src/tool-input-preview.d.ts +34 -0
  122. package/dist/src/tool-input-preview.d.ts.map +1 -0
  123. package/dist/src/tool-input-preview.js +137 -0
  124. package/dist/src/tool-input-preview.js.map +1 -0
  125. package/dist/src/tool-registry.d.ts +8 -2
  126. package/dist/src/tool-registry.d.ts.map +1 -1
  127. package/dist/src/tool-registry.js +34 -1
  128. package/dist/src/tool-registry.js.map +1 -1
  129. package/dist/src/turn-frames.d.ts.map +1 -1
  130. package/dist/src/turn-frames.js +5 -0
  131. package/dist/src/turn-frames.js.map +1 -1
  132. package/dist/stubs/config/agent.stub +10 -2
  133. package/package.json +1 -1
  134. package/skills/agent-setup/SKILL.md +10 -0
  135. package/skills/agent-testing/SKILL.md +3 -1
  136. package/skills/agent-tools/SKILL.md +14 -3
@@ -42,6 +42,12 @@ export interface AiToolCtx {
42
42
  uiCapabilities?: UiCapabilities;
43
43
  /** Optional host handle (e.g. an ORM EntityManager) the app threads through options. */
44
44
  host?: unknown;
45
+ /**
46
+ * Aborted when the run this call belongs to is stopped. Pass it to whatever the tool waits on (a
47
+ * `fetch`, a query, a child process) so a Stop does not wait for the tool to finish. Absent where
48
+ * the runner cannot stop a call in flight (the durable runner) and outside a turn.
49
+ */
50
+ abortSignal?: AbortSignal;
45
51
  /** Reports presentation failures separately from successful domain execution. */
46
52
  onPresentationError?(error: unknown, details: PresentationErrorDetails): void | Promise<void>;
47
53
  /**
@@ -107,11 +113,57 @@ export interface ToolHandler<I = unknown, O = unknown> {
107
113
  * the registered spec's `description` / `inputSchema` in the definition the model sees. Omit, or
108
114
  * return `undefined`, to use the registered spec as is.
109
115
  *
110
- * It shapes what the model is SHOWN only: the registry still validates a call against the
116
+ * It shapes what the model is SHOWN: the registry still validates a call against the
111
117
  * registered `inputSchema`, so a tool whose accepted input varies per turn registers a permissive
112
- * schema and validates in `execute`.
118
+ * schema and validates in `execute`. The one exception is `available: false`, which is also asked
119
+ * again on invoke (with the call's actor, thread, agent and `uiCapabilities`): a call to a tool
120
+ * that answers it is refused as an unknown tool, so the model cannot run what it was not offered.
113
121
  */
114
122
  describe?(scope: ToolDescribeScope): ToolDescription | undefined | Promise<ToolDescription | undefined>;
123
+ /**
124
+ * Show something while the model is still WRITING this tool's input: called when a streamed call
125
+ * starts (`tool-input-start`), it answers how to preview the arguments so far — or `undefined` for
126
+ * no preview. The loop parses the streamed argument text as it arrives and pushes what
127
+ * {@link ToolInputPreview.render} answers as a `ui` frame with `partial: true`, throttled, under
128
+ * the id the call's first `ctx.emitUi` push gets (`<toolCallId>:ui:0`) — so that push replaces it
129
+ * in place. A preview the call never replaces (it failed, or degraded to text) is withdrawn.
130
+ *
131
+ * A preview is shown, never trusted: it is not validated, not persisted, not handed to text
132
+ * channels, and nothing about it reaches the model.
133
+ */
134
+ previewInput?(scope: ToolInputPreviewScope): ToolInputPreview | undefined | Promise<ToolInputPreview | undefined>;
135
+ }
136
+ /** Whose call {@link ToolHandler.previewInput} previews. */
137
+ export interface ToolInputPreviewScope extends ToolDescribeScope {
138
+ toolCallId: string;
139
+ }
140
+ /** The arguments of a streamed call so far, read with `parsePartialJson`. */
141
+ export interface PartialToolInput {
142
+ /** What has been parsed so far (open objects and arrays hold what they have). */
143
+ value: unknown;
144
+ /** The model finished the arguments: `value` is the whole input (still unvalidated). */
145
+ done: boolean;
146
+ /** Is this object or array (one of `value`'s) still being written? */
147
+ isOpen(container: object): boolean;
148
+ /** The member of `container` whose value is cut off mid-way (a string half written). */
149
+ pendingMember(container: object): string | number | undefined;
150
+ }
151
+ /** A partial `ui` frame a preview pushes. */
152
+ export interface ToolInputPreviewFrame {
153
+ component: string;
154
+ props: Record<string, unknown>;
155
+ version?: number;
156
+ }
157
+ /** How one streamed call is previewed ({@link ToolHandler.previewInput}). */
158
+ export interface ToolInputPreview {
159
+ /**
160
+ * The frame for the input so far. `undefined`: nothing new to show (what was shown stays).
161
+ * `null`: stop previewing this call, and withdraw what was shown — the final push will not
162
+ * replace it (the input can no longer turn out valid, or will degrade to text).
163
+ */
164
+ render(input: PartialToolInput): ToolInputPreviewFrame | null | undefined;
165
+ /** Least time between two preview frames of one call, in ms. Default 100. */
166
+ throttleMs?: number;
115
167
  }
116
168
  /** Who a turn's tool list is being built for — what {@link ToolHandler.describe} can vary on. */
117
169
  export interface ToolDescribeScope {
@@ -1 +1 @@
1
- {"version":3,"file":"tool.d.ts","sourceRoot":"","sources":["../../../src/spi/tool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool.d.ts","sourceRoot":"","sources":["../../../src/spi/tool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAC7E,OAAO,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5D;;;;GAIG;AACH,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,KAAK,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;;;;;;;;;;;OAeG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,sDAAsD;IACtD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,wFAAwF;IACxF,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;;;OAIG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,iFAAiF;IACjF,mBAAmB,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,wBAAwB,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9F;;;;OAIG;IACH,aAAa,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClE;;;;;OAKG;IACH,MAAM,CACJ,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,OAAO,CAAC,EAAE;QACR,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KAC5C,GACA,OAAO,CAAC;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC5B;AAED;;;;GAIG;AACH,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,OAAO,EAAE,CAAC,GAAG,OAAO;IACnD,OAAO,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAClD,4FAA4F;IAC5F,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,SAAS,GAAG,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAC9F,gHAAgH;IAChH,SAAS,CAAC,CACR,KAAK,EAAE,CAAC,EACR,GAAG,EAAE,SAAS,EACd,OAAO,EAAE,oBAAoB,GAC5B,mBAAmB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5D;;;;;;;;;OASG;IACH,SAAS,CAAC,IAAI,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACzC;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAClD;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,CACP,KAAK,EAAE,iBAAiB,GACvB,eAAe,GAAG,SAAS,GAAG,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC,CAAC;IACtE;;;;;;;;;;OAUG;IACH,YAAY,CAAC,CACX,KAAK,EAAE,qBAAqB,GAC3B,gBAAgB,GAAG,SAAS,GAAG,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAAC;CACzE;AAED,4DAA4D;AAC5D,MAAM,WAAW,qBAAsB,SAAQ,iBAAiB;IAC9D,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,6EAA6E;AAC7E,MAAM,WAAW,gBAAgB;IAC/B,iFAAiF;IACjF,KAAK,EAAE,OAAO,CAAC;IACf,wFAAwF;IACxF,IAAI,EAAE,OAAO,CAAC;IACd,sEAAsE;IACtE,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;IACnC,wFAAwF;IACxF,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;CAC/D;AAED,6CAA6C;AAC7C,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,6EAA6E;AAC7E,MAAM,WAAW,gBAAgB;IAC/B;;;;OAIG;IACH,MAAM,CAAC,KAAK,EAAE,gBAAgB,GAAG,qBAAqB,GAAG,IAAI,GAAG,SAAS,CAAC;IAC1E,6EAA6E;IAC7E,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,iGAAiG;AACjG,MAAM,WAAW,iBAAiB;IAChC,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,KAAK,EAAE,KAAK,CAAC;IACb,6FAA6F;IAC7F,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,8FAA8F;AAC9F,MAAM,WAAW,eAAe;IAC9B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,gBAAgB,CAAC;CAChC;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,SAAS,GAAG,SAAS,CAAC;CAC9B;AAED,MAAM,MAAM,mBAAmB,CAAC,CAAC,GAAG,OAAO,IACvC;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,YAAY,CAAC,EAAE,gBAAgB,CAAA;CAAE,GACpD;IAAE,MAAM,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACpC;IAAE,MAAM,EAAE,WAAW,CAAC;IAAC,MAAM,EAAE,CAAC,CAAA;CAAE,CAAC;AAEvC,2FAA2F;AAC3F,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,6FAA6F;AAC7F,MAAM,MAAM,wBAAwB,GAAG,CACrC,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,wBAAwB,KAC9B,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"sse.d.ts","sourceRoot":"","sources":["../../src/sse.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAO3D;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAOlE;AAMD;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,GAAG,gBAAgB,EAAE,CAiDtF;AAED;;;;;;;;;;GAUG;AACH,qBAAa,eAAe;IAKd,OAAO,CAAC,QAAQ,CAAC,KAAK;IAJlC,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,GAAG,CAAK;IAChB,OAAO,CAAC,MAAM,CAAS;IAEvB,YAA6B,KAAK,SAAI,EAAI;IAE1C,kEAAkE;IAClE,MAAM,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,CAejC;IAED;;;OAGG;IACH,KAAK,IAAI,MAAM,CAEd;CACF"}
1
+ {"version":3,"file":"sse.d.ts","sourceRoot":"","sources":["../../src/sse.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAO3D;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAOlE;AAMD;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,GAAG,gBAAgB,EAAE,CAkDtF;AAED;;;;;;;;;;GAUG;AACH,qBAAa,eAAe;IAKd,OAAO,CAAC,QAAQ,CAAC,KAAK;IAJlC,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,GAAG,CAAK;IAChB,OAAO,CAAC,MAAM,CAAS;IAEvB,YAA6B,KAAK,SAAI,EAAI;IAE1C,kEAAkE;IAClE,MAAM,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,CAejC;IAED;;;OAGG;IACH,KAAK,IAAI,MAAM,CAEd;CACF"}
package/dist/src/sse.js CHANGED
@@ -44,6 +44,7 @@ export function frameToEvents(frame, position) {
44
44
  ? { componentVersions: frame.componentVersions }
45
45
  : {}),
46
46
  ...(frame.toolCallId !== undefined ? { toolCallId: frame.toolCallId } : {}),
47
+ ...(frame.partial === true ? { partial: true } : {}),
47
48
  },
48
49
  ];
49
50
  case 'elicitation':
@@ -1 +1 @@
1
- {"version":3,"file":"sse.js","sourceRoot":"","sources":["../../src/sse.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sse.js","sourceRoot":"","sources":["../../src/sse.ts"],"names":[],"mappings":"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"}
@@ -249,7 +249,7 @@ export interface QdrantRetrieverConfig {
249
249
  *
250
250
  * ```ts
251
251
  * export default defineConfig({
252
- * model: () => aiSdkModel({ model: '...' }),
252
+ * model: () => aiSdkModel(openai('gpt-4o-mini')),
253
253
  * retriever: retrievers.memory({ embedder: myEmbedder, documents: [...] }),
254
254
  * retrievalTopK: 5,
255
255
  * })
@@ -392,7 +392,7 @@ export interface LucidTokenSinkConfig {
392
392
  * import { defineConfig, tokenSinks } from '@adonis-agora/agent'
393
393
  *
394
394
  * export default defineConfig({
395
- * model: () => aiSdkModel({ model: '...' }),
395
+ * model: () => aiSdkModel(openai('gpt-4o-mini')),
396
396
  * sink: tokenSinks.redis({ connection: 'main' }), // multi-replica; any pod serves any run's SSE
397
397
  * })
398
398
  * ```
@@ -139,7 +139,7 @@ export const governanceQueries = {
139
139
  *
140
140
  * ```ts
141
141
  * export default defineConfig({
142
- * model: () => aiSdkModel({ model: '...' }),
142
+ * model: () => aiSdkModel(openai('gpt-4o-mini')),
143
143
  * retriever: retrievers.memory({ embedder: myEmbedder, documents: [...] }),
144
144
  * retrievalTopK: 5,
145
145
  * })
@@ -316,7 +316,7 @@ export const attachmentStores = {
316
316
  * import { defineConfig, tokenSinks } from '@adonis-agora/agent'
317
317
  *
318
318
  * export default defineConfig({
319
- * model: () => aiSdkModel({ model: '...' }),
319
+ * model: () => aiSdkModel(openai('gpt-4o-mini')),
320
320
  * sink: tokenSinks.redis({ connection: 'main' }), // multi-replica; any pod serves any run's SSE
321
321
  * })
322
322
  * ```
@@ -31,6 +31,13 @@ export interface AgentUiComponent {
31
31
  componentVersions?: Record<string, number>;
32
32
  /** The tool call that pushed the component, when one did. */
33
33
  toolCallId?: string;
34
+ /**
35
+ * A PREVIEW, drawn from a tool call's arguments while the model is still writing them (genui
36
+ * `streaming: 'partial'`): unvalidated, never persisted, and replaced in place by the final push
37
+ * under the same `id` — or withdrawn by a partial frame with empty `props`, which a client renders
38
+ * as nothing. A text surface skips it. Absent on every final frame.
39
+ */
40
+ partial?: true;
34
41
  }
35
42
  /** Who has to settle an action tool call, and until when. Metadata: the call still settles by id. */
36
43
  export interface AgentApprovalRequest {
@@ -1 +1 @@
1
- {"version":3,"file":"stream-events.d.ts","sourceRoot":"","sources":["../../src/stream-events.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stream-events.d.ts","sourceRoot":"","sources":["../../src/stream-events.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,9 @@
1
1
  import type { ModelProvider, ModelTurnArgs, ModelTurnResult } from '../index.js';
2
- /** One tool the scripted turn asks for. Its call id is derived from the turn index and the name. */
2
+ /**
3
+ * One tool the scripted turn asks for. Its call id is `call-<turnIndex>-<name>`, suffixed `-2`, `-3`…
4
+ * when this provider already issued that id (another thread's turn, or a second call to the same tool
5
+ * in one turn): tool call ids are the store's primary key across every thread.
6
+ */
3
7
  export interface FakeToolCall {
4
8
  name: string;
5
9
  input: unknown;
@@ -25,7 +29,11 @@ export type FakeScript = (args: ModelTurnArgs, turnIndex: number) => FakeTurn;
25
29
  */
26
30
  export declare class FakeModelProvider implements ModelProvider {
27
31
  private readonly script;
32
+ /** Every call id this instance handed out, so none is issued twice. */
33
+ private readonly issued;
28
34
  constructor(script: FakeScript);
35
+ /** `call-<turnIndex>-<name>` the first time, then the same with the first free `-<n>` suffix. */
36
+ private callId;
29
37
  runTurn(args: ModelTurnArgs): Promise<ModelTurnResult>;
30
38
  }
31
39
  /** A trivial script: stream a fixed reply and never call a tool. */
@@ -1 +1 @@
1
- {"version":3,"file":"fake-model-provider.d.ts","sourceRoot":"","sources":["../../../src/testing/fake-model-provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEjF,oGAAoG;AACpG,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,oEAAoE;IACpE,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,iGAAiG;IACjG,SAAS,CAAC,EAAE,YAAY,EAAE,CAAC;IAC3B,iFAAiF;IACjF,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;GAIG;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,KAAK,QAAQ,CAAC;AAE9E;;;GAGG;AACH,qBAAa,iBAAkB,YAAW,aAAa;IACzC,OAAO,CAAC,QAAQ,CAAC,MAAM;IAAnC,YAA6B,MAAM,EAAE,UAAU,EAAI;IAE7C,OAAO,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,eAAe,CAAC,CAmB3D;CACF;AAED,oEAAoE;AACpE,wBAAgB,UAAU,CAAC,KAAK,SAAO,GAAG,UAAU,CAEnD"}
1
+ {"version":3,"file":"fake-model-provider.d.ts","sourceRoot":"","sources":["../../../src/testing/fake-model-provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEjF;;;;GAIG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,oEAAoE;IACpE,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,iGAAiG;IACjG,SAAS,CAAC,EAAE,YAAY,EAAE,CAAC;IAC3B,iFAAiF;IACjF,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;GAIG;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,KAAK,QAAQ,CAAC;AAE9E;;;GAGG;AACH,qBAAa,iBAAkB,YAAW,aAAa;IAIzC,OAAO,CAAC,QAAQ,CAAC,MAAM;IAHnC,uEAAuE;IACvE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;IAE5C,YAA6B,MAAM,EAAE,UAAU,EAAI;IAEnD,iGAAiG;IACjG,OAAO,CAAC,MAAM;IAQR,OAAO,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,eAAe,CAAC,CAmB3D;CACF;AAED,oEAAoE;AACpE,wBAAgB,UAAU,CAAC,KAAK,SAAO,GAAG,UAAU,CAEnD"}
@@ -4,16 +4,27 @@
4
4
  */
5
5
  export class FakeModelProvider {
6
6
  script;
7
+ /** Every call id this instance handed out, so none is issued twice. */
8
+ issued = new Set();
7
9
  constructor(script) {
8
10
  this.script = script;
9
11
  }
12
+ /** `call-<turnIndex>-<name>` the first time, then the same with the first free `-<n>` suffix. */
13
+ callId(turnIndex, name) {
14
+ const base = `call-${turnIndex}-${name}`;
15
+ let id = base;
16
+ for (let n = 2; this.issued.has(id); n += 1)
17
+ id = `${base}-${n}`;
18
+ this.issued.add(id);
19
+ return id;
20
+ }
10
21
  async runTurn(args) {
11
22
  const turnIndex = args.messages.filter((message) => message.role === 'assistant').length;
12
23
  const turn = this.script(args, turnIndex);
13
24
  await args.sink.write({ t: 'text', v: turn.text });
14
25
  const requested = turn.toolCalls ?? (turn.toolCall ? [turn.toolCall] : []);
15
26
  const toolCalls = requested.map((call) => ({
16
- id: `call-${turnIndex}-${call.name}`,
27
+ id: this.callId(turnIndex, call.name),
17
28
  name: call.name,
18
29
  input: call.input,
19
30
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"fake-model-provider.js","sourceRoot":"","sources":["../../../src/testing/fake-model-provider.ts"],"names":[],"mappings":"AAyBA;;;GAGG;AACH,MAAM,OAAO,iBAAiB;IACC,MAAM;IAAnC,YAA6B,MAAkB;sBAAlB,MAAM;IAAe,CAAC;IAEnD,KAAK,CAAC,OAAO,CAAC,IAAmB;QAC/B,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC,MAAM,CAAC;QACzF,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAE1C,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAEnD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC3E,MAAM,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACzC,EAAE,EAAE,QAAQ,SAAS,IAAI,IAAI,CAAC,IAAI,EAAE;YACpC,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,KAAK,EAAE,IAAI,CAAC,KAAK;SAClB,CAAC,CAAC,CAAC;QAEJ,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,SAAS;YACT,KAAK,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAC5E,GAAG,CAAC,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACjE,CAAC;IACJ,CAAC;CACF;AAED,oEAAoE;AACpE,MAAM,UAAU,UAAU,CAAC,KAAK,GAAG,IAAI;IACrC,OAAO,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;AACjC,CAAC"}
1
+ {"version":3,"file":"fake-model-provider.js","sourceRoot":"","sources":["../../../src/testing/fake-model-provider.ts"],"names":[],"mappings":"AA6BA;;;GAGG;AACH,MAAM,OAAO,iBAAiB;IAIC,MAAM;IAHnC,uEAAuE;IACtD,MAAM,GAAG,IAAI,GAAG,EAAU,CAAC;IAE5C,YAA6B,MAAkB;sBAAlB,MAAM;IAAe,CAAC;IAEnD,iGAAiG;IACzF,MAAM,CAAC,SAAiB,EAAE,IAAY;QAC5C,MAAM,IAAI,GAAG,QAAQ,SAAS,IAAI,IAAI,EAAE,CAAC;QACzC,IAAI,EAAE,GAAG,IAAI,CAAC;QACd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;YAAE,EAAE,GAAG,GAAG,IAAI,IAAI,CAAC,EAAE,CAAC;QACjE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACpB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,IAAmB;QAC/B,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC,MAAM,CAAC;QACzF,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAE1C,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAEnD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC3E,MAAM,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACzC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC;YACrC,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,KAAK,EAAE,IAAI,CAAC,KAAK;SAClB,CAAC,CAAC,CAAC;QAEJ,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,SAAS;YACT,KAAK,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAC5E,GAAG,CAAC,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACjE,CAAC;IACJ,CAAC;CACF;AAED,oEAAoE;AACpE,MAAM,UAAU,UAAU,CAAC,KAAK,GAAG,IAAI;IACrC,OAAO,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;AACjC,CAAC"}
@@ -0,0 +1,34 @@
1
+ import type { SinkWriter, StreamFrame } from './spi/token-stream-sink.js';
2
+ import type { ToolInputPreview } from './spi/tool.js';
3
+ /** Default least time between two preview frames of one call ({@link ToolInputPreview.throttleMs}). */
4
+ export declare const DEFAULT_PREVIEW_THROTTLE_MS = 100;
5
+ /** A preview a model turn showed: what the loop withdraws if the call's own push never replaces it. */
6
+ export interface ShownPreview {
7
+ id: string;
8
+ component: string;
9
+ toolCallId: string;
10
+ }
11
+ /** The id a call's preview is shown under: the one its first `ctx.emitUi` push gets. */
12
+ export declare function previewUiId(toolCallId: string): string;
13
+ /** The frame that withdraws a preview: partial, with nothing to draw. */
14
+ export declare function withdrawPreviewFrame(shown: ShownPreview): StreamFrame;
15
+ export interface ToolInputPreviews {
16
+ /** Hand THIS to the model provider: every frame passes through, previews are added after. */
17
+ writer: SinkWriter;
18
+ /** The previews still standing (shown and not withdrawn), in the order they first appeared. */
19
+ shown(): ShownPreview[];
20
+ }
21
+ /**
22
+ * Wrap the writer a model turn streams into so a tool that previews its input
23
+ * (`ToolHandler.previewInput`) gets `ui` frames drawn from the arguments while the model writes them.
24
+ *
25
+ * Per call: the streamed argument text (`tool-input-delta`) is accumulated, parsed as far as it goes
26
+ * (`parsePartialJson`) and handed to the preview; what it renders is written as a `partial` component
27
+ * frame — at most one every `throttleMs`, and only when it changed, so a long tree costs the stream
28
+ * (and every sink buffering it) a bounded number of snapshots rather than one per delta. Whatever the
29
+ * throttle held back is flushed when the arguments are complete (`tool-input-available`).
30
+ *
31
+ * Previews never fail the turn: a preview that throws is dropped for that call.
32
+ */
33
+ export declare function previewToolInputs(inner: SinkWriter, resolve: (toolName: string, toolCallId: string) => Promise<ToolInputPreview | undefined>, now?: () => number): ToolInputPreviews;
34
+ //# sourceMappingURL=tool-input-preview.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-input-preview.d.ts","sourceRoot":"","sources":["../../src/tool-input-preview.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC1E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEtD,uGAAuG;AACvG,eAAO,MAAM,2BAA2B,MAAM,CAAC;AAE/C,uGAAuG;AACvG,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,wFAAwF;AACxF,wBAAgB,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAEtD;AAED,yEAAyE;AACzE,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,YAAY,GAAG,WAAW,CASrE;AAaD,MAAM,WAAW,iBAAiB;IAChC,6FAA6F;IAC7F,MAAM,EAAE,UAAU,CAAC;IACnB,+FAA+F;IAC/F,KAAK,IAAI,YAAY,EAAE,CAAC;CACzB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,EACxF,GAAG,GAAE,MAAM,MAAiB,GAC3B,iBAAiB,CAiGnB"}
@@ -0,0 +1,137 @@
1
+ import { parsePartialJson } from './partial-json.js';
2
+ /** Default least time between two preview frames of one call ({@link ToolInputPreview.throttleMs}). */
3
+ export const DEFAULT_PREVIEW_THROTTLE_MS = 100;
4
+ /** The id a call's preview is shown under: the one its first `ctx.emitUi` push gets. */
5
+ export function previewUiId(toolCallId) {
6
+ return `${toolCallId}:ui:0`;
7
+ }
8
+ /** The frame that withdraws a preview: partial, with nothing to draw. */
9
+ export function withdrawPreviewFrame(shown) {
10
+ return {
11
+ t: 'component',
12
+ name: shown.component,
13
+ data: {},
14
+ id: shown.id,
15
+ toolCallId: shown.toolCallId,
16
+ partial: true,
17
+ };
18
+ }
19
+ /**
20
+ * Wrap the writer a model turn streams into so a tool that previews its input
21
+ * (`ToolHandler.previewInput`) gets `ui` frames drawn from the arguments while the model writes them.
22
+ *
23
+ * Per call: the streamed argument text (`tool-input-delta`) is accumulated, parsed as far as it goes
24
+ * (`parsePartialJson`) and handed to the preview; what it renders is written as a `partial` component
25
+ * frame — at most one every `throttleMs`, and only when it changed, so a long tree costs the stream
26
+ * (and every sink buffering it) a bounded number of snapshots rather than one per delta. Whatever the
27
+ * throttle held back is flushed when the arguments are complete (`tool-input-available`).
28
+ *
29
+ * Previews never fail the turn: a preview that throws is dropped for that call.
30
+ */
31
+ export function previewToolInputs(inner, resolve, now = Date.now) {
32
+ const calls = new Map();
33
+ const shown = new Map();
34
+ async function emit(id, state, input, done) {
35
+ let rendered;
36
+ try {
37
+ const parsed = done && input !== undefined
38
+ ? { value: input, complete: true, isOpen: () => false, pendingMember: () => undefined }
39
+ : parsePartialJson(state.text);
40
+ if (parsed === undefined)
41
+ return;
42
+ rendered = state.preview.render({
43
+ value: parsed.value,
44
+ done: done || parsed.complete,
45
+ isOpen: parsed.isOpen,
46
+ pendingMember: parsed.pendingMember,
47
+ });
48
+ }
49
+ catch {
50
+ rendered = null;
51
+ }
52
+ if (rendered === undefined)
53
+ return;
54
+ const uiId = previewUiId(id);
55
+ if (rendered === null) {
56
+ state.stopped = true;
57
+ const standing = shown.get(uiId);
58
+ if (standing !== undefined) {
59
+ shown.delete(uiId);
60
+ await inner.write(withdrawPreviewFrame(standing));
61
+ }
62
+ return;
63
+ }
64
+ const props = JSON.stringify(rendered.props);
65
+ if (props === state.lastProps && rendered.component === state.component)
66
+ return;
67
+ state.lastProps = props;
68
+ state.component = rendered.component;
69
+ state.lastAt = now();
70
+ shown.set(uiId, { id: uiId, component: rendered.component, toolCallId: id });
71
+ await inner.write({
72
+ t: 'component',
73
+ name: rendered.component,
74
+ data: JSON.parse(props),
75
+ id: uiId,
76
+ toolCallId: id,
77
+ ...(rendered.version !== undefined ? { version: rendered.version } : {}),
78
+ partial: true,
79
+ });
80
+ }
81
+ return {
82
+ writer: {
83
+ async write(frame) {
84
+ await inner.write(frame);
85
+ if (frame.t !== 'event')
86
+ return;
87
+ const event = frame.event;
88
+ if (event.kind === 'tool-input-start') {
89
+ if (calls.has(event.id))
90
+ return;
91
+ let preview;
92
+ try {
93
+ preview = await resolve(event.name, event.id);
94
+ }
95
+ catch {
96
+ preview = undefined;
97
+ }
98
+ if (preview !== undefined) {
99
+ calls.set(event.id, {
100
+ preview,
101
+ text: '',
102
+ lastAt: undefined,
103
+ lastProps: undefined,
104
+ component: undefined,
105
+ stopped: false,
106
+ });
107
+ }
108
+ return;
109
+ }
110
+ if (event.kind === 'tool-input-delta') {
111
+ const state = calls.get(event.id);
112
+ if (state === undefined || state.stopped)
113
+ return;
114
+ state.text += event.delta;
115
+ const throttle = state.preview.throttleMs ?? DEFAULT_PREVIEW_THROTTLE_MS;
116
+ if (state.lastAt !== undefined && now() - state.lastAt < throttle)
117
+ return;
118
+ await emit(event.id, state, undefined, false);
119
+ return;
120
+ }
121
+ if (event.kind === 'tool-input-available') {
122
+ const state = calls.get(event.id);
123
+ if (state === undefined)
124
+ return;
125
+ calls.delete(event.id);
126
+ if (state.stopped)
127
+ return;
128
+ // The whole input, at once: what the throttle held back, and the closing brackets.
129
+ await emit(event.id, state, event.input, true);
130
+ }
131
+ },
132
+ end: () => inner.end(),
133
+ },
134
+ shown: () => [...shown.values()],
135
+ };
136
+ }
137
+ //# sourceMappingURL=tool-input-preview.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-input-preview.js","sourceRoot":"","sources":["../../src/tool-input-preview.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import type { StandardSchemaV1 } from '@standard-schema/spec';
2
2
  import type { RolesPolicy } from './spi/roles-policy.js';
3
- import type { AiToolCtx, ToolDescribeScope, ToolHandler, ToolPreflightResult } from './spi/tool.js';
3
+ import type { AiToolCtx, ToolDescribeScope, ToolHandler, ToolInputPreview, ToolInputPreviewScope, ToolPreflightResult } from './spi/tool.js';
4
4
  import type { Actor, ToolDefinition, ToolSpec } from './types.js';
5
5
  /** Thrown when an actor invokes a tool their role is not allowed. */
6
6
  export declare class ToolForbiddenError extends Error {
@@ -64,6 +64,11 @@ export declare class ToolRegistry {
64
64
  hasPresentation(name: string): boolean;
65
65
  /** Used by a journaled already-completed preflight; never executes the domain handler. */
66
66
  presentResult(name: string, output: unknown, ctx: AiToolCtx): Promise<void>;
67
+ /**
68
+ * How a streamed call of `name` is previewed while its input arrives (`ToolHandler.previewInput`),
69
+ * or `undefined`. A preview that fails to build is no preview: it never fails the turn.
70
+ */
71
+ previewInput(name: string, scope: ToolInputPreviewScope): Promise<ToolInputPreview | undefined>;
67
72
  spec(name: string): ToolSpec | undefined;
68
73
  allSpecs(): ToolSpec[];
69
74
  /**
@@ -89,7 +94,8 @@ export declare class ToolRegistry {
89
94
  * `canUse` admits the actor (defense-in-depth — a call can reach here from a replayed durable step
90
95
  * or an approval granted before the flag moved, neither of which went through `definitionsFor`
91
96
  * again) and re-parses the input. With `options.allowedTools` (the turn's persona allow-list) a
92
- * tool off that list is refused last, the same way the offer narrowed it.
97
+ * tool off that list is refused last, the same way the offer narrowed it. A tool whose
98
+ * `describe()` answers `available: false` for the call's scope is refused as not registered.
93
99
  */
94
100
  private validated;
95
101
  prepare(name: string, input: unknown, ctx: AiToolCtx, policy: RolesPolicy, options?: PrepareOptions): Promise<ToolPreflightResult>;
@@ -1 +1 @@
1
- {"version":3,"file":"tool-registry.d.ts","sourceRoot":"","sources":["../../src/tool-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-registry.d.ts","sourceRoot":"","sources":["../../src/tool-registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAM9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,KAAK,EACV,SAAS,EACT,iBAAiB,EACjB,WAAW,EACX,gBAAgB,EAChB,qBAAqB,EACrB,mBAAmB,EACpB,MAAM,eAAe,CAAC;AASvB,OAAO,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAElE,qEAAqE;AACrE,qBAAa,kBAAmB,SAAQ,KAAK;aACf,QAAQ,EAAE,MAAM;IAA5C,YAA4B,QAAQ,EAAE,MAAM,EAG3C;CACF;AAED;;;;;;;;GAQG;AACH,qBAAa,iBAAkB,SAAQ,KAAK;aACd,QAAQ,EAAE,MAAM;IAA5C,YAA4B,QAAQ,EAAE,MAAM,EAG3C;CACF;AAED,+DAA+D;AAC/D,qBAAa,iBAAkB,SAAQ,KAAK;aACd,QAAQ,EAAE,MAAM;IAA5C,YAA4B,QAAQ,EAAE,MAAM,EAG3C;CACF;AAED,uEAAuE;AACvE,qBAAa,qBAAsB,SAAQ,KAAK;aAE5B,QAAQ,EAAE,MAAM;aAChB,MAAM,EAAE,SAAS,gBAAgB,CAAC,KAAK,EAAE;IAF3D,YACkB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,SAAS,gBAAgB,CAAC,KAAK,EAAE,EAM1D;CACF;AAED,qBAAa,wBAAyB,SAAQ,KAAK;aAE/B,QAAQ,EAAE,MAAM;aAChB,MAAM,EAAE,MAAM;IAFhC,YACkB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EAI/B;CACF;AAED,mFAAmF;AACnF,qBAAa,mBAAoB,SAAQ,KAAK;aAChB,QAAQ,EAAE,MAAM;IAA5C,YAA4B,QAAQ,EAAE,MAAM,EAG3C;CACF;AAiBD;;;;;;GAMG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA4B;IAEpD,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,GAAG,IAAI,CAEnD;IAED;;;;;;;OAOG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEhC;IAED,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEzB;IAED,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAErC;IAED,0FAA0F;IACpF,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAGhF;IAED;;;OAGG;IACG,YAAY,CAChB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,qBAAqB,GAC3B,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAQvC;IAED,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,CAEvC;IAED,QAAQ,IAAI,QAAQ,EAAE,CAErB;IAED;;;;;;;;;OASG;IACG,cAAc,CAClB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,WAAW,EACnB,YAAY,CAAC,EAAE,MAAM,EAAE,EACvB,KAAK,GAAE,IAAI,CAAC,iBAAiB,EAAE,OAAO,CAAM,GAC3C,OAAO,CAAC,cAAc,EAAE,CAAC,CAiB3B;IAED;;;;OAIG;IACG,YAAY,CAChB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,WAAW,EACnB,YAAY,CAAC,EAAE,MAAM,EAAE,GACtB,OAAO,CAAC,QAAQ,EAAE,CAAC,CAErB;YAEa,cAAc;IAuB5B;;;;;;;OAOG;YACW,SAAS;IA2CjB,OAAO,CACX,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,OAAO,EACd,GAAG,EAAE,SAAS,EACd,MAAM,EAAE,WAAW,EACnB,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,mBAAmB,CAAC,CAE9B;IAED,+FAA+F;IACzF,gBAAgB,CACpB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,OAAO,EACd,GAAG,EAAE,SAAS,EACd,MAAM,EAAE,WAAW,EACnB,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,qBAAqB,CAAC,CAWhC;IAEK,MAAM,CACV,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,OAAO,EACd,GAAG,EAAE,SAAS,EACd,MAAM,EAAE,WAAW,EACnB,OAAO,GAAE,aAAkB,GAC1B,OAAO,CAAC,OAAO,CAAC,CAmBlB;CACF;AAED,0DAA0D;AAC1D,MAAM,WAAW,aAAa;IAC5B;;;OAGG;IACH,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,kGAAkG;IAClG,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,cAAe,SAAQ,aAAa;IACnD,4FAA4F;IAC5F,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,OAAO,CAAC;IACf,SAAS,EAAE,mBAAmB,CAAC;CAChC;AAED;;;;GAIG;AACH,qBAAa,kBAAmB,YAAW,WAAW;IAIlD,OAAO,CAAC,QAAQ,CAAC,YAAY;IAH/B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAa;IAExC,YACmB,YAAY,GAAE,MAAM,EAAO,EAC5C,OAAO,GAAE,kBAAuB,EAGjC;IAED,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,GAAG,OAAO,CAIzC;CACF;AAED;;;GAGG;AACH,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,MAAM,CAAC;AAE1C,MAAM,WAAW,kBAAkB;IACjC,yDAAyD;IACzD,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB;AAED;;;;;GAKG;AACH,qBAAa,iBAAkB,SAAQ,kBAAkB;IACvD,YAAY,YAAY,GAAE,MAAM,EAAO,EAEtC;CACF"}
@@ -114,6 +114,21 @@ export class ToolRegistry {
114
114
  if (entry !== undefined)
115
115
  await presentToolResult(name, entry.handler, output, ctx);
116
116
  }
117
+ /**
118
+ * How a streamed call of `name` is previewed while its input arrives (`ToolHandler.previewInput`),
119
+ * or `undefined`. A preview that fails to build is no preview: it never fails the turn.
120
+ */
121
+ async previewInput(name, scope) {
122
+ const handler = this.entries.get(name)?.handler;
123
+ if (handler?.previewInput === undefined)
124
+ return undefined;
125
+ try {
126
+ return (await handler.previewInput(scope)) ?? undefined;
127
+ }
128
+ catch {
129
+ return undefined;
130
+ }
131
+ }
117
132
  spec(name) {
118
133
  return this.entries.get(name)?.spec;
119
134
  }
@@ -167,7 +182,8 @@ export class ToolRegistry {
167
182
  * `canUse` admits the actor (defense-in-depth — a call can reach here from a replayed durable step
168
183
  * or an approval granted before the flag moved, neither of which went through `definitionsFor`
169
184
  * again) and re-parses the input. With `options.allowedTools` (the turn's persona allow-list) a
170
- * tool off that list is refused last, the same way the offer narrowed it.
185
+ * tool off that list is refused last, the same way the offer narrowed it. A tool whose
186
+ * `describe()` answers `available: false` for the call's scope is refused as not registered.
171
187
  */
172
188
  async validated(name, input, ctx, policy, options = {}) {
173
189
  const entry = this.entries.get(name);
@@ -188,6 +204,14 @@ export class ToolRegistry {
188
204
  if (options.allowedTools !== undefined && !options.allowedTools.includes(name)) {
189
205
  throw new ToolForbiddenError(name);
190
206
  }
207
+ // The offer also drops a tool whose `describe()` answers `available: false` for this scope (a
208
+ // genui tool the renderer cannot draw). A call to it is refused as the unknown tool it was to
209
+ // the model, so naming a tool it was not shown cannot run it.
210
+ if (entry.handler.describe !== undefined) {
211
+ const described = await entry.handler.describe(describeScopeOf(ctx));
212
+ if (described?.available === false)
213
+ throw new ToolNotFoundError(name);
214
+ }
191
215
  const validation = await entry.spec.inputSchema['~standard'].validate(input);
192
216
  if (validation.issues !== undefined) {
193
217
  throw new ToolInputInvalidError(name, validation.issues);
@@ -266,4 +290,13 @@ export class ClosedRolesPolicy extends DefaultRolesPolicy {
266
290
  super(defaultRoles, { emptyRoles: 'deny' });
267
291
  }
268
292
  }
293
+ /** The {@link ToolDescribeScope} a call's context stands for: what the offer was built for. */
294
+ function describeScopeOf(ctx) {
295
+ return {
296
+ actor: ctx.actor,
297
+ ...(ctx.threadId ? { threadId: ctx.threadId } : {}),
298
+ ...(ctx.agentName !== undefined ? { agentName: ctx.agentName } : {}),
299
+ ...(ctx.uiCapabilities !== undefined ? { uiCapabilities: ctx.uiCapabilities } : {}),
300
+ };
301
+ }
269
302
  //# sourceMappingURL=tool-registry.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tool-registry.js","sourceRoot":"","sources":["../../src/tool-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-registry.js","sourceRoot":"","sources":["../../src/tool-registry.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"turn-frames.d.ts","sourceRoot":"","sources":["../../src/turn-frames.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,KAAK,EAAE,UAAU,EAAe,MAAM,4BAA4B,CAAC;AAC1E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAE3D,mGAAmG;AACnG,MAAM,WAAW,gBAAgB;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,kBAAkB;IACjC,6FAA6F;IAC7F,MAAM,EAAE,UAAU,CAAC;IACnB,sFAAsF;IACtF,OAAO,IAAI,gBAAgB,CAAC;CAC7B;AAMD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,UAAU,EAClB,GAAG,GAAE,MAAM,MAAiB,GAC3B,kBAAkB,CAqDpB;AAED,oGAAoG;AACpG,wBAAgB,cAAc,CAAC,CAAC,SAAS,eAAe,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,gBAAgB,GAAG,CAAC,CAWhG"}
1
+ {"version":3,"file":"turn-frames.d.ts","sourceRoot":"","sources":["../../src/turn-frames.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,KAAK,EAAE,UAAU,EAAe,MAAM,4BAA4B,CAAC;AAC1E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAE3D,mGAAmG;AACnG,MAAM,WAAW,gBAAgB;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,kBAAkB;IACjC,6FAA6F;IAC7F,MAAM,EAAE,UAAU,CAAC;IACnB,sFAAsF;IACtF,OAAO,IAAI,gBAAgB,CAAC;CAC7B;AAMD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,UAAU,EAClB,GAAG,GAAE,MAAM,MAAiB,GAC3B,kBAAkB,CA4DpB;AAED,oGAAoG;AACpG,wBAAgB,cAAc,CAAC,CAAC,SAAS,eAAe,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,gBAAgB,GAAG,CAAC,CAWhG"}