@github/copilot-sdk 1.0.0-beta.6 → 1.0.0-beta.7

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.
@@ -54,6 +54,18 @@ export type AuthInfoType =
54
54
  | "token"
55
55
  /** Authentication from a Copilot API token. */
56
56
  | "copilot-api-token";
57
+ /**
58
+ * Runtime-controlled routing state for an open canvas instance.
59
+ *
60
+ * This interface was referenced by `_RpcSchemaRoot`'s JSON-Schema
61
+ * via the `definition` "CanvasInstanceAvailability".
62
+ */
63
+ /** @experimental */
64
+ export type CanvasInstanceAvailability =
65
+ /** The owning provider is currently connected and routing calls will be dispatched normally. */
66
+ "ready"
67
+ /** The owning provider is not currently connected. Routing calls fail with canvas_provider_unavailable until the agent re-issues open_canvas (which rehydrates via a fresh canvas.open) or the provider reconnects. */
68
+ | "stale";
57
69
  /**
58
70
  * Coarse command category for grouping and behavior: runtime built-in, skill-backed command, or SDK/client-owned command
59
71
  *
@@ -110,7 +122,7 @@ export type ContentFilterMode =
110
122
  /** Remove characters that can hide directives. */
111
123
  | "hidden_characters";
112
124
  /**
113
- * Server transport type: stdio, http, sse, or memory
125
+ * Server transport type: stdio, http, sse (deprecated), or memory
114
126
  *
115
127
  * This interface was referenced by `_RpcSchemaRoot`'s JSON-Schema
116
128
  * via the `definition` "DiscoveredMcpServerType".
@@ -120,7 +132,7 @@ export type DiscoveredMcpServerType =
120
132
  "stdio"
121
133
  /** Server communicates over streamable HTTP. */
122
134
  | "http"
123
- /** Server communicates over Server-Sent Events. */
135
+ /** Server communicates over Server-Sent Events (deprecated). */
124
136
  | "sse"
125
137
  /** Server is backed by an in-memory runtime implementation. */
126
138
  | "memory";
@@ -301,6 +313,114 @@ export type SessionLogLevel =
301
313
  | "warning"
302
314
  /** Error message describing a failure. */
303
315
  | "error";
316
+ /**
317
+ * UI theme preference per SEP-1865
318
+ *
319
+ * This interface was referenced by `_RpcSchemaRoot`'s JSON-Schema
320
+ * via the `definition` "McpAppsHostContextDetailsTheme".
321
+ */
322
+ /** @experimental */
323
+ export type McpAppsHostContextDetailsTheme =
324
+ /** Light UI theme */
325
+ "light"
326
+ /** Dark UI theme */
327
+ | "dark";
328
+ /**
329
+ * Current display mode (SEP-1865)
330
+ *
331
+ * This interface was referenced by `_RpcSchemaRoot`'s JSON-Schema
332
+ * via the `definition` "McpAppsHostContextDetailsDisplayMode".
333
+ */
334
+ /** @experimental */
335
+ export type McpAppsHostContextDetailsDisplayMode =
336
+ /** Rendered inline within the host conversation surface */
337
+ "inline"
338
+ /** Rendered as a fullscreen overlay */
339
+ | "fullscreen"
340
+ /** Rendered as a picture-in-picture floating panel */
341
+ | "pip";
342
+ /**
343
+ * Allowed values for the `McpAppsHostContextDetailsAvailableDisplayMode` enumeration.
344
+ *
345
+ * This interface was referenced by `_RpcSchemaRoot`'s JSON-Schema
346
+ * via the `definition` "McpAppsHostContextDetailsAvailableDisplayMode".
347
+ */
348
+ /** @experimental */
349
+ export type McpAppsHostContextDetailsAvailableDisplayMode =
350
+ /** Rendered inline within the host conversation surface */
351
+ "inline"
352
+ /** Rendered as a fullscreen overlay */
353
+ | "fullscreen"
354
+ /** Rendered as a picture-in-picture floating panel */
355
+ | "pip";
356
+ /**
357
+ * Platform type for responsive design
358
+ *
359
+ * This interface was referenced by `_RpcSchemaRoot`'s JSON-Schema
360
+ * via the `definition` "McpAppsHostContextDetailsPlatform".
361
+ */
362
+ /** @experimental */
363
+ export type McpAppsHostContextDetailsPlatform =
364
+ /** Host runs in a web browser */
365
+ "web"
366
+ /** Host runs as a desktop application */
367
+ | "desktop"
368
+ /** Host runs on a mobile device */
369
+ | "mobile";
370
+ /**
371
+ * UI theme preference per SEP-1865
372
+ *
373
+ * This interface was referenced by `_RpcSchemaRoot`'s JSON-Schema
374
+ * via the `definition` "McpAppsSetHostContextDetailsTheme".
375
+ */
376
+ /** @experimental */
377
+ export type McpAppsSetHostContextDetailsTheme =
378
+ /** Light UI theme */
379
+ "light"
380
+ /** Dark UI theme */
381
+ | "dark";
382
+ /**
383
+ * Current display mode (SEP-1865)
384
+ *
385
+ * This interface was referenced by `_RpcSchemaRoot`'s JSON-Schema
386
+ * via the `definition` "McpAppsSetHostContextDetailsDisplayMode".
387
+ */
388
+ /** @experimental */
389
+ export type McpAppsSetHostContextDetailsDisplayMode =
390
+ /** Rendered inline within the host conversation surface */
391
+ "inline"
392
+ /** Rendered as a fullscreen overlay */
393
+ | "fullscreen"
394
+ /** Rendered as a picture-in-picture floating panel */
395
+ | "pip";
396
+ /**
397
+ * Allowed values for the `McpAppsSetHostContextDetailsAvailableDisplayMode` enumeration.
398
+ *
399
+ * This interface was referenced by `_RpcSchemaRoot`'s JSON-Schema
400
+ * via the `definition` "McpAppsSetHostContextDetailsAvailableDisplayMode".
401
+ */
402
+ /** @experimental */
403
+ export type McpAppsSetHostContextDetailsAvailableDisplayMode =
404
+ /** Rendered inline within the host conversation surface */
405
+ "inline"
406
+ /** Rendered as a fullscreen overlay */
407
+ | "fullscreen"
408
+ /** Rendered as a picture-in-picture floating panel */
409
+ | "pip";
410
+ /**
411
+ * Platform type for responsive design
412
+ *
413
+ * This interface was referenced by `_RpcSchemaRoot`'s JSON-Schema
414
+ * via the `definition` "McpAppsSetHostContextDetailsPlatform".
415
+ */
416
+ /** @experimental */
417
+ export type McpAppsSetHostContextDetailsPlatform =
418
+ /** Host runs in a web browser */
419
+ "web"
420
+ /** Host runs as a desktop application */
421
+ | "desktop"
422
+ /** Host runs on a mobile device */
423
+ | "mobile";
304
424
  /**
305
425
  * MCP server configuration (stdio process or remote HTTP/SSE)
306
426
  *
@@ -1095,11 +1215,11 @@ export interface AgentInfo {
1095
1215
  model?: string;
1096
1216
  /**
1097
1217
  * MCP server configurations attached to this agent, keyed by server name. Server config shape mirrors the MCP `mcpServers` schema.
1218
+ *
1219
+ * @experimental
1098
1220
  */
