@codingame/monaco-vscode-api 34.1.3 → 35.0.1

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.
Files changed (792) hide show
  1. package/missing-services.js +261 -19
  2. package/package.json +8 -8
  3. package/services.d.ts +14 -0
  4. package/services.js +17 -3
  5. package/vscode/product.json.js +1 -1
  6. package/vscode/src/vs/base/browser/markdownRenderer.d.ts +2 -0
  7. package/vscode/src/vs/base/browser/markdownRenderer.js +52 -44
  8. package/vscode/src/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.js +4 -2
  9. package/vscode/src/vs/base/browser/ui/codicons/codicon/codicon.ttf +0 -0
  10. package/vscode/src/vs/base/browser/ui/dialog/dialog.d.ts +7 -0
  11. package/vscode/src/vs/base/browser/ui/dialog/dialog.js +4 -0
  12. package/vscode/src/vs/base/browser/ui/hover/hover.d.ts +5 -0
  13. package/vscode/src/vs/base/browser/ui/list/list.d.ts +1 -0
  14. package/vscode/src/vs/base/browser/ui/list/list.js +3 -0
  15. package/vscode/src/vs/base/browser/ui/list/listView.d.ts +1 -0
  16. package/vscode/src/vs/base/browser/ui/list/listView.js +9 -5
  17. package/vscode/src/vs/base/browser/ui/splitview/paneview.css +3 -2
  18. package/vscode/src/vs/base/browser/ui/splitview/paneview.d.ts +27 -0
  19. package/vscode/src/vs/base/browser/ui/splitview/paneview.js +22 -4
  20. package/vscode/src/vs/base/common/async.d.ts +30 -0
  21. package/vscode/src/vs/base/common/async.js +22 -4
  22. package/vscode/src/vs/base/common/codicons.d.ts +9 -0
  23. package/vscode/src/vs/base/common/codiconsLibrary.d.ts +9 -0
  24. package/vscode/src/vs/base/common/codiconsLibrary.js +9 -0
  25. package/vscode/src/vs/base/common/defaultAccount.d.ts +9 -20
  26. package/vscode/src/vs/base/common/managedSettings.d.ts +32 -0
  27. package/vscode/src/vs/base/common/managedSettings.js +30 -0
  28. package/vscode/src/vs/base/common/map.d.ts +6 -0
  29. package/vscode/src/vs/base/common/map.js +62 -8
  30. package/vscode/src/vs/base/common/numbers.d.ts +4 -0
  31. package/vscode/src/vs/base/common/numbers.js +13 -1
  32. package/vscode/src/vs/base/common/policy.d.ts +41 -0
  33. package/vscode/src/vs/base/common/product.d.ts +32 -3
  34. package/vscode/src/vs/base/common/uriTemplate.js +1 -1
  35. package/vscode/src/vs/base/common/uuid.d.ts +1 -1
  36. package/vscode/src/vs/base/common/yaml.d.ts +1 -0
  37. package/vscode/src/vs/base/common/yaml.js +80 -1
  38. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/diffEditorItemTemplate.js +1 -0
  39. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorViewModel.d.ts +2 -0
  40. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorViewModel.js +10 -0
  41. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorWidget.d.ts +3 -1
  42. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorWidget.js +2 -1
  43. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorWidgetImpl.d.ts +15 -0
  44. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorWidgetImpl.js +12 -6
  45. package/vscode/src/vs/editor/common/languages.js +0 -1
  46. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorDetector.js +1 -0
  47. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParticipantUtils.d.ts +2 -2
  48. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParticipantUtils.js +10 -2
  49. package/vscode/src/vs/editor/contrib/colorPicker/browser/standaloneColorPicker/standaloneColorPickerParticipant.d.ts +2 -2
  50. package/vscode/src/vs/editor/contrib/colorPicker/browser/standaloneColorPicker/standaloneColorPickerParticipant.js +2 -2
  51. package/vscode/src/vs/editor/contrib/colorPicker/browser/standaloneColorPicker/standaloneColorPickerWidget.d.ts +1 -0
  52. package/vscode/src/vs/editor/contrib/colorPicker/browser/standaloneColorPicker/standaloneColorPickerWidget.js +3 -1
  53. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverController.js +1 -1
  54. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverRendered.js +36 -21
  55. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverWidgetWrapper.d.ts +1 -0
  56. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverWidgetWrapper.js +10 -0
  57. package/vscode/src/vs/editor/contrib/hover/browser/hoverTypes.d.ts +1 -0
  58. package/vscode/src/vs/editor/contrib/hover/browser/markerHoverParticipant.js +7 -2
  59. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hintsWidget/hoverParticipant.d.ts +1 -0
  60. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hintsWidget/hoverParticipant.js +1 -0
  61. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hintsWidget/inlineCompletionsHintsWidget.css +2 -0
  62. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hintsWidget/inlineCompletionsHintsWidget.js +1 -3
  63. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/suggestWidgetAdapter.js +0 -5
  64. package/vscode/src/vs/editor/contrib/insertFinalNewLine/browser/insertFinalNewLineCommand.js +0 -6
  65. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.js +5 -1
  66. package/vscode/src/vs/editor/contrib/suggest/browser/media/suggest.css +6 -2
  67. package/vscode/src/vs/editor/standalone/browser/standaloneServices.js +1 -0
  68. package/vscode/src/vs/platform/accessibility/browser/accessibleView.d.ts +4 -1
  69. package/vscode/src/vs/platform/accessibility/browser/accessibleView.js +3 -0
  70. package/vscode/src/vs/platform/actionWidget/browser/actionList.d.ts +77 -1
  71. package/vscode/src/vs/platform/actionWidget/browser/actionList.js +163 -17
  72. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.css +162 -4
  73. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.d.ts +2 -0
  74. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.js +27 -12
  75. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.service.d.ts +11 -0
  76. package/vscode/src/vs/platform/actionWidget/browser/actionWidgetDropdown.d.ts +9 -1
  77. package/vscode/src/vs/platform/actionWidget/browser/actionWidgetDropdown.js +13 -0
  78. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.js +3 -3
  79. package/vscode/src/vs/platform/actions/browser/toolbar.js +2 -2
  80. package/vscode/src/vs/platform/actions/common/actions.d.ts +8 -0
  81. package/vscode/src/vs/platform/actions/common/actions.js +12 -0
  82. package/vscode/src/vs/platform/actions/common/menuResetAction.js +1 -1
  83. package/vscode/src/vs/platform/actions/common/menuService.js +2 -2
  84. package/vscode/src/vs/platform/agentHost/browser/nullAgentHostService.d.ts +7 -2
  85. package/vscode/src/vs/platform/agentHost/browser/nullAgentHostService.js +11 -0
  86. package/vscode/src/vs/platform/agentHost/common/agentHostConnectionsService.d.ts +55 -0
  87. package/vscode/src/vs/platform/agentHost/common/agentHostConnectionsService.js +6 -0
  88. package/vscode/src/vs/platform/agentHost/common/agentHostConnectionsService.service.d.ts +56 -0
  89. package/vscode/src/vs/platform/agentHost/common/agentHostConnectionsService.service.js +6 -0
  90. package/vscode/src/vs/platform/agentHost/common/agentHostMcpServer.d.ts +15 -0
  91. package/vscode/src/vs/platform/agentHost/common/agentHostSessionType.d.ts +37 -0
  92. package/vscode/src/vs/platform/agentHost/common/agentHostSessionType.js +45 -0
  93. package/vscode/src/vs/platform/agentHost/common/agentHostUri.d.ts +15 -8
  94. package/vscode/src/vs/platform/agentHost/common/agentHostUri.js +37 -27
  95. package/vscode/src/vs/platform/agentHost/common/agentServerTools.d.ts +38 -0
  96. package/vscode/src/vs/platform/agentHost/common/agentService.service.d.ts +39 -5
  97. package/vscode/src/vs/platform/agentHost/common/remoteAgentHostService.d.ts +8 -2
  98. package/vscode/src/vs/platform/agentHost/common/remoteAgentHostService.js +8 -20
  99. package/vscode/src/vs/platform/agentHost/common/remoteAgentHostService.service.d.ts +9 -0
  100. package/vscode/src/vs/platform/agentHost/common/state/protocol/action-origin.generated.d.ts +18 -6
  101. package/vscode/src/vs/platform/agentHost/common/state/protocol/actions.d.ts +2 -0
  102. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-annotations/actions.d.ts +131 -0
  103. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-annotations/state.d.ts +110 -0
  104. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-changeset/actions.d.ts +21 -0
  105. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-changeset/state.d.ts +28 -8
  106. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-changeset/state.js +1 -0
  107. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-chat/actions.d.ts +584 -0
  108. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-chat/commands.d.ts +42 -0
  109. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-chat/state.d.ts +1157 -0
  110. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-chat/state.js +119 -0
  111. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-root/notifications.d.ts +80 -5
  112. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-root/state.d.ts +48 -3
  113. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-session/actions.d.ts +117 -489
  114. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-session/commands.d.ts +25 -20
  115. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-session/state.d.ts +301 -937
  116. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-session/state.js +7 -100
  117. package/vscode/src/vs/platform/agentHost/common/state/protocol/commands.d.ts +1 -0
  118. package/vscode/src/vs/platform/agentHost/common/state/protocol/common/actions.d.ts +43 -29
  119. package/vscode/src/vs/platform/agentHost/common/state/protocol/common/actions.js +38 -26
  120. package/vscode/src/vs/platform/agentHost/common/state/protocol/common/messages.d.ts +13 -1
  121. package/vscode/src/vs/platform/agentHost/common/state/protocol/common/state.d.ts +17 -5
  122. package/vscode/src/vs/platform/agentHost/common/state/protocol/mcpAppDefaults.d.ts +30 -0
  123. package/vscode/src/vs/platform/agentHost/common/state/protocol/mcpAppDefaults.js +12 -0
  124. package/vscode/src/vs/platform/agentHost/common/state/protocol/state.d.ts +2 -0
  125. package/vscode/src/vs/platform/agentHost/common/state/protocolUpgrade.d.ts +10 -0
  126. package/vscode/src/vs/platform/agentHost/common/state/protocolUpgrade.js +19 -0
  127. package/vscode/src/vs/platform/agentHost/common/state/sessionProtocol.d.ts +3 -2
  128. package/vscode/src/vs/platform/agentHost/common/state/sessionState.d.ts +258 -5
  129. package/vscode/src/vs/platform/agentHost/common/state/sessionState.js +84 -7
  130. package/vscode/src/vs/platform/agentPlugins/common/pluginParsers.d.ts +36 -3
  131. package/vscode/src/vs/platform/agentPlugins/common/pluginParsers.js +58 -27
  132. package/vscode/src/vs/platform/browserView/common/browserHistory.js +4 -2
  133. package/vscode/src/vs/platform/browserView/common/browserPermissions.d.ts +176 -0
  134. package/vscode/src/vs/platform/browserView/common/browserPermissions.js +244 -0
  135. package/vscode/src/vs/platform/browserView/common/browserView.d.ts +86 -31
  136. package/vscode/src/vs/platform/browserView/common/browserView.js +1 -0
  137. package/vscode/src/vs/platform/configuration/common/configurationRegistry.d.ts +13 -3
  138. package/vscode/src/vs/platform/configuration/common/configurationRegistry.js +47 -11
  139. package/vscode/src/vs/platform/configuration/common/configurations.d.ts +8 -0
  140. package/vscode/src/vs/platform/configuration/common/configurations.js +83 -18
  141. package/vscode/src/vs/platform/contextkey/browser/contextKeyService.js +1 -1
  142. package/vscode/src/vs/platform/contextkey/common/contextkey.js +10 -10
  143. package/vscode/src/vs/platform/contextkey/common/contextkeys.js +9 -9
  144. package/vscode/src/vs/platform/contextkey/common/scanner.js +5 -5
  145. package/vscode/src/vs/platform/defaultAccount/common/defaultAccount.d.ts +2 -0
  146. package/vscode/src/vs/platform/defaultAccount/common/defaultAccount.service.d.ts +2 -0
  147. package/vscode/src/vs/platform/dialogs/common/dialogs.js +9 -9
  148. package/vscode/src/vs/platform/dnd/browser/dnd.js +1 -1
  149. package/vscode/src/vs/platform/editor/common/editor.d.ts +6 -1
  150. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.d.ts +1 -0
  151. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +16 -15
  152. package/vscode/src/vs/platform/extensionManagement/common/extensionNls.js +1 -1
  153. package/vscode/src/vs/platform/extensionManagement/common/extensionsScannerService.js +9 -13
  154. package/vscode/src/vs/platform/extensions/common/extensionValidator.d.ts +1 -9
  155. package/vscode/src/vs/platform/extensions/common/extensionValidator.js +21 -73
  156. package/vscode/src/vs/platform/extensions/common/extensions.d.ts +0 -4
  157. package/vscode/src/vs/platform/extensions/common/extensions.js +6 -11
  158. package/vscode/src/vs/platform/extensions/common/extensionsApiProposals.d.ts +6 -14
  159. package/vscode/src/vs/platform/extensions/common/extensionsApiProposals.js +19 -26
  160. package/vscode/src/vs/platform/files/browser/htmlFileSystemProvider.js +2 -2
  161. package/vscode/src/vs/platform/files/common/files.js +6 -6
  162. package/vscode/src/vs/platform/history/browser/contextScopedHistoryWidget.js +1 -1
  163. package/vscode/src/vs/platform/hover/browser/hoverService.js +4 -0
  164. package/vscode/src/vs/platform/hover/browser/hoverWidget.js +1 -1
  165. package/vscode/src/vs/platform/hover/browser/updatableHoverWidget.js +1 -1
  166. package/vscode/src/vs/platform/keybinding/common/abstractKeybindingService.js +5 -5
  167. package/vscode/src/vs/platform/keybinding/common/keybinding.d.ts +6 -0
  168. package/vscode/src/vs/platform/keybinding/common/keybindingsRegistry.d.ts +1 -0
  169. package/vscode/src/vs/platform/keybinding/common/keybindingsRegistry.js +1 -0
  170. package/vscode/src/vs/platform/keybinding/common/resolvedKeybindingItem.d.ts +7 -1
  171. package/vscode/src/vs/platform/keybinding/common/resolvedKeybindingItem.js +2 -1
  172. package/vscode/src/vs/platform/languagePacks/common/languagePacks.js +1 -1
  173. package/vscode/src/vs/platform/languagePacks/common/localizedStrings.js +3 -3
  174. package/vscode/src/vs/platform/list/browser/listService.js +25 -25
  175. package/vscode/src/vs/platform/log/common/log.d.ts +1 -0
  176. package/vscode/src/vs/platform/log/common/log.js +7 -7
  177. package/vscode/src/vs/platform/markers/common/markerService.js +2 -2
  178. package/vscode/src/vs/platform/markers/common/markers.js +6 -6
  179. package/vscode/src/vs/platform/mcp/common/mcpManagementService.js +1 -1
  180. package/vscode/src/vs/platform/meteredConnection/common/meteredConnection.config.contribution.js +5 -5
  181. package/vscode/src/vs/platform/native/common/native.d.ts +41 -6
  182. package/vscode/src/vs/platform/notification/common/notification.js +3 -3
  183. package/vscode/src/vs/platform/policy/common/copilotManagedSettings.d.ts +201 -0
  184. package/vscode/src/vs/platform/policy/common/copilotManagedSettings.js +269 -0
  185. package/vscode/src/vs/platform/policy/common/copilotManagedSettings.service.d.ts +17 -0
  186. package/vscode/src/vs/platform/policy/common/copilotManagedSettings.service.js +7 -0
  187. package/vscode/src/vs/platform/policy/common/policy.d.ts +4 -1
  188. package/vscode/src/vs/platform/policy/common/policy.js +17 -8
  189. package/vscode/src/vs/platform/product/common/product.js +3 -3
  190. package/vscode/src/vs/platform/quickinput/browser/quickInput.js +10 -10
  191. package/vscode/src/vs/platform/quickinput/browser/quickInputActions.js +5 -5
  192. package/vscode/src/vs/platform/quickinput/browser/quickInputController.js +18 -13
  193. package/vscode/src/vs/platform/quickinput/browser/quickInputList.js +1 -1
  194. package/vscode/src/vs/platform/quickinput/browser/quickInputUtils.js +1 -1
  195. package/vscode/src/vs/platform/quickinput/browser/quickPickPin.js +2 -2
  196. package/vscode/src/vs/platform/quickinput/browser/tree/quickInputTreeAccessibilityProvider.js +1 -1
  197. package/vscode/src/vs/platform/quickinput/browser/tree/quickTree.js +1 -1
  198. package/vscode/src/vs/platform/request/common/request.js +20 -20
  199. package/vscode/src/vs/platform/sandbox/common/sandboxHelperService.d.ts +2 -1
  200. package/vscode/src/vs/platform/sandbox/common/settings.d.ts +4 -1
  201. package/vscode/src/vs/platform/sandbox/common/settings.js +14 -2
  202. package/vscode/src/vs/platform/sandbox/common/terminalSandboxService.service.d.ts +3 -1
  203. package/vscode/src/vs/platform/telemetry/common/telemetryUtils.js +1 -1
  204. package/vscode/src/vs/platform/terminal/common/terminalPlatformConfiguration.js +34 -34
  205. package/vscode/src/vs/platform/terminal/common/terminalProfiles.js +1 -1
  206. package/vscode/src/vs/platform/theme/common/colorUtils.js +2 -2
  207. package/vscode/src/vs/platform/theme/common/colors/baseColors.js +19 -19
  208. package/vscode/src/vs/platform/theme/common/colors/chartsColors.js +8 -8
  209. package/vscode/src/vs/platform/theme/common/colors/editorColors.js +95 -95
  210. package/vscode/src/vs/platform/theme/common/colors/inputColors.js +48 -48
  211. package/vscode/src/vs/platform/theme/common/colors/listColors.js +36 -36
  212. package/vscode/src/vs/platform/theme/common/colors/menuColors.js +7 -7
  213. package/vscode/src/vs/platform/theme/common/colors/minimapColors.js +11 -11
  214. package/vscode/src/vs/platform/theme/common/colors/miscColors.js +16 -16
  215. package/vscode/src/vs/platform/theme/common/colors/quickpickColors.js +10 -10
  216. package/vscode/src/vs/platform/theme/common/colors/searchColors.js +3 -3
  217. package/vscode/src/vs/platform/theme/common/iconRegistry.js +6 -6
  218. package/vscode/src/vs/platform/theme/common/sizes/baseSizes.js +26 -26
  219. package/vscode/src/vs/platform/theme/common/tokenClassificationRegistry.js +42 -42
  220. package/vscode/src/vs/platform/tunnel/common/tunnelProxy.d.ts +19 -0
  221. package/vscode/src/vs/platform/undoRedo/common/undoRedoService.js +20 -20
  222. package/vscode/src/vs/platform/update/common/update.d.ts +7 -1
  223. package/vscode/src/vs/platform/update/common/update.js +2 -0
  224. package/vscode/src/vs/platform/userDataProfile/common/userDataProfile.js +1 -1
  225. package/vscode/src/vs/platform/userDataSync/common/abstractSynchronizer.js +2 -2
  226. package/vscode/src/vs/platform/userDataSync/common/keybindingsSync.js +2 -2
  227. package/vscode/src/vs/platform/userDataSync/common/settingsSync.js +1 -1
  228. package/vscode/src/vs/platform/userDataSync/common/userDataSync.js +5 -5
  229. package/vscode/src/vs/platform/userDataSync/common/userDataSyncMachines.js +1 -1
  230. package/vscode/src/vs/platform/window/common/window.d.ts +7 -1
  231. package/vscode/src/vs/platform/workspace/common/workspace.js +1 -1
  232. package/vscode/src/vs/workbench/api/browser/statusBarExtensionPoint.js +12 -12
  233. package/vscode/src/vs/workbench/api/common/extHost.api.impl.js +25 -2
  234. package/vscode/src/vs/workbench/api/common/extHost.common.services.js +2 -0
  235. package/vscode/src/vs/workbench/api/common/extHost.protocol.d.ts +51 -1
  236. package/vscode/src/vs/workbench/api/common/extHost.protocol.js +4 -0
  237. package/vscode/src/vs/workbench/api/common/extHostAgentEditorComments.d.ts +10 -0
  238. package/vscode/src/vs/workbench/api/common/extHostAgentEditorComments.js +56 -0
  239. package/vscode/src/vs/workbench/api/common/extHostAuthentication.js +5 -5
  240. package/vscode/src/vs/workbench/api/common/extHostBrowserTunnelProxy.d.ts +21 -0
  241. package/vscode/src/vs/workbench/api/common/extHostBrowserTunnelProxy.js +9 -0
  242. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.d.ts +2 -1
  243. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.js +33 -5
  244. package/vscode/src/vs/workbench/api/common/extHostDiagnostics.js +2 -2
  245. package/vscode/src/vs/workbench/api/common/extHostEditorTabs.js +34 -11
  246. package/vscode/src/vs/workbench/api/common/extHostExtensionService.js +2 -2
  247. package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +3 -2
  248. package/vscode/src/vs/workbench/api/common/extHostLanguageModelTools.js +4 -1
  249. package/vscode/src/vs/workbench/api/common/extHostLanguageModels.d.ts +2 -0
  250. package/vscode/src/vs/workbench/api/common/extHostLanguageModels.js +33 -6
  251. package/vscode/src/vs/workbench/api/common/extHostLanguages.d.ts +4 -0
  252. package/vscode/src/vs/workbench/api/common/extHostLanguages.js +10 -0
  253. package/vscode/src/vs/workbench/api/common/extHostLogService.js +1 -1
  254. package/vscode/src/vs/workbench/api/common/extHostManagedSockets.d.ts +9 -0
  255. package/vscode/src/vs/workbench/api/common/extHostManagedSockets.js +6 -0
  256. package/vscode/src/vs/workbench/api/common/extHostMcp.js +17 -1
  257. package/vscode/src/vs/workbench/api/common/extHostNotebook.js +2 -2
  258. package/vscode/src/vs/workbench/api/common/extHostQuickDiff.d.ts +7 -2
  259. package/vscode/src/vs/workbench/api/common/extHostQuickDiff.js +81 -1
  260. package/vscode/src/vs/workbench/api/common/extHostStatusBar.js +2 -2
  261. package/vscode/src/vs/workbench/api/common/extHostTelemetry.js +1 -1
  262. package/vscode/src/vs/workbench/api/common/extHostTerminalService.js +1 -1
  263. package/vscode/src/vs/workbench/api/common/extHostTunnelService.js +2 -2
  264. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.d.ts +6 -1
  265. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +52 -3
  266. package/vscode/src/vs/workbench/api/common/extHostTypes.d.ts +17 -1
  267. package/vscode/src/vs/workbench/api/common/extHostTypes.js +22 -2
  268. package/vscode/src/vs/workbench/api/common/extHostWorkspace.js +1 -1
  269. package/vscode/src/vs/workbench/api/common/jsonValidationExtensionPoint.js +11 -11
  270. package/vscode/src/vs/workbench/browser/actions/developerActions.js +233 -63
  271. package/vscode/src/vs/workbench/browser/actions/layoutActions.js +127 -127
  272. package/vscode/src/vs/workbench/browser/actions/textInputActions.js +6 -6
  273. package/vscode/src/vs/workbench/browser/actions/windowActions.js +29 -29
  274. package/vscode/src/vs/workbench/browser/actions/workspaceActions.js +21 -21
  275. package/vscode/src/vs/workbench/browser/actions/workspaceCommands.js +4 -4
  276. package/vscode/src/vs/workbench/browser/contextkeys.js +1 -0
  277. package/vscode/src/vs/workbench/browser/editor.js +2 -2
  278. package/vscode/src/vs/workbench/browser/labels.js +4 -4
  279. package/vscode/src/vs/workbench/browser/media/floatingPanels.css +203 -0
  280. package/vscode/src/vs/workbench/browser/media/part.css +1 -0
  281. package/vscode/src/vs/workbench/browser/part.d.ts +8 -0
  282. package/vscode/src/vs/workbench/browser/part.js +15 -4
  283. package/vscode/src/vs/workbench/browser/parts/activitybar/activitybarPart.d.ts +11 -0
  284. package/vscode/src/vs/workbench/browser/parts/activitybar/activitybarPart.js +43 -28
  285. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarActions.js +26 -26
  286. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarPart.d.ts +0 -1
  287. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarPart.js +5 -6
  288. package/vscode/src/vs/workbench/browser/parts/compositeBar.js +1 -1
  289. package/vscode/src/vs/workbench/browser/parts/compositeBarActions.js +9 -9
  290. package/vscode/src/vs/workbench/browser/parts/compositePart.js +3 -3
  291. package/vscode/src/vs/workbench/browser/parts/dialogs/dialog.js +1 -1
  292. package/vscode/src/vs/workbench/browser/parts/editor/auxiliaryEditorPart.js +3 -3
  293. package/vscode/src/vs/workbench/browser/parts/editor/binaryDiffEditor.js +1 -1
  294. package/vscode/src/vs/workbench/browser/parts/editor/binaryEditor.js +3 -3
  295. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbs.js +37 -37
  296. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsControl.js +13 -13
  297. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsPicker.js +1 -1
  298. package/vscode/src/vs/workbench/browser/parts/editor/diffEditorCommands.js +7 -7
  299. package/vscode/src/vs/workbench/browser/parts/editor/editorActions.js +135 -135
  300. package/vscode/src/vs/workbench/browser/parts/editor/editorCommands.js +31 -26
  301. package/vscode/src/vs/workbench/browser/parts/editor/editorDropTarget.js +1 -1
  302. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupView.d.ts +13 -0
  303. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupView.js +19 -8
  304. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupWatermark.d.ts +4 -1
  305. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupWatermark.js +37 -16
  306. package/vscode/src/vs/workbench/browser/parts/editor/editorPanes.js +2 -2
  307. package/vscode/src/vs/workbench/browser/parts/editor/editorPart.d.ts +18 -0
  308. package/vscode/src/vs/workbench/browser/parts/editor/editorPart.js +64 -5
  309. package/vscode/src/vs/workbench/browser/parts/editor/editorParts.js +1 -1
  310. package/vscode/src/vs/workbench/browser/parts/editor/editorPlaceholder.js +10 -10
  311. package/vscode/src/vs/workbench/browser/parts/editor/editorQuickAccess.js +5 -5
  312. package/vscode/src/vs/workbench/browser/parts/editor/editorStatus.js +66 -66
  313. package/vscode/src/vs/workbench/browser/parts/editor/editorTabsControl.d.ts +4 -2
  314. package/vscode/src/vs/workbench/browser/parts/editor/editorTabsControl.js +17 -7
  315. package/vscode/src/vs/workbench/browser/parts/editor/media/editorgroupview.css +33 -16
  316. package/vscode/src/vs/workbench/browser/parts/editor/media/multieditortabscontrol.css +16 -0
  317. package/vscode/src/vs/workbench/browser/parts/editor/modalEditorPart.d.ts +4 -2
  318. package/vscode/src/vs/workbench/browser/parts/editor/modalEditorPart.js +32 -19
  319. package/vscode/src/vs/workbench/browser/parts/editor/multiEditorTabsControl.d.ts +7 -1
  320. package/vscode/src/vs/workbench/browser/parts/editor/multiEditorTabsControl.js +69 -9
  321. package/vscode/src/vs/workbench/browser/parts/editor/sideBySideEditor.js +1 -1
  322. package/vscode/src/vs/workbench/browser/parts/editor/singleEditorTabsControl.d.ts +1 -1
  323. package/vscode/src/vs/workbench/browser/parts/editor/singleEditorTabsControl.js +2 -5
  324. package/vscode/src/vs/workbench/browser/parts/editor/textCodeEditor.js +1 -1
  325. package/vscode/src/vs/workbench/browser/parts/editor/textDiffEditor.js +3 -3
  326. package/vscode/src/vs/workbench/browser/parts/editor/textEditor.js +1 -1
  327. package/vscode/src/vs/workbench/browser/parts/globalCompositeBar.js +19 -19
  328. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsActions.js +22 -22
  329. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsAlerts.js +3 -3
  330. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCenter.js +6 -6
  331. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCommands.js +13 -13
  332. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsList.js +6 -6
  333. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsStatus.js +13 -13
  334. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsToasts.js +2 -2
  335. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsViewer.js +4 -4
  336. package/vscode/src/vs/workbench/browser/parts/paneCompositeBar.js +4 -4
  337. package/vscode/src/vs/workbench/browser/parts/paneCompositePart.d.ts +40 -1
  338. package/vscode/src/vs/workbench/browser/parts/paneCompositePart.js +71 -6
  339. package/vscode/src/vs/workbench/browser/parts/panel/panelActions.js +27 -27
  340. package/vscode/src/vs/workbench/browser/parts/panel/panelPart.d.ts +0 -1
  341. package/vscode/src/vs/workbench/browser/parts/panel/panelPart.js +4 -5
  342. package/vscode/src/vs/workbench/browser/parts/sidebar/sidebarActions.js +2 -2
  343. package/vscode/src/vs/workbench/browser/parts/sidebar/sidebarPart.d.ts +0 -1
  344. package/vscode/src/vs/workbench/browser/parts/sidebar/sidebarPart.js +2 -3
  345. package/vscode/src/vs/workbench/browser/parts/titlebar/menubarControl.js +17 -10
  346. package/vscode/src/vs/workbench/browser/parts/titlebar/titlebarActions.js +15 -15
  347. package/vscode/src/vs/workbench/browser/parts/titlebar/windowTitle.js +2 -2
  348. package/vscode/src/vs/workbench/browser/parts/views/checkbox.js +1 -1
  349. package/vscode/src/vs/workbench/browser/parts/views/treeView.js +19 -8
  350. package/vscode/src/vs/workbench/browser/parts/views/viewFilter.js +4 -4
  351. package/vscode/src/vs/workbench/browser/parts/views/viewPane.js +5 -5
  352. package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.js +14 -11
  353. package/vscode/src/vs/workbench/browser/quickaccess.js +1 -1
  354. package/vscode/src/vs/workbench/browser/window.js +14 -14
  355. package/vscode/src/vs/workbench/browser/workbench.contribution.js +261 -225
  356. package/vscode/src/vs/workbench/common/configuration.js +9 -9
  357. package/vscode/src/vs/workbench/common/contextkeys.js +83 -83
  358. package/vscode/src/vs/workbench/common/editor/diffEditorInput.js +1 -1
  359. package/vscode/src/vs/workbench/common/editor/sideBySideEditorInput.js +1 -1
  360. package/vscode/src/vs/workbench/common/editor/textEditorModel.js +1 -1
  361. package/vscode/src/vs/workbench/common/editor.js +4 -4
  362. package/vscode/src/vs/workbench/common/theme.js +161 -161
  363. package/vscode/src/vs/workbench/common/views.js +4 -4
  364. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.d.ts +4 -1
  365. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +180 -156
  366. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleViewActions.js +12 -12
  367. package/vscode/src/vs/workbench/contrib/agentsVoice/common/agentsVoice.service.d.ts +25 -0
  368. package/vscode/src/vs/workbench/contrib/agentsVoice/common/agentsVoice.service.js +6 -0
  369. package/vscode/src/vs/workbench/contrib/agentsVoice/common/voiceTranscriptStore.service.d.ts +32 -0
  370. package/vscode/src/vs/workbench/contrib/agentsVoice/common/voiceTranscriptStore.service.js +6 -0
  371. package/vscode/src/vs/workbench/contrib/browserView/common/browserEditorInput.d.ts +2 -2
  372. package/vscode/src/vs/workbench/contrib/browserView/common/browserEditorInput.js +21 -22
  373. package/vscode/src/vs/workbench/contrib/browserView/common/browserView.d.ts +71 -3
  374. package/vscode/src/vs/workbench/contrib/browserView/common/browserView.js +36 -9
  375. package/vscode/src/vs/workbench/contrib/browserView/common/browserView.service.d.ts +44 -1
  376. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.d.ts +2 -2
  377. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.js +100 -76
  378. package/vscode/src/vs/workbench/contrib/chat/browser/actions/exportAgentHostDebugLogsAction.service.d.ts +1 -1
  379. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostActiveClientService.service.d.ts +9 -1
  380. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostCustomizationService.service.d.ts +24 -0
  381. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostNewSessionFolderService.service.d.ts +43 -0
  382. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostNewSessionFolderService.service.js +6 -0
  383. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostToolSetEnablementService.service.d.ts +19 -0
  384. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostToolSetEnablementService.service.js +6 -0
  385. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.d.ts +34 -6
  386. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.js +31 -19
  387. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsModel.js +1 -1
  388. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemsModel.service.d.ts +1 -1
  389. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.js +3 -3
  390. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatScreenshotContext.js +1 -1
  391. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatVariables.d.ts +3 -3
  392. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatVariables.js +2 -1
  393. package/vscode/src/vs/workbench/contrib/chat/browser/chat.d.ts +32 -1
  394. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorContextKeys.js +7 -7
  395. package/vscode/src/vs/workbench/contrib/chat/browser/chatImageCarouselService.service.d.ts +3 -1
  396. package/vscode/src/vs/workbench/contrib/chat/browser/chatImageUtils.d.ts +1 -2
  397. package/vscode/src/vs/workbench/contrib/chat/browser/chatImageUtils.js +5 -8
  398. package/vscode/src/vs/workbench/contrib/chat/browser/chatResponseFileChangesService.service.d.ts +21 -0
  399. package/vscode/src/vs/workbench/contrib/chat/browser/chatResponseFileChangesService.service.js +6 -0
  400. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionDescription.js +2 -2
  401. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessions.contribution.d.ts +30 -2
  402. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessions.contribution.js +216 -75
  403. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetup.js +1 -1
  404. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptFileRewriter.d.ts +3 -3
  405. package/vscode/src/vs/workbench/contrib/chat/browser/tools/chatToolRiskAssessmentService.service.d.ts +8 -6
  406. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/micCaptureService.service.d.ts +49 -0
  407. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/micCaptureService.service.js +6 -0
  408. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/ttsPlaybackService.service.d.ts +23 -0
  409. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/ttsPlaybackService.service.js +6 -0
  410. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceSessionController.service.d.ts +47 -0
  411. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceSessionController.service.js +6 -0
  412. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceToolDispatchService.service.d.ts +15 -0
  413. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceToolDispatchService.service.js +6 -0
  414. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditorInput.d.ts +4 -1
  415. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditorInput.js +52 -16
  416. package/vscode/src/vs/workbench/contrib/chat/common/actions/chatContextKeys.d.ts +18 -2
  417. package/vscode/src/vs/workbench/contrib/chat/common/actions/chatContextKeys.js +118 -89
  418. package/vscode/src/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService.d.ts +6 -11
  419. package/vscode/src/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService.js +6 -14
  420. package/vscode/src/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService.service.d.ts +1 -6
  421. package/vscode/src/vs/workbench/contrib/chat/common/attachments/chatVariableEntries.d.ts +46 -0
  422. package/vscode/src/vs/workbench/contrib/chat/common/attachments/chatVariableEntries.js +84 -5
  423. package/vscode/src/vs/workbench/contrib/chat/common/attachments/chatVariables.service.d.ts +2 -2
  424. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugService.service.d.ts +5 -0
  425. package/vscode/src/vs/workbench/contrib/chat/common/chatModes.js +7 -3
  426. package/vscode/src/vs/workbench/contrib/chat/common/chatSelectedModel.d.ts +85 -0
  427. package/vscode/src/vs/workbench/contrib/chat/common/chatSelectedModel.js +75 -0
  428. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatService.d.ts +181 -11
  429. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatService.js +12 -1
  430. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatService.service.d.ts +7 -0
  431. package/vscode/src/vs/workbench/contrib/chat/common/chatSessionsService.d.ts +56 -1
  432. package/vscode/src/vs/workbench/contrib/chat/common/chatSessionsService.js +27 -3
  433. package/vscode/src/vs/workbench/contrib/chat/common/chatSessionsService.service.d.ts +54 -2
  434. package/vscode/src/vs/workbench/contrib/chat/common/constants.d.ts +50 -10
  435. package/vscode/src/vs/workbench/contrib/chat/common/constants.js +78 -7
  436. package/vscode/src/vs/workbench/contrib/chat/common/customizationHarnessService.d.ts +26 -36
  437. package/vscode/src/vs/workbench/contrib/chat/common/customizationHarnessService.js +8 -25
  438. package/vscode/src/vs/workbench/contrib/chat/common/customizationHarnessService.service.d.ts +0 -7
  439. package/vscode/src/vs/workbench/contrib/chat/common/editing/chatEditingService.js +2 -2
  440. package/vscode/src/vs/workbench/contrib/chat/common/enablement.d.ts +9 -1
  441. package/vscode/src/vs/workbench/contrib/chat/common/enablement.js +52 -1
  442. package/vscode/src/vs/workbench/contrib/chat/common/languageModelStats.js +3 -3
  443. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.d.ts +106 -15
  444. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.js +192 -56
  445. package/vscode/src/vs/workbench/contrib/chat/common/model/chatModel.d.ts +28 -6
  446. package/vscode/src/vs/workbench/contrib/chat/common/model/chatModel.js +49 -12
  447. package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatToolInvocation.js +1 -1
  448. package/vscode/src/vs/workbench/contrib/chat/common/model/chatViewModel.d.ts +9 -2
  449. package/vscode/src/vs/workbench/contrib/chat/common/model/chatViewModel.js +4 -0
  450. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.d.ts +15 -3
  451. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.js +25 -6
  452. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginInstallService.service.d.ts +12 -16
  453. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.service.d.ts +15 -1
  454. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/computeAutomaticInstructions.d.ts +1 -1
  455. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/computeAutomaticInstructions.js +21 -15
  456. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookSchema.js +18 -18
  457. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookTypes.js +20 -20
  458. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptFileAttributes.js +79 -79
  459. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptTypes.js +10 -10
  460. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.d.ts +9 -0
  461. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.service.d.ts +4 -0
  462. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +9 -0
  463. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +111 -41
  464. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +4 -0
  465. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +99 -5
  466. package/vscode/src/vs/workbench/contrib/chat/common/requestParser/chatRequestParser.d.ts +2 -2
  467. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/askQuestionsTool.js +10 -10
  468. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/confirmationTool.js +2 -1
  469. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/manageTodoListTool.js +10 -10
  470. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/reviewPlanTool.js +7 -7
  471. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/runSubagentTool.js +31 -11
  472. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/setArtifactRulesTool.js +3 -3
  473. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/setArtifactsTool.js +4 -4
  474. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.js +49 -23
  475. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsService.d.ts +43 -5
  476. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsService.js +45 -4
  477. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsService.service.d.ts +8 -4
  478. package/vscode/src/vs/workbench/contrib/chat/common/voiceClient/voiceClientService.d.ts +95 -0
  479. package/vscode/src/vs/workbench/contrib/chat/common/voiceClient/voiceClientService.service.d.ts +65 -0
  480. package/vscode/src/vs/workbench/contrib/chat/common/voiceClient/voiceClientService.service.js +6 -0
  481. package/vscode/src/vs/workbench/contrib/chat/common/voicePlaybackService.service.d.ts +47 -0
  482. package/vscode/src/vs/workbench/contrib/chat/common/voicePlaybackService.service.js +6 -0
  483. package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +11 -11
  484. package/vscode/src/vs/workbench/contrib/codeEditor/browser/dictation/editorDictation.js +4 -4
  485. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorAccessibilityHelp.js +5 -5
  486. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorHelper.js +3 -3
  487. package/vscode/src/vs/workbench/contrib/codeEditor/browser/find/simpleFindWidget.js +10 -10
  488. package/vscode/src/vs/workbench/contrib/codeEditor/browser/inspectEditorTokens/inspectEditorTokens.js +2 -2
  489. package/vscode/src/vs/workbench/contrib/codeEditor/browser/largeFileOptimizations.js +3 -3
  490. package/vscode/src/vs/workbench/contrib/codeEditor/browser/quickaccess/gotoSymbolQuickAccess.js +6 -6
  491. package/vscode/src/vs/workbench/contrib/codeEditor/browser/saveParticipants.js +4 -4
  492. package/vscode/src/vs/workbench/contrib/codeEditor/browser/suggestEnabledInput/suggestEnabledInput.d.ts +7 -0
  493. package/vscode/src/vs/workbench/contrib/codeEditor/browser/suggestEnabledInput/suggestEnabledInput.js +6 -0
  494. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMinimap.js +2 -2
  495. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier.js +3 -3
  496. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderControlCharacter.js +2 -2
  497. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderWhitespace.js +12 -12
  498. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +5 -5
  499. package/vscode/src/vs/workbench/contrib/codeEditor/common/languageConfigurationExtensionPoint.js +71 -71
  500. package/vscode/src/vs/workbench/contrib/comments/browser/commentColors.js +7 -7
  501. package/vscode/src/vs/workbench/contrib/comments/browser/commentGlyphWidget.js +7 -7
  502. package/vscode/src/vs/workbench/contrib/comments/browser/commentNode.js +2 -2
  503. package/vscode/src/vs/workbench/contrib/comments/browser/commentReply.js +3 -3
  504. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadBody.js +3 -3
  505. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadHeader.js +3 -3
  506. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadWidget.js +3 -3
  507. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadZoneWidget.js +3 -3
  508. package/vscode/src/vs/workbench/contrib/comments/browser/commentsAccessibility.js +12 -12
  509. package/vscode/src/vs/workbench/contrib/comments/browser/commentsController.js +7 -7
  510. package/vscode/src/vs/workbench/contrib/comments/browser/commentsModel.js +1 -1
  511. package/vscode/src/vs/workbench/contrib/comments/browser/commentsTreeViewer.js +9 -9
  512. package/vscode/src/vs/workbench/contrib/comments/browser/commentsView.js +15 -15
  513. package/vscode/src/vs/workbench/contrib/comments/browser/commentsViewActions.js +16 -16
  514. package/vscode/src/vs/workbench/contrib/comments/browser/reactionsAction.js +7 -7
  515. package/vscode/src/vs/workbench/contrib/comments/common/commentContextKeys.js +12 -12
  516. package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditorDiffInput.js +3 -3
  517. package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditorInput.js +3 -3
  518. package/vscode/src/vs/workbench/contrib/debug/browser/baseDebugView.js +1 -1
  519. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointEditorContribution.js +29 -29
  520. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointWidget.js +14 -14
  521. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointsView.js +75 -75
  522. package/vscode/src/vs/workbench/contrib/debug/browser/callStackEditorContribution.js +2 -2
  523. package/vscode/src/vs/workbench/contrib/debug/browser/debugActionViewItems.js +9 -9
  524. package/vscode/src/vs/workbench/contrib/debug/browser/debugColors.js +12 -12
  525. package/vscode/src/vs/workbench/contrib/debug/browser/debugCommands.js +38 -38
  526. package/vscode/src/vs/workbench/contrib/debug/browser/debugEditorContribution.js +2 -2
  527. package/vscode/src/vs/workbench/contrib/debug/browser/debugHover.js +3 -3
  528. package/vscode/src/vs/workbench/contrib/debug/browser/debugIcons.js +57 -57
  529. package/vscode/src/vs/workbench/contrib/debug/browser/debugSessionPicker.js +3 -3
  530. package/vscode/src/vs/workbench/contrib/debug/browser/exceptionWidget.d.ts +4 -1
  531. package/vscode/src/vs/workbench/contrib/debug/browser/exceptionWidget.js +32 -6
  532. package/vscode/src/vs/workbench/contrib/debug/browser/linkDetector.js +2 -2
  533. package/vscode/src/vs/workbench/contrib/debug/browser/repl.js +18 -18
  534. package/vscode/src/vs/workbench/contrib/debug/browser/replViewer.js +5 -5
  535. package/vscode/src/vs/workbench/contrib/debug/browser/variablesView.js +9 -9
  536. package/vscode/src/vs/workbench/contrib/debug/common/abstractDebugAdapter.js +1 -1
  537. package/vscode/src/vs/workbench/contrib/debug/common/debug.js +65 -65
  538. package/vscode/src/vs/workbench/contrib/debug/common/debugModel.js +6 -6
  539. package/vscode/src/vs/workbench/contrib/debug/common/debugSource.js +1 -1
  540. package/vscode/src/vs/workbench/contrib/debug/common/disassemblyViewInput.js +2 -2
  541. package/vscode/src/vs/workbench/contrib/debug/common/loadedScriptsPicker.js +1 -1
  542. package/vscode/src/vs/workbench/contrib/debug/common/replModel.js +1 -1
  543. package/vscode/src/vs/workbench/contrib/dropOrPasteInto/browser/commands.js +2 -2
  544. package/vscode/src/vs/workbench/contrib/dropOrPasteInto/browser/configurationSchema.js +4 -4
  545. package/vscode/src/vs/workbench/contrib/extensions/browser/configBasedRecommendations.js +1 -1
  546. package/vscode/src/vs/workbench/contrib/extensions/browser/exeBasedRecommendations.js +1 -1
  547. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionEditor.js +41 -41
  548. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionEnablementWorkspaceTrustTransitionParticipant.js +1 -1
  549. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionFeaturesTab.js +15 -15
  550. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionRecommendationNotificationService.js +14 -14
  551. package/vscode/src/vs/workbench/contrib/extensions/browser/extensions.contribution.js +216 -168
  552. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.js +196 -182
  553. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActivationProgress.js +1 -1
  554. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsCompletionItemsProvider.js +1 -1
  555. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsDependencyChecker.js +5 -5
  556. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsIcons.js +25 -25
  557. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsQuickAccess.js +4 -4
  558. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViewer.js +7 -7
  559. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViewlet.js +48 -48
  560. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViews.js +5 -5
  561. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsWidgets.js +30 -30
  562. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.d.ts +2 -1
  563. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.js +106 -104
  564. package/vscode/src/vs/workbench/contrib/extensions/browser/fileBasedRecommendations.js +2 -2
  565. package/vscode/src/vs/workbench/contrib/extensions/browser/webRecommendations.js +1 -1
  566. package/vscode/src/vs/workbench/contrib/extensions/browser/workspaceRecommendations.js +2 -2
  567. package/vscode/src/vs/workbench/contrib/extensions/common/extensions.d.ts +3 -1
  568. package/vscode/src/vs/workbench/contrib/extensions/common/extensions.js +3 -2
  569. package/vscode/src/vs/workbench/contrib/extensions/common/extensions.service.d.ts +1 -0
  570. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsFileTemplate.js +5 -5
  571. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsInput.js +2 -2
  572. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsUtils.js +3 -3
  573. package/vscode/src/vs/workbench/contrib/extensions/common/searchExtensionsTool.js +3 -3
  574. package/vscode/src/vs/workbench/contrib/externalUriOpener/common/configuration.js +4 -4
  575. package/vscode/src/vs/workbench/contrib/externalUriOpener/common/externalUriOpenerService.js +3 -3
  576. package/vscode/src/vs/workbench/contrib/files/browser/editors/binaryFileEditor.js +1 -1
  577. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileEditor.js +8 -8
  578. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileSaveErrorHandler.js +18 -18
  579. package/vscode/src/vs/workbench/contrib/files/browser/explorerViewlet.js +14 -14
  580. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.contribution.js +39 -39
  581. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.js +84 -84
  582. package/vscode/src/vs/workbench/contrib/files/browser/fileCommands._save.js +4 -4
  583. package/vscode/src/vs/workbench/contrib/files/browser/fileCommands.js +2 -2
  584. package/vscode/src/vs/workbench/contrib/files/browser/fileConstants.js +6 -6
  585. package/vscode/src/vs/workbench/contrib/files/browser/fileImportExport.js +28 -28
  586. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._configuration.js +50 -50
  587. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._editorPane.js +2 -2
  588. package/vscode/src/vs/workbench/contrib/files/browser/views/emptyView.js +1 -1
  589. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerDecorationsProvider.js +4 -4
  590. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerView.js +7 -7
  591. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerViewer.js +17 -17
  592. package/vscode/src/vs/workbench/contrib/files/browser/views/openEditorsView.js +7 -7
  593. package/vscode/src/vs/workbench/contrib/files/browser/workspaceWatcher.js +4 -4
  594. package/vscode/src/vs/workbench/contrib/files/common/dirtyFilesIndicator.js +1 -1
  595. package/vscode/src/vs/workbench/contrib/files/common/files.js +16 -16
  596. package/vscode/src/vs/workbench/contrib/folding/browser/folding.contribution.js +3 -3
  597. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsMultiple.js +20 -20
  598. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsNone.js +4 -4
  599. package/vscode/src/vs/workbench/contrib/format/browser/formatModified.js +1 -1
  600. package/vscode/src/vs/workbench/contrib/inlayHints/browser/inlayHintsAccessibilty.js +4 -4
  601. package/vscode/src/vs/workbench/contrib/inlineCompletions/browser/inlineCompletionLanguageStatusBarContribution.js +6 -6
  602. package/vscode/src/vs/workbench/contrib/list/browser/listResizeColumnAction.js +2 -2
  603. package/vscode/src/vs/workbench/contrib/list/browser/tableColumnResizeQuickPick.js +5 -5
  604. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpCommandsAddConfiguration.d.ts +6 -1
  605. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpCommandsAddConfiguration.js +137 -74
  606. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpServerActions.js +40 -40
  607. package/vscode/src/vs/workbench/contrib/mcp/common/discovery/pluginMcpDiscovery.d.ts +22 -0
  608. package/vscode/src/vs/workbench/contrib/mcp/common/discovery/pluginMcpDiscovery.js +119 -0
  609. package/vscode/src/vs/workbench/contrib/mcp/common/mcpCommandIds.d.ts +1 -0
  610. package/vscode/src/vs/workbench/contrib/mcp/common/mcpCommandIds.js +1 -0
  611. package/vscode/src/vs/workbench/contrib/mcp/common/mcpConfiguration.js +43 -43
  612. package/vscode/src/vs/workbench/contrib/mcp/common/mcpServer.js +16 -16
  613. package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.d.ts +42 -2
  614. package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.js +18 -5
  615. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInput.js +4 -4
  616. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInputModel.js +23 -23
  617. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/mergeEditorModel.js +2 -2
  618. package/vscode/src/vs/workbench/contrib/mergeEditor/common/mergeEditor.js +8 -8
  619. package/vscode/src/vs/workbench/contrib/meteredConnection/browser/meteredConnection.contribution.js +8 -8
  620. package/vscode/src/vs/workbench/contrib/meteredConnection/browser/meteredConnectionStatus.js +4 -4
  621. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/icons.contribution.js +1 -1
  622. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditor.js +3 -1
  623. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditorInput.js +3 -3
  624. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/scmMultiDiffSourceResolver.js +1 -1
  625. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindReplaceWidget.js +17 -17
  626. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOutputActions.js +6 -6
  627. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/coreActions.js +4 -4
  628. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/foldingController.js +3 -3
  629. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookAccessibilityProvider.js +3 -3
  630. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditor.js +13 -13
  631. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.js +24 -24
  632. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookIcons.js +29 -29
  633. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellEditorOptions.js +5 -5
  634. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellOutput.js +7 -7
  635. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCell.js +2 -2
  636. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellExecutionIcon.js +4 -4
  637. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellRunToolbar.js +1 -1
  638. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/collapsedCellOutput.js +3 -3
  639. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/foldedCellHint.js +1 -1
  640. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/markupCell.js +2 -2
  641. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.js +4 -4
  642. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/cellRenderer.js +1 -1
  643. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelQuickPickStrategy.js +14 -14
  644. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelView.js +2 -2
  645. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookViewZones.js +1 -1
  646. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorInput.js +2 -2
  647. package/vscode/src/vs/workbench/contrib/onboarding/common/onboardingScenarioService.service.d.ts +32 -0
  648. package/vscode/src/vs/workbench/contrib/onboarding/common/onboardingScenarioService.service.js +6 -0
  649. package/vscode/src/vs/workbench/contrib/preferences/browser/keybindingWidgets.js +3 -3
  650. package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesIcons.js +13 -13
  651. package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesWidgets.js +10 -10
  652. package/vscode/src/vs/workbench/contrib/preferences/browser/settingsLayout.js +60 -62
  653. package/vscode/src/vs/workbench/contrib/preferences/common/preferences.d.ts +1 -0
  654. package/vscode/src/vs/workbench/contrib/preferences/common/preferences.js +5 -4
  655. package/vscode/src/vs/workbench/contrib/preferences/common/settingsEditorColorRegistry.js +21 -21
  656. package/vscode/src/vs/workbench/contrib/remote/browser/remoteExplorer.js +15 -15
  657. package/vscode/src/vs/workbench/contrib/remote/browser/remoteIcons.js +17 -17
  658. package/vscode/src/vs/workbench/contrib/remote/browser/tunnelView.js +59 -59
  659. package/vscode/src/vs/workbench/contrib/scm/browser/scmHistory.js +11 -11
  660. package/vscode/src/vs/workbench/contrib/scm/browser/scmHistoryChatContext.js +6 -6
  661. package/vscode/src/vs/workbench/contrib/scm/common/quickDiff.js +14 -14
  662. package/vscode/src/vs/workbench/contrib/search/browser/anythingQuickAccess.js +10 -11
  663. package/vscode/src/vs/workbench/contrib/search/browser/patternInputWidget.js +4 -4
  664. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsBase.js +1 -1
  665. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsTopBar.js +9 -9
  666. package/vscode/src/vs/workbench/contrib/search/browser/searchChatContext.js +5 -5
  667. package/vscode/src/vs/workbench/contrib/search/browser/searchFindInput.js +1 -1
  668. package/vscode/src/vs/workbench/contrib/search/browser/searchIcons.js +20 -20
  669. package/vscode/src/vs/workbench/contrib/search/browser/searchMessage.js +2 -2
  670. package/vscode/src/vs/workbench/contrib/search/browser/searchResultsView.js +14 -14
  671. package/vscode/src/vs/workbench/contrib/search/browser/searchView.js +55 -55
  672. package/vscode/src/vs/workbench/contrib/search/browser/searchWidget.js +11 -11
  673. package/vscode/src/vs/workbench/contrib/search/browser/symbolsQuickAccess.js +2 -2
  674. package/vscode/src/vs/workbench/contrib/search/common/search.js +12 -2
  675. package/vscode/src/vs/workbench/contrib/searchEditor/browser/searchEditorInput.js +4 -4
  676. package/vscode/src/vs/workbench/contrib/searchEditor/browser/searchEditorSerialization.js +5 -5
  677. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetCompletionProvider.js +3 -3
  678. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsFile.js +3 -3
  679. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsService.js +9 -9
  680. package/vscode/src/vs/workbench/contrib/speech/common/speechService.js +29 -29
  681. package/vscode/src/vs/workbench/contrib/tasks/common/constants.js +1 -1
  682. package/vscode/src/vs/workbench/contrib/tasks/common/taskDefinitionRegistry.js +6 -6
  683. package/vscode/src/vs/workbench/contrib/tasks/common/taskService.js +6 -6
  684. package/vscode/src/vs/workbench/contrib/tasks/common/tasks.js +4 -4
  685. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalEditorInput.js +3 -3
  686. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalIcons.js +13 -13
  687. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalMenus.js +40 -40
  688. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/decorationStyles.js +15 -15
  689. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.js +24 -10
  690. package/vscode/src/vs/workbench/contrib/terminal/common/terminalColorRegistry.js +23 -23
  691. package/vscode/src/vs/workbench/contrib/terminal/common/terminalContextKey.js +17 -17
  692. package/vscode/src/vs/workbench/contrib/terminal/common/terminalStrings.js +26 -26
  693. package/vscode/src/vs/workbench/contrib/terminal/terminalContribExports.d.ts +1 -1
  694. package/vscode/src/vs/workbench/contrib/terminal/terminalContribExports.js +1 -1
  695. package/vscode/src/vs/workbench/contrib/terminalContrib/accessibility/common/terminalAccessibilityConfiguration.js +2 -2
  696. package/vscode/src/vs/workbench/contrib/terminalContrib/autoReplies/common/terminalAutoRepliesConfiguration.js +2 -2
  697. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalChatAgentToolsConfiguration.d.ts +5 -0
  698. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalChatAgentToolsConfiguration.js +117 -128
  699. package/vscode/src/vs/workbench/contrib/terminalContrib/commandGuide/common/terminalCommandGuideConfiguration.js +1 -1
  700. package/vscode/src/vs/workbench/contrib/terminalContrib/history/common/terminal.history.js +1 -1
  701. package/vscode/src/vs/workbench/contrib/terminalContrib/inlineHint/common/terminalInitialHintConfiguration.js +2 -2
  702. package/vscode/src/vs/workbench/contrib/terminalContrib/notification/common/terminalNotificationConfiguration.js +1 -1
  703. package/vscode/src/vs/workbench/contrib/terminalContrib/stickyScroll/common/terminalStickyScrollConfiguration.js +3 -3
  704. package/vscode/src/vs/workbench/contrib/terminalContrib/suggest/common/terminalSuggestConfiguration.js +30 -30
  705. package/vscode/src/vs/workbench/contrib/terminalContrib/typeAhead/common/terminalTypeAheadConfiguration.js +5 -5
  706. package/vscode/src/vs/workbench/contrib/terminalContrib/zoom/common/terminal.zoom.js +2 -2
  707. package/vscode/src/vs/workbench/contrib/testing/common/constants.js +11 -11
  708. package/vscode/src/vs/workbench/contrib/testing/common/testResult.js +2 -2
  709. package/vscode/src/vs/workbench/contrib/testing/common/testTypes.js +3 -3
  710. package/vscode/src/vs/workbench/contrib/url/browser/trustedDomains.js +6 -6
  711. package/vscode/src/vs/workbench/contrib/webview/browser/webview.contribution.js +3 -3
  712. package/vscode/src/vs/workbench/contrib/webview/browser/webviewFindAccessibilityHelp.js +30 -30
  713. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditor.js +1 -1
  714. package/vscode/src/vs/workbench/contrib/welcomeOnboarding/common/onboardingTypes.js +14 -14
  715. package/vscode/src/vs/workbench/contrib/workspace/common/workspace.js +2 -2
  716. package/vscode/src/vs/workbench/services/accounts/browser/defaultAccount.d.ts +8 -0
  717. package/vscode/src/vs/workbench/services/accounts/browser/defaultAccount.js +10 -9
  718. package/vscode/src/vs/workbench/services/accounts/browser/managedSettings.d.ts +21 -14
  719. package/vscode/src/vs/workbench/services/accounts/browser/managedSettings.js +2 -57
  720. package/vscode/src/vs/workbench/services/agentEditorComments/common/agentEditorComments.service.d.ts +22 -0
  721. package/vscode/src/vs/workbench/services/agentEditorComments/common/agentEditorComments.service.js +6 -0
  722. package/vscode/src/vs/workbench/services/assignment/common/assignmentService.d.ts +8 -0
  723. package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +11 -11
  724. package/vscode/src/vs/workbench/services/authentication/common/authenticationQuery.d.ts +5 -0
  725. package/vscode/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.d.ts +5 -0
  726. package/vscode/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.js +13 -8
  727. package/vscode/src/vs/workbench/services/chat/common/chatEntitlementService.d.ts +27 -1
  728. package/vscode/src/vs/workbench/services/chat/common/chatEntitlementService.js +24 -20
  729. package/vscode/src/vs/workbench/services/chat/common/chatEntitlementService.service.d.ts +0 -1
  730. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverSchema.js +16 -16
  731. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverUtils.js +1 -1
  732. package/vscode/src/vs/workbench/services/configurationResolver/common/variableResolver.js +16 -16
  733. package/vscode/src/vs/workbench/services/editor/common/editorGroupFinder.js +5 -5
  734. package/vscode/src/vs/workbench/services/editor/common/editorResolverService.d.ts +15 -2
  735. package/vscode/src/vs/workbench/services/editor/common/editorResolverService.js +22 -7
  736. package/vscode/src/vs/workbench/services/editor/common/editorService.d.ts +11 -0
  737. package/vscode/src/vs/workbench/services/editor/common/editorService.js +2 -1
  738. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionsIcons.js +3 -3
  739. package/vscode/src/vs/workbench/services/extensionRecommendations/common/workspaceExtensionsConfig.js +6 -6
  740. package/vscode/src/vs/workbench/services/extensions/browser/extensionUrlHandler.js +10 -10
  741. package/vscode/src/vs/workbench/services/extensions/common/extensionsRegistry.js +88 -88
  742. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.js +5 -5
  743. package/vscode/src/vs/workbench/services/language/common/languageService.js +24 -24
  744. package/vscode/src/vs/workbench/services/layout/browser/layoutService.d.ts +55 -1
  745. package/vscode/src/vs/workbench/services/layout/browser/layoutService.js +77 -2
  746. package/vscode/src/vs/workbench/services/layout/browser/layoutService.service.d.ts +8 -0
  747. package/vscode/src/vs/workbench/services/log/common/logConstants.js +1 -1
  748. package/vscode/src/vs/workbench/services/policies/common/accountPolicyService.d.ts +7 -1
  749. package/vscode/src/vs/workbench/services/policies/common/accountPolicyService.js +2 -1
  750. package/vscode/src/vs/workbench/services/preferences/browser/keybindingsEditorInput.js +2 -2
  751. package/vscode/src/vs/workbench/services/preferences/browser/keybindingsEditorModel.js +7 -7
  752. package/vscode/src/vs/workbench/services/preferences/common/preferencesEditorInput.js +4 -4
  753. package/vscode/src/vs/workbench/services/preferences/common/preferencesModels.js +2 -2
  754. package/vscode/src/vs/workbench/services/preferences/common/preferencesValidation.js +30 -30
  755. package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.js +8 -8
  756. package/vscode/src/vs/workbench/services/remote/common/tunnelModel.js +6 -6
  757. package/vscode/src/vs/workbench/services/search/common/queryBuilder.js +1 -1
  758. package/vscode/src/vs/workbench/services/textMate/common/TMGrammars.js +9 -9
  759. package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModel.js +3 -3
  760. package/vscode/src/vs/workbench/services/themes/common/colorExtensionPoint.js +18 -18
  761. package/vscode/src/vs/workbench/services/themes/common/colorThemeData.js +8 -8
  762. package/vscode/src/vs/workbench/services/themes/common/iconExtensionPoint.js +13 -13
  763. package/vscode/src/vs/workbench/services/themes/common/tokenClassificationExtensionPoint.js +24 -24
  764. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfile.js +3 -3
  765. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfileIcons.js +1 -1
  766. package/vscode/src/vs/workbench/services/userDataSync/common/userDataSync.js +13 -13
  767. package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.js +16 -16
  768. package/vscode/src/vs/workbench/services/workspaces/common/workspaceTrust.js +2 -1
  769. package/vscode-dts/vscode.d.ts +4 -4
  770. package/vscode-dts/vscode.proposed.agentEditorComments.d.ts +71 -0
  771. package/vscode-dts/vscode.proposed.aiTextSearchProvider.d.ts +0 -2
  772. package/vscode-dts/vscode.proposed.chatDebug.d.ts +0 -2
  773. package/vscode-dts/vscode.proposed.chatHooks.d.ts +0 -2
  774. package/vscode-dts/vscode.proposed.chatParticipantAdditions.d.ts +23 -2
  775. package/vscode-dts/vscode.proposed.chatParticipantPrivate.d.ts +0 -8
  776. package/vscode-dts/vscode.proposed.chatPromptFiles.d.ts +0 -2
  777. package/vscode-dts/vscode.proposed.chatProvider.d.ts +15 -2
  778. package/vscode-dts/vscode.proposed.chatReferenceBinaryData.d.ts +11 -0
  779. package/vscode-dts/vscode.proposed.chatSessionCustomizationProvider.d.ts +34 -0
  780. package/vscode-dts/vscode.proposed.chatSessionsProvider.d.ts +2 -2
  781. package/vscode-dts/vscode.proposed.customEditorDiffs.d.ts +24 -4
  782. package/vscode-dts/vscode.proposed.d.ts +2 -0
  783. package/vscode-dts/vscode.proposed.defaultChatParticipant.d.ts +0 -2
  784. package/vscode-dts/vscode.proposed.documentSyntaxHighlighting.d.ts +87 -0
  785. package/vscode-dts/vscode.proposed.findFiles2.d.ts +0 -2
  786. package/vscode-dts/vscode.proposed.languageModelPricing.d.ts +35 -0
  787. package/vscode-dts/vscode.proposed.languageModelThinkingPart.d.ts +0 -2
  788. package/vscode-dts/vscode.proposed.languageModelToolSupportsModel.d.ts +0 -2
  789. package/vscode-dts/vscode.proposed.mcpServerDefinitions.d.ts +0 -2
  790. package/vscode-dts/vscode.proposed.textEditorDiffInformation.d.ts +35 -0
  791. package/vscode/src/vs/platform/agentHost/common/agentPluginManager.d.ts +0 -11
  792. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemSource.d.ts +0 -135
