@github/copilot-sdk-win32-x64 1.0.17-preview.2 → 1.0.17-preview.4

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.
@@ -888,6 +888,12 @@
888
888
  "title": "AssistantMessageEvent"
889
889
  },
890
890
  "AssistantMessageReasoningBlocks": {
891
+ "not": {
892
+ "required": [
893
+ "blocks",
894
+ "orderedBlocks"
895
+ ]
896
+ },
891
897
  "type": "object",
892
898
  "properties": {
893
899
  "provider": {
@@ -900,6 +906,13 @@
900
906
  "x-opaque-json": true
901
907
  },
902
908
  "description": "Provider-native reasoning items or content blocks preserved verbatim, in order. A single response can carry several, and provider signatures or identifiers may depend on their exact content and ordering."
909
+ },
910
+ "orderedBlocks": {
911
+ "type": "array",
912
+ "items": {
913
+ "x-opaque-json": true
914
+ },
915
+ "description": "Anthropic Messages assistant block ordering preserved when the legacy reasoning-only representation cannot reproduce it exactly. Thinking and text blocks remain verbatim; tool-use entries retain identity and a payload fingerprint when later signed reasoning depends on them, and are hydrated from the message's tool requests during replay."
903
916
  }
904
917
  },
905
918
  "required": [
@@ -1922,6 +1935,14 @@
1922
1935
  "type": "boolean",
1923
1936
  "description": "Whether this model call used a bring-your-own-key provider"
1924
1937
  },
1938
+ "byokKind": {
1939
+ "type": "string",
1940
+ "description": "Where the bring-your-own-key model runs and who manages it: \"local_managed\" (on the device, managed by Copilot), \"local_user\" (on the device, managed by the user), or \"remote_user\" (off the device, managed by the user). Absent for Copilot-served models."
1941
+ },
1942
+ "modelProvider": {
1943
+ "type": "string",
1944
+ "description": "Fixed-set provider family serving the bring-your-own-key model (for example \"openai\", \"anthropic\", \"azure_openai\", \"ollama\", \"llama_cpp\", or \"other\"). Never the caller-supplied provider name. Absent for Copilot-served models."
1945
+ },
1925
1946
  "isAuto": {
1926
1947
  "type": "boolean",
1927
1948
  "description": "Whether Auto mode was selected for this model call"
@@ -9132,6 +9153,235 @@
9132
9153
  "description": "Session event \"hook.start\". Hook invocation start details including type and input data",
9133
9154
  "title": "HookStartEvent"
9134
9155
  },
