@github/copilot-sdk-darwin-arm64 1.0.15 → 1.0.16

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.
@@ -3,6 +3,158 @@
3
3
  "title": "CopilotApi",
4
4
  "description": "Describes all JSON-RPC methods exposed by the Copilot CLI server. SDK codegen tools consume this to produce typed client wrappers.",
5
5
  "server": {
6
+ "environments": {
7
+ "list": {
8
+ "rpcMethod": "environments.list",
9
+ "description": "Lists GitHub Mission Control environments visible to the authenticated identity. Does not require a running host and excludes host relay credentials.",
10
+ "params": {
11
+ "$ref": "#/definitions/EnvironmentsListRequest",
12
+ "description": "Optional discovery filters supported by GitHub Mission Control."
13
+ },
14
+ "result": {
15
+ "$ref": "#/definitions/EnvironmentsListResult",
16
+ "description": "Environments visible to the authenticated caller and matching the supplied filters."
17
+ },
18
+ "stability": "experimental"
19
+ },
20
+ "get": {
21
+ "rpcMethod": "environments.get",
22
+ "description": "Gets safe discovery information for a GitHub Mission Control environment without requiring a running host.",
23
+ "params": {
24
+ "$ref": "#/definitions/EnvironmentsGetRequest",
25
+ "description": "Identify a Mission Control environment to retrieve."
26
+ },
27
+ "result": {
28
+ "$ref": "#/definitions/EnvironmentsGetResult",
29
+ "description": "Safe discovery information for the requested environment."
30
+ },
31
+ "stability": "experimental"
32
+ },
33
+ "delete": {
34
+ "rpcMethod": "environments.delete",
35
+ "description": "Deletes a user-managed GitHub Mission Control environment. GitHub-managed environments cannot be deleted. Does not stop a running host, which may register again.",
36
+ "params": {
37
+ "$ref": "#/definitions/EnvironmentsDeleteRequest",
38
+ "description": "Identify a user-managed Mission Control environment to delete."
39
+ },
40
+ "result": {
41
+ "$ref": "#/definitions/EnvironmentsDeleteResult",
42
+ "description": "Acknowledgement that the requested environment was deleted."
43
+ },
44
+ "stability": "experimental"
45
+ }
46
+ },
47
+ "host": {
48
+ "publishSession": {
49
+ "rpcMethod": "host.publishSession",
50
+ "description": "Publishes an attached resident session for this listener's lifetime without copying it.",
51
+ "params": {
52
+ "$ref": "#/definitions/HostPublishSessionRequest",
53
+ "description": "Publishes a resident session attached to the listener's owning connection."
54
+ },
55
+ "result": {
56
+ "$ref": "#/definitions/HostPublishSessionResult",
57
+ "description": "The existing runtime identity and its resource on the listener."
58
+ },
59
+ "stability": "experimental"
60
+ },
61
+ "createSession": {
62
+ "rpcMethod": "host.createSession",
63
+ "description": "Requests app-owned materialization over the owning SDK participant.",
64
+ "params": {
65
+ "$ref": "#/definitions/HostSessionCreateRequest",
66
+ "description": "One application-owned session handoff, requested by the supervised hosting participant."
67
+ },
68
+ "result": {
69
+ "$ref": "#/definitions/HostSessionCreateResult",
70
+ "description": "The resident session the application has materialized on its own connection."
71
+ },
72
+ "stability": "experimental",
73
+ "visibility": "internal"
74
+ },
75
+ "releaseSession": {
76
+ "rpcMethod": "host.releaseSession",
77
+ "description": "Releases app ownership retention after AHP detaches.",
78
+ "params": {
79
+ "$ref": "#/definitions/HostSessionReleaseRequest",
80
+ "description": "Ends one participation, not the application's session lifetime."
81
+ },
82
+ "result": {
83
+ "$ref": "#/definitions/HostEmptyResult",
84
+ "description": "Empty acknowledgement for a completed host lifecycle operation."
85
+ },
86
+ "stability": "experimental",
87
+ "visibility": "internal"
88
+ },
89
+ "start": {
90
+ "rpcMethod": "host.start",
91
+ "description": "Starts a connection-owned AHP host with explicit localServer and/or githubEnvironment transports as a supervised SDK participant.",
92
+ "params": {
93
+ "$ref": "#/definitions/HostStartRequest",
94
+ "description": "Starts a supervised AHP host with at least one explicitly selected transport."
95
+ },
96
+ "result": {
97
+ "$ref": "#/definitions/HostStartResult",
98
+ "description": "Listener readiness, returned only after binding and the supervised participant's SDK handshake."
99
+ },
100
+ "stability": "experimental"
101
+ },
102
+ "dispose": {
103
+ "rpcMethod": "host.dispose",
104
+ "description": "Stops a listener owned by this SDK connection and joins its cleanup without deleting sessions.",
105
+ "params": {
106
+ "$ref": "#/definitions/HostDisposeRequest",
107
+ "description": "Stops a connection-owned listener and joins its teardown."
108
+ },
109
+ "result": {
110
+ "$ref": "#/definitions/HostEmptyResult",
111
+ "description": "Empty acknowledgement for a completed host lifecycle operation."
112
+ },
113
+ "stability": "experimental"
114
+ },
115
+ "getEnvironmentCredentials": {
116
+ "rpcMethod": "host.getEnvironmentCredentials",
117
+ "description": "Resolves current authenticated credentials and remote-control policy only for the runtime-owned Mission Control hosting participant.",
118
+ "params": {
119
+ "$ref": "#/definitions/HostEmptyResult",
120
+ "description": "Empty acknowledgement for a completed host lifecycle operation."
121
+ },
122
+ "result": {
123
+ "$ref": "#/definitions/HostEnvironmentCredentials",
124
+ "description": "Private credentials delivered only to a runtime-owned Mission Control hosting participant."
125
+ },
126
+ "stability": "experimental",
127
+ "visibility": "internal"
128
+ },
129
+ "getConfiguration": {
130
+ "rpcMethod": "host.getConfiguration",
131
+ "description": "Returns listener settings only to the supervised hosting participant over its SDK connection.",
132
+ "params": {
133
+ "$ref": "#/definitions/HostEmptyResult",
134
+ "description": "Empty acknowledgement for a completed host lifecycle operation."
135
+ },
136
+ "result": {
137
+ "$ref": "#/definitions/HostConfiguration",
138
+ "description": "Normalized listener settings delivered only to the supervised hosting participant."
139
+ },
140
+ "stability": "experimental",
141
+ "visibility": "internal"
142
+ },
143
+ "ready": {
144
+ "rpcMethod": "host.ready",
145
+ "description": "Reports a supervised hosting participant's bound AHP endpoint after its SDK handshake.",
146
+ "params": {
147
+ "$ref": "#/definitions/HostReadyRequest",
148
+ "description": "Readiness reported by the supervised hosting participant on its own SDK connection."
149
+ },
150
+ "result": {
151
+ "$ref": "#/definitions/HostEmptyResult",
152
+ "description": "Empty acknowledgement for a completed host lifecycle operation."
153
+ },
154
+ "stability": "experimental",
155
+ "visibility": "internal"
156
+ }
157
+ },
6
158
  "ping": {
7
159
  "rpcMethod": "ping",
8
160
  "description": "Checks server responsiveness and returns protocol information.",
@@ -1681,6 +1833,40 @@
1681
1833
  "description": "Result of attempting to disable sandboxing for the current session."
1682
1834
  },
1683
1835
  "stability": "experimental"
1836
+ },
1837
+ "grantPathForRequest": {
1838
+ "rpcMethod": "session.sandbox.grantPathForRequest",
1839
+ "description": "Adds the path offered by a pending sandbox escalation permission request's sandboxPathGrant to the session's sandbox policy and approves the request, so the blocked operation re-runs inside the sandbox rather than outside it. The request is rejected unless the exact request is still pending, carries a sandboxPathGrant, and the grant still takes effect under the current managed policy. Does not persist the path; hosts that store sandbox settings save it themselves.",
1840
+ "params": {
1841
+ "type": "object",
1842
+ "properties": {
1843
+ "sessionId": {
1844
+ "type": "string",
1845
+ "description": "Target session identifier"
1846
+ },
1847
+ "requestId": {
1848
+ "type": "string",
1849
+ "description": "Identifier of the exact pending sandbox escalation permission request whose sandboxPathGrant to accept."
1850
+ },
1851
+ "decisionContext": {
1852
+ "$ref": "#/definitions/PermissionDecisionContext",
1853
+ "description": "Optional attribution for the permission decision."
1854
+ }
1855
+ },
1856
+ "required": [
1857
+ "sessionId",
1858
+ "requestId"
1859
+ ],
1860
+ "additionalProperties": false,
1861
+ "description": "Request to accept the sandbox path grant offered on an active sandbox escalation permission prompt.",
1862
+ "title": "SandboxGrantPathForRequestRequest",
1863
+ "stability": "experimental"
1864
+ },
1865
+ "result": {
1866
+ "$ref": "#/definitions/SandboxGrantPathForRequestResult",
1867
+ "description": "Result of accepting a sandbox path grant."
1868
+ },
1869
+ "stability": "experimental"
1684
1870
  }