@@ -1,32 +1,7 @@
1
- import type { ChangesetSummary } from "../channels-changeset/state.js";
2
- import type { ModelSelection } from "../channels-root/state.js";
3
- import type { ConfigPropertySchema, ContentRef, ErrorInfo, FileEdit, Icon, ProtectedResourceMetadata, StringOrMarkdown, TextRange, TextSelection, URI, UsageInfo } from "../common/state.js";
4
- /**
5
- * Discriminant for pending message kinds.
6
- *
7
- * @category Pending Message Types
8
- */
9
- export declare enum PendingMessageKind {
10
- /** Injected into the current turn at a convenient point */
11
- Steering = "steering",
12
- /** Sent automatically as a new turn after the current turn finishes */
13
- Queued = "queued"
14
- }
15
- /**
16
- * A message queued for future delivery to the agent.
17
- *
18
- * Steering messages are injected into the current turn mid-flight.
19
- * Queued messages are automatically started as new turns after the
20
- * current turn naturally finishes.
21
- *
22
- * @category Pending Message Types
23
- */
24
- export interface PendingMessage {
25
- /** Unique identifier for this pending message */
26
- id: string;
27
- /** The message that will start the next turn */
28
- message: Message;
29
- }
1
+ import type { Changeset } from "../channels-changeset/state.js";
2
+ import type { AnnotationsSummary } from "../channels-annotations/state.js";
3
+ import type { ChatSummary, ChatInputRequest, ToolCallConfirmationState, ToolCallState } from "../channels-chat/state.js";
4
+ import type { ConfigPropertySchema, ErrorInfo, Icon, ProtectedResourceMetadata, TextRange, URI } from "../common/state.js";
30
5
  /**
31
6
  * Session initialization state.
32
7
  *
@@ -60,32 +35,84 @@ export declare enum SessionStatus {
60
35
  /** The session has been archived by the client. */