1099
1221
  mcpServers?: {
1100
- [k: string]: {
1101
- [k: string]: unknown | undefined;
1102
- } | undefined;
1222
+ [k: string]: unknown | undefined;
1103
1223
  };
1104
1224
  /**
1105
1225
  * Skill names preloaded into this agent's context. Omitted means none.
@@ -1468,6 +1588,220 @@ export interface GhCliAuthInfo {
1468
1588
  token: string;
1469
1589
  copilotUser?: CopilotUserResponse;
1470
1590
  }
1591
+ /**
1592
+ * Canvas action that the agent or host can invoke. To discover the input schema for a particular action, call the list_canvas_capabilities tool.
1593
+ *
1594
+ * This interface was referenced by `_RpcSchemaRoot`'s JSON-Schema
1595
+ * via the `definition` "CanvasAction".
1596
+ */
1597
+ /** @experimental */
1598
+ export interface CanvasAction {
1599
+ /**
1600
+ * Action name exposed by the canvas provider
1601
+ */
1602
+ name: string;
1603
+ /**
1604
+ * Description of the action
1605
+ */
1606
+ description?: string;
1607
+ inputSchema?: CanvasJsonSchema;
1608
+ }
1609
+ /**
1610
+ * JSON Schema for canvas open input
1611
+ *
1612
+ * This interface was referenced by `_RpcSchemaRoot`'s JSON-Schema
1613
+ * via the `definition` "CanvasJsonSchema".
1614
+ */
1615
+ /** @experimental */
1616
+ export interface CanvasJsonSchema {
1617
+ [k: string]: unknown | undefined;
1618
+ }
1619
+ /**
1620
+ * Canvas close parameters.
1621
+ *
1622
+ * This interface was referenced by `_RpcSchemaRoot`'s JSON-Schema
1623
+ * via the `definition` "CanvasCloseRequest".
1624
+ */
1625
+ /** @experimental */
1626
+ export interface CanvasCloseRequest {
1627
+ /**
1628
+ * Open canvas instance identifier
1629
+ */
1630
+ instanceId: string;
1631
+ }
1632
+ /**
1633
+ * Canvas action invocation parameters.
1634
+ *
1635
+ * This interface was referenced by `_RpcSchemaRoot`'s JSON-Schema
1636
+ * via the `definition` "CanvasInvokeActionRequest".
1637
+ */
1638
+ /** @experimental */
1639
+ export interface CanvasInvokeActionRequest {
1640
+ /**
1641
+ * Open canvas instance identifier
1642
+ */
1643
+ instanceId: string;
1644
+ /**
1645
+ * Action name to invoke
1646
+ */
1647
+ actionName: string;
1648
+ /**
1649
+ * Action input
1650
+ */
1651
+ input?: {
1652
+ [k: string]: unknown | undefined;
1653
+ };
1654
+ }
1655
+ /**
1656
+ * Canvas action invocation result.
1657
+ *
1658
+ * This interface was referenced by `_RpcSchemaRoot`'s JSON-Schema
1659
+ * via the `definition` "CanvasInvokeActionResult".
1660
+ */
1661
+ /** @experimental */
1662
+ export interface CanvasInvokeActionResult {
1663
+ /**
1664
+ * Provider-supplied action result
1665
+ */
1666
+ result?: {
1667
+ [k: string]: unknown | undefined;
1668
+ };
1669
+ }
1670
+ /**
1671
+ * Declared canvases available in this session.
1672
+ *
1673
+ * This interface was referenced by `_RpcSchemaRoot`'s JSON-Schema
1674
+ * via the `definition` "CanvasList".
1675
+ */
1676
+ /** @experimental */
1677
+ export interface CanvasList {
1678
+ /**
1679
+ * Declared canvases available in this session
1680
+ */
1681
+ canvases: DiscoveredCanvas[];
1682
+ }
1683
+ /**
1684
+ * Canvas available in the current session.
1685
+ *
1686
+ * This interface was referenced by `_RpcSchemaRoot`'s JSON-Schema
1687
+ * via the `definition` "DiscoveredCanvas".
1688
+ */
1689
+ /** @experimental */
1690
+ export interface DiscoveredCanvas {
1691
+ /**
1692
+ * Human-readable canvas name
1693
+ */
1694
+ displayName: string;
1695
+ /**
1696
+ * Short, single-sentence description shown to the agent in canvas catalogs.
1697
+ */
1698
+ description: string;
1699
+ inputSchema?: CanvasJsonSchema;
1700
+ /**
1701
+ * Actions the agent or host may invoke on an open instance
1702
+ */
1703
+ actions?: CanvasAction[];
1704
+ /**
1705
+ * Owning provider identifier
1706
+ */
1707
+ extensionId: string;
1708
+ /**
1709
+ * Owning extension display name, when available
1710
+ */
1711
+ extensionName?: string;
1712
+ /**
1713
+ * Provider-local canvas identifier
1714
+ */
1715
+ canvasId: string;
1716
+ }
1717
+ /**
1718
+ * Live open-canvas snapshot.
1719
+ *
1720
+ * This interface was referenced by `_RpcSchemaRoot`'s JSON-Schema
1721
+ * via the `definition` "CanvasListOpenResult".
1722
+ */
1723
+ /** @experimental */
1724
+ export interface CanvasListOpenResult {
1725
+ /**
1726
+ * Currently open canvas instances
1727
+ */
1728
+ openCanvases: OpenCanvasInstance[];
1729
+ }
1730
+ /**
1731
+ * Open canvas instance snapshot.
1732
+ *
1733
+ * This interface was referenced by `_RpcSchemaRoot`'s JSON-Schema
1734
+ * via the `definition` "OpenCanvasInstance".
1735
+ */
1736
+ /** @experimental */
1737
+ export interface OpenCanvasInstance {
1738
+ /**
1739
+ * Stable caller-supplied canvas instance identifier
1740
+ */
1741
+ instanceId: string;
1742
+ /**
1743
+ * Owning provider identifier
1744
+ */
1745
+ extensionId: string;
1746
+ /**
1747
+ * Owning extension display name, when available
1748
+ */
1749
+ extensionName?: string;
1750
+ /**
1751
+ * Provider-local canvas identifier
1752
+ */
1753
+ canvasId: string;
1754
+ /**
1755
+ * Rendered title
1756
+ */
1757
+ title?: string;
1758
+ /**
1759
+ * Provider-supplied status text
1760
+ */
1761
+ status?: string;
1762
+ /**
1763
+ * URL for web-rendered canvases
1764
+ */
1765
+ url?: string;
1766
+ /**
1767
+ * Input supplied when the instance was opened
1768
+ */
1769
+ input?: {
1770
+ [k: string]: unknown | undefined;
1771
+ };
1772
+ /**
1773
+ * Whether this snapshot came from an idempotent reopen
1774
+ */
1775
+ reopen: boolean;
1776
+ availability: CanvasInstanceAvailability;
1777
+ }
1778
+ /**
1779
+ * Canvas open parameters.
1780
+ *
1781
+ * This interface was referenced by `_RpcSchemaRoot`'s JSON-Schema
1782
+ * via the `definition` "CanvasOpenRequest".
1783
+ */
1784
+ /** @experimental */
1785
+ export interface CanvasOpenRequest {
1786
+ /**
1787
+ * Owning provider identifier. Optional when the canvasId is unique across providers; required to disambiguate when multiple providers register the same canvasId.
1788
+ */
1789
+ extensionId?: string;
1790
+ /**
1791
+ * Provider-local canvas identifier
1792
+ */
1793
+ canvasId: string;
1794
+ /**
1795
+ * Caller-supplied stable instance identifier
1796
+ */
1797
+ instanceId: string;
1798
+ /**
1799
+ * Canvas open input
1800
+ */
1801
+ input?: {
1802
+ [k: string]: unknown | undefined;
1803
+ };
1804
+ }
1471
1805
  /**
1472
1806
  * Slash commands available in the session, after applying any include/exclude filters.
1473
1807
  *
@@ -1992,9 +2326,7 @@ export interface ExternalToolTextResultForLlm {
1992
2326
  * Optional tool-specific telemetry
1993
2327
  */
