@codingame/monaco-vscode-api 26.1.0 → 26.1.2

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 (346) hide show
  1. package/missing-services.js +26 -8
  2. package/package.json +8 -8
  3. package/services.js +3 -3
  4. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.css +9 -0
  5. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.d.ts +2 -0
  6. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.js +12 -5
  7. package/vscode/src/vs/platform/actions/common/actions.d.ts +1 -0
  8. package/vscode/src/vs/platform/actions/common/actions.js +3 -0
  9. package/vscode/src/vs/platform/extensions/common/extensionsApiProposals.d.ts +4 -0
  10. package/vscode/src/vs/platform/extensions/common/extensionsApiProposals.js +5 -1
  11. package/vscode/src/vs/platform/product/common/product.js +3 -3
  12. package/vscode/src/vs/workbench/api/common/extHost.api.impl.js +2 -1
  13. package/vscode/src/vs/workbench/api/common/extHost.protocol.d.ts +1 -0
  14. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.d.ts +1 -0
  15. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.js +31 -8
  16. package/vscode/src/vs/workbench/api/common/extHostChatSessions.js +2 -1
  17. package/vscode/src/vs/workbench/api/common/extHostLanguageModelTools.js +7 -2
  18. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.d.ts +12 -1
  19. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +67 -3
  20. package/vscode/src/vs/workbench/api/common/extHostTypes.d.ts +12 -0
  21. package/vscode/src/vs/workbench/api/common/extHostTypes.js +9 -1
  22. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.js +1 -7
  23. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.d.ts +5 -0
  24. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.js +15 -12
  25. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsModel.js +1 -1
  26. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatScreenshotContext.js +1 -1
  27. package/vscode/src/vs/workbench/contrib/chat/browser/chat.d.ts +8 -3
  28. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorContextKeys.js +7 -7
  29. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptFileRewriter.d.ts +1 -1
  30. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptFileRewriter.js +5 -3
  31. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentParts.d.ts +2 -2
  32. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditorInput.js +9 -9
  33. package/vscode/src/vs/workbench/contrib/chat/common/actions/chatContextKeys.d.ts +7 -0
  34. package/vscode/src/vs/workbench/contrib/chat/common/actions/chatContextKeys.js +80 -62
  35. package/vscode/src/vs/workbench/contrib/chat/common/attachments/chatVariableEntries.js +2 -2
  36. package/vscode/src/vs/workbench/contrib/chat/common/chatModes.d.ts +5 -5
  37. package/vscode/src/vs/workbench/contrib/chat/common/chatModes.js +8 -9
  38. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatService.d.ts +70 -1
  39. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatService.js +27 -1
  40. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatService.service.d.ts +27 -3
  41. package/vscode/src/vs/workbench/contrib/chat/common/chatSessionsService.d.ts +2 -1
  42. package/vscode/src/vs/workbench/contrib/chat/common/chatSessionsService.service.d.ts +3 -2
  43. package/vscode/src/vs/workbench/contrib/chat/common/constants.d.ts +2 -0
  44. package/vscode/src/vs/workbench/contrib/chat/common/constants.js +2 -0
  45. package/vscode/src/vs/workbench/contrib/chat/common/editing/chatEditingService.js +2 -2
  46. package/vscode/src/vs/workbench/contrib/chat/common/languageModelStats.js +3 -3
  47. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.js +22 -22
  48. package/vscode/src/vs/workbench/contrib/chat/common/model/chatModel.d.ts +84 -5
  49. package/vscode/src/vs/workbench/contrib/chat/common/model/chatModel.js +176 -70
  50. package/vscode/src/vs/workbench/contrib/chat/common/model/chatViewModel.d.ts +18 -5
  51. package/vscode/src/vs/workbench/contrib/chat/common/model/chatViewModel.js +46 -4
  52. package/vscode/src/vs/workbench/contrib/chat/common/participants/chatAgents.d.ts +17 -0
  53. package/vscode/src/vs/workbench/contrib/chat/common/participants/chatAgents.js +10 -0
  54. package/vscode/src/vs/workbench/contrib/chat/common/participants/chatAgents.service.d.ts +1 -0
  55. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/computeAutomaticInstructions.d.ts +9 -0
  56. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/computeAutomaticInstructions.js +68 -54
  57. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/config/config.d.ts +16 -0
  58. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/config/config.js +6 -0
  59. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/config/promptFileLocations.d.ts +48 -0
  60. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/config/promptFileLocations.js +64 -3
  61. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookSchema.d.ts +159 -0
  62. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookSchema.js +387 -0
  63. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptFileParser.d.ts +21 -4
  64. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptFileParser.js +82 -26
  65. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptTypes.d.ts +3 -1
  66. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptTypes.js +5 -1
  67. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.d.ts +51 -3
  68. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.js +14 -1
  69. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.service.d.ts +11 -10
  70. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptEditHelper.d.ts +5 -0
  71. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptEditHelper.js +22 -0
  72. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/manageTodoListTool.js +9 -9
  73. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/runSubagentTool.d.ts +14 -2
  74. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/runSubagentTool.js +98 -25
  75. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.js +22 -22
  76. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsService.d.ts +14 -0
  77. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsService.js +3 -3
  78. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsService.service.d.ts +1 -2
  79. package/vscode/src/vs/workbench/contrib/chat/common/widget/input/modelPickerWidget.js +1 -1
  80. package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +11 -11
  81. package/vscode/src/vs/workbench/contrib/codeEditor/browser/dictation/editorDictation.js +4 -4
  82. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorAccessibilityHelp.js +5 -5
  83. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorHelper.js +3 -3
  84. package/vscode/src/vs/workbench/contrib/codeEditor/browser/find/simpleFindWidget.js +9 -9
  85. package/vscode/src/vs/workbench/contrib/codeEditor/browser/inspectEditorTokens/inspectEditorTokens.js +2 -2
  86. package/vscode/src/vs/workbench/contrib/codeEditor/browser/largeFileOptimizations.js +3 -3
  87. package/vscode/src/vs/workbench/contrib/codeEditor/browser/quickaccess/gotoSymbolQuickAccess.js +6 -6
  88. package/vscode/src/vs/workbench/contrib/codeEditor/browser/saveParticipants.js +4 -4
  89. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMinimap.js +2 -2
  90. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier.js +3 -3
  91. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderControlCharacter.js +2 -2
  92. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderWhitespace.js +2 -2
  93. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +5 -5
  94. package/vscode/src/vs/workbench/contrib/codeEditor/common/languageConfigurationExtensionPoint.js +65 -65
  95. package/vscode/src/vs/workbench/contrib/comments/browser/commentColors.js +7 -7
  96. package/vscode/src/vs/workbench/contrib/comments/browser/commentGlyphWidget.js +7 -7
  97. package/vscode/src/vs/workbench/contrib/comments/browser/commentNode.js +2 -2
  98. package/vscode/src/vs/workbench/contrib/comments/browser/commentReply.js +3 -3
  99. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadBody.js +3 -3
  100. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadHeader.js +3 -3
  101. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadWidget.js +3 -3
  102. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadZoneWidget.js +3 -3
  103. package/vscode/src/vs/workbench/contrib/comments/browser/commentsAccessibility.js +12 -12
  104. package/vscode/src/vs/workbench/contrib/comments/browser/commentsController.js +7 -7
  105. package/vscode/src/vs/workbench/contrib/comments/browser/commentsModel.js +1 -1
  106. package/vscode/src/vs/workbench/contrib/comments/browser/commentsTreeViewer.js +9 -9
  107. package/vscode/src/vs/workbench/contrib/comments/browser/commentsView.js +14 -14
  108. package/vscode/src/vs/workbench/contrib/comments/browser/commentsViewActions.js +16 -16
  109. package/vscode/src/vs/workbench/contrib/comments/browser/reactionsAction.js +7 -7
  110. package/vscode/src/vs/workbench/contrib/comments/common/commentContextKeys.js +12 -12
  111. package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditorInput.js +3 -3
  112. package/vscode/src/vs/workbench/contrib/debug/browser/baseDebugView.js +1 -1
  113. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointEditorContribution.js +29 -29
  114. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointWidget.js +14 -14
  115. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointsView.js +75 -75
  116. package/vscode/src/vs/workbench/contrib/debug/browser/callStackEditorContribution.js +2 -2
  117. package/vscode/src/vs/workbench/contrib/debug/browser/debugActionViewItems.js +6 -6
  118. package/vscode/src/vs/workbench/contrib/debug/browser/debugColors.js +12 -12
  119. package/vscode/src/vs/workbench/contrib/debug/browser/debugCommands.js +38 -38
  120. package/vscode/src/vs/workbench/contrib/debug/browser/debugEditorContribution.js +2 -2
  121. package/vscode/src/vs/workbench/contrib/debug/browser/debugHover.js +3 -3
  122. package/vscode/src/vs/workbench/contrib/debug/browser/debugIcons.js +57 -57
  123. package/vscode/src/vs/workbench/contrib/debug/browser/debugSessionPicker.js +3 -3
  124. package/vscode/src/vs/workbench/contrib/debug/browser/exceptionWidget.js +4 -4
  125. package/vscode/src/vs/workbench/contrib/debug/browser/linkDetector.js +2 -2
  126. package/vscode/src/vs/workbench/contrib/debug/browser/repl.js +18 -18
  127. package/vscode/src/vs/workbench/contrib/debug/browser/replViewer.js +5 -5
  128. package/vscode/src/vs/workbench/contrib/debug/browser/variablesView.js +9 -9
  129. package/vscode/src/vs/workbench/contrib/debug/common/abstractDebugAdapter.js +1 -1
  130. package/vscode/src/vs/workbench/contrib/debug/common/debug.js +65 -65
  131. package/vscode/src/vs/workbench/contrib/debug/common/debugModel.js +6 -6
  132. package/vscode/src/vs/workbench/contrib/debug/common/debugSource.js +1 -1
  133. package/vscode/src/vs/workbench/contrib/debug/common/disassemblyViewInput.js +2 -2
  134. package/vscode/src/vs/workbench/contrib/debug/common/loadedScriptsPicker.js +1 -1
  135. package/vscode/src/vs/workbench/contrib/debug/common/replModel.js +1 -1
  136. package/vscode/src/vs/workbench/contrib/dropOrPasteInto/browser/commands.js +2 -2
  137. package/vscode/src/vs/workbench/contrib/dropOrPasteInto/browser/configurationSchema.js +4 -4
  138. package/vscode/src/vs/workbench/contrib/extensions/browser/abstractRuntimeExtensionsEditor.js +18 -18
  139. package/vscode/src/vs/workbench/contrib/extensions/browser/configBasedRecommendations.js +1 -1
  140. package/vscode/src/vs/workbench/contrib/extensions/browser/exeBasedRecommendations.js +1 -1
  141. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionEditor.js +41 -41
  142. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionEnablementWorkspaceTrustTransitionParticipant.js +1 -1
  143. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionFeaturesTab.js +15 -15
  144. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionRecommendationNotificationService.js +14 -14
  145. package/vscode/src/vs/workbench/contrib/extensions/browser/extensions.contribution.js +147 -147
  146. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.js +170 -170
  147. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActivationProgress.js +1 -1
  148. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsCompletionItemsProvider.js +1 -1
  149. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsDependencyChecker.js +5 -5
  150. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsIcons.js +24 -24
  151. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsQuickAccess.js +4 -4
  152. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViewer.js +7 -7
  153. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViewlet.js +48 -48
  154. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViews.js +5 -5
  155. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsWidgets.js +29 -29
  156. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.js +74 -74
  157. package/vscode/src/vs/workbench/contrib/extensions/browser/fileBasedRecommendations.js +2 -2
  158. package/vscode/src/vs/workbench/contrib/extensions/browser/webRecommendations.js +1 -1
  159. package/vscode/src/vs/workbench/contrib/extensions/browser/workspaceRecommendations.js +2 -2
  160. package/vscode/src/vs/workbench/contrib/extensions/common/extensions.js +1 -1
  161. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsFileTemplate.js +5 -5
  162. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsInput.js +2 -2
  163. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsUtils.js +3 -3
  164. package/vscode/src/vs/workbench/contrib/extensions/common/runtimeExtensionsInput.js +2 -2
  165. package/vscode/src/vs/workbench/contrib/extensions/common/searchExtensionsTool.js +3 -3
  166. package/vscode/src/vs/workbench/contrib/externalUriOpener/common/configuration.js +4 -4
  167. package/vscode/src/vs/workbench/contrib/externalUriOpener/common/externalUriOpenerService.js +3 -3
  168. package/vscode/src/vs/workbench/contrib/files/browser/editors/binaryFileEditor.js +1 -1
  169. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileEditor.js +8 -8
  170. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileSaveErrorHandler.js +18 -18
  171. package/vscode/src/vs/workbench/contrib/files/browser/explorerViewlet.js +14 -14
  172. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.contribution.js +39 -39
  173. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.js +84 -84
  174. package/vscode/src/vs/workbench/contrib/files/browser/fileCommands._save.js +4 -4
  175. package/vscode/src/vs/workbench/contrib/files/browser/fileCommands.js +2 -2
  176. package/vscode/src/vs/workbench/contrib/files/browser/fileConstants.js +6 -6
  177. package/vscode/src/vs/workbench/contrib/files/browser/fileImportExport.js +27 -27
  178. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._configuration.js +50 -50
  179. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._editorPane.js +2 -2
  180. package/vscode/src/vs/workbench/contrib/files/browser/views/emptyView.js +1 -1
  181. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerDecorationsProvider.js +4 -4
  182. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerView.js +7 -7
  183. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerViewer.js +17 -17
  184. package/vscode/src/vs/workbench/contrib/files/browser/views/openEditorsView.js +7 -7
  185. package/vscode/src/vs/workbench/contrib/files/browser/workspaceWatcher.js +4 -4
  186. package/vscode/src/vs/workbench/contrib/files/common/dirtyFilesIndicator.js +1 -1
  187. package/vscode/src/vs/workbench/contrib/files/common/files.js +16 -16
  188. package/vscode/src/vs/workbench/contrib/folding/browser/folding.contribution.js +3 -3
  189. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsMultiple.js +20 -20
  190. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsNone.js +4 -4
  191. package/vscode/src/vs/workbench/contrib/format/browser/formatModified.js +1 -1
  192. package/vscode/src/vs/workbench/contrib/inlayHints/browser/inlayHintsAccessibilty.js +4 -4
  193. package/vscode/src/vs/workbench/contrib/interactive/browser/interactiveCommon.d.ts +7 -0
  194. package/vscode/src/vs/workbench/contrib/interactive/browser/interactiveCommon.js +11 -0
  195. package/vscode/src/vs/workbench/contrib/interactive/browser/replInputHintContentWidget.d.ts +20 -0
  196. package/vscode/src/vs/workbench/contrib/interactive/browser/replInputHintContentWidget.js +150 -0
  197. package/vscode/src/vs/workbench/contrib/list/browser/listResizeColumnAction.js +2 -2
  198. package/vscode/src/vs/workbench/contrib/list/browser/tableColumnResizeQuickPick.js +5 -5
  199. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpCommandsAddConfiguration.js +66 -66
  200. package/vscode/src/vs/workbench/contrib/mcp/common/mcpConfiguration.js +31 -31
  201. package/vscode/src/vs/workbench/contrib/mcp/common/mcpServer.js +9 -9
  202. package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.js +4 -4
  203. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInput.js +4 -4
  204. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInputModel.js +23 -23
  205. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/mergeEditorModel.js +2 -2
  206. package/vscode/src/vs/workbench/contrib/mergeEditor/common/mergeEditor.js +8 -8
  207. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/icons.contribution.js +1 -1
  208. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditorInput.js +3 -3
  209. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/scmMultiDiffSourceResolver.js +1 -1
  210. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/executionStatusBarItemController.d.ts +22 -0
  211. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/executionStatusBarItemController.js +338 -0
  212. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/notebookVisibleCellObserver.d.ts +18 -0
  213. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/notebookVisibleCellObserver.js +58 -0
  214. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindReplaceWidget.d.ts +1 -1
  215. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindReplaceWidget.js +17 -17
  216. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindWidget.d.ts +75 -0
  217. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindWidget.js +364 -0
  218. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOperations.js +2 -2
  219. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOutputActions.js +6 -6
  220. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/coreActions.js +4 -4
  221. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/foldingController.js +3 -3
  222. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/insertCellActions.js +24 -24
  223. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffComponents.js +3 -3
  224. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementOutputs.js +7 -7
  225. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditor.js +1 -1
  226. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditorBrowser.js +8 -5
  227. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffList.js +1 -1
  228. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookAccessibilityProvider.js +3 -3
  229. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditor.js +7 -7
  230. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.js +24 -24
  231. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookIcons.js +29 -29
  232. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellEditorOptions.js +5 -5
  233. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellOutput.js +7 -7
  234. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCell.js +2 -2
  235. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellExecutionIcon.js +4 -4
  236. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellRunToolbar.js +1 -1
  237. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/collapsedCellOutput.js +3 -3
  238. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/foldedCellHint.js +1 -1
  239. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/markupCell.js +2 -2
  240. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.js +4 -4
  241. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/cellRenderer.js +1 -1
  242. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelQuickPickStrategy.js +14 -14
  243. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelView.js +2 -2
  244. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookViewZones.js +1 -1
  245. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorInput.js +2 -2
  246. package/vscode/src/vs/workbench/contrib/preferences/browser/keybindingWidgets.js +3 -3
  247. package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesIcons.js +13 -13
  248. package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesWidgets.js +10 -10
  249. package/vscode/src/vs/workbench/contrib/preferences/browser/settingsLayout.js +50 -50
  250. package/vscode/src/vs/workbench/contrib/preferences/common/preferences.js +3 -3
  251. package/vscode/src/vs/workbench/contrib/preferences/common/settingsEditorColorRegistry.js +21 -21
  252. package/vscode/src/vs/workbench/contrib/remote/browser/remoteExplorer.js +15 -15
  253. package/vscode/src/vs/workbench/contrib/remote/browser/remoteIcons.js +17 -17
  254. package/vscode/src/vs/workbench/contrib/remote/browser/tunnelView.js +59 -59
  255. package/vscode/src/vs/workbench/contrib/replNotebook/browser/interactiveEditor.css +21 -0
  256. package/vscode/src/vs/workbench/contrib/replNotebook/browser/media/interactive.css +36 -0
  257. package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditor.d.ts +110 -0
  258. package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditor.js +692 -0
  259. package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditorInput.d.ts +40 -0
  260. package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditorInput.js +158 -0
  261. package/vscode/src/vs/workbench/contrib/scm/browser/scmHistory.js +11 -11
  262. package/vscode/src/vs/workbench/contrib/scm/browser/scmHistoryChatContext.js +6 -6
  263. package/vscode/src/vs/workbench/contrib/scm/common/quickDiff.js +14 -14
  264. package/vscode/src/vs/workbench/contrib/search/browser/anythingQuickAccess.js +9 -9
  265. package/vscode/src/vs/workbench/contrib/search/browser/patternInputWidget.js +3 -3
  266. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsBase.js +1 -1
  267. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsFind.js +12 -12
  268. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsTopBar.js +9 -9
  269. package/vscode/src/vs/workbench/contrib/search/browser/searchChatContext.js +5 -5
  270. package/vscode/src/vs/workbench/contrib/search/browser/searchFindInput.js +1 -1
  271. package/vscode/src/vs/workbench/contrib/search/browser/searchIcons.js +20 -20
  272. package/vscode/src/vs/workbench/contrib/search/browser/searchMessage.js +2 -2
  273. package/vscode/src/vs/workbench/contrib/search/browser/searchResultsView.js +14 -14
  274. package/vscode/src/vs/workbench/contrib/search/browser/searchView.js +55 -55
  275. package/vscode/src/vs/workbench/contrib/search/browser/searchWidget.js +8 -8
  276. package/vscode/src/vs/workbench/contrib/search/browser/symbolsQuickAccess.js +2 -2
  277. package/vscode/src/vs/workbench/contrib/searchEditor/browser/searchEditorInput.js +4 -4
  278. package/vscode/src/vs/workbench/contrib/searchEditor/browser/searchEditorSerialization.js +5 -5
  279. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetCompletionProvider.js +3 -3
  280. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsFile.js +3 -3
  281. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsService.js +9 -9
  282. package/vscode/src/vs/workbench/contrib/speech/common/speechService.js +29 -29
  283. package/vscode/src/vs/workbench/contrib/tasks/common/constants.js +1 -1
  284. package/vscode/src/vs/workbench/contrib/tasks/common/taskDefinitionRegistry.js +5 -5
  285. package/vscode/src/vs/workbench/contrib/tasks/common/taskService.js +6 -6
  286. package/vscode/src/vs/workbench/contrib/tasks/common/tasks.js +4 -4
  287. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalEditorInput.js +3 -3
  288. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalIcons.js +13 -13
  289. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalMenus.js +40 -40
  290. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/decorationStyles.js +15 -15
  291. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.js +9 -9
  292. package/vscode/src/vs/workbench/contrib/terminal/common/terminalColorRegistry.js +23 -23
  293. package/vscode/src/vs/workbench/contrib/terminal/common/terminalContextKey.js +17 -17
  294. package/vscode/src/vs/workbench/contrib/terminal/common/terminalStrings.js +26 -26
  295. package/vscode/src/vs/workbench/contrib/terminalContrib/accessibility/common/terminalAccessibilityConfiguration.js +2 -2
  296. package/vscode/src/vs/workbench/contrib/terminalContrib/autoReplies/common/terminalAutoRepliesConfiguration.js +2 -2
  297. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalChatAgentToolsConfiguration.js +54 -54
  298. package/vscode/src/vs/workbench/contrib/terminalContrib/commandGuide/common/terminalCommandGuideConfiguration.js +1 -1
  299. package/vscode/src/vs/workbench/contrib/terminalContrib/history/common/terminal.history.js +1 -1
  300. package/vscode/src/vs/workbench/contrib/terminalContrib/inlineHint/common/terminalInitialHintConfiguration.js +1 -1
  301. package/vscode/src/vs/workbench/contrib/terminalContrib/stickyScroll/common/terminalStickyScrollConfiguration.js +3 -3
  302. package/vscode/src/vs/workbench/contrib/terminalContrib/suggest/common/terminalSuggestConfiguration.js +30 -30
  303. package/vscode/src/vs/workbench/contrib/terminalContrib/typeAhead/common/terminalTypeAheadConfiguration.js +5 -5
  304. package/vscode/src/vs/workbench/contrib/terminalContrib/zoom/common/terminal.zoom.js +2 -2
  305. package/vscode/src/vs/workbench/contrib/testing/common/constants.js +11 -11
  306. package/vscode/src/vs/workbench/contrib/testing/common/testResult.js +2 -2
  307. package/vscode/src/vs/workbench/contrib/testing/common/testTypes.js +3 -3
  308. package/vscode/src/vs/workbench/contrib/url/browser/trustedDomains.js +6 -6
  309. package/vscode/src/vs/workbench/contrib/webview/browser/webview.contribution.js +3 -3
  310. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditor.js +1 -1
  311. package/vscode/src/vs/workbench/contrib/workspace/common/workspace.js +2 -2
  312. package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +11 -11
  313. package/vscode/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.js +5 -5
  314. package/vscode/src/vs/workbench/services/chat/common/chatEntitlementService.js +14 -14
  315. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverSchema.js +16 -16
  316. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverUtils.js +1 -1
  317. package/vscode/src/vs/workbench/services/configurationResolver/common/variableResolver.js +16 -16
  318. package/vscode/src/vs/workbench/services/editor/common/editorResolverService.js +1 -1
  319. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionsIcons.js +3 -3
  320. package/vscode/src/vs/workbench/services/extensionRecommendations/common/workspaceExtensionsConfig.js +6 -6
  321. package/vscode/src/vs/workbench/services/extensions/browser/extensionUrlHandler.js +10 -10
  322. package/vscode/src/vs/workbench/services/extensions/common/extensionsRegistry.js +88 -88
  323. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.js +5 -5
  324. package/vscode/src/vs/workbench/services/language/common/languageService.js +24 -24
  325. package/vscode/src/vs/workbench/services/log/common/logConstants.js +1 -1
  326. package/vscode/src/vs/workbench/services/preferences/browser/keybindingsEditorInput.js +2 -2
  327. package/vscode/src/vs/workbench/services/preferences/browser/keybindingsEditorModel.js +7 -7
  328. package/vscode/src/vs/workbench/services/preferences/common/preferencesEditorInput.js +4 -4
  329. package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.js +8 -8
  330. package/vscode/src/vs/workbench/services/remote/common/tunnelModel.js +6 -6
  331. package/vscode/src/vs/workbench/services/search/common/queryBuilder.js +1 -1
  332. package/vscode/src/vs/workbench/services/textMate/common/TMGrammars.js +9 -9
  333. package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModel.js +3 -3
  334. package/vscode/src/vs/workbench/services/themes/common/colorExtensionPoint.js +18 -18
  335. package/vscode/src/vs/workbench/services/themes/common/colorThemeData.js +8 -8
  336. package/vscode/src/vs/workbench/services/themes/common/iconExtensionPoint.js +13 -13
  337. package/vscode/src/vs/workbench/services/themes/common/tokenClassificationExtensionPoint.js +24 -24
  338. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfile.js +3 -3
  339. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfileIcons.js +1 -1
  340. package/vscode/src/vs/workbench/services/userDataSync/common/userDataSync.js +13 -13
  341. package/vscode/src/vs/workbench/services/views/browser/viewsService.js +9 -9
  342. package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.js +16 -16
  343. package/vscode-dts/vscode.proposed.chatHooks.d.ts +126 -0
  344. package/vscode-dts/vscode.proposed.chatParticipantAdditions.d.ts +25 -1
  345. package/vscode-dts/vscode.proposed.chatParticipantPrivate.d.ts +35 -1
  346. package/vscode-dts/vscode.proposed.d.ts +1 -0
