@codingame/monaco-vscode-chat-service-override 29.1.0 → 30.0.0

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 (258) hide show
  1. package/index.js +5 -2
  2. package/package.json +5 -5
  3. package/vscode/src/vs/platform/agentHost/common/agentService.d.ts +37 -39
  4. package/vscode/src/vs/platform/agentHost/common/agentService.js +3 -1
  5. package/vscode/src/vs/platform/agentHost/common/agentService.service.d.ts +11 -1
  6. package/vscode/src/vs/platform/agentHost/common/state/protocol/action-origin.generated.d.ts +4 -4
  7. package/vscode/src/vs/platform/agentHost/common/state/protocol/actions.d.ts +132 -42
  8. package/vscode/src/vs/platform/agentHost/common/state/protocol/commands.d.ts +54 -0
  9. package/vscode/src/vs/platform/agentHost/common/state/protocol/errors.d.ts +15 -0
  10. package/vscode/src/vs/platform/agentHost/common/state/protocol/messages.d.ts +5 -1
  11. package/vscode/src/vs/platform/agentHost/common/state/protocol/state.d.ts +188 -51
  12. package/vscode/src/vs/platform/agentHost/common/state/sessionActions.d.ts +7 -6
  13. package/vscode/src/vs/platform/agentHost/common/state/sessionProtocol.d.ts +1 -1
  14. package/vscode/src/vs/platform/agentHost/common/state/sessionState.d.ts +7 -2
  15. package/vscode/src/vs/platform/sandbox/browser/sandboxHelperService.d.ts +6 -0
  16. package/vscode/src/vs/platform/sandbox/browser/sandboxHelperService.js +14 -0
  17. package/vscode/src/vs/platform/sandbox/common/sandboxHelperIpc.d.ts +18 -0
  18. package/vscode/src/vs/platform/sandbox/common/sandboxHelperIpc.js +13 -0
  19. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityService.js +2 -2
  20. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.js +37 -16
  21. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.js +8 -8
  22. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +59 -59
  23. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAgentRecommendationActions.js +1 -1
  24. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.js +12 -12
  25. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.js +10 -8
  26. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +37 -3
  27. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +4 -4
  28. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +2 -2
  29. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatForkActions.js +6 -6
  30. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +3 -3
  31. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.js +13 -13
  32. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.js +6 -6
  33. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatNewActions.js +20 -11
  34. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatOpenAgentDebugPanelAction.js +14 -14
  35. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPluginActions.js +18 -13
  36. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.js +2 -2
  37. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQueueActions.js +10 -10
  38. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +8 -8
  39. package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +19 -19
  40. package/vscode/src/vs/workbench/contrib/chat/browser/actions/createPluginAction.d.ts +36 -0
  41. package/vscode/src/vs/workbench/contrib/chat/browser/actions/createPluginAction.js +482 -0
  42. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginActions.js +8 -8
  43. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditor.js +2 -2
  44. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditorInput.js +2 -2
  45. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.d.ts +10 -2
  46. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.js +43 -10
  47. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.js +13 -13
  48. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.js +3 -3
  49. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.js +74 -76
  50. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.js +5 -5
  51. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsQuickAccess.js +1 -1
  52. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjection.js +1 -1
  53. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionActions.js +4 -4
  54. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.js +1 -1
  55. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionsExperiments.contribution.js +4 -4
  56. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.js +27 -35
  57. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccess.js +17 -17
  58. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccessActions.js +4 -4
  59. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/localAgentSessionsController.d.ts +5 -8
  60. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/localAgentSessionsController.js +86 -80
  61. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.d.ts +3 -2
  62. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.js +38 -4
  63. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.js +14 -14
  64. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.d.ts +38 -18
  65. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.js +427 -167
  66. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.contribution.js +37 -37
  67. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.d.ts +15 -0
  68. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.js +108 -37
  69. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.d.ts +8 -1
  70. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.js +28 -2
  71. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWorkspaceService.d.ts +2 -0
  72. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWorkspaceService.js +11 -1
  73. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.d.ts +1 -3
  74. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.js +3 -20
  75. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.d.ts +4 -0
  76. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.js +65 -68
  77. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationManagement.css +2 -0
  78. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.d.ts +1 -0
  79. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.js +64 -51
  80. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.js +1 -1
  81. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/simpleBrowserEditorOverlay.js +19 -19
  82. package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +288 -195
  83. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatCustomizationDiscoveryRenderer.js +21 -21
  84. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugDetailPanel.js +6 -6
  85. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditorInput.js +2 -2
  86. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventDetailRenderer.js +19 -19
  87. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventList.js +7 -7
  88. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFilters.js +4 -4
  89. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowChartView.js +7 -7
  90. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowGraph.js +21 -21
  91. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHomeView.js +12 -12
  92. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHookContentRenderer.js +17 -17
  93. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.js +21 -21
  94. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugMessageContentRenderer.js +8 -8
  95. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugModelTurnContentRenderer.js +23 -23
  96. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugOverviewView.js +28 -28
  97. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugToolCallContentRenderer.js +11 -11
  98. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +1 -1
  99. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingDeletedFileEntry.d.ts +1 -0
  100. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingDeletedFileEntry.js +3 -0
  101. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.js +3 -3
  102. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.d.ts +1 -0
  103. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +5 -2
  104. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.d.ts +1 -0
  105. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +1 -1
  106. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.d.ts +2 -1
  107. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +10 -3
  108. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.d.ts +4 -2
  109. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +19 -7
  110. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.d.ts +3 -2
  111. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +54 -12
  112. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.d.ts +1 -1
  113. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +3 -3
  114. package/vscode/src/vs/workbench/contrib/chat/browser/chatImageCarouselService.js +1 -1
  115. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.js +9 -8
  116. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.js +14 -14
  117. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.js +4 -4
  118. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.js +2 -2
  119. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.js +50 -50
  120. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatUsageWidget.js +11 -11
  121. package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +3 -3
  122. package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +30 -30
  123. package/vscode/src/vs/workbench/contrib/chat/browser/chatRepoInfo.js +2 -2
  124. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetup.js +1 -1
  125. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.d.ts +3 -1
  126. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.js +86 -17
  127. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.js +10 -10
  128. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupGrowthSession.js +6 -6
  129. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.js +29 -26
  130. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.js +12 -12
  131. package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.js +19 -19
  132. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.js +65 -65
  133. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.js +24 -16
  134. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipCatalog.js +17 -17
  135. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.js +2 -6
  136. package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.js +4 -4
  137. package/vscode/src/vs/workbench/contrib/chat/browser/claudePluginRecommendations.js +2 -2
  138. package/vscode/src/vs/workbench/contrib/chat/browser/defaultModelContribution.js +4 -4
  139. package/vscode/src/vs/workbench/contrib/chat/browser/enablementActions.js +4 -4
  140. package/vscode/src/vs/workbench/contrib/chat/browser/enablementStatusWidget.js +2 -2
  141. package/vscode/src/vs/workbench/contrib/chat/browser/languageModelsConfigurationService.js +1 -1
  142. package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.d.ts +3 -6
  143. package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.js +54 -39
  144. package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.js +16 -16
  145. package/vscode/src/vs/workbench/contrib/chat/browser/pluginUrlHandler.d.ts +24 -3
  146. package/vscode/src/vs/workbench/contrib/chat/browser/pluginUrlHandler.js +72 -14
  147. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +6 -6
  148. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.js +26 -26
  149. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.js +3 -3
  150. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +2 -2
  151. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptFileContributions.js +181 -0
  152. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +3 -3
  153. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.js +8 -8
  154. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.js +7 -7
  155. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.js +3 -3
  156. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/skillActions.js +3 -3
  157. package/vscode/src/vs/workbench/contrib/chat/browser/promptsDebugContribution.js +8 -6
  158. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.js +37 -37
  159. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.js +28 -23
  160. package/vscode/src/vs/workbench/contrib/chat/browser/tools/renameTool.js +6 -6
  161. package/vscode/src/vs/workbench/contrib/chat/browser/tools/usagesTool.js +7 -7
  162. package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +5 -5
  163. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatQueuePickerActionItem.js +9 -9
  164. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatStatusWidget.js +6 -6
  165. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletionUtils.d.ts +12 -0
  166. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletionUtils.js +62 -0
  167. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.d.ts +1 -10
  168. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.js +148 -88
  169. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorContrib.js +1 -1
  170. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorHover.js +1 -1
  171. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/chatQuick.js +1 -1
  172. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditor.js +1 -1
  173. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.d.ts +1 -0
  174. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.js +16 -9
  175. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewTitleControl.js +2 -2
  176. package/vscode/src/vs/workbench/contrib/chat/common/chatArtifactExtraction.d.ts +8 -0
  177. package/vscode/src/vs/workbench/contrib/chat/common/chatArtifactExtraction.js +158 -0
  178. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.d.ts +8 -3
  179. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.js +155 -76
  180. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceTelemetry.js +1 -2
  181. package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionOperationLog.js +5 -4
  182. package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.d.ts +5 -1
  183. package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.js +7 -6
  184. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.d.ts +31 -1
  185. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.js +228 -1
  186. package/vscode/src/vs/workbench/contrib/chat/common/plugins/fileBackedInstalledPluginsStore.d.ts +66 -0
  187. package/vscode/src/vs/workbench/contrib/chat/common/plugins/fileBackedInstalledPluginsStore.js +190 -0
  188. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.d.ts +25 -3
  189. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.js +130 -107
  190. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.d.ts +1 -0
  191. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +19 -18
  192. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.js +5 -5
  193. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +5 -5
  194. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.js +12 -12
  195. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.d.ts +2 -18
  196. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.js +169 -266
  197. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +12 -10
  198. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +149 -206
  199. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +3 -3
  200. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +27 -22
  201. package/vscode/src/vs/workbench/contrib/chat/common/tools/chatArtifactsService.d.ts +20 -8
  202. package/vscode/src/vs/workbench/contrib/chat/common/tools/chatArtifactsService.js +183 -43
  203. package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +1 -1
  204. package/vscode/src/vs/workbench/contrib/chat/common/widget/chatResponseResourceFileSystemProvider.js +1 -1
  205. package/vscode/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.js +2 -3
  206. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.js +4 -4
  207. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +21 -21
  208. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatDefaultModel.js +2 -2
  209. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +11 -11
  210. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpPromptArgumentPick.js +14 -14
  211. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chat/notebookChatUtils.js +1 -1
  212. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/cellChatActions.js +11 -11
  213. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebook.chat.contribution.js +6 -6
  214. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +1 -1
  215. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookModifiedCellDecorator.d.ts +1 -1
  216. package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.js +7 -7
  217. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +16 -16
  218. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +20 -20
  219. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatService.js +2 -2
  220. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +1 -1
  221. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.js +3 -1
  222. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.js +4 -2
  223. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.js +3 -2
  224. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +6 -6
  225. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.d.ts +1 -0
  226. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.js +1 -0
  227. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.d.ts +1 -3
  228. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +26 -23
  229. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/awaitTerminalTool.js +3 -3
  230. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/npmScriptAutoApprover.js +1 -1
  231. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.js +12 -12
  232. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.js +2 -2
  233. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineSandboxRewriter.js +4 -9
  234. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalLastCommandTool.js +3 -3
  235. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.js +16 -6
  236. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.js +3 -3
  237. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/killTerminalTool.js +3 -3
  238. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +9 -9
  239. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.js +2 -2
  240. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +150 -50
  241. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.js +2 -2
  242. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/createAndRunTaskTool.js +14 -14
  243. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/getTaskOutputTool.js +7 -7
  244. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/runTaskTool.js +14 -14
  245. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.js +1 -1
  246. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.d.ts +66 -5
  247. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.js +239 -48
  248. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.d.ts +0 -14
  249. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +0 -208
  250. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.d.ts +0 -22
  251. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +0 -637
  252. package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.d.ts +0 -24
  253. package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +0 -384
  254. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/internalCustomizations/internalCustomizations.d.ts +0 -33
  255. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/internalCustomizations/internalCustomizations.js +0 -47
  256. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/internalCustomizations/internalSkill.d.ts +0 -30
  257. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptFileContributions.js +0 -55
  258. /package/vscode/src/vs/workbench/contrib/chat/{common → browser}/promptSyntax/promptFileContributions.d.ts +0 -0
