@github/copilot-sdk 1.0.6-preview.1 → 1.0.7-preview.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.
@@ -5,7 +5,7 @@
5
5
  /**
6
6
  * Union of all session event variants emitted by the Copilot CLI runtime.
7
7
  */
8
- 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 | CompactionStartEvent | CompactionCompleteEvent | TaskCompleteEvent | UserMessageEvent | PendingMessagesModifiedEvent | AssistantTurnStartEvent | AssistantIntentEvent | AssistantReasoningEvent | AssistantReasoningDeltaEvent | AssistantStreamingDeltaEvent | AssistantMessageEvent | AssistantMessageStartEvent | AssistantMessageDeltaEvent | AssistantTurnEndEvent | AssistantIdleEvent | AssistantUsageEvent | ModelCallFailureEvent | AbortEvent | ToolUserRequestedEvent | ToolExecutionStartEvent | ToolExecutionPartialResultEvent | ToolExecutionProgressEvent | ToolExecutionCompleteEvent | 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 | ExternalToolRequestedEvent | ExternalToolCompletedEvent | CommandQueuedEvent | CommandExecuteEvent | CommandCompletedEvent | AutoModeSwitchRequestedEvent | AutoModeSwitchCompletedEvent | SessionLimitsExhaustedRequestedEvent | SessionLimitsExhaustedCompletedEvent | CommandsChangedEvent | CapabilitiesChangedEvent | ExitPlanModeRequestedEvent | ExitPlanModeCompletedEvent | ToolsUpdatedEvent | BackgroundTasksChangedEvent | SkillsLoadedEvent | CustomAgentsUpdatedEvent | McpServersLoadedEvent | McpServerStatusChangedEvent | ExtensionsLoadedEvent | CanvasOpenedEvent | CanvasRegistryChangedEvent | CanvasClosedEvent | CanvasUnavailableEvent | CanvasRecordedEvent | CanvasRemovedEvent | ExtensionsAttachmentsPushedEvent | McpAppToolCallCompleteEvent;
8
+ 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 | CompactionStartEvent | CompactionCompleteEvent | TaskCompleteEvent | UserMessageEvent | PendingMessagesModifiedEvent | AssistantTurnStartEvent | AssistantIntentEvent | AssistantReasoningEvent | AssistantReasoningDeltaEvent | AssistantToolCallDeltaEvent | AssistantStreamingDeltaEvent | AssistantMessageEvent | AssistantMessageStartEvent | AssistantMessageDeltaEvent | AssistantTurnEndEvent | AssistantIdleEvent | AssistantUsageEvent | ModelCallFailureEvent | AbortEvent | ToolUserRequestedEvent | ToolExecutionStartEvent | ToolExecutionPartialResultEvent | ToolExecutionProgressEvent | ToolExecutionCompleteEvent | 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 | ExternalToolRequestedEvent | ExternalToolCompletedEvent | CommandQueuedEvent | CommandExecuteEvent | CommandCompletedEvent | AutoModeSwitchRequestedEvent | AutoModeSwitchCompletedEvent | SessionLimitsExhaustedRequestedEvent | SessionLimitsExhaustedCompletedEvent | AutoModeResolvedEvent | CommandsChangedEvent | CapabilitiesChangedEvent | ExitPlanModeRequestedEvent | ExitPlanModeCompletedEvent | ToolsUpdatedEvent | BackgroundTasksChangedEvent | SkillsLoadedEvent | CustomAgentsUpdatedEvent | McpServersLoadedEvent | McpServerStatusChangedEvent | ExtensionsLoadedEvent | CanvasOpenedEvent | CanvasRegistryChangedEvent | CanvasClosedEvent | CanvasUnavailableEvent | CanvasRecordedEvent | CanvasRemovedEvent | ExtensionsAttachmentsPushedEvent | McpAppToolCallCompleteEvent;
9
9
  /**
10
10
  * Hosting platform type of the repository (github or ado)
11
11
  */
@@ -32,6 +32,16 @@ export type ReasoningSummary =
32
32
  | "concise"
33
33
  /** Request a detailed summary of the model's reasoning. */
34
34
  | "detailed";
35
+ /**
36
+ * Output verbosity level used for supported model calls (e.g. "low", "medium", "high")
37
+ */
38
+ export type Verbosity =
39
+ /** A terse response was requested. */
40
+ "low"
41
+ /** A medium amount of response detail was requested. */
42
+ | "medium"
43
+ /** A more detailed response was requested. */
44
+ | "high";
35
45
  /**
36
46
  * The type of operation performed on the autopilot objective state file
37
47
  */
@@ -64,6 +74,17 @@ export type SessionMode =
64
74
  | "plan"
65
75
  /** The agent is working autonomously toward task completion. */
66
76
  | "autopilot";
77
+ /**
78
+ * Allow-all mode for the session.
79
+ */
80
+ /** @experimental */
81
+ export type PermissionAllowAllMode =
82
+ /** Permission requests follow the normal approval flow. */
83
+ "off"
84
+ /** Tool, path, and URL permission requests are automatically approved. */
85
+ | "on"
86
+ /** Permission requests follow the normal approval flow with an LLM advisory recommendation attached; clients may choose to auto-approve requests the judge evaluated as acceptable. */
87
+ | "auto";
67
88
  /**
68
89
  * The type of operation performed on the plan file
69
90
  */
@@ -142,6 +163,14 @@ export type UserMessageDelivery =
142
163
  | "steering"
143
164
  /** Enqueued while the agent was busy; processed as its own run afterward. */
144
165
  | "queued";
166
+ /**
167
+ * Tool call type: "function" for standard tool calls, "custom" for grammar-based tool calls. Defaults to "function" when absent.
168
+ */
169
+ export type AssistantMessageToolRequestType =
170
+ /** Standard function-style tool call. */
171
+ "function"
172
+ /** Custom grammar-based tool call. */
173
+ | "custom";
145
174
  /**
146
175
  * The system that produced a citation.
147
176
  */
@@ -158,14 +187,6 @@ export type CitationProvider =
158
187
  */
159
188
  /** @experimental */
160
189
  export type CitationLocation = CitationLocationChar | CitationLocationPage | CitationLocationBlock;
161
- /**
162
- * Tool call type: "function" for standard tool calls, "custom" for grammar-based tool calls. Defaults to "function" when absent.
163
- */
164
- export type AssistantMessageToolRequestType =
165
- /** Standard function-style tool call. */
166
- "function"
167
- /** Custom grammar-based tool call. */
168
- | "custom";
169
190
  /**
170
191
  * API endpoint used for this model call, matching CAPI supported_endpoints vocabulary
171
192
  */
@@ -329,6 +350,19 @@ export type PermissionRequestMemoryDirection =
329
350
  * Derived user-facing permission prompt details for UI consumers
330
351
  */
331
352
  export type PermissionPromptRequest = PermissionPromptRequestCommands | PermissionPromptRequestWrite | PermissionPromptRequestRead | PermissionPromptRequestMcp | PermissionPromptRequestUrl | PermissionPromptRequestMemory | PermissionPromptRequestCustomTool | PermissionPromptRequestPath | PermissionPromptRequestHook | PermissionPromptRequestExtensionManagement | PermissionPromptRequestExtensionPermissionAccess;
353
+ /**
354
+ * Outcome of the auto-approval safety judge for a permission request. Present only when auto mode is enabled; its absence means the judge did not evaluate the request (auto mode was off).
355
+ */
356
+ /** @experimental */
357
+ export type AutoApprovalRecommendation =
358
+ /** The judge evaluated the request and recommends automatically approving it. */
359
+ "approve"
360
+ /** The judge evaluated the request and does not recommend auto-approving it; explicit approval is required. Whether that means prompting, denying, or something else is the consumer's decision. */
361
+ | "requireApproval"
362
+ /** Auto mode is enabled, but this request category is never auto-approvable (for example, sandbox-bypass requests), so the judge was not consulted. */
363
+ | "excluded"
364
+ /** The judge was consulted but did not return a usable recommendation, so the request requires explicit approval. */
365
+ | "error";
332
366
  /**
333
367
  * Underlying permission kind that needs path approval
334
368
  */