9156
+ "HumanResponseActor": {
9157
+ "type": "string",
9158
+ "enum": [
9159
+ "human_response",
9160
+ "host_automation",
9161
+ "unknown"
9162
+ ],
9163
+ "description": "Controlled provenance for a typed runtime response. Only `human_response`, minted by a trusted direct-interaction ingress, is human authorization evidence.",
9164
+ "title": "HumanResponseActor",
9165
+ "x-enumDescriptions": {
9166
+ "human_response": "A built-in trusted client submitted the response after direct human interaction.",
9167
+ "host_automation": "A host or SDK automation submitted the response without direct human interaction.",
9168
+ "unknown": "The response came through a legacy or otherwise unattributed ingress."
9169
+ }
9170
+ },
9171
+ "HumanResponseRecordedData": {
9172
+ "type": "object",
9173
+ "properties": {
9174
+ "requestId": {
9175
+ "type": "string",
9176
+ "description": "Request ID of the runtime-owned question or plan review."
9177
+ },
9178
+ "toolCallId": {
9179
+ "type": "string",
9180
+ "description": "Tool call ID that opened the request, when present."
9181
+ },
9182
+ "actor": {
9183
+ "$ref": "#/definitions/HumanResponseActor",
9184
+ "description": "Controlled actor provenance established at response ingress."
9185
+ },
9186
+ "response": {
9187
+ "$ref": "#/definitions/HumanResponseRecordedResponse",
9188
+ "description": "Typed request and response payload."
9189
+ }
9190
+ },
9191
+ "required": [
9192
+ "requestId",
9193
+ "actor",
9194
+ "response"
9195
+ ],
9196
+ "additionalProperties": false,
9197
+ "description": "Durable request-correlated evidence for a typed response to a runtime-owned question or plan review.",
9198
+ "title": "HumanResponseRecordedData"
9199
+ },
9200
+ "HumanResponseRecordedEvent": {
9201
+ "type": "object",
9202
+ "properties": {
9203
+ "id": {
9204
+ "type": "string",
9205
+ "format": "uuid",
9206
+ "description": "Unique event identifier (UUID v4), generated when the event is emitted"
9207
+ },
9208
+ "timestamp": {
9209
+ "type": "string",
9210
+ "format": "date-time",
9211
+ "description": "ISO 8601 timestamp when the event was created"
9212
+ },
9213
+ "parentId": {
9214
+ "anyOf": [
9215
+ {
9216
+ "type": "string",
9217
+ "format": "uuid"
9218
+ },
9219
+ {
9220
+ "type": "null"
9221
+ }
9222
+ ],
9223
+ "description": "ID of the chronologically preceding event in the session, forming a linked chain. Null for the first event."
9224
+ },
9225
+ "ephemeral": {
9226
+ "type": "boolean",
9227
+ "description": "When true, the event is transient and not persisted to the session event log on disk"
9228
+ },
9229
+ "agentId": {
9230
+ "type": "string",
9231
+ "description": "Sub-agent instance identifier. Absent for events from the root/main agent and session-level events."
9232
+ },
9233
+ "type": {
9234
+ "type": "string",
9235
+ "const": "human_response.recorded",
9236
+ "description": "Type discriminator. Always \"human_response.recorded\"."
9237
+ },
9238
+ "data": {
9239
+ "$ref": "#/definitions/HumanResponseRecordedData",
9240
+ "description": "Durable request-correlated evidence for a typed response to a runtime-owned question or plan review."
9241
+ }
9242
+ },
9243
+ "required": [
9244
+ "id",
9245
+ "timestamp",
9246
+ "parentId",
9247
+ "type",
9248
+ "data"
9249
+ ],
9250
+ "additionalProperties": false,
9251
+ "description": "Session event \"human_response.recorded\". Durable request-correlated evidence for a typed response to a runtime-owned question or plan review.",
9252
+ "title": "HumanResponseRecordedEvent"
9253
+ },
9254
+ "HumanResponseRecordedResponse": {
9255
+ "anyOf": [
9256
+ {
9257
+ "type": "object",
9258
+ "properties": {
9259
+ "content": {
9260
+ "type": "object",
9261
+ "additionalProperties": {
9262
+ "$ref": "#/definitions/ElicitationCompletedContent",
9263
+ "description": "Opaque JSON value submitted for one field in accepted `elicitation.completed` form content."
9264
+ },
9265
+ "description": "Exact answer content accepted from the user."
9266
+ },
9267
+ "message": {
9268
+ "type": "string",
9269
+ "description": "Exact question displayed to the user."
9270
+ },
9271
+ "requestedSchema": {
9272
+ "$ref": "#/definitions/ElicitationRequestedSchema",
9273
+ "description": "Exact response schema displayed to the user."
9274
+ },
9275
+ "responseKind": {
9276
+ "type": "string",
9277
+ "const": "ask_user",
9278
+ "description": "Runtime-owned response kind discriminator."
9279
+ }
9280
+ },
9281
+ "required": [
9282
+ "responseKind",
9283
+ "content",
9284
+ "message",
9285
+ "requestedSchema"
9286
+ ]
9287
+ },
9288
+ {
9289
+ "type": "object",
9290
+ "properties": {
9291
+ "question": {
9292
+ "type": "string",
9293
+ "description": "Exact question displayed to the user."
9294
+ },
9295
+ "choices": {
9296
+ "type": "array",
9297
+ "items": {
9298
+ "type": "string"
9299
+ },
9300
+ "description": "Exact choices displayed to the user, when the request offered choices."
9301
+ },
9302
+ "allowFreeform": {
9303
+ "type": "boolean",
9304
+ "description": "Whether the displayed request allowed a free-form answer."
9305
+ },
9306
+ "answer": {
9307
+ "type": "string",
9308
+ "description": "Exact selected or free-form answer submitted by the user."
9309
+ },
9310
+ "wasFreeform": {
9311
+ "type": "boolean",
9312
+ "description": "Whether the answer was typed as free-form text rather than selected from the displayed choices."
9313
+ },
9314
+ "responseKind": {
9315
+ "type": "string",
9316
+ "const": "user_input",
9317
+ "description": "Runtime-owned response kind discriminator."
9318
+ }
9319
+ },
9320
+ "required": [
9321
+ "responseKind",
9322
+ "question",
9323
+ "answer",
9324
+ "wasFreeform"
9325
+ ]
9326
+ },
9327
+ {
9328
+ "type": "object",
9329
+ "properties": {
9330
+ "summary": {
9331
+ "type": "string",
9332
+ "description": "Exact plan summary displayed to the user."
9333
+ },
9334
+ "planContent": {
9335
+ "type": "string",
9336
+ "description": "Exact full plan content available from the review UI."
9337
+ },
9338
+ "actions": {
9339
+ "type": "array",
9340
+ "items": {
9341
+ "$ref": "#/definitions/ExitPlanModeAction",
9342
+ "description": "Exit plan mode action"
9343
+ },
9344
+ "description": "Actions offered by the plan review UI."
9345
+ },
9346
+ "recommendedAction": {
9347
+ "$ref": "#/definitions/ExitPlanModeAction",
9348
+ "description": "Action the plan review UI recommended."
9349
+ },
9350
+ "approved": {
9351
+ "type": "boolean",
9352
+ "description": "Whether the user approved the reviewed plan."
9353
+ },
9354
+ "selectedAction": {
9355
+ "$ref": "#/definitions/ExitPlanModeAction",
9356
+ "description": "Action selected by the user, when applicable."
9357
+ },
9358
+ "autoApproveEdits": {
9359
+ "type": "boolean",
9360
+ "description": "Whether the selected response requested edit auto-approval."
9361
+ },
9362
+ "feedback": {
9363
+ "type": "string",
9364
+ "description": "Exact feedback submitted with the plan decision, when present."
9365
+ },
9366
+ "responseKind": {
9367
+ "type": "string",
9368
+ "const": "exit_plan_mode",
9369
+ "description": "Runtime-owned response kind discriminator."
9370
+ }
9371
+ },
9372
+ "required": [
9373
+ "responseKind",
9374
+ "summary",
9375
+ "planContent",
9376
+ "actions",
9377
+ "recommendedAction",
9378
+ "approved"
9379
+ ]
9380
+ }
9381
+ ],
9382
+ "description": "Exact runtime-owned question or reviewed plan paired with the typed response that settled it.",
9383
+ "title": "HumanResponseRecordedResponse"
9384
+ },
9135
9385
  "IdleData": {
9136
9386
  "type": "object",
9137
9387
  "properties": {
@@ -11331,6 +11581,14 @@
11331
11581
  "type": "boolean",
11332
11582
  "description": "Whether the failed call used a bring-your-own-key provider"
11333
11583
  },
11584
+ "byokKind": {
11585
+ "type": "string",
11586
+ "description": "Where the bring-your-own-key model for the failed call runs and who manages it: \"local_managed\" (on the device, managed by Copilot), \"local_user\" (on the device, managed by the user), or \"remote_user\" (off the device, managed by the user). Absent for Copilot-served models."
11587
+ },
11588
+ "modelProvider": {
11589
+ "type": "string",
11590
+ "description": "Fixed-set provider family serving the bring-your-own-key model for the failed call (for example \"openai\", \"anthropic\", \"azure_openai\", \"ollama\", \"llama_cpp\", or \"other\"). Never the caller-supplied provider name. Absent for Copilot-served models."
11591
+ },
11334
11592
  "isAuto": {
11335
11593
  "type": "boolean",
11336
11594
  "description": "Whether the session selected Auto mode for the failed call"
@@ -11869,6 +12127,10 @@
11869
12127
  ],
11870
12128
  "description": "Reasoning effort level after the model change, if applicable"
11871
12129
  },
