@codingame/monaco-vscode-chat-service-override 32.0.1 → 33.0.4

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 (257) hide show
  1. package/index.d.ts +1 -1
  2. package/index.js +15 -5
  3. package/package.json +5 -5
  4. package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostProtocolClient.d.ts +170 -24
  5. package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostProtocolClient.js +372 -66
  6. package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostServiceImpl.d.ts +18 -1
  7. package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostServiceImpl.js +160 -31
  8. package/vscode/src/vs/platform/agentHost/common/agentHostFileSystemService.d.ts +8 -0
  9. package/vscode/src/vs/platform/agentHost/common/agentHostFileSystemService.js +19 -0
  10. package/vscode/src/vs/platform/agentHost/common/agentHostSchema.d.ts +134 -0
  11. package/vscode/src/vs/platform/agentHost/common/agentHostSchema.js +257 -0
  12. package/vscode/src/vs/platform/agentHost/common/agentService.d.ts +84 -3
  13. package/vscode/src/vs/platform/agentHost/common/agentService.js +9 -1
  14. package/vscode/src/vs/platform/agentHost/common/state/agentSubscription.d.ts +61 -1
  15. package/vscode/src/vs/platform/agentHost/common/state/agentSubscription.js +61 -1
  16. package/vscode/src/vs/platform/agentHost/common/state/protocol/errors.js +3 -1
  17. package/vscode/src/vs/platform/agentHost/common/state/protocol/reducers.js +1 -1
  18. package/vscode/src/vs/platform/agentHost/common/state/protocol/version/registry.d.ts +1 -1
  19. package/vscode/src/vs/platform/agentHost/common/state/protocol/version/registry.js +1 -1
  20. package/vscode/src/vs/platform/agentHost/common/state/sessionActions.d.ts +4 -4
  21. package/vscode/src/vs/platform/agentHost/common/state/sessionActions.js +1 -1
  22. package/vscode/src/vs/platform/networkFilter/common/networkFilterService.d.ts +2 -7
  23. package/vscode/src/vs/platform/networkFilter/common/networkFilterService.js +8 -29
  24. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityService.js +2 -2
  25. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.js +16 -16
  26. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.js +8 -8
  27. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +60 -60
  28. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAgentRecommendationActions.js +1 -1
  29. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.js +12 -12
  30. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.js +8 -8
  31. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +7 -7
  32. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +10 -6
  33. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +2 -2
  34. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatForkActions.d.ts +10 -1
  35. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatForkActions.js +180 -174
  36. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +3 -3
  37. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.js +13 -13
  38. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.js +6 -6
  39. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatNewActions.js +12 -12
  40. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatOpenAgentDebugPanelAction.js +12 -12
  41. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPluginActions.js +12 -12
  42. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.js +2 -2
  43. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQueueActions.js +11 -11
  44. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +8 -8
  45. package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +18 -18
  46. package/vscode/src/vs/workbench/contrib/chat/browser/actions/createPluginAction.js +20 -20
  47. package/vscode/src/vs/workbench/contrib/chat/browser/actions/exportAgentHostDebugLogsAction.d.ts +64 -0
  48. package/vscode/src/vs/workbench/contrib/chat/browser/actions/exportAgentHostDebugLogsAction.js +330 -0
  49. package/vscode/src/vs/workbench/contrib/chat/browser/actions/openCopilotCliStateFileAction.d.ts +24 -0
  50. package/vscode/src/vs/workbench/contrib/chat/browser/actions/openCopilotCliStateFileAction.js +77 -0
  51. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginActions.js +8 -8
  52. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditor.js +2 -2
  53. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditorInput.js +2 -2
  54. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.js +6 -6
  55. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.js +13 -13
  56. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostPermissionUiContribution.js +5 -5
  57. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostUntitledProvisionalSessionService.d.ts +51 -0
  58. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostUntitledProvisionalSessionService.js +267 -0
  59. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.js +4 -3
  60. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.js +53 -53
  61. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.js +5 -5
  62. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsQuickAccess.js +1 -1
  63. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjection.js +1 -1
  64. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionActions.js +4 -4
  65. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.js +1 -1
  66. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionsExperiments.contribution.js +4 -4
  67. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.d.ts +5 -4
  68. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.js +30 -28
  69. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccess.js +17 -17
  70. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccessActions.js +4 -4
  71. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/localAgentSessionsController.js +26 -0
  72. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.js +14 -14
  73. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.d.ts +7 -6
  74. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.js +150 -119
  75. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.contribution.js +45 -44
  76. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.d.ts +0 -1
  77. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.js +58 -76
  78. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.js +1 -1
  79. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePagePromptLaunchers.js +25 -25
  80. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationGroupHeaderRenderer.js +2 -2
  81. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedAgentPluginDetail.js +2 -2
  82. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedMcpServerDetail.js +3 -3
  83. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.d.ts +2 -6
  84. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.js +88 -70
  85. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationManagement.css +82 -56
  86. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationWelcomePromptLaunchers.css +10 -8
  87. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.d.ts +2 -6
  88. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.js +89 -71
  89. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.js +1 -1
  90. package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.d.ts +1 -1
  91. package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +2 -2843
  92. package/vscode/src/vs/workbench/contrib/chat/browser/chat.shared.contribution.d.ts +1 -0
  93. package/vscode/src/vs/workbench/contrib/chat/browser/chat.shared.contribution.js +2934 -0
  94. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatCustomizationDiscoveryRenderer.js +32 -32
  95. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCacheExplorerView.js +99 -99
  96. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugDetailPanel.js +6 -6
  97. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditorInput.js +2 -2
  98. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventDetailRenderer.js +20 -20
  99. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventList.js +7 -7
  100. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFilters.js +4 -4
  101. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowChartView.js +7 -7
  102. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowGraph.js +22 -22
  103. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHomeView.js +13 -13
  104. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHookContentRenderer.js +17 -17
  105. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.js +24 -24
  106. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugMessageContentRenderer.js +8 -8
  107. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugModelTurnContentRenderer.js +23 -23
  108. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugOverviewView.js +33 -33
  109. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugToolCallContentRenderer.js +11 -11
  110. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +1 -1
  111. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js +14 -14
  112. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js +7 -7
  113. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.js +4 -4
  114. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationWidget.js +12 -12
  115. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +2 -2
  116. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +1 -1
  117. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +1 -1
  118. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +3 -3
  119. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +1 -1
  120. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +1 -1
  121. package/vscode/src/vs/workbench/contrib/chat/browser/chatImageCarouselService.js +1 -1
  122. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.js +53 -20
  123. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.js +2 -2
  124. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.d.ts +4 -0
  125. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.js +131 -61
  126. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/media/chatModelsWidget.css +22 -0
  127. package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.d.ts +23 -3
  128. package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +91 -15
  129. package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +30 -30
  130. package/vscode/src/vs/workbench/contrib/chat/browser/chatRepoInfo.js +2 -2
  131. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.js +23 -21
  132. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.js +10 -10
  133. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupGrowthSession.js +6 -6
  134. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.js +29 -28
  135. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.js +14 -14
  136. package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.js +19 -19
  137. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.d.ts +15 -4
  138. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.js +203 -163
  139. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.d.ts +1 -3
  140. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.js +31 -54
  141. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusItemService.d.ts +1 -0
  142. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/media/chatStatus.css +88 -0
  143. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipCatalog.js +19 -19
  144. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.js +2 -2
  145. package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.js +4 -4
  146. package/vscode/src/vs/workbench/contrib/chat/browser/claudePluginRecommendations.js +17 -4
  147. package/vscode/src/vs/workbench/contrib/chat/browser/contextContrib/chatContext.contribution.d.ts +8 -0
  148. package/vscode/src/vs/workbench/contrib/chat/browser/contextContrib/chatContext.contribution.js +91 -0
  149. package/vscode/src/vs/workbench/contrib/chat/browser/copilotCliEventsUri.d.ts +52 -0
  150. package/vscode/src/vs/workbench/contrib/chat/browser/copilotCliEventsUri.js +82 -0
  151. package/vscode/src/vs/workbench/contrib/chat/browser/defaultModelContribution.d.ts +21 -1
  152. package/vscode/src/vs/workbench/contrib/chat/browser/defaultModelContribution.js +55 -18
  153. package/vscode/src/vs/workbench/contrib/chat/browser/enablementActions.js +4 -4
  154. package/vscode/src/vs/workbench/contrib/chat/browser/enablementStatusWidget.js +2 -2
  155. package/vscode/src/vs/workbench/contrib/chat/browser/hasByokModelsContribution.d.ts +51 -0
  156. package/vscode/src/vs/workbench/contrib/chat/browser/hasByokModelsContribution.js +106 -0
  157. package/vscode/src/vs/workbench/contrib/chat/browser/languageModelsConfigurationService.js +4 -2
  158. package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackEditorActions.js +4 -4
  159. package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackEditorContribution.js +5 -5
  160. package/vscode/src/vs/workbench/contrib/chat/browser/pluginAutoUpdate.d.ts +38 -0
  161. package/vscode/src/vs/workbench/contrib/chat/browser/pluginAutoUpdate.js +59 -0
  162. package/vscode/src/vs/workbench/contrib/chat/browser/pluginGitCommandService.js +3 -3
  163. package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.js +25 -25
  164. package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.js +15 -15
  165. package/vscode/src/vs/workbench/contrib/chat/browser/pluginUrlHandler.js +6 -6
  166. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +6 -6
  167. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.js +27 -27
  168. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.js +3 -3
  169. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +2 -2
  170. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptFileContributions.js +4 -6
  171. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +2 -2
  172. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.js +8 -8
  173. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.js +7 -7
  174. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.js +3 -3
  175. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/skillActions.js +3 -3
  176. package/vscode/src/vs/workbench/contrib/chat/browser/promptsDebugContribution.js +20 -20
  177. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.js +39 -39
  178. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.d.ts +1 -0
  179. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.js +38 -28
  180. package/vscode/src/vs/workbench/contrib/chat/browser/tools/renameTool.js +5 -7
  181. package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolResultCompressorService.d.ts +5 -1
  182. package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolResultCompressorService.js +106 -7
  183. package/vscode/src/vs/workbench/contrib/chat/browser/tools/usagesTool.js +6 -8
  184. package/vscode/src/vs/workbench/contrib/chat/browser/utilityModelContribution.d.ts +28 -0
  185. package/vscode/src/vs/workbench/contrib/chat/browser/utilityModelContribution.js +75 -0
  186. package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +5 -5
  187. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/{toolInvocationParts/chatToolOutputStateCache.d.ts → chatOutputPartStateCache.d.ts} +5 -6
  188. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/{toolInvocationParts/chatToolOutputStateCache.js → chatOutputPartStateCache.js} +19 -11
  189. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatQueuePickerActionItem.js +9 -9
  190. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/agentHostInputCompletions.js +58 -26
  191. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.js +9 -9
  192. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorContrib.js +1 -1
  193. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorHover.js +1 -1
  194. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/chatQuick.js +1 -1
  195. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditor.js +1 -1
  196. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.js +18 -9
  197. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewTitleControl.js +2 -2
  198. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.js +13 -5
  199. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceTelemetry.js +6 -2
  200. package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.js +6 -6
  201. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.js +19 -18
  202. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +18 -18
  203. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/PromptHeaderDefinitionProvider.js +1 -2
  204. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.js +5 -5
  205. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +6 -7
  206. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.js +14 -15
  207. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.js +155 -156
  208. package/vscode/src/vs/workbench/contrib/chat/common/tools/copilotToolIds.d.ts +6 -0
  209. package/vscode/src/vs/workbench/contrib/chat/common/tools/copilotToolIds.js +12 -0
  210. package/vscode/src/vs/workbench/contrib/chat/common/tools/toolResultCompressor.d.ts +88 -0
  211. package/vscode/src/vs/workbench/contrib/chat/common/tools/toolResultCompressor.js +25 -0
  212. package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +1 -1
  213. package/vscode/src/vs/workbench/contrib/imageCarousel/browser/imageCarousel.contribution.d.ts +1 -0
  214. package/vscode/src/vs/workbench/contrib/imageCarousel/browser/imageCarousel.contribution.js +237 -0
  215. package/vscode/src/vs/workbench/contrib/imageCarousel/browser/imageCarouselEditor.d.ts +66 -0
  216. package/vscode/src/vs/workbench/contrib/imageCarousel/browser/imageCarouselEditor.js +600 -0
  217. package/vscode/src/vs/workbench/contrib/imageCarousel/browser/imageCarouselEditorInput.d.ts +18 -0
  218. package/vscode/src/vs/workbench/contrib/imageCarousel/browser/imageCarouselEditorInput.js +47 -0
  219. package/vscode/src/vs/workbench/contrib/imageCarousel/browser/imageCarouselTypes.d.ts +22 -0
  220. package/vscode/src/vs/workbench/contrib/imageCarousel/browser/imageCarouselTypes.js +7 -0
  221. package/vscode/src/vs/workbench/contrib/imageCarousel/browser/media/imageCarousel.css +298 -0
  222. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +15 -15
  223. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatDefaultModel.js +2 -2
  224. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +4 -4
  225. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpPromptArgumentPick.js +14 -14
  226. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chat/notebookChatUtils.js +1 -1
  227. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/cellChatActions.js +10 -10
  228. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebook.chat.contribution.js +5 -5
  229. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +1 -1
  230. package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.js +7 -7
  231. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +16 -16
  232. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +20 -20
  233. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +1 -1
  234. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +3 -3
  235. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalLastCommandTool.js +3 -3
  236. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.d.ts +12 -1
  237. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.js +78 -7
  238. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.js +3 -3
  239. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/killTerminalTool.js +3 -3
  240. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.js +2 -2
  241. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sendToTerminalTool.js +15 -11
  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 -9
  244. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/runTaskTool.js +14 -16
  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/browser/tools/terminalCommandParser.d.ts +60 -0
  247. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalCommandParser.js +286 -0
  248. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalOutputCache.d.ts +24 -0
  249. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalOutputCache.js +285 -0
  250. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalOutputCompressor.d.ts +19 -12
  251. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalOutputCompressor.js +415 -47
  252. package/vscode/src/vs/workbench/services/agentHost/common/agentHostFileSystemService.d.ts +2 -7
  253. package/vscode/src/vs/workbench/services/agentHost/common/agentHostFileSystemService.js +1 -1
  254. package/vscode/src/vs/base/common/defaultAccount.d.ts +0 -69
  255. package/vscode/src/vs/base/common/defaultAccount.js +0 -12
  256. package/vscode/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.d.ts +0 -15
  257. package/vscode/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.js +0 -85
