@github/copilot-sdk 1.0.13-preview.0 → 1.0.13-preview.2
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/README.md +13 -0
- package/dist/cjs/client.js +100 -5
- package/dist/cjs/generated/rpc.js +25 -1
- package/dist/cjs/index.js +2 -0
- package/dist/cjs/session.js +16 -1
- package/dist/cjs/types.js +8 -0
- package/dist/client.d.ts +7 -1
- package/dist/client.js +100 -5
- package/dist/generated/rpc.d.ts +259 -19
- package/dist/generated/rpc.js +25 -1
- package/dist/generated/session-events.d.ts +1009 -53
- package/dist/index.d.ts +2 -2
- package/dist/index.js +2 -1
- package/dist/session.d.ts +1 -0
- package/dist/session.js +16 -1
- package/dist/types.d.ts +49 -9
- package/dist/types.js +7 -0
- package/package.json +2 -2
|
@@ -9,7 +9,7 @@ export type JsonValue = null | boolean | number | string | JsonValue[] | {
|
|
|
9
9
|
/**
|
|
10
10
|
* Union of all session event variants emitted by the Copilot CLI runtime.
|
|
11
11
|
*/
|
|
12
|
-
export type SessionEvent = StartEvent | ResumeEvent | RemoteSteerableChangedEvent | ErrorEvent | IdleEvent | TitleChangedEvent | ScheduleCreatedEvent | ScheduleCancelledEvent | ScheduleRearmedEvent | AutopilotObjectiveChangedEvent | InfoEvent | WarningEvent | ModelChangeEvent | ModeChangedEvent | SessionLimitsChangedEvent | PermissionsChangedEvent | PlanChangedEvent | TodosChangedEvent | WorkspaceFileChangedEvent | HandoffEvent | TruncationEvent | SnapshotRewindEvent | ShutdownEvent | UsageCheckpointEvent | ContextChangedEvent | UsageInfoEvent | ContextClearedEvent | CompactionStartEvent | CompactionCompleteEvent | TaskCompleteEvent | UserMessageEvent | PendingMessagesModifiedEvent | AssistantTurnStartEvent | AssistantIntentEvent | AssistantServerToolProgressEvent | AssistantReasoningEvent | AssistantReasoningDeltaEvent | AssistantToolCallDeltaEvent | AssistantStreamingDeltaEvent | AssistantMessageEvent | AssistantMessageStartEvent | AssistantMessageDeltaEvent | AssistantTurnEndEvent | AssistantIdleEvent | AssistantUsageEvent | ModelCallFailureEvent | AbortEvent | ToolUserRequestedEvent | ToolExecutionStartEvent | ToolExecutionPartialResultEvent | ToolExecutionProgressEvent | ToolExecutionCompleteEvent | ToolSearchActivatedEvent | SkillInvokedEvent | SubagentStartedEvent | SubagentCompletedEvent | SubagentFailedEvent | SubagentSelectedEvent | SubagentDeselectedEvent | HookStartEvent | HookEndEvent | HookProgressEvent | BinaryAssetEvent | SystemMessageEvent | SystemNotificationEvent | PermissionRequestedEvent | PermissionCompletedEvent | UserInputRequestedEvent | UserInputCompletedEvent | ElicitationRequestedEvent | ElicitationCompletedEvent | SamplingRequestedEvent | SamplingCompletedEvent | McpOauthRequiredEvent | McpOauthCompletedEvent | McpHeadersRefreshRequiredEvent | McpHeadersRefreshCompletedEvent | CustomNotificationEvent | UIEphemeralQueryEvent | ExternalToolRequestedEvent | ExternalToolCompletedEvent | CommandQueuedEvent | CommandExecuteEvent | CommandCompletedEvent | AutoModeSwitchRequestedEvent | AutoModeSwitchCompletedEvent | SessionLimitsExhaustedRequestedEvent | SessionLimitsExhaustedCompletedEvent | AutoModeResolvedEvent | ManagedSettingsResolvedEvent | ManagedSettingsEnforcedEvent | CommandsChangedEvent | CapabilitiesChangedEvent | ExitPlanModeRequestedEvent | ExitPlanModeCompletedEvent | ToolsUpdatedEvent | BackgroundTasksChangedEvent | FactoryRunUpdatedEvent | FactoryRunStartedEvent | FactoryRunSettledEvent | SkillsLoadedEvent | CustomAgentsUpdatedEvent | McpServersLoadedEvent | McpServerStatusChangedEvent | McpToolsListChangedEvent | McpResourcesListChangedEvent | McpPromptsListChangedEvent | ExtensionsLoadedEvent | CanvasOpenedEvent | CanvasRegistryChangedEvent | CanvasClosedEvent | CanvasUnavailableEvent | CanvasRecordedEvent | CanvasRemovedEvent | ExtensionsAttachmentsPushedEvent | McpAppToolCallCompleteEvent;
|
|
12
|
+
export type SessionEvent = StartEvent | ResumeEvent | RemoteSteerableChangedEvent | ErrorEvent | IdleEvent | TitleChangedEvent | ScheduleCreatedEvent | ScheduleCancelledEvent | ScheduleRearmedEvent | AutopilotObjectiveChangedEvent | InfoEvent | WarningEvent | ModelChangeEvent | ModeChangedEvent | SessionLimitsChangedEvent | PermissionsChangedEvent | PlanChangedEvent | TodosChangedEvent | WorkspaceFileChangedEvent | HandoffEvent | TruncationEvent | SnapshotRewindEvent | ShutdownEvent | UsageCheckpointEvent | ContextChangedEvent | UsageInfoEvent | ContextClearedEvent | CompactionStartEvent | CompactionCompleteEvent | TaskCompleteEvent | FusionRouteStartedEvent | FusionRouteFailedEvent | FusionResolvedEvent | FusionCompletedEvent | UserMessageEvent | PendingMessagesModifiedEvent | AssistantTurnStartEvent | AssistantIntentEvent | AssistantFusionPhaseStartedEvent | AssistantFusionPhaseCompletedEvent | AssistantFusionPhaseFailedEvent | AssistantServerToolProgressEvent | AssistantReasoningEvent | AssistantReasoningDeltaEvent | AssistantToolCallDeltaEvent | AssistantStreamingDeltaEvent | AssistantMessageEvent | AssistantMessageStartEvent | AssistantMessageDeltaEvent | AssistantTurnEndEvent | AssistantIdleEvent | AssistantUsageEvent | ModelCallFailureEvent | ModelCallFinishedEvent | AbortEvent | ToolUserRequestedEvent | ToolExecutionStartEvent | ToolExecutionPartialResultEvent | ToolExecutionProgressEvent | ToolExecutionCompleteEvent | ToolSearchActivatedEvent | SkillInvokedEvent | SubagentStartedEvent | SubagentConfiguredEvent | SubagentCompletedEvent | SubagentFailedEvent | SubagentSelectedEvent | SubagentDeselectedEvent | HookStartEvent | HookEndEvent | HookProgressEvent | BinaryAssetEvent | SystemMessageEvent | SystemNotificationEvent | PermissionRequestedEvent | PermissionCompletedEvent | UserInputRequestedEvent | UserInputCompletedEvent | ElicitationRequestedEvent | ElicitationCompletedEvent | SamplingRequestedEvent | SamplingCompletedEvent | McpOauthRequiredEvent | McpOauthCompletedEvent | McpHeadersRefreshRequiredEvent | McpHeadersRefreshCompletedEvent | CustomNotificationEvent | UIEphemeralQueryEvent | ExternalToolRequestedEvent | ExternalToolCompletedEvent | CommandQueuedEvent | CommandExecuteEvent | CommandCompletedEvent | AutoModeSwitchRequestedEvent | AutoModeSwitchCompletedEvent | SessionLimitsExhaustedRequestedEvent | SessionLimitsExhaustedCompletedEvent | AutoModeResolvedEvent | ManagedSettingsResolvedEvent | ManagedSettingsEnforcedEvent | CommandsChangedEvent | CapabilitiesChangedEvent | ExitPlanModeRequestedEvent | ExitPlanModeCompletedEvent | ToolsUpdatedEvent | BackgroundTasksChangedEvent | FactoryRunUpdatedEvent | FactoryRunStartedEvent | FactoryRunSettledEvent | SkillsLoadedEvent | CustomAgentsUpdatedEvent | McpServersLoadedEvent | McpServerStatusChangedEvent | McpToolsListChangedEvent | McpResourcesListChangedEvent | McpPromptsListChangedEvent | ExtensionsLoadedEvent | CanvasOpenedEvent | CanvasRegistryChangedEvent | CanvasClosedEvent | CanvasUnavailableEvent | CanvasRecordedEvent | CanvasRemovedEvent | ExtensionsAttachmentsPushedEvent | McpAppToolCallCompleteEvent;
|
|
13
13
|
/**
|
|
14
14
|
* Hosting platform type of the repository (github or ado)
|
|
15
15
|
*/
|
|
@@ -46,6 +46,16 @@ export type Verbosity =
|
|
|
46
46
|
| "medium"
|
|
47
47
|
/** A more detailed response was requested. */
|
|
48
48
|
| "high";
|
|
49
|
+
/**
|
|
50
|
+
* The session mode the agent is operating in
|
|
51
|
+
*/
|
|
52
|
+
export type SessionMode =
|
|
53
|
+
/** The agent is responding interactively to the user. */
|
|
54
|
+
"interactive"
|
|
55
|
+
/** The agent is preparing a plan before making changes. */
|
|
56
|
+
| "plan"
|
|
57
|
+
/** The agent is working autonomously toward task completion. */
|
|
58
|
+
| "autopilot";
|
|
49
59
|
/**
|
|
50
60
|
* Who created the schedule: `user` (an explicit user action such as `/every` or `/after`) or `model` (the agent via the `manage_schedule` tool). Gates whether a scheduled skill that opted out of model invocation may fire: only user-created schedules may.
|
|
51
61
|
*/
|
|
@@ -102,16 +112,6 @@ export type ModelChangeSource =
|
|
|
102
112
|
| "automatic"
|
|
103
113
|
/** An SDK or RPC caller selected the model. */
|
|
104
114
|
| "sdk";
|
|
105
|
-
/**
|
|
106
|
-
* The session mode the agent is operating in
|
|
107
|
-
*/
|
|
108
|
-
export type SessionMode =
|
|
109
|
-
/** The agent is responding interactively to the user. */
|
|
110
|
-
"interactive"
|
|
111
|
-
/** The agent is preparing a plan before making changes. */
|
|
112
|
-
| "plan"
|
|
113
|
-
/** The agent is working autonomously toward task completion. */
|
|
114
|
-
| "autopilot";
|
|
115
115
|
/**
|
|
116
116
|
* Permission mode for the session.
|
|
117
117
|
*/
|
|
@@ -181,6 +181,35 @@ export type TaskCompletionOutcome =
|
|
|
181
181
|
| "continue"
|
|
182
182
|
/** Completion cannot proceed without intervention; the active objective is paused when one is identified. */
|
|
183
183
|
| "blocked";
|
|
184
|
+
/**
|
|
185
|
+
* Kind of turn for which HydraFusion routing is running.
|
|
186
|
+
*/
|
|
187
|
+
/** @experimental */
|
|
188
|
+
export type FusionTurnKind =
|
|
189
|
+
/** A user-message turn. */
|
|
190
|
+
"user"
|
|
191
|
+
/** A conversation-compaction turn. */
|
|
192
|
+
| "compaction";
|
|
193
|
+
/**
|
|
194
|
+
* Server-recommended routing behavior for a later HydraFusion turn.
|
|
195
|
+
*/
|
|
196
|
+
/** @experimental */
|
|
197
|
+
export type FusionFollowUpAction =
|
|
198
|
+
/** Reuse the durable primary model without routing. */
|
|
199
|
+
"reuse_primary"
|
|
200
|
+
/** Request a new routing decision. */
|
|
201
|
+
| "reroute";
|
|
202
|
+
/**
|
|
203
|
+
* Validated HydraFusion execution pattern.
|
|
204
|
+
*/
|
|
205
|
+
/** @experimental */
|
|
206
|
+
export type FusionPattern =
|
|
207
|
+
/** Run one primary solver phase. */
|
|
208
|
+
"single"
|
|
209
|
+
/** Run a primary phase, a judge, and an optional repair. */
|
|
210
|
+
| "cascade"
|
|
211
|
+
/** Run a primary draft, a read-only critique, and a revision. */
|
|
212
|
+
| "critique";
|
|
184
213
|
/**
|
|
185
214
|
* The agent mode that was active when this message was sent
|
|
186
215
|
*/
|
|
@@ -225,6 +254,45 @@ export type UserMessageDelivery =
|
|
|
225
254
|
| "steering"
|
|
226
255
|
/** Enqueued while the agent was busy; processed as its own run afterward. */
|
|
227
256
|
| "queued";
|
|
257
|
+
/**
|
|
258
|
+
* Conversation scope in which a HydraFusion phase executes.
|
|
259
|
+
*/
|
|
260
|
+
/** @experimental */
|
|
261
|
+
export type FusionConversationScope =
|
|
262
|
+
/** Canonical root conversation history. */
|
|
263
|
+
"root"
|
|
264
|
+
/** Isolated read-only review history that does not enter the root conversation. */
|
|
265
|
+
| "review";
|
|
266
|
+
/**
|
|
267
|
+
* HydraFusion phase kind.
|
|
268
|
+
*/
|
|
269
|
+
/** @experimental */
|
|
270
|
+
export type FusionPhaseKind =
|
|
271
|
+
/** Primary solver phase. */
|
|
272
|
+
"primary"
|
|
273
|
+
/** Read-only cascade judge phase. */
|
|
274
|
+
| "judge"
|
|
275
|
+
/** Cascade repair phase. */
|
|
276
|
+
| "repair"
|
|
277
|
+
/** Initial critique-pattern draft phase. */
|
|
278
|
+
| "draft"
|
|
279
|
+
/** Read-only critique phase. */
|
|
280
|
+
| "critic"
|
|
281
|
+
/** Critique-pattern revision phase. */
|
|
282
|
+
| "revision"
|
|
283
|
+
/** Follow-up phase continuing from the resolved model. */
|
|
284
|
+
| "follow_up";
|
|
285
|
+
/**
|
|
286
|
+
* Durable outcome status of a HydraFusion phase.
|
|
287
|
+
*/
|
|
288
|
+
/** @experimental */
|
|
289
|
+
export type FusionPhaseStatus =
|
|
290
|
+
/** The phase completed successfully. */
|
|
291
|
+
"succeeded"
|
|
292
|
+
/** The phase failed. */
|
|
293
|
+
| "failed"
|
|
294
|
+
/** The phase was cancelled. */
|
|
295
|
+
| "cancelled";
|
|
228
296
|
/**
|
|
229
297
|
* Tool call type: "function" for standard tool calls, "custom" for grammar-based tool calls. Defaults to "function" when absent.
|
|
230
298
|
*/
|
|
@@ -303,6 +371,18 @@ export type ModelCallFailureTransport =
|
|
|
303
371
|
"http"
|
|
304
372
|
/** WebSocket transport. */
|
|
305
373
|
| "websocket";
|
|
374
|
+
/**
|
|
375
|
+
* Final outcome of one logical model dispatch after response acceptance processing
|
|
376
|
+
*/
|
|
377
|
+
export type ModelCallFinishedOutcome =
|
|
378
|
+
/** The provider response was accepted for continued agent processing. */
|
|
379
|
+
"success"
|
|
380
|
+
/** The dispatch ended with a provider or transport error. */
|
|
381
|
+
| "error"
|
|
382
|
+
/** The dispatch was cancelled before an accepted response was produced. */
|
|
383
|
+
| "cancelled"
|
|
384
|
+
/** The provider response was rejected during post-response acceptance processing. */
|
|
385
|
+
| "rejected";
|
|
306
386
|
/**
|
|
307
387
|
* Finite reason code describing why the current turn was aborted
|
|
308
388
|
*/
|
|
@@ -665,7 +745,9 @@ export type ManagedSettingsEnforcedEscalation =
|
|
|
665
745
|
/** Unrestricted filesystem access outside the session's allowed directories. */
|
|
666
746
|
| "unrestricted_paths"
|
|
667
747
|
/** Unrestricted URL fetch access. */
|
|
668
|
-
| "unrestricted_urls"
|
|
748
|
+
| "unrestricted_urls"
|
|
749
|
+
/** A server-wide MCP "Always Allow" (or `--allow-tool <server>`) blanket that would auto-approve every tool from an MCP server. Capped to per-tool approval; each tool still prompts. */
|
|
750
|
+
| "server_wide_mcp_approval";
|
|
669
751
|
/**
|
|
670
752
|
* Exit plan mode action
|
|
671
753
|
*/
|
|
@@ -1156,6 +1238,7 @@ export interface IdleData {
|
|
|
1156
1238
|
* True when the preceding agentic loop was cancelled via abort signal
|
|
1157
1239
|
*/
|
|
1158
1240
|
aborted?: boolean;
|
|
1241
|
+
mode?: SessionMode;
|
|
1159
1242
|
}
|
|
1160
1243
|
/**
|
|
1161
1244
|
* Session event "session.title_changed". Session title change payload containing the new display title
|
|
@@ -2468,6 +2551,10 @@ export interface CompactionCompleteEvent {
|
|
|
2468
2551
|
* Conversation compaction results including success status, metrics, and optional error details
|
|
2469
2552
|
*/
|
|
2470
2553
|
export interface CompactionCompleteData {
|
|
2554
|
+
/**
|
|
2555
|
+
* Canonical model identifier used for model-specific behavior when replaying compaction
|
|
2556
|
+
*/
|
|
2557
|
+
behaviorModelId?: string;
|
|
2471
2558
|
/**
|
|
2472
2559
|
* Checkpoint snapshot number created for recovery
|
|
2473
2560
|
*/
|
|
@@ -2645,6 +2732,365 @@ export interface TaskCompleteData {
|
|
|
2645
2732
|
*/
|
|
2646
2733
|
summary?: string;
|
|
2647
2734
|
}
|
|
2735
|
+
/**
|
|
2736
|
+
* Session event "session.fusion_route_started". Experimental transient signal that HydraFusion routing has started for an eligible turn.
|
|
2737
|
+
*/
|
|
2738
|
+
/** @experimental */
|
|
2739
|
+
export interface FusionRouteStartedEvent {
|
|
2740
|
+
/**
|
|
2741
|
+
* Sub-agent instance identifier. Absent for events from the root/main agent and session-level events.
|
|
2742
|
+
*/
|
|
2743
|
+
agentId?: string;
|
|
2744
|
+
data: FusionRouteStartedData;
|
|
2745
|
+
/**
|
|
2746
|
+
* Always true for events that are transient and not persisted to the session event log on disk.
|
|
2747
|
+
*/
|
|
2748
|
+
ephemeral: true;
|
|
2749
|
+
/**
|
|
2750
|
+
* Unique event identifier (UUID v4), generated when the event is emitted
|
|
2751
|
+
*/
|
|
2752
|
+
id: string;
|
|
2753
|
+
/**
|
|
2754
|
+
* ID of the chronologically preceding event in the session, forming a linked chain. Null for the first event.
|
|
2755
|
+
*/
|
|
2756
|
+
parentId: string | null;
|
|
2757
|
+
/**
|
|
2758
|
+
* ISO 8601 timestamp when the event was created
|
|
2759
|
+
*/
|
|
2760
|
+
timestamp: string;
|
|
2761
|
+
/**
|
|
2762
|
+
* Type discriminator. Always "session.fusion_route_started".
|
|
2763
|
+
*/
|
|
2764
|
+
type: "session.fusion_route_started";
|
|
2765
|
+
}
|
|
2766
|
+
/**
|
|
2767
|
+
* Experimental transient signal that HydraFusion routing has started for an eligible turn.
|
|
2768
|
+
*/
|
|
2769
|
+
/** @experimental */
|
|
2770
|
+
export interface FusionRouteStartedData {
|
|
2771
|
+
/**
|
|
2772
|
+
* Identifier for this routing attempt before a durable Fusion turn exists.
|
|
2773
|
+
*/
|
|
2774
|
+
attemptId: string;
|
|
2775
|
+
/**
|
|
2776
|
+
* HydraFusion routing policy requested for the turn.
|
|
2777
|
+
*/
|
|
2778
|
+
policy?: string;
|
|
2779
|
+
/**
|
|
2780
|
+
* Synthetic HydraFusion model selected for the session.
|
|
2781
|
+
*/
|
|
2782
|
+
syntheticModel?: string;
|
|
2783
|
+
turnKind: FusionTurnKind;
|
|
2784
|
+
}
|
|
2785
|
+
/**
|
|
2786
|
+
* Session event "session.fusion_route_failed". Experimental durable HydraFusion routing failure and the deterministic concrete fallback selected for the turn.
|
|
2787
|
+
*/
|
|
2788
|
+
/** @experimental */
|
|
2789
|
+
export interface FusionRouteFailedEvent {
|
|
2790
|
+
/**
|
|
2791
|
+
* Sub-agent instance identifier. Absent for events from the root/main agent and session-level events.
|
|
2792
|
+
*/
|
|
2793
|
+
agentId?: string;
|
|
2794
|
+
data: FusionRouteFailedData;
|
|
2795
|
+
/**
|
|
2796
|
+
* When true, the event is transient and not persisted to the session event log on disk
|
|
2797
|
+
*/
|
|
2798
|
+
ephemeral?: boolean;
|
|
2799
|
+
/**
|
|
2800
|
+
* Unique event identifier (UUID v4), generated when the event is emitted
|
|
2801
|
+
*/
|
|
2802
|
+
id: string;
|
|
2803
|
+
/**
|
|
2804
|
+
* ID of the chronologically preceding event in the session, forming a linked chain. Null for the first event.
|
|
2805
|
+
*/
|
|
2806
|
+
parentId: string | null;
|
|
2807
|
+
/**
|
|
2808
|
+
* ISO 8601 timestamp when the event was created
|
|
2809
|
+
*/
|
|
2810
|
+
timestamp: string;
|
|
2811
|
+
/**
|
|
2812
|
+
* Type discriminator. Always "session.fusion_route_failed".
|
|
2813
|
+
*/
|
|
2814
|
+
type: "session.fusion_route_failed";
|
|
2815
|
+
}
|
|
2816
|
+
/**
|
|
2817
|
+
* Experimental durable HydraFusion routing failure and the deterministic concrete fallback selected for the turn.
|
|
2818
|
+
*/
|
|
2819
|
+
/** @experimental */
|
|
2820
|
+
export interface FusionRouteFailedData {
|
|
2821
|
+
/**
|
|
2822
|
+
* Identifier of the routing attempt that failed.
|
|
2823
|
+
*/
|
|
2824
|
+
attemptId: string;
|
|
2825
|
+
/**
|
|
2826
|
+
* Provider or validation error detail, when available.
|
|
2827
|
+
*/
|
|
2828
|
+
errorMessage?: string;
|
|
2829
|
+
/**
|
|
2830
|
+
* Concrete model selected as the deterministic fallback.
|
|
2831
|
+
*/
|
|
2832
|
+
fallbackModel: string;
|
|
2833
|
+
/**
|
|
2834
|
+
* HydraFusion routing policy requested for the turn.
|
|
2835
|
+
*/
|
|
2836
|
+
policy: string;
|
|
2837
|
+
/**
|
|
2838
|
+
* Stable machine-readable reason for the routing failure.
|
|
2839
|
+
*/
|
|
2840
|
+
reason: string;
|
|
2841
|
+
/**
|
|
2842
|
+
* Elapsed routing time in milliseconds before the failure.
|
|
2843
|
+
*/
|
|
2844
|
+
routingLatencyMs?: number;
|
|
2845
|
+
/**
|
|
2846
|
+
* Synthetic HydraFusion model selected for the session.
|
|
2847
|
+
*/
|
|
2848
|
+
syntheticModel: string;
|
|
2849
|
+
}
|
|
2850
|
+
/**
|
|
2851
|
+
* Session event "session.fusion_resolved". Experimental durable validated HydraFusion route and turn policy.
|
|
2852
|
+
*/
|
|
2853
|
+
/** @experimental */
|
|
2854
|
+
export interface FusionResolvedEvent {
|
|
2855
|
+
/**
|
|
2856
|
+
* Sub-agent instance identifier. Absent for events from the root/main agent and session-level events.
|
|
2857
|
+
*/
|
|
2858
|
+
agentId?: string;
|
|
2859
|
+
data: FusionResolvedData;
|
|
2860
|
+
/**
|
|
2861
|
+
* When true, the event is transient and not persisted to the session event log on disk
|
|
2862
|
+
*/
|
|
2863
|
+
ephemeral?: boolean;
|
|
2864
|
+
/**
|
|
2865
|
+
* Unique event identifier (UUID v4), generated when the event is emitted
|
|
2866
|
+
*/
|
|
2867
|
+
id: string;
|
|
2868
|
+
/**
|
|
2869
|
+
* ID of the chronologically preceding event in the session, forming a linked chain. Null for the first event.
|
|
2870
|
+
*/
|
|
2871
|
+
parentId: string | null;
|
|
2872
|
+
/**
|
|
2873
|
+
* ISO 8601 timestamp when the event was created
|
|
2874
|
+
*/
|
|
2875
|
+
timestamp: string;
|
|
2876
|
+
/**
|
|
2877
|
+
* Type discriminator. Always "session.fusion_resolved".
|
|
2878
|
+
*/
|
|
2879
|
+
type: "session.fusion_resolved";
|
|
2880
|
+
}
|
|
2881
|
+
/**
|
|
2882
|
+
* Experimental durable validated HydraFusion route and turn policy.
|
|
2883
|
+
*/
|
|
2884
|
+
/** @experimental */
|
|
2885
|
+
export interface FusionResolvedData {
|
|
2886
|
+
/**
|
|
2887
|
+
* Version of the validated HydraFusion event contract.
|
|
2888
|
+
*/
|
|
2889
|
+
contractVersion: number;
|
|
2890
|
+
/**
|
|
2891
|
+
* Concrete model used when the planned primary model cannot execute.
|
|
2892
|
+
*/
|
|
2893
|
+
fallbackModel: string;
|
|
2894
|
+
followUp?: FusionFollowUpRecommendation;
|
|
2895
|
+
/**
|
|
2896
|
+
* Concrete model recommended for eligible follow-up turns.
|
|
2897
|
+
*/
|
|
2898
|
+
followUpModel: string;
|
|
2899
|
+
/**
|
|
2900
|
+
* Stable identifier for the resolved HydraFusion turn.
|
|
2901
|
+
*/
|
|
2902
|
+
fusionId: string;
|
|
2903
|
+
/**
|
|
2904
|
+
* Version of the executable model universe used for selection.
|
|
2905
|
+
*/
|
|
2906
|
+
modelUniverseVersion?: string;
|
|
2907
|
+
pattern: FusionPattern;
|
|
2908
|
+
/**
|
|
2909
|
+
* Version of the validated execution-plan format.
|
|
2910
|
+
*/
|
|
2911
|
+
planVersion?: string;
|
|
2912
|
+
/**
|
|
2913
|
+
* HydraFusion routing policy used to resolve the plan.
|
|
2914
|
+
*/
|
|
2915
|
+
policy: string;
|
|
2916
|
+
/**
|
|
2917
|
+
* Version of the local routing policy.
|
|
2918
|
+
*/
|
|
2919
|
+
policyVersion?: string;
|
|
2920
|
+
/**
|
|
2921
|
+
* Concrete model selected for the primary solver phase.
|
|
2922
|
+
*/
|
|
2923
|
+
primaryModel: string;
|
|
2924
|
+
/**
|
|
2925
|
+
* Router implementation that supplied the plan.
|
|
2926
|
+
*/
|
|
2927
|
+
routeSource?: string;
|
|
2928
|
+
/**
|
|
2929
|
+
* Elapsed time in milliseconds required to resolve and validate the route.
|
|
2930
|
+
*/
|
|
2931
|
+
routingLatencyMs?: number;
|
|
2932
|
+
/**
|
|
2933
|
+
* Identifier of the local policy rule that matched.
|
|
2934
|
+
*/
|
|
2935
|
+
ruleId?: string;
|
|
2936
|
+
/**
|
|
2937
|
+
* Zero-based index of the local policy rule that matched.
|
|
2938
|
+
*/
|
|
2939
|
+
ruleIndex?: number;
|
|
2940
|
+
/**
|
|
2941
|
+
* Human-readable name of the local policy rule that matched.
|
|
2942
|
+
*/
|
|
2943
|
+
ruleName?: string;
|
|
2944
|
+
scores?: FusionScores;
|
|
2945
|
+
/**
|
|
2946
|
+
* Concrete model selected for the review or judge phase, when required.
|
|
2947
|
+
*/
|
|
2948
|
+
secondaryModel: string | null;
|
|
2949
|
+
/**
|
|
2950
|
+
* Synthetic HydraFusion model selected for the session.
|
|
2951
|
+
*/
|
|
2952
|
+
syntheticModel: string;
|
|
2953
|
+
/**
|
|
2954
|
+
* Identifier of the session turn associated with the route.
|
|
2955
|
+
*/
|
|
2956
|
+
turnId: string;
|
|
2957
|
+
}
|
|
2958
|
+
/**
|
|
2959
|
+
* Durable server recommendation for subsequent HydraFusion turns.
|
|
2960
|
+
*/
|
|
2961
|
+
/** @experimental */
|
|
2962
|
+
export interface FusionFollowUpRecommendation {
|
|
2963
|
+
compactionTurn: FusionFollowUpAction;
|
|
2964
|
+
userTurn: FusionFollowUpAction;
|
|
2965
|
+
}
|
|
2966
|
+
/**
|
|
2967
|
+
* Validated HydraFusion routing capability scores.
|
|
2968
|
+
*/
|
|
2969
|
+
/** @experimental */
|
|
2970
|
+
export interface FusionScores {
|
|
2971
|
+
/**
|
|
2972
|
+
* Code-generation capability score returned by the authenticated router.
|
|
2973
|
+
*/
|
|
2974
|
+
codeGen: number;
|
|
2975
|
+
/**
|
|
2976
|
+
* Debugging capability score returned by the authenticated router.
|
|
2977
|
+
*/
|
|
2978
|
+
debugging: number;
|
|
2979
|
+
/**
|
|
2980
|
+
* Reasoning capability score returned by the authenticated router.
|
|
2981
|
+
*/
|
|
2982
|
+
reasoning: number;
|
|
2983
|
+
/**
|
|
2984
|
+
* Tool-use capability score returned by the authenticated router.
|
|
2985
|
+
*/
|
|
2986
|
+
toolUse: number;
|
|
2987
|
+
}
|
|
2988
|
+
/**
|
|
2989
|
+
* Session event "session.fusion_completed". Experimental durable aggregate outcome of a HydraFusion turn.
|
|
2990
|
+
*/
|
|
2991
|
+
/** @experimental */
|
|
2992
|
+
export interface FusionCompletedEvent {
|
|
2993
|
+
/**
|
|
2994
|
+
* Sub-agent instance identifier. Absent for events from the root/main agent and session-level events.
|
|
2995
|
+
*/
|
|
2996
|
+
agentId?: string;
|
|
2997
|
+
data: FusionCompletedData;
|
|
2998
|
+
/**
|
|
2999
|
+
* When true, the event is transient and not persisted to the session event log on disk
|
|
3000
|
+
*/
|
|
3001
|
+
ephemeral?: boolean;
|
|
3002
|
+
/**
|
|
3003
|
+
* Unique event identifier (UUID v4), generated when the event is emitted
|
|
3004
|
+
*/
|
|
3005
|
+
id: string;
|
|
3006
|
+
/**
|
|
3007
|
+
* ID of the chronologically preceding event in the session, forming a linked chain. Null for the first event.
|
|
3008
|
+
*/
|
|
3009
|
+
parentId: string | null;
|
|
3010
|
+
/**
|
|
3011
|
+
* ISO 8601 timestamp when the event was created
|
|
3012
|
+
*/
|
|
3013
|
+
timestamp: string;
|
|
3014
|
+
/**
|
|
3015
|
+
* Type discriminator. Always "session.fusion_completed".
|
|
3016
|
+
*/
|
|
3017
|
+
type: "session.fusion_completed";
|
|
3018
|
+
}
|
|
3019
|
+
/**
|
|
3020
|
+
* Experimental durable aggregate outcome of a HydraFusion turn.
|
|
3021
|
+
*/
|
|
3022
|
+
/** @experimental */
|
|
3023
|
+
export interface FusionCompletedData {
|
|
3024
|
+
/**
|
|
3025
|
+
* Total cached input tokens reported across all phases.
|
|
3026
|
+
*/
|
|
3027
|
+
cachedTokens: number;
|
|
3028
|
+
/**
|
|
3029
|
+
* Total tokens written to prompt cache across all phases.
|
|
3030
|
+
*/
|
|
3031
|
+
cacheWriteTokens?: number;
|
|
3032
|
+
/**
|
|
3033
|
+
* Idempotency identifier for the authoritative final commit.
|
|
3034
|
+
*/
|
|
3035
|
+
commitId: string;
|
|
3036
|
+
/**
|
|
3037
|
+
* Reason the turn used a degraded route, when applicable.
|
|
3038
|
+
*/
|
|
3039
|
+
degradedReason: string | null;
|
|
3040
|
+
/**
|
|
3041
|
+
* Total elapsed execution time for the HydraFusion turn in milliseconds.
|
|
3042
|
+
*/
|
|
3043
|
+
durationMs: number;
|
|
3044
|
+
/**
|
|
3045
|
+
* Concrete model that supplied the authoritative final content.
|
|
3046
|
+
*/
|
|
3047
|
+
finalSourceModel: string | null;
|
|
3048
|
+
/**
|
|
3049
|
+
* Phase whose output supplied the authoritative final content.
|
|
3050
|
+
*/
|
|
3051
|
+
finalSourcePhaseId: string | null;
|
|
3052
|
+
/**
|
|
3053
|
+
* Concrete model recommended for eligible follow-up turns.
|
|
3054
|
+
*/
|
|
3055
|
+
followUpModel: string;
|
|
3056
|
+
/**
|
|
3057
|
+
* Stable identifier for the completed HydraFusion turn.
|
|
3058
|
+
*/
|
|
3059
|
+
fusionId: string;
|
|
3060
|
+
/**
|
|
3061
|
+
* Total input tokens consumed across all phases.
|
|
3062
|
+
*/
|
|
3063
|
+
inputTokens: number;
|
|
3064
|
+
/**
|
|
3065
|
+
* Stable aggregate outcome of the HydraFusion turn.
|
|
3066
|
+
*/
|
|
3067
|
+
outcome: string;
|
|
3068
|
+
/**
|
|
3069
|
+
* Total output tokens produced across all phases.
|
|
3070
|
+
*/
|
|
3071
|
+
outputTokens: number;
|
|
3072
|
+
pattern: FusionPattern;
|
|
3073
|
+
/**
|
|
3074
|
+
* Number of concrete phases attempted by the turn.
|
|
3075
|
+
*/
|
|
3076
|
+
phaseCount: number;
|
|
3077
|
+
/**
|
|
3078
|
+
* Total concrete model requests made across all phases.
|
|
3079
|
+
*/
|
|
3080
|
+
requestCount: number;
|
|
3081
|
+
/**
|
|
3082
|
+
* Synthetic HydraFusion model selected for the session.
|
|
3083
|
+
*/
|
|
3084
|
+
syntheticModel: string;
|
|
3085
|
+
/**
|
|
3086
|
+
* Total normalized AI-unit cost reported across all phases, in nano-AIU.
|
|
3087
|
+
*/
|
|
3088
|
+
totalNanoAiu: number;
|
|
3089
|
+
/**
|
|
3090
|
+
* Identifier of the session turn associated with the completion.
|
|
3091
|
+
*/
|
|
3092
|
+
turnId: string;
|
|
3093
|
+
}
|
|
2648
3094
|
/**
|
|
2649
3095
|
* Session event "user.message". Payload of `user.message` with displayed and model-transformed content, attachments, source/delivery metadata, mode, and telemetry IDs.
|
|
2650
3096
|
*/
|
|
@@ -3186,75 +3632,270 @@ export interface PendingMessagesModifiedEvent {
|
|
|
3186
3632
|
*/
|
|
3187
3633
|
timestamp: string;
|
|
3188
3634
|
/**
|
|
3189
|
-
* Type discriminator. Always "pending_messages.modified".
|
|
3635
|
+
* Type discriminator. Always "pending_messages.modified".
|
|
3636
|
+
*/
|
|
3637
|
+
type: "pending_messages.modified";
|
|
3638
|
+
}
|
|
3639
|
+
/**
|
|
3640
|
+
* Empty payload; the event signals that the pending message queue has changed
|
|
3641
|
+
*/
|
|
3642
|
+
export interface PendingMessagesModifiedData {
|
|
3643
|
+
}
|
|
3644
|
+
/**
|
|
3645
|
+
* Session event "assistant.turn_start". Turn initialization metadata including identifier and interaction tracking
|
|
3646
|
+
*/
|
|
3647
|
+
export interface AssistantTurnStartEvent {
|
|
3648
|
+
/**
|
|
3649
|
+
* Sub-agent instance identifier. Absent for events from the root/main agent and session-level events.
|
|
3650
|
+
*/
|
|
3651
|
+
agentId?: string;
|
|
3652
|
+
data: AssistantTurnStartData;
|
|
3653
|
+
/**
|
|
3654
|
+
* When true, the event is transient and not persisted to the session event log on disk
|
|
3655
|
+
*/
|
|
3656
|
+
ephemeral?: boolean;
|
|
3657
|
+
/**
|
|
3658
|
+
* Unique event identifier (UUID v4), generated when the event is emitted
|
|
3659
|
+
*/
|
|
3660
|
+
id: string;
|
|
3661
|
+
/**
|
|
3662
|
+
* ID of the chronologically preceding event in the session, forming a linked chain. Null for the first event.
|
|
3663
|
+
*/
|
|
3664
|
+
parentId: string | null;
|
|
3665
|
+
/**
|
|
3666
|
+
* ISO 8601 timestamp when the event was created
|
|
3667
|
+
*/
|
|
3668
|
+
timestamp: string;
|
|
3669
|
+
/**
|
|
3670
|
+
* Type discriminator. Always "assistant.turn_start".
|
|
3671
|
+
*/
|
|
3672
|
+
type: "assistant.turn_start";
|
|
3673
|
+
}
|
|
3674
|
+
/**
|
|
3675
|
+
* Turn initialization metadata including identifier and interaction tracking
|
|
3676
|
+
*/
|
|
3677
|
+
export interface AssistantTurnStartData {
|
|
3678
|
+
/**
|
|
3679
|
+
* CAPI interaction ID for correlating this turn with upstream telemetry
|
|
3680
|
+
*/
|
|
3681
|
+
interactionId?: string;
|
|
3682
|
+
/**
|
|
3683
|
+
* Model identifier used for this turn, when known
|
|
3684
|
+
*/
|
|
3685
|
+
model?: string;
|
|
3686
|
+
/**
|
|
3687
|
+
* Identifier for this turn within the agentic loop, typically a stringified turn number
|
|
3688
|
+
*/
|
|
3689
|
+
turnId: string;
|
|
3690
|
+
}
|
|
3691
|
+
/**
|
|
3692
|
+
* Session event "assistant.intent". Agent intent description for current activity or plan
|
|
3693
|
+
*/
|
|
3694
|
+
export interface AssistantIntentEvent {
|
|
3695
|
+
/**
|
|
3696
|
+
* Sub-agent instance identifier. Absent for events from the root/main agent and session-level events.
|
|
3697
|
+
*/
|
|
3698
|
+
agentId?: string;
|
|
3699
|
+
data: AssistantIntentData;
|
|
3700
|
+
/**
|
|
3701
|
+
* Always true for events that are transient and not persisted to the session event log on disk.
|
|
3702
|
+
*/
|
|
3703
|
+
ephemeral: true;
|
|
3704
|
+
/**
|
|
3705
|
+
* Unique event identifier (UUID v4), generated when the event is emitted
|
|
3706
|
+
*/
|
|
3707
|
+
id: string;
|
|
3708
|
+
/**
|
|
3709
|
+
* ID of the chronologically preceding event in the session, forming a linked chain. Null for the first event.
|
|
3710
|
+
*/
|
|
3711
|
+
parentId: string | null;
|
|
3712
|
+
/**
|
|
3713
|
+
* ISO 8601 timestamp when the event was created
|
|
3714
|
+
*/
|
|
3715
|
+
timestamp: string;
|
|
3716
|
+
/**
|
|
3717
|
+
* Type discriminator. Always "assistant.intent".
|
|
3718
|
+
*/
|
|
3719
|
+
type: "assistant.intent";
|
|
3720
|
+
}
|
|
3721
|
+
/**
|
|
3722
|
+
* Agent intent description for current activity or plan
|
|
3723
|
+
*/
|
|
3724
|
+
export interface AssistantIntentData {
|
|
3725
|
+
/**
|
|
3726
|
+
* Short description of what the agent is currently doing or planning to do
|
|
3727
|
+
*/
|
|
3728
|
+
intent: string;
|
|
3729
|
+
}
|
|
3730
|
+
/**
|
|
3731
|
+
* Session event "assistant.fusion_phase_started". Experimental transient HydraFusion phase/model/role signal.
|
|
3732
|
+
*/
|
|
3733
|
+
/** @experimental */
|
|
3734
|
+
export interface AssistantFusionPhaseStartedEvent {
|
|
3735
|
+
/**
|
|
3736
|
+
* Sub-agent instance identifier. Absent for events from the root/main agent and session-level events.
|
|
3737
|
+
*/
|
|
3738
|
+
agentId?: string;
|
|
3739
|
+
data: FusionPhaseStartedData;
|
|
3740
|
+
/**
|
|
3741
|
+
* Always true for events that are transient and not persisted to the session event log on disk.
|
|
3742
|
+
*/
|
|
3743
|
+
ephemeral: true;
|
|
3744
|
+
/**
|
|
3745
|
+
* Unique event identifier (UUID v4), generated when the event is emitted
|
|
3746
|
+
*/
|
|
3747
|
+
id: string;
|
|
3748
|
+
/**
|
|
3749
|
+
* ID of the chronologically preceding event in the session, forming a linked chain. Null for the first event.
|
|
3750
|
+
*/
|
|
3751
|
+
parentId: string | null;
|
|
3752
|
+
/**
|
|
3753
|
+
* ISO 8601 timestamp when the event was created
|
|
3754
|
+
*/
|
|
3755
|
+
timestamp: string;
|
|
3756
|
+
/**
|
|
3757
|
+
* Type discriminator. Always "assistant.fusion_phase_started".
|
|
3758
|
+
*/
|
|
3759
|
+
type: "assistant.fusion_phase_started";
|
|
3760
|
+
}
|
|
3761
|
+
/**
|
|
3762
|
+
* Experimental transient HydraFusion phase/model/role signal.
|
|
3763
|
+
*/
|
|
3764
|
+
/** @experimental */
|
|
3765
|
+
export interface FusionPhaseStartedData {
|
|
3766
|
+
conversationScope: FusionConversationScope;
|
|
3767
|
+
/**
|
|
3768
|
+
* Identifier of the HydraFusion turn containing the phase.
|
|
3769
|
+
*/
|
|
3770
|
+
fusionId: string;
|
|
3771
|
+
/**
|
|
3772
|
+
* Concrete model executing the phase.
|
|
3773
|
+
*/
|
|
3774
|
+
model: string;
|
|
3775
|
+
pattern: FusionPattern;
|
|
3776
|
+
/**
|
|
3777
|
+
* Stable identifier for the concrete phase.
|
|
3778
|
+
*/
|
|
3779
|
+
phaseId: string;
|
|
3780
|
+
phaseKind: FusionPhaseKind;
|
|
3781
|
+
/**
|
|
3782
|
+
* Semantic role assigned to the phase.
|
|
3783
|
+
*/
|
|
3784
|
+
role: string;
|
|
3785
|
+
}
|
|
3786
|
+
/**
|
|
3787
|
+
* Session event "assistant.fusion_phase_completed". Experimental durable HydraFusion phase output and lossless replay checkpoint.
|
|
3788
|
+
*/
|
|
3789
|
+
/** @experimental */
|
|
3790
|
+
export interface AssistantFusionPhaseCompletedEvent {
|
|
3791
|
+
/**
|
|
3792
|
+
* Sub-agent instance identifier. Absent for events from the root/main agent and session-level events.
|
|
3793
|
+
*/
|
|
3794
|
+
agentId?: string;
|
|
3795
|
+
data: FusionPhaseCompletedData;
|
|
3796
|
+
/**
|
|
3797
|
+
* When true, the event is transient and not persisted to the session event log on disk
|
|
3798
|
+
*/
|
|
3799
|
+
ephemeral?: boolean;
|
|
3800
|
+
/**
|
|
3801
|
+
* Unique event identifier (UUID v4), generated when the event is emitted
|
|
3802
|
+
*/
|
|
3803
|
+
id: string;
|
|
3804
|
+
/**
|
|
3805
|
+
* ID of the chronologically preceding event in the session, forming a linked chain. Null for the first event.
|
|
3806
|
+
*/
|
|
3807
|
+
parentId: string | null;
|
|
3808
|
+
/**
|
|
3809
|
+
* ISO 8601 timestamp when the event was created
|
|
3810
|
+
*/
|
|
3811
|
+
timestamp: string;
|
|
3812
|
+
/**
|
|
3813
|
+
* Type discriminator. Always "assistant.fusion_phase_completed".
|
|
3190
3814
|
*/
|
|
3191
|
-
type: "
|
|
3192
|
-
}
|
|
3193
|
-
/**
|
|
3194
|
-
* Empty payload; the event signals that the pending message queue has changed
|
|
3195
|
-
*/
|
|
3196
|
-
export interface PendingMessagesModifiedData {
|
|
3815
|
+
type: "assistant.fusion_phase_completed";
|
|
3197
3816
|
}
|
|
3198
3817
|
/**
|
|
3199
|
-
*
|
|
3818
|
+
* Experimental durable HydraFusion phase output and lossless replay checkpoint.
|
|
3200
3819
|
*/
|
|
3201
|
-
|
|
3820
|
+
/** @experimental */
|
|
3821
|
+
export interface FusionPhaseCompletedData {
|
|
3202
3822
|
/**
|
|
3203
|
-
*
|
|
3823
|
+
* Provider-normalized textual output produced by the phase.
|
|
3204
3824
|
*/
|
|
3205
|
-
|
|
3206
|
-
|
|
3825
|
+
content: string;
|
|
3826
|
+
conversationScope: FusionConversationScope;
|
|
3207
3827
|
/**
|
|
3208
|
-
*
|
|
3828
|
+
* Elapsed execution time for the phase in milliseconds.
|
|
3209
3829
|
*/
|
|
3210
|
-
|
|
3830
|
+
durationMs: number;
|
|
3211
3831
|
/**
|
|
3212
|
-
*
|
|
3832
|
+
* Identifier of the HydraFusion turn containing the phase.
|
|
3213
3833
|
*/
|
|
3214
|
-
|
|
3834
|
+
fusionId: string;
|
|
3215
3835
|
/**
|
|
3216
|
-
*
|
|
3836
|
+
* Concrete model that executed the phase.
|
|
3217
3837
|
*/
|
|
3218
|
-
|
|
3838
|
+
model: string;
|
|
3219
3839
|
/**
|
|
3220
|
-
*
|
|
3840
|
+
* Stable identifier for the completed phase.
|
|
3221
3841
|
*/
|
|
3222
|
-
|
|
3842
|
+
phaseId: string;
|
|
3843
|
+
phaseKind: FusionPhaseKind;
|
|
3223
3844
|
/**
|
|
3224
|
-
*
|
|
3845
|
+
* Semantic role assigned to the completed phase.
|
|
3225
3846
|
*/
|
|
3226
|
-
|
|
3847
|
+
role: string;
|
|
3848
|
+
status: FusionPhaseStatus;
|
|
3849
|
+
usage: FusionPhaseUsage;
|
|
3850
|
+
/**
|
|
3851
|
+
* Structured judge or critic verdict, when the phase produces one.
|
|
3852
|
+
*/
|
|
3853
|
+
verdict: string | null;
|
|
3227
3854
|
}
|
|
3228
3855
|
/**
|
|
3229
|
-
*
|
|
3856
|
+
* Aggregate concrete-model usage for one HydraFusion phase.
|
|
3230
3857
|
*/
|
|
3231
|
-
|
|
3858
|
+
/** @experimental */
|
|
3859
|
+
export interface FusionPhaseUsage {
|
|
3232
3860
|
/**
|
|
3233
|
-
*
|
|
3861
|
+
* Total cached input tokens reported for the phase.
|
|
3234
3862
|
*/
|
|
3235
|
-
|
|
3863
|
+
cachedTokens: number;
|
|
3236
3864
|
/**
|
|
3237
|
-
*
|
|
3865
|
+
* Total tokens written to prompt cache during the phase.
|
|
3238
3866
|
*/
|
|
3239
|
-
|
|
3867
|
+
cacheWriteTokens?: number;
|
|
3240
3868
|
/**
|
|
3241
|
-
*
|
|
3869
|
+
* Total input tokens consumed by the phase.
|
|
3242
3870
|
*/
|
|
3243
|
-
|
|
3871
|
+
inputTokens: number;
|
|
3872
|
+
/**
|
|
3873
|
+
* Total output tokens produced by the phase.
|
|
3874
|
+
*/
|
|
3875
|
+
outputTokens: number;
|
|
3876
|
+
/**
|
|
3877
|
+
* Number of concrete model requests made by the phase.
|
|
3878
|
+
*/
|
|
3879
|
+
requestCount: number;
|
|
3880
|
+
/**
|
|
3881
|
+
* Total normalized AI-unit cost reported for the phase, in nano-AIU.
|
|
3882
|
+
*/
|
|
3883
|
+
totalNanoAiu: number;
|
|
3244
3884
|
}
|
|
3245
3885
|
/**
|
|
3246
|
-
* Session event "assistant.
|
|
3886
|
+
* Session event "assistant.fusion_phase_failed". Experimental durable typed HydraFusion phase failure and degradation transition.
|
|
3247
3887
|
*/
|
|
3248
|
-
|
|
3888
|
+
/** @experimental */
|
|
3889
|
+
export interface AssistantFusionPhaseFailedEvent {
|
|
3249
3890
|
/**
|
|
3250
3891
|
* Sub-agent instance identifier. Absent for events from the root/main agent and session-level events.
|
|
3251
3892
|
*/
|
|
3252
3893
|
agentId?: string;
|
|
3253
|
-
data:
|
|
3894
|
+
data: FusionPhaseFailedData;
|
|
3254
3895
|
/**
|
|
3255
|
-
*
|
|
3896
|
+
* When true, the event is transient and not persisted to the session event log on disk
|
|
3256
3897
|
*/
|
|
3257
|
-
ephemeral
|
|
3898
|
+
ephemeral?: boolean;
|
|
3258
3899
|
/**
|
|
3259
3900
|
* Unique event identifier (UUID v4), generated when the event is emitted
|
|
3260
3901
|
*/
|
|
@@ -3268,18 +3909,51 @@ export interface AssistantIntentEvent {
|
|
|
3268
3909
|
*/
|
|
3269
3910
|
timestamp: string;
|
|
3270
3911
|
/**
|
|
3271
|
-
* Type discriminator. Always "assistant.
|
|
3912
|
+
* Type discriminator. Always "assistant.fusion_phase_failed".
|
|
3272
3913
|
*/
|
|
3273
|
-
type: "assistant.
|
|
3914
|
+
type: "assistant.fusion_phase_failed";
|
|
3274
3915
|
}
|
|
3275
3916
|
/**
|
|
3276
|
-
*
|
|
3917
|
+
* Experimental durable typed HydraFusion phase failure and degradation transition.
|
|
3277
3918
|
*/
|
|
3278
|
-
|
|
3919
|
+
/** @experimental */
|
|
3920
|
+
export interface FusionPhaseFailedData {
|
|
3921
|
+
conversationScope: FusionConversationScope;
|
|
3279
3922
|
/**
|
|
3280
|
-
*
|
|
3923
|
+
* Identifier of the fallback phase used to continue the turn after degradation.
|
|
3281
3924
|
*/
|
|
3282
|
-
|
|
3925
|
+
degradedToPhaseId?: string;
|
|
3926
|
+
/**
|
|
3927
|
+
* Elapsed execution time before the phase failed, in milliseconds.
|
|
3928
|
+
*/
|
|
3929
|
+
durationMs: number;
|
|
3930
|
+
/**
|
|
3931
|
+
* Provider or execution error detail, when available.
|
|
3932
|
+
*/
|
|
3933
|
+
errorMessage?: string;
|
|
3934
|
+
/**
|
|
3935
|
+
* Identifier of the HydraFusion turn containing the phase.
|
|
3936
|
+
*/
|
|
3937
|
+
fusionId: string;
|
|
3938
|
+
/**
|
|
3939
|
+
* Concrete model that attempted the phase.
|
|
3940
|
+
*/
|
|
3941
|
+
model: string;
|
|
3942
|
+
/**
|
|
3943
|
+
* Stable identifier for the failed phase.
|
|
3944
|
+
*/
|
|
3945
|
+
phaseId: string;
|
|
3946
|
+
phaseKind: FusionPhaseKind;
|
|
3947
|
+
/**
|
|
3948
|
+
* Stable machine-readable reason for the phase failure.
|
|
3949
|
+
*/
|
|
3950
|
+
reason: string;
|
|
3951
|
+
/**
|
|
3952
|
+
* Semantic role assigned to the failed phase.
|
|
3953
|
+
*/
|
|
3954
|
+
role: string;
|
|
3955
|
+
status: FusionPhaseStatus;
|
|
3956
|
+
usage: FusionPhaseUsage;
|
|
3283
3957
|
}
|
|
3284
3958
|
/**
|
|
3285
3959
|
* Session event "assistant.server_tool_progress". Live progress signal for a provider-hosted server tool (e.g. hosted web search) while it runs, before the finalized serverTools envelope lands on the terminal assistant.message
|
|
@@ -3569,6 +4243,12 @@ export interface AssistantMessageData {
|
|
|
3569
4243
|
* Encrypted reasoning content from OpenAI models. Session-bound and stripped on resume.
|
|
3570
4244
|
*/
|
|
3571
4245
|
encryptedContent?: string;
|
|
4246
|
+
/**
|
|
4247
|
+
* Experimental HydraFusion source attribution for this ordinary authoritative assistant message.
|
|
4248
|
+
*
|
|
4249
|
+
* @experimental
|
|
4250
|
+
*/
|
|
4251
|
+
fusion?: FusionAttribution;
|
|
3572
4252
|
/**
|
|
3573
4253
|
* CAPI interaction ID for correlating this message with upstream telemetry
|
|
3574
4254
|
*/
|
|
@@ -3594,6 +4274,7 @@ export interface AssistantMessageData {
|
|
|
3594
4274
|
* Generation phase for phased-output models (e.g., thinking vs. response phases)
|
|
3595
4275
|
*/
|
|
3596
4276
|
phase?: string;
|
|
4277
|
+
reasoningBlocks?: AssistantMessageReasoningBlocks;
|
|
3597
4278
|
/**
|
|
3598
4279
|
* Opaque/encrypted extended thinking data from Anthropic models. Session-bound and stripped on resume.
|
|
3599
4280
|
*/
|
|
@@ -3756,6 +4437,70 @@ export interface CitationLocationBlock {
|
|
|
3756
4437
|
*/
|
|
3757
4438
|
type: "block";
|
|
3758
4439
|
}
|
|
4440
|
+
/**
|
|
4441
|
+
* Experimental attribution linking an ordinary event to the HydraFusion turn, phase, and concrete source that produced it.
|
|
4442
|
+
*/
|
|
4443
|
+
/** @experimental */
|
|
4444
|
+
export interface FusionAttribution {
|
|
4445
|
+
/**
|
|
4446
|
+
* Idempotency identifier for the authoritative commit, when the event belongs to the selected output.
|
|
4447
|
+
*/
|
|
4448
|
+
commitId?: string;
|
|
4449
|
+
/**
|
|
4450
|
+
* Conversation scope in which the concrete phase executed.
|
|
4451
|
+
*/
|
|
4452
|
+
conversationScope?: string;
|
|
4453
|
+
/**
|
|
4454
|
+
* Stable identifier for the HydraFusion turn that produced the event.
|
|
4455
|
+
*/
|
|
4456
|
+
fusionId: string;
|
|
4457
|
+
/**
|
|
4458
|
+
* HydraFusion orchestration pattern selected for the turn.
|
|
4459
|
+
*/
|
|
4460
|
+
pattern: string;
|
|
4461
|
+
/**
|
|
4462
|
+
* Identifier of the concrete phase that produced the event.
|
|
4463
|
+
*/
|
|
4464
|
+
phaseId?: string;
|
|
4465
|
+
/**
|
|
4466
|
+
* Kind of concrete phase that produced the event.
|
|
4467
|
+
*/
|
|
4468
|
+
phaseKind?: string;
|
|
4469
|
+
/**
|
|
4470
|
+
* HydraFusion routing policy used for the turn.
|
|
4471
|
+
*/
|
|
4472
|
+
policy: string;
|
|
4473
|
+
/**
|
|
4474
|
+
* Semantic role assigned to the concrete phase.
|
|
4475
|
+
*/
|
|
4476
|
+
role?: string;
|
|
4477
|
+
/**
|
|
4478
|
+
* Concrete model that produced the attributed event.
|
|
4479
|
+
*/
|
|
4480
|
+
sourceModel?: string;
|
|
4481
|
+
/**
|
|
4482
|
+
* Phase whose output supplied the authoritative content, when different from the executing phase.
|
|
4483
|
+
*/
|
|
4484
|
+
sourcePhaseId?: string;
|
|
4485
|
+
/**
|
|
4486
|
+
* Synthetic HydraFusion model selected for the session.
|
|
4487
|
+
*/
|
|
4488
|
+
syntheticModel: string;
|
|
4489
|
+
}
|
|
4490
|
+
/**
|
|
4491
|
+
* Neutral provider-tagged reasoning content blocks preserved verbatim for round-tripping
|
|
4492
|
+
*/
|
|
4493
|
+
/** @experimental */
|
|
4494
|
+
export interface AssistantMessageReasoningBlocks {
|
|
4495
|
+
/**
|
|
4496
|
+
* Provider-native reasoning content blocks (e.g. Anthropic `thinking` / `redacted_thinking`) preserved verbatim, in order. A single response can carry several, each signed over the content preceding it, so dropping or reordering any of them invalidates the rest.
|
|
4497
|
+
*/
|
|
4498
|
+
blocks?: JsonValue[];
|
|
4499
|
+
/**
|
|
4500
|
+
* Model provider that produced these reasoning blocks.
|
|
4501
|
+
*/
|
|
4502
|
+
provider: string;
|
|
4503
|
+
}
|
|
3759
4504
|
/**
|
|
3760
4505
|
* Neutral provider-tagged server-side tool-use payload (tool search, advisor) for verbatim round-tripping
|
|
3761
4506
|
*/
|
|
@@ -4065,6 +4810,12 @@ export interface AssistantUsageData {
|
|
|
4065
4810
|
* Finish reason reported by the model for this API call (e.g. "stop", "length", "tool_calls", "content_filter"). Normalized to OpenAI vocabulary; for Anthropic models a "refusal" stop reason maps to "content_filter".
|
|
4066
4811
|
*/
|
|
4067
4812
|
finishReason?: string;
|
|
4813
|
+
/**
|
|
4814
|
+
* Experimental HydraFusion attribution for this concrete model call's usage.
|
|
4815
|
+
*
|
|
4816
|
+
* @experimental
|
|
4817
|
+
*/
|
|
4818
|
+
fusion?: FusionAttribution;
|
|
4068
4819
|
/**
|
|
4069
4820
|
* What initiated this API call (e.g., "sub-agent", "mcp-sampling"); absent for user-initiated calls
|
|
4070
4821
|
*/
|
|
@@ -4105,6 +4856,10 @@ export interface AssistantUsageData {
|
|
|
4105
4856
|
* Number of output tokens produced
|
|
4106
4857
|
*/
|
|
4107
4858
|
outputTokens?: number;
|
|
4859
|
+
/**
|
|
4860
|
+
* Time to first observable model output in milliseconds. Includes text, reasoning, and tool-call output; only available for streaming requests that produce observable output.
|
|
4861
|
+
*/
|
|
4862
|
+
outputTtftMs?: number;
|
|
4108
4863
|
/**
|
|
4109
4864
|
* @deprecated
|
|
4110
4865
|
* Parent tool call ID when this usage originates from a sub-agent
|
|
@@ -4228,6 +4983,12 @@ export interface ModelCallFailureData {
|
|
|
4228
4983
|
*/
|
|
4229
4984
|
errorType?: string;
|
|
4230
4985
|
failureKind?: ModelCallFailureKind;
|
|
4986
|
+
/**
|
|
4987
|
+
* Experimental HydraFusion attribution for this failed concrete model call.
|
|
4988
|
+
*
|
|
4989
|
+
* @experimental
|
|
4990
|
+
*/
|
|
4991
|
+
fusion?: FusionAttribution;
|
|
4231
4992
|
/**
|
|
4232
4993
|
* What initiated this API call (e.g., "sub-agent", "mcp-sampling"); absent for user-initiated calls
|
|
4233
4994
|
*/
|
|
@@ -4313,6 +5074,62 @@ export interface ModelCallFailureRequestFingerprint {
|
|
|
4313
5074
|
*/
|
|
4314
5075
|
toolResultMessageCount: number;
|
|
4315
5076
|
}
|
|
5077
|
+
/**
|
|
5078
|
+
* Session event "model.call_finished". Final lifecycle outcome for one logical model dispatch. A logical dispatch may include internal reconnect or fallback work, so event count is not provider HTTP-request count.
|
|
5079
|
+
*/
|
|
5080
|
+
export interface ModelCallFinishedEvent {
|
|
5081
|
+
/**
|
|
5082
|
+
* Sub-agent instance identifier. Absent for events from the root/main agent and session-level events.
|
|
5083
|
+
*/
|
|
5084
|
+
agentId?: string;
|
|
5085
|
+
data: ModelCallFinishedData;
|
|
5086
|
+
/**
|
|
5087
|
+
* Always true for events that are transient and not persisted to the session event log on disk.
|
|
5088
|
+
*/
|
|
5089
|
+
ephemeral: true;
|
|
5090
|
+
/**
|
|
5091
|
+
* Unique event identifier (UUID v4), generated when the event is emitted
|
|
5092
|
+
*/
|
|
5093
|
+
id: string;
|
|
5094
|
+
/**
|
|
5095
|
+
* ID of the chronologically preceding event in the session, forming a linked chain. Null for the first event.
|
|
5096
|
+
*/
|
|
5097
|
+
parentId: string | null;
|
|
5098
|
+
/**
|
|
5099
|
+
* ISO 8601 timestamp when the event was created
|
|
5100
|
+
*/
|
|
5101
|
+
timestamp: string;
|
|
5102
|
+
/**
|
|
5103
|
+
* Type discriminator. Always "model.call_finished".
|
|
5104
|
+
*/
|
|
5105
|
+
type: "model.call_finished";
|
|
5106
|
+
}
|
|
5107
|
+
/**
|
|
5108
|
+
* Final lifecycle outcome for one logical model dispatch. A logical dispatch may include internal reconnect or fallback work, so event count is not provider HTTP-request count.
|
|
5109
|
+
*/
|
|
5110
|
+
export interface ModelCallFinishedData {
|
|
5111
|
+
/**
|
|
5112
|
+
* Whether an accepted successful response requested the exact name and command semantics of a built-in file edit tool, including an external tool explicitly replacing that built-in name. Absent when the logical dispatch did not produce an accepted response.
|
|
5113
|
+
*/
|
|
5114
|
+
containsBuiltInFileEditRequest?: boolean;
|
|
5115
|
+
/**
|
|
5116
|
+
* Monotonic elapsed time spent in the logical model dispatch, including any internal transport reconnect or fallback and excluding orchestrator retry backoff, tool execution, confirmations, and post-response processing
|
|
5117
|
+
*/
|
|
5118
|
+
dispatchDurationMs: number;
|
|
5119
|
+
/**
|
|
5120
|
+
* Version of the built-in file-edit semantic classifier used for this event
|
|
5121
|
+
*/
|
|
5122
|
+
editClassifierVersion: number;
|
|
5123
|
+
/**
|
|
5124
|
+
* Identifier of the user interaction that owns the model dispatch, matching assistant.turn_start.interactionId when available
|
|
5125
|
+
*/
|
|
5126
|
+
interactionId?: string;
|
|
5127
|
+
outcome: ModelCallFinishedOutcome;
|
|
5128
|
+
/**
|
|
5129
|
+
* Agent-loop iteration within the interaction that initiated the model dispatch
|
|
5130
|
+
*/
|
|
5131
|
+
turnId: string;
|
|
5132
|
+
}
|
|
4316
5133
|
/**
|
|
4317
5134
|
* Session event "abort". Turn abort information including the reason for termination
|
|
4318
5135
|
*/
|
|
@@ -4438,6 +5255,12 @@ export interface ToolExecutionStartData {
|
|
|
4438
5255
|
* When true, the tool output should be displayed expanded (verbatim) in the CLI timeline
|
|
4439
5256
|
*/
|
|
4440
5257
|
displayVerbatim?: boolean;
|
|
5258
|
+
/**
|
|
5259
|
+
* Experimental HydraFusion attribution for this tool execution.
|
|
5260
|
+
*
|
|
5261
|
+
* @experimental
|
|
5262
|
+
*/
|
|
5263
|
+
fusion?: FusionAttribution;
|
|
4441
5264
|
/**
|
|
4442
5265
|
* Name of the MCP server hosting this tool, when the tool is an MCP tool
|
|
4443
5266
|
*/
|
|
@@ -4647,6 +5470,12 @@ export interface ToolExecutionCompleteEvent {
|
|
|
4647
5470
|
*/
|
|
4648
5471
|
export interface ToolExecutionCompleteData {
|
|
4649
5472
|
error?: ToolExecutionCompleteError;
|
|
5473
|
+
/**
|
|
5474
|
+
* Experimental HydraFusion attribution for this tool completion.
|
|
5475
|
+
*
|
|
5476
|
+
* @experimental
|
|
5477
|
+
*/
|
|
5478
|
+
fusion?: FusionAttribution;
|
|
4650
5479
|
/**
|
|
4651
5480
|
* CAPI interaction ID for correlating this tool execution with upstream telemetry
|
|
4652
5481
|
*/
|
|
@@ -4904,6 +5733,10 @@ export interface ToolExecutionCompleteContentShellExit {
|
|
|
4904
5733
|
* Exit code from the completed shell command
|
|
4905
5734
|
*/
|
|
4906
5735
|
exitCode: number;
|
|
5736
|
+
/**
|
|
5737
|
+
* Path reported in the shell session's filesystem namespace when shell output exceeded the configured large-output threshold.
|
|
5738
|
+
*/
|
|
5739
|
+
outputFilePath?: string;
|
|
4907
5740
|
/**
|
|
4908
5741
|
* Output associated with this shell command, if available. May be partial, truncated, or a preview; not guaranteed to be full output.
|
|
4909
5742
|
*/
|
|
@@ -5341,6 +6174,14 @@ export interface SubagentStartedData {
|
|
|
5341
6174
|
* Internal name of the sub-agent
|
|
5342
6175
|
*/
|
|
5343
6176
|
agentName: string;
|
|
6177
|
+
/**
|
|
6178
|
+
* Type of the sub-agent selected at spawn time.
|
|
6179
|
+
*/
|
|
6180
|
+
agentType?: string;
|
|
6181
|
+
/**
|
|
6182
|
+
* Whether the sub-agent runs synchronously or in the background.
|
|
6183
|
+
*/
|
|
6184
|
+
executionMode?: string;
|
|
5344
6185
|
/**
|
|
5345
6186
|
* Root id of the factory run that spawned this sub-agent, when it was spawned by one.
|
|
5346
6187
|
*/
|
|
@@ -5349,11 +6190,70 @@ export interface SubagentStartedData {
|
|
|
5349
6190
|
* Model the sub-agent will run with, when known at start.
|
|
5350
6191
|
*/
|
|
5351
6192
|
model?: string;
|
|
6193
|
+
/**
|
|
6194
|
+
* Task-registry ID of the spawning sub-agent. Absent when the root session spawned this child.
|
|
6195
|
+
*/
|
|
6196
|
+
parentId?: string;
|
|
6197
|
+
/**
|
|
6198
|
+
* Whether this sub-agent can be resumed. Currently always false.
|
|
6199
|
+
*/
|
|
6200
|
+
resumable?: boolean;
|
|
5352
6201
|
/**
|
|
5353
6202
|
* Tool call ID of the parent tool invocation that spawned this sub-agent
|
|
5354
6203
|
*/
|
|
5355
6204
|
toolCallId: string;
|
|
5356
6205
|
}
|
|
6206
|
+
/**
|
|
6207
|
+
* Session event "subagent.configured". Resolved runtime configuration for a configured sub-agent
|
|
6208
|
+
*/
|
|
6209
|
+
export interface SubagentConfiguredEvent {
|
|
6210
|
+
/**
|
|
6211
|
+
* Sub-agent instance identifier. Absent for events from the root/main agent and session-level events.
|
|
6212
|
+
*/
|
|
6213
|
+
agentId?: string;
|
|
6214
|
+
data: SubagentConfiguredData;
|
|
6215
|
+
/**
|
|
6216
|
+
* When true, the event is transient and not persisted to the session event log on disk
|
|
6217
|
+
*/
|
|
6218
|
+
ephemeral?: boolean;
|
|
6219
|
+
/**
|
|
6220
|
+
* Unique event identifier (UUID v4), generated when the event is emitted
|
|
6221
|
+
*/
|
|
6222
|
+
id: string;
|
|
6223
|
+
/**
|
|
6224
|
+
* ID of the chronologically preceding event in the session, forming a linked chain. Null for the first event.
|
|
6225
|
+
*/
|
|
6226
|
+
parentId: string | null;
|
|
6227
|
+
/**
|
|
6228
|
+
* ISO 8601 timestamp when the event was created
|
|
6229
|
+
*/
|
|
6230
|
+
timestamp: string;
|
|
6231
|
+
/**
|
|
6232
|
+
* Type discriminator. Always "subagent.configured".
|
|
6233
|
+
*/
|
|
6234
|
+
type: "subagent.configured";
|
|
6235
|
+
}
|
|
6236
|
+
/**
|
|
6237
|
+
* Resolved runtime configuration for a configured sub-agent
|
|
6238
|
+
*/
|
|
6239
|
+
export interface SubagentConfiguredData {
|
|
6240
|
+
/**
|
|
6241
|
+
* Resolved context tier, when configured for the model
|
|
6242
|
+
*/
|
|
6243
|
+
contextTier?: string;
|
|
6244
|
+
/**
|
|
6245
|
+
* Resolved model the sub-agent will run with
|
|
6246
|
+
*/
|
|
6247
|
+
model: string;
|
|
6248
|
+
/**
|
|
6249
|
+
* Whether the sub-agent accepts follow-up turns
|
|
6250
|
+
*/
|
|
6251
|
+
multiTurn: boolean;
|
|
6252
|
+
/**
|
|
6253
|
+
* Resolved reasoning effort, when configured for the model
|
|
6254
|
+
*/
|
|
6255
|
+
reasoningEffort?: string;
|
|
6256
|
+
}
|
|
5357
6257
|
/**
|
|
5358
6258
|
* Session event "subagent.completed". Sub-agent completion details for successful execution
|
|
5359
6259
|
*/
|
|
@@ -5400,10 +6300,30 @@ export interface SubagentCompletedData {
|
|
|
5400
6300
|
* Whether the sub-agent was torn down by cancellation - its own abort, or an ancestor being killed - instead of finishing its work. Cancellation is not a failure, so the run still reports completion; this distinguishes a torn-down sub-agent from one that ran to the end.
|
|
5401
6301
|
*/
|
|
5402
6302
|
cancelled?: boolean;
|
|
6303
|
+
/**
|
|
6304
|
+
* Whether the first model actually dispatched matched the user's configured preference
|
|
6305
|
+
*/
|
|
6306
|
+
configuredModelMatchesActual?: boolean;
|
|
6307
|
+
/**
|
|
6308
|
+
* Concrete model the user configured for this sub-agent via `/subagents`, when present
|
|
6309
|
+
*/
|
|
6310
|
+
configuredModelPreference?: string;
|
|
5403
6311
|
/**
|
|
5404
6312
|
* Wall-clock duration of the sub-agent execution in milliseconds
|
|
5405
6313
|
*/
|
|
5406
6314
|
durationMs?: number;
|
|
6315
|
+
/**
|
|
6316
|
+
* Whether the explicit task-call model matched the user's configured preference
|
|
6317
|
+
*/
|
|
6318
|
+
explicitModelMatchesPreference?: boolean;
|
|
6319
|
+
/**
|
|
6320
|
+
* Explicit model supplied by the parent agent on the task call, when present
|
|
6321
|
+
*/
|
|
6322
|
+
explicitModelOverride?: string;
|
|
6323
|
+
/**
|
|
6324
|
+
* First model for which the sub-agent started an inference request, when one was dispatched
|
|
6325
|
+
*/
|
|
6326
|
+
firstDispatchedModel?: string;
|
|
5407
6327
|
/**
|
|
5408
6328
|
* Model used by the sub-agent
|
|
5409
6329
|
*/
|
|
@@ -5463,6 +6383,14 @@ export interface SubagentFailedData {
|
|
|
5463
6383
|
* Internal name of the sub-agent
|
|
5464
6384
|
*/
|
|
5465
6385
|
agentName: string;
|
|
6386
|
+
/**
|
|
6387
|
+
* Whether the first model actually dispatched matched the user's configured preference
|
|
6388
|
+
*/
|
|
6389
|
+
configuredModelMatchesActual?: boolean;
|
|
6390
|
+
/**
|
|
6391
|
+
* Concrete model the user configured for this sub-agent via `/subagents`, when present
|
|
6392
|
+
*/
|
|
6393
|
+
configuredModelPreference?: string;
|
|
5466
6394
|
/**
|
|
5467
6395
|
* Wall-clock duration of the sub-agent execution in milliseconds
|
|
5468
6396
|
*/
|
|
@@ -5471,6 +6399,18 @@ export interface SubagentFailedData {
|
|
|
5471
6399
|
* Error message describing why the sub-agent failed
|
|
5472
6400
|
*/
|
|
5473
6401
|
error: string;
|
|
6402
|
+
/**
|
|
6403
|
+
* Whether the explicit task-call model matched the user's configured preference
|
|
6404
|
+
*/
|
|
6405
|
+
explicitModelMatchesPreference?: boolean;
|
|
6406
|
+
/**
|
|
6407
|
+
* Explicit model supplied by the parent agent on the task call, when present
|
|
6408
|
+
*/
|
|
6409
|
+
explicitModelOverride?: string;
|
|
6410
|
+
/**
|
|
6411
|
+
* First model for which the sub-agent started an inference request, when one was dispatched
|
|
6412
|
+
*/
|
|
6413
|
+
firstDispatchedModel?: string;
|
|
5474
6414
|
/**
|
|
5475
6415
|
* Model selected for the sub-agent, when known
|
|
5476
6416
|
*/
|
|
@@ -5616,6 +6556,10 @@ export interface HookStartData {
|
|
|
5616
6556
|
* Input data passed to the hook
|
|
5617
6557
|
*/
|
|
5618
6558
|
input?: JsonValue;
|
|
6559
|
+
/**
|
|
6560
|
+
* Tool call ID of the parent tool invocation when this event originates from a sub-agent
|
|
6561
|
+
*/
|
|
6562
|
+
parentToolCallId?: string;
|
|
5619
6563
|
}
|
|
5620
6564
|
/**
|
|
5621
6565
|
* Session event "hook.end". Hook invocation completion details including output, success status, and error information
|
|
@@ -5664,6 +6608,10 @@ export interface HookEndData {
|
|
|
5664
6608
|
* Output data produced by the hook
|
|
5665
6609
|
*/
|
|
5666
6610
|
output?: JsonValue;
|
|
6611
|
+
/**
|
|
6612
|
+
* Tool call ID of the parent tool invocation when this event originates from a sub-agent
|
|
6613
|
+
*/
|
|
6614
|
+
parentToolCallId?: string;
|
|
5667
6615
|
/**
|
|
5668
6616
|
* Whether the hook completed successfully
|
|
5669
6617
|
*/
|
|
@@ -6784,6 +7732,10 @@ export interface PermissionPromptRequestMcp {
|
|
|
6784
7732
|
* @experimental
|
|
6785
7733
|
*/
|
|
6786
7734
|
assistedApproval?: PermissionAssistedApproval;
|
|
7735
|
+
/**
|
|
7736
|
+
* Whether the host may offer a server-wide "approve all tools from this server" blanket. Absent is treated as true; the runtime sends false when managed policy disables bypass-permissions mode, which forbids the server-wide escalation while still allowing per-tool approval.
|
|
7737
|
+
*/
|
|
7738
|
+
canOfferServerWideApproval?: boolean;
|
|
6787
7739
|
/**
|
|
6788
7740
|
* Prompt kind discriminator
|
|
6789
7741
|
*/
|
|
@@ -8709,6 +9661,10 @@ export interface ManagedSettingsResolvedData {
|
|
|
8709
9661
|
* Whether at least two managed sources supplied permission allowlists, so enforcement intersects them and the flattened settings payload omits `permissions.allow`.
|
|
8710
9662
|
*/
|
|
8711
9663
|
permissionsAllowIntersected?: boolean;
|
|
9664
|
+
/**
|
|
9665
|
+
* Whether the effective sandbox policy forces the sandbox on *only* because managed policy could not be determined, rather than because the policy requires it. Lets clients tell a user whose `--no-sandbox` was overridden that the sandbox stayed on as a fail-closed fallback, instead of attributing it to an administrator who set no such policy.
|
|
9666
|
+
*/
|
|
9667
|
+
sandboxEnabledByUndeterminedPolicy?: boolean;
|
|
8712
9668
|
/**
|
|
8713
9669
|
* Whether the server (account/org) managed-settings layer was present
|
|
8714
9670
|
*/
|