1994
2328
  toolTelemetry?: {
1995
- [k: string]: {
1996
- [k: string]: unknown | undefined;
1997
- } | undefined;
2329
+ [k: string]: unknown | undefined;
1998
2330
  };
1999
2331
  /**
2000
2332
  * Base64-encoded binary results returned to the model
@@ -2027,6 +2359,12 @@ export interface ExternalToolTextResultForLlmBinaryResultsForLlm {
2027
2359
  * Human-readable description of the binary data
2028
2360
  */
2029
2361
  description?: string;
2362
+ /**
2363
+ * Optional metadata from the producing tool.
2364
+ */
2365
+ metadata?: {
2366
+ [k: string]: unknown | undefined;
2367
+ };
2030
2368
  }
2031
2369
  /**
2032
2370
  * Plain text content block
@@ -2618,6 +2956,274 @@ export interface LspInitializeRequest {
2618
2956
  */
2619
2957
  force?: boolean;
2620
2958
  }
2959
+ /**
2960
+ * MCP server, tool name, and arguments to invoke from an MCP App view.
2961
+ *
2962
+ * This interface was referenced by `_RpcSchemaRoot`'s JSON-Schema
2963
+ * via the `definition` "McpAppsCallToolRequest".
2964
+ */
2965
+ /** @experimental */
2966
+ export interface McpAppsCallToolRequest {
2967
+ /**
2968
+ * MCP server hosting the tool
2969
+ */
2970
+ serverName: string;
2971
+ /**
2972
+ * MCP tool name
2973
+ */
2974
+ toolName: string;
2975
+ /**
2976
+ * Tool arguments
2977
+ */
2978
+ arguments?: {
2979
+ [k: string]: unknown | undefined;
2980
+ };
2981
+ /**
2982
+ * **Required.** Server whose ui:// view issued the request. Per SEP-1865 ('callable by the app from this server only'), the call is rejected when this differs from `serverName`, and rejected outright when missing.
2983
+ */
2984
+ originServerName: string;
2985
+ }
2986
+ /**
2987
+ * Capability negotiation snapshot
2988
+ *
2989
+ * This interface was referenced by `_RpcSchemaRoot`'s JSON-Schema
2990
+ * via the `definition` "McpAppsDiagnoseCapability".
2991
+ */
2992
+ /** @experimental */
2993
+ export interface McpAppsDiagnoseCapability {
2994
+ /**
2995
+ * Whether the session has the `mcp-apps` capability
2996
+ */
2997
+ sessionHasMcpApps: boolean;
2998
+ /**
2999
+ * Whether the MCP_APPS feature flag (or COPILOT_MCP_APPS env override) is on
3000
+ */
3001
+ featureFlagEnabled: boolean;
3002
+ /**
3003
+ * Whether the runtime advertises `extensions.io.modelcontextprotocol/ui` to MCP servers
3004
+ */
3005
+ advertised: boolean;
3006
+ }
3007
+ /**
3008
+ * MCP server to diagnose MCP Apps wiring for.
3009
+ *
3010
+ * This interface was referenced by `_RpcSchemaRoot`'s JSON-Schema
3011
+ * via the `definition` "McpAppsDiagnoseRequest".
3012
+ */
3013
+ /** @experimental */
3014
+ export interface McpAppsDiagnoseRequest {
3015
+ /**
3016
+ * MCP server to probe
3017
+ */
3018
+ serverName: string;
3019
+ }
3020
+ /**
3021
+ * Diagnostic snapshot of MCP Apps wiring for the named server.
3022
+ *
3023
+ * This interface was referenced by `_RpcSchemaRoot`'s JSON-Schema
3024
+ * via the `definition` "McpAppsDiagnoseResult".
3025
+ */
3026
+ /** @experimental */
3027
+ export interface McpAppsDiagnoseResult {
3028
+ capability: McpAppsDiagnoseCapability;
3029
+ server: McpAppsDiagnoseServer;
3030
+ }
3031
+ /**
3032
+ * What the server returned for this session
3033
+ *
3034
+ * This interface was referenced by `_RpcSchemaRoot`'s JSON-Schema
3035
+ * via the `definition` "McpAppsDiagnoseServer".
3036
+ */
3037
+ /** @experimental */
3038
+ export interface McpAppsDiagnoseServer {
3039
+ /**
3040
+ * Whether the named server is currently connected
3041
+ */
3042
+ connected: boolean;
3043
+ /**
3044
+ * Total tools returned by the server's tools/list
3045
+ */
3046
+ toolCount: number;
3047
+ /**
3048
+ * Tools whose `_meta.ui` is populated (resourceUri and/or visibility set)
3049
+ */
3050
+ toolsWithUiMeta: number;
3051
+ /**
3052
+ * Up to 5 tool names with `_meta.ui` for quick inspection
3053
+ */
3054
+ sampleToolNames: string[];
3055
+ }
3056
+ /**
3057
+ * Current host context advertised to MCP App guests.
3058
+ *
3059
+ * This interface was referenced by `_RpcSchemaRoot`'s JSON-Schema
3060
+ * via the `definition` "McpAppsHostContext".
3061
+ */
3062
+ /** @experimental */
3063
+ export interface McpAppsHostContext {
3064
+ context: McpAppsHostContextDetails;
3065
+ }
3066
+ /**
3067
+ * Current host context
3068
+ *
3069
+ * This interface was referenced by `_RpcSchemaRoot`'s JSON-Schema
3070
+ * via the `definition` "McpAppsHostContextDetails".
3071
+ */
3072
+ /** @experimental */
3073
+ export interface McpAppsHostContextDetails {
3074
+ theme?: McpAppsHostContextDetailsTheme;
3075
+ /**
3076
+ * BCP-47 locale, e.g. 'en-US'
3077
+ */
3078
+ locale?: string;
3079
+ /**
3080
+ * IANA timezone, e.g. 'America/New_York'
3081
+ */
3082
+ timeZone?: string;
3083
+ displayMode?: McpAppsHostContextDetailsDisplayMode;
3084
+ /**
3085
+ * Display modes the host supports
3086
+ */
3087
+ availableDisplayModes?: McpAppsHostContextDetailsAvailableDisplayMode[];
3088
+ platform?: McpAppsHostContextDetailsPlatform;
3089
+ /**
3090
+ * Host application identifier
3091
+ */
3092
+ userAgent?: string;
3093
+ [k: string]: unknown | undefined;
3094
+ }
3095
+ /**
3096
+ * MCP server to list app-callable tools for.
3097
+ *
3098
+ * This interface was referenced by `_RpcSchemaRoot`'s JSON-Schema
3099
+ * via the `definition` "McpAppsListToolsRequest".
3100
+ */
3101
+ /** @experimental */
3102
+ export interface McpAppsListToolsRequest {
3103
+ /**
3104
+ * MCP server hosting the app
3105
+ */
3106
+ serverName: string;
3107
+ /**
3108
+ * **Required.** Server whose ui:// view issued the request. Per SEP-1865 ('callable by the app from this server only'), the call is rejected when this differs from `serverName`, and rejected outright when missing.
3109
+ */
3110
+ originServerName: string;
3111
+ }
3112
+ /**
3113
+ * App-callable tools from the named MCP server.
3114
+ *
3115
+ * This interface was referenced by `_RpcSchemaRoot`'s JSON-Schema
3116
+ * via the `definition` "McpAppsListToolsResult".
3117
+ */
3118
+ /** @experimental */
3119
+ export interface McpAppsListToolsResult {
3120
+ /**
3121
+ * App-callable tools from the server
3122
+ */
3123
+ tools: {
3124
+ [k: string]: unknown | undefined;
3125
+ }[];
3126
+ }
3127
+ /**
3128
+ * MCP server and resource URI to fetch.
3129
+ *
3130
+ * This interface was referenced by `_RpcSchemaRoot`'s JSON-Schema
3131
+ * via the `definition` "McpAppsReadResourceRequest".
3132
+ */
3133
+ /** @experimental */
3134
+ export interface McpAppsReadResourceRequest {
3135
+ /**
3136
+ * Name of the MCP server hosting the resource
3137
+ */
3138
+ serverName: string;
3139
+ /**
3140
+ * Resource URI (typically ui://...)
3141
+ */
3142
+ uri: string;
3143
+ }
3144
+ /**
3145
+ * Resource contents returned by the MCP server.
3146
+ *
3147
+ * This interface was referenced by `_RpcSchemaRoot`'s JSON-Schema
3148
+ * via the `definition` "McpAppsReadResourceResult".
3149
+ */
3150
+ /** @experimental */
3151
+ export interface McpAppsReadResourceResult {
3152
+ /**
3153
+ * Resource contents returned by the server
3154
+ */
3155
+ contents: McpAppsResourceContent[];
3156
+ }
3157
+ /**
3158
+ * Schema for the `McpAppsResourceContent` type.
3159
+ *
3160
+ * This interface was referenced by `_RpcSchemaRoot`'s JSON-Schema
3161
+ * via the `definition` "McpAppsResourceContent".
3162
+ */
3163
+ /** @experimental */
3164
+ export interface McpAppsResourceContent {
3165
+ /**
3166
+ * The resource URI (typically ui://...)
3167
+ */
3168
+ uri: string;
3169
+ /**
3170
+ * MIME type of the content
3171
+ */
3172
+ mimeType?: string;
3173
+ /**
3174
+ * Text content (e.g. HTML)
3175
+ */
3176
+ text?: string;
3177
+ /**
3178
+ * Base64-encoded binary content
3179
+ */
3180
+ blob?: string;
3181
+ /**
3182
+ * Resource-level metadata (CSP, permissions, etc.)
3183
+ */
3184
+ _meta?: {
3185
+ [k: string]: unknown | undefined;
3186
+ };
3187
+ }
3188
+ /**
3189
+ * Host context advertised to MCP App guests
3190
+ *
3191
+ * This interface was referenced by `_RpcSchemaRoot`'s JSON-Schema
3192
+ * via the `definition` "McpAppsSetHostContextDetails".
3193
+ */
3194
+ /** @experimental */
3195
+ export interface McpAppsSetHostContextDetails {
3196
+ theme?: McpAppsSetHostContextDetailsTheme;
3197
+ /**
3198
+ * BCP-47 locale, e.g. 'en-US'
3199
+ */
3200
+ locale?: string;
3201
+ /**
3202
+ * IANA timezone, e.g. 'America/New_York'
3203
+ */
3204
+ timeZone?: string;
3205
+ displayMode?: McpAppsSetHostContextDetailsDisplayMode;
3206
+ /**
3207
+ * Display modes the host supports
3208
+ */
3209
+ availableDisplayModes?: McpAppsSetHostContextDetailsAvailableDisplayMode[];
3210
+ platform?: McpAppsSetHostContextDetailsPlatform;
3211
+ /**
3212
+ * Host application identifier
3213
+ */
3214
+ userAgent?: string;
3215
+ [k: string]: unknown | undefined;
3216
+ }
3217
+ /**
3218
+ * Host context to advertise to MCP App guests.
3219
+ *
3220
+ * This interface was referenced by `_RpcSchemaRoot`'s JSON-Schema
3221
+ * via the `definition` "McpAppsSetHostContextRequest".
3222
+ */
3223
+ /** @experimental */
3224
+ export interface McpAppsSetHostContextRequest {
3225
+ context: McpAppsSetHostContextDetails;
3226
+ }
2621
3227
  /**
2622
3228
  * The requestId previously passed to executeSampling that should be cancelled.
2623
3229
  *
@@ -3357,21 +3963,50 @@ export interface ModelBilling {
3357
3963
  */