@@ -11,168 +11,182 @@ var ChatContextKeys;
11
11
  ChatContextKeys.responseVote = ( new RawContextKey("chatSessionResponseVote", "", {
12
12
  type: "string",
13
13
  description: ( localize(
14
- 6152,
14
+ 6247,
15
15
  "When the response has been voted up, is set to 'up'. When voted down, is set to 'down'. Otherwise an empty string."
16
16
  ))
17
17
  }));
18
18
  ChatContextKeys.responseDetectedAgentCommand = ( new RawContextKey("chatSessionResponseDetectedAgentOrCommand", false, {
19
19
  type: "boolean",
20
- description: ( localize(6153, "When the agent or command was automatically detected"))
20
+ description: ( localize(6248, "When the agent or command was automatically detected"))
21
21
  }));
22
22
  ChatContextKeys.responseSupportsIssueReporting = ( new RawContextKey("chatResponseSupportsIssueReporting", false, {
23
23
  type: "boolean",
24
- description: ( localize(6154, "True when the current chat response supports issue reporting."))
24
+ description: ( localize(6249, "True when the current chat response supports issue reporting."))
25
25
  }));
26
26
  ChatContextKeys.responseIsFiltered = ( new RawContextKey("chatSessionResponseFiltered", false, {
27
27
  type: "boolean",
28
- description: ( localize(6155, "True when the chat response was filtered out by the server."))
28
+ description: ( localize(6250, "True when the chat response was filtered out by the server."))
29
29
  }));