@@ -5,8 +5,9 @@ import { revive } from '@codingame/monaco-vscode-api/vscode/vs/base/common/marsh
5
5
  import { URI } from '@codingame/monaco-vscode-api/vscode/vs/base/common/uri';
6
6
  import { generateUuid } from '@codingame/monaco-vscode-api/vscode/vs/base/common/uuid';
7
7
  import { localize2, localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
8
- import { registerAction2, Action2, MenuId } from '@codingame/monaco-vscode-api/vscode/vs/platform/actions/common/actions';
8
+ import { Action2, MenuId } from '@codingame/monaco-vscode-api/vscode/vs/platform/actions/common/actions';
9
9
  import { ContextKeyExpr } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey';
10
+ import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
10
11
  import { ChatContextKeys, ChatContextKeyExprs } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/actions/chatContextKeys';
11
12
  import { ResponseModelState } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService/chatService';
12
13
  import { IChatService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService/chatService.service';
@@ -17,205 +18,210 @@ import { CHAT_CATEGORY } from '@codingame/monaco-vscode-api/vscode/vs/workbench/
17
18
  import { ChatViewPaneTarget } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat';
18
19
  import { IChatWidgetService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat.service';
19
20
 
20
- function registerChatForkActions() {
21
- registerAction2(class ForkConversationAction extends Action2 {
22
- constructor() {
23
- super({
24
- id: "workbench.action.chat.forkConversation",
25
- title: ( localize2(4996, "Fork Conversation")),
26
- tooltip: ( localize2(4997, "Fork conversation from this point")),
27
- f1: false,
28
- category: CHAT_CATEGORY,
29
- icon: Codicon.repoForked,
30
- precondition: ChatContextKeys.enabled,
31
- menu: [{
32
- id: MenuId.ChatMessageCheckpoint,
33
- group: "navigation",
34
- order: 3,
35
- when: ( ContextKeyExpr.and(ChatContextKeys.isRequest, ( ChatContextKeys.isFirstRequest.negate()), ( ContextKeyExpr.or(( ContextKeyExpr.or(( ChatContextKeys.lockedToCodingAgent.negate()), ChatContextKeyExprs.isAgentHostSession)), ChatContextKeys.chatSessionSupportsFork))))
36
- }]
37
- });
38
- this.pendingFork = ( new Map());
39
- }
40
- async run(accessor, ...args) {
41
- const chatWidgetService = accessor.get(IChatWidgetService);
42
- const chatService = accessor.get(IChatService);
43
- const chatSessionsService = accessor.get(IChatSessionsService);
44
- const forkedTitlePrefix = ( localize(4998, "Forked: "));
45
- if (URI.isUri(args[0])) {
46
- const sourceSessionResource = args[0];
47
- const contentProviderSchemes = chatSessionsService.getContentProviderSchemes();
48
- if (contentProviderSchemes.includes(getChatSessionType(sourceSessionResource))) {
49
- return await this.forkContributedChatSession(
50
- sourceSessionResource,
51
- undefined,
52
- false,
53
- chatSessionsService,
54
- chatWidgetService
55
- );
56
- }
57
- const chatModel = chatService.getSession(sourceSessionResource);
58
- if (!chatModel) {
59
- return;
60
- }
61
- const serializedData = chatModel.toJSON();
62
- if (serializedData.requests.length === 0) {
63
- return;
64
- }
65
- const cleanData = revive(JSON.parse(JSON.stringify(serializedData)));
66
- cleanData.sessionId = generateUuid();
67
- const forkTimestamp = Date.now();
68
- cleanData.creationDate = forkTimestamp;
69
- cleanData.customTitle = chatModel.title.startsWith(forkedTitlePrefix) ? chatModel.title : ( localize(4999, "Forked: {0}", chatModel.title));
70
- for (const [index, req] of cleanData.requests.entries()) {
71
- req.shouldBeRemovedOnSend = undefined;
72
- req.isHidden = undefined;
73
- req.requestId = generateUuid();
74
- req.responseId = req.responseId ? generateUuid() : undefined;
75
- req.timestamp = forkTimestamp + index;
76
- if (req.response) {
77
- req.modelState = {
78
- value: ResponseModelState.Complete,
79
- completedAt: forkTimestamp + index
80
- };
81
- }
82
- }
83
- const modelRef = chatService.loadSessionFromData(cleanData, "ChatForkActions#forkCleanSession");
84
- const newSessionResource = modelRef.object.sessionResource;
85
- setTimeout(async () => {
86
- try {
87
- await chatWidgetService.openSession(newSessionResource, ChatViewPaneTarget);
88
- } finally {
89
- modelRef.dispose();
90
- }
91
- }, 0);
92
- return;
93
- }
94
- const arg = args[0];
95
- let item = isChatTreeItem(arg) ? arg : isChatTreeItem(arg?.element) ? arg.element : isChatTreeItem(arg?.context) ? arg.context : isChatTreeItem(arg?.item) ? arg.item : undefined;
96
- const widget = (item && chatWidgetService.getWidgetBySessionResource(item.sessionResource)) || chatWidgetService.lastFocusedWidget;
97
- if (!isResponseVM(item) && !isRequestVM(item)) {
98
- item = widget?.getFocus();
99
- }
100
- if (!item) {
101
- return;
102
- }
103
- const sessionResource = widget?.viewModel?.sessionResource ?? (isChatTreeItem(item) ? item.sessionResource : undefined);
104
- if (!sessionResource) {
105
- return;
106
- }
107
- const targetRequestId = isRequestVM(item) ? item.id : isResponseVM(item) ? item.requestId : undefined;
108
- if (!targetRequestId) {
109
- return;
110
- }
21
+ class ForkConversationAction extends Action2 {
22
+ constructor() {
23
+ super({
24
+ id: "workbench.action.chat.forkConversation",
25
+ title: ( localize2(5019, "Fork Conversation")),
26
+ tooltip: ( localize2(5020, "Fork conversation from this point")),
27
+ f1: false,
28
+ category: CHAT_CATEGORY,
29
+ icon: Codicon.repoForked,
30
+ precondition: ChatContextKeys.enabled,
31
+ menu: [{
32
+ id: MenuId.ChatMessageCheckpoint,
33
+ group: "navigation",
34
+ order: 3,
35
+ when: ( ContextKeyExpr.and(ChatContextKeys.isRequest, ( ChatContextKeys.isFirstRequest.negate()), ( ContextKeyExpr.or(( ContextKeyExpr.or(( ChatContextKeys.lockedToCodingAgent.negate()), ChatContextKeyExprs.isAgentHostSession)), ChatContextKeys.chatSessionSupportsFork))))
36
+ }]
37
+ });
38
+ this.pendingFork = ( new Map());
39
+ }
40
+ async run(accessor, ...args) {
41
+ const chatWidgetService = accessor.get(IChatWidgetService);
42
+ const instantiationService = accessor.get(IInstantiationService);
43
+ const chatService = accessor.get(IChatService);
44
+ const chatSessionsService = accessor.get(IChatSessionsService);
45
+ const forkedTitlePrefix = ( localize(5021, "Forked: "));
46
+ if (URI.isUri(args[0])) {
47
+ const sourceSessionResource = args[0];
111
48
  const contentProviderSchemes = chatSessionsService.getContentProviderSchemes();
112
- if (contentProviderSchemes.includes(getChatSessionType(sessionResource))) {
113
- const contributedSession = await chatSessionsService.getOrCreateChatSession(sessionResource, CancellationToken.None);
114
- let request = contributedSession.history.find(entry => entry.type === "request" && entry.id === targetRequestId);
115
- if (!request) {
116
- const chatModel = chatService.getSession(sessionResource);
117
- const serializedData = chatModel?.toJSON();
118
- for (const [, entry] of serializedData?.requests.entries() ?? []) {
119
- if (entry.requestId === targetRequestId) {
120
- request = {
121
- id: entry.requestId,
122
- type: "request",
123
- prompt: typeof entry.message === "string" ? entry.message : entry.message.text,
124
- participant: entry.agent?.id ?? "",
125
- variableData: entry.variableData,
126
- modelId: entry.modelId
127
- };
128
- break;
129
- }
130
- }
131
- }
132
- return await this.forkContributedChatSession(sessionResource, request, true, chatSessionsService, chatWidgetService);
49
+ if (contentProviderSchemes.includes(getChatSessionType(sourceSessionResource))) {
50
+ return await this.forkContributedChatSession(
51
+ sourceSessionResource,
52
+ undefined,
53
+ false,
54
+ chatSessionsService,
55
+ chatWidgetService
56
+ );
133
57
  }
134
- const chatModel = chatService.getSession(sessionResource);
58
+ const chatModel = chatService.getSession(sourceSessionResource);
135
59
  if (!chatModel) {
136
60
  return;
137
61
  }
138
62
  const serializedData = chatModel.toJSON();
139
- const isRequestItem = isRequestVM(item);
140
- let targetIndex = -1;
141
- if (widget?.viewModel) {
142
- let requestIndex = -1;
143
- for (const entry of widget.viewModel.getItems()) {
144
- if (isRequestVM(entry)) {
145
- requestIndex += 1;
146
- }
147
- if (entry.id === item?.id) {
148
- targetIndex = isRequestVM(entry) ? Math.max(0, requestIndex - 1) : requestIndex;
149
- break;
150
- }
151
- }
152
- }
153
- if (targetIndex < 0) {
154
- const requestIndex = chatModel.getRequests().findIndex(r => r.id === targetRequestId);
155
- targetIndex = isRequestItem ? Math.max(0, requestIndex - 1) : requestIndex;
156
- }
157
- if (targetIndex < 0) {
63
+ if (serializedData.requests.length === 0) {
158
64
  return;
159
65
  }
160
- const forkedData = revive(JSON.parse(JSON.stringify({
161
- ...serializedData,
162
- requests: serializedData.requests.slice(0, targetIndex + 1)
163
- })));
164
- forkedData.sessionId = generateUuid();
165
- const forkedTimestamp = Date.now();
166
- forkedData.creationDate = forkedTimestamp;
167
- forkedData.customTitle = chatModel.title.startsWith(forkedTitlePrefix) ? chatModel.title : ( localize(4999, "Forked: {0}", chatModel.title));
168
- for (const [index, req] of forkedData.requests.entries()) {
66
+ const cleanData = revive(JSON.parse(JSON.stringify(serializedData)));
67
+ cleanData.sessionId = generateUuid();
68
+ const forkTimestamp = Date.now();
69
+ cleanData.creationDate = forkTimestamp;
70
+ cleanData.customTitle = chatModel.title.startsWith(forkedTitlePrefix) ? chatModel.title : ( localize(5022, "Forked: {0}", chatModel.title));
71
+ for (const [index, req] of cleanData.requests.entries()) {
169
72
  req.shouldBeRemovedOnSend = undefined;
170
73
  req.isHidden = undefined;
171
74
  req.requestId = generateUuid();
172
75
  req.responseId = req.responseId ? generateUuid() : undefined;
173
- req.timestamp = forkedTimestamp + index;
76
+ req.timestamp = forkTimestamp + index;
174
77
  if (req.response) {
175
78
  req.modelState = {
176
79
  value: ResponseModelState.Complete,
177
- completedAt: forkedTimestamp + index
80
+ completedAt: forkTimestamp + index
178
81
  };
179
82
  }
180
83
  }
181
- const modelRef = chatService.loadSessionFromData(forkedData, "ChatForkActions#forkSession");
182
- if (!modelRef) {
183
- return;
84
+ const modelRef = chatService.loadSessionFromData(cleanData, "ChatForkActions#forkCleanSession");
85
+ const newSessionResource = modelRef.object.sessionResource;
86
+ setTimeout(async () => {
87
+ try {
88
+ await this._openForkedSession(instantiationService, chatModel.sessionResource, newSessionResource);
89
+ } finally {
90
+ modelRef.dispose();
91
+ }
92
+ }, 0);
93
+ return;
94
+ }
95
+ const arg = args[0];
96
+ let item = isChatTreeItem(arg) ? arg : isChatTreeItem(arg?.element) ? arg.element : isChatTreeItem(arg?.context) ? arg.context : isChatTreeItem(arg?.item) ? arg.item : undefined;
97
+ const widget = (item && chatWidgetService.getWidgetBySessionResource(item.sessionResource)) || chatWidgetService.lastFocusedWidget;
98
+ if (!isResponseVM(item) && !isRequestVM(item)) {
99
+ item = widget?.getFocus();
100
+ }
101
+ if (!item) {
102
+ return;
103
+ }
104
+ const sessionResource = widget?.viewModel?.sessionResource ?? (isChatTreeItem(item) ? item.sessionResource : undefined);
105
+ if (!sessionResource) {
106
+ return;
107
+ }
108
+ const targetRequestId = isRequestVM(item) ? item.id : isResponseVM(item) ? item.requestId : undefined;
109
+ if (!targetRequestId) {
110
+ return;
111
+ }
112
+ const contentProviderSchemes = chatSessionsService.getContentProviderSchemes();
113
+ if (contentProviderSchemes.includes(getChatSessionType(sessionResource))) {
114
+ const contributedSession = await chatSessionsService.getOrCreateChatSession(sessionResource, CancellationToken.None);
115
+ let request = contributedSession.history.find(entry => entry.type === "request" && entry.id === targetRequestId);
116
+ if (!request) {
117
+ const chatModel = chatService.getSession(sessionResource);
118
+ const serializedData = chatModel?.toJSON();
119
+ for (const [, entry] of serializedData?.requests.entries() ?? []) {
120
+ if (entry.requestId === targetRequestId) {
121
+ request = {
122
+ id: entry.requestId,
123
+ type: "request",
124
+ prompt: typeof entry.message === "string" ? entry.message : entry.message.text,
125
+ participant: entry.agent?.id ?? "",
126
+ variableData: entry.variableData,
127
+ modelId: entry.modelId
128
+ };
129
+ break;
130
+ }
131
+ }
132
+ }
133
+ return await this.forkContributedChatSession(sessionResource, request, true, chatSessionsService, chatWidgetService);
134
+ }
135
+ const chatModel = chatService.getSession(sessionResource);
136
+ if (!chatModel) {
137
+ return;
138
+ }
139
+ const serializedData = chatModel.toJSON();
140
+ const isRequestItem = isRequestVM(item);
141
+ let targetIndex = -1;
142
+ if (widget?.viewModel) {
143
+ let requestIndex = -1;
144
+ for (const entry of widget.viewModel.getItems()) {
145
+ if (isRequestVM(entry)) {
146
+ requestIndex += 1;
147
+ }
148
+ if (entry.id === item?.id) {
149
+ targetIndex = isRequestVM(entry) ? Math.max(0, requestIndex - 1) : requestIndex;
150
+ break;
151
+ }
184
152
  }
185
- try {
186
- const newSessionResource = modelRef.object.sessionResource;
187
- await chatWidgetService.openSession(newSessionResource, ChatViewPaneTarget);
188
- } finally {
189
- modelRef.dispose();
153
+ }
154
+ if (targetIndex < 0) {
155
+ const requestIndex = chatModel.getRequests().findIndex(r => r.id === targetRequestId);
156
+ targetIndex = isRequestItem ? Math.max(0, requestIndex - 1) : requestIndex;
157
+ }
158
+ if (targetIndex < 0) {
159
+ return;
160
+ }
161
+ const forkedData = revive(JSON.parse(JSON.stringify({
162
+ ...serializedData,
163
+ requests: serializedData.requests.slice(0, targetIndex + 1)
164
+ })));
165
+ forkedData.sessionId = generateUuid();
166
+ const forkedTimestamp = Date.now();
167
+ forkedData.creationDate = forkedTimestamp;
168
+ forkedData.customTitle = chatModel.title.startsWith(forkedTitlePrefix) ? chatModel.title : ( localize(5022, "Forked: {0}", chatModel.title));
169
+ for (const [index, req] of forkedData.requests.entries()) {
170
+ req.shouldBeRemovedOnSend = undefined;
171
+ req.isHidden = undefined;
172
+ req.requestId = generateUuid();
173
+ req.responseId = req.responseId ? generateUuid() : undefined;
174
+ req.timestamp = forkedTimestamp + index;
175
+ if (req.response) {
176
+ req.modelState = {
177
+ value: ResponseModelState.Complete,
178
+ completedAt: forkedTimestamp + index
179
+ };
190
180
  }
191
181
  }
192
- async forkContributedChatSession(
182
+ const modelRef = chatService.loadSessionFromData(forkedData, "ChatForkActions#forkSession");
183
+ if (!modelRef) {
184
+ return;
185
+ }
186
+ try {
187
+ const newSessionResource = modelRef.object.sessionResource;
188
+ await this._openForkedSession(instantiationService, chatModel.sessionResource, newSessionResource);
189
+ } finally {
190
+ modelRef.dispose();
191
+ }
192
+ }
193
+ async _openForkedSession(instantiationService, parentSessionResource, forkedSessionResource) {
194
+ await instantiationService.invokeFunction(async accessor => {
195
+ const chatWidgetService = accessor.get(IChatWidgetService);
196
+ await chatWidgetService.openSession(forkedSessionResource, ChatViewPaneTarget);
197
+ });
198
+ }
199
+ async forkContributedChatSession(
200
+ sourceSessionResource,
201
+ request,
202
+ openForkedSessionImmediately,
203
+ chatSessionsService,
204
+ chatWidgetService
205
+ ) {
206
+ const pendingKey = `${( sourceSessionResource.toString())}@${request?.id ?? "full"}`;
207
+ const pending = this.pendingFork.get(pendingKey);
208
+ if (pending) {
209
+ return pending;
210
+ }
211
+ const forkPromise = forkContributedChatSession(
193
212
  sourceSessionResource,
194
213
  request,
195
214
  openForkedSessionImmediately,
196
215
  chatSessionsService,
197
216
  chatWidgetService
198
- ) {
199
- const pendingKey = `${( sourceSessionResource.toString())}@${request?.id ?? "full"}`;
200
- const pending = this.pendingFork.get(pendingKey);
201
- if (pending) {
202
- return pending;
203
- }
204
- const forkPromise = forkContributedChatSession(
205
- sourceSessionResource,
206
- request,
207
- openForkedSessionImmediately,
208
- chatSessionsService,
209
- chatWidgetService
210
- );
211
- this.pendingFork.set(pendingKey, forkPromise);
212
- try {
213
- await forkPromise;
214
- } finally {
215
- this.pendingFork.delete(pendingKey);
216
- }
217
+ );
218
+ this.pendingFork.set(pendingKey, forkPromise);
219
+ try {
220
+ await forkPromise;
221
+ } finally {
222
+ this.pendingFork.delete(pendingKey);
217
223
  }
218
- });
224
+ }
219
225
  }
220
226
  async function forkContributedChatSession(
221
227
  sourceSessionResource,
@@ -239,4 +245,4 @@ async function forkContributedChatSession(
239
245
  }
240
246
  }
241
247
 
242
- export { registerChatForkActions };
248
+ export { ForkConversationAction };
@@ -17,7 +17,7 @@ import { ACTIVE_GROUP } from '@codingame/monaco-vscode-api/vscode/vs/workbench/s
17
17
 
18
18
  const defaultFileName = "chat.json";
19
19
  const filters = [{
20
- name: ( localize(5000, "Chat Session")),
20
+ name: ( localize(5023, "Chat Session")),
21
21
  extensions: ["json"]
22
22
  }];
23
23
  function registerChatExportActions() {
@@ -26,7 +26,7 @@ function registerChatExportActions() {
26
26
  super({
27
27
  id: "workbench.action.chat.export",
28
28
  category: CHAT_CATEGORY,
29
- title: ( localize2(5001, "Export Chat...")),
29
+ title: ( localize2(5024, "Export Chat...")),
30
30
  precondition: ChatContextKeys.enabled,
31
31
  f1: true
32
32
  });
@@ -63,7 +63,7 @@ function registerChatExportActions() {
63
63
  constructor() {
64
64
  super({
65
65
  id: "workbench.action.chat.import",
66
- title: ( localize2(5002, "Import Chat...")),
66
+ title: ( localize2(5025, "Import Chat...")),
67
67
  category: CHAT_CATEGORY,
68
68
  precondition: ChatContextKeys.enabled,
69
69
  f1: true
@@ -21,7 +21,7 @@ class ManageLanguageModelAuthenticationAction extends Action2 {
21
21
  constructor() {
22
22
  super({
23
23
  id: ManageLanguageModelAuthenticationAction.ID,
24
- title: ( localize2(5003, "Manage Language Model Access...")),
24
+ title: ( localize2(5026, "Manage Language Model Access...")),
25
25
  category: CHAT_CATEGORY,
26
26
  precondition: ChatContextKeys.enabled,
27
27
  menu: [{
@@ -91,9 +91,9 @@ class ManageLanguageModelAuthenticationAction extends Action2 {
91
91
  if (extensionAuth.size === 0) {
92
92
  dialogService.prompt({
93
93
  type: "info",
94
- message: ( localize(5004, "No language models requiring authentication found.")),
94
+ message: ( localize(5027, "No language models requiring authentication found.")),
95
95
  detail: ( localize(
96
- 5005,
96
+ 5028,
97
97
  "There are currently no language models that require authentication."
98
98
  ))
99
99
  });
@@ -108,10 +108,10 @@ class ManageLanguageModelAuthenticationAction extends Action2 {
108
108
  items.push({
109
109
  type: "separator",
110
110
  id: ownerId,
111
- label: ( localize(5006, "{0}", extension.displayName || extension.name)),
111
+ label: ( localize(5029, "{0}", extension.displayName || extension.name)),
112
112
  buttons: [{
113
113
  iconClass: ThemeIcon.asClassName(Codicon.info),
114
- tooltip: ( localize(5007, "Open Extension"))
114
+ tooltip: ( localize(5030, "Open Extension"))
115
115
  }]
116
116
  });
117
117
  let addedTrustedSeparator = false;
@@ -120,7 +120,7 @@ class ManageLanguageModelAuthenticationAction extends Action2 {
120
120
  if (allowedExt.trusted && !addedTrustedSeparator) {
121
121
  items.push({
122
122
  type: "separator",
123
- label: ( localize(5008, "Trusted by Microsoft"))
123
+ label: ( localize(5031, "Trusted by Microsoft"))
124
124
  });
125
125
  addedTrustedSeparator = true;
126
126
  }
@@ -133,15 +133,15 @@ class ManageLanguageModelAuthenticationAction extends Action2 {
133
133
  disabled: allowedExt.trusted,
134
134
  buttons: [{
135
135
  iconClass: ThemeIcon.asClassName(Codicon.info),
136
- tooltip: ( localize(5007, "Open Extension"))
136
+ tooltip: ( localize(5030, "Open Extension"))
137
137
  }]
138
138
  });
139
139
  }
140
140
  } else {
141
141
  items.push({
142
- label: ( localize(5009, "No extensions have access")),
142
+ label: ( localize(5032, "No extensions have access")),
143
143
  description: ( localize(
144
- 5010,
144
+ 5033,
145
145
  "No extensions are currently allowed to use models from {0}",
146
146
  ownerId
147
147
  )),
@@ -164,8 +164,8 @@ class ManageLanguageModelAuthenticationAction extends Action2 {
164
164
  void extensionsWorkbenchService.open(extId);
165
165
  }
166
166
  },
167
- title: ( localize(5011, "Manage Language Model Access")),
168
- placeHolder: ( localize(5012, "Choose which extensions can access language models"))
167
+ title: ( localize(5034, "Manage Language Model Access")),
168
+ placeHolder: ( localize(5035, "Choose which extensions can access language models"))
169
169
  });
170
170
  if (!result) {
171
171
  return;
@@ -188,7 +188,7 @@ class ConfigureLanguageModelsGroupAction extends Action2 {
188
188
  constructor() {
189
189
  super({
190
190
  id: "lm.addLanguageModelsProviderGroup",
191
- title: ( localize(5013, "Add Language Models Group"))
191
+ title: ( localize(5036, "Add Language Models Group"))
192
192
  });
193
193
  }
194
194
  async run(accessor, languageModelsProviderGroup) {
@@ -208,7 +208,7 @@ class MigrateLanguageModelsGroupAction extends Action2 {
208
208
  constructor() {
209
209
  super({
210
210
  id: "lm.migrateLanguageModelsProviderGroup",
211
- title: ( localize(5014, "Migrate Language Models Group"))
211
+ title: ( localize(5037, "Migrate Language Models Group"))
212
212
  });
213
213
  }
214
214
  async run(accessor, languageModelsProviderGroup) {
@@ -28,7 +28,7 @@ function registerMoveActions() {
28
28
  constructor() {
29
29
  super({
30
30
  id: "workbench.action.chat.openInEditor",
31
- title: ( localize2(5015, "Move Chat into Editor Area")),
31
+ title: ( localize2(5038, "Move Chat into Editor Area")),
32
32
  category: CHAT_CATEGORY,
33
33
  precondition: ChatContextKeys.enabled,
34
34
  f1: true,
@@ -53,7 +53,7 @@ function registerMoveActions() {
53
53
  constructor() {
54
54
  super({
55
55
  id: "workbench.action.chat.openInNewWindow",
56
- title: ( localize2(5016, "Move Chat into New Window")),
56
+ title: ( localize2(5039, "Move Chat into New Window")),
57
57
  category: CHAT_CATEGORY,
58
58
  precondition: ChatContextKeys.enabled,
59
59
  f1: true,
@@ -78,7 +78,7 @@ function registerMoveActions() {
78
78
  constructor() {
79
79
  super({
80
80
  id: "workbench.action.chat.openInSidebar",
81
- title: ( localize2(5017, "Move Chat into Side Bar")),
81
+ title: ( localize2(5040, "Move Chat into Side Bar")),
82
82
  category: CHAT_CATEGORY,
83
83
  precondition: ChatContextKeys.enabled,
84
84
  f1: true
@@ -101,9 +101,9 @@ function registerMoveActions() {
101
101
  });
102
102
  }
103
103
  [MenuId.EditorTitle, MenuId.CompactWindowEditorTitle].forEach(id => {
104
- appendOpenChatInViewMenuItem(id, ( localize(5018, "Move Chat into Secondary Side Bar")), Codicon.layoutSidebarRightDock, ( ChatContextKeys.panelLocation.isEqualTo(ViewContainerLocation.AuxiliaryBar)));
105
- appendOpenChatInViewMenuItem(id, ( localize(5019, "Move Chat into Primary Side Bar")), Codicon.layoutSidebarLeftDock, ( ChatContextKeys.panelLocation.isEqualTo(ViewContainerLocation.Sidebar)));
106
- appendOpenChatInViewMenuItem(id, ( localize(5020, "Move Chat into Panel")), Codicon.layoutPanelDock, ( ChatContextKeys.panelLocation.isEqualTo(ViewContainerLocation.Panel)));
104
+ appendOpenChatInViewMenuItem(id, ( localize(5041, "Move Chat into Secondary Side Bar")), Codicon.layoutSidebarRightDock, ( ChatContextKeys.panelLocation.isEqualTo(ViewContainerLocation.AuxiliaryBar)));
105
+ appendOpenChatInViewMenuItem(id, ( localize(5042, "Move Chat into Primary Side Bar")), Codicon.layoutSidebarLeftDock, ( ChatContextKeys.panelLocation.isEqualTo(ViewContainerLocation.Sidebar)));
106
+ appendOpenChatInViewMenuItem(id, ( localize(5043, "Move Chat into Panel")), Codicon.layoutPanelDock, ( ChatContextKeys.panelLocation.isEqualTo(ViewContainerLocation.Panel)));
107
107
  });
108
108
  }
109
109
  async function executeMoveToAction(accessor, moveTo, sessionResource) {
@@ -39,7 +39,7 @@ function isNewEditSessionActionContext(arg) {
39
39
  function registerNewChatActions() {
40
40
  MenuRegistry.appendMenuItem(MenuId.ViewTitle, {
41
41
  submenu: MenuId.ChatNewMenu,
42
- title: ( localize2(5021, "New Chat")),
42
+ title: ( localize2(5044, "New Chat")),
43
43
  icon: Codicon.plus,
44
44
  when: ( ContextKeyExpr.equals("view", ChatViewId)),
45
45
  group: "navigation",
@@ -50,7 +50,7 @@ function registerNewChatActions() {
50
50
  constructor() {
51
51
  super({
52
52
  id: "workbench.action.chatEditor.newChat",
53
- title: ( localize2(5022, "New Chat")),
53
+ title: ( localize2(5045, "New Chat")),
54
54
  icon: Codicon.plus,
55
55
  f1: false,
56
56
  precondition: ChatContextKeys.enabled
@@ -64,7 +64,7 @@ function registerNewChatActions() {
64
64
  constructor() {
65
65
  super({
66
66
  id: ACTION_ID_NEW_CHAT,
67
- title: ( localize2(5021, "New Chat")),
67
+ title: ( localize2(5044, "New Chat")),
68
68
  category: CHAT_CATEGORY,
69
69
  icon: Codicon.plus,
70
70
  precondition: ( ContextKeyExpr.and(ChatContextKeys.enabled, ( ChatContextKeys.location.isEqualTo(ChatAgentLocation.Chat)))),
@@ -114,7 +114,7 @@ function registerNewChatActions() {
114
114
  constructor() {
115
115
  super({
116
116
  id: ACTION_ID_NEW_CHAT + variant.idSuffix,
117
- title: ( localize2(5021, "New Chat")),
117
+ title: ( localize2(5044, "New Chat")),
118
118
  category: CHAT_CATEGORY,
119
119
  icon: variant.icon,
120
120
  precondition: ( ContextKeyExpr.and(ChatContextKeys.enabled, ( ChatContextKeys.location.isEqualTo(ChatAgentLocation.Chat)))),
@@ -139,7 +139,7 @@ function registerNewChatActions() {
139
139
  constructor() {
140
140
  super({
141
141
  id: "workbench.action.chat.newLocalChat",
142
- title: ( localize2(5023, "New Local Chat")),
142
+ title: ( localize2(5046, "New Local Chat")),
143
143
  category: CHAT_CATEGORY,
144
144
  icon: Codicon.plus,
145
145
  precondition: ( ContextKeyExpr.and(ChatContextKeys.enabled, ( ChatContextKeys.location.isEqualTo(ChatAgentLocation.Chat)))),
@@ -155,7 +155,7 @@ function registerNewChatActions() {
155
155
  MenuRegistry.appendMenuItem(MenuId.ChatViewSessionTitleNavigationToolbar, {
156
156
  command: {
157
157
  id: ACTION_ID_NEW_CHAT,
158
- title: ( localize2(5024, "Go Back")),
158
+ title: ( localize2(5047, "Go Back")),
159
159
  icon: Codicon.arrowLeft
160
160
  },
161
161
  when: ( ChatContextKeys.agentSessionsViewerOrientation.notEqualsTo(AgentSessionsViewerOrientation.SideBySide)),
@@ -165,7 +165,7 @@ function registerNewChatActions() {
165
165
  MenuRegistry.appendMenuItem(MenuId.ChatTitleBarMenu, {
166
166
  command: {
167
167
  id: ACTION_ID_NEW_CHAT,
168
- title: ( localize2(5021, "New Chat"))
168
+ title: ( localize2(5044, "New Chat"))
169
169
  },
170
170
  when: ChatContextKeys.enabled,
171
171
  group: "b_new",
@@ -175,7 +175,7 @@ function registerNewChatActions() {
175
175
  constructor() {
176
176
  super({
177
177
  id: "workbench.action.chat.undoEdit",
178
- title: ( localize2(5025, "Undo Last Edit")),
178
+ title: ( localize2(5048, "Undo Last Edit")),
179
179
  category: CHAT_CATEGORY,
180
180
  icon: Codicon.discard,
181
181
  precondition: ( ContextKeyExpr.and(ChatContextKeys.chatEditingCanUndo, ChatContextKeys.enabled)),
@@ -197,7 +197,7 @@ function registerNewChatActions() {
197
197
  constructor() {
198
198
  super({
199
199
  id: "workbench.action.chat.redoEdit",
200
- title: ( localize2(5026, "Redo Last Edit")),
200
+ title: ( localize2(5049, "Redo Last Edit")),
201
201
  category: CHAT_CATEGORY,
202
202
  icon: Codicon.redo,
203
203
  precondition: ( ContextKeyExpr.and(ChatContextKeys.chatEditingCanRedo, ChatContextKeys.enabled)),
@@ -221,8 +221,8 @@ function registerNewChatActions() {
221
221
  constructor() {
222
222
  super({
223
223
  id: "workbench.action.chat.redoEdit2",
224
- title: ( localize2(5027, "Redo")),
225
- tooltip: ( localize2(5028, "Reapply discarded workspace changes and chat")),
224
+ title: ( localize2(5050, "Redo")),
225
+ tooltip: ( localize2(5051, "Reapply discarded workspace changes and chat")),
226
226
  category: CHAT_CATEGORY,
227
227
  precondition: ( ContextKeyExpr.and(ChatContextKeys.chatEditingCanRedo, ChatContextKeys.enabled)),
228
228
  f1: true,
@@ -269,7 +269,7 @@ async function runNewChatAction(accessor, context, executeCommandContext, sessio
269
269
  await clearChatSessionPreservingType(widget, viewsService, sessionType);
270
270
  widget.attachmentModel.clear(true);
271
271
  widget.focusInput();
272
- accessibilityService.alert(( localize(5029, "New chat")));
272
+ accessibilityService.alert(( localize(5052, "New chat")));
273
273
  if (!executeCommandContext) {
274
274
  return;
275
275
  }