3358
3964
  export interface ModelBillingTokenPrices {
3359
3965
  /**
3360
- * Price per billing batch of input tokens in nano-AIUs (1 nano-AIU = 0.000000001 AIU, 1 AIU = $0.01 USD)
3966
+ * AI Credits cost per billing batch of input tokens
3361
3967
  */
3362
3968
  inputPrice?: number;
3363
3969
  /**
3364
- * Price per billing batch of output tokens in nano-AIUs (1 nano-AIU = 0.000000001 AIU, 1 AIU = $0.01 USD)
3970
+ * AI Credits cost per billing batch of output tokens
3365
3971
  */
3366
3972
  outputPrice?: number;
3367
3973
  /**
3368
- * Price per billing batch of cached tokens in nano-AIUs (1 nano-AIU = 0.000000001 AIU, 1 AIU = $0.01 USD)
3974
+ * AI Credits cost per billing batch of cached tokens
3369
3975
  */
3370
3976
  cachePrice?: number;
3371
3977
  /**
3372
3978
  * Number of tokens per standard billing batch
3373
3979
  */
3374
3980
  batchSize?: number;
3981
+ /**
3982
+ * Maximum context window tokens for the default tier
3983
+ */
3984
+ contextMax?: number;
3985
+ longContext?: ModelBillingTokenPricesLongContext;
3986
+ }
3987
+ /**
3988
+ * Long context tier pricing (available for models with extended context windows)
3989
+ *
3990
+ * This interface was referenced by `_RpcSchemaRoot`'s JSON-Schema
3991
+ * via the `definition` "ModelBillingTokenPricesLongContext".
3992
+ */
3993
+ export interface ModelBillingTokenPricesLongContext {
3994
+ /**
3995
+ * AI Credits cost per billing batch of input tokens
3996
+ */
3997
+ inputPrice?: number;
3998
+ /**
3999
+ * AI Credits cost per billing batch of output tokens
4000
+ */
4001
+ outputPrice?: number;
4002
+ /**
4003
+ * AI Credits cost per billing batch of cached tokens
4004
+ */
4005
+ cachePrice?: number;
4006
+ /**
4007
+ * Maximum context window tokens for the long context tier
4008
+ */
4009
+ contextMax?: number;
3375
4010
  }