30
30
  ChatContextKeys.responseHasError = ( new RawContextKey("chatSessionResponseError", false, {
31
31
  type: "boolean",
32
- description: ( localize(6156, "True when the chat response resulted in an error."))
32
+ description: ( localize(6251, "True when the chat response resulted in an error."))
33
33
  }));
34
34
  ChatContextKeys.requestInProgress = ( new RawContextKey("chatSessionRequestInProgress", false, {
35
35
  type: "boolean",
36
- description: ( localize(6157, "True when the current request is still in progress."))
36
+ description: ( localize(6252, "True when the current request is still in progress."))
37
37
  }));
38
38
  ChatContextKeys.currentlyEditing = ( new RawContextKey("chatSessionCurrentlyEditing", false, {
39
39
  type: "boolean",
40
- description: ( localize(6158, "True when the current request is being edited."))
40
+ description: ( localize(6253, "True when the current request is being edited."))
41
41
  }));
42
42
  ChatContextKeys.currentlyEditingInput = ( new RawContextKey("chatSessionCurrentlyEditingInput", false, {
43
43
  type: "boolean",
44
- description: ( localize(6159, "True when the current request input at the bottom is being edited."))
44
+ description: ( localize(6254, "True when the current request input at the bottom is being edited."))
45
+ }));
46
+ (function(EditingRequestType) {
47
+ EditingRequestType["Sent"] = "s";
48
+ EditingRequestType["QueueOrSteer"] = "qs";
49
+ })(
50
+ ChatContextKeys.EditingRequestType || (ChatContextKeys.EditingRequestType = {})
51
+ );
52
+ ChatContextKeys.editingRequestType = ( new RawContextKey("chatEditingSentRequest", undefined, {
53
+ type: "string",
54
+ description: ( localize(6255, "The type of the current editing request."))
45
55
  }));