12130
+ "reasoningEffortModel": {
12131
+ "type": "string",
12132
+ "description": "Model that owns effort embedded in an authored model selection. Omitted for independent reasoning-effort overrides and legacy events."
12133
+ },
11872
12134
  "previousReasoningSummary": {
11873
12135
  "$ref": "#/definitions/ReasoningSummary",
11874
12136
  "description": "Reasoning summary mode before the model change, if applicable"
@@ -16026,6 +16288,10 @@
16026
16288
  "type": "string",
16027
16289
  "description": "Reasoning effort level used for model calls, if applicable (e.g. \"none\", \"low\", \"medium\", \"high\", \"xhigh\", \"max\")"
16028
16290
  },
16291
+ "reasoningEffortModel": {
16292
+ "type": "string",
16293
+ "description": "Model that owns effort embedded in an authored model selection. Omitted for independent reasoning-effort overrides and legacy events."
16294
+ },
16029
16295
  "reasoningSummary": {
16030
16296
  "$ref": "#/definitions/ReasoningSummary",
16031
16297
  "description": "Reasoning summary mode used for model calls, if applicable (e.g. \"none\", \"concise\", \"detailed\")"
@@ -17897,7 +18163,11 @@
17897
18163
  },
17898
18164
  {
17899
18165
  "$ref": "#/definitions/ToolExecutionPartialResultEvent",
17900
- "description": "Session event \"tool.execution_partial_result\". Streaming tool execution output for incremental result display"
18166
+ "description": "Session event \"tool.execution_partial_result\". Deprecated merged replacement snapshot of shell output. Use tool.shell_output for append-only, stream-tagged output instead."
18167
+ },
18168
+ {
18169
+ "$ref": "#/definitions/ToolShellOutputEvent",
18170
+ "description": "Session event \"tool.shell_output\". Live, append-only shell output. Not persisted or replayed to late subscribers. Text is decoded and redacted per chunk; chunks need not contain complete lines."
17901
18171
  },