@@ -22,11 +22,11 @@ class AnnounceChatConfirmationAction extends Action2 {
22
22
  super({
23
23
  id: ACTION_ID_FOCUS_CHAT_CONFIRMATION,
24
24
  title: {
25
- value: ( localize(4720, "Focus Chat Confirmation")),
25
+ value: ( localize(4719, "Focus Chat Confirmation")),
26
26
  original: "Focus Chat Confirmation"
27
27
  },
28
28
  category: {
29
- value: ( localize(4721, "Chat")),
29
+ value: ( localize(4720, "Chat")),
30
30
  original: "Chat"
31
31
  },
32
32
  precondition: ChatContextKeys.enabled,
@@ -42,12 +42,12 @@ class AnnounceChatConfirmationAction extends Action2 {
42
42
  const chatWidgetService = accessor.get(IChatWidgetService);
43
43
  const pendingWidget = chatWidgetService.getAllWidgets().find(widget => widget.viewModel?.model.requestNeedsInput.get());
44
44
  if (!pendingWidget) {
45
- alert(( localize(4722, "No active chat session found.")));
45
+ alert(( localize(4721, "No active chat session found.")));
46
46
  return;
47
47
  }
48
48
  const viewModel = pendingWidget.viewModel;
49
49
  if (!viewModel) {
50
- alert(( localize(4723, "Chat interface not ready.")));
50
+ alert(( localize(4722, "Chat interface not ready.")));
51
51
  return;
52
52
  }
53
53
  let firstConfirmationElement;
@@ -65,7 +65,7 @@ class AnnounceChatConfirmationAction extends Action2 {
65
65
  firstConfirmationElement.focus();
66
66
  }
67
67
  } else {
68
- alert(( localize(4724, "No chat confirmation required")));
68
+ alert(( localize(4723, "No chat confirmation required")));
69
69
  }
70
70
  }
71
71
  }
@@ -74,11 +74,11 @@ class ToggleThinkingContentAccessibleViewAction extends Action2 {
74
74
  super({
75
75
  id: ACTION_ID_TOGGLE_THINKING_CONTENT_ACCESSIBLE_VIEW,
76
76
  title: {
77
- value: ( localize(4725, "Toggle Thinking Content in Accessible View")),
77
+ value: ( localize(4724, "Toggle Thinking Content in Accessible View")),
78
78
  original: "Toggle Thinking Content in Accessible View"
79
79
  },
80
80
  category: {
81
- value: ( localize(4721, "Chat")),
81
+ value: ( localize(4720, "Chat")),
82
82
  original: "Chat"
83
83
  },
84
84
  precondition: ChatContextKeys.enabled,
@@ -100,7 +100,7 @@ class ToggleThinkingContentAccessibleViewAction extends Action2 {
100
100
  StorageScope.PROFILE,
101
101
  StorageTarget.USER
102
102
  );
103
- alert(updatedValue ? ( localize(4726, "Thinking content will be included in the accessible view.")) : ( localize(4727, "Thinking content will be hidden from the accessible view.")));
103
+ alert(updatedValue ? ( localize(4725, "Thinking content will be included in the accessible view.")) : ( localize(4726, "Thinking content will be hidden from the accessible view.")));
104
104
  }
105
105
  }
106
106
  function registerChatAccessibilityActions() {
@@ -70,126 +70,126 @@ function getAccessibilityHelpText(type, keybindingService) {
70
70
  if (type === "panelChat" || type === "quickChat" || type === "agentView") {
71
71
  if (type === "quickChat") {
72
72
  content.push(( localize(
73
- 4728,
73
+ 4727,
74
74
  "The quick chat view is comprised of an input box and a request/response list. The input box is used to make requests and the list is used to display responses."
75
75
  )));
76
76
  content.push(( localize(
77
- 4729,
77
+ 4728,
78
78
  "The quick chat view is a transient interface for making and viewing requests, while the panel chat view is a persistent interface that also supports navigating suggested follow-up questions."
79
79
  )));
80
80
  } else {
81
81
  content.push(( localize(
82
- 4730,
82
+ 4729,
83
83
  "The chat view is a persistent interface that also supports navigating suggested follow-up questions, while the quick chat view is a transient interface for making and viewing requests."
84
84
  )));
85
85
  content.push(( localize(
86
- 4731,
86
+ 4730,
87
87
  "To create a new chat session, invoke the New Chat command{0}.",
88
88
  "<keybinding:workbench.action.chat.newChat>"
89
89
  )));
90
90
  content.push(( localize(
91
- 4732,
91
+ 4731,
92
92
  "To view all chat sessions, invoke the Show Chats command{0}.",
93
93
  "<keybinding:workbench.action.chat.history>"
94
94
  )));
95
95
  content.push(( localize(
96
- 4733,
96
+ 4732,
97
97
  "You can focus the agent sessions list by invoking the Focus Agent Sessions command{0}.",
98
98
  `<keybinding:${FocusAgentSessionsAction.id}>`
99
99
  )));
100
100
  }
101
101
  content.push(( localize(
102
- 4734,
102
+ 4733,
103
103
  "In the input box, use up and down arrows to navigate your request history. Edit input and use enter or the submit button to run a new request."
104
104
  )));
105
105
  content.push(( localize(
106
- 4735,
106
+ 4734,
107
107
  "To remove attached contexts, focus an attachment and press Delete or Backspace."
108
108
  )));
109
109
  content.push(( localize(
110
- 4736,
110
+ 4735,
111
111
  "In the input box, inspect the last response in the accessible view{0}. Thinking content is included in order by default.",
112
112
  "<keybinding:editor.action.accessibleView>"
113
113
  )));
114
114
  content.push(( localize(
115
- 4737,
115
+ 4736,
116
116
  "To include or exclude thinking content in the accessible view, run the Toggle Thinking Content in Accessible View command from the Command Palette."
117
117
  )));
118
118
  content.push(( localize(
119
- 4738,
119
+ 4737,
120
120
  "To focus the chat request and response list, invoke the Focus Chat command{0}. This will move focus to the most recent response, which you can then navigate using the up and down arrow keys.",
121
121
  getChatFocusKeybindingLabel(keybindingService, type, "last")
122
122
  )));
123
123
  content.push(( localize(
124
- 4739,
124
+ 4738,
125
125
  "To return to the last chat response you focused, invoke the Focus Last Focused Chat Response command{0}.",
126
126
  getChatFocusKeybindingLabel(keybindingService, type, "lastFocused")
127
127
  )));
128
128
  content.push(( localize(
129
- 4740,
129
+ 4739,
130
130
  "To focus the input box for chat requests, invoke the Focus Chat Input command{0}.",
131
131
  getChatFocusKeybindingLabel(keybindingService, type, "input")
132
132
  )));
133
133
  content.push(( localize(
134
- 4741,
134
+ 4740,
135
135
  "As the chat request is being processed, you will hear verbose progress updates if the request takes more than 4 seconds. This includes information like searched text for <search term> with X results, created file <file_name>, or read file <file path>. This can be disabled with accessibility.verboseChatProgressUpdates."
136
136
  )));
137
137
  content.push(( localize(
138
- 4742,
138
+ 4741,
139
139
  "Chat responses will be announced as they come in. A response will indicate the number of code blocks, if any, and then the rest of the response."
140
140
  )));
141
141
  content.push(( localize(
142
- 4743,
142
+ 4742,
143
143
  "To focus the next code block within a response, invoke the Chat: Next Code Block command{0}.",
144
144
  "<keybinding:workbench.action.chat.nextCodeBlock>"
145
145
  )));
146
146
  content.push(( localize(
147
- 4744,
147
+ 4743,
148
148
  "To navigate to the next user prompt in the conversation, invoke the Next User Prompt command{0}.",
149
149
  "<keybinding:workbench.action.chat.nextUserPrompt>"
150
150
  )));
151
151
  content.push(( localize(
152
- 4745,
152
+ 4744,
153
153
  "To navigate to the previous user prompt in the conversation, invoke the Previous User Prompt command{0}.",
154
154
  "<keybinding:workbench.action.chat.previousUserPrompt>"
155
155
  )));
156
156
  content.push(( localize(
157
- 4746,
157
+ 4745,
158
158
  "To focus pending chat confirmation dialogs, invoke the Focus Chat Confirmation Status command{0}.",
159
159
  "<keybinding:workbench.action.chat.focusConfirmation>"
160
160
  )));
161
161
  content.push(( localize(
162
- 4747,
162
+ 4746,
163
163
  "If there are any hidden chat terminals, you can view them by invoking the View Hidden Chat Terminals command{0}.",
164
164
  "<keybinding:workbench.action.terminal.chat.viewHiddenChatTerminals>"
165
165
  )));
166
166
  content.push(( localize(
167
- 4748,
167
+ 4747,
168
168
  "To focus the last chat terminal that ran a tool, invoke the Focus Most Recent Chat Terminal command{0}.",
169
169
  `<keybinding:${TerminalContribCommandId.FocusMostRecentChatTerminal}>`
170
170
  )));
171
171
  content.push(( localize(
172
- 4749,
172
+ 4748,
173
173
  "To focus the output from the last chat terminal tool, invoke the Focus Most Recent Chat Terminal Output command{0}.",
174
174
  `<keybinding:${TerminalContribCommandId.FocusMostRecentChatTerminalOutput}>`
175
175
  )));
176
176
  content.push(( localize(
177
- 4750,
177
+ 4749,
178
178
  "When a chat question appears, toggle focus between the question and the chat input{0}.",
179
179
  "<keybinding:workbench.action.chat.focusQuestionCarousel>"
180
180
  )));
181
181
  content.push(( localize(
182
- 4751,
182
+ 4750,
183
183
  "When a chat question is focused, move to the previous question{0}.",
184
184
  "<keybinding:workbench.action.chat.previousQuestion>"
185
185
  )));
186
186
  content.push(( localize(
187
- 4752,
187
+ 4751,
188
188
  "When a chat question is focused, move to the next question{0}.",
189
189
  "<keybinding:workbench.action.chat.nextQuestion>"
190
190
  )));
191
191
  content.push(( localize(
192
- 4753,
192
+ 4752,
193
193
  "When a tip appears, toggle focus between the tip and the chat input{0}.",
194
194
  "<keybinding:workbench.action.chat.focusTip>"
195
195
  )));
@@ -197,99 +197,99 @@ function getAccessibilityHelpText(type, keybindingService) {
197
197
  if (type === "editsView" || type === "agentView") {
198
198
  if (type === "agentView") {
199
199
  content.push(( localize(
200
- 4754,
200
+ 4753,
201
201
  "The chat agent view is used to apply edits across files in your workspace, enable running commands in the terminal, and more."
202
202
  )));
203
203
  } else {
204
- content.push(( localize(4755, "The chat editing view is used to apply edits across files.")));
204
+ content.push(( localize(4754, "The chat editing view is used to apply edits across files.")));
205
205
  }
206
206
  content.push(( localize(
207
- 4756,
207
+ 4755,
208
208
  "It is comprised of an input box and a file working set (Shift+Tab)."
209
209
  )));
210
210
  content.push(( localize(
211
- 4757,
211
+ 4756,
212
212
  "When a request is made, a progress indicator will play while the edits are being applied."
213
213
  )));
214
214
  content.push(( localize(
215
- 4758,
215
+ 4757,
216
216
  "Once the edits are applied, a sound will play to indicate the document has been opened and is ready for review. The sound can be disabled with accessibility.signals.chatEditModifiedFile."
217
217
  )));
218
218
  content.push(( localize(
219
- 4759,
219
+ 4758,
220
220
  "Navigate between edits in the editor with navigate previous{0} and next{1}",
221
221
  "<keybinding:chatEditor.action.navigatePrevious>",
222
222
  "<keybinding:chatEditor.action.navigateNext>"
223
223
  )));
224
224
  content.push(( localize(
225
- 4760,
225
+ 4759,
226
226
  "In the editor, Keep{0}, Undo{1}, or Toggle the Diff{2} for the current Change.",
227
227
  "<keybinding:chatEditor.action.acceptHunk>",
228
228
  "<keybinding:chatEditor.action.undoHunk>",
229
229
  "<keybinding:chatEditor.action.toggleDiff>"
230
230
  )));
231
231
  content.push(( localize(
232
- 4761,
232
+ 4760,
233
233
  "Sounds will play when a change is accepted or undone. The sounds can be disabled with accessibility.signals.editsKept and accessibility.signals.editsUndone."
234
234
  )));
235
235
  if (type === "agentView") {
236
236
  content.push(( localize(
237
- 4762,
237
+ 4761,
238
238
  "An alert will indicate when user action is required. For example, if the agent wants to run something in the terminal, you will hear Action Required: Run Command in Terminal."
239
239
  )));
240
240
  content.push(( localize(
241
- 4763,
241
+ 4762,
242
242
  "To take the action, use the accept tool command{0}.",
243
243
  "<keybinding:workbench.action.chat.acceptTool>"
244
244
  )));
245
245
  content.push(( localize(
246
- 4764,
246
+ 4763,
247
247
  "To automatically approve tool actions without manual confirmation, set {0} to {1} in your settings.",
248
248
  ChatConfiguration.GlobalAutoApprove,
249
249
  "true"
250
250
  )));
251
251
  content.push(( localize(
252
- 4765,
252
+ 4764,
253
253
  "To accept a tool action, use the Accept Tool Confirmation command{0}.",
254
254
  "<keybinding:workbench.action.chat.acceptTool>"
255
255
  )));
256
256
  content.push(( localize(
257
- 4766,
257
+ 4765,
258
258
  "By default, when edits are made to files, they will be opened. To change this behavior, set accessibility.openChatEditedFiles to false in your settings."
259
259
  )));
260
260
  content.push(( localize(
261
- 4767,
261
+ 4766,
262
262
  "To toggle focus between the Agent TODOs view and the chat input, use Agent TODOs: Toggle Focus{0}.",
263
263
  "<keybinding:workbench.action.chat.focusTodosView>"
264
264
  )));
265
265
  }
266
- content.push(( localize(4768, "Some helpful commands include:")));
267
- content.push(( localize(4769, "- Undo Edits{0}.", "<keybinding:workbench.action.chat.undoEdits>")));
266
+ content.push(( localize(4767, "Some helpful commands include:")));
267
+ content.push(( localize(4768, "- Undo Edits{0}.", "<keybinding:workbench.action.chat.undoEdits>")));
268
268
  content.push(( localize(
269
- 4770,
269
+ 4769,
270
270
  "- Restore to Last Checkpoint{0}.",
271
271
  "<keybinding:workbench.action.chat.restoreLastCheckpoint>"
272
272
  )));
273
273
  content.push(( localize(
274
- 4771,
274
+ 4770,
275
275
  "- Attach Files{0}.",
276
276
  "<keybinding:workbench.action.chat.editing.attachFiles>"
277
277
  )));
278
278
  content.push(( localize(
279
- 4772,
279
+ 4771,
280
280
  "- Remove File from Working Set{0}.",
281
281
  "<keybinding:chatEditing.removeFileFromWorkingSet>"
282
282
  )));
283
283
  content.push(( localize(
284
- 4773,
284
+ 4772,
285
285
  "- Keep{0} and Undo File{1}.",
286
286
  "<keybinding:chatEditing.acceptFile>",
287
287
  "<keybinding:chatEditing.discardFile>"
288
288
  )));
289
- content.push(( localize(4774, "- Save All Files{0}.", "<keybinding:chatEditing.saveAllFiles>")));
290
- content.push(( localize(4775, "- Keep All Edits{0}.", "<keybinding:chatEditing.acceptAllFiles>")));
291
- content.push(( localize(4776, "- Undo All Edits{0}.", "<keybinding:chatEditing.discardAllFiles>")));
292
- content.push(( localize(4777, "- Open File in Diff{0}.", "<keybinding:chatEditing.openFileInDiff>")));
289
+ content.push(( localize(4773, "- Save All Files{0}.", "<keybinding:chatEditing.saveAllFiles>")));
290
+ content.push(( localize(4774, "- Keep All Edits{0}.", "<keybinding:chatEditing.acceptAllFiles>")));
291
+ content.push(( localize(4775, "- Undo All Edits{0}.", "<keybinding:chatEditing.discardAllFiles>")));
292
+ content.push(( localize(4776, "- Open File in Diff{0}.", "<keybinding:chatEditing.openFileInDiff>")));
293
293
  content.push(
294
294
  `- ${ChatEditingShowChangesAction.LABEL}<keybinding:chatEditing.viewChanges>`
295
295
  );
@@ -298,45 +298,45 @@ function getAccessibilityHelpText(type, keybindingService) {
298
298
  );
299
299
  } else {
300
300
  content.push(( localize(
301
- 4778,
301
+ 4777,
302
302
  "Inline chat occurs within a code editor and takes into account the current selection. It is useful for making changes to the current editor. For example, fixing diagnostics, documenting or refactoring code. Keep in mind that AI generated code may be incorrect."
303
303
  )));
304
304
  content.push(( localize(
305
- 4779,
305
+ 4778,
306
306
  "It can be activated via code actions or directly using the command: Inline Chat: Start Inline Chat{0}.",
307
307
  "<keybinding:inlineChat.start>"
308
308
  )));
309
309
  content.push(( localize(
310
- 4780,
310
+ 4779,
311
311
  "In the input box, use Show Previous{0} and Show Next{1} to navigate your request history. Edit input and use enter or the submit button to run a new request.",
312
312
  "<keybinding:history.showPrevious>",
313
313
  "<keybinding:history.showNext>"
314
314
  )));
315
315
  content.push(( localize(
316
- 4781,
316
+ 4780,
317
317
  "In the input box, inspect the response in the accessible view{0}.",
318
318
  "<keybinding:editor.action.accessibleView>"
319
319
  )));
320
320
  content.push(( localize(
321
- 4782,
321
+ 4781,
322
322
  "Context menu actions may run a request prefixed with a /. Type / to discover such ready-made commands."
323
323
  )));
324
324
  content.push(( localize(
325
- 4783,
325
+ 4782,
326
326
  "If a fix action is invoked, a response will indicate the problem with the current code. A diff editor will be rendered and can be reached by tabbing."
327
327
  )));
328
328
  content.push(( localize(
329
- 4784,
329
+ 4783,
330
330
  "Once in the diff editor, enter review mode with{0}. Use up and down arrows to navigate lines with the proposed changes.",
331
331
  AccessibleDiffViewerNext.id
332
332
  )));
333
333
  content.push(( localize(
334
- 4785,
334
+ 4784,
335
335
  "Use tab to reach conditional parts like commands, status, message responses and more."
336
336
  )));
337
337
  }
338
338
  content.push(( localize(
339
- 4786,
339
+ 4785,
340
340
  "Accessibility Signals can be changed via settings with a prefix of signals.chat. By default, if a request takes more than 4 seconds, you will hear a sound indicating that progress is still occurring."
341
341
  )));
342
342
  return content.join("\n");
@@ -58,7 +58,7 @@ let ChatAgentRecommendation = class ChatAgentRecommendation extends Disposable {
58
58
  const availabilityContextId = `${INSTALL_CONTEXT_PREFIX}.${extensionKey}`;
59
59
  const availabilityContext = ( new RawContextKey(availabilityContextId, false)).bindTo(this.contextKeyService);
60
60
  this.availabilityContextKeys.set(extensionKey, availabilityContext);
61
- const title = ( localize2(4849, "New {0}", recommendation.displayName));
61
+ const title = ( localize2(4848, "New {0}", recommendation.displayName));
62
62
  this._register(registerAction2(class extends Action2 {
63
63
  constructor() {
64
64
  super({
@@ -79,7 +79,7 @@ let CodeBlockActionRendering = class CodeBlockActionRendering extends Disposable
79
79
  const label = labelService.getUriLabel(context.codemapperUri, {
80
80
  relative: true
81
81
  });
82
- return localize(4850, "Apply to {0}", label);
82
+ return localize(4849, "Apply to {0}", label);
83
83
  }
84
84
  return super.getTooltip();
85
85
  }
@@ -98,7 +98,7 @@ function registerChatCodeBlockActions() {
98
98
  constructor() {
99
99
  super({
100
100
  id: "workbench.action.chat.copyCodeBlock",
101
- title: ( localize2(4851, "Copy")),
101
+ title: ( localize2(4850, "Copy")),
102
102
  f1: false,
103
103
  category: CHAT_CATEGORY,
104
104
  icon: Codicon.copy,
@@ -221,7 +221,7 @@ function registerChatCodeBlockActions() {
221
221
  constructor() {
222
222
  super({
223
223
  id: APPLY_IN_EDITOR_ID,
224
- title: ( localize2(4852, "Apply in Editor")),
224
+ title: ( localize2(4851, "Apply in Editor")),
225
225
  precondition: ChatContextKeys.enabled,
226
226
  f1: false,
227
227
  category: CHAT_CATEGORY,
@@ -256,7 +256,7 @@ function registerChatCodeBlockActions() {
256
256
  constructor() {
257
257
  super({
258
258
  id: "workbench.action.chat.insertCodeBlock",
259
- title: ( localize2(4853, "Insert At Cursor")),
259
+ title: ( localize2(4852, "Insert At Cursor")),
260
260
  precondition: ChatContextKeys.enabled,
261
261
  f1: true,
262
262
  category: CHAT_CATEGORY,
@@ -292,7 +292,7 @@ function registerChatCodeBlockActions() {
292
292
  constructor() {
293
293
  super({
294
294
  id: "workbench.action.chat.insertIntoNewFile",
295
- title: ( localize2(4854, "Insert into New File")),
295
+ title: ( localize2(4853, "Insert into New File")),
296
296
  precondition: ChatContextKeys.enabled,
297
297
  f1: true,
298
298
  category: CHAT_CATEGORY,
@@ -356,7 +356,7 @@ function registerChatCodeBlockActions() {
356
356
  constructor() {
357
357
  super({
358
358
  id: "workbench.action.chat.runInTerminal",
359
- title: ( localize2(4855, "Insert into Terminal")),
359
+ title: ( localize2(4854, "Insert into Terminal")),
360
360
  precondition: ChatContextKeys.enabled,
361
361
  f1: true,
362
362
  category: CHAT_CATEGORY,
@@ -452,7 +452,7 @@ function registerChatCodeBlockActions() {
452
452
  constructor() {
453
453
  super({
454
454
  id: "workbench.action.chat.nextCodeBlock",
455
- title: ( localize2(4856, "Next Code Block")),
455
+ title: ( localize2(4855, "Next Code Block")),
456
456
  keybinding: {
457
457
  primary: KeyMod.CtrlCmd | KeyMod.Alt | KeyCode.PageDown,
458
458
  mac: {
@@ -474,7 +474,7 @@ function registerChatCodeBlockActions() {
474
474
  constructor() {
475
475
  super({
476
476
  id: "workbench.action.chat.previousCodeBlock",
477
- title: ( localize2(4857, "Previous Code Block")),
477
+ title: ( localize2(4856, "Previous Code Block")),
478
478
  keybinding: {
479
479
  primary: KeyMod.CtrlCmd | KeyMod.Alt | KeyCode.PageUp,
480
480
  mac: {
@@ -535,7 +535,7 @@ function registerChatCodeCompareBlockActions() {
535
535
  constructor() {
536
536
  super({
537
537
  id: "workbench.action.chat.applyCompareEdits",
538
- title: ( localize2(4858, "Apply Edits")),
538
+ title: ( localize2(4857, "Apply Edits")),
539
539
  f1: false,
540
540
  category: CHAT_CATEGORY,
541
541
  icon: Codicon.gitPullRequestGoToChanges,
@@ -580,7 +580,7 @@ function registerChatCodeCompareBlockActions() {
580
580
  constructor() {
581
581
  super({
582
582
  id: "workbench.action.chat.discardCompareEdits",
583
- title: ( localize2(4859, "Discard Edits")),
583
+ title: ( localize2(4858, "Discard Edits")),
584
584
  f1: false,
585
585
  category: CHAT_CATEGORY,
586
586
  icon: Codicon.trash,
@@ -603,7 +603,7 @@ function registerChatCodeCompareBlockActions() {
603
603
  constructor() {
604
604
  super({
605
605
  id: "workbench.action.chat.toggleCompareBlockDiffViewMode",
606
- title: ( localize2(4860, "Toggle Inline/Side-by-Side Diff")),
606
+ title: ( localize2(4859, "Toggle Inline/Side-by-Side Diff")),
607
607
  f1: false,
608
608
  category: CHAT_CATEGORY,
609
609
  icon: Codicon.diffSingle,
@@ -626,7 +626,7 @@ function registerChatCodeCompareBlockActions() {
626
626
  constructor() {
627
627
  super({
628
628
  id: "workbench.action.chat.openCompareBlockInDiffEditor",
629
- title: ( localize2(4861, "Open in Diff Editor")),
629
+ title: ( localize2(4860, "Open in Diff Editor")),
630
630
  f1: false,
631
631
  category: CHAT_CATEGORY,
632
632
  icon: Codicon.goToFile,
@@ -47,6 +47,7 @@ import { isQuickChat } from '@codingame/monaco-vscode-katex-common/vscode/vs/wor
47
47
  import { resizeImage } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chatImageUtils';
48
48
  import { registerPromptActions } from '../promptSyntax/promptFileActions.js';
49
49
  import { CHAT_CATEGORY } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/actions/chatActions';
50
+ import { registerCreatePluginAction } from './createPluginAction.js';
50
51
  import { observableValue } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/observableValue';
51
52
  import { autorun } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/reactions/autorun';
52
53
 
@@ -58,6 +59,7 @@ function registerChatContextActions() {
58
59
  registerAction2(AttachSearchResultAction);
59
60
  registerAction2(AttachPinnedEditorsToChatAction);
60
61
  registerPromptActions();
62
+ registerCreatePluginAction();
61
63
  }
62
64
  async function withChatView(accessor) {
63
65
  const chatWidgetService = accessor.get(IChatWidgetService);
@@ -118,7 +120,7 @@ class AttachFileToChatAction extends AttachResourceAction {
118
120
  constructor() {
119
121
  super({
120
122
  id: AttachFileToChatAction.ID,
121
- title: ( localize2(4871, "Add File to Chat")),
123
+ title: ( localize2(4872, "Add File to Chat")),
122
124
  category: CHAT_CATEGORY,
123
125
  icon: Codicon.attach,
124
126
  precondition: ChatContextKeys.enabled,
@@ -180,7 +182,7 @@ class AttachFolderToChatAction extends AttachResourceAction {
180
182
  constructor() {
181
183
  super({
182
184
  id: AttachFolderToChatAction.ID,
183
- title: ( localize2(4872, "Add Folder to Chat")),
185
+ title: ( localize2(4873, "Add Folder to Chat")),
184
186
  category: CHAT_CATEGORY,
185
187
  f1: false,
186
188
  menu: {
@@ -211,7 +213,7 @@ class AttachPinnedEditorsToChatAction extends Action2 {
211
213
  constructor() {
212
214
  super({
213
215
  id: AttachPinnedEditorsToChatAction.ID,
214
- title: ( localize2(4873, "Add Pinned Editors to Chat")),
216
+ title: ( localize2(4874, "Add Pinned Editors to Chat")),
215
217
  category: CHAT_CATEGORY,
216
218
  precondition: ChatContextKeys.enabled,
217
219
  f1: true
@@ -253,7 +255,7 @@ class AttachSelectionToChatAction extends Action2 {
253
255
  constructor() {
254
256
  super({
255
257
  id: AttachSelectionToChatAction.ID,
256
- title: ( localize2(4874, "Add Selection to Chat")),
258
+ title: ( localize2(4875, "Add Selection to Chat")),
257
259
  category: CHAT_CATEGORY,
258
260
  icon: Codicon.attach,
259
261
  f1: true,
@@ -333,7 +335,7 @@ class AttachSearchResultAction extends Action2 {
333
335
  constructor() {
334
336
  super({
335
337
  id: "workbench.action.chat.insertSearchResults",
336
- title: ( localize2(4875, "Add Search Results to Chat")),
338
+ title: ( localize2(4876, "Add Search Results to Chat")),
337
339
  category: CHAT_CATEGORY,
338
340
  f1: false,
339
341
  menu: [{
@@ -396,7 +398,7 @@ class AttachContextAction extends Action2 {
396
398
  constructor() {
397
399
  super({
398
400
  id: "workbench.action.chat.attachContext",
399
- title: ( localize2(4876, "Add Context...")),
401
+ title: ( localize2(4877, "Add Context...")),
400
402
  icon: Codicon.add,
401
403
  category: CHAT_CATEGORY,
402
404
  keybinding: {
@@ -487,7 +489,7 @@ class AttachContextAction extends Action2 {
487
489
  SymbolsQuickAccessProvider.PREFIX,
488
490
  AbstractGotoSymbolQuickAccessProvider.PREFIX
489
491
  ],
490
- placeholder: placeholder ?? ( localize(4877, "Search attachments")),
492
+ placeholder: placeholder ?? ( localize(4878, "Search attachments")),
491
493
  providerOptions
492
494
  });
493
495
  }
@@ -560,7 +562,7 @@ class AttachContextAction extends Action2 {
560
562
  const pickerConfig = item.asPicker(widget);
561
563
  const store = ( new DisposableStore());
562
564
  const goBackItem = {
563
- label: ( localize(4878, "Go back ↩")),
565
+ label: ( localize(4879, "Go back ↩")),
564
566
  alwaysShow: true
565
567
  };
566
568
  const configureItem = pickerConfig.configure ? {
@@ -16,7 +16,7 @@ function registerChatCopyActions() {
16
16
  constructor() {
17
17
  super({
18
18
  id: "workbench.action.chat.copyAll",
19
- title: ( localize2(4884, "Copy All")),
19
+ title: ( localize2(4885, "Copy All")),
20
20
  f1: false,
21
21
  category: CHAT_CATEGORY,
22
22
  menu: {
@@ -45,7 +45,7 @@ function registerChatCopyActions() {
45
45
  constructor() {
46
46
  super({
47
47
  id: "workbench.action.chat.copyItem",
48
- title: ( localize2(4885, "Copy")),
48
+ title: ( localize2(4886, "Copy")),
49
49
  f1: false,
50
50
  category: CHAT_CATEGORY,
51
51
  icon: Codicon.copy,
@@ -85,11 +85,45 @@ function registerChatCopyActions() {
85
85
  await clipboardService.writeText(text);
86
86
  }
87
87
  });
88
+ registerAction2(class CopyFinalResponseAction extends Action2 {
89
+ constructor() {
90
+ super({
91
+ id: "workbench.action.chat.copyFinalResponse",
92
+ title: ( localize2(4887, "Copy Final Response")),
93
+ f1: false,
94
+ category: CHAT_CATEGORY,
95
+ menu: {
96
+ id: MenuId.ChatContext,
97
+ when: ( ContextKeyExpr.and(ChatContextKeys.isResponse, ( ChatContextKeys.responseIsFiltered.negate()))),
98
+ group: "copy"
99
+ }
100
+ });
101
+ }
102
+ async run(accessor, ...args) {
103
+ const chatWidgetService = accessor.get(IChatWidgetService);
104
+ const clipboardService = accessor.get(IClipboardService);
105
+ const widget = chatWidgetService.lastFocusedWidget;
106
+ let item = args[0];
107
+ if (!isChatTreeItem(item)) {
108
+ item = widget?.getFocus();
109
+ if (!item) {
110
+ return;
111
+ }
112
+ }
113
+ if (!isResponseVM(item)) {
114
+ return;
115
+ }
116
+ const text = item.response.getFinalResponse();
117
+ if (text) {
118
+ await clipboardService.writeText(text);
119
+ }
120
+ }
121
+ });
88
122
  registerAction2(class CopyKatexMathSourceAction extends Action2 {
89
123
  constructor() {
90
124
  super({
91
125
  id: "workbench.action.chat.copyKatexMathSource",
92
- title: ( localize2(4886, "Copy Math Source")),
126
+ title: ( localize2(4888, "Copy Math Source")),
93
127
  f1: false,
94
128
  category: CHAT_CATEGORY,
95
129
  menu: {