46
56
  ChatContextKeys.isResponse = ( new RawContextKey("chatResponse", false, {
47
57
  type: "boolean",
48
- description: ( localize(6160, "The chat item is a response."))
58
+ description: ( localize(6256, "The chat item is a response."))
49
59
  }));
50
60
  ChatContextKeys.isRequest = ( new RawContextKey("chatRequest", false, {
51
61
  type: "boolean",
52
- description: ( localize(6161, "The chat item is a request"))
62
+ description: ( localize(6257, "The chat item is a request"))
63
+ }));
64
+ ChatContextKeys.isPendingRequest = ( new RawContextKey("chatRequestIsPending", false, {
65
+ type: "boolean",
66
+ description: ( localize(6258, "True when the chat request item is pending in the queue."))
53
67
  }));
54
68
  ChatContextKeys.itemId = ( new RawContextKey("chatItemId", "", {
55
69
  type: "string",
56
- description: ( localize(6162, "The id of the chat item."))
70
+ description: ( localize(6259, "The id of the chat item."))
57
71
  }));
58
72
  ChatContextKeys.lastItemId = ( new RawContextKey("chatLastItemId", [], {
59
73
  type: "string",
60
- description: ( localize(6163, "The id of the last chat item."))
74
+ description: ( localize(6260, "The id of the last chat item."))
61
75
  }));
62
76
  ChatContextKeys.editApplied = ( new RawContextKey("chatEditApplied", false, {
63
77
  type: "boolean",
64
- description: ( localize(6164, "True when the chat text edits have been applied."))
78
+ description: ( localize(6261, "True when the chat text edits have been applied."))
65
79
  }));
66
80
  ChatContextKeys.inputHasText = ( new RawContextKey("chatInputHasText", false, {
67
81
  type: "boolean",
68
- description: ( localize(6165, "True when the chat input has text."))
82
+ description: ( localize(6262, "True when the chat input has text."))
69
83
  }));
70
84
  ChatContextKeys.inputHasFocus = ( new RawContextKey("chatInputHasFocus", false, {
71
85
  type: "boolean",
72
- description: ( localize(6166, "True when the chat input has focus."))
86
+ description: ( localize(6263, "True when the chat input has focus."))
73
87
  }));
74
88
  ChatContextKeys.inChatInput = ( new RawContextKey("inChatInput", false, {
75
89
  type: "boolean",
76
- description: ( localize(6167, "True when focus is in the chat input, false otherwise."))
90
+ description: ( localize(6264, "True when focus is in the chat input, false otherwise."))
77
91
  }));
78
92
  ChatContextKeys.inChatSession = ( new RawContextKey("inChat", false, {
79
93
  type: "boolean",
80
- description: ( localize(6168, "True when focus is in the chat widget, false otherwise."))
94
+ description: ( localize(6265, "True when focus is in the chat widget, false otherwise."))
81
95
  }));
82
96
  ChatContextKeys.inChatEditor = ( new RawContextKey("inChatEditor", false, {
83
97
  type: "boolean",
84
- description: ( localize(6169, "Whether focus is in a chat editor."))
98
+ description: ( localize(6266, "Whether focus is in a chat editor."))
85
99
  }));
86
100
  ChatContextKeys.inChatTerminalToolOutput = ( new RawContextKey("inChatTerminalToolOutput", false, {
87
101
  type: "boolean",
88
- description: ( localize(6170, "True when focus is in the chat terminal output region."))
102
+ description: ( localize(6267, "True when focus is in the chat terminal output region."))
89
103
  }));
90
104
  ChatContextKeys.chatModeKind = ( new RawContextKey("chatAgentKind", ChatModeKind.Ask, {
91
105
  type: "string",
92
- description: ( localize(6171, "The 'kind' of the current agent."))
106
+ description: ( localize(6268, "The 'kind' of the current agent."))
93
107
  }));
