@rowan-agent/agent 0.30.0 → 0.32.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.
@@ -1,13 +1,13 @@
1
1
  import * as _rowan_agent_models from '@rowan-agent/models';
2
- import { LlmContentPart, ModelRef, LlmTokenUsage, JsonObject as JsonObject$1, ScopeRef, ToolCallStatus, JsonValue as JsonValue$1, ToolProgress, ToolCallContent, ToolCallLocation, ToolKind, ModelConfig, StreamFn, ToolAnnotations, ThinkingLevel, ContentBlock, ToolCall as ToolCall$1, ToolCallUpdate, ProviderConfig } from '@rowan-agent/models';
2
+ import { LlmMessage, LlmContentBlock, JsonObject, ModelRef, LlmTokenUsage, ScopeRef, ToolResult, RunInteractionRequest, JsonValue, ToolCallStatus, ToolProgress, ToolCallContent, ToolCallLocation, ToolKind, ModelConfig, StreamFn, ToolAnnotations, ThinkingLevel, StreamBlock, ToolCall, ToolCallUpdate, LlmToolCall, ProviderConfig, TextBlock, ImageBlock, ThinkingBlock, RunInteractionKind } from '@rowan-agent/models';
3
3
  import Type from 'typebox';
4
4
 
5
- type AgentMessage = {
5
+ type AgentMessage = Omit<LlmMessage, "role" | "content"> & {
6
6
  id: string;
7
- role: "system" | "user" | "assistant" | "tool";
8
- content: string | LlmContentPart[];
7
+ role: "system" | LlmMessage["role"];
8
+ content: string | LlmContentBlock[];
9
9
  createdAt: string;
10
- metadata?: Record<string, unknown> & {
10
+ metadata?: JsonObject & {
11
11
  phase?: string;
12
12
  };
13
13
  contexts?: readonly ContextCandidate[];
@@ -30,34 +30,6 @@ type Skill = {
30
30
  /** @deprecated Use disableAutoInvocation; kept only for old in-memory callers during cutover. */
31
31
  disableModelInvocation?: boolean;
32
32
  };
33
- type Outcome$1 = {
34
- id: string;
35
- message: string;
36
- /** Publish this outcome's message as an assistant message before completing the run. */
37
- display?: boolean;
38
- payload?: unknown;
39
- toolResults?: Array<{
40
- toolCallId: string;
41
- toolName: string;
42
- ok: boolean;
43
- content: unknown;
44
- error?: string;
45
- }>;
46
- };
47
- type ToolCall = {
48
- id: string;
49
- name: string;
50
- args: unknown;
51
- };
52
- type ToolResult = {
53
- toolCallId: string;
54
- toolName: string;
55
- ok: boolean;
56
- content: unknown;
57
- error?: string;
58
- structuredContent?: unknown;
59
- isError?: boolean;
60
- };
61
33
 
62
34
  type PhaseRegistrySelection = Readonly<{
63
35
  entryPhaseId: string | null;
@@ -80,10 +52,6 @@ declare function parseAgentDefinition(raw: string): AgentDefinition;
80
52
 
81
53
  type ResourceKind = "agent" | "tool" | "skill" | "phase";
82
54
  type ResourceSourceId = string;
83
- /** Rowan-native contribution aliases. Hosts may adapt their domain handlers to
84
- * these existing Tool/Phase lifecycles without importing host Scope types. */
85
- type ToolContribution = Tool;
86
- type PhaseContribution = Phase;
87
55
  type ResourceView = Readonly<{
88
56
  agents: readonly ResourceSourceId[];
89
57
  tools: readonly ResourceSourceId[];
@@ -141,7 +109,7 @@ declare class ResourceRegistry {
141
109
  loadPhases(input: LoadInput<Phase>): Promise<LoadResult>;
142
110
  loadTools(input: Readonly<{
143
111
  sourceId: ResourceSourceId;
144
- values: readonly ToolContribution[];
112
+ values: readonly Tool[];
145
113
  }>): Promise<LoadResult>;
146
114
  unload(input: Readonly<{
147
115
  kind: ResourceKind;
@@ -221,85 +189,6 @@ interface ExtensionContext {
221
189
  exec(command: string, args: string[], options?: ExecOptions): Promise<ExecResult>;
222
190
  }
223
191
 
224
- type LoopMetrics = {
225
- /** Number of phase iterations executed. */
226
- iterations: number;
227
- /** Phase transition history. */
228
- phaseTransitions: Array<{
229
- from: string;
230
- to: string;
231
- ts: string;
232
- }>;
233
- /** Number of times compaction was triggered. */
234
- compactionCount: number;
235
- /** Number of retry attempts due to transient errors. */
236
- retryCount: number;
237
- /** Loop start timestamp. */
238
- startedAt: string;
239
- /** Loop start time as epoch ms (for duration calculation). */
240
- startedAtMs: number;
241
- /** Loop end timestamp (set on completion). */
242
- endedAt?: string;
243
- /** Total wall-clock duration in ms. */
244
- durationMs?: number;
245
- };
246
- type ExecutionState = {
247
- currentPhase: string;
248
- attempt: number;
249
- metrics: LoopMetrics;
250
- status: "idle" | "running" | "suspended" | "completed" | "aborted" | "failed";
251
- initialPhasePayload?: JsonValue;
252
- entryPhases?: readonly EntryPhaseSpec[];
253
- continuation?: ExecutionContinuationState;
254
- runInteractions?: RunInteractionState;
255
- phaseInteractions?: RunInteractionState;
256
- };
257
- type ExecutionContinuationState = {
258
- isContinuing: boolean;
259
- previousPayload?: unknown;
260
- previousResults: Array<{
261
- name: string;
262
- output?: unknown;
263
- }>;
264
- pendingInstruction?: string;
265
- previousPhaseMessageId?: string;
266
- };
267
-
268
- type ToolContext = Pick<AgentContext, "skills"> & {
269
- toolCallId: string;
270
- interaction?: RunInteractionDriver;
271
- };
272
- type ToolExecutionMode = "sequential" | "parallel";
273
- type Tool$1<TArgs = unknown> = {
274
- name: string;
275
- /** Rowan-owned Core Tool; Core Tools bypass Phase filtering. */
276
- core?: boolean;
277
- description: string;
278
- parameters: Type.TSchema;
279
- /** One-line snippet shown in the system prompt tool list. */
280
- promptSnippet?: string;
281
- /** Additional guidelines appended to the system prompt when this tool is active. */
282
- promptGuidelines?: string[];
283
- /** Whether this tool can run concurrently with others. Default: "parallel". */
284
- executionMode?: ToolExecutionMode;
285
- _meta?: JsonObject$1;
286
- execute(args: TArgs, context: ToolContext, signal?: AbortSignal): Promise<ToolResult>;
287
- };
288
- /** Context snapshot passed into the low-level agent loop. */
289
- type AgentContext = {
290
- /** System prompt included with the request. */
291
- systemPrompt: string;
292
- /** Transcript visible to the model. */
293
- messages: AgentMessage[];
294
- /** Tools available for this run. */
295
- tools: Tool$1[];
296
- /** Skills available for this run. */
297
- skills: Skill[];
298
- /** Custom phases for this run. Agent normalizes this with the built-in default phase. */
299
- phases?: PhaseRegistry;
300
- cwd?: string;
301
- };
302
-
303
192
  interface BeforePhaseEvent {
304
193
  type: "before_phase";
305
194
  phaseId: string;
@@ -317,7 +206,7 @@ interface BeforePromptEvent {
317
206
  }
318
207
  interface BeforeToolCallEvent {
319
208
  type: "before_tool_call";
320
- tool: Tool$1;
209
+ tool: Tool;
321
210
  args: unknown;
322
211
  readonly runId?: string;
323
212
  readonly agentId?: string;
@@ -332,7 +221,7 @@ interface BeforeToolCallEvent {
332
221
  }
333
222
  interface AfterToolCallEvent {
334
223
  type: "after_tool_call";
335
- tool: Tool$1;
224
+ tool: Tool;
336
225
  result: ToolResult;
337
226
  readonly runId?: string;
338
227
  readonly agentId?: string;
@@ -357,7 +246,7 @@ interface RunEndEvent {
357
246
  }
358
247
  type HookEvent = BeforePhaseEvent | AfterPhaseEvent | BeforePromptEvent | BeforeToolCallEvent | AfterToolCallEvent | RunStartEvent | RunEndEvent;
359
248
  interface BeforePhaseResult {
360
- abort?: Outcome$1;
249
+ abort?: Outcome;
361
250
  skip?: {
362
251
  route: string;
363
252
  message: string;
@@ -365,7 +254,7 @@ interface BeforePhaseResult {
365
254
  input?: PhaseContext;
366
255
  }
367
256
  interface AfterPhaseResult {
368
- abort?: Outcome$1;
257
+ abort?: Outcome;
369
258
  retry?: PhaseContext;
370
259
  output?: PhaseOutput;
371
260
  }
@@ -590,7 +479,7 @@ declare class ExtensionRunner {
590
479
  agentId: string;
591
480
  outcome: unknown;
592
481
  }): Promise<void>;
593
- emitBeforeToolCall(tool: Tool$1, args: unknown, context?: {
482
+ emitBeforeToolCall(tool: Tool, args: unknown, context?: {
594
483
  runId?: string;
595
484
  agentId?: string;
596
485
  toolCallId?: string;
@@ -601,7 +490,7 @@ declare class ExtensionRunner {
601
490
  turn?: JsonObject;
602
491
  phase?: ToolCallPhase;
603
492
  }): Promise<BeforeToolCallResult>;
604
- emitAfterToolCall(tool: Tool$1, result: ToolResult, context?: {
493
+ emitAfterToolCall(tool: Tool, result: ToolResult, context?: {
605
494
  runId?: string;
606
495
  agentId?: string;
607
496
  toolCallId?: string;
@@ -639,15 +528,15 @@ declare class ExtensionRunner {
639
528
 
640
529
  type ToolCallPresentationInput = Readonly<{
641
530
  status: ToolCallStatus;
642
- args: JsonValue$1;
531
+ args: JsonValue;
643
532
  progress?: ToolProgress;
644
- result?: ToolExecutionResult;
533
+ result?: ToolResult;
645
534
  }>;
646
535
  type ToolCallPresentationOutput = {
647
536
  title?: string;
648
537
  content?: ToolCallContent[];
649
538
  locations?: ToolCallLocation[];
650
- _meta?: JsonObject$1;
539
+ _meta?: JsonObject;
651
540
  };
652
541
  type ToolCallMergeTarget = {
653
542
  title?: string;
@@ -655,9 +544,9 @@ type ToolCallMergeTarget = {
655
544
  status?: ToolCallStatus;
656
545
  locations?: ToolCallLocation[];
657
546
  content?: ToolCallContent[];
658
- rawInput?: JsonValue$1;
659
- rawOutput?: JsonValue$1;
660
- _meta?: JsonObject$1;
547
+ rawInput?: JsonValue;
548
+ rawOutput?: JsonValue;
549
+ _meta?: JsonObject;
661
550
  };
662
551
  type ToolCallMergePatch = {
663
552
  title?: string;
@@ -665,9 +554,9 @@ type ToolCallMergePatch = {
665
554
  status?: ToolCallStatus;
666
555
  locations?: ToolCallLocation[];
667
556
  content?: ToolCallContent[];
668
- rawInput?: JsonValue$1;
669
- rawOutput?: JsonValue$1;
670
- _meta?: JsonObject$1;
557
+ rawInput?: JsonValue;
558
+ rawOutput?: JsonValue;
559
+ _meta?: JsonObject;
671
560
  };
672
561
  declare function mergeToolCall<T extends ToolCallMergeTarget>(target: T, patch: ToolCallMergePatch): T;
673
562
 
@@ -776,7 +665,7 @@ declare function isConfigurationSnapshot(config: AgentConfiguration | Configurat
776
665
 
777
666
  type UserInput = string | Readonly<{
778
667
  content: UserContent;
779
- metadata?: Metadata;
668
+ metadata?: JsonObject;
780
669
  thinkingLevel?: ThinkingLevel;
781
670
  providerOptions?: JsonObject;
782
671
  }>;
@@ -816,8 +705,8 @@ type ToolCallContext = Readonly<{
816
705
  runId: RunId;
817
706
  /** Opaque JSON metadata captured from the Agent and Run records. Rowan does
818
707
  * not interpret host/domain fields. */
819
- agentMetadata?: Metadata;
820
- runMetadata?: Metadata;
708
+ agentMetadata?: JsonObject;
709
+ runMetadata?: JsonObject;
821
710
  toolCallId: ToolCallId;
822
711
  /** The model's id for this call, matching `tool_call_delta` events; absent when a host runs the tool itself. */
823
712
  providerToolCallId?: string;
@@ -835,12 +724,13 @@ type Tool = Readonly<{
835
724
  /** Rowan-owned Core Tool; Core Tools bypass Definition/Phase filtering. */
836
725
  core?: boolean;
837
726
  description: string;
838
- parameters: Type.TSchema;
727
+ parameters: Type.TSchema | JsonObject;
839
728
  promptSnippet?: string;
840
729
  promptGuidelines?: readonly string[];
841
730
  kind?: ToolKind;
842
731
  annotations?: ToolAnnotations;
843
732
  _meta?: JsonObject;
733
+ executionMode?: "sequential" | "parallel";
844
734
  present?(call: ToolCallPresentationInput): {
845
735
  title?: string;
846
736
  content?: ToolCallContent[];
@@ -852,7 +742,7 @@ type Tool = Readonly<{
852
742
  locations?: ToolCallLocation[];
853
743
  _meta?: JsonObject;
854
744
  } | undefined | void>;
855
- execute(args: JsonValue, context: ToolInvocationContext, signal: AbortSignal): Promise<ToolExecutionResult>;
745
+ execute(args: JsonValue, context: ToolInvocationContext, signal: AbortSignal): Promise<ToolResult>;
856
746
  }>;
857
747
  type BeforeToolCallDecision = Readonly<{
858
748
  allow: true;
@@ -871,10 +761,10 @@ type BeforeToolCall = (input: Readonly<{
871
761
  }>) => BeforeToolCallDecision | Promise<BeforeToolCallDecision>;
872
762
  type AfterToolCall = (input: Readonly<{
873
763
  tool: Tool;
874
- result: ToolExecutionResult;
764
+ result: ToolResult;
875
765
  context: ToolInvocationContext;
876
766
  signal: AbortSignal;
877
- }>) => ToolExecutionResult | Promise<ToolExecutionResult>;
767
+ }>) => ToolResult | Promise<ToolResult>;
878
768
  type InvocationSource = "auto" | "implicit" | "external";
879
769
  type InvocationCatalogEntry = Readonly<{
880
770
  kind: "phase" | "skill";
@@ -888,7 +778,7 @@ type InvocationCatalogEntry = Readonly<{
888
778
  }>;
889
779
  type AgentRecord = Readonly<{
890
780
  id: AgentId;
891
- metadata?: Metadata;
781
+ metadata?: JsonObject;
892
782
  currentConfigToken?: ConfigToken;
893
783
  currentConfigIdentity?: string;
894
784
  createdAt: string;
@@ -959,7 +849,7 @@ type RunRecord = Readonly<{
959
849
  messageId: MessageId;
960
850
  messageRevision: number;
961
851
  }>;
962
- metadata?: Metadata;
852
+ metadata?: JsonObject;
963
853
  phasePayload?: JsonValue;
964
854
  entryPhases?: readonly EntryPhaseSpec[];
965
855
  pinnedConfigToken?: ConfigToken;
@@ -992,7 +882,7 @@ type RetentionResult = Readonly<{
992
882
  }>;
993
883
  type AgentSummary = Readonly<{
994
884
  id: AgentId;
995
- metadata?: Metadata;
885
+ metadata?: JsonObject;
996
886
  currentConfigIdentity?: string;
997
887
  createdAt: string;
998
888
  activatedAt: string;
@@ -1003,7 +893,7 @@ type RunSummary = Readonly<{
1003
893
  agentId: AgentId;
1004
894
  agentSequence: number;
1005
895
  state: RunState;
1006
- metadata?: Metadata;
896
+ metadata?: JsonObject;
1007
897
  createdAt: string;
1008
898
  updatedAt: string;
1009
899
  }>;
@@ -1019,7 +909,7 @@ type RunSnapshotBase = Readonly<{
1019
909
  input: UserInput;
1020
910
  scope?: ScopeRef;
1021
911
  cwd?: string;
1022
- metadata?: Metadata;
912
+ metadata?: JsonObject;
1023
913
  /** Effective entry Phase payload the Run started with (defaults filled). */
1024
914
  phasePayload?: JsonValue;
1025
915
  entryPhases?: readonly EntryPhaseSpec[];
@@ -1083,14 +973,14 @@ type ConfigPutResult = Readonly<{
1083
973
  interface ConfigProvider {
1084
974
  put(input: {
1085
975
  agentId: AgentId;
1086
- agentMetadata?: Metadata;
976
+ agentMetadata?: JsonObject;
1087
977
  config: AgentConfiguration | ConfigurationSnapshot;
1088
978
  operationId: string;
1089
979
  signal: AbortSignal;
1090
980
  }): Promise<ConfigPutResult>;
1091
981
  resolve(input: {
1092
982
  agentId: AgentId;
1093
- agentMetadata?: Metadata;
983
+ agentMetadata?: JsonObject;
1094
984
  token: ConfigToken;
1095
985
  signal: AbortSignal;
1096
986
  }): Promise<ConfigResolution>;
@@ -1099,7 +989,7 @@ interface OwnedStore {
1099
989
  readonly lease: OwnerLease;
1100
990
  reserveAgent(input: {
1101
991
  idempotencyKey: string;
1102
- metadata?: Metadata;
992
+ metadata?: JsonObject;
1103
993
  configIdentity?: string;
1104
994
  historySeed?: HistorySeed;
1105
995
  }): Promise<AgentRecord>;
@@ -1129,7 +1019,7 @@ interface OwnedStore {
1129
1019
  createRun(input: {
1130
1020
  agentId: AgentId;
1131
1021
  input: UserInput;
1132
- metadata?: Metadata;
1022
+ metadata?: JsonObject;
1133
1023
  scope?: ScopeRef;
1134
1024
  cwd?: string;
1135
1025
  phasePayload?: JsonValue;
@@ -1213,7 +1103,7 @@ interface OwnedStore {
1213
1103
  requestMessageId: MessageId;
1214
1104
  calls: readonly ToolCallReservation[];
1215
1105
  /** The model response's blocks, so the request message keeps what preceded the Tool Calls. */
1216
- contentBlocks?: readonly ContentBlock[];
1106
+ contentBlocks?: readonly StreamBlock[];
1217
1107
  model?: ModelRef;
1218
1108
  usage?: LlmTokenUsage;
1219
1109
  }): Promise<ToolBatchCommit>;
@@ -1239,7 +1129,7 @@ interface OwnedStore {
1239
1129
  execution: ExecutionToken;
1240
1130
  expectedRevision: number;
1241
1131
  toolCallId: ToolCallId;
1242
- result: ToolExecutionResult;
1132
+ result: ToolResult;
1243
1133
  state: "completed" | "failed" | "indeterminate";
1244
1134
  reason?: string;
1245
1135
  title?: string;
@@ -1258,7 +1148,7 @@ interface OwnedStore {
1258
1148
  recordToolCall(input: {
1259
1149
  runId: RunId;
1260
1150
  execution?: ExecutionToken;
1261
- update: ToolCall$1 | ToolCallUpdate;
1151
+ update: ToolCall | ToolCallUpdate;
1262
1152
  external?: boolean;
1263
1153
  contentIndex?: number;
1264
1154
  }): Promise<DurableRunEvent>;
@@ -1335,7 +1225,7 @@ interface AgentRuntime {
1335
1225
  }>): Promise<LoadResult>;
1336
1226
  createAgent(config: AgentConfiguration, options?: {
1337
1227
  idempotencyKey?: string;
1338
- metadata?: Metadata;
1228
+ metadata?: JsonObject;
1339
1229
  historySeed?: HistorySeed;
1340
1230
  }): Promise<AgentId>;
1341
1231
  updateAgentConfig(agentId: AgentId, config: AgentConfiguration, options: {
@@ -1355,7 +1245,7 @@ interface AgentRuntime {
1355
1245
  }): Promise<RetentionResult>;
1356
1246
  start(agentId: AgentId, input: UserInput, options: {
1357
1247
  idempotencyKey: string;
1358
- metadata?: Metadata;
1248
+ metadata?: JsonObject;
1359
1249
  scope?: ScopeRef;
1360
1250
  cwd?: string;
1361
1251
  phasePayload?: JsonValue;
@@ -1412,10 +1302,67 @@ type ConsumerRegistration = Readonly<{
1412
1302
  waterline: EventCursor;
1413
1303
  }>;
1414
1304
 
1305
+ type LoopMetrics = {
1306
+ /** Number of phase iterations executed. */
1307
+ iterations: number;
1308
+ /** Phase transition history. */
1309
+ phaseTransitions: Array<{
1310
+ from: string;
1311
+ to: string;
1312
+ ts: string;
1313
+ }>;
1314
+ /** Number of times compaction was triggered. */
1315
+ compactionCount: number;
1316
+ /** Number of retry attempts due to transient errors. */
1317
+ retryCount: number;
1318
+ /** Loop start timestamp. */
1319
+ startedAt: string;
1320
+ /** Loop start time as epoch ms (for duration calculation). */
1321
+ startedAtMs: number;
1322
+ /** Loop end timestamp (set on completion). */
1323
+ endedAt?: string;
1324
+ /** Total wall-clock duration in ms. */
1325
+ durationMs?: number;
1326
+ };
1327
+ type ExecutionState = {
1328
+ currentPhase: string;
1329
+ attempt: number;
1330
+ metrics: LoopMetrics;
1331
+ status: "idle" | "running" | "suspended" | "completed" | "aborted" | "failed";
1332
+ initialPhasePayload?: JsonValue;
1333
+ entryPhases?: readonly EntryPhaseSpec[];
1334
+ continuation?: ExecutionContinuationState;
1335
+ runInteractions?: RunInteractionState;
1336
+ phaseInteractions?: RunInteractionState;
1337
+ };
1338
+ type ExecutionContinuationState = {
1339
+ isContinuing: boolean;
1340
+ previousPayload?: unknown;
1341
+ previousResults: Array<{
1342
+ name: string;
1343
+ output?: unknown;
1344
+ }>;
1345
+ pendingInstruction?: string;
1346
+ previousPhaseMessageId?: string;
1347
+ };
1348
+ type AgentContext = {
1349
+ /** System prompt included with the request. */
1350
+ systemPrompt: string;
1351
+ /** Transcript visible to the model. */
1352
+ messages: AgentMessage[];
1353
+ /** Tools available for this run. */
1354
+ tools: Tool[];
1355
+ /** Skills available for this run. */
1356
+ skills: Skill[];
1357
+ /** Custom phases for this run. Rowan normalizes this with the built-in default phase. */
1358
+ phases?: PhaseRegistry;
1359
+ cwd?: string;
1360
+ };
1361
+
1415
1362
  type ModelInvokeOutput = {
1416
1363
  text: string;
1417
- contentBlocks: ContentBlock[];
1418
- toolCalls: ToolCall[];
1364
+ contentBlocks: StreamBlock[];
1365
+ toolCalls: LlmToolCall[];
1419
1366
  stopReason?: string;
1420
1367
  model?: ModelRef;
1421
1368
  usage?: LlmTokenUsage;
@@ -1432,10 +1379,10 @@ type PhaseExecution = {
1432
1379
  }): Promise<ModelInvokeOutput>;
1433
1380
  runInternalModelLoop(context: PhaseContext, options: InternalModelLoopOptions): Promise<ModelInvokeOutput>;
1434
1381
  reportStatus(status: PhaseStatus): Promise<void>;
1435
- executeTools(context: AgentContext, toolCalls: readonly ToolCall[], contentBlocks?: readonly ContentBlock[], meta?: {
1382
+ executeTools(context: AgentContext, toolCalls: readonly LlmToolCall[], contentBlocks?: readonly StreamBlock[], meta?: {
1436
1383
  model?: ModelRef;
1437
1384
  usage?: LlmTokenUsage;
1438
- }): Promise<readonly ToolResult[]>;
1385
+ }): Promise<readonly ToolResultRecord[]>;
1439
1386
  interaction: RunInteractionDriver;
1440
1387
  /** Message lifecycle manager for streaming updates from programmatic phases */
1441
1388
  messages: PhaseMessageManager;
@@ -1451,7 +1398,7 @@ type PhaseMessageManager = {
1451
1398
  /** Stream a text delta */
1452
1399
  update(messageId: string, delta: string): Promise<void>;
1453
1400
  /** Replace the active message content with model-native content parts */
1454
- replaceContent(messageId: string, content: string | LlmContentPart[]): void;
1401
+ replaceContent(messageId: string, content: string | LlmContentBlock[]): void;
1455
1402
  /** End the message stream, appends to transcript */
1456
1403
  end(messageId: string, meta?: {
1457
1404
  model?: ModelRef;
@@ -1461,6 +1408,10 @@ type PhaseMessageManager = {
1461
1408
  discard(messageId: string): void;
1462
1409
  };
1463
1410
 
1411
+ /**
1412
+ * Extension types — simplified for the new hook-based system.
1413
+ */
1414
+
1464
1415
  interface ExtensionStateStore {
1465
1416
  get(key: string): Promise<JsonValue | undefined>;
1466
1417
  set(key: string, value: JsonValue): Promise<void>;
@@ -1525,62 +1476,11 @@ type RegisteredSkill = {
1525
1476
  sourceId: string;
1526
1477
  scope?: ScopeRef;
1527
1478
  };
1528
- /**
1529
- * Tool definition for registering LLM-callable tools via `api.tools.register()`.
1530
- *
1531
- * @example
1532
- * ```typescript
1533
- * api.tools.register({
1534
- * name: "search_docs",
1535
- * description: "Search documentation",
1536
- * parameters: { type: "object", properties: { query: { type: "string" } } },
1537
- * execute: async (args, ctx) => {
1538
- * return { content: [{ type: "text", text: "result" }] };
1539
- * },
1540
- * });
1541
- * ```
1542
- */
1543
- interface ToolDefinition {
1544
- /** Tool name (used in LLM tool calls) */
1545
- name: string;
1546
- /** Description for LLM */
1547
- description: string;
1548
- /** Parameter schema (JSON Schema) */
1549
- parameters: Record<string, unknown>;
1550
- /** Optional: one-line snippet shown in the system prompt tool list */
1551
- promptSnippet?: string;
1552
- /** Optional: additional guidelines appended to system prompt */
1553
- promptGuidelines?: string[];
1554
- kind?: ToolKind;
1555
- annotations?: ToolAnnotations;
1556
- _meta?: JsonObject;
1557
- present?: (call: {
1558
- status: ToolCallStatus;
1559
- args: JsonValue;
1560
- progress?: ToolProgress;
1561
- result?: ToolExecutionResult;
1562
- }) => {
1563
- title?: string;
1564
- content?: ToolCallContent[];
1565
- locations?: ToolCallLocation[];
1566
- _meta?: JsonObject;
1567
- } | undefined | void | Promise<{
1568
- title?: string;
1569
- content?: ToolCallContent[];
1570
- locations?: ToolCallLocation[];
1571
- _meta?: JsonObject;
1572
- } | undefined | void>;
1573
- /** Execute the tool */
1574
- execute: (args: unknown, context: ToolInvocationContext, signal?: AbortSignal) => Promise<ToolExecutionResult>;
1575
- /** Optional: per-tool execution mode override */
1576
- executionMode?: "sequential" | "parallel";
1577
- }
1578
-
1579
1479
  /**
1580
1480
  * Registered tool with source metadata.
1581
1481
  */
1582
1482
  interface RegisteredTool {
1583
- definition: ToolDefinition;
1483
+ definition: Tool;
1584
1484
  sourceInfo: SourceInfo;
1585
1485
  sourceId: string;
1586
1486
  scope?: ScopeRef;
@@ -1675,6 +1575,8 @@ interface ExtensionAgentsAPI {
1675
1575
  after?: RunListCursor;
1676
1576
  limit?: number;
1677
1577
  }): Promise<Page<RunSummary, RunListCursor>>;
1578
+ /** One Run in full, including its outcome once it ended. */
1579
+ run(runId: string): Promise<RunSnapshot>;
1678
1580
  runPhase(agentId: AgentId | string, options: {
1679
1581
  phase: string;
1680
1582
  payload?: JsonValue;
@@ -1701,6 +1603,7 @@ interface ExtensionAgentsRuntimeDelegate {
1701
1603
  after?: RunListCursor;
1702
1604
  limit?: number;
1703
1605
  }): Promise<Page<RunSummary, RunListCursor>>;
1606
+ snapshot(runId: RunSnapshot["runId"]): Promise<RunSnapshot>;
1704
1607
  runPhase(agentId: AgentId, options: {
1705
1608
  phase: string;
1706
1609
  payload?: JsonValue;
@@ -1758,7 +1661,7 @@ interface ExtensionAPI {
1758
1661
  /** Tool capabilities — register and unregister custom tools. */
1759
1662
  tools: {
1760
1663
  /** Register a custom LLM-callable tool. */
1761
- register(tool: ToolDefinition, scope?: ScopeRef): Promise<void>;
1664
+ register(tool: Tool, scope?: ScopeRef): Promise<void>;
1762
1665
  /** Unregister a previously registered tool by name. */
1763
1666
  unregister(toolName: string, scope?: ScopeRef): Promise<void>;
1764
1667
  };
@@ -1830,7 +1733,8 @@ type PhaseOutput = {
1830
1733
  toolCalls?: Array<{
1831
1734
  id: string;
1832
1735
  name: string;
1833
- args: unknown;
1736
+ arguments?: unknown;
1737
+ args?: unknown;
1834
1738
  }>;
1835
1739
  /** Route reason extracted from route tool call (for hooks to inspect) */
1836
1740
  routeReason?: string;
@@ -1873,7 +1777,7 @@ interface PhaseContext {
1873
1777
  systemPrompt: string;
1874
1778
  messages: AgentMessage[];
1875
1779
  /** Phase-filtered tools */
1876
- tools: Tool$1[];
1780
+ tools: Tool[];
1877
1781
  /** Phase-filtered skills */
1878
1782
  skills: Skill[];
1879
1783
  /** Phase machine state */
@@ -2027,27 +1931,11 @@ type OwnerToken = OpaqueId<"OwnerToken">;
2027
1931
  type EventCursor = OpaqueId<"EventCursor">;
2028
1932
  type AgentListCursor = OpaqueId<"AgentListCursor">;
2029
1933
  type RunListCursor = OpaqueId<"RunListCursor">;
2030
- type JsonPrimitive = null | boolean | number | string;
2031
- type JsonValue = JsonPrimitive | readonly JsonValue[] | {
2032
- readonly [key: string]: JsonValue;
2033
- };
2034
- type JsonObject = Readonly<Record<string, JsonValue>>;
2035
- type Metadata = JsonObject;
2036
- type TextContent = Readonly<{
2037
- type: "text";
2038
- text: string;
2039
- }>;
2040
- type ImageContent = Readonly<{
2041
- type: "image";
2042
- data: string;
2043
- mimeType: string;
2044
- }>;
2045
- type ThinkingContent = Readonly<{
2046
- type: "thinking";
2047
- thinking: string;
2048
- signature?: string;
2049
- }>;
2050
- type ToolUseContent = Readonly<{
1934
+ type ToolResultRecord = Readonly<{
1935
+ toolCallId: ToolCallId;
1936
+ toolName: string;
1937
+ }> & ToolResult;
1938
+ type ToolUseBlock = Readonly<{
2051
1939
  type: "tool_use";
2052
1940
  toolCallId: ToolCallId;
2053
1941
  /** Provider/model correlation, retained only to reconstruct the next request. */
@@ -2055,38 +1943,16 @@ type ToolUseContent = Readonly<{
2055
1943
  name: string;
2056
1944
  input: JsonValue;
2057
1945
  }>;
2058
- type ToolExecutionResult = Readonly<{
2059
- ok: true;
2060
- content: JsonValue;
2061
- structuredContent?: JsonValue;
2062
- isError?: boolean;
2063
- }> | Readonly<{
2064
- ok: false;
2065
- content: JsonValue;
2066
- error: string;
2067
- structuredContent?: JsonValue;
2068
- isError?: boolean;
2069
- }> | Readonly<{
2070
- content: readonly ContentBlock[];
2071
- structuredContent?: JsonValue;
2072
- isError?: boolean;
2073
- ok?: boolean;
2074
- error?: string;
2075
- }>;
2076
- type DurableToolResult = Readonly<{
2077
- toolCallId: ToolCallId;
2078
- toolName: string;
2079
- }> & ToolExecutionResult;
2080
- type ToolResultContent = Readonly<{
1946
+ type ToolResultBlock = Readonly<{
2081
1947
  type: "tool_result";
2082
1948
  toolCallId: ToolCallId;
2083
1949
  /** Provider/model correlation, retained only to reconstruct the next request. */
2084
1950
  providerToolCallId?: string;
2085
- result: ToolExecutionResult;
1951
+ result: ToolResult;
2086
1952
  }>;
2087
- type UserContent = string | readonly (TextContent | ImageContent)[];
2088
- type AssistantContent = string | readonly (TextContent | ThinkingContent | ToolUseContent)[];
2089
- type ToolMessageContent = readonly [ToolResultContent, ...ToolResultContent[]];
1953
+ type UserContent = string | readonly (TextBlock | ImageBlock)[];
1954
+ type AssistantContent = string | readonly (TextBlock | ThinkingBlock | ToolUseBlock)[];
1955
+ type ToolMessageContent = readonly [ToolResultBlock, ...ToolResultBlock[]];
2090
1956
  type MessageContent = UserContent | AssistantContent | ToolMessageContent;
2091
1957
  type MessageBase = Readonly<{
2092
1958
  id: MessageId;
@@ -2094,7 +1960,7 @@ type MessageBase = Readonly<{
2094
1960
  runId: RunId;
2095
1961
  /** Monotonic active revision. Omitted on legacy/initial messages and read as 0. */
2096
1962
  messageRevision?: number;
2097
- metadata?: Metadata;
1963
+ metadata?: JsonObject;
2098
1964
  sequenceWithinRun: number;
2099
1965
  createdAt: string;
2100
1966
  }>;
@@ -2121,25 +1987,19 @@ type ToolMessage = MessageBase & Readonly<{
2121
1987
  type InteractionRecord = MessageBase & Readonly<{
2122
1988
  role: "interaction";
2123
1989
  interactionId: string;
2124
- kind: "user_input" | "permission" | "elicitation" | "confirmation";
2125
- prompt: string;
1990
+ kind: RunInteractionKind;
2126
1991
  phase: string;
2127
1992
  status: "answered" | "replied" | "cancelled";
2128
1993
  answer?: JsonValue;
2129
1994
  reply?: string;
2130
1995
  toolCallId?: ToolCallId;
2131
- result?: Readonly<{
2132
- answered?: string;
2133
- replied?: string;
2134
- cancelled?: string;
2135
- }>;
2136
- }>;
1996
+ }> & Pick<RunInteractionRequest, "prompt" | "result">;
2137
1997
  type Message = UserMessage | AssistantMessage | ToolMessage | InteractionRecord;
2138
1998
  type Outcome = Readonly<{
2139
1999
  id: OutcomeId;
2140
2000
  message: string;
2141
2001
  payload?: JsonValue;
2142
- toolResults?: readonly DurableToolResult[];
2002
+ toolResults?: readonly ToolResultRecord[];
2143
2003
  }>;
2144
2004
  type RunState = "queued" | "running" | "input_required" | "completed" | "failed" | "cancelled";
2145
2005
  type WithdrawnUserInput = Readonly<{
@@ -2184,24 +2044,23 @@ type QueuedRunFailure = Extract<RunFailure, {
2184
2044
  type RunningRunFailure = Extract<RunFailure, {
2185
2045
  code: "runtime_interrupted" | "tool_indeterminate" | "execution_failed";
2186
2046
  }>;
2187
- type ToolCallState = ToolCallStatus;
2188
- type ToolCallSnapshot = ToolCall$1 & Readonly<{
2047
+ type ToolCallSnapshot = ToolCall & Readonly<{
2189
2048
  id: ToolCallId;
2190
2049
  providerToolCallId?: string;
2191
- agentId?: AgentId;
2192
- runId?: RunId;
2050
+ agentId: AgentId;
2051
+ runId: RunId;
2193
2052
  executionId?: ExecutionId;
2194
2053
  requestMessageId?: MessageId;
2195
2054
  name?: string;
2196
2055
  args?: JsonValue;
2197
2056
  state?: ToolCallStatus;
2198
- result?: DurableToolResult;
2057
+ result?: ToolResultRecord;
2199
2058
  resultMessageId?: MessageId;
2200
2059
  reason?: string;
2201
2060
  external?: boolean;
2202
2061
  contentIndex?: number;
2203
- createdAt?: string;
2204
- updatedAt?: string;
2062
+ createdAt: string;
2063
+ updatedAt: string;
2205
2064
  }>;
2206
2065
  type DurableEventBase = Readonly<{
2207
2066
  id: EventId;
@@ -2211,7 +2070,7 @@ type DurableEventBase = Readonly<{
2211
2070
  agentId: AgentId;
2212
2071
  runId: RunId;
2213
2072
  runRevision: number;
2214
- metadata?: Metadata;
2073
+ metadata?: JsonObject;
2215
2074
  createdAt: string;
2216
2075
  }>;
2217
2076
  type PhaseEntered = DurableEventBase & Readonly<{
@@ -2280,7 +2139,7 @@ type ToolStateChanged = (DurableEventBase & Readonly<{
2280
2139
  from: ToolCallStatus | null;
2281
2140
  to: ToolCallStatus;
2282
2141
  }>;
2283
- toolCall: ToolCall$1;
2142
+ toolCall: ToolCall;
2284
2143
  external?: boolean;
2285
2144
  /** For a provider-reported call: assistant content blocks streamed before it. */
2286
2145
  contentIndex?: number;
@@ -2293,7 +2152,7 @@ type ToolStateChanged = (DurableEventBase & Readonly<{
2293
2152
  from: ToolCallStatus | null;
2294
2153
  to: ToolCallStatus;
2295
2154
  }>;
2296
- toolCall: ToolCall$1 | ToolCallUpdate;
2155
+ toolCall: ToolCall | ToolCallUpdate;
2297
2156
  external?: boolean;
2298
2157
  contentIndex?: number;
2299
2158
  }>;
@@ -2359,38 +2218,16 @@ type RunEvent = DurableRunEvent | MessageDelta | ThinkingDelta | ToolCallDelta |
2359
2218
  durability: "transient";
2360
2219
  }>;
2361
2220
 
2362
- type RunInteractionKind = "user_input" | "permission" | "elicitation" | "confirmation";
2363
2221
  type RunInteractionStatus = "pending" | "answered" | "replied" | "cancelled";
2364
- type RunInteraction = Readonly<{
2222
+ type RunInteraction = RunInteractionRequest & Readonly<{
2365
2223
  id: string;
2366
2224
  phase: string;
2367
- kind: RunInteractionKind;
2368
- prompt: string;
2369
- payload?: JsonValue;
2370
2225
  createdAt: string;
2371
2226
  status: RunInteractionStatus;
2372
2227
  answer?: JsonValue;
2373
2228
  reply?: string;
2374
2229
  /** The Run is only waiting for the next user message, not asking a question. */
2375
2230
  turnBoundary?: true;
2376
- toolCallId?: string;
2377
- result?: Readonly<{
2378
- answered?: string;
2379
- replied?: string;
2380
- cancelled?: string;
2381
- }>;
2382
- }>;
2383
- type RunInteractionRequest = Readonly<{
2384
- id?: string;
2385
- kind: RunInteractionKind;
2386
- prompt: string;
2387
- payload?: JsonValue;
2388
- toolCallId?: string;
2389
- result?: Readonly<{
2390
- answered?: string;
2391
- replied?: string;
2392
- cancelled?: string;
2393
- }>;
2394
2231
  }>;
2395
2232
  type RunInteractionState = Readonly<{
2396
2233
  requests: readonly RunInteraction[];
@@ -2420,4 +2257,4 @@ declare class RunInteractionBoundary extends Error {
2420
2257
  constructor(state: ExecutionState, interactions: readonly RunInteraction[]);
2421
2258
  }
2422
2259
 
2423
- export { type ConfigToken as $, type AgentRuntime as A, type Message as B, type ContextStatus as C, type DurableRunEvent as D, type ExtensionHost as E, type RunBoundary as F, type RunEvent as G, type HostApiExtension as H, type InvocationSource as I, type JsonObject as J, type DurableStore as K, type LoadInput as L, type Metadata as M, type AgentRecord as N, type RunRecord as O, type Phase as P, type ExecutionId as Q, type ResourceKind as R, type Skill as S, type Tool as T, type UserContent as U, type ToolCallState as V, type DurableToolResult as W, type ContextCompactionRecord as X, type ToolCallSnapshot as Y, type OwnerLease as Z, type OwnedStore as _, type JsonValue as a, type ExtensionFactory as a$, type ContextCandidate as a0, type RunClaim as a1, type RunFailure as a2, type ExecutionToken as a3, type AssistantMessage as a4, type ExecutionCheckpoint as a5, type RunInteraction as a6, type ToolCommit as a7, type ToolCallReservation as a8, type ToolBatchCommit as a9, type ResourceRef as aA, ResourceRegistry as aB, ResourceRegistryError as aC, type ResourceRegistryErrorCode as aD, type ResourceSourceId as aE, type ResourceView as aF, RuntimeBootstrapRegistry as aG, RuntimeExtensionLifetime as aH, type ToolContribution as aI, extensionSourceId as aJ, isConfigurationSnapshot as aK, mergeToolCall as aL, parseAgentDefinition as aM, resolveConfigurationSnapshot as aN, type AfterToolCall as aO, type AssistantContent as aP, type BeforeToolCall as aQ, type EventBus as aR, type EventId as aS, type ExecOptions as aT, type ExecResult as aU, type ExtensionAPI as aV, type ExtensionAgentConsumerDisposer as aW, type ExtensionAgentsAPI as aX, type ExtensionCapabilityContribution as aY, type ExtensionContext as aZ, type ExtensionDisposer as a_, type ToolExecutionResult as aa, type Outcome as ab, type ConsumerRegistration as ac, type RetentionResult as ad, type ConfigProvider as ae, type ConfigurationSnapshot as af, type ConfigPutResult as ag, type ConfigResolution as ah, type PhaseRegistry as ai, type LoadedExtension as aj, type DefinitionLayer as ak, type ExtensionActivationError as al, type ExtensionActivationResult as am, type ExtensionContribution as an, ExtensionLifetimeError as ao, type ExtensionLifetimeErrorCode as ap, type ExtensionLoadInput as aq, type InteractionRecord as ar, type LoadExtensionsResult as as, type ModelRetry as at, type OpaqueId as au, type OwnerToken as av, type PhaseContribution as aw, type PhaseRegistrySelection as ax, type ResolvedResourceView as ay, type ResourceDiagnostic as az, type AgentRuntimeOptions as b, type ExtensionFactoryResult as b0, type ExtensionStateStore as b1, type ExtensionToolContribution as b2, type HookEvent as b3, type HookEventType as b4, type HookHandler as b5, type InternalModelLoopOptions as b6, type JsonPrimitive as b7, type LiveInteractionEvent as b8, type MessageBase as b9, type RunStateChanged as bA, type SettingsBadge as bB, type SettingsControl as bC, type SettingsDefinition as bD, type SettingsItem as bE, type SettingsOption as bF, type SettingsSection as bG, type SkillRegistration as bH, type TextContent as bI, type ThinkingContent as bJ, type ThinkingDelta as bK, type ToolCallContext as bL, type ToolCallDelta as bM, type ToolCallPhase as bN, type ToolCallPresentationInput as bO, type ToolCallPresentationOutput as bP, type ToolDefinition as bQ, type ToolInvocationContext as bR, type ToolMessage as bS, type ToolMessageContent as bT, type ToolResultContent as bU, type ToolStateChanged as bV, type ToolUseContent as bW, type UserMessage as bX, type WithdrawnUserInput as bY, type MessageCommitted as ba, type MessageContent as bb, type MessageDelta as bc, type MessageRevised as bd, type ModelInvokeOutput as be, type PhaseContext as bf, type PhaseExecution as bg, type PhaseExecutionIdentity as bh, type PhaseInput as bi, type PhaseInvocation as bj, type PhaseMessageManager as bk, type PhaseOutput as bl, type PhaseRegistration as bm, type PhaseRunHandler as bn, type PhaseState as bo, type PhaseStatus as bp, type PhaseStatusState as bq, type RunEndEvent as br, RunInteractionBoundary as bs, RunInteractionCancelledError as bt, type RunInteractionDriver as bu, type RunInteractionKind as bv, type RunInteractionRequest as bw, type RunInteractionState as bx, type RunInteractionStatus as by, type RunStartEvent as bz, type AgentDefinition as c, type LoadResult as d, type AgentConfiguration as e, type HistorySeed as f, type AgentId as g, type AgentDeletionRequest as h, type MessageId as i, type MessageRevisionResult as j, type RunId as k, type ToolCallId as l, type EventCursor as m, type UserInput as n, type AgentRun as o, type EntryPhaseSpec as p, type AgentListCursor as q, type Page as r, type AgentSummary as s, type RunState as t, type RunListCursor as u, type RunSummary as v, type InvocationCatalogEntry as w, type DurableConsumer as x, type ExtensionCapability as y, type RunSnapshot as z };
2260
+ export { type AssistantMessage as $, type AgentRuntime as A, type RunEvent as B, type ContextStatus as C, type DurableRunEvent as D, type ExtensionHost as E, type DurableStore as F, type AgentRecord as G, type HostApiExtension as H, type InvocationSource as I, type RunRecord as J, type ToolCallSnapshot as K, type LoadInput as L, type MessageId as M, type ContextCompactionRecord as N, type OwnerLease as O, type Phase as P, type OwnedStore as Q, type ResourceKind as R, type Skill as S, type Tool as T, type UserContent as U, type ConfigToken as V, type ExecutionId as W, type ContextCandidate as X, type RunClaim as Y, type RunFailure as Z, type ExecutionToken as _, type AgentRuntimeOptions as a, type LiveInteractionEvent as a$, type ExecutionCheckpoint as a0, type RunInteraction as a1, type ToolCommit as a2, type ToolCallReservation as a3, type ToolBatchCommit as a4, type Outcome as a5, type ConsumerRegistration as a6, type RetentionResult as a7, type ConfigProvider as a8, type ConfigurationSnapshot as a9, extensionSourceId as aA, isConfigurationSnapshot as aB, mergeToolCall as aC, parseAgentDefinition as aD, resolveConfigurationSnapshot as aE, type AfterToolCall as aF, type AssistantContent as aG, type BeforeToolCall as aH, type EventBus as aI, type EventId as aJ, type ExecOptions as aK, type ExecResult as aL, type ExtensionAPI as aM, type ExtensionAgentConsumerDisposer as aN, type ExtensionAgentsAPI as aO, type ExtensionCapabilityContribution as aP, type ExtensionContext as aQ, type ExtensionDisposer as aR, type ExtensionFactory as aS, type ExtensionFactoryResult as aT, type ExtensionStateStore as aU, type ExtensionToolContribution as aV, type HookEvent as aW, type HookEventType as aX, type HookHandler as aY, type InteractionRecord as aZ, type InternalModelLoopOptions as a_, type ConfigPutResult as aa, type ConfigResolution as ab, type PhaseRegistry as ac, type LoadedExtension as ad, type DefinitionLayer as ae, type ExtensionActivationError as af, type ExtensionActivationResult as ag, type ExtensionContribution as ah, ExtensionLifetimeError as ai, type ExtensionLifetimeErrorCode as aj, type ExtensionLoadInput as ak, type LoadExtensionsResult as al, type ModelRetry as am, type OpaqueId as an, type OwnerToken as ao, type PhaseRegistrySelection as ap, type ResolvedResourceView as aq, type ResourceDiagnostic as ar, type ResourceRef as as, ResourceRegistry as at, ResourceRegistryError as au, type ResourceRegistryErrorCode as av, type ResourceSourceId as aw, type ResourceView as ax, RuntimeBootstrapRegistry as ay, RuntimeExtensionLifetime as az, type AgentDefinition as b, type MessageBase as b0, type MessageCommitted as b1, type MessageContent as b2, type MessageDelta as b3, type MessageRevised as b4, type ModelInvokeOutput as b5, type PhaseContext as b6, type PhaseExecution as b7, type PhaseExecutionIdentity as b8, type PhaseInput as b9, type ToolCallPhase as bA, type ToolCallPresentationInput as bB, type ToolCallPresentationOutput as bC, type ToolInvocationContext as bD, type ToolMessage as bE, type ToolMessageContent as bF, type ToolResultBlock as bG, type ToolResultRecord as bH, type ToolStateChanged as bI, type ToolUseBlock as bJ, type UserMessage as bK, type WithdrawnUserInput as bL, type PhaseInvocation as ba, type PhaseMessageManager as bb, type PhaseOutput as bc, type PhaseRegistration as bd, type PhaseRunHandler as be, type PhaseState as bf, type PhaseStatus as bg, type PhaseStatusState as bh, type RunEndEvent as bi, RunInteractionBoundary as bj, RunInteractionCancelledError as bk, type RunInteractionDriver as bl, type RunInteractionState as bm, type RunInteractionStatus as bn, type RunStartEvent as bo, type RunStateChanged as bp, type SettingsBadge as bq, type SettingsControl as br, type SettingsDefinition as bs, type SettingsItem as bt, type SettingsOption as bu, type SettingsSection as bv, type SkillRegistration as bw, type ThinkingDelta as bx, type ToolCallContext as by, type ToolCallDelta as bz, type LoadResult as c, type AgentConfiguration as d, type HistorySeed as e, type AgentId as f, type AgentDeletionRequest as g, type MessageRevisionResult as h, type RunId as i, type ToolCallId as j, type EventCursor as k, type UserInput as l, type AgentRun as m, type EntryPhaseSpec as n, type AgentListCursor as o, type Page as p, type AgentSummary as q, type RunState as r, type RunListCursor as s, type RunSummary as t, type InvocationCatalogEntry as u, type DurableConsumer as v, type ExtensionCapability as w, type RunSnapshot as x, type Message as y, type RunBoundary as z };