3376
4011
  /**
3377
4012
  * Override individual model capabilities resolved by the runtime
@@ -5426,12 +6061,6 @@ export interface SendRequest {
5426
6061
  * If set, the request will fail if the named tool is not available when this message is among the user messages at the start of the current exchange
5427
6062
  */
5428
6063
  requiredTool?: string;
5429
- /**
5430
- * Optional provenance tag copied to the resulting user.message event. Supported values are `system`, `command-*`, and `schedule-*`.
5431
- */
5432
- source?: {
5433
- [k: string]: unknown | undefined;
5434
- };
5435
6064
  agentMode?: SendAgentMode;
5436
6065
  /**
5437
6066
  * Custom HTTP headers to include in outbound model requests for this turn. Merged with session-level provider headers; per-turn headers augment and overwrite session-level headers with the same key.
@@ -5953,9 +6582,7 @@ export interface SessionFsSqliteQueryResult {
5953
6582
  * For SELECT: array of row objects. For others: empty array.
5954
6583
  */
5955
6584
  rows: {
5956
- [k: string]: {
5957
- [k: string]: unknown | undefined;
5958
- } | undefined;
6585
+ [k: string]: unknown | undefined;
5959
6586
  }[];
5960
6587
  /**
5961
6588
  * Column names from the result set
@@ -6720,6 +7347,8 @@ export interface SessionUpdateOptionsParams {
6720
7347
  isExperimentalMode?: boolean;
6721
7348
  /**
6722
7349
  * Custom model-provider configuration (BYOK). Opaque shape; see `ProviderConfig` in the runtime.
7350
+ *
7351
+ * @experimental
6723
7352
  */