94
108
  ChatContextKeys.chatModeName = ( new RawContextKey("chatModeName", "", {
95
109
  type: "string",
96
- description: ( localize(6172, "The name of the current chat mode (e.g. 'Plan' for custom modes)."))
110
+ description: ( localize(6269, "The name of the current chat mode (e.g. 'Plan' for custom modes)."))
97
111
  }));
98
112
  ChatContextKeys.supported = ( ContextKeyExpr.or(( IsWebContext.negate()), ( RemoteNameContext.notEqualsTo("")), ( ContextKeyExpr.has("config.chat.experimental.serverlessWebEnabled"))));
99
113
  ChatContextKeys.enabled = ( new RawContextKey("chatIsEnabled", false, {
100
114
  type: "boolean",
101
115
  description: ( localize(
102
- 6173,
116
+ 6270,
103
117
  "True when chat is enabled because a default chat participant is activated with an implementation."
104
118
  ))
105
119
  }));
106
120
  ChatContextKeys.lockedToCodingAgent = ( new RawContextKey("lockedToCodingAgent", false, {
107
121
  type: "boolean",
108
- description: ( localize(6174, "True when the chat widget is locked to the coding agent session."))
122
+ description: ( localize(6271, "True when the chat widget is locked to the coding agent session."))
109
123
  }));
110
124
  ChatContextKeys.chatSessionHasCustomAgentTarget = ( new RawContextKey("chatSessionHasCustomAgentTarget", false, {
111
125
  type: "boolean",
112
126
  description: ( localize(
113
- 6175,
127
+ 6272,
114
128
  "True when the chat session has a customAgentTarget defined to filter modes."
115
129
  ))
116
130
  }));
117
131
  ChatContextKeys.agentSupportsAttachments = ( new RawContextKey("agentSupportsAttachments", false, {
118
132
  type: "boolean",
119
- description: ( localize(6176, "True when the chat agent supports attachments."))
133
+ description: ( localize(6273, "True when the chat agent supports attachments."))
120
134
  }));
121
135
  ChatContextKeys.withinEditSessionDiff = ( new RawContextKey("withinEditSessionDiff", false, {
122
136
  type: "boolean",
123
- description: ( localize(6177, "True when the chat widget dispatches to the edit session chat."))
137
+ description: ( localize(6274, "True when the chat widget dispatches to the edit session chat."))
124
138
  }));
125
139
  ChatContextKeys.filePartOfEditSession = ( new RawContextKey("filePartOfEditSession", false, {
126
140
  type: "boolean",
127
- description: ( localize(6178, "True when the chat widget is within a file with an edit session."))
141
+ description: ( localize(6275, "True when the chat widget is within a file with an edit session."))
128
142
  }));
129
143
  ChatContextKeys.extensionParticipantRegistered = ( new RawContextKey("chatPanelExtensionParticipantRegistered", false, {
130
144
  type: "boolean",
131
145
  description: ( localize(
132
- 6179,
146
+ 6276,
133
147
  "True when a default chat participant is registered for the panel from an extension."
134
148
  ))
135
149
  }));
136
150
  ChatContextKeys.panelParticipantRegistered = ( new RawContextKey("chatPanelParticipantRegistered", false, {
137
151
  type: "boolean",
138
- description: ( localize(6180, "True when a default chat participant is registered for the panel."))
152
+ description: ( localize(6277, "True when a default chat participant is registered for the panel."))
139
153
  }));
140
154
  ChatContextKeys.chatEditingCanUndo = ( new RawContextKey("chatEditingCanUndo", false, {
141
155
  type: "boolean",
142
156
  description: ( localize(
143
- 6181,
157
+ 6278,
144
158
  "True when it is possible to undo an interaction in the editing panel."
145
159
  ))
146
160
  }));
147
161
  ChatContextKeys.chatEditingCanRedo = ( new RawContextKey("chatEditingCanRedo", false, {
148
162
  type: "boolean",
149
163
  description: ( localize(
150
- 6182,
164
+ 6279,
151
165
  "True when it is possible to redo an interaction in the editing panel."
152
166
  ))
153
167
  }));
154
168
  ChatContextKeys.languageModelsAreUserSelectable = ( new RawContextKey("chatModelsAreUserSelectable", false, {
155
169
  type: "boolean",
156
- description: ( localize(6183, "True when the chat model can be selected manually by the user."))
170
+ description: ( localize(6280, "True when the chat model can be selected manually by the user."))
157
171
  }));
158
172
  ChatContextKeys.chatSessionHasModels = ( new RawContextKey("chatSessionHasModels", false, {
159
173
  type: "boolean",
160
174
  description: ( localize(
161
- 6184,
175
+ 6281,
162
176
  "True when the chat is in a contributed chat session that has available 'models' to display."
163
177
  ))
164
178
  }));
165
179
  ChatContextKeys.chatSessionOptionsValid = ( new RawContextKey("chatSessionOptionsValid", true, {
166
180
  type: "boolean",
167
181
  description: ( localize(
168
- 6185,
182
+ 6282,
169
183
  "True when all selected session options exist in their respective option group items."
170
184
  ))
171
185
  }));
172
186
  ChatContextKeys.extensionInvalid = ( new RawContextKey("chatExtensionInvalid", false, {
173
187
  type: "boolean",
174
188
  description: ( localize(
175
- 6186,
189
+ 6283,
176
190
  "True when the installed chat extension is invalid and needs to be updated."
177
191
  ))
178
192
  }));
@@ -181,46 +195,50 @@ var ChatContextKeys;
181
195
  ChatContextKeys.location = ( new RawContextKey("chatLocation", undefined));
182
196
  ChatContextKeys.inQuickChat = ( new RawContextKey("quickChatHasFocus", false, {
183
197
  type: "boolean",
184
- description: ( localize(6187, "True when the quick chat UI has focus, false otherwise."))
198
+ description: ( localize(6284, "True when the quick chat UI has focus, false otherwise."))
185
199
  }));
186
200
  ChatContextKeys.inAgentSessionsWelcome = ( new RawContextKey("inAgentSessionsWelcome", false, {
187
201
  type: "boolean",
188
202
  description: ( localize(
189
- 6188,
203
+ 6285,
190
204
  "True when the chat input is within the agent sessions welcome page."
191
205
  ))
192
206
  }));
193
207
  ChatContextKeys.chatSessionType = ( new RawContextKey("chatSessionType", "", {
194
208
  type: "string",
195
- description: ( localize(6189, "The type of the current chat session."))
209
+ description: ( localize(6286, "The type of the current chat session."))
196
210
  }));
197
211
  ChatContextKeys.hasFileAttachments = ( new RawContextKey("chatHasFileAttachments", false, {
198
212
  type: "boolean",
199
- description: ( localize(6190, "True when the chat has file attachments."))
213
+ description: ( localize(6287, "True when the chat has file attachments."))
200
214
  }));
201
215
  ChatContextKeys.chatSessionIsEmpty = ( new RawContextKey("chatSessionIsEmpty", true, {
202
216
  type: "boolean",
203
- description: ( localize(6191, "True when the current chat session has no requests."))
217
+ description: ( localize(6288, "True when the current chat session has no requests."))
218
+ }));
219
+ ChatContextKeys.hasPendingRequests = ( new RawContextKey("chatHasPendingRequests", false, {
220
+ type: "boolean",
221
+ description: ( localize(6289, "True when there are pending requests in the queue."))
204
222
  }));
205
223
  ChatContextKeys.remoteJobCreating = ( new RawContextKey("chatRemoteJobCreating", false, {
206
224
  type: "boolean",
207
- description: ( localize(6192, "True when a remote coding agent job is being created."))
225
+ description: ( localize(6290, "True when a remote coding agent job is being created."))
208
226
  }));
209
- ChatContextKeys.hasRemoteCodingAgent = ( new RawContextKey("hasRemoteCodingAgent", false, ( localize(6193, "Whether any remote coding agent is available"))));
227
+ ChatContextKeys.hasRemoteCodingAgent = ( new RawContextKey("hasRemoteCodingAgent", false, ( localize(6291, "Whether any remote coding agent is available"))));
210
228
  ChatContextKeys.hasCanDelegateProviders = ( new RawContextKey("chatHasCanDelegateProviders", false, {
211
229
  type: "boolean",
212
230
  description: ( localize(
213
- 6194,
231
+ 6292,
214
232
  "True when there are chat session providers with delegation support available."
215
233
  ))
216
234
  }));