61
36
  IsArchived = 64
62
37
  }
38
+ /**
39
+ * Metadata shared between the full {@link SessionState} (delivered when a
40
+ * client subscribes to a session's URI) and the lightweight
41
+ * {@link SessionSummary} (carried in the root-channel session catalog).
42
+ *
43
+ * These fields describe the session at a glance and appear in both places.
44
+ * `SessionState` owns the authoritative values for a subscribed session;
45
+ * `SessionSummary` mirrors them into the catalog so clients that only render a
46
+ * session list don't have to subscribe to every session URI. The host keeps
47
+ * the catalog in sync via `root/sessionSummaryChanged`.
48
+ *
49
+ * @category Session State
50
+ */
51
+ export interface SessionMetadata {
52
+ /** Agent provider ID */
53
+ provider: string;
54
+ /** Session title */
55
+ title: string;
56
+ /** Current session status */
57
+ status: SessionStatus;
58
+ /** Human-readable description of what the session is currently doing */
59
+ activity?: string;
60
+ /** Server-owned project for this session */
61
+ project?: ProjectInfo;
62
+ /**
63
+ * The default working directory URI for this session. Individual chats
64
+ * MAY override via {@link ChatSummary.workingDirectory | their own
65
+ * `workingDirectory`}; this field acts as the fallback for any chat that
66
+ * does not.
67
+ */
68
+ workingDirectory?: URI;
69
+ /**
70
+ * Lightweight summary of this session's inline annotations channel
71
+ * (`ahp-session:/<uuid>/annotations`). Surfaced so badge UI can render
72
+ * annotation / entry counts without subscribing. Absent when the session
73
+ * does not expose an annotations channel.
74
+ */
75
+ annotations?: AnnotationsSummary;
76
+ }
63
77
  /**
64
78
  * Full state for a single session, loaded when a client subscribes to the session's URI.
65
79
  *
80
+ * Inlines (denormalizes) every {@link SessionMetadata} field directly onto
81
+ * itself so subscribers receive one flat object instead of a nested summary.
82
+ * The lightweight catalog representation is {@link SessionSummary}, surfaced on
83
+ * the root channel; the host keeps the two in sync via
84
+ * `root/sessionSummaryChanged`.
85
+ *
66
86
  * @category Session State
67
87
  */