6724
7353
  provider?: {
6725
7354
  [k: string]: unknown | undefined;
@@ -6750,6 +7379,8 @@ export interface SessionUpdateOptionsParams {
6750
7379
  shellProcessFlags?: string[];
6751
7380
  /**
6752
7381
  * Sandbox configuration shape; opaque to SDK consumers. See `SandboxConfig` in the runtime.
7382
+ *
7383
+ * @experimental
6753
7384
  */
6754
7385
  sandboxConfig?: {
6755
7386
  [k: string]: unknown | undefined;
@@ -6829,10 +7460,10 @@ export interface SessionUpdateOptionsParams {
6829
7460
  eventsLogDirectory?: string;
6830
7461
  /**
6831
7462
  * Additional content-exclusion policies to merge into the session's policy set. Opaque shape; see `ContentExclusionApiResponse` in the runtime.
7463
+ *
7464
+ * @experimental
6832
7465
  */
6833
- additionalContentExclusionPolicies?: {
6834
- [k: string]: unknown | undefined;
6835
- }[];
7466
+ additionalContentExclusionPolicies?: unknown[];
6836
7467
  /**
6837
7468
  * Whether to expose the `manage_schedule` tool to the agent. The runtime always owns the per-session schedule registry; this flag only controls tool exposure (typically gated to staff users).
6838
7469
  */
@@ -7667,9 +8298,7 @@ export interface Tool {
7667
8298
  * JSON Schema for the tool's input parameters
7668
8299
  */
7669
8300
  parameters?: {
7670
- [k: string]: {
7671
- [k: string]: unknown | undefined;
7672
- } | undefined;
8301
+ [k: string]: unknown | undefined;
7673
8302
  };
7674
8303
  /**
7675
8304
  * Optional instructions for how to use this tool effectively
@@ -8595,6 +9224,16 @@ export interface WorkspacesSaveLargePasteResult {
8595
9224
  sizeBytes: number;
8596
9225
  } | null;
8597
9226
  }
9227
+ /**
9228
+ * Standard MCP CallToolResult
9229
+ *
9230
+ * This interface was referenced by `_RpcSchemaRoot`'s JSON-Schema
9231
+ * via the `definition` "SessionMcpAppsCallToolResult".
9232
+ */
9233
+ /** @experimental */
9234
+ export interface SessionMcpAppsCallToolResult {
9235
+ [k: string]: unknown | undefined;
9236
+ }
8598
9237
  /**
8599
9238
  * Identifies the target session.
8600
9239
  *
@@ -8941,6 +9580,43 @@ export declare function createSessionRpc(connection: MessageConnection, sessionI
8941
9580
  setCredentials: (params: SessionSetCredentialsParams) => Promise<SessionSetCredentialsResult>;
8942
9581
  };
8943
9582
  /** @experimental */
9583
+ canvas: {
9584
+ /**
9585
+ * Lists canvases declared for the session.
9586
+ *
9587
+ * @returns Declared canvases available in this session.
9588
+ */
9589
+ list: () => Promise<CanvasList>;
9590
+ /**
9591
+ * Lists currently open canvas instances for the live session.
9592
+ *
9593
+ * @returns Live open-canvas snapshot.
9594
+ */
9595
+ listOpen: () => Promise<CanvasListOpenResult>;
9596
+ /**
9597
+ * Opens or focuses a canvas instance.
9598
+ *
9599
+ * @param params Canvas open parameters.
9600
+ *
9601
+ * @returns Open canvas instance snapshot.
9602
+ */
9603
+ open: (params: CanvasOpenRequest) => Promise<OpenCanvasInstance>;
9604
+ /**
9605
+ * Closes an open canvas instance.
9606
+ *
9607
+ * @param params Canvas close parameters.
9608
+ */
9609
+ close: (params: CanvasCloseRequest) => Promise<void>;
9610
+ /**
9611
+ * Invokes an action on an open canvas instance.
9612
+ *
9613
+ * @param params Canvas action invocation parameters.
9614
+ *
9615
+ * @returns Canvas action invocation result.
9616
+ */
9617
+ invokeAction: (params: CanvasInvokeActionRequest) => Promise<CanvasInvokeActionResult>;
9618
+ };
9619
+ /** @experimental */
8944
9620
  model: {
8945
9621
  /**
8946
9622
  * Gets the currently selected model for the session.
@@ -9309,6 +9985,53 @@ export declare function createSessionRpc(connection: MessageConnection, sessionI
9309
9985
  */
9310
9986
  login: (params: McpOauthLoginRequest) => Promise<McpOauthLoginResult>;
9311
9987
  };
9988
+ /** @experimental */
9989
+ apps: {
9990
+ /**
9991
+ * Fetch an MCP resource (typically a `ui://` MCP App bundle, per SEP-1865) from a connected server. Requires the `mcp-apps` session capability.
9992
+ *
9993
+ * @param params MCP server and resource URI to fetch.
9994
+ *
9995
+ * @returns Resource contents returned by the MCP server.
9996
+ */
9997
+ readResource: (params: McpAppsReadResourceRequest) => Promise<McpAppsReadResourceResult>;
9998
+ /**
9999
+ * List tools that an MCP App view is allowed to call (SEP-1865 visibility filter). Returns tools whose `_meta.ui.visibility` is unset (default `["model","app"]`) or includes `"app"`.
10000
+ *
10001
+ * @param params MCP server to list app-callable tools for.
10002
+ *
10003
+ * @returns App-callable tools from the named MCP server.
10004
+ */
10005
+ listTools: (params: McpAppsListToolsRequest) => Promise<McpAppsListToolsResult>;
10006
+ /**
10007
+ * Call an MCP tool from an MCP App view (SEP-1865). Enforces the visibility check that prevents an app iframe from invoking model-only tools. Returns the standard MCP `CallToolResult`.
10008
+ *
10009
+ * @param params MCP server, tool name, and arguments to invoke from an MCP App view.
10010
+ *
10011
+ * @returns Standard MCP CallToolResult
10012
+ */
10013
+ callTool: (params: McpAppsCallToolRequest) => Promise<SessionMcpAppsCallToolResult>;
10014
+ /**
10015
+ * Replace the host context returned to MCP App guests on `ui/initialize`. Hosts use this to advertise theme, locale, or other metadata to the guest UI.
10016
+ *
10017
+ * @param params Host context to advertise to MCP App guests.
10018
+ */
10019
+ setHostContext: (params: McpAppsSetHostContextRequest) => Promise<void>;
10020
+ /**
10021
+ * Read the current host context advertised to MCP App guests.
10022
+ *
10023
+ * @returns Current host context advertised to MCP App guests.
10024
+ */
10025
+ getHostContext: () => Promise<McpAppsHostContext>;
10026
+ /**
10027
+ * Diagnose MCP Apps wiring for a specific MCP server. Reports the session capability, feature-flag state, advertised extension, and how many tools have `_meta.ui` populated.
10028
+ *
10029
+ * @param params MCP server to diagnose MCP Apps wiring for.
10030
+ *
10031
+ * @returns Diagnostic snapshot of MCP Apps wiring for the named server.
10032
+ */
10033
+ diagnose: (params: McpAppsDiagnoseRequest) => Promise<McpAppsDiagnoseResult>;
10034
+ };
9312
10035
  };
9313
10036
  /** @experimental */
9314
10037
  plugins: {