@namzu/sdk 31.1.0 → 32.0.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.
- package/CHANGELOG.md +61 -0
- package/dist/agents/ReactiveAgent.d.ts.map +1 -1
- package/dist/agents/ReactiveAgent.js +4 -0
- package/dist/agents/ReactiveAgent.js.map +1 -1
- package/dist/agents/SupervisorAgent.d.ts.map +1 -1
- package/dist/agents/SupervisorAgent.js +4 -0
- package/dist/agents/SupervisorAgent.js.map +1 -1
- package/dist/agents/runAgent.d.ts +4 -0
- package/dist/agents/runAgent.d.ts.map +1 -1
- package/dist/agents/runAgent.js +4 -0
- package/dist/agents/runAgent.js.map +1 -1
- package/dist/directory/derive-supervisor.d.ts.map +1 -1
- package/dist/directory/derive-supervisor.js +5 -0
- package/dist/directory/derive-supervisor.js.map +1 -1
- package/dist/directory/derive.d.ts.map +1 -1
- package/dist/directory/derive.js +5 -0
- package/dist/directory/derive.js.map +1 -1
- package/dist/directory/load.d.ts.map +1 -1
- package/dist/directory/load.js +1 -0
- package/dist/directory/load.js.map +1 -1
- package/dist/directory/types.d.ts +2 -0
- package/dist/directory/types.d.ts.map +1 -1
- package/dist/execution/code-runtime/types.d.ts +11 -1
- package/dist/execution/code-runtime/types.d.ts.map +1 -1
- package/dist/execution/code-runtime/types.js.map +1 -1
- package/dist/execution/code-runtime/worker.d.ts.map +1 -1
- package/dist/execution/code-runtime/worker.js +67 -9
- package/dist/execution/code-runtime/worker.js.map +1 -1
- package/dist/manager/agent/lifecycle.d.ts.map +1 -1
- package/dist/manager/agent/lifecycle.js +1 -0
- package/dist/manager/agent/lifecycle.js.map +1 -1
- package/dist/provider/errors.d.ts +1 -0
- package/dist/provider/errors.d.ts.map +1 -1
- package/dist/provider/errors.js +39 -1
- package/dist/provider/errors.js.map +1 -1
- package/dist/public-runtime.d.ts +5 -3
- package/dist/public-runtime.d.ts.map +1 -1
- package/dist/public-runtime.js +7 -2
- package/dist/public-runtime.js.map +1 -1
- package/dist/public-types.d.ts +2 -1
- package/dist/public-types.d.ts.map +1 -1
- package/dist/run/reporter.d.ts.map +1 -1
- package/dist/run/reporter.js +6 -1
- package/dist/run/reporter.js.map +1 -1
- package/dist/runtime/query/executor.d.ts.map +1 -1
- package/dist/runtime/query/executor.js +214 -29
- package/dist/runtime/query/executor.js.map +1 -1
- package/dist/runtime/query/index.d.ts +5 -0
- package/dist/runtime/query/index.d.ts.map +1 -1
- package/dist/runtime/query/index.js +1 -0
- package/dist/runtime/query/index.js.map +1 -1
- package/dist/runtime/query/iteration/index.d.ts +1 -0
- package/dist/runtime/query/iteration/index.d.ts.map +1 -1
- package/dist/runtime/query/iteration/index.js +34 -14
- package/dist/runtime/query/iteration/index.js.map +1 -1
- package/dist/runtime/query/iteration/phases/advisory.js +2 -2
- package/dist/runtime/query/iteration/phases/advisory.js.map +1 -1
- package/dist/runtime/query/iteration/provider-rejected-image.d.ts +13 -0
- package/dist/runtime/query/iteration/provider-rejected-image.d.ts.map +1 -0
- package/dist/runtime/query/iteration/provider-rejected-image.js +91 -0
- package/dist/runtime/query/iteration/provider-rejected-image.js.map +1 -0
- package/dist/runtime/query/iteration/stream-turn.d.ts +4 -1
- package/dist/runtime/query/iteration/stream-turn.d.ts.map +1 -1
- package/dist/runtime/query/iteration/stream-turn.js +7 -3
- package/dist/runtime/query/iteration/stream-turn.js.map +1 -1
- package/dist/runtime/query/request-rich-content.d.ts +13 -0
- package/dist/runtime/query/request-rich-content.d.ts.map +1 -1
- package/dist/runtime/query/request-rich-content.js +153 -17
- package/dist/runtime/query/request-rich-content.js.map +1 -1
- package/dist/runtime/query/result.d.ts.map +1 -1
- package/dist/runtime/query/result.js +1 -0
- package/dist/runtime/query/result.js.map +1 -1
- package/dist/store/attachment/index.d.ts +24 -2
- package/dist/store/attachment/index.d.ts.map +1 -1
- package/dist/store/attachment/index.js +52 -5
- package/dist/store/attachment/index.js.map +1 -1
- package/dist/tools/builtins/lsp.d.ts +1 -1
- package/dist/tools/builtins/run-code.d.ts.map +1 -1
- package/dist/tools/builtins/run-code.js +15 -5
- package/dist/tools/builtins/run-code.js.map +1 -1
- package/dist/types/agent/base.d.ts +4 -0
- package/dist/types/agent/base.d.ts.map +1 -1
- package/dist/types/agent/factory.d.ts +1 -0
- package/dist/types/agent/factory.d.ts.map +1 -1
- package/dist/types/message/index.d.ts +31 -1
- package/dist/types/message/index.d.ts.map +1 -1
- package/dist/types/message/index.js +42 -0
- package/dist/types/message/index.js.map +1 -1
- package/dist/types/provider/error.d.ts +4 -1
- package/dist/types/provider/error.d.ts.map +1 -1
- package/dist/types/run/events.d.ts +10 -2
- package/dist/types/run/events.d.ts.map +1 -1
- package/dist/types/run/events.js.map +1 -1
- package/dist/types/tool/index.d.ts +52 -6
- package/dist/types/tool/index.d.ts.map +1 -1
- package/dist/types/tool/index.js.map +1 -1
- package/package.json +1 -1
- package/src/agents/ReactiveAgent.ts +4 -0
- package/src/agents/SupervisorAgent.ts +4 -0
- package/src/agents/runAgent.ts +8 -0
- package/src/directory/derive-supervisor.ts +5 -0
- package/src/directory/derive.ts +5 -0
- package/src/directory/load.ts +1 -0
- package/src/directory/types.ts +2 -0
- package/src/execution/code-runtime/types.ts +15 -1
- package/src/execution/code-runtime/worker.ts +72 -9
- package/src/manager/agent/lifecycle.ts +1 -0
- package/src/provider/errors.ts +40 -1
- package/src/public-runtime.ts +16 -1
- package/src/public-types.ts +11 -0
- package/src/run/reporter.ts +7 -1
- package/src/runtime/query/executor.ts +235 -26
- package/src/runtime/query/index.ts +6 -0
- package/src/runtime/query/iteration/index.ts +69 -29
- package/src/runtime/query/iteration/phases/advisory.ts +2 -2
- package/src/runtime/query/iteration/provider-rejected-image.ts +106 -0
- package/src/runtime/query/iteration/stream-turn.ts +12 -2
- package/src/runtime/query/request-rich-content.ts +188 -15
- package/src/runtime/query/result.ts +1 -0
- package/src/store/attachment/index.ts +100 -15
- package/src/tools/builtins/run-code.ts +15 -5
- package/src/types/agent/base.ts +4 -0
- package/src/types/agent/factory.ts +1 -0
- package/src/types/message/index.ts +77 -1
- package/src/types/provider/error.ts +4 -1
- package/src/types/run/events.ts +18 -4
- package/src/types/tool/index.ts +74 -9
|
@@ -4,6 +4,21 @@ export type MessageRole = 'system' | 'user' | 'assistant' | 'tool'
|
|
|
4
4
|
|
|
5
5
|
export type CacheHint = 'cache' | 'ephemeral' | 'none'
|
|
6
6
|
|
|
7
|
+
/** Why durable rich content must not be sent to a model again. */
|
|
8
|
+
export interface ModelContentOmission {
|
|
9
|
+
readonly reason: 'provider-rejected'
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
/** Runtime validation for persisted model-delivery metadata. */
|
|
13
|
+
export function isModelContentOmission(value: unknown): value is ModelContentOmission {
|
|
14
|
+
return (
|
|
15
|
+
typeof value === 'object' &&
|
|
16
|
+
value !== null &&
|
|
17
|
+
!Array.isArray(value) &&
|
|
18
|
+
(value as { readonly reason?: unknown }).reason === 'provider-rejected'
|
|
19
|
+
)
|
|
20
|
+
}
|
|
21
|
+
|
|
7
22
|
/**
|
|
8
23
|
* An image attached to a user message (vision input). Drivers that declare
|
|
9
24
|
* vision support emit it alongside the text. A shipped driver that cannot
|
|
@@ -22,6 +37,8 @@ export interface ImageAttachment {
|
|
|
22
37
|
readonly data: string
|
|
23
38
|
/** IANA media type, e.g. `image/png`, `image/jpeg`, `image/webp`. */
|
|
24
39
|
readonly mediaType: string
|
|
40
|
+
/** Durable delivery state; the original image bytes remain in history. */
|
|
41
|
+
readonly modelOmission?: ModelContentOmission
|
|
25
42
|
}
|
|
26
43
|
|
|
27
44
|
/**
|
|
@@ -212,7 +229,38 @@ export interface ProjectInstructionMessageSource {
|
|
|
212
229
|
readonly files: readonly string[]
|
|
213
230
|
}
|
|
214
231
|
|
|
215
|
-
|
|
232
|
+
/**
|
|
233
|
+
* Why the runtime, rather than the operator, inserted one user-role message.
|
|
234
|
+
*
|
|
235
|
+
* Providers require several pieces of host context to occupy the `user` role:
|
|
236
|
+
* a continuation after an output ceiling, reviewer feedback, task completion
|
|
237
|
+
* notices, and similar prompts. Role alone therefore cannot answer who wrote a
|
|
238
|
+
* durable message. Keeping that provenance on the message prevents a resumed
|
|
239
|
+
* transcript, export, or previous-prompt editor from presenting kernel context
|
|
240
|
+
* as something the operator typed.
|
|
241
|
+
*/
|
|
242
|
+
export const RUNTIME_CONTEXT_MESSAGE_KINDS = [
|
|
243
|
+
'advisory',
|
|
244
|
+
'answer-review',
|
|
245
|
+
'auto-continuation',
|
|
246
|
+
'limit-finalization',
|
|
247
|
+
'steering',
|
|
248
|
+
'structured-output',
|
|
249
|
+
'task-completion',
|
|
250
|
+
] as const
|
|
251
|
+
|
|
252
|
+
export type RuntimeContextMessageKind = (typeof RUNTIME_CONTEXT_MESSAGE_KINDS)[number]
|
|
253
|
+
|
|
254
|
+
/** Host-generated context carried in the provider's required user role. */
|
|
255
|
+
export interface RuntimeContextMessageSource {
|
|
256
|
+
readonly type: 'runtime-context'
|
|
257
|
+
readonly kind: RuntimeContextMessageKind
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
export type UserMessageSource =
|
|
261
|
+
| GoalRoundMessageSource
|
|
262
|
+
| ProjectInstructionMessageSource
|
|
263
|
+
| RuntimeContextMessageSource
|
|
216
264
|
|
|
217
265
|
/** A bounded source list keeps untrusted persisted metadata cheap to validate. */
|
|
218
266
|
export const MAX_PROJECT_INSTRUCTION_SOURCE_FILES = 256
|
|
@@ -254,6 +302,22 @@ export function isProjectInstructionMessageSource(
|
|
|
254
302
|
return true
|
|
255
303
|
}
|
|
256
304
|
|
|
305
|
+
/** Runtime validation for durable host-generated user-message provenance. */
|
|
306
|
+
export function isRuntimeContextMessageSource(
|
|
307
|
+
value: unknown,
|
|
308
|
+
): value is RuntimeContextMessageSource {
|
|
309
|
+
if (typeof value !== 'object' || value === null || Array.isArray(value)) return false
|
|
310
|
+
const candidate = value as {
|
|
311
|
+
readonly type?: unknown
|
|
312
|
+
readonly kind?: unknown
|
|
313
|
+
}
|
|
314
|
+
return (
|
|
315
|
+
candidate.type === 'runtime-context' &&
|
|
316
|
+
typeof candidate.kind === 'string' &&
|
|
317
|
+
(RUNTIME_CONTEXT_MESSAGE_KINDS as readonly string[]).includes(candidate.kind)
|
|
318
|
+
)
|
|
319
|
+
}
|
|
320
|
+
|
|
257
321
|
/**
|
|
258
322
|
* The configured model route that produced or is about to receive a message.
|
|
259
323
|
*
|
|
@@ -349,6 +413,7 @@ export type ToolResultBlock =
|
|
|
349
413
|
readonly type: 'image'
|
|
350
414
|
readonly data: string
|
|
351
415
|
readonly mediaType: string
|
|
416
|
+
readonly modelOmission?: ModelContentOmission
|
|
352
417
|
}
|
|
353
418
|
| DocumentAttachment
|
|
354
419
|
|
|
@@ -401,6 +466,17 @@ export function createUserMessage(
|
|
|
401
466
|
}
|
|
402
467
|
}
|
|
403
468
|
|
|
469
|
+
/** Build provider-visible context that no operator authored. */
|
|
470
|
+
export function createRuntimeContextMessage(
|
|
471
|
+
content: string,
|
|
472
|
+
kind: RuntimeContextMessageKind,
|
|
473
|
+
): UserMessage {
|
|
474
|
+
return createUserMessage(content, undefined, {
|
|
475
|
+
type: 'runtime-context',
|
|
476
|
+
kind,
|
|
477
|
+
})
|
|
478
|
+
}
|
|
479
|
+
|
|
404
480
|
/** Build the retained user-context message that carries live project policy. */
|
|
405
481
|
export function createProjectInstructionMessage(
|
|
406
482
|
content: string,
|
|
@@ -11,11 +11,14 @@ export type ProviderErrorKind =
|
|
|
11
11
|
* Serializable provider-failure metadata carried by failed runs and events.
|
|
12
12
|
*
|
|
13
13
|
* No response body, URL, or `cause` belongs here. `detail` is the one thing
|
|
14
|
-
* the provider itself said, and it arrives scrubbed
|
|
14
|
+
* the provider itself said, and it arrives scrubbed. `providerCode` preserves
|
|
15
|
+
* a bounded machine identifier independently of wording — see below.
|
|
15
16
|
*/
|
|
16
17
|
export interface ProviderErrorInfo {
|
|
17
18
|
readonly kind: ProviderErrorKind
|
|
18
19
|
readonly providerId: string
|
|
20
|
+
/** Provider-defined machine code, preserved only when it is a bounded safe token. */
|
|
21
|
+
readonly providerCode?: string
|
|
19
22
|
readonly status?: number
|
|
20
23
|
readonly retryAfterMs?: number
|
|
21
24
|
/**
|
package/src/types/run/events.ts
CHANGED
|
@@ -320,7 +320,12 @@ type CoreRunEvent =
|
|
|
320
320
|
* draws eleven siblings where there is one call with eleven
|
|
321
321
|
* children.
|
|
322
322
|
*/
|
|
323
|
-
via?: {
|
|
323
|
+
via?: {
|
|
324
|
+
readonly tool: string
|
|
325
|
+
readonly toolUseId: ToolUseId
|
|
326
|
+
/** The code runtime's request id, when that was the dispatch source. */
|
|
327
|
+
readonly runtimeToolCallId?: string
|
|
328
|
+
}
|
|
324
329
|
}
|
|
325
330
|
/**
|
|
326
331
|
* A tool saying how far along it is.
|
|
@@ -334,7 +339,10 @@ type CoreRunEvent =
|
|
|
334
339
|
* duration: the host could show that a tool had started and then nothing
|
|
335
340
|
* at all until it either finished or timed out. The model never sees
|
|
336
341
|
* these; they answer "is it still working?", which is a question only a
|
|
337
|
-
* human asks.
|
|
342
|
+
* human asks. It is latest state rather than a lossless log: the executor
|
|
343
|
+
* bounds each UTF-8 message and coalesces intermediate updates when the
|
|
344
|
+
* live consumer falls behind. Complete output belongs to the terminal
|
|
345
|
+
* `tool_completed` result.
|
|
338
346
|
*/
|
|
339
347
|
| {
|
|
340
348
|
type: 'tool_progress'
|
|
@@ -412,7 +420,11 @@ type CoreRunEvent =
|
|
|
412
420
|
isError: boolean
|
|
413
421
|
/** See {@link tool_executing}'s `via`. Carried on both, so a
|
|
414
422
|
* consumer can pair them without holding the start event. */
|
|
415
|
-
via?: {
|
|
423
|
+
via?: {
|
|
424
|
+
readonly tool: string
|
|
425
|
+
readonly toolUseId: ToolUseId
|
|
426
|
+
readonly runtimeToolCallId?: string
|
|
427
|
+
}
|
|
416
428
|
/**
|
|
417
429
|
* Wall-clock the tool took. Computed since the first version of
|
|
418
430
|
* the executor but only ever logged; a host asking "which tool
|
|
@@ -603,10 +615,12 @@ type CoreRunEvent =
|
|
|
603
615
|
| {
|
|
604
616
|
type: 'message_history_repaired'
|
|
605
617
|
runId: RunId
|
|
606
|
-
source: 'fresh-history' | 'abandoned-checkpoint'
|
|
618
|
+
source: 'fresh-history' | 'abandoned-checkpoint' | 'provider-rejected-image'
|
|
607
619
|
duplicateToolResultsRemoved: number
|
|
608
620
|
orphanedToolResultsRemoved: number
|
|
609
621
|
syntheticToolResultsInserted: number
|
|
622
|
+
/** Exact number of durable image occurrences withheld from later requests. */
|
|
623
|
+
providerRejectedImagesSuppressed?: number
|
|
610
624
|
}
|
|
611
625
|
| {
|
|
612
626
|
type: 'token_usage_updated'
|
package/src/types/tool/index.ts
CHANGED
|
@@ -68,7 +68,10 @@ export interface SkillRegistryRef {
|
|
|
68
68
|
* outlives, or is billed to, somebody else's run.
|
|
69
69
|
*/
|
|
70
70
|
export interface BackgroundJobRegistryRef {
|
|
71
|
-
start(params: { command: string; workingDirectory: string }): {
|
|
71
|
+
start(params: { command: string; workingDirectory: string }): {
|
|
72
|
+
id: string
|
|
73
|
+
status: string
|
|
74
|
+
}
|
|
72
75
|
get(id: string): { id: string; status: string; exitCode?: number }
|
|
73
76
|
read(
|
|
74
77
|
id: string,
|
|
@@ -158,6 +161,39 @@ export type ToolPauseOutcome =
|
|
|
158
161
|
|
|
159
162
|
export type RequestToolPause = (request: ToolPauseRequest) => Promise<ToolPauseOutcome>
|
|
160
163
|
|
|
164
|
+
/**
|
|
165
|
+
* Where one tool execution entered the runtime from.
|
|
166
|
+
*
|
|
167
|
+
* The executor owns this value. A nested caller supplies only its private
|
|
168
|
+
* operation context to {@link ToolContext.dispatchTool}; the executor derives
|
|
169
|
+
* the parent id from the context it already issued, so a tool cannot relabel
|
|
170
|
+
* itself as somebody else's child.
|
|
171
|
+
*/
|
|
172
|
+
export type ToolCallSource =
|
|
173
|
+
| { readonly kind: 'direct' }
|
|
174
|
+
| { readonly kind: 'nested'; readonly parentToolUseId: string }
|
|
175
|
+
| {
|
|
176
|
+
readonly kind: 'code'
|
|
177
|
+
readonly parentToolUseId: string
|
|
178
|
+
/** The code runtime's id, unique within the parent program. */
|
|
179
|
+
readonly runtimeToolCallId: string
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
/**
|
|
183
|
+
* Operation authority a trusted tool may narrow when it dispatches another
|
|
184
|
+
* tool.
|
|
185
|
+
*
|
|
186
|
+
* `signal` is fused with the parent call's signal; it can revoke authority
|
|
187
|
+
* earlier but can never extend the parent's lifetime. `runtimeToolCallId`
|
|
188
|
+
* identifies one request inside a model-authored program. The executor still
|
|
189
|
+
* chooses the child's event identity and the parent lineage; durable pause
|
|
190
|
+
* ownership stays with the model-issued ancestor present in the checkpoint.
|
|
191
|
+
*/
|
|
192
|
+
export interface ToolDispatchOptions {
|
|
193
|
+
readonly signal?: AbortSignal
|
|
194
|
+
readonly runtimeToolCallId?: string
|
|
195
|
+
}
|
|
196
|
+
|
|
161
197
|
export interface ToolContext {
|
|
162
198
|
runId: RunId
|
|
163
199
|
workingDirectory: string
|
|
@@ -242,7 +278,11 @@ export interface ToolContext {
|
|
|
242
278
|
}>
|
|
243
279
|
}
|
|
244
280
|
readonly search?: {
|
|
245
|
-
search(request: {
|
|
281
|
+
search(request: {
|
|
282
|
+
query: string
|
|
283
|
+
limit?: number
|
|
284
|
+
signal?: AbortSignal
|
|
285
|
+
}): Promise<{
|
|
246
286
|
query: string
|
|
247
287
|
hits: readonly { title: string; url: string; snippet?: string }[]
|
|
248
288
|
}>
|
|
@@ -257,7 +297,10 @@ export interface ToolContext {
|
|
|
257
297
|
* the next batch — a skill loaded alongside other calls must not
|
|
258
298
|
* retroactively refuse them.
|
|
259
299
|
*/
|
|
260
|
-
adoptSkillScope?: (scope: {
|
|
300
|
+
adoptSkillScope?: (scope: {
|
|
301
|
+
skill: string
|
|
302
|
+
allowedTools: readonly string[]
|
|
303
|
+
}) => void
|
|
261
304
|
|
|
262
305
|
/**
|
|
263
306
|
* Run another tool through the same dispatch this call came through.
|
|
@@ -275,7 +318,11 @@ export interface ToolContext {
|
|
|
275
318
|
* dispatch, so a tool calling through here reaches exactly what a
|
|
276
319
|
* `tool_use` block would have.
|
|
277
320
|
*/
|
|
278
|
-
dispatchTool?: (
|
|
321
|
+
dispatchTool?: (
|
|
322
|
+
name: string,
|
|
323
|
+
input: unknown,
|
|
324
|
+
options?: ToolDispatchOptions,
|
|
325
|
+
) => Promise<ToolResult>
|
|
279
326
|
|
|
280
327
|
/**
|
|
281
328
|
* The `tool_use_id` of the assistant block that triggered this
|
|
@@ -287,6 +334,14 @@ export interface ToolContext {
|
|
|
287
334
|
*/
|
|
288
335
|
toolUseId?: string
|
|
289
336
|
|
|
337
|
+
/**
|
|
338
|
+
* How this execution entered the tool registry.
|
|
339
|
+
*
|
|
340
|
+
* Present on executor-owned calls. Optional because a host may invoke a
|
|
341
|
+
* tool directly outside a run and construct its own minimal context.
|
|
342
|
+
*/
|
|
343
|
+
source?: ToolCallSource
|
|
344
|
+
|
|
290
345
|
/**
|
|
291
346
|
* Raise a durable pause and wait for a human to resolve it.
|
|
292
347
|
*
|
|
@@ -335,10 +390,16 @@ export interface ToolContext {
|
|
|
335
390
|
* timed out.
|
|
336
391
|
*
|
|
337
392
|
* Fire-and-forget and never throws, so a tool can call it freely
|
|
338
|
-
* without wrapping it.
|
|
339
|
-
*
|
|
340
|
-
*
|
|
341
|
-
*
|
|
393
|
+
* without wrapping it. This is latest state, not a log: while a host is
|
|
394
|
+
* consuming one update, later calls replace the single pending update.
|
|
395
|
+
* Each published message is capped at 8 KiB of UTF-8 with a visible
|
|
396
|
+
* omission marker, and every accepted update settles before that call's
|
|
397
|
+
* terminal event. Put complete output in `ToolResult`, not here.
|
|
398
|
+
*
|
|
399
|
+
* The model never sees these: progress answers "is it still working?",
|
|
400
|
+
* which is a question only a human asks, and putting it in the
|
|
401
|
+
* conversation would spend tokens telling the model something it cannot
|
|
402
|
+
* act on.
|
|
342
403
|
*
|
|
343
404
|
* Absent when the executing surface has no event stream to write to.
|
|
344
405
|
*/
|
|
@@ -626,4 +687,8 @@ export interface ToolRegistryContract {
|
|
|
626
687
|
|
|
627
688
|
export * from './repair.js'
|
|
628
689
|
|
|
629
|
-
export type {
|
|
690
|
+
export type {
|
|
691
|
+
ToolCallView,
|
|
692
|
+
ToolPresentation,
|
|
693
|
+
ToolResultView,
|
|
694
|
+
} from './presentation.js'
|