@@ -427,6 +461,16 @@ export type SessionLimitsExhaustedResponseAction =
427
461
  | "unset"
428
462
  /** Leave the limit unchanged and cancel the blocked model request. */
429
463
  | "cancel";
464
+ /**
465
+ * Coarse request-difficulty bucket for UX explainability
466
+ */
467
+ export type AutoModeResolvedReasoningBucket =
468
+ /** The request looks low-reasoning; a lighter model is appropriate. */
469
+ "low"
470
+ /** The request needs a moderate amount of reasoning. */
471
+ | "medium"
472
+ /** The request looks high-reasoning; a stronger model is appropriate. */
473
+ | "high";
430
474
  /**
431
475
  * Exit plan mode action
432
476
  */
@@ -598,6 +642,7 @@ export interface StartData {
598
642
  * ISO 8601 timestamp when the session was created
599
643
  */
600
644
  startTime: string;
645
+ verbosity?: Verbosity;
601
646
  /**
602
647
  * Schema version number for the session event format
603
648
  */
@@ -726,6 +771,7 @@ export interface ResumeData {
726
771
  * True when this resume attached to a session that the runtime already had running in-memory (for example, an extension joining a session another client was actively driving). False (or omitted) for cold resumes — the runtime had to reconstitute the session from its persisted event log.
727
772
  */
728
773
  sessionWasActive?: boolean;
774
+ verbosity?: Verbosity;
729
775
  }
730
776
  /**
731
777
  * Session event "session.remote_steerable_changed". Notifies that the session's remote steering capability has changed
@@ -1262,11 +1308,13 @@ export interface ModelChangeData {
1262
1308
  */
1263
1309
  previousReasoningEffort?: string;
1264
1310
  previousReasoningSummary?: ReasoningSummary;
1311
+ previousVerbosity?: Verbosity;
1265
1312
  /**
1266
1313
  * Reasoning effort level after the model change, if applicable
1267
1314
  */
1268
1315
  reasoningEffort?: string | null;
1269
1316
  reasoningSummary?: ReasoningSummary;
1317
+ verbosity?: Verbosity;
1270
1318
  }
1271
1319
  /**
1272
1320
  * Session event "session.mode_changed". Agent mode change details including previous and new modes
@@ -1345,7 +1393,7 @@ export interface SessionLimitsChangedData {
1345
1393
  sessionLimits: SessionLimitsConfig | null;
1346
1394
  }
1347
1395
  /**
1348
- * Session event "session.permissions_changed". Permissions change details carrying the aggregate allow-all boolean transition.
1396
+ * Session event "session.permissions_changed". Permissions change details carrying the aggregate allow-all transition.
1349
1397
  */