1685
1871
  },
1686
1872
  "sendSystemNotification": {
@@ -7615,6 +7801,39 @@
7615
7801
  "description": "The selectable model entries and selection ids synthesized for the synchronized BYOK models."
7616
7802
  },
7617
7803
  "stability": "experimental"
7804
+ },
7805
+ "withdraw": {
7806
+ "rpcMethod": "session.provider.withdraw",
7807
+ "description": "Withdraws named host-managed models from the session's BYOK registry, leaving every other entry untouched. The scoped counterpart to `provider.sync`: a snapshot can only describe entries the caller knows about, so using it to remove one model silently withdraws rows registered by another source, such as a plugin calling `provider.add` at runtime. Naming what to remove leaves unrelated entries alone. Selection ids that are not registered are ignored, so withdrawal is idempotent. A provider is removed only when one of the withdrawn models was the last entry referencing it; a provider that simply has no models, which is the normal state while its rows are supplied by catalog discovery, is left in place.",
7808
+ "params": {
7809
+ "type": "object",
7810
+ "properties": {
7811
+ "sessionId": {
7812
+ "type": "string",
7813
+ "description": "Target session identifier"
7814
+ },
7815
+ "models": {
7816
+ "type": "array",
7817
+ "items": {
7818
+ "type": "string"
7819
+ },
7820
+ "description": "Provider-qualified selection ids to withdraw. Ids that are not registered are ignored, so withdrawal is idempotent. A provider left with no models referencing it is removed too."
7821
+ }
7822
+ },
7823
+ "required": [
7824
+ "sessionId",
7825
+ "models"
7826
+ ],
7827
+ "additionalProperties": false,
7828
+ "description": "Host-managed model selection ids to withdraw from the session's BYOK registry.",
7829
+ "title": "ProviderWithdrawRequest",
7830
+ "stability": "experimental"
7831
+ },
7832
+ "result": {
7833
+ "$ref": "#/definitions/ProviderWithdrawResult",
7834
+ "description": "What the withdrawal actually removed from the registry."
7835
+ },
7836
+ "stability": "experimental"
7618
7837
  }
7619
7838
  },
7620
7839
  "options": {
@@ -7748,7 +7967,8 @@
7748
7967
  },
7749
7968
  "sandboxConfigSource": {
7750
7969
  "$ref": "#/definitions/SandboxConfigSource",
7751
- "description": "Origin of the sandbox choice. Settings-derived origins (never_configured, user_enabled, user_disabled, repository_policy) let managed policy floor a host preference; explicit below-floor changes remain policy conflicts unless a session opt-out is authorized. Also used for telemetry provenance."
7970
+ "description": "Origin of the sandbox choice. Settings-derived origins (never_configured, user_enabled, user_disabled, repository_policy) let managed policy floor a host preference; explicit below-floor changes remain policy conflicts unless a session opt-out is authorized. Also used for telemetry provenance.",
7971
+ "stability": "experimental"
7752
7972
  },
7753
7973
  "logInteractiveShells": {
7754
7974
  "type": "boolean",
@@ -12810,6 +13030,77 @@
12810
13030
  }
12811
13031
  },