217
235
  ChatContextKeys.enableRemoteCodingAgentPromptFileOverlay = ( new RawContextKey("enableRemoteCodingAgentPromptFileOverlay", false, ( localize(
218
- 6195,
236
+ 6293,
219
237
  "Whether the remote coding agent prompt file overlay feature is enabled"
220
238
  ))));
221
239
  ChatContextKeys.skipChatRequestInProgressMessage = ( new RawContextKey("chatSkipRequestInProgressMessage", false, {
222
240
  type: "boolean",
223
- description: ( localize(6196, "True when the chat request in progress message should be skipped."))
241
+ description: ( localize(6294, "True when the chat request in progress message should be skipped."))
224
242
  }));
225
243
  ChatContextKeys.Setup = ChatEntitlementContextKeys.Setup;
226
244
  ChatContextKeys.Entitlement = ChatEntitlementContextKeys.Entitlement;
@@ -229,76 +247,76 @@ var ChatContextKeys;
229
247
  ChatContextKeys.Editing = {
230
248
  hasToolConfirmation: ( new RawContextKey("chatHasToolConfirmation", false, {
231
249
  type: "boolean",
232
- description: ( localize(6197, "True when a tool confirmation is present."))
250
+ description: ( localize(6295, "True when a tool confirmation is present."))
233
251
  })),
234
252
  hasElicitationRequest: ( new RawContextKey("chatHasElicitationRequest", false, {
235
253
  type: "boolean",
236
- description: ( localize(6198, "True when a chat elicitation request is pending."))
254
+ description: ( localize(6296, "True when a chat elicitation request is pending."))
237
255
  }))
238
256
  };
239
257
  ChatContextKeys.Tools = {
240
258
  toolsCount: ( new RawContextKey("toolsCount", 0, {
241
259
  type: "number",
242
- description: ( localize(6199, "The count of tools available in the chat."))
260
+ description: ( localize(6297, "The count of tools available in the chat."))
243
261
  }))
244
262
  };
245
263
  ChatContextKeys.Modes = {
246
264
  hasCustomChatModes: ( new RawContextKey("chatHasCustomAgents", false, {
247
265
  type: "boolean",
248
- description: ( localize(6200, "True when the chat has custom agents available."))
266
+ description: ( localize(6298, "True when the chat has custom agents available."))
249
267
  })),
250
268
  agentModeDisabledByPolicy: ( new RawContextKey("chatAgentModeDisabledByPolicy", false, {
251
269
  type: "boolean",
252
- description: ( localize(6201, "True when agent mode is disabled by organization policy."))
270
+ description: ( localize(6299, "True when agent mode is disabled by organization policy."))
253
271
  }))
254
272
  };
255
273
  ChatContextKeys.panelLocation = ( new RawContextKey("chatPanelLocation", undefined, {
256
274
  type: "number",
257
- description: ( localize(6202, "The location of the chat panel."))
275
+ description: ( localize(6300, "The location of the chat panel."))
258
276
  }));
259
277
  ChatContextKeys.agentSessionsViewerFocused = ( new RawContextKey("agentSessionsViewerFocused", true, {
260
278
  type: "boolean",
261
- description: ( localize(6203, "If the agent sessions view in the chat view is focused."))
279
+ description: ( localize(6301, "If the agent sessions view in the chat view is focused."))
262
280
  }));
263
281
  ChatContextKeys.agentSessionsViewerOrientation = ( new RawContextKey("agentSessionsViewerOrientation", undefined, {
264
282
  type: "number",
265
- description: ( localize(6204, "Orientation of the agent sessions view in the chat view."))
283
+ description: ( localize(6302, "Orientation of the agent sessions view in the chat view."))
266
284
  }));
267
285
  ChatContextKeys.agentSessionsViewerPosition = ( new RawContextKey("agentSessionsViewerPosition", undefined, {
268
286
  type: "number",
269
- description: ( localize(6205, "Position of the agent sessions view in the chat view."))
287
+ description: ( localize(6303, "Position of the agent sessions view in the chat view."))
270
288
  }));
271
289
  ChatContextKeys.agentSessionsViewerVisible = ( new RawContextKey("agentSessionsViewerVisible", undefined, {
272
290
  type: "boolean",
273
- description: ( localize(6206, "Visibility of the agent sessions view in the chat view."))
291
+ description: ( localize(6304, "Visibility of the agent sessions view in the chat view."))
274
292
  }));
275
293
  ChatContextKeys.agentSessionType = ( new RawContextKey("chatSessionType", "", {
276
294
  type: "string",
277
- description: ( localize(6207, "The type of the current agent session item."))
295
+ description: ( localize(6305, "The type of the current agent session item."))
278
296
  }));
279
297
  ChatContextKeys.agentSessionSection = ( new RawContextKey("agentSessionSection", "", {
280
298
  type: "string",
281
- description: ( localize(6208, "The section of the current agent session section item."))
299
+ description: ( localize(6306, "The section of the current agent session section item."))
282
300
  }));
283
301
  ChatContextKeys.isArchivedAgentSession = ( new RawContextKey("agentSessionIsArchived", false, {
284
302
  type: "boolean",
285
- description: ( localize(6209, "True when the agent session item is archived."))
303
+ description: ( localize(6307, "True when the agent session item is archived."))
286
304
  }));
287
305
  ChatContextKeys.isReadAgentSession = ( new RawContextKey("agentSessionIsRead", false, {
288
306
  type: "boolean",
289
- description: ( localize(6210, "True when the agent session item is read."))
307
+ description: ( localize(6308, "True when the agent session item is read."))
290
308
  }));
291
309
  ChatContextKeys.hasMultipleAgentSessionsSelected = ( new RawContextKey("agentSessionHasMultipleSelected", false, {
292
310
  type: "boolean",
293
- description: ( localize(6211, "True when multiple agent sessions are selected."))
311
+ description: ( localize(6309, "True when multiple agent sessions are selected."))
294
312
  }));
295
313
  ChatContextKeys.hasAgentSessionChanges = ( new RawContextKey("agentSessionHasChanges", false, {
296
314
  type: "boolean",
297
- description: ( localize(6212, "True when the current agent session item has changes."))
315
+ description: ( localize(6310, "True when the current agent session item has changes."))
298
316
  }));
299
317
  ChatContextKeys.isKatexMathElement = ( new RawContextKey("chatIsKatexMathElement", false, {
300
318
  type: "boolean",
301
- description: ( localize(6213, "True when focusing a KaTeX math element."))
319
+ description: ( localize(6311, "True when focusing a KaTeX math element."))
302
320
  }));
303
321
  })(ChatContextKeys || (ChatContextKeys = {}));
304
322
  var ChatContextKeyExprs;
@@ -67,9 +67,9 @@ var IDiagnosticVariableEntryFilterData;
67
67
  }
68
68
  return data.problemMessage.substring(0, lastSpace) + "…";
69
69
  }
70
- let labelStr = ( localize(6214, "All Problems"));
70
+ let labelStr = ( localize(6312, "All Problems"));
71
71
  if (data.filterUri) {
72
- labelStr = ( localize(6215, "Problems in {0}", basename(data.filterUri)));
72
+ labelStr = ( localize(6313, "Problems in {0}", basename(data.filterUri)));
73
73
  }
74
74
  return labelStr;
75
75
  }
@@ -9,7 +9,7 @@ import { IStorageService } from "../../../../platform/storage/common/storage.ser
9
9
  import { IChatAgentService } from "./participants/chatAgents.service.js";
10
10
  import { ChatModeKind } from "./constants.js";
11
11
  import { IHandOff } from "./promptSyntax/promptFileParser.js";
12
- import { ExtensionAgentSourceType, IAgentSource, ICustomAgent, ICustomAgentVisibility, PromptsStorage } from "./promptSyntax/service/promptsService.js";
12
+ import { ExtensionAgentSourceType, IAgentSource, ICustomAgent, ICustomAgentVisibility, PromptsStorage, Target } from "./promptSyntax/service/promptsService.js";
13
13
  import { IPromptsService } from "./promptSyntax/service/promptsService.service.js";
14
14
  import { ThemeIcon } from "../../../../base/common/themables.js";
15
15
  import { IChatModeService } from "./chatModes.service.js";