1350
1398
  export interface PermissionsChangedEvent {
1351
1399
  /**
@@ -1375,13 +1423,25 @@ export interface PermissionsChangedEvent {
1375
1423
  type: "session.permissions_changed";
1376
1424
  }
1377
1425
  /**
1378
- * Permissions change details carrying the aggregate allow-all boolean transition.
1426
+ * Permissions change details carrying the aggregate allow-all transition.
1379
1427
  */
1380
1428
  export interface PermissionsChangedData {
1429
+ /**
1430
+ * Allow-all mode after the change
1431
+ *
1432
+ * @experimental
1433
+ */
1434
+ allowAllPermissionMode?: PermissionAllowAllMode;
1381
1435
  /**
1382
1436
  * Aggregate allow-all flag after the change
1383
1437
  */
1384
1438
  allowAllPermissions: boolean;
1439
+ /**
1440
+ * Allow-all mode before the change
1441
+ *
1442
+ * @experimental
1443
+ */
1444
+ previousAllowAllPermissionMode?: PermissionAllowAllMode;
1385
1445
  /**
1386
1446
  * Aggregate allow-all flag before the change
1387
1447
  */
@@ -1791,7 +1851,7 @@ export interface ShutdownCodeChanges {
1791
1851
  linesRemoved: number;
1792
1852
  }
1793
1853
  /**
1794
- * Schema for the `ShutdownModelMetric` type.
1854
+ * Per-model shutdown metrics with request counts, token usage, nano-AI units, and token details.
1795
1855
  */
1796
1856
  export interface ShutdownModelMetric {
1797
1857
  requests: ShutdownModelMetricRequests;
@@ -1827,7 +1887,7 @@ export interface ShutdownModelMetricRequests {
1827
1887
  count?: number;
1828
1888
  }
1829
1889
  /**
1830
- * Schema for the `ShutdownModelMetricTokenDetail` type.
1890
+ * A token-type entry in a shutdown model metric, storing the accumulated token count.
1831
1891
  */
1832
1892
  export interface ShutdownModelMetricTokenDetail {
1833
1893
  /**
@@ -1861,7 +1921,7 @@ export interface ShutdownModelMetricUsage {
1861
1921
  reasoningTokens?: number;
1862
1922
  }
1863
1923
  /**
1864
- * Schema for the `ShutdownTokenDetail` type.
1924
+ * A session-wide shutdown token-type entry storing the accumulated token count.
1865
1925
  */
1866
1926
  export interface ShutdownTokenDetail {
1867
1927
  /**
@@ -2039,6 +2099,10 @@ export interface CompactionStartData {
2039
2099
  * Token count from non-system messages (user, assistant, tool) at compaction start
2040
2100
  */
2041
2101
  conversationTokens?: number;
2102
+ /**
2103
+ * Model identifier used for compaction, when known
2104
+ */
2105
+ model?: string;
2042
2106
  /**
2043
2107
  * Token count from system message(s) at compaction start
2044
2108
  */
@@ -2246,7 +2310,7 @@ export interface TaskCompleteData {
2246
2310
  summary?: string;
2247
2311
  }
2248
2312
  /**
2249
- * Session event "user.message".
2313
+ * Session event "user.message". Payload of `user.message` with displayed and model-transformed content, attachments, source/delivery metadata, mode, and telemetry IDs.
2250
2314
  */
2251
2315
  export interface UserMessageEvent {
2252
2316
  /**
@@ -2276,7 +2340,7 @@ export interface UserMessageEvent {
2276
2340
  type: "user.message";
2277
2341
  }
2278
2342
  /**
2279
- * Schema for the `UserMessageData` type.
2343
+ * Payload of `user.message` with displayed and model-transformed content, attachments, source/delivery metadata, mode, and telemetry IDs.
2280
2344
  */
2281
2345
  export interface UserMessageData {
2282
2346
  agentMode?: UserMessageAgentMode;
@@ -2831,6 +2895,10 @@ export interface AssistantTurnStartData {
2831
2895
  * CAPI interaction ID for correlating this turn with upstream telemetry
2832
2896
  */
2833
2897
  interactionId?: string;
2898
+ /**
2899
+ * Model identifier used for this turn, when known
2900
+ */
2901
+ model?: string;
2834
2902
  /**
2835
2903
  * Identifier for this turn within the agentic loop, typically a stringified turn number
2836
2904
  */
@@ -2961,6 +3029,54 @@ export interface AssistantReasoningDeltaData {
2961
3029
  */
2962
3030
  reasoningId: string;
2963
3031
  }
3032
+ /**
3033
+ * Session event "assistant.tool_call_delta". Streaming tool-call input delta for incremental tool-call updates
3034
+ */
3035
+ export interface AssistantToolCallDeltaEvent {
3036
+ /**
3037
+ * Sub-agent instance identifier. Absent for events from the root/main agent and session-level events.
3038
+ */
3039
+ agentId?: string;
3040
+ data: AssistantToolCallDeltaData;
3041
+ /**
3042
+ * Always true for events that are transient and not persisted to the session event log on disk.
3043
+ */
3044
+ ephemeral: true;
3045
+ /**
3046
+ * Unique event identifier (UUID v4), generated when the event is emitted
3047
+ */
3048
+ id: string;
3049
+ /**
3050
+ * ID of the chronologically preceding event in the session, forming a linked chain. Null for the first event.
3051
+ */
3052
+ parentId: string | null;
3053
+ /**
3054
+ * ISO 8601 timestamp when the event was created
3055
+ */
3056
+ timestamp: string;
3057
+ /**
3058
+ * Type discriminator. Always "assistant.tool_call_delta".
3059
+ */
3060
+ type: "assistant.tool_call_delta";
3061
+ }
3062
+ /**
3063
+ * Streaming tool-call input delta for incremental tool-call updates
3064
+ */
3065
+ export interface AssistantToolCallDeltaData {
3066
+ /**
3067
+ * Raw provider tool input fragment to append for this tool call. Function/tool-use providers stream serialized JSON argument text (so newlines inside JSON string values may appear as escaped `\n` until the accumulated JSON is parsed); custom tool calls stream raw custom input.
3068
+ */
3069
+ inputDelta: string;
3070
+ /**
3071
+ * Tool call ID this delta belongs to, matching the corresponding assistant.message tool request
3072
+ */
3073
+ toolCallId: string;
3074
+ /**
3075
+ * Name of the tool being invoked, when known from the stream
3076
+ */
3077
+ toolName?: string;
3078
+ toolType?: AssistantMessageToolRequestType;
3079
+ }
2964
3080
  /**
2965
3081
  * Session event "assistant.streaming_delta". Streaming response progress with cumulative byte count
2966
3082
  */
@@ -3044,6 +3160,10 @@ export interface AssistantMessageData {
3044
3160
  * @experimental
3045
3161
  */
3046
3162
  citations?: Citations;
3163
+ /**
3164
+ * Client-minted request id (x-request-id header) echoed by the server. Distinct from requestId (x-github-request-id) and serviceRequestId (x-copilot-service-request-id).
3165
+ */
3166
+ clientRequestId?: string;
3047
3167
  /**
3048
3168
  * The assistant's text response content
3049
3169
  */
@@ -3411,6 +3531,10 @@ export interface AssistantTurnEndEvent {
3411
3531
  * Turn completion metadata including the turn identifier
3412
3532
  */
3413
3533
  export interface AssistantTurnEndData {
3534
+ /**
3535
+ * Model identifier used for this turn, when known
3536
+ */
3537
+ model?: string;
3414
3538
  /**
3415
3539
  * Identifier of the turn that has ended, matching the corresponding assistant.turn_start event
3416
3540
  */
@@ -3903,7 +4027,7 @@ export interface ToolExecutionStartToolDescriptionMeta {
3903
4027
  ui?: ToolExecutionStartToolDescriptionMetaUI;
3904
4028
  }
3905
4029
  /**
3906
- * Schema for the `ToolExecutionStartToolDescriptionMetaUI` type.
4030
+ * MCP Apps tool `_meta.ui` resource URI and visibility captured on `tool.execution_start`.
3907
4031
  */
3908
4032
  export interface ToolExecutionStartToolDescriptionMetaUI {
3909
4033
  /**
@@ -4396,7 +4520,7 @@ export interface ToolExecutionCompleteContentResource {
4396
4520
  type: "resource";
4397
4521
  }
4398
4522
  /**
4399
- * Schema for the `EmbeddedTextResourceContents` type.
4523
+ * Embedded text resource contents identified by a URI, with an optional MIME type and a text payload.
4400
4524
  */
4401
4525
  export interface EmbeddedTextResourceContents {
4402
4526
  /**
@@ -4413,7 +4537,7 @@ export interface EmbeddedTextResourceContents {
4413
4537
  uri: string;
4414
4538
  }
4415
4539
  /**
4416
- * Schema for the `EmbeddedBlobResourceContents` type.
4540
+ * Embedded binary resource contents identified by a URI, with an optional MIME type and a base64-encoded blob.
4417
4541
  */
4418
4542
  export interface EmbeddedBlobResourceContents {
4419
4543
  /**
@@ -4458,7 +4582,7 @@ export interface ToolExecutionCompleteUIResourceMeta {
4458
4582
  ui?: ToolExecutionCompleteUIResourceMetaUI;
4459
4583
  }
4460
4584
  /**
4461
- * Schema for the `ToolExecutionCompleteUIResourceMetaUI` type.
4585
+ * MCP Apps UI resource metadata for a completed tool result, including CSP, permissions, domain, and border preference.
4462
4586
  */
4463
4587
  export interface ToolExecutionCompleteUIResourceMetaUI {
4464
4588
  csp?: ToolExecutionCompleteUIResourceMetaUICsp;
@@ -4467,7 +4591,7 @@ export interface ToolExecutionCompleteUIResourceMetaUI {
4467
4591
  prefersBorder?: boolean;
4468
4592
  }
4469
4593
  /**
4470
- * Schema for the `ToolExecutionCompleteUIResourceMetaUICsp` type.
4594
+ * CSP domain allowlists for an MCP Apps UI resource, including connect, resource, frame, and base URI domains.
4471
4595
  */
4472
4596
  export interface ToolExecutionCompleteUIResourceMetaUICsp {
4473
4597
  baseUriDomains?: string[];
@@ -4476,7 +4600,7 @@ export interface ToolExecutionCompleteUIResourceMetaUICsp {
4476
4600
  resourceDomains?: string[];
4477
4601
  }
4478
4602
  /**
4479
- * Schema for the `ToolExecutionCompleteUIResourceMetaUIPermissions` type.
4603
+ * Browser permission metadata for an MCP Apps UI resource, including camera, microphone, geolocation, and clipboard-write.
4480
4604
  */
4481
4605
  export interface ToolExecutionCompleteUIResourceMetaUIPermissions {
4482
4606
  camera?: ToolExecutionCompleteUIResourceMetaUIPermissionsCamera;
@@ -4485,22 +4609,22 @@ export interface ToolExecutionCompleteUIResourceMetaUIPermissions {
4485
4609
  microphone?: ToolExecutionCompleteUIResourceMetaUIPermissionsMicrophone;
4486
4610
  }
4487
4611
  /**
4488
- * Schema for the `ToolExecutionCompleteUIResourceMetaUIPermissionsCamera` type.
4612
+ * Marker object for camera permission on an MCP Apps UI resource.
4489
4613
  */
4490
4614
  export interface ToolExecutionCompleteUIResourceMetaUIPermissionsCamera {
4491
4615
  }
4492
4616
  /**
4493
- * Schema for the `ToolExecutionCompleteUIResourceMetaUIPermissionsClipboardWrite` type.
4617
+ * Marker object for clipboard-write permission on an MCP Apps UI resource.
4494
4618
  */
4495
4619
  export interface ToolExecutionCompleteUIResourceMetaUIPermissionsClipboardWrite {
4496
4620
  }
4497
4621
  /**
4498
- * Schema for the `ToolExecutionCompleteUIResourceMetaUIPermissionsGeolocation` type.
4622
+ * Marker object for geolocation permission on an MCP Apps UI resource.
4499
4623
  */
4500
4624
  export interface ToolExecutionCompleteUIResourceMetaUIPermissionsGeolocation {
4501
4625
  }
4502
4626
  /**
4503
- * Schema for the `ToolExecutionCompleteUIResourceMetaUIPermissionsMicrophone` type.
4627
+ * Marker object for microphone permission on an MCP Apps UI resource.
4504
4628
  */
4505
4629
  export interface ToolExecutionCompleteUIResourceMetaUIPermissionsMicrophone {
4506
4630
  }
@@ -4525,7 +4649,7 @@ export interface ToolExecutionCompleteToolDescriptionMeta {
4525
4649
  ui?: ToolExecutionCompleteToolDescriptionMetaUI;
4526
4650
  }
4527
4651
  /**
4528
- * Schema for the `ToolExecutionCompleteToolDescriptionMetaUI` type.
4652
+ * MCP Apps tool `_meta.ui` resource URI and visibility captured on `tool.execution_complete`.
4529
4653
  */
4530
4654
  export interface ToolExecutionCompleteToolDescriptionMetaUI {
4531
4655
  /**
@@ -4583,6 +4707,10 @@ export interface SkillInvokedData {
4583
4707
  * Description of the skill from its SKILL.md frontmatter
4584
4708
  */
4585
4709
  description?: string;
4710
+ /**
4711
+ * Model identifier active when the skill was invoked, when known
4712
+ */
4713
+ model?: string;
4586
4714
  /**
4587
4715
  * Name of the invoked skill
4588
4716
  */
@@ -5199,7 +5327,7 @@ export interface SystemNotificationData {
5199
5327
  kind: SystemNotification;
5200
5328
  }
5201
5329
  /**
5202
- * Schema for the `SystemNotificationAgentCompleted` type.
5330
+ * System notification metadata for a background agent that completed or failed, including agent ID, type, status, description, and prompt.
5203
5331
  */
5204
5332
  export interface SystemNotificationAgentCompleted {
5205
5333
  /**
@@ -5225,7 +5353,7 @@ export interface SystemNotificationAgentCompleted {
5225
5353
  type: "agent_completed";
5226
5354
  }
5227
5355
  /**
5228
- * Schema for the `SystemNotificationAgentIdle` type.
5356
+ * System notification metadata for a background agent that became idle, including agent ID, type, and description.
5229
5357
  */
5230
5358
  export interface SystemNotificationAgentIdle {
5231
5359
  /**
@@ -5246,7 +5374,7 @@ export interface SystemNotificationAgentIdle {
5246
5374
  type: "agent_idle";
5247
5375
  }
5248
5376
  /**
5249
- * Schema for the `SystemNotificationNewInboxMessage` type.
5377
+ * System notification metadata for a new inbox message, including entry ID, sender details, and summary.
5250
5378
  */
5251
5379
  export interface SystemNotificationNewInboxMessage {
5252
5380
  /**
@@ -5271,7 +5399,7 @@ export interface SystemNotificationNewInboxMessage {
5271
5399
  type: "new_inbox_message";
5272
5400
  }
5273
5401
  /**
5274
- * Schema for the `SystemNotificationShellCompleted` type.
5402
+ * System notification metadata for a shell session that completed, including shell ID, optional exit code, and description.
5275
5403
  */
5276
5404
  export interface SystemNotificationShellCompleted {
5277
5405
  /**
@@ -5292,7 +5420,7 @@ export interface SystemNotificationShellCompleted {
5292
5420
  type: "shell_completed";
5293
5421
  }
5294
5422
  /**
5295
- * Schema for the `SystemNotificationShellDetachedCompleted` type.
5423
+ * System notification metadata for a detached shell session that completed, including shell ID and description.
5296
5424
  */
5297
5425
  export interface SystemNotificationShellDetachedCompleted {
5298
5426
  /**
@@ -5309,7 +5437,7 @@ export interface SystemNotificationShellDetachedCompleted {
5309
5437
  type: "shell_detached_completed";
5310
5438
  }
5311
5439
  /**
5312
- * Schema for the `SystemNotificationInstructionDiscovered` type.
5440
+ * System notification metadata for an instruction file discovered during tool access, including source, trigger file, and tool.
5313
5441
  */
5314
5442
  export interface SystemNotificationInstructionDiscovered {
5315
5443
  /**
@@ -5432,7 +5560,7 @@ export interface PermissionRequestShell {
5432
5560
  warning?: string;
5433
5561
  }
5434
5562
  /**
5435
- * Schema for the `PermissionRequestShellCommand` type.
5563
+ * A parsed command identifier in a shell permission request, including whether it is read-only.
5436
5564
  */
5437
5565
  export interface PermissionRequestShellCommand {
5438
5566
  /**
@@ -5445,7 +5573,7 @@ export interface PermissionRequestShellCommand {
5445
5573
  readOnly: boolean;
5446
5574
  }
5447
5575
  /**
5448
- * Schema for the `PermissionRequestShellPossibleUrl` type.
5576
+ * A URL that may be accessed by a command in a shell permission request.
5449
5577
  */
5450
5578
  export interface PermissionRequestShellPossibleUrl {
5451
5579
  /**
@@ -5481,6 +5609,14 @@ export interface PermissionRequestWrite {
5481
5609
  * Complete new file contents for newly created files
5482
5610
  */
5483
5611
  newFileContents?: string;
5612
+ /**
5613
+ * True when a built-in file tool (apply_patch / str_replace_editor) asked to write a path the sandbox filesystem policy would block, and the host opted in via sandbox.allowBypass. This is a request, not a grant: the write happens unsandboxed only if the user approves this permission request. Hosts should highlight the elevated risk in the approval UI.
5614
+ */
5615
+ requestSandboxBypass?: boolean;
5616
+ /**
5617
+ * Justification for the sandbox-bypass request. Only meaningful when requestSandboxBypass is true.
5618
+ */
5619
+ requestSandboxBypassReason?: string;
5484
5620
  /**
5485
5621
  * Tool call ID that triggered this permission request
5486
5622
  */
@@ -5562,6 +5698,14 @@ export interface PermissionRequestUrl {
5562
5698
  * Permission kind discriminator
5563
5699
  */
5564
5700
  kind: "url";
5701
+ /**
5702
+ * True when this URL fetch is requesting to bypass the sandbox network policy: either the model set requestSandboxBypass: true, or the tool re-issued the request as an interactive bypass after the network policy denied the approved URL (host opted in via sandbox.allowBypass). This is a request, not a grant: the fetch runs only if the user approves this permission request. Hosts should highlight the elevated risk in the approval UI.
5703
+ */
5704
+ requestSandboxBypass?: boolean;
5705
+ /**
5706
+ * Model-provided justification for the sandbox-bypass request. Only meaningful when requestSandboxBypass is true.
5707
+ */
5708
+ requestSandboxBypassReason?: string;
5565
5709
  /**
5566
5710
  * Tool call ID that triggered this permission request
5567
5711
  */
@@ -5702,6 +5846,12 @@ export interface PermissionRequestExtensionPermissionAccess {
5702
5846
  * Shell command permission prompt
5703
5847
  */
5704
5848
  export interface PermissionPromptRequestCommands {
5849
+ /**
5850
+ * Auto-approval judge information for this request; present only when auto mode is enabled.
5851
+ *
5852
+ * @experimental
5853
+ */
5854
+ autoApproval?: PermissionAutoApproval;
5705
5855
  /**
5706
5856
  * Whether the UI can offer session-wide approval for this command pattern
5707
5857
  */
@@ -5731,10 +5881,27 @@ export interface PermissionPromptRequestCommands {
5731
5881
  */
5732
5882
  warning?: string;
5733
5883
  }
5884
+ /**
5885
+ * Auto-approval judge information attached to a permission request. Present (non-null) only when the session's allow-all mode is "auto"; its absence means auto mode was off and the judge did not evaluate the request. The `recommendation` conveys the judge's disposition for this request.
5886
+ */
5887
+ /** @experimental */
5888
+ export interface PermissionAutoApproval {
5889
+ /**
5890
+ * Human-readable reason for the judge's recommendation, when available.
5891
+ */
5892
+ reason?: string;
5893
+ recommendation: AutoApprovalRecommendation;
5894
+ }
5734
5895
  /**
5735
5896
  * File write permission prompt
5736
5897
  */
5737
5898
  export interface PermissionPromptRequestWrite {
5899
+ /**
5900
+ * Auto-approval judge information for this request; present only when auto mode is enabled.
5901
+ *
5902
+ * @experimental
5903
+ */
5904
+ autoApproval?: PermissionAutoApproval;
5738
5905
  /**
5739
5906
  * Whether the UI can offer session-wide approval for file write operations
5740
5907
  */
@@ -5768,6 +5935,12 @@ export interface PermissionPromptRequestWrite {
5768
5935
  * File read permission prompt
5769
5936
  */
5770
5937
  export interface PermissionPromptRequestRead {
5938
+ /**
5939
+ * Auto-approval judge information for this request; present only when auto mode is enabled.
5940
+ *
5941
+ * @experimental
5942
+ */
5943
+ autoApproval?: PermissionAutoApproval;
5771
5944
  /**
5772
5945
  * Human-readable description of why the file is being read
5773
5946
  */
@@ -5795,6 +5968,12 @@ export interface PermissionPromptRequestMcp {
5795
5968
  args?: {
5796
5969
  [k: string]: unknown | undefined;
5797
5970
  };
5971
+ /**
5972
+ * Auto-approval judge information for this request; present only when auto mode is enabled.
5973
+ *
5974
+ * @experimental
5975
+ */
5976
+ autoApproval?: PermissionAutoApproval;
5798
5977
  /**
5799
5978
  * Prompt kind discriminator
5800
5979
  */
@@ -5820,6 +5999,12 @@ export interface PermissionPromptRequestMcp {
5820
5999
  * URL access permission prompt
5821
6000
  */
5822
6001
  export interface PermissionPromptRequestUrl {
6002
+ /**
6003
+ * Auto-approval judge information for this request; present only when auto mode is enabled.
6004
+ *
6005
+ * @experimental
6006
+ */
6007
+ autoApproval?: PermissionAutoApproval;
5823
6008
  /**
5824
6009
  * Human-readable description of why the URL is being accessed
5825
6010
  */
@@ -5828,6 +6013,14 @@ export interface PermissionPromptRequestUrl {
5828
6013
  * Prompt kind discriminator
5829
6014
  */
5830
6015
  kind: "url";
6016
+ /**
6017
+ * True when this URL fetch is requesting to bypass the sandbox network policy: either the model set requestSandboxBypass: true, or the tool re-issued the request as an interactive bypass after the network policy denied the approved URL (host opted in via sandbox.allowBypass). This is a request, not a grant: the fetch runs only if the user approves this permission request. Hosts should highlight the elevated risk in the approval UI.
6018
+ */
6019
+ requestSandboxBypass?: boolean;
6020
+ /**
6021
+ * Model-provided justification for the sandbox-bypass request. Only meaningful when requestSandboxBypass is true.
6022
+ */
6023
+ requestSandboxBypassReason?: string;
5831
6024
  /**
5832
6025
  * Tool call ID that triggered this permission request
5833
6026
  */
@@ -5842,6 +6035,12 @@ export interface PermissionPromptRequestUrl {
5842
6035
  */
5843
6036
  export interface PermissionPromptRequestMemory {
5844
6037
  action?: PermissionRequestMemoryAction;
6038
+ /**
6039
+ * Auto-approval judge information for this request; present only when auto mode is enabled.
6040
+ *
6041
+ * @experimental
6042
+ */
6043
+ autoApproval?: PermissionAutoApproval;
5845
6044
  /**
5846
6045
  * Source references for the stored fact (store only)
5847
6046
  */
@@ -5878,6 +6077,12 @@ export interface PermissionPromptRequestCustomTool {
5878
6077
  args?: {
5879
6078
  [k: string]: unknown | undefined;
5880
6079
  };
6080
+ /**
6081
+ * Auto-approval judge information for this request; present only when auto mode is enabled.
6082
+ *
6083
+ * @experimental
6084
+ */
6085
+ autoApproval?: PermissionAutoApproval;
5881
6086
  /**
5882
6087
  * Prompt kind discriminator
5883
6088
  */
@@ -5900,6 +6105,12 @@ export interface PermissionPromptRequestCustomTool {
5900
6105
  */
5901
6106
  export interface PermissionPromptRequestPath {
5902
6107
  accessKind: PermissionPromptRequestPathAccessKind;
6108
+ /**
6109
+ * Auto-approval judge information for this request; present only when auto mode is enabled.
6110
+ *
6111
+ * @experimental
6112
+ */
6113
+ autoApproval?: PermissionAutoApproval;
5903
6114
  /**
5904
6115
  * Prompt kind discriminator
5905
6116
  */
@@ -5917,6 +6128,12 @@ export interface PermissionPromptRequestPath {
5917
6128
  * Hook confirmation permission prompt
5918
6129
  */
5919
6130
  export interface PermissionPromptRequestHook {
6131
+ /**
6132
+ * Auto-approval judge information for this request; present only when auto mode is enabled.
6133
+ *
6134
+ * @experimental
6135
+ */
6136
+ autoApproval?: PermissionAutoApproval;
5920
6137
  /**
5921
6138
  * Optional message from the hook explaining why confirmation is needed
5922
6139
  */
@@ -5944,6 +6161,12 @@ export interface PermissionPromptRequestHook {
5944
6161
  * Extension management permission prompt
5945
6162
  */
5946
6163
  export interface PermissionPromptRequestExtensionManagement {
6164
+ /**
6165
+ * Auto-approval judge information for this request; present only when auto mode is enabled.
6166
+ *
6167
+ * @experimental
6168
+ */
6169
+ autoApproval?: PermissionAutoApproval;
5947
6170
  /**
5948
6171
  * Name of the extension being managed
5949
6172
  */
@@ -5965,6 +6188,12 @@ export interface PermissionPromptRequestExtensionManagement {
5965
6188
  * Extension permission access prompt
5966
6189
  */
5967
6190
  export interface PermissionPromptRequestExtensionPermissionAccess {
6191
+ /**
6192
+ * Auto-approval judge information for this request; present only when auto mode is enabled.
6193
+ *
6194
+ * @experimental
6195
+ */
6196
+ autoApproval?: PermissionAutoApproval;
5968
6197
  /**
5969
6198
  * Capabilities the extension is requesting
5970
6199
  */
@@ -6027,7 +6256,7 @@ export interface PermissionCompletedData {
6027
6256
  toolCallId?: string;
6028
6257
  }
6029
6258
  /**
6030
- * Schema for the `PermissionApproved` type.
6259
+ * Permission response variant indicating the request was approved without persisting an approval rule.
6031
6260
  */
6032
6261
  export interface PermissionApproved {
6033
6262
  /**
@@ -6036,7 +6265,7 @@ export interface PermissionApproved {
6036
6265
  kind: "approved";
6037
6266
  }
6038
6267
  /**
6039
- * Schema for the `PermissionApprovedForSession` type.
6268
+ * Permission response variant that approves a request and remembers the provided approval for the rest of the session.
6040
6269
  */
6041
6270
  export interface PermissionApprovedForSession {
6042
6271
  approval: UserToolSessionApproval;
@@ -6046,7 +6275,7 @@ export interface PermissionApprovedForSession {
6046
6275
  kind: "approved-for-session";
6047
6276
  }
6048
6277
  /**
6049
- * Schema for the `UserToolSessionApprovalCommands` type.
6278
+ * Session-scoped tool-approval rule for specific shell command identifiers.
6050
6279
  */
6051
6280
  export interface UserToolSessionApprovalCommands {
6052
6281
  /**
@@ -6059,7 +6288,7 @@ export interface UserToolSessionApprovalCommands {
6059
6288
  kind: "commands";
6060
6289
  }
6061
6290
  /**
6062
- * Schema for the `UserToolSessionApprovalRead` type.
6291
+ * Session-scoped tool-approval rule for read-only filesystem operations.
6063
6292
  */
6064
6293
  export interface UserToolSessionApprovalRead {
6065
6294
  /**
@@ -6068,7 +6297,7 @@ export interface UserToolSessionApprovalRead {
6068
6297
  kind: "read";
6069
6298
  }
6070
6299
  /**
6071
- * Schema for the `UserToolSessionApprovalWrite` type.
6300
+ * Session-scoped tool-approval rule for filesystem write operations.
6072
6301
  */
6073
6302
  export interface UserToolSessionApprovalWrite {
6074
6303
  /**
@@ -6077,7 +6306,7 @@ export interface UserToolSessionApprovalWrite {
6077
6306
  kind: "write";
6078
6307
  }
6079
6308
  /**
6080
- * Schema for the `UserToolSessionApprovalMcp` type.
6309
+ * Session-scoped tool-approval rule for an MCP server tool, or all tools on the server when `toolName` is null.
6081
6310
  */
6082
6311
  export interface UserToolSessionApprovalMcp {
6083
6312
  /**
@@ -6094,7 +6323,7 @@ export interface UserToolSessionApprovalMcp {
6094
6323
  toolName: string | null;
6095
6324
  }
6096
6325
  /**
6097
- * Schema for the `UserToolSessionApprovalMemory` type.
6326
+ * Session-scoped tool-approval rule for writes to long-term memory.
6098
6327
  */
6099
6328
  export interface UserToolSessionApprovalMemory {
6100
6329
  /**
@@ -6103,7 +6332,7 @@ export interface UserToolSessionApprovalMemory {
6103
6332
  kind: "memory";
6104
6333
  }
6105
6334
  /**
6106
- * Schema for the `UserToolSessionApprovalCustomTool` type.
6335
+ * Session-scoped tool-approval rule for a custom tool, keyed by tool name.
6107
6336
  */
6108
6337
  export interface UserToolSessionApprovalCustomTool {
6109
6338
  /**
@@ -6116,7 +6345,7 @@ export interface UserToolSessionApprovalCustomTool {
6116
6345
  toolName: string;
6117
6346
  }
6118
6347
  /**
6119
- * Schema for the `UserToolSessionApprovalExtensionManagement` type.
6348
+ * Session-scoped tool-approval rule for extension-management operations, optionally narrowed by operation.
6120
6349
  */
6121
6350
  export interface UserToolSessionApprovalExtensionManagement {
6122
6351
  /**
@@ -6129,7 +6358,7 @@ export interface UserToolSessionApprovalExtensionManagement {
6129
6358
  operation?: string;
6130
6359
  }
6131
6360
  /**
6132
- * Schema for the `UserToolSessionApprovalExtensionPermissionAccess` type.
6361
+ * Session-scoped tool-approval rule for an extension's permission-gated capability access, keyed by extension name.
6133
6362
  */
6134
6363
  export interface UserToolSessionApprovalExtensionPermissionAccess {
6135
6364
  /**
@@ -6142,7 +6371,7 @@ export interface UserToolSessionApprovalExtensionPermissionAccess {
6142
6371
  kind: "extension-permission-access";
6143
6372
  }
6144
6373
  /**
6145
- * Schema for the `PermissionApprovedForLocation` type.
6374
+ * Permission response variant that approves a request and persists the provided approval to a project location key.
6146
6375
  */
6147
6376
  export interface PermissionApprovedForLocation {
6148
6377
  approval: UserToolSessionApproval;
@@ -6156,7 +6385,7 @@ export interface PermissionApprovedForLocation {
6156
6385
  locationKey: string;
6157
6386
  }
6158
6387
  /**
6159
- * Schema for the `PermissionCancelled` type.
6388
+ * Permission response variant indicating the request was cancelled before use, with an optional reason.
6160
6389
  */
6161
6390
  export interface PermissionCancelled {
6162
6391
  /**
@@ -6169,7 +6398,7 @@ export interface PermissionCancelled {
6169
6398
  reason?: string;
6170
6399
  }
6171
6400
  /**
6172
- * Schema for the `PermissionDeniedByRules` type.
6401
+ * Permission response variant denied because matching approval rules explicitly blocked the request.
6173
6402
  */
6174
6403
  export interface PermissionDeniedByRules {
6175
6404
  /**
@@ -6182,7 +6411,7 @@ export interface PermissionDeniedByRules {
6182
6411
  rules: PermissionRule[];
6183
6412
  }
6184
6413
  /**
6185
- * Schema for the `PermissionRule` type.
6414
+ * A permission approval or denial rule matched against a tool request, identified by a rule kind with an optional argument value.
6186
6415
  */
6187
6416
  export interface PermissionRule {
6188
6417
  /**
@@ -6195,7 +6424,7 @@ export interface PermissionRule {
6195
6424
  kind: string;
6196
6425
  }
6197
6426
  /**
6198
- * Schema for the `PermissionDeniedNoApprovalRuleAndCouldNotRequestFromUser` type.
6427
+ * Permission response variant denied because no approval rule matched and user confirmation was unavailable.
6199
6428
  */
6200
6429
  export interface PermissionDeniedNoApprovalRuleAndCouldNotRequestFromUser {
6201
6430
  /**
@@ -6204,7 +6433,7 @@ export interface PermissionDeniedNoApprovalRuleAndCouldNotRequestFromUser {
6204
6433
  kind: "denied-no-approval-rule-and-could-not-request-from-user";
6205
6434
  }
6206
6435
  /**
6207
- * Schema for the `PermissionDeniedInteractivelyByUser` type.
6436
+ * Permission response variant denied in an interactive user prompt, with optional feedback and force-reject flag.
6208
6437
  */
6209
6438
  export interface PermissionDeniedInteractivelyByUser {
6210
6439
  /**
@@ -6221,7 +6450,7 @@ export interface PermissionDeniedInteractivelyByUser {
6221
6450
  kind: "denied-interactively-by-user";
6222
6451
  }
6223
6452
  /**
6224
- * Schema for the `PermissionDeniedByContentExclusionPolicy` type.
6453
+ * Permission response variant denying a path under content exclusion policy, with the path and message.
6225
6454
  */
6226
6455
  export interface PermissionDeniedByContentExclusionPolicy {
6227
6456
  /**
@@ -6238,7 +6467,7 @@ export interface PermissionDeniedByContentExclusionPolicy {
6238
6467
  path: string;
6239
6468
  }
6240
6469
  /**
6241
- * Schema for the `PermissionDeniedByPermissionRequestHook` type.
6470
+ * Permission response variant denied by a permission-request hook, with optional message and interrupt flag.
6242
6471
  */
6243
6472
  export interface PermissionDeniedByPermissionRequestHook {
6244
6473
  /**
@@ -6479,7 +6708,7 @@ export interface ElicitationCompletedData {
6479
6708
  requestId: string;
6480
6709
  }
6481
6710
  /**
6482
- * Schema for the `ElicitationCompletedContent` type.
6711
+ * Opaque JSON value submitted for one field in accepted `elicitation.completed` form content.
6483
6712
  */
6484
6713
  export interface ElicitationCompletedContent {
6485
6714
  [k: string]: unknown | undefined;
@@ -7282,6 +7511,66 @@ export interface SessionLimitsExhaustedResponse {
7282
7511
  */
7283
7512
  maxAiCredits?: number;
7284
7513
  }
7514
+ /**
7515
+ * Session event "session.auto_mode_resolved". Auto Intent resolution: the concrete model the session settled on for the first prompt of an auto-mode session, and why. Lets SDK clients render the chosen model and the full reason it was picked. The core selection fields (chosenModel/reasoningBucket/categoryScores) are stable; the routing-analytics fields (predictedLabel/confidence/candidateModels) mirror the upstream intent service and may evolve, hence the event's experimental stability.
7516
+ */
7517
+ /** @experimental */
7518
+ export interface AutoModeResolvedEvent {
7519
+ /**
7520
+ * Sub-agent instance identifier. Absent for events from the root/main agent and session-level events.
7521
+ */
7522
+ agentId?: string;
7523
+ data: AutoModeResolvedData;
7524
+ /**
7525
+ * When true, the event is transient and not persisted to the session event log on disk
7526
+ */
7527
+ ephemeral?: boolean;
7528
+ /**
7529
+ * Unique event identifier (UUID v4), generated when the event is emitted
7530
+ */
7531
+ id: string;
7532
+ /**
7533
+ * ID of the chronologically preceding event in the session, forming a linked chain. Null for the first event.
7534
+ */
7535
+ parentId: string | null;
7536
+ /**
7537
+ * ISO 8601 timestamp when the event was created
7538
+ */
7539
+ timestamp: string;
7540
+ /**
7541
+ * Type discriminator. Always "session.auto_mode_resolved".
7542
+ */
7543
+ type: "session.auto_mode_resolved";
7544
+ }
7545
+ /**
7546
+ * Auto Intent resolution: the concrete model the session settled on for the first prompt of an auto-mode session, and why. Lets SDK clients render the chosen model and the full reason it was picked. The core selection fields (chosenModel/reasoningBucket/categoryScores) are stable; the routing-analytics fields (predictedLabel/confidence/candidateModels) mirror the upstream intent service and may evolve, hence the event's experimental stability.
7547
+ */
7548
+ /** @experimental */
7549
+ export interface AutoModeResolvedData {
7550
+ /**
7551
+ * Ordered candidate model list the router returned, when not a fallback
7552
+ */
7553
+ candidateModels?: string[];
7554
+ /**
7555
+ * Per-category classifier scores (0-1) behind the bucket: the granular HYDRA capability scores (reasoning, code_gen, debugging, tool_use), or the binary needs_reasoning/no_reasoning scores when HYDRA didn't run. Lets clients show a breakdown rather than just the bucket.
7556
+ */
7557
+ categoryScores?: {
7558
+ [k: string]: number | undefined;
7559
+ };
7560
+ /**
7561
+ * The concrete model the session will use after any intent refinement
7562
+ */
7563
+ chosenModel: string;
7564
+ /**
7565
+ * Classifier confidence for the predicted label, when available
7566
+ */
7567
+ confidence?: number;
7568
+ /**
7569
+ * The predicted classifier label (e.g. `needs_reasoning`), when available
7570
+ */
7571
+ predictedLabel?: string;
7572
+ reasoningBucket?: AutoModeResolvedReasoningBucket;
7573
+ }
7285
7574
  /**
7286
7575
  * Session event "commands.changed". SDK command registration change notification
7287
7576
  */
@@ -7322,7 +7611,7 @@ export interface CommandsChangedData {
7322
7611
  commands: CommandsChangedCommand[];
7323
7612
  }
7324
7613
  /**
7325
- * Schema for the `CommandsChangedCommand` type.
7614
+ * A single slash command available in the session, as listed by the `commands.changed` event.
7326
7615
  */
7327
7616
  export interface CommandsChangedCommand {
7328
7617
  /**
@@ -7492,7 +7781,7 @@ export interface ExitPlanModeCompletedData {
7492
7781
  selectedAction?: ExitPlanModeAction;
7493
7782
  }
7494
7783
  /**
7495
- * Session event "session.tools_updated".
7784
+ * Session event "session.tools_updated". Payload of `session.tools_updated` identifying the model whose resolved tools were updated.
7496
7785
  */
7497
7786
  export interface ToolsUpdatedEvent {
7498
7787
  /**
@@ -7522,7 +7811,7 @@ export interface ToolsUpdatedEvent {
7522
7811
  type: "session.tools_updated";
7523
7812
  }
7524
7813
  /**
7525
- * Schema for the `ToolsUpdatedData` type.
7814
+ * Payload of `session.tools_updated` identifying the model whose resolved tools were updated.
7526
7815
  */
7527
7816
  export interface ToolsUpdatedData {
7528
7817
  /**
@@ -7531,7 +7820,7 @@ export interface ToolsUpdatedData {
7531
7820
  model: string;
7532
7821
  }
7533
7822
  /**
7534
- * Session event "session.background_tasks_changed".
7823
+ * Session event "session.background_tasks_changed". Empty payload for `session.background_tasks_changed`, indicating background task state changed.
7535
7824
  */
7536
7825
  export interface BackgroundTasksChangedEvent {
7537
7826
  /**
@@ -7561,12 +7850,12 @@ export interface BackgroundTasksChangedEvent {
7561
7850
  type: "session.background_tasks_changed";
7562
7851
  }
7563
7852
  /**
7564
- * Schema for the `BackgroundTasksChangedData` type.
7853
+ * Empty payload for `session.background_tasks_changed`, indicating background task state changed.
7565
7854
  */
7566
7855
  export interface BackgroundTasksChangedData {
7567
7856
  }
7568
7857
  /**
7569
- * Session event "session.skills_loaded".
7858
+ * Session event "session.skills_loaded". Payload of `session.skills_loaded` listing resolved skill metadata.
7570
7859
  */
7571
7860
  export interface SkillsLoadedEvent {
7572
7861
  /**
@@ -7596,7 +7885,7 @@ export interface SkillsLoadedEvent {
7596
7885
  type: "session.skills_loaded";
7597
7886
  }
7598
7887
  /**
7599
- * Schema for the `SkillsLoadedData` type.
7888
+ * Payload of `session.skills_loaded` listing resolved skill metadata.
7600
7889
  */
7601
7890
  export interface SkillsLoadedData {
7602
7891
  /**
@@ -7605,7 +7894,7 @@ export interface SkillsLoadedData {
7605
7894
  skills: SkillsLoadedSkill[];
7606
7895
  }
7607
7896
  /**
7608
- * Schema for the `SkillsLoadedSkill` type.
7897
+ * A single resolved skill in `session.skills_loaded`, including source, invocability, enabled state, path, and argument hint.
7609
7898
  */
7610
7899
  export interface SkillsLoadedSkill {
7611
7900
  /**
@@ -7635,7 +7924,7 @@ export interface SkillsLoadedSkill {
7635
7924
  userInvocable: boolean;
7636
7925
  }
7637
7926
  /**
7638
- * Session event "session.custom_agents_updated".
7927
+ * Session event "session.custom_agents_updated". Payload of `session.custom_agents_updated` with loaded custom agents plus non-fatal warnings and fatal errors.
7639
7928
  */
7640
7929
  export interface CustomAgentsUpdatedEvent {
7641
7930
  /**
@@ -7665,7 +7954,7 @@ export interface CustomAgentsUpdatedEvent {
7665
7954
  type: "session.custom_agents_updated";
7666
7955
  }
7667
7956
  /**
7668
- * Schema for the `CustomAgentsUpdatedData` type.
7957
+ * Payload of `session.custom_agents_updated` with loaded custom agents plus non-fatal warnings and fatal errors.
7669
7958
  */
7670
7959
  export interface CustomAgentsUpdatedData {
7671
7960
  /**
@@ -7682,7 +7971,7 @@ export interface CustomAgentsUpdatedData {
7682
7971
  warnings: string[];
7683
7972
  }
7684
7973
  /**
7685
- * Schema for the `CustomAgentsUpdatedAgent` type.
7974
+ * A single loaded custom agent in `session.custom_agents_updated`, with identity, source, tools, invocability, and model override.
7686
7975
  */
7687
7976
  export interface CustomAgentsUpdatedAgent {
7688
7977
  /**
@@ -7719,7 +8008,7 @@ export interface CustomAgentsUpdatedAgent {
7719
8008
  userInvocable: boolean;
7720
8009
  }
7721
8010
  /**
7722
- * Session event "session.mcp_servers_loaded".
8011
+ * Session event "session.mcp_servers_loaded". Payload of `session.mcp_servers_loaded` listing MCP server status summaries.
7723
8012
  */
7724
8013
  export interface McpServersLoadedEvent {
7725
8014
  /**
@@ -7749,7 +8038,7 @@ export interface McpServersLoadedEvent {
7749
8038
  type: "session.mcp_servers_loaded";
7750
8039
  }
7751
8040
  /**
7752
- * Schema for the `McpServersLoadedData` type.
8041
+ * Payload of `session.mcp_servers_loaded` listing MCP server status summaries.
7753
8042
  */
7754
8043
  export interface McpServersLoadedData {
7755
8044
  /**
@@ -7758,7 +8047,7 @@ export interface McpServersLoadedData {
7758
8047
  servers: McpServersLoadedServer[];
7759
8048
  }
7760
8049
  /**
7761
- * Schema for the `McpServersLoadedServer` type.
8050
+ * A single MCP server status summary in `session.mcp_servers_loaded`, including name, status, source, transport, and plugin metadata.
7762
8051
  */
7763
8052
  export interface McpServersLoadedServer {
7764
8053
  /**
@@ -7782,7 +8071,7 @@ export interface McpServersLoadedServer {
7782
8071
  transport?: McpServerTransport;
7783
8072
  }
7784
8073
  /**
7785
- * Session event "session.mcp_server_status_changed".
8074
+ * Session event "session.mcp_server_status_changed". Payload of `session.mcp_server_status_changed` for one MCP server's status and optional failure error.
7786
8075
  */
7787
8076
  export interface McpServerStatusChangedEvent {
7788
8077
  /**
@@ -7812,7 +8101,7 @@ export interface McpServerStatusChangedEvent {
7812
8101
  type: "session.mcp_server_status_changed";
7813
8102
  }
7814
8103
  /**
7815
- * Schema for the `McpServerStatusChangedData` type.
8104
+ * Payload of `session.mcp_server_status_changed` for one MCP server's status and optional failure error.
7816
8105
  */
7817
8106
  export interface McpServerStatusChangedData {
7818
8107
  /**
@@ -7826,7 +8115,7 @@ export interface McpServerStatusChangedData {
7826
8115
  status: McpServerStatus;
7827
8116
  }
7828
8117
  /**
7829
- * Session event "session.extensions_loaded".
8118
+ * Session event "session.extensions_loaded". Payload of `session.extensions_loaded` listing discovered extensions and their statuses.
7830
8119
  */
7831
8120
  export interface ExtensionsLoadedEvent {
7832
8121
  /**
@@ -7856,7 +8145,7 @@ export interface ExtensionsLoadedEvent {
7856
8145
  type: "session.extensions_loaded";
7857
8146
  }
7858
8147
  /**
7859
- * Schema for the `ExtensionsLoadedData` type.
8148
+ * Payload of `session.extensions_loaded` listing discovered extensions and their statuses.
7860
8149
  */
7861
8150
  export interface ExtensionsLoadedData {
7862
8151
  /**
@@ -7865,7 +8154,7 @@ export interface ExtensionsLoadedData {
7865
8154
  extensions: ExtensionsLoadedExtension[];
7866
8155
  }
7867
8156
  /**
7868
- * Schema for the `ExtensionsLoadedExtension` type.
8157
+ * A single extension discovered by `session.extensions_loaded`, including qualified ID, source, and current status.
7869
8158
  */
7870
8159
  export interface ExtensionsLoadedExtension {
7871
8160
  /**
@@ -7880,7 +8169,7 @@ export interface ExtensionsLoadedExtension {
7880
8169
  status: ExtensionsLoadedExtensionStatus;
7881
8170
  }
7882
8171
  /**
7883
- * Session event "session.canvas.opened".
8172
+ * Session event "session.canvas.opened". Payload of `session.canvas.opened` with canvas instance and provider IDs plus optional title, status, URL, and input.
7884
8173
  */
7885
8174
  /** @experimental */
7886
8175
  export interface CanvasOpenedEvent {
@@ -7911,7 +8200,7 @@ export interface CanvasOpenedEvent {
7911
8200
  type: "session.canvas.opened";
7912
8201
  }
7913
8202
  /**
7914
- * Schema for the `CanvasOpenedData` type.
8203
+ * Payload of `session.canvas.opened` with canvas instance and provider IDs plus optional title, status, URL, and input.
7915
8204
  */
7916
8205
  /** @experimental */
7917
8206
  export interface CanvasOpenedData {
@@ -7951,7 +8240,7 @@ export interface CanvasOpenedData {
7951
8240
  url?: string;
7952
8241
  }
7953
8242
  /**
7954
- * Session event "session.canvas.registry_changed".
8243
+ * Session event "session.canvas.registry_changed". Payload of `session.canvas.registry_changed` listing the canvas declarations currently available.
7955
8244
  */
7956
8245
  /** @experimental */
7957
8246
  export interface CanvasRegistryChangedEvent {
@@ -7982,7 +8271,7 @@ export interface CanvasRegistryChangedEvent {
7982
8271
  type: "session.canvas.registry_changed";
7983
8272
  }
7984
8273
  /**
7985
- * Schema for the `CanvasRegistryChangedData` type.
8274
+ * Payload of `session.canvas.registry_changed` listing the canvas declarations currently available.
7986
8275
  */
7987
8276
  /** @experimental */
7988
8277
  export interface CanvasRegistryChangedData {
@@ -7992,7 +8281,7 @@ export interface CanvasRegistryChangedData {
7992
8281
  canvases: CanvasRegistryChangedCanvas[];
7993
8282
  }
7994
8283
  /**
7995
- * Schema for the `CanvasRegistryChangedCanvas` type.
8284
+ * A single canvas declaration in `session.canvas.registry_changed`, including provider IDs, display metadata, input schema, and actions.
7996
8285
  */
7997
8286
  /** @experimental */
7998
8287
  export interface CanvasRegistryChangedCanvas {
@@ -8028,7 +8317,7 @@ export interface CanvasRegistryChangedCanvas {
8028
8317
  };
8029
8318
  }
8030
8319
  /**
8031
- * Schema for the `CanvasRegistryChangedCanvasAction` type.
8320
+ * A single action within a canvas declaration, with its name, optional description, and optional input schema.
8032
8321
  */
8033
8322
  /** @experimental */
8034
8323
  export interface CanvasRegistryChangedCanvasAction {
@@ -8048,7 +8337,7 @@ export interface CanvasRegistryChangedCanvasAction {
8048
8337
  name: string;
8049
8338
  }
8050
8339
  /**
8051
- * Session event "session.canvas.closed".
8340
+ * Session event "session.canvas.closed". Payload of `session.canvas.closed` with the closed canvas instance ID, provider ID, and canvas ID.
8052
8341
  */
8053
8342
  /** @experimental */
8054
8343
  export interface CanvasClosedEvent {
@@ -8079,7 +8368,7 @@ export interface CanvasClosedEvent {
8079
8368
  type: "session.canvas.closed";
8080
8369
  }
8081
8370
  /**
8082
- * Schema for the `CanvasClosedData` type.
8371
+ * Payload of `session.canvas.closed` with the closed canvas instance ID, provider ID, and canvas ID.
8083
8372
  */
8084
8373
  /** @experimental */
8085
8374
  export interface CanvasClosedData {
@@ -8254,7 +8543,7 @@ export interface CanvasRemovedData {
8254
8543
  instanceId: string;
8255
8544
  }
8256
8545
  /**
8257
- * Session event "session.extensions.attachments_pushed".
8546
+ * Session event "session.extensions.attachments_pushed". Payload of `session.extensions.attachments_pushed` with extension-contributed attachments for the next send.
8258
8547
  */
8259
8548
  export interface ExtensionsAttachmentsPushedEvent {
8260
8549
  /**
@@ -8284,7 +8573,7 @@ export interface ExtensionsAttachmentsPushedEvent {
8284
8573
  type: "session.extensions.attachments_pushed";
8285
8574
  }
8286
8575
  /**
8287
- * Schema for the `ExtensionsAttachmentsPushedData` type.
8576
+ * Payload of `session.extensions.attachments_pushed` with extension-contributed attachments for the next send.
8288
8577
  */
8289
8578
  export interface ExtensionsAttachmentsPushedData {
8290
8579
  /**
@@ -8373,7 +8662,7 @@ export interface McpAppToolCallCompleteToolMeta {
8373
8662
  ui?: McpAppToolCallCompleteToolMetaUI;
8374
8663
  }
8375
8664
  /**
8376
- * Schema for the `McpAppToolCallCompleteToolMetaUI` type.
8665
+ * MCP App tool `_meta.ui` resource URI and SEP-1865 visibility captured with an `mcp_app.tool_call_complete` result.
8377
8666
  */
8378
8667
  export interface McpAppToolCallCompleteToolMetaUI {
8379
8668
  /**