12812
13032
  "clientGlobal": {
13033
+ "host": {
13034
+ "registerSession": {
13035
+ "rpcMethod": "host.registerSession",
13036
+ "description": "Registers an existing resident session on the supervised listener without durable adoption.",
13037
+ "params": {
13038
+ "$ref": "#/definitions/HostRegisterSessionRequest",
13039
+ "description": "Listener-scoped registration, not a copy or durable adoption of a session."
13040
+ },
13041
+ "result": {
13042
+ "$ref": "#/definitions/HostPublishSessionResult",
13043
+ "description": "The existing runtime identity and its resource on the listener."
13044
+ },
13045
+ "stability": "experimental",
13046
+ "visibility": "internal"
13047
+ },
13048
+ "materializeSession": {
13049
+ "rpcMethod": "host.materializeSession",
13050
+ "description": "Materializes an AHP session in the owning application.",
13051
+ "params": {
13052
+ "$ref": "#/definitions/HostSessionCreateCallback",
13053
+ "description": "Application callback routed over its existing SDK connection."
13054
+ },
13055
+ "result": {
13056
+ "$ref": "#/definitions/HostSessionCreateResult",
13057
+ "description": "The resident session the application has materialized on its own connection."
13058
+ },
13059
+ "stability": "experimental",
13060
+ "visibility": "internal"
13061
+ },
13062
+ "sessionReleased": {
13063
+ "rpcMethod": "host.sessionReleased",
13064
+ "description": "Ends application object retention for an AHP participation.",
13065
+ "params": {
13066
+ "$ref": "#/definitions/HostSessionReleasedNotification",
13067
+ "description": "Releases the original application session object retained for one handoff."
13068
+ },
13069
+ "result": {
13070
+ "type": "null"
13071
+ },
13072
+ "notification": true,
13073
+ "stability": "experimental",
13074
+ "visibility": "internal"
13075
+ },
13076
+ "shutdown": {
13077
+ "rpcMethod": "host.shutdown",
13078
+ "description": "Requests graceful shutdown of a supervised AHP listener and its clients.",
13079
+ "params": {
13080
+ "$ref": "#/definitions/HostEmptyResult",
13081
+ "description": "Empty acknowledgement for a completed host lifecycle operation."
13082
+ },
13083
+ "result": {
13084
+ "$ref": "#/definitions/HostEmptyResult",
13085
+ "description": "Empty acknowledgement for a completed host lifecycle operation."
13086
+ },
13087
+ "stability": "experimental",
13088
+ "visibility": "internal"
13089
+ },
13090
+ "exited": {
13091
+ "rpcMethod": "host.exited",
13092
+ "description": "Reports termination of a connection-owned host listener.",
13093
+ "params": {
13094
+ "$ref": "#/definitions/HostExitedNotification",
13095
+ "description": "Reports a supervised listener's hosting-task termination and cleanup outcome."
13096
+ },
13097
+ "result": {
13098
+ "type": "null"
13099
+ },
13100
+ "notification": true,
13101
+ "stability": "experimental"
13102
+ }
13103
+ },
12813
13104
  "hooks": {
12814
13105
  "invoke": {
12815
13106
  "rpcMethod": "hooks.invoke",
@@ -21507,6 +21798,133 @@
21507
21798
  "description": "Authentication-info input variant for a token sourced from an environment variable, with host, optional login, token, and env var name.",
21508
21799
  "title": "EnvAuthInfo"
21509
21800
  },
21801
+ "EnvironmentCapabilities": {
21802
+ "type": "object",
21803
+ "properties": {
21804
+ "ahpVersion": {
21805
+ "type": "string",
21806
+ "description": "Advertised Agent Host Protocol version."
21807
+ },
21808
+ "features": {
21809
+ "type": "array",
21810
+ "items": {
21811
+ "type": "string"
21812
+ },
21813
+ "description": "Feature identifiers advertised by the environment."
21814
+ },
21815
+ "maxSessions": {
21816
+ "type": "integer",
21817
+ "minimum": 0,
21818
+ "description": "Maximum session capacity, when advertised."
21819
+ },
21820
+ "currentSessions": {
21821
+ "type": "integer",
21822
+ "minimum": 0,
21823
+ "description": "Current session count, when advertised."
21824
+ }
21825
+ },
21826
+ "required": [
21827
+ "features"
21828
+ ],
21829
+ "description": "Hosting capabilities and session capacity advertised by an environment."
21830
+ },
21831
+ "EnvironmentKind": {
21832
+ "type": "string",
21833
+ "enum": [
21834
+ "user-local",
21835
+ "user-codespace",
21836
+ "managed-actions",
21837
+ "managed-sandbox",
21838
+ "managed-cca"
21839
+ ],
21840
+ "description": "GitHub Mission Control compute kind.",
21841
+ "x-enumDescriptions": {
21842
+ "user-local": "A user-managed environment on a local machine.",
21843
+ "user-codespace": "A user-managed environment in a GitHub Codespace.",
21844
+ "managed-actions": "A GitHub-managed environment backed by GitHub Actions.",
21845
+ "managed-sandbox": "A GitHub-managed sandbox environment.",
21846
+ "managed-cca": "A GitHub-managed cloud coding agent environment."
21847
+ }
21848
+ },
21849
+ "EnvironmentsDeleteRequest": {
21850
+ "type": "object",
21851
+ "properties": {
21852
+ "environmentId": {
21853
+ "type": "string",
21854
+ "description": "User-managed environment to delete. GitHub-managed environments cannot be deleted."
21855
+ }
21856
+ },
21857
+ "required": [
21858
+ "environmentId"
21859
+ ],
21860
+ "additionalProperties": false,
21861
+ "description": "Identify a user-managed Mission Control environment to delete."
21862
+ },
21863
+ "EnvironmentsDeleteResult": {
21864
+ "type": "object",
21865
+ "properties": {},
21866
+ "additionalProperties": false,
21867
+ "description": "Acknowledgement that the requested environment was deleted."
21868
+ },
21869
+ "EnvironmentsGetRequest": {
21870
+ "type": "object",
21871
+ "properties": {
21872
+ "environmentId": {
21873
+ "type": "string",
21874
+ "description": "Identifier assigned by Mission Control."
21875
+ }
21876
+ },
21877
+ "required": [
21878
+ "environmentId"
21879
+ ],
21880
+ "additionalProperties": false,
21881
+ "description": "Identify a Mission Control environment to retrieve."
21882
+ },
21883
+ "EnvironmentsGetResult": {
21884
+ "type": "object",
21885
+ "properties": {
21886
+ "environment": {
21887
+ "$ref": "#/definitions/GitHubEnvironment",
21888
+ "description": "The requested environment without relay bootstrap credentials."
21889
+ }
21890
+ },
21891
+ "required": [
21892
+ "environment"
21893
+ ],
21894
+ "description": "Safe discovery information for the requested environment."
21895
+ },
21896
+ "EnvironmentsListRequest": {
21897
+ "type": "object",
21898
+ "properties": {
21899
+ "kind": {
21900
+ "$ref": "#/definitions/EnvironmentKind",
21901
+ "description": "Restrict discovery to this compute kind."
21902
+ },
21903
+ "status": {
21904
+ "type": "string",
21905
+ "description": "Operational status, such as online, offline, degraded, waking, or draining."
21906
+ }
21907
+ },
21908
+ "additionalProperties": false,
21909
+ "description": "Optional discovery filters supported by GitHub Mission Control."
21910
+ },
21911
+ "EnvironmentsListResult": {
21912
+ "type": "object",
21913
+ "properties": {
21914
+ "environments": {
21915
+ "type": "array",
21916
+ "items": {
21917
+ "$ref": "#/definitions/GitHubEnvironment",
21918
+ "description": "Safe discovery information. Host-side relay bootstrap credentials are never included."
21919
+ },
21920
+ "description": "Safe discovery records without relay bootstrap credentials."
21921
+ }
21922
+ },
21923
+ "required": [
21924
+ "environments"
21925
+ ],
21926
+ "description": "Environments visible to the authenticated caller and matching the supplied filters."
21927
+ },
21510
21928
  "EventLogReadRequest": {
21511
21929
  "type": "object",
21512
21930
  "properties": {
@@ -22511,6 +22929,61 @@
22511
22929
  "description": "Authentication-info input variant for GitHub CLI credentials, carrying host, login, and the `gh auth token` value.",
22512
22930
  "title": "GhCliAuthInfo"
22513
22931
  },
22932
+ "GitHubEnvironment": {
22933
+ "type": "object",
22934
+ "properties": {
22935
+ "id": {
22936
+ "type": "string",
22937
+ "description": "Identifier assigned by Mission Control."
22938
+ },
22939
+ "name": {
22940
+ "type": "string",
22941
+ "description": "Human-readable environment name."
22942
+ },
22943
+ "kind": {
22944
+ "$ref": "#/definitions/EnvironmentKind",
22945
+ "description": "Compute kind reported by Mission Control."
22946
+ },
22947
+ "status": {
22948
+ "type": "string",
22949
+ "description": "Open-ended operational status vocabulary."
22950
+ },
22951
+ "capabilities": {
22952
+ "$ref": "#/definitions/EnvironmentCapabilities",
22953
+ "description": "Hosting capabilities advertised by the environment."
22954
+ },
22955
+ "ownerId": {
22956
+ "type": "string",
22957
+ "description": "Identifier of the environment owner."
22958
+ },
22959
+ "ownerType": {
22960
+ "type": "string",
22961
+ "description": "Owner category reported by Mission Control."
22962
+ },
22963
+ "orgId": {
22964
+ "type": "string",
22965
+ "description": "Organization identifier, when the environment belongs to an organization."
22966
+ },
22967
+ "labels": {
22968
+ "type": "object",
22969
+ "additionalProperties": {
22970
+ "type": "string"
22971
+ },
22972
+ "description": "Discovery labels attached to the environment."
22973
+ },
22974
+ "lastHeartbeatAt": {
22975
+ "type": "string",
22976
+ "description": "Timestamp of the last heartbeat received by Mission Control."
22977
+ }
22978
+ },
22979
+ "required": [
22980
+ "id",
22981
+ "name",
22982
+ "kind",
22983
+ "status"
22984
+ ],
22985
+ "description": "Safe discovery information. Host-side relay bootstrap credentials are never included."
22986
+ },
22514
22987
  "GitHubRepoRef": {
22515
22988
  "type": "object",
22516
22989
  "properties": {
@@ -23566,6 +24039,459 @@
23566
24039
  "notification": "Runs when the agent emits a notification."
23567
24040
  }
23568
24041
  },
24042
+ "HostConfiguration": {
24043
+ "type": "object",
24044
+ "properties": {
24045
+ "localServer": {
24046
+ "$ref": "#/definitions/HostLocalServerConfiguration",
24047
+ "description": "Normalized local listener settings, absent for relay-only hosts."
24048
+ },
24049
+ "githubEnvironment": {
24050
+ "$ref": "#/definitions/HostGithubEnvironmentOptions",
24051
+ "description": "Requested GitHub Mission Control registration."
24052
+ },
24053
+ "sessionFactory": {
24054
+ "type": "boolean",
24055
+ "description": "Whether session materialization is delegated to the owning application."
24056
+ },
24057
+ "resumeFactory": {
24058
+ "type": "boolean",
24059
+ "description": "Whether app-owned durable sessions are resumed by the owning application."
24060
+ }
24061
+ },
24062
+ "required": [
24063
+ "sessionFactory",
24064
+ "resumeFactory"
24065
+ ],
24066
+ "description": "Normalized listener settings delivered only to the supervised hosting participant."
24067
+ },
24068
+ "HostDisposeRequest": {
24069
+ "type": "object",
24070
+ "properties": {
24071
+ "hostId": {
24072
+ "type": "string",
24073
+ "description": "Listener UUID. Unknown or successfully stopped IDs are harmless."
24074
+ }
24075
+ },
24076
+ "required": [
24077
+ "hostId"
24078
+ ],
24079
+ "description": "Stops a connection-owned listener and joins its teardown."
24080
+ },
24081
+ "HostEmptyResult": {
24082
+ "type": "object",
24083
+ "properties": {},
24084
+ "additionalProperties": false,
24085
+ "description": "Empty acknowledgement for a completed host lifecycle operation."
24086
+ },
24087
+ "HostEnvironmentCredentials": {
24088
+ "type": "object",
24089
+ "properties": {
24090
+ "token": {
24091
+ "type": "string",
24092
+ "description": "Current bearer token for the authenticated GitHub identity."
24093
+ },
24094
+ "githubHost": {
24095
+ "type": "string",
24096
+ "description": "Hostname of the authenticated GitHub service."
24097
+ },
24098
+ "githubApiUrl": {
24099
+ "type": "string",
24100
+ "description": "GitHub API base URL for the authenticated service."
24101
+ },
24102
+ "missionControlUrl": {
24103
+ "type": "string",
24104
+ "description": "Mission Control API origin for environment registration and management."
24105
+ }
24106
+ },
24107
+ "required": [
24108
+ "token",
24109
+ "githubHost",
24110
+ "githubApiUrl",
24111
+ "missionControlUrl"
24112
+ ],
24113
+ "additionalProperties": false,
24114
+ "description": "Private credentials delivered only to a runtime-owned Mission Control hosting participant."
24115
+ },
24116
+ "HostExitedNotification": {
24117
+ "type": "object",
24118
+ "properties": {
24119
+ "hostId": {
24120
+ "type": "string",
24121
+ "description": "Listener UUID."
24122
+ },
24123
+ "reason": {
24124
+ "$ref": "#/definitions/HostExitReason",
24125
+ "description": "Cause of termination."
24126
+ },
24127
+ "exitCode": {
24128
+ "type": [
24129
+ "integer",
24130
+ "null"
24131
+ ],
24132
+ "description": "Process exit status when available; absent for in-process listener tasks."
24133
+ },
24134
+ "error": {
24135
+ "type": [
24136
+ "string",
24137
+ "null"
24138
+ ],
24139
+ "description": "Explicit startup or teardown failure, when present."
24140
+ }
24141
+ },
24142
+ "required": [
24143
+ "hostId",
24144
+ "reason"
24145
+ ],
24146
+ "description": "Reports a supervised listener's hosting-task termination and cleanup outcome."
24147
+ },
24148
+ "HostExitReason": {
24149
+ "type": "string",
24150
+ "enum": [
24151
+ "disposed",
24152
+ "exited",
24153
+ "ownerDisconnected",
24154
+ "runtimeShutdown"
24155
+ ],
24156
+ "x-enumDescriptions": {
24157
+ "disposed": "The owner requested disposal.",
24158
+ "exited": "The hosting task or its SDK transport exited; this does not mean the runtime process exited.",
24159
+ "ownerDisconnected": "The owning SDK connection disconnected.",
24160
+ "runtimeShutdown": "The runtime is shutting down."
24161
+ }
24162
+ },
24163
+ "HostGithubEnvironmentOptions": {
24164
+ "type": "object",
24165
+ "properties": {
24166
+ "name": {
24167
+ "type": "string",
24168
+ "description": "Human-readable environment display name."
24169
+ },
24170
+ "computeId": {
24171
+ "type": "string",
24172
+ "description": "Stable application installation identity, reused across host restarts."
24173
+ }
24174
+ },
24175
+ "required": [
24176
+ "name",
24177
+ "computeId"
24178
+ ],
24179
+ "additionalProperties": false,
24180
+ "description": "GitHub Mission Control registration options. The compute ID is application-owned and stable."
24181
+ },
24182
+ "HostLocalServerConfiguration": {
24183
+ "type": "object",
24184
+ "properties": {
24185
+ "hostname": {
24186
+ "type": "string",
24187
+ "description": "Hostname or IP address to bind."
24188
+ },
24189
+ "port": {
24190
+ "type": "integer",
24191
+ "minimum": 0,
24192
+ "maximum": 65535,
24193
+ "description": "Port to bind, with zero requesting OS allocation."
24194
+ },
24195
+ "token": {
24196
+ "type": "string",
24197
+ "description": "Secret connection token, absent when authentication is disabled."
24198
+ },
24199
+ "requireConnectionToken": {
24200
+ "type": "boolean",
24201
+ "description": "Whether the listener requires token authentication."
24202
+ }
24203
+ },
24204
+ "required": [
24205
+ "hostname",
24206
+ "port",
24207
+ "requireConnectionToken"
24208
+ ],
24209
+ "description": "Normalized local WebSocket listener settings."
24210
+ },
24211
+ "HostLocalServerOptions": {
24212
+ "type": "object",
24213
+ "properties": {
24214
+ "hostname": {
24215
+ "type": "string",
24216
+ "description": "Listener hostname. Defaults to 127.0.0.1; explicit non-loopback binds are allowed."
24217
+ },
24218
+ "port": {
24219
+ "type": "integer",
24220
+ "minimum": 0,
24221
+ "maximum": 65535,
24222
+ "description": "Listener port. Omitted or zero requests an OS-allocated port."
24223
+ },
24224
+ "token": {
24225
+ "type": "string",
24226
+ "description": "Nonempty connection token. Generated randomly when required and omitted."
24227
+ },
24228
+ "requireConnectionToken": {
24229
+ "type": "boolean",
24230
+ "description": "Require token authentication (default true). Cannot be false with a token."
24231
+ }
24232
+ },
24233
+ "additionalProperties": false,
24234
+ "description": "Local WebSocket transport options."
24235
+ },
24236
+ "HostPublishSessionRequest": {
24237
+ "type": "object",
24238
+ "properties": {
24239
+ "hostId": {
24240
+ "type": "string",
24241
+ "description": "Listener UUID returned by host.start."
24242
+ },
24243
+ "sessionId": {
24244
+ "type": "string",
24245
+ "description": "Canonical runtime session ID attached to the listener's owning connection."
24246
+ }
24247
+ },
24248
+ "required": [
24249
+ "hostId",
24250
+ "sessionId"
24251
+ ],
24252
+ "additionalProperties": false,
24253
+ "description": "Publishes a resident session attached to the listener's owning connection."
24254
+ },
24255
+ "HostPublishSessionResult": {
24256
+ "type": "object",
24257
+ "properties": {
24258
+ "sessionId": {
24259
+ "type": "string",
24260
+ "description": "Canonical runtime ID of the published session."
24261
+ },
24262
+ "sessionUri": {
24263
+ "type": "string",
24264
+ "description": "AHP resource URI for the session on this listener."
24265
+ }
24266
+ },
24267
+ "required": [
24268
+ "sessionId",
24269
+ "sessionUri"
24270
+ ],
24271
+ "additionalProperties": false,
24272
+ "description": "The existing runtime identity and its resource on the listener."
24273
+ },
24274
+ "HostReadyRequest": {
24275
+ "type": "object",
24276
+ "properties": {
24277
+ "address": {
24278
+ "type": "string",
24279
+ "description": "Actual bound WebSocket URL."
24280
+ },
24281
+ "token": {
24282
+ "type": "string",
24283
+ "description": "Configured secret token, absent when authentication is disabled."
24284
+ },
24285
+ "environmentId": {
24286
+ "type": "string",
24287
+ "description": "Registered environment ID, reported only once the relay transport is connected."
24288
+ }
24289
+ },
24290
+ "additionalProperties": false,
24291
+ "description": "Readiness reported by the supervised hosting participant on its own SDK connection."
24292
+ },
24293
+ "HostRegisterSessionRequest": {
24294
+ "type": "object",
24295
+ "properties": {
24296
+ "sessionId": {
24297
+ "type": "string",
24298
+ "description": "Canonical ID of the existing resident runtime session."
24299
+ },
24300
+ "workingDirectory": {
24301
+ "type": "string",
24302
+ "description": "Absolute working directory of the resident session."
24303
+ },
24304
+ "additionalDirectories": {
24305
+ "type": "array",
24306
+ "items": {
24307
+ "type": "string"
24308
+ },
24309
+ "description": "Additional directories already granted to the resident session."
24310
+ },
24311
+ "title": {
24312
+ "type": "string",
24313
+ "description": "Current display title of the resident session, when available."
24314
+ },
24315
+ "createdAtUnixMs": {
24316
+ "type": "integer",
24317
+ "minimum": 0,
24318
+ "description": "Session creation time in milliseconds since the Unix epoch, when available."
24319
+ },
24320
+ "modifiedAtUnixMs": {
24321
+ "type": "integer",
24322
+ "minimum": 0,
24323
+ "description": "Last session modification time in milliseconds since the Unix epoch, when available."
24324
+ }
24325
+ },
24326
+ "required": [
24327
+ "sessionId",
24328
+ "workingDirectory"
24329
+ ],
24330
+ "additionalProperties": false,
24331
+ "description": "Listener-scoped registration, not a copy or durable adoption of a session."
24332
+ },
24333
+ "HostSessionCreateCallback": {
24334
+ "type": "object",
24335
+ "properties": {
24336
+ "hostId": {
24337
+ "type": "string",
24338
+ "description": "Listener UUID identifying the owning application's host."
24339
+ },
24340
+ "handoffId": {
24341
+ "type": "string",
24342
+ "description": "Unique identity of the session participation being requested."
24343
+ },
24344
+ "resume": {
24345
+ "type": "boolean",
24346
+ "default": false,
24347
+ "description": "Resume an app-owned durable session instead of creating a new session."
24348
+ },
24349
+ "config": {
24350
+ "type": "object",
24351
+ "properties": {},
24352
+ "additionalProperties": true,
24353
+ "description": "Host-selected SDK creation or resume settings, without executable callbacks or tools."
24354
+ }
24355
+ },
24356
+ "required": [
24357
+ "hostId",
24358
+ "handoffId",
24359
+ "config"
24360
+ ],
24361
+ "description": "Application callback routed over its existing SDK connection."
24362
+ },
24363
+ "HostSessionCreateRequest": {
24364
+ "type": "object",
24365
+ "properties": {
24366
+ "handoffId": {
24367
+ "type": "string",
24368
+ "description": "Unique identity for this participation, independent of the session lifetime."
24369
+ },
24370
+ "resume": {
24371
+ "type": "boolean",
24372
+ "default": false,
24373
+ "description": "Resume an app-owned durable session instead of creating a new session."
24374
+ },
24375
+ "config": {
24376
+ "type": "object",
24377
+ "properties": {},
24378
+ "additionalProperties": true,
24379
+ "description": "Host-selected SDK creation or resume settings, without executable callbacks or tools."
24380
+ }
24381
+ },
24382
+ "required": [
24383
+ "handoffId",
24384
+ "config"
24385
+ ],
24386
+ "additionalProperties": false,
24387
+ "description": "One application-owned session handoff, requested by the supervised hosting participant."
24388
+ },
24389
+ "HostSessionCreateResult": {
24390
+ "type": "object",
24391
+ "properties": {
24392
+ "sessionId": {
24393
+ "type": "string",
24394
+ "description": "Runtime session UUID materialized on the application's SDK connection."
24395
+ }
24396
+ },
24397
+ "required": [
24398
+ "sessionId"
24399
+ ],
24400
+ "additionalProperties": false,
24401
+ "description": "The resident session the application has materialized on its own connection."
24402
+ },
24403
+ "HostSessionReleasedNotification": {
24404
+ "type": "object",
24405
+ "properties": {
24406
+ "hostId": {
24407
+ "type": "string",
24408
+ "description": "Listener UUID whose application session participation ended."
24409
+ },
24410
+ "handoffId": {
24411
+ "type": "string",
24412
+ "description": "Identity of the handoff retaining the original application session object."
24413
+ }
24414
+ },
24415
+ "required": [
24416
+ "hostId",
24417
+ "handoffId"
24418
+ ],
24419
+ "description": "Releases the original application session object retained for one handoff."
24420
+ },
24421
+ "HostSessionReleaseRequest": {
24422
+ "type": "object",
24423
+ "properties": {
24424
+ "handoffId": {
24425
+ "type": "string",
24426
+ "description": "Identity of the participation to release without destroying the session."
24427
+ }
24428
+ },
24429
+ "required": [
24430
+ "handoffId"
24431
+ ],
24432
+ "additionalProperties": false,
24433
+ "description": "Ends one participation, not the application's session lifetime."
24434
+ },
24435
+ "HostStartRequest": {
24436
+ "type": "object",
24437
+ "properties": {
24438
+ "hostId": {
24439
+ "type": "string",
24440
+ "description": "Caller-generated UUID identifying this connection-owned listener."
24441
+ },
24442
+ "localServer": {
24443
+ "$ref": "#/definitions/HostLocalServerOptions",
24444
+ "description": "Enables a local WebSocket listener."
24445
+ },
24446
+ "githubEnvironment": {
24447
+ "$ref": "#/definitions/HostGithubEnvironmentOptions",
24448
+ "description": "Registers a GitHub Mission Control environment and enables its relay transport."
24449
+ },
24450
+ "sessionFactory": {
24451
+ "type": "boolean",
24452
+ "description": "Ask the owning SDK application to materialize AHP sessions."
24453
+ },
24454
+ "resumeFactory": {
24455
+ "type": "boolean",
24456
+ "description": "Ask the owning application to resume its durable AHP sessions."
24457
+ }
24458
+ },
24459
+ "required": [
24460
+ "hostId"
24461
+ ],
24462
+ "additionalProperties": false,
24463
+ "description": "Starts a supervised AHP host with at least one explicitly selected transport."
24464
+ },
24465
+ "HostStartResult": {
24466
+ "type": "object",
24467
+ "properties": {
24468
+ "hostId": {
24469
+ "type": "string",
24470
+ "description": "Caller-generated listener UUID."
24471
+ },
24472
+ "url": {
24473
+ "type": "string",
24474
+ "description": "Actual bound WebSocket URL, including the allocated port."
24475
+ },
24476
+ "token": {
24477
+ "type": "string",
24478
+ "description": "Secret connection token, absent when authentication is disabled."
24479
+ },
24480
+ "environmentId": {
24481
+ "type": "string",
24482
+ "description": "GitHub Mission Control environment ID, present when its relay transport is ready."
24483
+ },
24484
+ "pid": {
24485
+ "type": "integer",
24486
+ "minimum": 0,
24487
+ "description": "Separate host process ID, when provided by a legacy runtime. Absent for in-process listeners."
24488
+ }
24489
+ },
24490
+ "required": [
24491
+ "hostId"
24492
+ ],
24493
+ "description": "Listener readiness, returned only after binding and the supervised participant's SDK handshake."
24494
+ },
23569
24495
  "IndexedSearchState": {
23570
24496
  "type": "string",
23571
24497
  "enum": [
@@ -32402,6 +33328,10 @@
32402
33328
  "$ref": "#/definitions/PermissionDecisionApproveForSession",
32403
33329
  "description": "Permission-decision request variant to approve for the rest of the session, with optional tool approval or URL domain."
32404
33330
  },
33331
+ {
33332
+ "$ref": "#/definitions/PermissionDecisionApproveReadOnlyForSession",
33333
+ "description": "Approve file-tool read access to specific directories for this logical session, including continuation or resume."
33334
+ },
32405
33335
  {
32406
33336
  "$ref": "#/definitions/PermissionDecisionApproveForLocation",
32407
33337
  "description": "Permission-decision request variant to approve and persist a permission for a project location, with approval details and location key."
@@ -33180,6 +34110,31 @@
33180
34110
  "description": "Permission-decision request variant to permanently approve a URL domain across sessions.",
33181
34111
  "title": "PermissionDecisionApprovePermanently"
33182
34112
  },
34113
+ "PermissionDecisionApproveReadOnlyForSession": {
34114
+ "type": "object",
34115
+ "properties": {
34116
+ "kind": {
34117
+ "type": "string",
34118
+ "const": "approve-read-only-for-session",
34119
+ "description": "Approve read-only file-tool directory access for this session"
34120
+ },
34121
+ "directories": {
34122
+ "type": "array",
34123
+ "items": {
34124
+ "type": "string"
34125
+ },
34126
+ "minItems": 1,
34127
+ "description": "Canonical directories covered by the read-only grant"
34128
+ }
34129
+ },
34130
+ "required": [
34131
+ "kind",
34132
+ "directories"
34133
+ ],
34134
+ "additionalProperties": false,
34135
+ "description": "Approve file-tool read access to specific directories for this logical session, including continuation or resume.",
34136
+ "title": "PermissionDecisionApproveReadOnlyForSession"
34137
+ },
33183
34138
  "PermissionDecisionCancelled": {
33184
34139
  "type": "object",
33185
34140
  "properties": {
@@ -36248,6 +37203,56 @@
36248
37203
  "description": "A bearer token supplied by the SDK client for a BYOK provider. The runtime sets it as `Authorization: Bearer <token>` on the outbound request and does no caching; the SDK consumer owns token caching and refresh.",
36249
37204
  "title": "ProviderTokenAcquireResult"
36250
37205
  },
37206
+ "ProviderWithdrawRequest": {
37207
+ "type": "object",
37208
+ "properties": {
37209
+ "models": {
37210
+ "type": "array",
37211
+ "items": {
37212
+ "type": "string"
37213
+ },
37214
+ "description": "Provider-qualified selection ids to withdraw. Ids that are not registered are ignored, so withdrawal is idempotent. A provider left with no models referencing it is removed too."
37215
+ }
37216
+ },
37217
+ "required": [
37218
+ "models"
37219
+ ],
37220
+ "additionalProperties": false,
37221
+ "description": "Host-managed model selection ids to withdraw from the session's BYOK registry.",
37222
+ "title": "ProviderWithdrawRequest",
37223
+ "stability": "experimental"
37224
+ },
37225
+ "ProviderWithdrawResult": {
37226
+ "type": "object",
37227
+ "properties": {
37228
+ "withdrawn": {
37229
+ "type": "array",
37230
+ "items": {
37231
+ "type": "string"
37232
+ },
37233
+ "description": "Selection ids that were registered and are now withdrawn. Excludes requested ids that were not present."
37234
+ },
37235
+ "providersRemoved": {
37236
+ "type": "array",
37237
+ "items": {
37238
+ "type": "string"
37239
+ },
37240
+ "description": "Providers removed because one of the withdrawn models was the last entry referencing them. A provider that merely has no models is not removed."
37241
+ },
37242
+ "modelDeselected": {
37243
+ "type": "boolean",
37244
+ "description": "True when withdrawal removed the selected host-managed model, leaving the session with no explicit selection, so ordinary model resolution picks the session default. Withdrawal never promotes a surviving model in its place: the choice of which model to use stays with the user."
37245
+ }
37246
+ },
37247
+ "required": [
37248
+ "withdrawn",
37249
+ "providersRemoved"
37250
+ ],
37251
+ "additionalProperties": false,
37252
+ "description": "What the withdrawal actually removed from the registry.",
37253
+ "title": "ProviderWithdrawResult",
37254
+ "stability": "experimental"
37255
+ },
36251
37256
  "PushAttachment": {
36252
37257
  "anyOf": [
36253
37258
  {
@@ -38306,6 +39311,10 @@
38306
39311
  "$ref": "#/definitions/SandboxConfigAuth",
38307
39312
  "description": "Credential-injection capability flags."
38308
39313
  },
39314
+ "credentials": {
39315
+ "$ref": "#/definitions/SandboxCredentialsConfig",
39316
+ "description": "Opt-in whole-value environment masking for sandboxed shell, MCP, and LSP children. Configured names get random sentinels; the local proxy substitutes them only in HTTPS request headers at their injection hosts. Approved bypasses skip masking and the sandbox proxy, so bypassed shells may receive the real environment values. Disabled or explicitly opted-out routes are not protected. No credential values are stored in this configuration."
39317
+ },
38309
39318
  "allowDevToolAccess": {
38310
39319
  "type": "boolean",
38311
39320
  "description": "Whether to auto-grant read access to tool directories discovered on PATH and in toolchain environment variables (GOROOT, JAVA_HOME, VIRTUAL_ENV, and similar), and to common developer-tool caches, config, and toolchains. Writable grants cover scratch caches, the Unix GitHub CLI cache, and Cargo's registry, git store, and lock/tracker files. A relocated CARGO_HOME gets the same narrow split: registry and git are read-write; bin is read-only; the home root, config.toml, and credentials.toml stay ungranted. Set to false to disable every grant listed above; user-installed toolchains and caches then need explicit userPolicy.filesystem readonlyPaths and readwritePaths entries. The working directory (see addCurrentWorkingDirectory), temporary storage, session log paths, and system locations follow their own rules and stay granted. Default: true (enabled by default; set to false to opt out)."
@@ -38324,11 +39333,11 @@
38324
39333
  "properties": {
38325
39334
  "git": {
38326
39335
  "type": "boolean",
38327
- "description": "Whether to inject git credentials as an `http.<url>.extraheader` so authenticated HTTPS git works inside the sandbox without the shell-based credential helper the sandbox blocks. github.com is served by the Copilot token; every other forge (Azure DevOps, GitHub Enterprise Server, GitLab, ...) by a credential the host resolves from the user's own helper before the sandbox is applied. Default: false (opt-in)."
39336
+ "description": "Whether to authenticate sandboxed HTTPS git through the local masking proxy. The child receives a fake `http.<url>.extraheader`; the real Authorization header is substituted only at its original HTTPS host, port, and repository path scope. github.com uses the Copilot token; other forges use credentials resolved from the user's own helper on the host. Default: false (opt-in)."
38328
39337
  },
38329
39338
  "gh": {
38330
39339
  "type": "boolean",
38331
- "description": "Whether to export `GH_TOKEN` so the `gh` CLI authenticates inside the sandbox without the OS keyring the sandbox blocks. Default: false (opt-in)."
39340
+ "description": "Whether to authenticate sandboxed gh through the local masking proxy. The child receives a fake GH_TOKEN; its real value is substituted only at github.com, api.github.com and uploads.github.com (github.com because gh repo clone authenticates git through gh auth git-credential). The repository's GitHub account takes precedence over the Copilot login. Default: false (opt-in)."
38332
39341
  }
38333
39342
  },
38334
39343
  "additionalProperties": false,
@@ -38346,17 +39355,18 @@
38346
39355
  "unsupported_host",
38347
39356
  "repository_policy"
38348
39357
  ],
38349
- "description": "Origin of the sandbox choice supplied by the host. Settings-derived origins let managed policy floor the host preference; do not tag explicit session overrides as settings-derived.",
39358
+ "description": "Origin of the sandbox choice supplied by the host. This value describes preference or session intent; it does not authorize bypassing managed policy.",
38350
39359
  "title": "SandboxConfigSource",
38351
39360
  "x-enumDescriptions": {
38352
39361
  "never_configured": "The client applied the default because no sandbox preference was configured.",
38353
39362
  "user_enabled": "The user's persisted settings enabled the sandbox.",
38354
39363
  "user_disabled": "The user's persisted settings disabled the sandbox.",
38355
- "session_flag": "A command-line flag selected the sandbox state for this session.",
39364
+ "session_flag": "An explicit session-scoped choice selected the sandbox state, such as a command-line flag.",
38356
39365
  "session_disabled": "The user disabled the sandbox for the current session.",
38357
39366
  "unsupported_host": "The client disabled the sandbox because the host cannot enforce it.",
38358
39367
  "repository_policy": "A repository policy selected the sandbox state."
38359
- }
39368
+ },
39369
+ "stability": "experimental"
38360
39370
  },
38361
39371
  "SandboxConfigUserPolicy": {
38362
39372
  "type": "object",
@@ -38508,6 +39518,25 @@
38508
39518
  "description": "macOS seatbelt-specific options.",
38509
39519
  "title": "SandboxConfigUserPolicySeatbelt"
38510
39520
  },
39521
+ "SandboxCredentialsConfig": {
39522
+ "type": "object",
39523
+ "properties": {
39524
+ "envVars": {
39525
+ "type": "object",
39526
+ "additionalProperties": {
39527
+ "$ref": "#/definitions/SandboxMaskedEnvVar",
39528
+ "description": "Destinations authorized to receive one masked environment credential."
39529
+ },
39530
+ "description": "Environment variable names and their HTTPS injection destinations. Absent variables stay absent. No real values or sentinels are stored in this map."
39531
+ }
39532
+ },
39533
+ "required": [
39534
+ "envVars"
39535
+ ],
39536
+ "additionalProperties": false,
39537
+ "description": "Whole-value environment credential masking for sandboxed children.",
39538
+ "title": "SandboxCredentialsConfig"
39539
+ },
38511
39540
  "SandboxDisableForSessionRequest": {
38512
39541
  "type": "object",
38513
39542
  "properties": {
@@ -38572,6 +39601,42 @@
38572
39601
  "description": "Managed sandbox enforcement state for a session.",
38573
39602
  "title": "SandboxEnforcementStatus"
38574
39603
  },
39604
+ "SandboxGrantPathForRequestRequest": {
39605
+ "type": "object",
39606
+ "properties": {
39607
+ "requestId": {
39608
+ "type": "string",
39609
+ "description": "Identifier of the exact pending sandbox escalation permission request whose sandboxPathGrant to accept."
39610
+ },
39611
+ "decisionContext": {
39612
+ "$ref": "#/definitions/PermissionDecisionContext",
39613
+ "description": "Optional attribution for the permission decision."
39614
+ }
39615
+ },
39616
+ "required": [
39617
+ "requestId"
39618
+ ],
39619
+ "additionalProperties": false,
39620
+ "description": "Request to accept the sandbox path grant offered on an active sandbox escalation permission prompt.",
39621
+ "title": "SandboxGrantPathForRequestRequest",
39622
+ "stability": "experimental"
39623
+ },
39624
+ "SandboxGrantPathForRequestResult": {
39625
+ "type": "object",
39626
+ "properties": {
39627
+ "success": {
39628
+ "type": "boolean",
39629
+ "description": "Whether this call resolved the pending request and added the path to the session's sandbox policy."
39630
+ }
39631
+ },
39632
+ "required": [
39633
+ "success"
39634
+ ],
39635
+ "additionalProperties": false,
39636
+ "description": "Result of accepting a sandbox path grant.",
39637
+ "title": "SandboxGrantPathForRequestResult",
39638
+ "stability": "experimental"
39639
+ },
38575
39640
  "SandboxHostCapability": {
38576
39641
  "type": "object",
38577
39642
  "properties": {
@@ -38632,6 +39697,24 @@
38632
39697
  "description": "Whether the host running this runtime can run the command sandbox. The runtime checks `supported` once per process. A capability answer can change while the process runs, for example after the user installs a missing package.",
38633
39698
  "title": "SandboxHostSupport"
38634
39699
  },
39700
+ "SandboxMaskedEnvVar": {
39701
+ "type": "object",
39702
+ "properties": {
39703
+ "injectHosts": {
39704
+ "type": "array",
39705
+ "items": {
39706
+ "type": "string"
39707
+ },
39708
+ "description": "Nonempty list of HTTPS injection hostnames or *.example.com patterns. Bare * is not accepted. These grants never override the sandbox network policy. Values in plaintext HTTP requests, URLs, bodies, encoded credentials, and signed requests are not substituted."
39709
+ }
39710
+ },
39711
+ "required": [
39712
+ "injectHosts"
39713
+ ],
39714
+ "additionalProperties": false,
39715
+ "description": "Destinations authorized to receive one masked environment credential.",
39716
+ "title": "SandboxMaskedEnvVar"
39717
+ },
38635
39718
  "SandboxSessionChange": {
38636
39719
  "type": "string",
38637
39720
  "enum": [
@@ -41455,7 +42538,8 @@
41455
42538
  },
41456
42539
  "sandboxConfigSource": {
41457
42540
  "$ref": "#/definitions/SandboxConfigSource",
41458
- "description": "Origin of the sandbox choice. Settings-derived origins (never_configured, user_enabled, user_disabled, repository_policy) let managed policy floor a host preference; explicit below-floor changes remain policy conflicts unless a session opt-out is authorized. Also used for telemetry provenance."
42541
+ "description": "Origin of the sandbox choice. Settings-derived origins (never_configured, user_enabled, user_disabled, repository_policy) let managed policy floor a host preference; explicit below-floor changes remain policy conflicts unless a session opt-out is authorized. Also used for telemetry provenance.",
42542
+ "stability": "experimental"
41459
42543
  },
41460
42544
  "logInteractiveShells": {
41461
42545
  "type": "boolean",
@@ -43570,7 +44654,8 @@
43570
44654
  },
43571
44655
  "sandboxConfigSource": {
43572
44656
  "$ref": "#/definitions/SandboxConfigSource",
43573
- "description": "Origin of the sandbox choice. Settings-derived origins (never_configured, user_enabled, user_disabled, repository_policy) let managed policy floor a host preference; explicit below-floor changes remain policy conflicts unless a session opt-out is authorized. Also used for telemetry provenance."
44657
+ "description": "Origin of the sandbox choice. Settings-derived origins (never_configured, user_enabled, user_disabled, repository_policy) let managed policy floor a host preference; explicit below-floor changes remain policy conflicts unless a session opt-out is authorized. Also used for telemetry provenance.",
44658
+ "stability": "experimental"
43574
44659
  },
43575
44660
  "logInteractiveShells": {
43576
44661
  "type": "boolean",