@codingame/monaco-vscode-api 26.1.1 → 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 -5
  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
@@ -287,5 +287,31 @@ var ResponseModelState;
287
287
  ResponseModelState[ResponseModelState["Failed"] = 3] = "Failed";
288
288
  ResponseModelState[ResponseModelState["NeedsInput"] = 4] = "NeedsInput";
289
289
  })(ResponseModelState || (ResponseModelState = {}));
290
+ var ChatSendResult;
291
+ (function(ChatSendResult) {
292
+ function isSent(result) {
293
+ return result.kind === "sent";
294
+ }
295
+ ChatSendResult.isSent = isSent;
296
+ function isRejected(result) {
297
+ return result.kind === "rejected";
298
+ }
299
+ ChatSendResult.isRejected = isRejected;
300
+ function isQueued(result) {
301
+ return result.kind === "queued";
302
+ }
303
+ ChatSendResult.isQueued = isQueued;
304
+ function assertSent(result) {
305
+ if (result.kind !== "sent") {
306
+ throw ( new Error(`Expected ChatSendResult to be 'sent', but was '${result.kind}'`));
307
+ }
308
+ }
309
+ ChatSendResult.assertSent = assertSent;
310
+ })(ChatSendResult || (ChatSendResult = {}));
311
+ var ChatRequestQueueKind;
312
+ (function(ChatRequestQueueKind) {
313
+ ChatRequestQueueKind["Queued"] = "queued";
314
+ ChatRequestQueueKind["Steering"] = "steering";
315
+ })(ChatRequestQueueKind || (ChatRequestQueueKind = {}));
290
316
 
291
- export { ChatAgentVoteDirection, ChatAgentVoteDownReason, ChatCopyKind, ChatErrorLevel, ChatMcpServersStarting, ChatResponseClearToPreviousToolInvocationReason, ChatResponseReferencePartStatusKind, ElicitationState, IChatToolInvocation, ResponseModelState, ToolConfirmKind, convertLegacyChatSessionTiming, isChatContentVariableReference, isChatFollowup, isIDocumentContext, isIUsedContext, isLegacyChatTerminalToolInvocationData };
317
+ export { ChatAgentVoteDirection, ChatAgentVoteDownReason, ChatCopyKind, ChatErrorLevel, ChatMcpServersStarting, ChatRequestQueueKind, ChatResponseClearToPreviousToolInvocationReason, ChatResponseReferencePartStatusKind, ChatSendResult, ElicitationState, IChatToolInvocation, ResponseModelState, ToolConfirmKind, convertLegacyChatSessionTiming, isChatContentVariableReference, isChatFollowup, isIDocumentContext, isIUsedContext, isLegacyChatTerminalToolInvocationData };
@@ -6,7 +6,7 @@ import { ChatAgentLocation } from "../constants.js";
6
6
  import { IChatEditingSession } from "../editing/chatEditingService.js";
7
7
  import { IChatModel, IExportableChatData, ISerializableChatData, IChatRequestModel, IChatRequestVariableData } from "../model/chatModel.js";
8
8
  import { IParsedChatRequest } from "../requestParser/chatParserTypes.js";
9
- import { IChatSessionStartOptions, IChatModelReference, IChatSessionContext, IChatSendRequestOptions, IChatSendRequestData, IChatProgress, IChatCompleteResponse, IChatDetail, IChatUserActionEvent } from "./chatService.js";
9
+ import { IChatSessionStartOptions, IChatModelReference, IChatSessionContext, IChatSendRequestOptions, ChatSendResult, IChatProgress, ChatRequestQueueKind, IChatCompleteResponse, IChatDetail, IChatUserActionEvent } from "./chatService.js";
10
10
  export declare const IChatService: import("../../../../../platform/instantiation/common/instantiation.js").ServiceIdentifier<IChatService>;