17902
18172
  {
17903
18173
  "$ref": "#/definitions/ToolExecutionProgressEvent",
@@ -18127,6 +18397,10 @@
18127
18397
  "$ref": "#/definitions/ExitPlanModeCompletedEvent",
18128
18398
  "description": "Session event \"exit_plan_mode.completed\". Plan mode exit completion with the user's approval decision and optional feedback"
18129
18399
  },
18400
+ {
18401
+ "$ref": "#/definitions/HumanResponseRecordedEvent",
18402
+ "description": "Session event \"human_response.recorded\". Durable request-correlated evidence for a typed response to a runtime-owned question or plan review."
18403
+ },
18130
18404
  {
18131
18405
  "$ref": "#/definitions/ToolsUpdatedEvent",
18132
18406
  "description": "Session event \"session.tools_updated\". Payload of `session.tools_updated` identifying the model whose resolved tools were updated."
@@ -19587,6 +19861,10 @@
19587
19861
  "type": "string",
19588
19862
  "description": "Reasoning effort level used for model calls, if applicable (e.g. \"none\", \"low\", \"medium\", \"high\", \"xhigh\", \"max\")"
19589
19863
  },
19864
+ "reasoningEffortModel": {
19865
+ "type": "string",
19866
+ "description": "Model that owns effort embedded in an authored model selection. Omitted for independent reasoning-effort overrides and legacy events."
19867
+ },
19590
19868
  "reasoningSummary": {
19591
19869
  "$ref": "#/definitions/ReasoningSummary",
19592
19870
  "description": "Reasoning summary mode used for model calls, if applicable (e.g. \"none\", \"concise\", \"detailed\")"
@@ -21635,6 +21913,15 @@
21635
21913
  "description": "Experimental shell completion facts captured before the persisted result contents are stripped.",
21636
21914
  "stability": "experimental"
21637
21915
  },
21916
+ "fileEdits": {
21917
+ "type": "array",
21918
+ "items": {
21919
+ "$ref": "#/definitions/ToolExecutionCompleteFileEdit",
21920
+ "description": "A file mutation that was actually committed by a built-in file editing tool."
21921
+ },
21922
+ "description": "Experimental. File mutations actually committed by a built-in file editing tool, in execution order. Present on successful edits and on partial failures when earlier mutations were committed. Paths are absolute in the session filesystem namespace.",
21923
+ "stability": "experimental"
21924
+ },
21638
21925
  "parentToolCallId": {
21639
21926
  "type": "string",
21640
21927
  "description": "Tool call ID of the parent tool invocation when this event originates from a sub-agent",
@@ -21731,6 +22018,43 @@
21731
22018
  "description": "Session event \"tool.execution_complete\". Tool execution completion results including success status, detailed output, and error information",
21732
22019
  "title": "ToolExecutionCompleteEvent"
21733
22020
  },