68
- export interface SessionState {
69
- /** Lightweight session metadata */
70
- summary: SessionSummary;
88
+ export interface SessionState extends SessionMetadata {
71
89
  /** Session initialization state */
72
90
  lifecycle: SessionLifecycle;
73
91
  /** Error details if creation failed */
74
92
  creationError?: ErrorInfo;
75
93
  /** Tools provided by the server (agent host) for this session */
76
94
  serverTools?: ToolDefinition[];
77
- /** The client currently providing tools and interactive capabilities to this session */
78
- activeClient?: SessionActiveClient;
79
- /** Completed turns */
80
- turns: Turn[];
81
- /** Currently in-progress turn */
82
- activeTurn?: ActiveTurn;
83
- /** Message to inject into the current turn at a convenient point */
84
- steeringMessage?: PendingMessage;
85
- /** Messages to send automatically as new turns after the current turn finishes */
86
- queuedMessages?: PendingMessage[];
87
- /** Requests for user input that are currently blocking or informing session progress */
88
- inputRequests?: SessionInputRequest[];
95
+ /**
96
+ * The clients currently providing tools and interactive capabilities to this
97
+ * session. If multiple tools or customizations are provided by the same
98
+ * active client, an agent host MAY deduplicate them when exposed to a model,
99
+ * with a preference given to the client that started the turn.
100
+ *
101
+ * Membership is host-managed: clients add (or refresh) themselves with
102
+ * `session/activeClientSet`, and the host removes them with
103
+ * `session/activeClientRemoved` when they unsubscribe, disconnect without
104
+ * reconnecting in time, or reconnect without resubscribing to the session.
105
+ */
106
+ activeClients: SessionActiveClient[];
107
+ /** Catalog of chats in this session. */
108
+ chats: ChatSummary[];
109
+ /**
110
+ * The chat that receives input when the user addresses the session without
111
+ * selecting a specific chat. This is a UI routing hint, not a hierarchy
112
+ * marker — chats remain equal peers at the protocol level. Hosts MAY change
113
+ * this over the session's lifetime.
114
+ */
115
+ defaultChat?: URI;
89
116
  /** Session configuration schema and current values */
90
117
  config?: SessionConfigState;
91
118
  /**
@@ -103,13 +130,38 @@ export interface SessionState {
103
130
  * also appear as children of a container.
104
131
  *
105
132
  * Client-published plugins arrive via
106
- * {@link SessionActiveClient.customizations | `activeClient.customizations`}
133
+ * {@link SessionActiveClient.customizations | `activeClients[].customizations`}
107
134
  * and the host propagates them into this list (typically with the
108
135
  * container's `clientId` set and `children` populated). Clients
109
136
  * publish in container shape only; bare MCP servers at the top level
110
137
  * are server-originated.
111
138
  */
112
139
  customizations?: Customization[];
140
+ /**
141
+ * Catalogue of changesets the server can produce for this session. Each
142
+ * entry advertises a subscribable view of file changes (uncommitted,
143
+ * session-wide, per-turn, etc.) and the URI template the client expands
144
+ * before subscribing. See {@link Changeset} for the full shape and
145
+ * {@link /guide/changesets | Changesets} for an overview of the model.
146
+ */
147
+ changesets?: Changeset[];
148
+ /**
149
+ * Outstanding input the session is blocked on, aggregated across every chat
150
+ * so a client can discover and answer it from the session channel alone,
151
+ * without subscribing to individual chats.
152
+ *
153
+ * Each entry is self-sufficient: it carries the owning chat's URI plus every
154
+ * identifier the client needs to respond. A client answers by dispatching the
155
+ * ordinary `chat/*` action to that chat's channel — see
156
+ * {@link SessionInputRequest} for the per-variant response path. A present,
157
+ * non-empty list implies {@link SessionStatus.InputNeeded} on
158
+ * {@link SessionSummary.status}.
159
+ *
160
+ * Host-managed: the host upserts entries with `session/inputNeededSet` as
161
+ * chats raise requests and removes them with `session/inputNeededRemoved`
162
+ * once the underlying request resolves.
163
+ */
164
+ inputNeeded?: SessionInputRequest[];
113
165
  /**
114
166
  * Additional provider-specific metadata for this session.
115
167
  *
@@ -120,10 +172,11 @@ export interface SessionState {
120
172
  _meta?: Record<string, unknown>;
121
173
  }
122
174
  /**
123
- * The client currently providing tools and interactive capabilities to a session.
175
+ * A client currently providing tools and interactive capabilities to a session.
124
176
  *
125
- * Only one client may be active per session at a time. The server SHOULD
126
- * automatically unset the active client if that client disconnects.
177
+ * A session MAY have several active clients at once; entries in
178
+ * {@link SessionState.activeClients} are keyed by `clientId`. The server SHOULD
179
+ * automatically remove an active client when that client disconnects.
127
180
  *
128
181
  * @category Session State
129
182
  */
@@ -144,6 +197,125 @@ export interface SessionActiveClient {
144
197
  */
145
198
  customizations?: ClientPluginCustomization[];
146
199
  }
200
+ /**
201
+ * Discriminant for the kinds of outstanding input a session can surface in
202
+ * {@link SessionState.inputNeeded}.
203
+ *
204
+ * This is a general/typological union (not a lifecycle), so the discriminant is
205
+ * a `*Kind`.
206
+ *
207
+ * @category Session Input Types
208
+ */
209
+ export declare enum SessionInputRequestKind {
210
+ /** A user-facing elicitation mirrored from a chat's `inputRequests`. */
211
+ ChatInput = "chatInput",
212
+ /** A tool call awaiting parameter- or result-confirmation. */
213
+ ToolConfirmation = "toolConfirmation",
214
+ /** A running tool the session wants an active client to execute. */
215
+ ToolClientExecution = "toolClientExecution"
216
+ }
217
+ /**
218
+ * Fields common to every {@link SessionInputRequest} variant.
219
+ *
220
+ * @category Session Input Types
221
+ */
222
+ interface SessionInputRequestBase {
223
+ /**
224
+ * Stable key for this entry, unique within the session's
225
+ * {@link SessionState.inputNeeded} list. The host derives it however it likes
226
+ * (for example from the chat URI plus the underlying request or tool-call
227
+ * id); consumers MUST treat it as opaque. It is the key for the
228
+ * `session/inputNeededSet` / `session/inputNeededRemoved` upsert convention.
229
+ */
230
+ id: string;
231
+ /**
232
+ * The chat the underlying request lives in. This is the channel a client
233
+ * dispatches its response to — it does not need to have subscribed to that
234
+ * chat first.
235
+ */
236
+ chat: URI;
237
+ }
238
+ /**
239
+ * A user-input elicitation surfaced at the session level, mirroring one entry
240
+ * of the owning chat's {@link ChatState.inputRequests}.
241
+ *
242
+ * Respond by dispatching `chat/inputCompleted` (or syncing drafts with
243
+ * `chat/inputAnswerChanged`) to {@link SessionInputRequestBase.chat | `chat`},
244
+ * keyed by {@link ChatInputRequest.id | `request.id`}.
245
+ *
246
+ * @category Session Input Types
247
+ */
248
+ export interface SessionChatInputRequest extends SessionInputRequestBase {
249
+ kind: SessionInputRequestKind.ChatInput;
250
+ /** The mirrored chat input request. */
251
+ request: ChatInputRequest;
252
+ }
253
+ /**
254
+ * A tool call blocked on confirmation — either parameter confirmation before
255
+ * execution or result confirmation after — surfaced at the session level.
256
+ *
257
+ * Respond by dispatching `chat/toolCallConfirmed` (for
258
+ * {@link ToolCallPendingConfirmationState}) or `chat/toolCallResultConfirmed`
259
+ * (for {@link ToolCallPendingResultConfirmationState}) to
260
+ * {@link SessionInputRequestBase.chat | `chat`}, keyed by `turnId` and
261
+ * `toolCall.toolCallId`.
262
+ *
263
+ * @category Session Input Types
264
+ */
265
+ export interface SessionToolConfirmationRequest extends SessionInputRequestBase {
266
+ kind: SessionInputRequestKind.ToolConfirmation;
267
+ /** The turn the tool call belongs to. */
268
+ turnId: string;
269
+ /** The tool call awaiting confirmation. */
270
+ toolCall: ToolCallConfirmationState;
271
+ }
272
+ /**
273
+ * A running tool whose execution is delegated to an active client. Surfaced so
274
+ * a client that provides the tool can pick up the work without subscribing to
275
+ * the owning chat.
276
+ *
277
+ * The {@link toolCall} is always a {@link ToolCallRunningState} (a
278
+ * {@link ToolCallState} in `running` status) whose
279
+ * {@link ToolCallRunningState.contributor | `contributor`} is a client
280
+ * {@link ToolCallClientContributor} whose `clientId` matches the denormalized
281
+ * {@link clientId} here. Execute and report the result by dispatching
282
+ * `chat/toolCallComplete` (and optionally streaming with
283
+ * `chat/toolCallContentChanged`) to {@link SessionInputRequestBase.chat |
284
+ * `chat`}, keyed by `turnId` and `toolCall.toolCallId`.
285
+ *
286
+ * @category Session Input Types
287
+ */
288
+ export interface SessionToolClientExecutionRequest extends SessionInputRequestBase {
289
+ kind: SessionInputRequestKind.ToolClientExecution;
290
+ /** The turn the tool call belongs to. */
291
+ turnId: string;
292
+ /**
293
+ * The `clientId` expected to execute the tool. Matches the `clientId` of the
294
+ * tool call's client {@link ToolCallContributor}.
295
+ */
296
+ clientId: string;
297
+ /**
298
+ * The running tool call the session wants the owning client to execute. The
299
+ * host only ever populates this with a {@link ToolCallRunningState} (i.e. a
300
+ * {@link ToolCallState} in `running` status).
301
+ */
302
+ toolCall: ToolCallState;
303
+ }
304
+ /**
305
+ * One outstanding piece of input a session is blocked on, aggregated across all
306
+ * chats in {@link SessionState.inputNeeded}.
307
+ *
308
+ * Each entry is self-sufficient: it carries the owning
309
+ * {@link SessionInputRequestBase.chat | `chat`} URI plus every identifier needed
310
+ * to construct the response, so a client can answer by dispatching the ordinary
311
+ * `chat/*` action (`chat/inputCompleted`, `chat/toolCallConfirmed`,
312
+ * `chat/toolCallComplete`, …) to that chat's channel **without having subscribed
313
+ * to the chat**. The host removes the entry with `session/inputNeededRemoved`
314
+ * once the underlying request resolves.
315
+ *
316
+ * @category Session Input Types
317
+ */
318
+ export type SessionInputRequest = SessionChatInputRequest | SessionToolConfirmationRequest | SessionToolClientExecutionRequest;
147
319
  /**
148
320
  * Server-owned project metadata for a session.
149
321
  *
@@ -156,44 +328,77 @@ export interface ProjectInfo {
156
328
  displayName: string;
157
329
  }
158
330
  /**
331
+ * Lightweight catalog entry summarizing one session. Surfaced via
332
+ * {@link RootChannelCommands.listSessions | `root/listSessions`} and
333
+ * `root/sessionAdded`/`root/sessionSummaryChanged` notifications.
334
+ *
335
+ * **Aggregation across chats.** Once a session contains more than one chat,
336
+ * several `SessionSummary` fields are derived from the underlying
337
+ * {@link SessionState.chats | chat catalog}. Producers SHOULD follow these
338
+ * rules so clients that only consume the session summary (e.g. a session
339
+ * list) still see meaningful state:
340
+ *
341
+ * - `status`: take the activity bits (`Idle` / `InProgress` / `InputNeeded` /
342
+ * `Error` — bits 0–4) from the
343
+ * {@link SessionState.defaultChat | default chat} when present, else from
344
+ * the most recently modified chat. **Promote** `InputNeeded` whenever any
345
+ * chat in the session needs input, and **promote** `Error` whenever any
346
+ * chat is in an error state — both override the default-chat bits. The
347
+ * orthogonal flag bits (`IsRead`, `IsArchived`) remain session-scoped.
348
+ * - `activity`: mirror the activity string of the default chat, or of the
349
+ * chat currently driving the promoted status bits when a non-default chat
350
+ * wins (e.g. the chat that raised `InputNeeded`).
351
+ * - `modifiedAt`: the max of all chats' `modifiedAt`.
352
+ * - `workingDirectory`: the session-level **default**. Individual chats MAY
353
+ * override via {@link ChatSummary.workingDirectory}; aggregating these up
354
+ * is meaningless and SHOULD NOT be attempted.
355
+ * - `changes`: optional roll-up across all chats. Producers MAY sum the
356
+ * per-chat changeset stats or report the most expensive chat's stats —
357
+ * whichever is cheaper for the host to compute.
358
+ *
359
+ * Sessions with a single chat trivially satisfy all of the above (the chat's
360
+ * values pass through unchanged). The rules only matter once a session
361
+ * carries multiple chats.
362
+ *
159
363
  * @category Session State
160
364
  */
161
- export interface SessionSummary {
365
+ export interface SessionSummary extends SessionMetadata {
162
366
  /** Session URI */
163
367
  resource: URI;
164
- /** Agent provider ID */
165
- provider: string;
166
- /** Session title */
167
- title: string;
168
- /** Current session status */
169
- status: SessionStatus;
170
- /** Human-readable description of what the session is currently doing */
171
- activity?: string;
172
- /** Creation timestamp */
173
- createdAt: number;
174
- /** Last modification timestamp */
175
- modifiedAt: number;
176
- /** Server-owned project for this session */
177
- project?: ProjectInfo;
178
- /** Currently selected model */
179
- model?: ModelSelection;
368
+ /** Creation timestamp (ISO 8601, e.g. `"2025-03-10T18:42:03.123Z"`) */
369
+ createdAt: string;
370
+ /** Last modification timestamp (ISO 8601, e.g. `"2025-03-10T18:42:03.123Z"`) */
371
+ modifiedAt: string;
180
372
  /**
181
- * Currently selected custom agent.
182
- *
183
- * Absent (`undefined`) means no custom agent is selected for this session
184
- * — the session uses the provider's default behavior.
185
- */
186
- agent?: AgentSelection;
187
- /** The working directory URI for this session */
188
- workingDirectory?: URI;
373
+ * Aggregate summary of file changes associated with this session. Servers
374
+ * may populate this to give clients a quick at-a-glance view of the
375
+ * session's footprint (e.g., for list rendering) without requiring the
376
+ * client to subscribe to a changeset.
377
+ */
378
+ changes?: ChangesSummary;
189
379
  /**
190
- * Catalogue of changesets the server can produce for this session. Each
191
- * entry advertises a subscribable view of file changes (uncommitted,
192
- * session-wide, per-turn, etc.) and the URI template the client expands
193
- * before subscribing. See {@link ChangesetSummary} for the full shape and
194
- * {@link /guide/changesets | Changesets} for an overview of the model.
380
+ * Lightweight server-defined metadata clients may use for the session
381
+ * presentation. The protocol does not interpret these values; producers
382
+ * SHOULD keep the payload small because summaries appear in session lists
383
+ * and session notifications.
195
384
  */
196
- changesets?: ChangesetSummary[];
385
+ _meta?: Record<string, unknown>;
386
+ }
387
+ /**
388
+ * Aggregate counts describing the file changes associated with a session.
389
+ *
390
+ * All fields are optional so servers can populate only the metrics they
391
+ * cheaply have available.
392
+ *
393
+ * @category Session State
394
+ */
395
+ export interface ChangesSummary {
396
+ /** Total number of inserted lines across all changed files. */
397
+ additions?: number;
398
+ /** Total number of deleted lines across all changed files. */
399
+ deletions?: number;
400
+ /** Number of files that have changes. */
401
+ files?: number;
197
402
  }
198
403
  /**
199
404
  * A selected custom agent for a session.
@@ -203,7 +408,7 @@ export interface SessionSummary {
203
408
  * the session's effective customizations). Consumers resolve the agent's
204
409
  * display name by looking up `uri` in the session's customization tree.
205
410
  *
206
- * A session with no `agent` selected uses the provider's default behavior.
411
+ * A message with no `agent` selected uses the provider's default behavior.
207
412
  *
208
413
  * @category Session State
209
414
  */
@@ -257,760 +462,6 @@ export interface SessionConfigState {
257
462
  /** Current configuration values */
258
463
  values: Record<string, unknown>;
259
464
  }
260
- /**
261
- * How a client completed an input request.
262
- *
263
- * @category Session Input Types
264
- */
265
- export declare enum SessionInputResponseKind {
266
- Accept = "accept",
267
- Decline = "decline",
268
- Cancel = "cancel"
269
- }
270
- /**
271
- * Question/input control kind.
272
- *
273
- * @category Session Input Types
274
- */
275
- export declare enum SessionInputQuestionKind {
276
- Text = "text",
277
- Number = "number",
278
- Integer = "integer",
279
- Boolean = "boolean",
280
- SingleSelect = "single-select",
281
- MultiSelect = "multi-select"
282
- }
283
- /**
284
- * A choice in a select-style question.
285
- *
286
- * @category Session Input Types
287
- */
288
- export interface SessionInputOption {
289
- /** Stable option identifier; for MCP enum values this is the enum string */
290
- id: string;
291
- /** Display label */
292
- label: string;
293
- /** Optional secondary text */
294
- description?: string;
295
- /** Whether this option is the recommended/default choice */
296
- recommended?: boolean;
297
- }
298
- interface SessionInputQuestionBase {
299
- /** Stable question identifier used as the key in `answers` */
300
- id: string;
301
- /** Short display title */
302
- title?: string;
303
- /** Prompt shown to the user */
304
- message: string;
305
- /** Whether the user must answer this question to accept the request */
306
- required?: boolean;
307
- }
308
- /** Text question within a session input request. */
309
- export interface SessionInputTextQuestion extends SessionInputQuestionBase {
310
- kind: SessionInputQuestionKind.Text;
311
- /** Format hint for text questions, such as `email`, `uri`, `date`, or `date-time` */
312
- format?: string;
313
- /** Minimum string length */
314
- min?: number;
315
- /** Maximum string length */
316
- max?: number;
317
- /** Default text */
318
- defaultValue?: string;
319
- }
320
- /** Numeric question within a session input request. */
321
- export interface SessionInputNumberQuestion extends SessionInputQuestionBase {
322
- kind: SessionInputQuestionKind.Number | SessionInputQuestionKind.Integer;
323
- /**
324
- * Minimum value
325
- * @format float
326
- */
327
- min?: number;
328
- /**
329
- * Maximum value
330
- * @format float
331
- */
332
- max?: number;
333
- /**
334
- * Default numeric value
335
- * @format float
336
- */
337
- defaultValue?: number;
338
- }
339
- /** Boolean question within a session input request. */
340
- export interface SessionInputBooleanQuestion extends SessionInputQuestionBase {
341
- kind: SessionInputQuestionKind.Boolean;
342
- /** Default boolean value */
343
- defaultValue?: boolean;
344
- }
345
- /** Single-select question within a session input request. */
346
- export interface SessionInputSingleSelectQuestion extends SessionInputQuestionBase {
347
- kind: SessionInputQuestionKind.SingleSelect;
348
- /** Options the user may select from */
349
- options: SessionInputOption[];
350
- /** Whether the user may enter text instead of selecting an option */
351
- allowFreeformInput?: boolean;
352
- }
353
- /** Multi-select question within a session input request. */
354
- export interface SessionInputMultiSelectQuestion extends SessionInputQuestionBase {
355
- kind: SessionInputQuestionKind.MultiSelect;
356
- /** Options the user may select from */
357
- options: SessionInputOption[];
358
- /** Whether the user may enter text in addition to selecting options */
359
- allowFreeformInput?: boolean;
360
- /** Minimum selected item count */
361
- min?: number;
362
- /** Maximum selected item count */
363
- max?: number;
364
- }
365
- /**
366
- * One question within a session input request.
367
- *
368
- * @category Session Input Types
369
- */
370
- export type SessionInputQuestion = SessionInputTextQuestion | SessionInputNumberQuestion | SessionInputBooleanQuestion | SessionInputSingleSelectQuestion | SessionInputMultiSelectQuestion;
371
- /**
372
- * A live request for user input.
373
- *
374
- * The server creates or replaces requests with `session/inputRequested`.
375
- * Clients sync drafts with `session/inputAnswerChanged` and complete requests
376
- * with `session/inputCompleted`.
377
- *
378
- * @category Session Input Types
379
- */
380
- export interface SessionInputRequest {
381
- /** Stable request identifier */
382
- id: string;
383
- /** Display message for the request as a whole */
384
- message?: string;
385
- /** URL the user should review or open, for URL-style elicitations */
386
- url?: URI;
387
- /** Ordered questions to ask the user */
388
- questions?: SessionInputQuestion[];
389
- /** Current draft or submitted answers, keyed by question ID */
390
- answers?: Record<string, SessionInputAnswer>;
391
- }
392
- /**
393
- * Answer value kind.
394
- *
395
- * @category Session Input Types
396
- */
397
- export declare enum SessionInputAnswerValueKind {
398
- Text = "text",
399
- Number = "number",
400
- Boolean = "boolean",
401
- Selected = "selected",
402
- SelectedMany = "selected-many"
403
- }
404
- /**
405
- * Value captured for one answer.
406
- *
407
- * @category Session Input Types
408
- */
409
- export interface SessionInputTextAnswerValue {
410
- kind: SessionInputAnswerValueKind.Text;
411
- value: string;
412
- }
413
- export interface SessionInputNumberAnswerValue {
414
- kind: SessionInputAnswerValueKind.Number;
415
- /** @format float */
416
- value: number;
417
- }
418
- export interface SessionInputBooleanAnswerValue {
419
- kind: SessionInputAnswerValueKind.Boolean;
420
- value: boolean;
421
- }
422
- export interface SessionInputSelectedAnswerValue {
423
- kind: SessionInputAnswerValueKind.Selected;
424
- value: string;
425
- /** Free-form text entered instead of selecting an option */
426
- freeformValues?: string[];
427
- }
428
- export interface SessionInputSelectedManyAnswerValue {
429
- kind: SessionInputAnswerValueKind.SelectedMany;
430
- value: string[];
431
- /** Free-form text entered in addition to selected options */
432
- freeformValues?: string[];
433
- }
434
- export type SessionInputAnswerValue = SessionInputTextAnswerValue | SessionInputNumberAnswerValue | SessionInputBooleanAnswerValue | SessionInputSelectedAnswerValue | SessionInputSelectedManyAnswerValue;
435
- export interface SessionInputAnswered {
436
- /** Answer state */
437
- state: SessionInputAnswerState.Draft | SessionInputAnswerState.Submitted;
438
- /** Answer value */
439
- value: SessionInputAnswerValue;
440
- }
441
- export interface SessionInputSkipped {
442
- /** Answer state */
443
- state: SessionInputAnswerState.Skipped;
444
- /** Free-form reason or value captured while skipping, if any */
445
- freeformValues?: string[];
446
- }
447
- /**
448
- * Answer lifecycle state.
449
- *
450
- * @category Session Input Types
451
- */
452
- export declare enum SessionInputAnswerState {
453
- Draft = "draft",
454
- Submitted = "submitted",
455
- Skipped = "skipped"
456
- }
457
- /**
458
- * Draft, submitted, or skipped answer for one question.
459
- *
460
- * @category Session Input Types
461
- */
462
- export type SessionInputAnswer = SessionInputAnswered | SessionInputSkipped;
463
- /**
464
- * How a turn ended.
465
- *
466
- * @category Turn Types
467
- */
468
- export declare enum TurnState {
469
- Complete = "complete",
470
- Cancelled = "cancelled",
471
- Error = "error"
472
- }
473
- /**
474
- * Discriminant for {@link MessageAttachment} variants.
475
- *
476
- * @category Turn Types
477
- */
478
- export declare enum MessageAttachmentKind {
479
- /** A simple, opaque attachment whose representation is described by the producer. */
480
- Simple = "simple",
481
- /** An attachment whose data is embedded inline as a base64 string. */
482
- EmbeddedResource = "embeddedResource",
483
- /** An attachment that references a resource by URI. */
484
- Resource = "resource"
485
- }
486
- /**
487
- * A completed request/response cycle.
488
- *
489
- * @category Turn Types
490
- */
491
- export interface Turn {
492
- /** Turn identifier */
493
- id: string;
494
- /** The message that initiated the turn */
495
- message: Message;
496
- /**
497
- * All response content in stream order: text, tool calls, reasoning, and content refs.
498
- *
499
- * Consumers should derive display text by concatenating markdown parts,
500
- * and find tool calls by filtering for `ToolCall` parts.
501
- */
502
- responseParts: ResponsePart[];
503
- /** Token usage info */
504
- usage: UsageInfo | undefined;
505
- /** How the turn ended */
506
- state: TurnState;
507
- /** Error details if state is `'error'` */
508
- error?: ErrorInfo;
509
- }
510
- /**
511
- * An in-progress turn — the assistant is actively streaming.
512
- *
513
- * @category Turn Types
514
- */
515
- export interface ActiveTurn {
516
- /** Turn identifier */
517
- id: string;
518
- /** The message that initiated the turn */
519
- message: Message;
520
- /**
521
- * All response content in stream order: text, tool calls, reasoning, and content refs.
522
- *
523
- * Tool call parts include `pendingPermissions` when permissions are awaiting user approval.
524
- */
525
- responseParts: ResponsePart[];
526
- /** Token usage info */
527
- usage: UsageInfo | undefined;
528
- }
529
- /**
530
- * Discriminant for Message types.
531
- *
532
- * @category Turn Types
533
- */
534
- export declare enum MessageKind {
535
- User = "user",
536
- SystemNotification = "systemNotification"
537
- }
538
- /**
539
- * A message that initiates or steers a turn. Messages can originate from the
540
- * user or be system-generated (see {@link MessageKind}).
541
- *
542
- * Attachments MAY be referenced inside {@link Message.text} via their
543
- * {@link MessageAttachmentBase.range} field. Attachments without a range are
544
- * still associated with the message but do not correspond to a specific span
545
- * in the text.
546
- *
547
- * @category Turn Types
548
- */
549
- export interface Message {
550
- /** Message text */
551
- text: string;
552
- /** The origin of the message */
553
- origin: {
554
- kind: MessageKind;
555
- };
556
- /** File/selection attachments */
557
- attachments?: MessageAttachment[];
558
- /**
559
- * Additional provider-specific metadata for this message.
560
- *
561
- * Clients MAY look for well-known keys here to provide enhanced UI, and
562
- * agent hosts MAY use it to carry context that does not fit any other
563
- * field. Mirrors the MCP `_meta` convention.
564
- */
565
- _meta?: Record<string, unknown>;
566
- }
567
- /**
568
- * Common fields shared by all {@link MessageAttachment} variants.
569
- *
570
- * @category Turn Types
571
- */
572
- export interface MessageAttachmentBase {
573
- /**
574
- * A human-readable label for the attachment (e.g. the filename of a file
575
- * attachment). Used for display in UI.
576
- */
577
- label: string;
578
- /**
579
- * If defined, the range in {@link Message.text} that references this
580
- * attachment. This is a text range, not a byte range.
581
- */
582
- range?: TextRange;
583
- /**
584
- * Advisory display hint for clients rendering this attachment. Recognized
585
- * values include:
586
- *
587
- * - `'image'`: the attachment is an image
588
- * - `'document'`: the attachment is a textual document
589
- * - `'symbol'`: the attachment is a code symbol (e.g. a function or class)
590
- * - `'directory'`: the attachment is a folder
591
- * - `'selection'`: the attachment is a selection within a document
592
- *
593
- * Implementations MAY provide additional values; clients SHOULD fall back
594
- * to a reasonable default when an unknown value is encountered.
595
- */
596
- displayKind?: string;
597
- /**
598
- * Additional implementation-defined metadata for the attachment.
599
- *
600
- * If the attachment was produced by the `completions` command, the client
601
- * MUST preserve every property of `_meta` originally returned by the agent
602
- * host when sending the user message containing the accepted completion.
603
- */
604
- _meta?: Record<string, unknown>;
605
- }
606
- /**
607
- * A simple, opaque attachment whose model representation is described by
608
- * the producer.
609
- *
610
- * @category Turn Types
611
- */
612
- export interface SimpleMessageAttachment extends MessageAttachmentBase {
613
- /** Discriminant */
614
- type: MessageAttachmentKind.Simple;
615
- /**
616
- * Representation of the attachment as it should be shown to the model.
617
- *
618
- * If the attachment was produced by the client, this property MUST be
619
- * defined so the agent host can correctly interpret the attachment. This
620
- * property MAY be omitted when the attachment originated from a
621
- * `completions` response.
622
- */
623
- modelRepresentation?: string;
624
- }
625
- /**
626
- * An attachment whose data is embedded inline as a base64 string.
627
- *
628
- * Use this for small binary payloads (e.g. a pasted image) that should be
629
- * delivered with the user message itself rather than fetched separately.
630
- *
631
- * @category Turn Types
632
- */
633
- export interface MessageEmbeddedResourceAttachment extends MessageAttachmentBase {
634
- /** Discriminant */
635
- type: MessageAttachmentKind.EmbeddedResource;
636
- /** Base64-encoded binary data */
637
- data: string;
638
- /** Content MIME type (e.g. `"image/png"`, `"application/pdf"`) */
639
- contentType: string;
640
- /**
641
- * Optional selection within the attached textual resource.
642
- *
643
- * Only meaningful for textual resources.
644
- */
645
- selection?: TextSelection;
646
- }
647
- /**
648
- * An attachment that references a resource by URI. The content is not
649
- * delivered inline; consumers can fetch it via `resourceRead` when needed.
650
- *
651
- * @category Turn Types
652
- */
653
- export interface MessageResourceAttachment extends MessageAttachmentBase, ContentRef {
654
- /** Discriminant */
655
- type: MessageAttachmentKind.Resource;
656
- /**
657
- * Optional selection within the referenced textual resource.
658
- *
659
- * Only meaningful for textual resources.
660
- */
661
- selection?: TextSelection;
662
- }
663
- /**
664
- * An attachment associated with a {@link Message}.
665
- *
666
- * @category Turn Types
667
- */
668
- export type MessageAttachment = SimpleMessageAttachment | MessageEmbeddedResourceAttachment | MessageResourceAttachment;
669
- /**
670
- * Discriminant for response part types.
671
- *
672
- * @category Response Parts
673
- */
674
- export declare enum ResponsePartKind {
675
- Markdown = "markdown",
676
- ContentRef = "contentRef",
677
- ToolCall = "toolCall",
678
- Reasoning = "reasoning",
679
- SystemNotification = "systemNotification"
680
- }
681
- /**
682
- * @category Response Parts
683
- */
684
- export interface MarkdownResponsePart {
685
- /** Discriminant */
686
- kind: ResponsePartKind.Markdown;
687
- /** Part identifier, used by `session/delta` to target this part for content appends */
688
- id: string;
689
- /** Markdown content */
690
- content: string;
691
- }
692
- /**
693
- * A content part that's a reference to large content stored outside the state tree.
694
- *
695
- * @category Response Parts
696
- */
697
- export interface ResourceReponsePart extends ContentRef {
698
- /** Discriminant */
699
- kind: ResponsePartKind.ContentRef;
700
- }
701
- /**
702
- * A tool call represented as a response part.
703
- *
704
- * Tool calls are part of the response stream, interleaved with text and
705
- * reasoning. The `toolCall.toolCallId` serves as the part identifier for
706
- * actions that target this part.
707
- *
708
- * @category Response Parts
709
- */
710
- export interface ToolCallResponsePart {
711
- /** Discriminant */
712
- kind: ResponsePartKind.ToolCall;
713
- /** Full tool call lifecycle state */
714
- toolCall: ToolCallState;
715
- }
716
- /**
717
- * Reasoning/thinking content from the model.
718
- *
719
- * @category Response Parts
720
- */
721
- export interface ReasoningResponsePart {
722
- /** Discriminant */
723
- kind: ResponsePartKind.Reasoning;
724
- /** Part identifier, used by `session/reasoning` to target this part for content appends */
725
- id: string;
726
- /** Accumulated reasoning text */
727
- content: string;
728
- }
729
- /**
730
- * @category Response Parts
731
- */
732
- export type ResponsePart = MarkdownResponsePart | ResourceReponsePart | ToolCallResponsePart | ReasoningResponsePart | SystemNotificationResponsePart;
733
- /**
734
- * A system notification surfaced as part of the response stream.
735
- *
736
- * System notifications are messages authored by the agent harness
737
- * that need to be visible to both the agent (for situational awareness) and
738
- * the user (for transcript continuity). Examples include "background subagent
739
- * X completed" or "task Y was cancelled".
740
- *
741
- * @category Response Parts
742
- */
743
- export interface SystemNotificationResponsePart {
744
- /** Discriminant */
745
- kind: ResponsePartKind.SystemNotification;
746
- /** The text of the system notification */
747
- content: StringOrMarkdown;
748
- }
749
- /**
750
- * Status of a tool call in the lifecycle state machine.
751
- *
752
- * @category Tool Call Types
753
- */
754
- export declare enum ToolCallStatus {
755
- Streaming = "streaming",
756
- PendingConfirmation = "pending-confirmation",
757
- Running = "running",
758
- PendingResultConfirmation = "pending-result-confirmation",
759
- Completed = "completed",
760
- Cancelled = "cancelled"
761
- }
762
- /**
763
- * How a tool call was confirmed for execution.
764
- *
765
- * - `NotNeeded` — No confirmation required (auto-approved)
766
- * - `UserAction` — User explicitly approved
767
- * - `Setting` — Approved by a persistent user setting
768
- *
769
- * @category Tool Call Types
770
- */
771
- export declare enum ToolCallConfirmationReason {
772
- NotNeeded = "not-needed",
773
- UserAction = "user-action",
774
- Setting = "setting"
775
- }
776
- /**
777
- * Why a tool call was cancelled.
778
- *
779
- * @category Tool Call Types
780
- */
781
- export declare enum ToolCallCancellationReason {
782
- Denied = "denied",
783
- Skipped = "skipped",
784
- ResultDenied = "result-denied"
785
- }
786
- /**
787
- * Whether a confirmation option represents an approval or denial action.
788
- *
789
- * @category Tool Call Types
790
- */
791
- export declare enum ConfirmationOptionKind {
792
- Approve = "approve",
793
- Deny = "deny"
794
- }
795
- /**
796
- * A confirmation option that the server offers for a tool call awaiting
797
- * approval. Allows richer choices beyond simple approve/deny — for example,
798
- * "Approve in this Session" or "Deny with reason."
799
- *
800
- * @category Tool Call Types
801
- */
802
- export interface ConfirmationOption {
803
- /** Unique identifier for the option, returned in the confirmed action */
804
- id: string;
805
- /** Human-readable label displayed to the user */
806
- label: string;
807
- /** Whether this option represents an approval or denial */
808
- kind: ConfirmationOptionKind;
809
- /**
810
- * Logical group number for visual categorisation.
811
- *
812
- * Clients SHOULD display options in the order they are defined and MAY
813
- * use differing group numbers to insert dividers between logical clusters
814
- * of options.
815
- */
816
- group?: number;
817
- }
818
- export declare enum ToolCallContributorKind {
819
- Client = "client",
820
- MCP = "mcp"
821
- }
822
- export interface ToolCallClientContributor {
823
- kind: ToolCallContributorKind.Client;
824
- /**
825
- * If this tool is provided by a client, the `clientId` of the owning client.
826
- * Absent for server-side tools.
827
- *
828
- * When set, the identified client is responsible for executing the tool and
829
- * dispatching `session/toolCallComplete` with the result.
830
- */
831
- clientId: string;
832
- }
833
- export interface ToolCallMcpContributor {
834
- kind: ToolCallContributorKind.MCP;
835
- /**
836
- * Customization ID of the corresponding MCP server in {@link SessionState.customizations}.
837
- */
838
- customizationId: string;
839
- }
840
- export type ToolCallContributor = ToolCallClientContributor | ToolCallMcpContributor;
841
- /**
842
- * Metadata common to all tool call states.
843
- *
844
- * @category Tool Call Types
845
- * @remarks
846
- * Fields like `toolName` carry agent-specific identifiers on the wire despite the
847
- * agent-agnostic design principle. These exist for debugging and logging purposes.
848
- * A future version may move these to a separate diagnostic channel or namespace them
849
- * more clearly.
850
- */
851
- interface ToolCallBase {
852
- /** Unique tool call identifier */
853
- toolCallId: string;
854
- /** Internal tool name (for debugging/logging) */
855
- toolName: string;
856
- /** Human-readable tool name */
857
- displayName: string;
858
- /**
859
- * Reference to the contributor of the tool being called.
860
- */
861
- contributor?: ToolCallContributor;
862
- /**
863
- * Additional provider-specific metadata for this tool call.
864
- *
865
- * This MAY include a `ui` field corresponding to the MCP Apps (SEP-1865)
866
- * `McpUiToolMeta` found in MCP tool calls, which may be used in combination
867
- * with the {@link contributor} to serve MCP Apps.
868
- */
869
- _meta?: Record<string, unknown>;
870
- }
871
- /**
872
- * Properties available once tool call parameters are fully received.
873
- *
874
- * @category Tool Call Types
875
- */
876
- interface ToolCallParameterFields {
877
- /** Message describing what the tool will do */
878
- invocationMessage: StringOrMarkdown;
879
- /** Raw tool input */
880
- toolInput?: string;
881
- }
882
- /**
883
- * Tool execution result details, available after execution completes.
884
- *
885
- * @category Tool Call Types
886
- */
887
- export interface ToolCallResult {
888
- /** Whether the tool succeeded */
889
- success: boolean;
890
- /** Past-tense description of what the tool did */
891
- pastTenseMessage: StringOrMarkdown;
892
- /**
893
- * Unstructured result content blocks.
894
- *
895
- * This mirrors the `content` field of MCP `CallToolResult`.
896
- */
897
- content?: ToolResultContent[];
898
- /**
899
- * Optional structured result object.
900
- *
901
- * This mirrors the `structuredContent` field of MCP `CallToolResult`.
902
- */
903
- structuredContent?: Record<string, unknown>;
904
- /** Error details if the tool failed */
905
- error?: {
906
- message: string;
907
- code?: string;
908
- };
909
- }
910
- /**
911
- * LM is streaming the tool call parameters.
912
- *
913
- * @category Tool Call Types
914
- */
915
- export interface ToolCallStreamingState extends ToolCallBase {
916
- status: ToolCallStatus.Streaming;
917
- /** Partial parameters accumulated so far */
918
- partialInput?: string;
919
- /** Progress message shown while parameters are streaming */
920
- invocationMessage?: StringOrMarkdown;
921
- }
922
- /**
923
- * Parameters are complete, or a running tool requires re-confirmation
924
- * (e.g. a mid-execution permission check).
925
- *
926
- * @category Tool Call Types
927
- */
928
- export interface ToolCallPendingConfirmationState extends ToolCallBase, ToolCallParameterFields {
929
- status: ToolCallStatus.PendingConfirmation;
930
- /** Short title for the confirmation prompt (e.g. `"Run in terminal"`, `"Write file"`) */
931
- confirmationTitle?: StringOrMarkdown;
932
- /** File edits that this tool call will perform, for preview before confirmation */
933
- edits?: {
934
- items: FileEdit[];
935
- };
936
- /** Whether the agent host allows the client to edit the tool's input parameters before confirming */
937
- editable?: boolean;
938
- /**
939
- * Options the server offers for this confirmation. When present, the client
940
- * SHOULD render these instead of a plain approve/deny UI. Each option
941
- * belongs to a {@link ConfirmationOptionGroup} so the client can still
942
- * categorise the choices.
943
- */
944
- options?: ConfirmationOption[];
945
- }
946
- /**
947
- * Tool is actively executing.
948
- *
949
- * @category Tool Call Types
950
- */
951
- export interface ToolCallRunningState extends ToolCallBase, ToolCallParameterFields {
952
- status: ToolCallStatus.Running;
953
- /** How the tool was confirmed for execution */
954
- confirmed: ToolCallConfirmationReason;
955
- /** The confirmation option the user selected, if confirmation options were provided */
956
- selectedOption?: ConfirmationOption;
957
- /**
958
- * Partial content produced while the tool is still executing.
959
- *
960
- * For example, a terminal content block lets clients subscribe to live
961
- * output before the tool completes.
962
- */
963
- content?: ToolResultContent[];
964
- }
965
- /**
966
- * Tool finished executing, waiting for client to approve the result.
967
- *
968
- * @category Tool Call Types
969
- */
970
- export interface ToolCallPendingResultConfirmationState extends ToolCallBase, ToolCallParameterFields, ToolCallResult {
971
- status: ToolCallStatus.PendingResultConfirmation;
972
- /** How the tool was confirmed for execution */
973
- confirmed: ToolCallConfirmationReason;
974
- /** The confirmation option the user selected, if confirmation options were provided */
975
- selectedOption?: ConfirmationOption;
976
- }
977
- /**
978
- * Tool completed successfully or with an error.
979
- *
980
- * @category Tool Call Types
981
- */
982
- export interface ToolCallCompletedState extends ToolCallBase, ToolCallParameterFields, ToolCallResult {
983
- status: ToolCallStatus.Completed;
984
- /** How the tool was confirmed for execution */
985
- confirmed: ToolCallConfirmationReason;
986
- /** The confirmation option the user selected, if confirmation options were provided */
987
- selectedOption?: ConfirmationOption;
988
- }
989
- /**
990
- * Tool call was cancelled before execution.
991
- *
992
- * @category Tool Call Types
993
- */
994
- export interface ToolCallCancelledState extends ToolCallBase, ToolCallParameterFields {
995
- status: ToolCallStatus.Cancelled;
996
- /** Why the tool was cancelled */
997
- reason: ToolCallCancellationReason;
998
- /** Optional message explaining the cancellation */
999
- reasonMessage?: StringOrMarkdown;
1000
- /** What the user suggested doing instead */
1001
- userSuggestion?: Message;
1002
- /** The confirmation option the user selected, if confirmation options were provided */
1003
- selectedOption?: ConfirmationOption;
1004
- }
1005
- /**
1006
- * Discriminated union of all tool call lifecycle states.
1007
- *
1008
- * See the [state model guide](/guide/state-model.html#tool-call-lifecycle)
1009
- * for the full state machine diagram.
1010
- *
1011
- * @category Tool Call Types
1012
- */
1013
- export type ToolCallState = ToolCallStreamingState | ToolCallPendingConfirmationState | ToolCallRunningState | ToolCallPendingResultConfirmationState | ToolCallCompletedState | ToolCallCancelledState;
1014
465
  /**
1015
466
  * Describes a tool available in a session, provided by either the server or the active client.
1016
467
  *
@@ -1073,109 +524,6 @@ export interface ToolAnnotations {
1073
524
  /** Tool may interact with external entities (default: true) */
1074
525
  openWorldHint?: boolean;
1075
526
  }
1076
- /**
1077
- * Discriminant for tool result content types.
1078
- *
1079
- * @category Tool Result Content
1080
- */
1081
- export declare enum ToolResultContentType {
1082
- Text = "text",
1083
- EmbeddedResource = "embeddedResource",
1084
- Resource = "resource",
1085
- FileEdit = "fileEdit",
1086
- Terminal = "terminal",
1087
- Subagent = "subagent"
1088
- }
1089
- /**
1090
- * Text content in a tool result.
1091
- *
1092
- * Mirrors MCP `TextContent`.
1093
- *
1094
- * @category Tool Result Content
1095
- */
1096
- export interface ToolResultTextContent {
1097
- type: ToolResultContentType.Text;
1098
- /** The text content */
1099
- text: string;
1100
- }
1101
- /**
1102
- * Base64-encoded binary content embedded in a tool result.
1103
- *
1104
- * Mirrors MCP `EmbeddedResource` for inline binary data.
1105
- *
1106
- * @category Tool Result Content
1107
- */
1108
- export interface ToolResultEmbeddedResourceContent {
1109
- type: ToolResultContentType.EmbeddedResource;
1110
- /** Base64-encoded data */
1111
- data: string;
1112
- /** Content type (e.g. `"image/png"`, `"application/pdf"`) */
1113
- contentType: string;
1114
- }
1115
- /**
1116
- * A reference to a resource stored outside the tool result.
1117
- *
1118
- * Wraps {@link ContentRef} for lazy-loading large results.
1119
- *
1120
- * @category Tool Result Content
1121
- */
1122
- export interface ToolResultResourceContent extends ContentRef {
1123
- type: ToolResultContentType.Resource;
1124
- }
1125
- /**
1126
- * Describes a file modification performed by a tool.
1127
- *
1128
- * @category Tool Result Content
1129
- */
1130
- export interface ToolResultFileEditContent extends FileEdit {
1131
- type: ToolResultContentType.FileEdit;
1132
- }
1133
- /**
1134
- * A reference to a terminal whose output is relevant to this tool result.
1135
- *
1136
- * Clients can subscribe to the terminal's URI to stream its output in real
1137
- * time, providing live feedback while a tool is executing.
1138
- *
1139
- * @category Tool Result Content
1140
- */
1141
- export interface ToolResultTerminalContent {
1142
- type: ToolResultContentType.Terminal;
1143
- /** Terminal URI (subscribable for full terminal state) */
1144
- resource: URI;
1145
- /** Display title for the terminal content */
1146
- title: string;
1147
- }
1148
- /**
1149
- * A reference to a subagent session spawned by a tool.
1150
- *
1151
- * Clients can subscribe to the subagent's session URI to stream its
1152
- * progress in real time, including inner tool calls and responses.
1153
- *
1154
- * @category Tool Result Content
1155
- */
1156
- export interface ToolResultSubagentContent {
1157
- type: ToolResultContentType.Subagent;
1158
- /** Subagent session URI (subscribable for full session state) */
1159
- resource: URI;
1160
- /** Display title for the subagent */
1161
- title: string;
1162
- /** Internal agent name */
1163
- agentName?: string;
1164
- /** Human-readable description of the subagent's task */
1165
- description?: string;
1166
- }
1167
- /**
1168
- * Content block in a tool result.
1169
- *
1170
- * Mirrors the content blocks in MCP `CallToolResult.content`, plus
1171
- * `ToolResultResourceContent` for lazy-loading large results,
1172
- * `ToolResultFileEditContent` for file edit diffs,
1173
- * `ToolResultTerminalContent` for live terminal output, and
1174
- * `ToolResultSubagentContent` for subagent sessions (AHP extensions).
1175
- *
1176
- * @category Tool Result Content
1177
- */
1178
- export type ToolResultContent = ToolResultTextContent | ToolResultEmbeddedResourceContent | ToolResultResourceContent | ToolResultFileEditContent | ToolResultTerminalContent | ToolResultSubagentContent;
1179
527
  /**
1180
528
  * Discriminant for the kind of customization.
1181
529
  *
@@ -1382,6 +730,22 @@ export interface AgentCustomization extends CustomizationBase {
1382
730
  * invoke it. Sourced from the agent file's frontmatter `description`.
1383
731
  */
1384
732
  description?: string;
733
+ /**
734
+ * Model the agent is pinned to, sourced from the agent file's
735
+ * frontmatter `model`. Absent means the agent inherits the session's
736
+ * default model.
737
+ */
738
+ model?: string;
739
+ /**
740
+ * Allowlist of tool names the agent is scoped to, sourced from the
741
+ * agent file's frontmatter `tools`. A non-empty list restricts the
742
+ * agent to exactly those tools. Absent — or an empty list — imposes no
743
+ * restriction beyond the session default: the agent may use any
744
+ * available tool. Producers express "no restriction" by omitting the
745
+ * field rather than sending an empty array, so an empty list carries no
746
+ * meaning distinct from absence.
747
+ */
748
+ tools?: string[];
1385
749
  /**
1386
750
  * Additional provider-specific metadata for this custom agent.
1387
751
  *