@@ -55,7 +55,7 @@ export interface IChatModeData {
55
55
  readonly handOffs?: readonly IHandOff[];
56
56
  readonly uri?: URI;
57
57
  readonly source?: IChatModeSourceData;
58
- readonly target?: string;
58
+ readonly target?: Target;
59
59
  readonly visibility?: ICustomAgentVisibility;
60
60
  readonly agents?: readonly string[];
61
61
  readonly infer?: boolean;
@@ -75,7 +75,7 @@ export interface IChatMode {
75
75
  readonly modeInstructions?: IObservable<IChatModeInstructions>;
76
76
  readonly uri?: IObservable<URI>;
77
77
  readonly source?: IAgentSource;
78
- readonly target?: IObservable<string | undefined>;
78
+ readonly target: IObservable<Target>;
79
79
  readonly visibility?: IObservable<ICustomAgentVisibility | undefined>;
80
80
  readonly agents?: IObservable<readonly string[] | undefined>;
81
81
  }
@@ -114,7 +114,7 @@ export declare class CustomChatMode implements IChatMode {
114
114
  get label(): IObservable<string>;
115
115
  get handOffs(): IObservable<readonly IHandOff[] | undefined>;
116
116
  get source(): IAgentSource;
117
- get target(): IObservable<string | undefined>;
117
+ get target(): IObservable<Target>;
118
118
  get visibility(): IObservable<ICustomAgentVisibility | undefined>;
119
119
  get agents(): IObservable<readonly string[] | undefined>;
120
120
  readonly kind = ChatModeKind.Agent;
@@ -138,10 +138,10 @@ export declare class BuiltinChatMode implements IChatMode {
138
138
  readonly label: IObservable<string>;
139
139
  readonly description: IObservable<string>;
140
140
  readonly icon: IObservable<ThemeIcon>;
141
+ readonly target: IObservable<Target>;
141
142
  constructor(kind: ChatModeKind, label: string, description: string, icon: ThemeIcon);
142
143
  get isBuiltin(): boolean;
143
144
  get id(): string;
144
- get target(): IObservable<string | undefined>;
145
145
  /**
146
146
  * Getters are not json-stringified
147
147
  */
@@ -15,7 +15,8 @@ import { IStorageService } from '../../../../platform/storage/common/storage.ser
15
15
  import { IChatAgentService } from './participants/chatAgents.service.js';
16
16
  import { ChatContextKeys } from './actions/chatContextKeys.js';
17
17
  import { ChatConfiguration, ChatModeKind } from './constants.js';
18
- import { PromptsStorage, isCustomAgentVisibility, ExtensionAgentSourceType } from './promptSyntax/service/promptsService.js';
18
+ import { isTarget } from './promptSyntax/promptFileParser.js';
19
+ import { PromptsStorage, Target, isCustomAgentVisibility, ExtensionAgentSourceType } from './promptSyntax/service/promptsService.js';
19
20
  import { IPromptsService } from './promptSyntax/service/promptsService.service.js';
20
21
  import { Codicon } from '../../../../base/common/codicons.js';
21
22
  import { isString } from '../../../../base/common/types.js';
@@ -102,7 +103,7 @@ let ChatModeService = class ChatModeService extends Disposable {
102
103
  toolReferences: []
103
104
  },
104
105
  handOffs: cachedMode.handOffs,
105
- target: cachedMode.target,
106
+ target: cachedMode.target ?? Target.Undefined,
106
107
  visibility: cachedMode.visibility ?? {
107
108
  userInvokable: true,
108
109
  agentInvokable: cachedMode.infer !== false
@@ -203,7 +204,7 @@ function isCachedChatModeData(data) {
203
204
  return false;
204
205
  }
205
206
  const mode = data;
206
- return typeof mode.id === "string" && typeof mode.name === "string" && typeof mode.kind === "string" && (mode.description === undefined || typeof mode.description === "string") && (mode.customTools === undefined || Array.isArray(mode.customTools)) && (mode.modeInstructions === undefined || (typeof mode.modeInstructions === "object" && mode.modeInstructions !== null)) && (mode.model === undefined || typeof mode.model === "string" || Array.isArray(mode.model)) && (mode.argumentHint === undefined || typeof mode.argumentHint === "string") && (mode.handOffs === undefined || Array.isArray(mode.handOffs)) && (mode.uri === undefined || (typeof mode.uri === "object" && mode.uri !== null)) && (mode.source === undefined || isChatModeSourceData(mode.source)) && (mode.target === undefined || typeof mode.target === "string") && (mode.visibility === undefined || isCustomAgentVisibility(mode.visibility)) && (mode.agents === undefined || Array.isArray(mode.agents));
207
+ return typeof mode.id === "string" && typeof mode.name === "string" && typeof mode.kind === "string" && (mode.description === undefined || typeof mode.description === "string") && (mode.customTools === undefined || Array.isArray(mode.customTools)) && (mode.modeInstructions === undefined || (typeof mode.modeInstructions === "object" && mode.modeInstructions !== null)) && (mode.model === undefined || typeof mode.model === "string" || Array.isArray(mode.model)) && (mode.argumentHint === undefined || typeof mode.argumentHint === "string") && (mode.handOffs === undefined || Array.isArray(mode.handOffs)) && (mode.uri === undefined || (typeof mode.uri === "object" && mode.uri !== null)) && (mode.source === undefined || isChatModeSourceData(mode.source)) && (mode.target === undefined || isTarget(mode.target)) && (mode.visibility === undefined || isCustomAgentVisibility(mode.visibility)) && (mode.agents === undefined || Array.isArray(mode.agents));
207
208
  }
208
209
  class CustomChatMode {
209
210
  get name() {
@@ -349,6 +350,7 @@ class BuiltinChatMode {
349
350
  this.label = constObservable(label);
350
351
  this.description = observableValue("description", description);
351
352
  this.icon = constObservable(icon);
353
+ this.target = constObservable(Target.Undefined);
352
354
  }
353
355
  get isBuiltin() {
354
356
  return isBuiltinChatMode(this);
@@ -356,9 +358,6 @@ class BuiltinChatMode {
356
358
  get id() {
357
359
  return this.kind;
358
360
  }
359
- get target() {
360
- return observableValue("target", undefined);
361
- }
362
361
  toJSON() {
363
362
  return {
364
363
  id: this.id,
@@ -370,9 +369,9 @@ class BuiltinChatMode {
370
369
  }
371
370
  var ChatMode;
372
371
  (function(ChatMode) {
373
- ChatMode.Ask = ( new BuiltinChatMode(ChatModeKind.Ask, "Ask", ( localize(6216, "Explore and understand your code")), Codicon.question));
374
- ChatMode.Edit = ( new BuiltinChatMode(ChatModeKind.Edit, "Edit", ( localize(6217, "Edit or refactor selected code")), Codicon.edit));
375
- ChatMode.Agent = ( new BuiltinChatMode(ChatModeKind.Agent, "Agent", ( localize(6218, "Describe what to build next")), Codicon.agent));
372
+ ChatMode.Ask = ( new BuiltinChatMode(ChatModeKind.Ask, "Ask", ( localize(6314, "Explore and understand your code")), Codicon.question));
373
+ ChatMode.Edit = ( new BuiltinChatMode(ChatModeKind.Edit, "Edit", ( localize(6315, "Edit or refactor selected code")), Codicon.edit));
374
+ ChatMode.Agent = ( new BuiltinChatMode(ChatModeKind.Agent, "Agent", ( localize(6316, "Describe what to build next")), Codicon.agent));
376
375
  })(ChatMode || (ChatMode = {}));
377
376
  function isBuiltinChatMode(mode) {
378
377
  return mode.id === ChatMode.Ask.id || mode.id === ChatMode.Edit.id || mode.id === ChatMode.Agent.id;
@@ -8,6 +8,7 @@ import { IObservable, IReader } from "../../../../../base/common/observable.js";
8
8
  import { ThemeIcon } from "../../../../../base/common/themables.js";
9
9
  import { URI, UriComponents } from "../../../../../base/common/uri.js";
10
10
  import { IRange } from "../../../../../editor/common/core/range.js";
11
+ import { HookTypeValue } from "../promptSyntax/hookSchema.js";
11
12
  import { ISelection } from "../../../../../editor/common/core/selection.js";
12
13
  import { Command, Location, TextEdit } from "../../../../../editor/common/languages.js";
13
14
  import { FileType } from "../../../../../platform/files/common/files.js";
@@ -328,6 +329,27 @@ export interface IChatThinkingPart {
328
329
  };
329
330
  generatedTitle?: string;
330
331
  }
332
+ /**
333
+ * A progress part representing the execution result of a hook.
334
+ * Aligned with the hook output JSON structure: { stopReason, systemMessage, hookSpecificOutput }.
335
+ * If {@link stopReason} is set, the hook blocked/denied the operation.
336
+ */
337
+ export interface IChatHookPart {
338
+ kind: "hook";
339
+ /** The type of hook that was executed */
340
+ hookType: HookTypeValue;
341
+ /** If set, the hook blocked processing. This message is shown to the user. */
342
+ stopReason?: string;
343
+ /** Warning/system message from the hook, shown to the user */
344
+ systemMessage?: string;
345
+ /** Display name of the tool that was affected by the hook */
346
+ toolDisplayName?: string;
347
+ metadata?: {
348
+ readonly [key: string]: unknown;
349
+ };
350
+ /** If set, this hook was executed within a subagent invocation and should be grouped with it. */
351
+ subAgentInvocationId?: string;
352
+ }
331
353
  export interface IChatTerminalToolInvocationData {
332
354
  kind: "terminal";
333
355
  commandLine: {
@@ -510,6 +532,8 @@ export declare namespace IChatToolInvocation {
510
532
  interface IChatToolInvocationCancelledState extends IChatToolInvocationStateBase, IChatToolInvocationPostStreamState {
511
533
  type: StateKind.Cancelled;
512
534
  reason: ToolConfirmKind.Denied | ToolConfirmKind.Skipped;
535
+ /** Optional message explaining why the tool was cancelled (e.g., from hook denial) */
536
+ reasonMessage?: string | IMarkdownString;
513
537
  }
514
538
  export type State = IChatToolInvocationStreamingState | IChatToolInvocationWaitingForConfirmationState | IChatToolInvocationExecutingState | IChatToolWaitingForPostApprovalState | IChatToolInvocationCompleteState | IChatToolInvocationCancelledState;
515
539
  export function executionConfirmedOrDenied(invocation: IChatToolInvocation | IChatToolInvocationSerialized, reader?: IReader): ConfirmedReason | undefined;
@@ -574,6 +598,7 @@ export interface IChatSubagentToolInvocationData {
574
598
  agentName?: string;
575
599
  prompt?: string;
576
600
  result?: string;
601
+ modelName?: string;
577
602
  }
578
603
  export interface IChatTodoListContent {
579
604
  kind: "todoList";
@@ -594,6 +619,9 @@ export interface IChatMcpServersStartingSerialized {
594
619
  readonly state?: undefined;
595
620
  didStartServerIds?: string[];
596
621
  }
622
+ export interface IChatDisabledClaudeHooksPart {
623
+ readonly kind: "disabledClaudeHooks";
624
+ }
597
625
  export declare class ChatMcpServersStarting implements IChatMcpServersStarting {
598
626
  readonly state: IObservable<IAutostartResult>;
599
627
  readonly kind = "mcpServersStarting";
@@ -603,7 +631,7 @@ export declare class ChatMcpServersStarting implements IChatMcpServersStarting {
603
631
  wait(): Promise<IAutostartResult>;
604
632
  toJSON(): IChatMcpServersStartingSerialized;
605
633
  }
606
- export type IChatProgress = IChatMarkdownContent | IChatAgentMarkdownContentWithVulnerability | IChatTreeData | IChatMultiDiffData | IChatMultiDiffDataSerialized | IChatUsedContext | IChatContentReference | IChatContentInlineReference | IChatCodeCitation | IChatProgressMessage | IChatTask | IChatTaskResult | IChatCommandButton | IChatWarningMessage | IChatTextEdit | IChatNotebookEdit | IChatWorkspaceEdit | IChatMoveMessage | IChatResponseCodeblockUriPart | IChatConfirmation | IChatQuestionCarousel | IChatClearToPreviousToolInvocation | IChatToolInvocation | IChatToolInvocationSerialized | IChatExtensionsContent | IChatPullRequestContent | IChatUndoStop | IChatThinkingPart | IChatTaskSerialized | IChatElicitationRequest | IChatElicitationRequestSerialized | IChatMcpServersStarting | IChatMcpServersStartingSerialized;
634
+ export type IChatProgress = IChatMarkdownContent | IChatAgentMarkdownContentWithVulnerability | IChatTreeData | IChatMultiDiffData | IChatMultiDiffDataSerialized | IChatUsedContext | IChatContentReference | IChatContentInlineReference | IChatCodeCitation | IChatProgressMessage | IChatTask | IChatTaskResult | IChatCommandButton | IChatWarningMessage | IChatTextEdit | IChatNotebookEdit | IChatWorkspaceEdit | IChatMoveMessage | IChatResponseCodeblockUriPart | IChatConfirmation | IChatQuestionCarousel | IChatClearToPreviousToolInvocation | IChatToolInvocation | IChatToolInvocationSerialized | IChatExtensionsContent | IChatPullRequestContent | IChatUndoStop | IChatThinkingPart | IChatTaskSerialized | IChatElicitationRequest | IChatElicitationRequestSerialized | IChatMcpServersStarting | IChatMcpServersStartingSerialized | IChatHookPart | IChatDisabledClaudeHooksPart;
607
635
  export interface IChatFollowup {
608
636
  kind: "reply";
609
637
  message: string;
@@ -788,6 +816,33 @@ export interface IChatSendRequestData extends IChatSendRequestResponseState {
788
816
  agent: IChatAgentData;
789
817
  slashCommand?: IChatAgentCommand;
790
818
  }
819
+ /**
820
+ * Result of a sendRequest call - a discriminated union of possible outcomes.
821
+ */
822
+ export type ChatSendResult = ChatSendResultRejected | ChatSendResultSent | ChatSendResultQueued;
823
+ export interface ChatSendResultRejected {
824
+ readonly kind: "rejected";
825
+ readonly reason: string;
826
+ }
827
+ export interface ChatSendResultSent {
828
+ readonly kind: "sent";
829
+ readonly data: IChatSendRequestData;
830
+ }
831
+ export interface ChatSendResultQueued {
832
+ readonly kind: "queued";
833
+ /**
834
+ * Promise that resolves when the queued message is actually processed.
835
+ * Will resolve to a 'sent' or 'rejected' result.
836
+ */
837
+ readonly deferred: Promise<ChatSendResult>;
838
+ }
839
+ export declare namespace ChatSendResult {
840
+ function isSent(result: ChatSendResult): result is ChatSendResultSent;
841
+ function isRejected(result: ChatSendResult): result is ChatSendResultRejected;
842
+ function isQueued(result: ChatSendResult): result is ChatSendResultQueued;
843
+ /** Assertion function for tests - asserts that the result is a sent result */
844
+ function assertSent(result: ChatSendResult): asserts result is ChatSendResultSent;
845
+ }
791
846
  export interface IChatEditorLocationData {
792
847
  type: ChatAgentLocation.EditorInline;
793
848
  id: string;
@@ -803,6 +858,15 @@ export interface IChatTerminalLocationData {
803
858
  type: ChatAgentLocation.Terminal;
804
859
  }
805
860
  export type IChatLocationData = IChatEditorLocationData | IChatNotebookLocationData | IChatTerminalLocationData;
861
+ /**
862
+ * The kind of queue request.
863
+ */
864
+ export declare enum ChatRequestQueueKind {
865
+ /** Request is queued to be sent after current request completes */
866
+ Queued = "queued",
867
+ /** Request is queued and signals the active request to yield */
868
+ Steering = "steering"
869
+ }
806
870
  export interface IChatSendRequestOptions {
807
871
  modeInfo?: IChatRequestModeInfo;
808
872
  userSelectedModelId?: string;
@@ -824,6 +888,11 @@ export interface IChatSendRequestOptions {
824
888
  * The label of the confirmation action that was selected.
825
889
  */
826
890
  confirmation?: string;
891
+ /**
892
+ * When set, queues this message to be sent after the current request completes.
893
+ * If Steering, also sets yieldRequested on any active request to signal it should wrap up.
894
+ */
895
+ queue?: ChatRequestQueueKind;
827
896
  }
828
897
  export type IChatModelReference = IReference<IChatModel>;
829
898
  export interface IChatSessionContext {