22021
+ "ToolExecutionCompleteFileEdit": {
22022
+ "type": "object",
22023
+ "properties": {
22024
+ "path": {
22025
+ "type": "string",
22026
+ "description": "Absolute path in the session filesystem namespace."
22027
+ },
22028
+ "kind": {
22029
+ "$ref": "#/definitions/ToolExecutionCompleteFileEditKind",
22030
+ "description": "Kind of mutation committed at this path."
22031
+ }
22032
+ },
22033
+ "required": [
22034
+ "path",
22035
+ "kind"
22036
+ ],
22037
+ "additionalProperties": false,
22038
+ "description": "A file mutation that was actually committed by a built-in file editing tool.",
22039
+ "title": "ToolExecutionCompleteFileEdit",
22040
+ "stability": "experimental"
22041
+ },
22042
+ "ToolExecutionCompleteFileEditKind": {
22043
+ "type": "string",
22044
+ "enum": [
22045
+ "create",
22046
+ "edit",
22047
+ "delete"
22048
+ ],
22049
+ "description": "Kind of file mutation committed by a built-in editing tool.",
22050
+ "title": "ToolExecutionCompleteFileEditKind",
22051
+ "x-enumDescriptions": {
22052
+ "create": "A file was created.",
22053
+ "edit": "A file was written by an edit operation.",
22054
+ "delete": "A file was deleted."
22055
+ },
22056
+ "stability": "experimental"
22057
+ },
21734
22058
  "ToolExecutionCompleteResult": {
21735
22059
  "type": "object",
21736
22060
  "properties": {
@@ -22033,7 +22357,7 @@
22033
22357
  },
22034
22358
  "partialOutput": {
22035
22359
  "type": "string",
22036
- "description": "Incremental output chunk from the running tool"
22360
+ "description": "Merged replacement snapshot from the running shell, not an append-only chunk"
22037
22361
  }
22038
22362
  },
22039
22363
  "required": [
@@ -22041,8 +22365,9 @@
22041
22365
  "partialOutput"
22042
22366
  ],
22043
22367
  "additionalProperties": false,
22044
- "description": "Streaming tool execution output for incremental result display",
22045
- "title": "ToolExecutionPartialData"
22368
+ "description": "Deprecated merged replacement snapshot of shell output. Use tool.shell_output for append-only, stream-tagged output instead.",
22369
+ "title": "ToolExecutionPartialData",
22370
+ "deprecated": true
22046
22371
  },
22047
22372
  "ToolExecutionPartialResultEvent": {
22048
22373
  "type": "object",
@@ -22085,7 +22410,7 @@
22085
22410
  },
22086
22411
  "data": {
22087
22412
  "$ref": "#/definitions/ToolExecutionPartialData",
22088
- "description": "Streaming tool execution output for incremental result display"
22413
+ "description": "Deprecated merged replacement snapshot of shell output. Use tool.shell_output for append-only, stream-tagged output instead."
22089
22414
  }
22090
22415
  },
22091
22416
  "required": [
@@ -22097,8 +22422,9 @@
22097
22422
  "data"
22098
22423
  ],
22099
22424
  "additionalProperties": false,
22100
- "description": "Session event \"tool.execution_partial_result\". Streaming tool execution output for incremental result display",
22101
- "title": "ToolExecutionPartialResultEvent"
22425
+ "description": "Session event \"tool.execution_partial_result\". Deprecated merged replacement snapshot of shell output. Use tool.shell_output for append-only, stream-tagged output instead.",
22426
+ "title": "ToolExecutionPartialResultEvent",
22427
+ "deprecated": true
22102
22428
  },
22103
22429
  "ToolExecutionProgressData": {
22104
22430
  "type": "object",
@@ -22489,6 +22815,107 @@
22489
22815
  "description": "Session event \"tool_search.activated\". Persisted generic client-side tool activations restored when a session resumes.",
22490
22816
  "title": "ToolSearchActivatedEvent"
22491
22817
  },