11
11
  export interface IChatService {
12
12
  _serviceBrand: undefined;
@@ -37,9 +37,10 @@ export interface IChatService {
37
37
  readonly editingSessions: IChatEditingSession[];
38
38
  getChatSessionFromInternalUri(sessionResource: URI): IChatSessionContext | undefined;
39
39
  /**
40
- * Returns whether the request was accepted.`
40
+ * Sends a chat request for the given session.
41
+ * @returns A result indicating whether the request was sent, queued, or rejected.
41
42
  */
42
- sendRequest(sessionResource: URI, message: string, options?: IChatSendRequestOptions): Promise<IChatSendRequestData | undefined>;
43
+ sendRequest(sessionResource: URI, message: string, options?: IChatSendRequestOptions): Promise<ChatSendResult>;
43
44
  /**
44
45
  * Sets a custom title for a chat model.
45
46
  */
@@ -49,6 +50,29 @@ export interface IChatService {
49
50
  adoptRequest(sessionResource: URI, request: IChatRequestModel): Promise<void>;
50
51
  removeRequest(sessionResource: URI, requestId: string): Promise<void>;
51
52
  cancelCurrentRequestForSession(sessionResource: URI): void;
53
+ /**
54
+ * Sets yieldRequested on the active request for the given session.
55
+ */
56
+ setYieldRequested(sessionResource: URI): void;
57
+ /**
58
+ * Removes a pending request from the session's queue.
59
+ */
60
+ removePendingRequest(sessionResource: URI, requestId: string): void;
61
+ /**
62
+ * Sets the pending requests for a session, allowing for deletions/reordering.
63
+ * Adding new requests should go through sendRequest with the queue option.
64
+ */
65
+ setPendingRequests(sessionResource: URI, requests: readonly {
66
+ requestId: string;
67
+ kind: ChatRequestQueueKind;
68
+ }[]): void;
69
+ /**
70
+ * Ensures pending requests for the session are processing. If restoring from
71
+ * storage or after an error, pending requests may be present without an
72
+ * active chat message 'loop' happening. THis triggers the loop to happen
73
+ * as needed. Idempotent, safe to call at any time.
74
+ */
75
+ processPendingRequests(sessionResource: URI): void;
52
76
  addCompleteRequest(sessionResource: URI, message: IParsedChatRequest | string, variableData: IChatRequestVariableData | undefined, attempt: number | undefined, response: IChatCompleteResponse): void;
53
77
  setChatSessionTitle(sessionResource: URI, title: string): void;
54
78
  getLocalSessionHistory(): Promise<IChatDetail[]>;
@@ -9,6 +9,7 @@ import { IChatAgentAttachmentCapabilities, IChatAgentRequest } from "./participa
9
9
  import { IChatEditingSession } from "./editing/chatEditingService.js";
10
10
  import { IChatRequestVariableData, ISerializableChatModelInputState } from "./model/chatModel.js";
11
11
  import { IChatProgress, IChatSessionTiming } from "./chatService/chatService.js";
12
+ import { Target } from "./promptSyntax/service/promptsService.js";
12
13
  export declare enum ChatSessionStatus {
13
14
  Failed = 0,
14
15
  Completed = 1,
@@ -80,7 +81,7 @@ export interface IChatSessionsExtensionPoint {
80
81
  * to reuse the standard agent/mode dropdown with filtered custom agents.
81
82
  * Custom agents without a `target` property are also shown in all filtered lists
82
83
  */
83
- readonly customAgentTarget?: string;
84
+ readonly customAgentTarget?: Target;
84
85
  }
85
86
  export interface IChatSessionItem {
86
87
  resource: URI;
@@ -7,6 +7,7 @@ import { IChatService } from "./chatService/chatService.service.js";
7
7
  import { IChatSessionItemProvider, IChatSessionsExtensionPoint, IChatSessionItem, IChatSessionContentProvider, IChatSession, IChatSessionProviderOptionItem, IChatSessionProviderOptionGroup, IChatSessionOptionsWillNotifyExtensionEvent } from "./chatSessionsService.js";
8
8
  import { IChatModel } from "./model/chatModel.js";
9
9
  import { IChatAgentAttachmentCapabilities } from "./participants/chatAgents.js";
10
+ import { Target } from "./promptSyntax/service/promptsService.js";
10
11
  export declare const IChatSessionsService: import("../../../../platform/instantiation/common/instantiation.js").ServiceIdentifier<IChatSessionsService>;
11
12
  export interface IChatSessionsService {
12
13
  readonly _serviceBrand: undefined;
@@ -57,9 +58,9 @@ export interface IChatSessionsService {
57
58
  getCapabilitiesForSessionType(chatSessionType: string): IChatAgentAttachmentCapabilities | undefined;
58
59
  /**
59
60
  * Get the customAgentTarget for a specific session type.
60
- * When set, the mode picker should show filtered custom agents matching this target.
61
+ * When the Target is not `Target.Undefined`, the mode picker should show filtered custom agents matching this target.
61
62
  */
62
- getCustomAgentTargetForSessionType(chatSessionType: string): string | undefined;
63
+ getCustomAgentTargetForSessionType(chatSessionType: string): Target;
63
64
  onDidChangeOptionGroups: Event<string>;
64
65
  getOptionGroupsForSessionType(chatSessionType: string): IChatSessionProviderOptionGroup[] | undefined;
65
66
  setOptionGroupsForSessionType(chatSessionType: string, handle: number, optionGroups?: IChatSessionProviderOptionGroup[]): void;
@@ -3,6 +3,8 @@ import { RawContextKey } from "../../../../platform/contextkey/common/contextkey
3
3
  export declare enum ChatConfiguration {
4
4
  AIDisabled = "chat.disableAIFeatures",
5
5
  AgentEnabled = "chat.agent.enabled",
6
+ RequestQueueingEnabled = "chat.requestQueuing.enabled",
7
+ RequestQueueingDefaultAction = "chat.requestQueuing.defaultAction",
6
8
  AgentStatusEnabled = "chat.agentsControl.enabled",
7
9
  EditorAssociations = "chat.editorAssociations",
8
10
  UnifiedAgentsBar = "chat.unifiedAgentsBar.enabled",
@@ -7,6 +7,8 @@ var ChatConfiguration;
7
7
  (function(ChatConfiguration) {
8
8
  ChatConfiguration["AIDisabled"] = "chat.disableAIFeatures";
9
9
  ChatConfiguration["AgentEnabled"] = "chat.agent.enabled";
10
+ ChatConfiguration["RequestQueueingEnabled"] = "chat.requestQueuing.enabled";
11
+ ChatConfiguration["RequestQueueingDefaultAction"] = "chat.requestQueuing.defaultAction";
10
12
  ChatConfiguration["AgentStatusEnabled"] = "chat.agentsControl.enabled";
11
13
  ChatConfiguration["EditorAssociations"] = "chat.editorAssociations";
12
14
  ChatConfiguration["UnifiedAgentsBar"] = "chat.unifiedAgentsBar.enabled";
@@ -45,9 +45,9 @@ var ChatEditingSessionState;
45
45
  ChatEditingSessionState[ChatEditingSessionState["Disposed"] = 3] = "Disposed";
46
46
  })(ChatEditingSessionState || (ChatEditingSessionState = {}));
47
47
  const CHAT_EDITING_MULTI_DIFF_SOURCE_RESOLVER_SCHEME = "chat-editing-multi-diff-source";
48
- const chatEditingWidgetFileStateContextKey = ( new RawContextKey("chatEditingWidgetFileState", undefined, ( localize(6221, "The current state of the file in the chat editing widget"))));
48
+ const chatEditingWidgetFileStateContextKey = ( new RawContextKey("chatEditingWidgetFileState", undefined, ( localize(6319, "The current state of the file in the chat editing widget"))));
49
49
  const chatEditingAgentSupportsReadonlyReferencesContextKey = ( new RawContextKey("chatEditingAgentSupportsReadonlyReferences", undefined, ( localize(
50
- 6222,
50
+ 6320,
51
51
  "Whether the chat editing agent supports readonly references (temporary)"
52
52
  ))));
53
53
  const decidedChatEditingResourceContextKey = ( new RawContextKey("decidedChatEditingResource", []));
@@ -27,13 +27,13 @@ LanguageModelStatsService = ( __decorate([( __param(0, IExtensionFeaturesManagem
27
27
  const CopilotUsageExtensionFeatureId = "copilot";
28
28
  ( Registry.as(Extensions.ExtensionFeaturesRegistry)).registerExtensionFeature({
29
29
  id: CopilotUsageExtensionFeatureId,
30
- label: ( localize(6223, "Copilot")),
31
- description: ( localize(6224, "Language models usage statistics of this extension.")),
30
+ label: ( localize(6321, "Copilot")),
31
+ description: ( localize(6322, "Language models usage statistics of this extension.")),
32
32
  icon: Codicon.copilot,
33
33
  access: {
34
34
  canToggle: false
35
35
  },
36
- accessDataLabel: ( localize(6225, "chat"))
36
+ accessDataLabel: ( localize(6323, "chat"))
37
37
  });
38
38
 
39
39
  export { CopilotUsageExtensionFeatureId, LanguageModelStatsService };
@@ -84,15 +84,15 @@ const languageModelChatProviderType = {
84
84
  properties: {
85
85
  vendor: {
86
86
  type: "string",
87
- description: ( localize(6226, "A globally unique vendor of language model chat provider."))
87
+ description: ( localize(6324, "A globally unique vendor of language model chat provider."))
88
88
  },
89
89
  displayName: {
90
90
  type: "string",
91
- description: ( localize(6227, "The display name of the language model chat provider."))
91
+ description: ( localize(6325, "The display name of the language model chat provider."))
92
92
  },
93
93
  configuration: {
94
94
  type: "object",
95
- description: ( localize(6228, "Configuration options for the language model chat provider.")),
95
+ description: ( localize(6326, "Configuration options for the language model chat provider.")),
96
96
  anyOf: [{
97
97
  $ref: "http://json-schema.org/draft-07/schema#"
98
98
  }, {
@@ -104,7 +104,7 @@ const languageModelChatProviderType = {
104
104
  properties: {
105
105
  secret: {
106
106
  type: "boolean",
107
- description: ( localize(6229, "Whether the property is a secret."))
107
+ description: ( localize(6327, "Whether the property is a secret."))
108
108
  }
109
109
  }
110
110
  }
@@ -114,7 +114,7 @@ const languageModelChatProviderType = {
114
114
  properties: {
115
115
  secret: {
116
116
  type: "boolean",
117
- description: ( localize(6229, "Whether the property is a secret."))
117
+ description: ( localize(6327, "Whether the property is a secret."))
118
118
  }
119
119
  }
120
120
  }
@@ -124,19 +124,19 @@ const languageModelChatProviderType = {
124
124
  managementCommand: {
125
125
  type: "string",
126
126
  description: ( localize(
127
- 6230,
127
+ 6328,
128
128
  "A command to manage the language model chat provider, e.g. 'Manage Copilot models'. This is used in the chat model picker. If not provided, a gear icon is not rendered during vendor selection."
129
129
  )),
130
130
  deprecated: true,
131
131
  deprecationMessage: ( localize(
132
- 6231,
132
+ 6329,
133
133
  "The managementCommand property is deprecated and will be removed in a future release. Use the new configuration property instead."
134
134
  ))
135
135
  },
136
136
  when: {
137
137
  type: "string",
138
138
  description: ( localize(
139
- 6232,
139
+ 6330,
140
140
  "Condition which must be true to show this language model chat provider in the Manage Models list."
141
141
  ))
142
142
  }
@@ -145,7 +145,7 @@ const languageModelChatProviderType = {
145
145
  const languageModelChatProviderExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
146
146
  extensionPoint: "languageModelChatProviders",
147
147
  jsonSchema: {
148
- description: ( localize(6233, "Contribute language model chat providers of a specific vendor.")),
148
+ description: ( localize(6331, "Contribute language model chat providers of a specific vendor.")),
149
149
  oneOf: [languageModelChatProviderType, {
150
150
  type: "array",
151
151
  items: languageModelChatProviderType
@@ -221,18 +221,18 @@ let LanguageModelsService = class LanguageModelsService {
221
221
  for (const item of Iterable.wrap(extension.value)) {
222
222
  if (( this._vendors.has(item.vendor))) {
223
223
  extension.collector.error(( localize(
224
- 6234,
224
+ 6332,
225
225
  "The vendor '{0}' is already registered and cannot be registered twice",
226
226
  item.vendor
227
227
  )));
228
228
  continue;
229
229
  }
230
230
  if (isFalsyOrWhitespace(item.vendor)) {
231
- extension.collector.error(( localize(6235, "The vendor field cannot be empty.")));
231
+ extension.collector.error(( localize(6333, "The vendor field cannot be empty.")));
232
232
  continue;
233
233
  }
234
234
  if (item.vendor.trim() !== item.vendor) {
235
- extension.collector.error(( localize(6236, "The vendor field cannot start or end with whitespace.")));
235
+ extension.collector.error(( localize(6334, "The vendor field cannot start or end with whitespace.")));
236
236
  continue;
237
237
  }
238
238
  addedVendors.push(item);
@@ -674,18 +674,18 @@ let LanguageModelsService = class LanguageModelsService {
674
674
  try {
675
675
  await ( new Promise(resolve => {
676
676
  const inputBox = disposables.add(this._quickInputService.createInputBox());
677
- inputBox.title = ( localize(6237, "Group Name"));
678
- inputBox.placeholder = ( localize(6238, "Enter a name for the group"));
677
+ inputBox.title = ( localize(6335, "Group Name"));
678
+ inputBox.placeholder = ( localize(6336, "Enter a name for the group"));
679
679
  inputBox.value = providerGroupName;
680
680
  inputBox.ignoreFocusOut = true;
681
681
  disposables.add(inputBox.onDidChangeValue(value => {
682
682
  if (!value) {
683
- inputBox.validationMessage = ( localize(6239, "Please enter a name"));
683
+ inputBox.validationMessage = ( localize(6337, "Please enter a name"));
684
684
  inputBox.severity = Severity$1.Error;
685
685
  return;
686
686
  }
687
687
  if (!existing && ( languageModelProviderGroups.some(g => g.name === value))) {
688
- inputBox.validationMessage = ( localize(6240, "A language models group with this name already exists"));
688
+ inputBox.validationMessage = ( localize(6338, "A language models group with this name already exists"));
689
689
  inputBox.severity = Severity$1.Error;
690
690
  return;
691
691
  }
@@ -766,7 +766,7 @@ let LanguageModelsService = class LanguageModelsService {
766
766
  quickPick.items = ( items.map(item => ({
767
767
  label: item
768
768
  })));
769
- quickPick.placeholder = propertySchema.description ?? ( localize(6241, "Select value for {0}", property));
769
+ quickPick.placeholder = propertySchema.description ?? ( localize(6339, "Select value for {0}", property));
770
770
  quickPick.canSelectMany = true;
771
771
  quickPick.ignoreFocusOut = true;
772
772
  disposables.add(quickPick.onDidAccept(() => {
@@ -788,7 +788,7 @@ let LanguageModelsService = class LanguageModelsService {
788
788
  const value = await ( new Promise((resolve, reject) => {
789
789
  const inputBox = disposables.add(this._quickInputService.createInputBox());
790
790
  inputBox.title = `${groupName}: ${propertySchema.title ?? property}`;
791
- inputBox.placeholder = ( localize(6242, "Enter value for {0}", property));
791
+ inputBox.placeholder = ( localize(6340, "Enter value for {0}", property));
792
792
  inputBox.password = !!propertySchema.secret;
793
793
  inputBox.ignoreFocusOut = true;
794
794
  if (existing?.[property]) {
@@ -801,20 +801,20 @@ let LanguageModelsService = class LanguageModelsService {
801
801
  }
802
802
  disposables.add(inputBox.onDidChangeValue(value => {
803
803
  if (!value && required) {
804
- inputBox.validationMessage = ( localize(6243, "Value is required"));
804
+ inputBox.validationMessage = ( localize(6341, "Value is required"));
805
805
  inputBox.severity = Severity$1.Error;
806
806
  return;
807
807
  }
808
808
  if (propertySchema.type === "number" || propertySchema.type === "integer") {
809
809
  if (isNaN(Number(value))) {
810
- inputBox.validationMessage = ( localize(6244, "Please enter a number"));
810
+ inputBox.validationMessage = ( localize(6342, "Please enter a number"));
811
811
  inputBox.severity = Severity$1.Error;
812
812
  return;
813
813
  }
814
814
  }
815
815
  if (propertySchema.type === "boolean") {
816
816
  if (value !== "true" && value !== "false") {
817
- inputBox.validationMessage = ( localize(6245, "Please enter true or false"));
817
+ inputBox.validationMessage = ( localize(6343, "Please enter true or false"));
818
818
  inputBox.severity = Severity$1.Error;
819
819
  return;
820
820
  }
@@ -824,7 +824,7 @@ let LanguageModelsService = class LanguageModelsService {
824
824
  }));
825
825
  disposables.add(inputBox.onDidAccept(() => {
826
826
  if (!inputBox.value && required) {
827
- inputBox.validationMessage = ( localize(6243, "Value is required"));
827
+ inputBox.validationMessage = ( localize(6341, "Value is required"));
828
828
  inputBox.severity = Severity$1.Error;
829
829
  return;
830
830
  }
@@ -10,7 +10,7 @@ import { EditSuggestionId } from "../../../../../editor/common/textModelEditSour
10
10
  import { ILogService } from "../../../../../platform/log/common/log.service.js";
11
11
  import { ICellEditOperation } from "../../../notebook/common/notebookCommon.js";
12
12
  import { ChatRequestToolReferenceEntry, IChatRequestVariableEntry } from "../attachments/chatVariableEntries.js";
13
- import { ChatAgentVoteDirection, ChatAgentVoteDownReason, IChatAgentMarkdownContentWithVulnerability, IChatClearToPreviousToolInvocation, IChatCodeCitation, IChatCommandButton, IChatConfirmation, IChatContentInlineReference, IChatContentReference, IChatEditingSessionAction, IChatElicitationRequest, IChatElicitationRequestSerialized, IChatExtensionsContent, IChatFollowup, IChatLocationData, IChatMarkdownContent, IChatMcpServersStarting, IChatMcpServersStartingSerialized, IChatMultiDiffData, IChatMultiDiffDataSerialized, IChatNotebookEdit, IChatProgress, IChatProgressMessage, IChatPullRequestContent, IChatQuestionCarousel, IChatResponseCodeblockUriPart, IChatResponseProgressFileTreeData, IChatSessionContext, IChatSessionTiming, IChatTask, IChatTaskSerialized, IChatTextEdit, IChatThinkingPart, IChatToolInvocation, IChatToolInvocationSerialized, IChatTreeData, IChatUndoStop, IChatUsedContext, IChatWarningMessage, IChatWorkspaceEdit, ResponseModelState } from "../chatService/chatService.js";
13
+ import { ChatAgentVoteDirection, ChatAgentVoteDownReason, ChatRequestQueueKind, IChatAgentMarkdownContentWithVulnerability, IChatClearToPreviousToolInvocation, IChatCodeCitation, IChatCommandButton, IChatConfirmation, IChatContentInlineReference, IChatContentReference, IChatDisabledClaudeHooksPart, IChatEditingSessionAction, IChatElicitationRequest, IChatElicitationRequestSerialized, IChatExtensionsContent, IChatFollowup, IChatHookPart, IChatLocationData, IChatMarkdownContent, IChatMcpServersStarting, IChatMcpServersStartingSerialized, IChatMultiDiffData, IChatMultiDiffDataSerialized, IChatNotebookEdit, IChatProgress, IChatProgressMessage, IChatPullRequestContent, IChatQuestionCarousel, IChatResponseCodeblockUriPart, IChatResponseProgressFileTreeData, IChatSendRequestOptions, IChatSessionContext, IChatSessionTiming, IChatTask, IChatTaskSerialized, IChatTextEdit, IChatThinkingPart, IChatToolInvocation, IChatToolInvocationSerialized, IChatTreeData, IChatUndoStop, IChatUsedContext, IChatWarningMessage, IChatWorkspaceEdit, ResponseModelState } from "../chatService/chatService.js";
14
14
  import { IChatService } from "../chatService/chatService.service.js";
15
15
  import { ChatAgentLocation, ChatModeKind } from "../constants.js";
16
16
  import { IChatEditingSession } from "../editing/chatEditingService.js";
@@ -20,6 +20,45 @@ import { IChatAgentCommand, IChatAgentData, IChatAgentResult, UserSelectedTools
20
20
  import { IChatAgentService } from "../participants/chatAgents.service.js";
21
21
  import { IParsedChatRequest } from "../requestParser/chatParserTypes.js";
22
22
  import { ObjectMutationLog } from "@codingame/monaco-vscode-chat-service-override/vscode/vs/workbench/contrib/chat/common/model/objectMutationLog";
23
+ /**
24
+ * Represents a queued chat request waiting to be processed.
25
+ */
26
+ export interface IChatPendingRequest {
27
+ readonly request: IChatRequestModel;
28
+ readonly kind: ChatRequestQueueKind;
29
+ /**
30
+ * The options that were passed to sendRequest when this request was queued.
31
+ * userSelectedTools is snapshotted to a static observable at queue time.
32
+ */
33
+ readonly sendOptions: IChatSendRequestOptions;
34
+ }
35
+ /**
36
+ * Serializable version of IChatSendRequestOptions for pending requests.
37
+ * Excludes observables and non-serializable fields.
38
+ */
39
+ export interface ISerializableSendOptions {
40
+ modeInfo?: IChatRequestModeInfo;
41
+ userSelectedModelId?: string;
42
+ /** Static snapshot of user-selected tools (not an observable) */
43
+ userSelectedTools?: UserSelectedTools;
44
+ location?: ChatAgentLocation;
45
+ locationData?: IChatLocationData;
46
+ attempt?: number;
47
+ noCommandDetection?: boolean;
48
+ agentId?: string;
49
+ agentIdSilent?: string;
50
+ slashCommand?: string;
51
+ confirmation?: string;
52
+ }
53
+ /**
54
+ * Serializable representation of a pending chat request.
55
+ */
56
+ export interface ISerializablePendingRequestData {
57
+ id: string;
58
+ request: ISerializableChatRequestData;
59
+ kind: ChatRequestQueueKind;
60
+ sendOptions: ISerializableSendOptions;
61
+ }
23
62
  export declare const CHAT_ATTACHABLE_IMAGE_MIME_TYPES: Record<string, string>;
24
63
  export declare function getAttachableImageExtension(mimeType: string): string | undefined;
25
64
  export interface IChatRequestVariableData {
@@ -82,12 +121,12 @@ export interface IChatNotebookEditGroup {
82
121
  * Progress kinds that are included in the history of a response.
83
122
  * Excludes "internal" types that are included in history.
84
123
  */
85
- export type IChatProgressHistoryResponseContent = IChatMarkdownContent | IChatAgentMarkdownContentWithVulnerability | IChatResponseCodeblockUriPart | IChatTreeData | IChatMultiDiffDataSerialized | IChatContentInlineReference | IChatProgressMessage | IChatCommandButton | IChatWarningMessage | IChatTask | IChatTaskSerialized | IChatTextEditGroup | IChatNotebookEditGroup | IChatConfirmation | IChatQuestionCarousel | IChatExtensionsContent | IChatThinkingPart | IChatPullRequestContent | IChatWorkspaceEdit;
124
+ export type IChatProgressHistoryResponseContent = IChatMarkdownContent | IChatAgentMarkdownContentWithVulnerability | IChatResponseCodeblockUriPart | IChatTreeData | IChatMultiDiffDataSerialized | IChatContentInlineReference | IChatProgressMessage | IChatCommandButton | IChatWarningMessage | IChatTask | IChatTaskSerialized | IChatTextEditGroup | IChatNotebookEditGroup | IChatConfirmation | IChatQuestionCarousel | IChatExtensionsContent | IChatThinkingPart | IChatHookPart | IChatPullRequestContent | IChatWorkspaceEdit;
86
125
  /**
87
126
  * "Normal" progress kinds that are rendered as parts of the stream of content.
88
127
  */
89
- export type IChatProgressResponseContent = IChatProgressHistoryResponseContent | IChatToolInvocation | IChatToolInvocationSerialized | IChatMultiDiffData | IChatUndoStop | IChatElicitationRequest | IChatElicitationRequestSerialized | IChatClearToPreviousToolInvocation | IChatMcpServersStarting | IChatMcpServersStartingSerialized;
90
- export type IChatProgressResponseContentSerialized = Exclude<IChatProgressResponseContent, IChatToolInvocation | IChatElicitationRequest | IChatTask | IChatMultiDiffData | IChatMcpServersStarting>;
128
+ export type IChatProgressResponseContent = IChatProgressHistoryResponseContent | IChatToolInvocation | IChatToolInvocationSerialized | IChatMultiDiffData | IChatUndoStop | IChatElicitationRequest | IChatElicitationRequestSerialized | IChatClearToPreviousToolInvocation | IChatMcpServersStarting | IChatMcpServersStartingSerialized | IChatDisabledClaudeHooksPart;
129
+ export type IChatProgressResponseContentSerialized = Exclude<IChatProgressResponseContent, IChatToolInvocation | IChatElicitationRequest | IChatTask | IChatMultiDiffData | IChatMcpServersStarting | IChatDisabledClaudeHooksPart>;
91
130
  export declare function toChatHistoryContent(content: ReadonlyArray<IChatProgressResponseContent>): IChatProgressHistoryResponseContent[];
92
131
  export type IChatProgressRenderableResponseContent = Exclude<IChatProgressResponseContent, IChatContentInlineReference | IChatAgentMarkdownContentWithVulnerability | IChatResponseCodeblockUriPart>;
93
132
  export interface IResponse {
@@ -434,6 +473,8 @@ export interface IChatModel extends IDisposable {
434
473
  readonly contributedChatSession: IChatSessionContext | undefined;
435
474
  readonly repoData: IExportableRepoData | undefined;
436
475
  setRepoData(data: IExportableRepoData | undefined): void;
476
+ readonly onDidChangePendingRequests: Event<void>;
477
+ getPendingRequests(): readonly IChatPendingRequest[];
437
478
  }
438
479
  export interface ISerializableChatsData {
439
480
  [sessionId: string]: ISerializableChatData;
@@ -455,7 +496,7 @@ interface ISerializableChatResponseData {
455
496
  codeCitations?: ReadonlyArray<IChatCodeCitation>;
456
497
  timeSpentWaiting?: number;
457
498
  }
458
- export type SerializedChatResponsePart = IMarkdownString | IChatResponseProgressFileTreeData | IChatContentInlineReference | IChatAgentMarkdownContentWithVulnerability | IChatThinkingPart | IChatProgressResponseContentSerialized;
499
+ export type SerializedChatResponsePart = IMarkdownString | IChatResponseProgressFileTreeData | IChatContentInlineReference | IChatAgentMarkdownContentWithVulnerability | IChatThinkingPart | IChatProgressResponseContentSerialized | IChatQuestionCarousel | IChatDisabledClaudeHooksPart;
459
500
  export interface ISerializableChatRequestData extends ISerializableChatResponseData {
460
501
  requestId: string;
461
502
  message: string | IParsedChatRequest;
@@ -583,6 +624,8 @@ export interface ISerializableChatData3 extends Omit<ISerializableChatData2, "ve
583
624
  /** Current draft input state (added later, fully backwards compatible) */
584
625
  inputState?: ISerializableChatModelInputState;
585
626
  repoData?: IExportableRepoData;
627
+ /** Pending requests that were queued but not yet processed */
628
+ pendingRequests?: ISerializablePendingRequestData[];
586
629
  }
587
630
  /**
588
631
  * Input model for managing chat input state independently from the chat model.
@@ -749,6 +792,9 @@ export declare class ChatModel extends Disposable implements IChatModel {
749
792
  readonly onDidDispose: Event<void>;
750
793
  private readonly _onDidChange;
751
794
  readonly onDidChange: Event<IChatChangeEvent>;
795
+ private readonly _pendingRequests;
796
+ private readonly _onDidChangePendingRequests;
797
+ readonly onDidChangePendingRequests: Event<void>;
752
798
  private _requests;
753
799
  private _contributedChatSession;
754
800
  get contributedChatSession(): IChatSessionContext | undefined;
@@ -756,6 +802,28 @@ export declare class ChatModel extends Disposable implements IChatModel {
756
802
  private _repoData;
757
803
  get repoData(): IExportableRepoData | undefined;
758
804
  setRepoData(data: IExportableRepoData | undefined): void;
805
+ getPendingRequests(): readonly IChatPendingRequest[];
806
+ setPendingRequests(requests: readonly {
807
+ requestId: string;
808
+ kind: ChatRequestQueueKind;
809
+ }[]): void;
810
+ /**
811
+ * @internal Used by ChatService to add a request to the queue.
812
+ * Steering messages are placed before queued messages.
813
+ */
814
+ addPendingRequest(request: ChatRequestModel, kind: ChatRequestQueueKind, sendOptions: IChatSendRequestOptions): IChatPendingRequest;
815
+ /**
816
+ * @internal Used by ChatService to remove a pending request
817
+ */
818
+ removePendingRequest(id: string): void;
819
+ /**
820
+ * @internal Used by ChatService to dequeue the next pending request
821
+ */
822
+ dequeuePendingRequest(): IChatPendingRequest | undefined;
823
+ /**
824
+ * @internal Used by ChatService to clear all pending requests
825
+ */
826
+ clearPendingRequests(): void;
759
827
  readonly lastRequestObs: IObservable<IChatRequestModel | undefined>;
760
828
  private readonly _sessionId;
761
829
  /** @deprecated Use {@link sessionResource} instead */
@@ -802,8 +870,14 @@ export declare class ChatModel extends Disposable implements IChatModel {
802
870
  private currentEditedFileEvents;
803
871
  notifyEditingAction(action: IChatEditingSessionAction): void;
804
872
  private _deserialize;
873
+ private _deserializeRequest;
805
874
  private reviveVariableData;
806
875
  private getParsedRequestFromString;
876
+ /**
877
+ * Hydrates pending requests from serialized data.
878
+ * For each serialized pending request, finds the matching request model and adds it to the pending queue.
879
+ */
880
+ private _deserializePendingRequests;
807
881
  getRequests(): ChatRequestModel[];
808
882
  resetCheckpoint(): void;
809
883
  setCheckpoint(requestId: string | undefined): void;
@@ -828,6 +902,11 @@ export declare function updateRanges(variableData: IChatRequestVariableData, dif
828
902
  export declare function canMergeMarkdownStrings(md1: IMarkdownString, md2: IMarkdownString): boolean;
829
903
  export declare function appendMarkdownString(md1: IMarkdownString, md2: IMarkdownString | string): IMarkdownString;
830
904
  export declare function getCodeCitationsMessage(citations: ReadonlyArray<IChatCodeCitation>): string;
905
+ /**
906
+ * Converts IChatSendRequestOptions to a serializable format by extracting only
907
+ * serializable fields and converting observables to static values.
908
+ */
909
+ export declare function serializeSendOptions(options: IChatSendRequestOptions): ISerializableSendOptions;
831
910
  export declare enum ChatRequestEditedFileEventKind {
832
911
  Keep = 1,
833
912
  Undo = 2,