22818
+ "ToolShellOutputData": {
22819
+ "type": "object",
22820
+ "properties": {
22821
+ "toolCallId": {
22822
+ "type": "string",
22823
+ "description": "Tool call ID that owns this shell output"
22824
+ },
22825
+ "stream": {
22826
+ "$ref": "#/definitions/ToolShellOutputStream",
22827
+ "default": "stdout",
22828
+ "description": "Output source. Omission means stdout. Terminal output has no separate stdout/stderr attribution."
22829
+ },
22830
+ "text": {
22831
+ "type": "string",
22832
+ "description": "New output to append, without synthetic shell-result markers or stream-switch separators"
22833
+ },
22834
+ "sequence": {
22835
+ "type": "integer",
22836
+ "minimum": 0,
22837
+ "description": "Zero-based publication sequence across all output streams for this tool call. Not a byte offset or an OS write-order guarantee."
22838
+ }
22839
+ },
22840
+ "required": [
22841
+ "toolCallId",
22842
+ "text",
22843
+ "sequence"
22844
+ ],
22845
+ "additionalProperties": false,
22846
+ "description": "Live, append-only shell output. Not persisted or replayed to late subscribers. Text is decoded and redacted per chunk; chunks need not contain complete lines.",
22847
+ "title": "ToolShellOutputData"
22848
+ },
22849
+ "ToolShellOutputEvent": {
22850
+ "type": "object",
22851
+ "properties": {
22852
+ "id": {
22853
+ "type": "string",
22854
+ "format": "uuid",
22855
+ "description": "Unique event identifier (UUID v4), generated when the event is emitted"
22856
+ },
22857
+ "timestamp": {
22858
+ "type": "string",
22859
+ "format": "date-time",
22860
+ "description": "ISO 8601 timestamp when the event was created"
22861
+ },
22862
+ "parentId": {
22863
+ "anyOf": [
22864
+ {
22865
+ "type": "string",
22866
+ "format": "uuid"
22867
+ },
22868
+ {
22869
+ "type": "null"
22870
+ }
22871
+ ],
22872
+ "description": "ID of the chronologically preceding event in the session, forming a linked chain. Null for the first event."
22873
+ },
22874
+ "ephemeral": {
22875
+ "type": "boolean",
22876
+ "const": true,
22877
+ "description": "Always true for events that are transient and not persisted to the session event log on disk."
22878
+ },
22879
+ "agentId": {
22880
+ "type": "string",
22881
+ "description": "Sub-agent instance identifier. Absent for events from the root/main agent and session-level events."
22882
+ },
22883
+ "type": {
22884
+ "type": "string",
22885
+ "const": "tool.shell_output",
22886
+ "description": "Type discriminator. Always \"tool.shell_output\"."
22887
+ },
22888
+ "data": {
22889
+ "$ref": "#/definitions/ToolShellOutputData",
22890
+ "description": "Live, append-only shell output. Not persisted or replayed to late subscribers. Text is decoded and redacted per chunk; chunks need not contain complete lines."
22891
+ }
22892
+ },
22893
+ "required": [
22894
+ "id",
22895
+ "timestamp",
22896
+ "parentId",
22897
+ "ephemeral",
22898
+ "type",
22899
+ "data"
22900
+ ],
22901
+ "additionalProperties": false,
22902
+ "description": "Session event \"tool.shell_output\". Live, append-only shell output. Not persisted or replayed to late subscribers. Text is decoded and redacted per chunk; chunks need not contain complete lines.",
22903
+ "title": "ToolShellOutputEvent"
22904
+ },
22905
+ "ToolShellOutputStream": {
22906
+ "type": "string",
22907
+ "enum": [
22908
+ "stdout",
22909
+ "stderr",
22910
+ "terminal"
22911
+ ],
22912
+ "description": "Shell output source. Terminal output has no separate stdout/stderr attribution.",
22913
+ "x-enumDescriptions": {
22914
+ "stdout": "Output from the shell command's standard output stream. This is the default when stream is omitted.",
22915
+ "stderr": "Output from the shell command's standard error stream.",
22916
+ "terminal": "Inherently merged output that cannot be attributed separately to stdout or stderr."
22917
+ }
22918
+ },
22492
22919
  "ToolsUpdatedData": {
22493
22920
  "type": "object",
22494
22921
  "properties": {
Binary file