@codingame/monaco-vscode-chat-service-override 29.1.1 → 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
@@ -133,11 +133,11 @@ const chatOutputRendererContributionSchema = {
133
133
  properties: {
134
134
  viewType: {
135
135
  type: "string",
136
- description: ( localize(6106, "Unique identifier for the renderer."))
136
+ description: ( localize(6154, "Unique identifier for the renderer."))
137
137
  },
138
138
  mimeTypes: {
139
139
  type: "array",
140
- description: ( localize(6107, "MIME types that this renderer can handle")),
140
+ description: ( localize(6155, "MIME types that this renderer can handle")),
141
141
  items: {
142
142
  type: "string"
143
143
  }
@@ -152,7 +152,7 @@ const chatOutputRenderContributionPoint = ExtensionsRegistry.registerExtensionPo
152
152
  }
153
153
  },
154
154
  jsonSchema: {
155
- description: ( localize(6108, "Contributes a renderer for specific MIME types in chat outputs")),
155
+ description: ( localize(6156, "Contributes a renderer for specific MIME types in chat outputs")),
156
156
  type: "array",
157
157
  items: chatOutputRendererContributionSchema
158
158
  }
@@ -29,10 +29,10 @@ import { ChatModeKind, ChatAgentLocation } from '@codingame/monaco-vscode-api/vs
29
29
  import { ChatViewContainerId, ChatViewId } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat';
30
30
  import { ChatViewPane } from './widgetHosts/viewPane/chatViewPane.js';
31
31
 
32
- const chatViewIcon = registerIcon("chat-view-icon", Codicon.chatSparkle, ( localize(6109, "View icon of the chat view.")));
32
+ const chatViewIcon = registerIcon("chat-view-icon", Codicon.chatSparkle, ( localize(6157, "View icon of the chat view.")));
33
33
  const chatViewContainer = ( Registry.as(Extensions.ViewContainersRegistry)).registerViewContainer({
34
34
  id: ChatViewContainerId,
35
- title: ( localize2(6110, "Chat")),
35
+ title: ( localize2(6158, "Chat")),
36
36
  icon: chatViewIcon,
37
37
  ctorDescriptor: ( new SyncDescriptor(ViewPaneContainer, [ChatViewContainerId, {
38
38
  mergeViewWithContainerWhenSingleView: true
@@ -49,13 +49,13 @@ const chatViewDescriptor = {
49
49
  containerIcon: chatViewContainer.icon,
50
50
  containerTitle: chatViewContainer.title.value,
51
51
  singleViewPaneContainerTitle: chatViewContainer.title.value,
52
- name: ( localize2(6110, "Chat")),
52
+ name: ( localize2(6158, "Chat")),
53
53
  canToggleVisibility: false,
54
54
  canMoveView: true,
55
55
  openCommandActionDescriptor: {
56
56
  id: ChatViewContainerId,
57
57
  title: chatViewContainer.title,
58
- mnemonicTitle: ( localize(6111, "&&Chat")),
58
+ mnemonicTitle: ( localize(6159, "&&Chat")),
59
59
  keybindings: {
60
60
  primary: KeyMod.CtrlCmd | KeyMod.Alt | KeyCode.KeyI,
61
61
  mac: {
@@ -71,7 +71,7 @@ const chatViewDescriptor = {
71
71
  const chatParticipantExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
72
72
  extensionPoint: "chatParticipants",
73
73
  jsonSchema: {
74
- description: ( localize(6112, "Contributes a chat participant")),
74
+ description: ( localize(6160, "Contributes a chat participant")),
75
75
  type: "array",
76
76
  items: {
77
77
  additionalProperties: false,
@@ -85,12 +85,12 @@ const chatParticipantExtensionPoint = ExtensionsRegistry.registerExtensionPoint(
85
85
  required: ["name", "id"],
86
86
  properties: {
87
87
  id: {
88
- description: ( localize(6113, "A unique id for this chat participant.")),
88
+ description: ( localize(6161, "A unique id for this chat participant.")),
89
89
  type: "string"
90
90
  },
91
91
  name: {
92
92
  description: ( localize(
93
- 6114,
93
+ 6162,
94
94
  "User-facing name for this chat participant. The user will use '@' with this name to invoke the participant. Name must not contain whitespace."
95
95
  )),
96
96
  type: "string",
@@ -98,37 +98,37 @@ const chatParticipantExtensionPoint = ExtensionsRegistry.registerExtensionPoint(
98
98
  },
99
99
  fullName: {
100
100
  markdownDescription: ( localize(
101
- 6115,
101
+ 6163,
102
102
  "The full name of this chat participant, which is shown as the label for responses coming from this participant. If not provided, {0} is used.",
103
103
  "`name`"
104
104
  )),
105
105
  type: "string"
106
106
  },
107
107
  description: {
108
- description: ( localize(6116, "A description of this chat participant, shown in the UI.")),
108
+ description: ( localize(6164, "A description of this chat participant, shown in the UI.")),
109
109
  type: "string"
110
110
  },
111
111
  isSticky: {
112
112
  description: ( localize(
113
- 6117,
113
+ 6165,
114
114
  "Whether invoking the command puts the chat into a persistent mode, where the command is automatically added to the chat input for the next message."
115
115
  )),
116
116
  type: "boolean"
117
117
  },
118
118
  sampleRequest: {
119
119
  description: ( localize(
120
- 6118,
120
+ 6166,
121
121
  "When the user clicks this participant in `/help`, this text will be submitted to the participant."
122
122
  )),
123
123
  type: "string"
124
124
  },
125
125
  when: {
126
- description: ( localize(6119, "A condition which must be true to enable this participant.")),
126
+ description: ( localize(6167, "A condition which must be true to enable this participant.")),
127
127
  type: "string"
128
128
  },
129
129
  disambiguation: {
130
130
  description: ( localize(
131
- 6120,
131
+ 6168,
132
132
  "Metadata to help with automatically routing user questions to this chat participant."
133
133
  )),
134
134
  type: "array",
@@ -146,21 +146,21 @@ const chatParticipantExtensionPoint = ExtensionsRegistry.registerExtensionPoint(
146
146
  properties: {
147
147
  category: {
148
148
  markdownDescription: ( localize(
149
- 6121,
149
+ 6169,
150
150
  "A detailed name for this category, e.g. `workspace_questions` or `web_questions`."
151
151
  )),
152
152
  type: "string"
153
153
  },
154
154
  description: {
155
155
  description: ( localize(
156
- 6122,
156
+ 6170,
157
157
  "A detailed description of the kinds of questions that are suitable for this chat participant."
158
158
  )),
159
159
  type: "string"
160
160
  },
161
161
  examples: {
162
162
  description: ( localize(
163
- 6123,
163
+ 6171,
164
164
  "A list of representative example questions that are suitable for this chat participant."
165
165
  )),
166
166
  type: "array"
@@ -170,7 +170,7 @@ const chatParticipantExtensionPoint = ExtensionsRegistry.registerExtensionPoint(
170
170
  },
171
171
  commands: {
172
172
  markdownDescription: ( localize(
173
- 6124,
173
+ 6172,
174
174
  "Commands available for this chat participant, which the user can invoke with a `/`."
175
175
  )),
176
176
  type: "array",
@@ -187,36 +187,36 @@ const chatParticipantExtensionPoint = ExtensionsRegistry.registerExtensionPoint(
187
187
  properties: {
188
188
  name: {
189
189
  description: ( localize(
190
- 6125,
190
+ 6173,
191
191
  "A short name by which this command is referred to in the UI, e.g. `fix` or `explain` for commands that fix an issue or explain code. The name should be unique among the commands provided by this participant."
192
192
  )),
193
193
  type: "string"
194
194
  },
195
195
  description: {
196
- description: ( localize(6126, "A description of this command.")),
196
+ description: ( localize(6174, "A description of this command.")),
197
197
  type: "string"
198
198
  },
199
199
  when: {
200
- description: ( localize(6127, "A condition which must be true to enable this command.")),
200
+ description: ( localize(6175, "A condition which must be true to enable this command.")),
201
201
  type: "string"
202
202
  },
203
203
  sampleRequest: {
204
204
  description: ( localize(
205
- 6128,
205
+ 6176,
206
206
  "When the user clicks this command in `/help`, this text will be submitted to the participant."
207
207
  )),
208
208
  type: "string"
209
209
  },
210
210
  isSticky: {
211
211
  description: ( localize(
212
- 6117,
212
+ 6165,
213
213
  "Whether invoking the command puts the chat into a persistent mode, where the command is automatically added to the chat input for the next message."
214
214
  )),
215
215
  type: "boolean"
216
216
  },
217
217
  disambiguation: {
218
218
  description: ( localize(
219
- 6129,
219
+ 6177,
220
220
  "Metadata to help with automatically routing user questions to this chat command."
221
221
  )),
222
222
  type: "array",
@@ -234,21 +234,21 @@ const chatParticipantExtensionPoint = ExtensionsRegistry.registerExtensionPoint(
234
234
  properties: {
235
235
  category: {
236
236
  markdownDescription: ( localize(
237
- 6130,
237
+ 6178,
238
238
  "A detailed name for this category, e.g. `workspace_questions` or `web_questions`."
239
239
  )),
240
240
  type: "string"
241
241
  },
242
242
  description: {
243
243
  description: ( localize(
244
- 6131,
244
+ 6179,
245
245
  "A detailed description of the kinds of questions that are suitable for this chat command."
246
246
  )),
247
247
  type: "string"
248
248
  },
249
249
  examples: {
250
250
  description: ( localize(
251
- 6132,
251
+ 6180,
252
252
  "A list of representative example questions that are suitable for this chat command."
253
253
  )),
254
254
  type: "array"
@@ -399,9 +399,9 @@ let ChatCompatibilityNotifier = class ChatCompatibilityNotifier extends Disposab
399
399
  return;
400
400
  }
401
401
  this.registeredWelcomeView = true;
402
- const showExtensionLabel = ( localize(6133, "Show Extension"));
402
+ const showExtensionLabel = ( localize(6181, "Show Extension"));
403
403
  const mainMessage = ( localize(
404
- 6134,
404
+ 6182,
405
405
  "Chat failed to load because the installed version of the Copilot Chat extension is not compatible with this version of {0}. Please ensure that the Copilot Chat extension is up to date.",
406
406
  this.productService.nameLong
407
407
  ));
@@ -437,7 +437,7 @@ class ChatParticipantDataRenderer extends Disposable {
437
437
  dispose: () => {}
438
438
  };
439
439
  }
440
- const headers = [( localize(6135, "Name")), ( localize(6136, "Full Name")), ( localize(6137, "Description")), ( localize(6138, "Commands"))];
440
+ const headers = [( localize(6183, "Name")), ( localize(6184, "Full Name")), ( localize(6185, "Description")), ( localize(6186, "Commands"))];
441
441
  const rows = ( nonDefaultContributions.map(d => {
442
442
  return [
443
443
  "@" + d.name,
@@ -457,7 +457,7 @@ class ChatParticipantDataRenderer extends Disposable {
457
457
  }
458
458
  ( Registry.as(Extensions$1.ExtensionFeaturesRegistry)).registerExtensionFeature({
459
459
  id: "chatParticipants",
460
- label: ( localize(6139, "Chat Participants")),
460
+ label: ( localize(6187, "Chat Participants")),
461
461
  access: {
462
462
  canToggle: false
463
463
  },
@@ -127,13 +127,13 @@ let ChatRepoInfoContribution = class ChatRepoInfoContribution extends Disposable
127
127
  const registry = ( Registry.as(Extensions.Configuration));
128
128
  registry.registerConfiguration({
129
129
  id: "chatRepoInfo",
130
- title: ( localize(6140, "Chat Repository Info")),
130
+ title: ( localize(6188, "Chat Repository Info")),
131
131
  type: "object",
132
132
  properties: {
133
133
  [ChatConfiguration.RepoInfoEnabled]: {
134
134
  type: "boolean",
135
135
  description: ( localize(
136
- 6141,
136
+ 6189,
137
137
  "Controls whether lightweight repository metadata (branch, commit, remotes) is captured when a chat request is submitted for internal diagnostics."
138
138
  )),
139
139
  default: false
@@ -50,7 +50,7 @@ async function maybeEnableAuthExtension(extensionsWorkbenchService, logService)
50
50
  );
51
51
  try {
52
52
  await extensionsWorkbenchService.setEnablement([providerExtension], EnablementState.EnabledGlobally);
53
- await extensionsWorkbenchService.updateRunningExtensions(( localize(6191, "Enabling GitHub Authentication")));
53
+ await extensionsWorkbenchService.updateRunningExtensions(( localize(6240, "Enabling GitHub Authentication")));
54
54
  return true;
55
55
  } catch (error) {
56
56
  logService.error(
@@ -1,4 +1,5 @@
1
1
  import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
2
+ import { IActionViewItemService } from "@codingame/monaco-vscode-api/vscode/vs/platform/actions/browser/actionViewItemService.service";
2
3
  import { ICommandService } from "@codingame/monaco-vscode-api/vscode/vs/platform/commands/common/commands.service";
3
4
  import { IConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service";
4
5
  import { IContextKeyService } from "@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey.service";
@@ -24,10 +25,11 @@ export declare class ChatSetupContribution extends Disposable implements IWorkbe
24
25
  private readonly chatSessionsService;
25
26
  private readonly configurationService;
26
27
  static readonly ID = "workbench.contrib.chatSetup";
27
- constructor(instantiationService: IInstantiationService, chatEntitlementService: ChatEntitlementService, logService: ILogService, contextKeyService: IContextKeyService, extensionEnablementService: IWorkbenchExtensionEnablementService, extensionsWorkbenchService: IExtensionsWorkbenchService, extensionService: IExtensionService, environmentService: IEnvironmentService, chatSessionsService: IChatSessionsService, configurationService: IConfigurationService);
28
+ constructor(actionViewItemService: IActionViewItemService, instantiationService: IInstantiationService, chatEntitlementService: ChatEntitlementService, logService: ILogService, contextKeyService: IContextKeyService, extensionEnablementService: IWorkbenchExtensionEnablementService, extensionsWorkbenchService: IExtensionsWorkbenchService, extensionService: IExtensionService, environmentService: IEnvironmentService, chatSessionsService: IChatSessionsService, configurationService: IConfigurationService);
28
29
  private registerSetupAgents;
29
30
  private registerGrowthSession;
30
31
  private registerActions;
32
+ private registerSignInTitleBarEntry;
31
33
  private registerUrlLinkHandler;
32
34
  private checkExtensionInstallation;
33
35
  }
@@ -1,5 +1,7 @@
1
1
 
2
2
  import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
3
+ import { append, $ } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/dom';
4
+ import { BaseActionViewItem } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/actionbar/actionViewItems';
3
5
  import { Event } from '@codingame/monaco-vscode-api/vscode/vs/base/common/event';
4
6
  import { Lazy } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lazy';
5
7
  import { Disposable, markAsSingleton, MutableDisposable, DisposableStore } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
@@ -9,12 +11,14 @@ import { URI } from '@codingame/monaco-vscode-api/vscode/vs/base/common/uri';
9
11
  import { ICodeEditorService } from '@codingame/monaco-vscode-api/vscode/vs/editor/browser/services/codeEditorService.service';
10
12
  import { EditorContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/editorContextKeys';
11
13
  import { localize2, localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
14
+ import { IActionViewItemService } from '@codingame/monaco-vscode-api/vscode/vs/platform/actions/browser/actionViewItemService.service';
12
15
  import { Action2, MenuId, registerAction2, MenuRegistry } from '@codingame/monaco-vscode-api/vscode/vs/platform/actions/common/actions';
13
16
  import { CommandsRegistry } from '@codingame/monaco-vscode-api/vscode/vs/platform/commands/common/commands';
14
17
  import { ICommandService } from '@codingame/monaco-vscode-api/vscode/vs/platform/commands/common/commands.service';
15
18
  import { IConfigurationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service';
16
19
  import { ContextKeyExpr } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey';
17
20
  import { IContextKeyService } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey.service';
21
+ import { IsWebContext } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkeys';
18
22
  import { IDialogService } from '@codingame/monaco-vscode-api/vscode/vs/platform/dialogs/common/dialogs.service';
19
23
  import { IEnvironmentService } from '@codingame/monaco-vscode-api/vscode/vs/platform/environment/common/environment.service';
20
24
  import { ExtensionIdentifier } from '@codingame/monaco-vscode-api/vscode/vs/platform/extensions/common/extensions';
@@ -60,11 +64,13 @@ const defaultChat = {
60
64
  completionsRefreshTokenCommand: product.defaultChatAgent?.completionsRefreshTokenCommand ?? "",
61
65
  chatRefreshTokenCommand: product.defaultChatAgent?.chatRefreshTokenCommand ?? ""
62
66
  };
67
+ const SIGN_IN_TITLE_BAR_ACTION_ID = "workbench.action.chat.signInIndicator";
63
68
  let ChatSetupContribution = class ChatSetupContribution extends Disposable {
64
69
  static {
65
70
  this.ID = "workbench.contrib.chatSetup";
66
71
  }
67
72
  constructor(
73
+ actionViewItemService,
68
74
  instantiationService,
69
75
  chatEntitlementService,
70
76
  logService,
@@ -97,6 +103,7 @@ let ChatSetupContribution = class ChatSetupContribution extends Disposable {
97
103
  this.registerSetupAgents(context, controller);
98
104
  this.registerGrowthSession(chatEntitlementService);
99
105
  this.registerActions(context, requests, controller);
106
+ this.registerSignInTitleBarEntry(actionViewItemService);
100
107
  this.registerUrlLinkHandler();
101
108
  this.checkExtensionInstallation(context);
102
109
  }
@@ -217,7 +224,7 @@ let ChatSetupContribution = class ChatSetupContribution extends Disposable {
217
224
  registerActions(context, requests, controller) {
218
225
  class ChatSetupTriggerAction extends Action2 {
219
226
  static {
220
- this.CHAT_SETUP_ACTION_LABEL = ( localize2(6192, "Use AI Features with Copilot for free..."));
227
+ this.CHAT_SETUP_ACTION_LABEL = ( localize2(6241, "Use AI Features with Copilot for free..."));
221
228
  }
222
229
  constructor() {
223
230
  super({
@@ -263,8 +270,8 @@ let ChatSetupContribution = class ChatSetupContribution extends Disposable {
263
270
  confirmed
264
271
  } = await dialogService.confirm({
265
272
  type: Severity.Error,
266
- message: ( localize(6193, "Chat setup failed. Would you like to try again?")),
267
- primaryButton: ( localize(6194, "Retry"))
273
+ message: ( localize(6242, "Chat setup failed. Would you like to try again?")),
274
+ primaryButton: ( localize(6243, "Retry"))
268
275
  });
269
276
  if (confirmed) {
270
277
  return Boolean(await commandService.executeCommand(CHAT_SETUP_ACTION_ID, mode, options));
@@ -298,7 +305,7 @@ let ChatSetupContribution = class ChatSetupContribution extends Disposable {
298
305
  constructor() {
299
306
  super({
300
307
  id: "workbench.action.chat.triggerSetupForceSignIn",
301
- title: ( localize2(6195, "Sign in to use AI features"))
308
+ title: ( localize2(6244, "Sign in to use AI features"))
302
309
  });
303
310
  }
304
311
  async run(accessor) {
@@ -336,7 +343,7 @@ let ChatSetupContribution = class ChatSetupContribution extends Disposable {
336
343
  constructor() {
337
344
  super({
338
345
  id: "workbench.action.chat.triggerSetupFromAccounts",
339
- title: ( localize2(6196, "Sign in to use AI features...")),
346
+ title: ( localize2(6245, "Sign in to use AI features...")),
340
347
  menu: {
341
348
  id: MenuId.AccountsContext,
342
349
  group: "2_copilot",
@@ -354,13 +361,39 @@ let ChatSetupContribution = class ChatSetupContribution extends Disposable {
354
361
  return commandService.executeCommand(CHAT_SETUP_ACTION_ID);
355
362
  }
356
363
  }
364
+ class ChatSetupSignInTitleBarAction extends Action2 {
365
+ static {
366
+ this.ID = SIGN_IN_TITLE_BAR_ACTION_ID;
367
+ }
368
+ constructor() {
369
+ super({
370
+ id: ChatSetupSignInTitleBarAction.ID,
371
+ title: ( localize(6246, "Sign In")),
372
+ f1: false,
373
+ menu: [{
374
+ id: MenuId.TitleBarAdjacentCenter,
375
+ order: 0,
376
+ when: ( ContextKeyExpr.and(( IsWebContext.negate()), ( ContextKeyExpr.has(`config.${ChatConfiguration.SignInTitleBarEnabled}`)), ChatContextKeys.Entitlement.signedOut, ( ChatContextKeys.Setup.hidden.negate()), ( ( ContextKeyExpr.has("updateTitleBar")).negate())))
377
+ }]
378
+ });
379
+ }
380
+ async run(accessor) {
381
+ const commandService = accessor.get(ICommandService);
382
+ const telemetryService = accessor.get(ITelemetryService);
383
+ telemetryService.publicLog2("workbenchActionExecuted", {
384
+ id: CHAT_SETUP_ACTION_ID,
385
+ from: "titlebar"
386
+ });
387
+ return commandService.executeCommand(CHAT_SETUP_ACTION_ID);
388
+ }
389
+ }
357
390
  const windowFocusListener = this._register(( new MutableDisposable()));
358
391
  class UpgradePlanAction extends Action2 {
359
392
  constructor() {
360
393
  super({
361
394
  id: "workbench.action.chat.upgradePlan",
362
- title: ( localize2(6197, "Upgrade to GitHub Copilot Pro")),
363
- category: ( localize2(6198, "Chat")),
395
+ title: ( localize2(6247, "Upgrade to GitHub Copilot Pro")),
396
+ category: ( localize2(6248, "Chat")),
364
397
  f1: true,
365
398
  precondition: ( ContextKeyExpr.and(( ChatContextKeys.Setup.hidden.negate()), ( ContextKeyExpr.or(
366
399
  ChatContextKeys.Entitlement.canSignUp,
@@ -401,12 +434,13 @@ let ChatSetupContribution = class ChatSetupContribution extends Disposable {
401
434
  constructor() {
402
435
  super({
403
436
  id: "workbench.action.chat.manageOverages",
404
- title: ( localize2(6199, "Manage GitHub Copilot Overages")),
405
- category: ( localize2(6198, "Chat")),
437
+ title: ( localize2(6249, "Manage GitHub Copilot Overages")),
438
+ category: ( localize2(6248, "Chat")),
406
439
  f1: true,
407
440
  precondition: ( ContextKeyExpr.and(( ChatContextKeys.Setup.hidden.negate()), ( ContextKeyExpr.or(
408
441
  ChatContextKeys.Entitlement.planPro,
409
- ChatContextKeys.Entitlement.planProPlus
442
+ ChatContextKeys.Entitlement.planProPlus,
443
+ ChatContextKeys.Entitlement.planEdu
410
444
  )))),
411
445
  menu: {
412
446
  id: MenuId.ChatTitleBarMenu,
@@ -414,7 +448,8 @@ let ChatSetupContribution = class ChatSetupContribution extends Disposable {
414
448
  order: 1,
415
449
  when: ( ContextKeyExpr.and(( ContextKeyExpr.or(
416
450
  ChatContextKeys.Entitlement.planPro,
417
- ChatContextKeys.Entitlement.planProPlus
451
+ ChatContextKeys.Entitlement.planProPlus,
452
+ ChatContextKeys.Entitlement.planEdu
418
453
  )), ( ContextKeyExpr.or(
419
454
  ChatContextKeys.chatQuotaExceeded,
420
455
  ChatContextKeys.completionsQuotaExceeded
@@ -430,6 +465,7 @@ let ChatSetupContribution = class ChatSetupContribution extends Disposable {
430
465
  registerAction2(ChatSetupTriggerAction);
431
466
  registerAction2(ChatSetupTriggerForceSignInDialogAction);
432
467
  registerAction2(ChatSetupFromAccountsAction);
468
+ registerAction2(ChatSetupSignInTitleBarAction);
433
469
  registerAction2(ChatSetupTriggerAnonymousWithoutDialogAction);
434
470
  registerAction2(ChatSetupTriggerSupportAnonymousAction);
435
471
  registerAction2(UpgradePlanAction);
@@ -477,7 +513,7 @@ let ChatSetupContribution = class ChatSetupContribution extends Disposable {
477
513
  MenuRegistry.appendMenuItem(MenuId.EditorContext, {
478
514
  command: {
479
515
  id: "chat.internal.explain",
480
- title: ( localize(6200, "Explain"))
516
+ title: ( localize(6250, "Explain"))
481
517
  },
482
518
  group: "1_chat",
483
519
  order: 4,
@@ -486,7 +522,7 @@ let ChatSetupContribution = class ChatSetupContribution extends Disposable {
486
522
  MenuRegistry.appendMenuItem(MenuId.EditorContext, {
487
523
  command: {
488
524
  id: "chat.internal.fix",
489
- title: ( localize(6201, "Fix"))
525
+ title: ( localize(6251, "Fix"))
490
526
  },
491
527
  group: "1_chat",
492
528
  order: 5,
@@ -495,13 +531,20 @@ let ChatSetupContribution = class ChatSetupContribution extends Disposable {
495
531
  MenuRegistry.appendMenuItem(MenuId.EditorContext, {
496
532
  command: {
497
533
  id: "chat.internal.review",
498
- title: ( localize(6202, "Code Review"))
534
+ title: ( localize(6252, "Code Review"))
499
535
  },
500
536
  group: "1_chat",
501
537
  order: 6,
502
538
  when: internalGenerateCodeContext
503
539
  });
504
540
  }
541
+ registerSignInTitleBarEntry(actionViewItemService) {
542
+ this._register(actionViewItemService.register(
543
+ MenuId.TitleBarAdjacentCenter,
544
+ SIGN_IN_TITLE_BAR_ACTION_ID,
545
+ (action, options) => ( new SignInTitleBarEntry(action, options))
546
+ ));
547
+ }
505
548
  registerUrlLinkHandler() {
506
549
  this._register(
507
550
  ExtensionUrlHandlerOverrideRegistry.registerHandler(this.instantiationService.createInstance(ChatSetupExtensionUrlHandler))
@@ -552,7 +595,7 @@ let ChatSetupContribution = class ChatSetupContribution extends Disposable {
552
595
  }));
553
596
  }
554
597
  };
555
- ChatSetupContribution = ( __decorate([( __param(0, IInstantiationService)), ( __param(1, IChatEntitlementService)), ( __param(2, ILogService)), ( __param(3, IContextKeyService)), ( __param(4, IWorkbenchExtensionEnablementService)), ( __param(5, IExtensionsWorkbenchService)), ( __param(6, IExtensionService)), ( __param(7, IEnvironmentService)), ( __param(8, IChatSessionsService)), ( __param(9, IConfigurationService))], ChatSetupContribution));
598
+ ChatSetupContribution = ( __decorate([( __param(0, IActionViewItemService)), ( __param(1, IInstantiationService)), ( __param(2, IChatEntitlementService)), ( __param(3, ILogService)), ( __param(4, IContextKeyService)), ( __param(5, IWorkbenchExtensionEnablementService)), ( __param(6, IExtensionsWorkbenchService)), ( __param(7, IExtensionService)), ( __param(8, IEnvironmentService)), ( __param(9, IChatSessionsService)), ( __param(10, IConfigurationService))], ChatSetupContribution));
556
599
  let ChatSetupExtensionUrlHandler = class ChatSetupExtensionUrlHandler {
557
600
  constructor(productService, commandService, telemetryService, chatModeService) {
558
601
  this.productService = productService;
@@ -662,7 +705,7 @@ let ChatTeardownContribution = class ChatTeardownContribution extends Disposable
662
705
  }
663
706
  await this.extensionsWorkbenchService.setEnablement([defaultChatExtension], state);
664
707
  await this.extensionsWorkbenchService.updateRunningExtensions(
665
- state === EnablementState.EnabledGlobally || state === EnablementState.EnabledWorkspace ? ( localize(6203, "Enabling AI features")) : ( localize(6204, "Disabling AI features"))
708
+ state === EnablementState.EnabledGlobally || state === EnablementState.EnabledWorkspace ? ( localize(6253, "Enabling AI features")) : ( localize(6254, "Disabling AI features"))
666
709
  );
667
710
  }
668
711
  maybeHideAuxiliaryBar() {
@@ -680,7 +723,7 @@ let ChatTeardownContribution = class ChatTeardownContribution extends Disposable
680
723
  this.ID = "workbench.action.chat.hideSetup";
681
724
  }
682
725
  static {
683
- this.TITLE = ( localize2(6205, "Learn How to Hide AI Features"));
726
+ this.TITLE = ( localize2(6255, "Learn How to Hide AI Features"));
684
727
  }
685
728
  constructor() {
686
729
  super({
@@ -713,5 +756,31 @@ function refreshTokens(commandService) {
713
756
  commandService.executeCommand(defaultChat.completionsRefreshTokenCommand);
714
757
  commandService.executeCommand(defaultChat.chatRefreshTokenCommand);
715
758
  }
759
+ class SignInTitleBarEntry extends BaseActionViewItem {
760
+ constructor(action, options) {
761
+ super(undefined, action, options);
762
+ }
763
+ render(container) {
764
+ super.render(container);
765
+ container.setAttribute("role", "button");
766
+ container.setAttribute("aria-label", this.action.label);
767
+ const content = append(container, $(".update-indicator.prominent"));
768
+ this.label = append(content, $(".indicator-label"));
769
+ this.label.textContent = this.action.label;
770
+ }
771
+ updateLabel() {
772
+ if (this.label) {
773
+ this.label.textContent = this.action.label;
774
+ }
775
+ if (this.element) {
776
+ this.element.setAttribute("aria-label", this.action.label);
777
+ }
778
+ }
779
+ updateEnabled() {
780
+ if (this.element) {
781
+ this.element.classList.toggle("disabled", !this.action.enabled);
782
+ }
783
+ }
784
+ }
716
785
 
717
786
  export { ChatSetupContribution, ChatTeardownContribution, refreshTokens };
@@ -106,7 +106,7 @@ let ChatSetupController = class ChatSetupController extends Disposable {
106
106
  }
107
107
  async setup(options = {}) {
108
108
  const watch = ( new StopWatch(false));
109
- const title = ( localize(6206, "Getting chat ready..."));
109
+ const title = ( localize(6256, "Getting chat ready..."));
110
110
  const badge = this.activityService.showViewContainerActivity(ChatViewContainerId, {
111
111
  badge: ( new ProgressBadge(() => title))
112
112
  });
@@ -182,12 +182,12 @@ let ChatSetupController = class ChatSetupController extends Disposable {
182
182
  } = await this.dialogService.confirm({
183
183
  type: Severity.Error,
184
184
  message: ( localize(
185
- 6207,
185
+ 6257,
186
186
  "Failed to sign in to {0}. Would you like to try again?",
187
187
  this.defaultAccountService.getDefaultAccountAuthenticationProvider().name
188
188
  )),
189
- detail: ( localize(6208, "You must be signed in to use AI features.")),
190
- primaryButton: ( localize(6209, "Retry"))
189
+ detail: ( localize(6258, "You must be signed in to use AI features.")),
190
+ primaryButton: ( localize(6259, "Retry"))
191
191
  });
192
192
  if (confirmed) {
193
193
  return this.signIn(options);
@@ -268,11 +268,11 @@ let ChatSetupController = class ChatSetupController extends Disposable {
268
268
  } = await this.dialogService.confirm({
269
269
  type: Severity.Error,
270
270
  message: ( localize(
271
- 6210,
271
+ 6260,
272
272
  "An error occurred while setting up chat. Would you like to try again?"
273
273
  )),
274
274
  detail: error && !isCancellationError(error) ? toErrorMessage(error) : undefined,
275
- primaryButton: ( localize(6209, "Retry"))
275
+ primaryButton: ( localize(6259, "Retry"))
276
276
  });
277
277
  if (confirmed) {
278
278
  return this.doInstallWithRetry();
@@ -350,8 +350,8 @@ let ChatSetupController = class ChatSetupController extends Disposable {
350
350
  }
351
351
  let isSingleWord = false;
352
352
  const result = await this.quickInputService.input({
353
- prompt: ( localize(6211, "What is your {0} instance?", defaultChat.provider.enterprise.name)),
354
- placeHolder: ( localize(6212, "i.e. \"octocat\" or \"https://octocat.ghe.com\"...")),
353
+ prompt: ( localize(6261, "What is your {0} instance?", defaultChat.provider.enterprise.name)),
354
+ placeHolder: ( localize(6262, "i.e. \"octocat\" or \"https://octocat.ghe.com\"...")),
355
355
  ignoreFocusLost: true,
356
356
  value: uri,
357
357
  validateInput: async value => {
@@ -362,14 +362,14 @@ let ChatSetupController = class ChatSetupController extends Disposable {
362
362
  if (domainRegEx.test(value)) {
363
363
  isSingleWord = true;
364
364
  return {
365
- content: ( localize(6213, "Will resolve to {0}", `https://${value}.ghe.com`)),
365
+ content: ( localize(6263, "Will resolve to {0}", `https://${value}.ghe.com`)),
366
366
  severity: Severity.Info
367
367
  };
368
368
  }
369
369
  if (!fullUriRegEx.test(value)) {
370
370
  return {
371
371
  content: ( localize(
372
- 6214,
372
+ 6264,
373
373
  "You must enter a valid {0} instance (i.e. \"octocat\" or \"https://octocat.ghe.com\")",
374
374
  defaultChat.provider.enterprise.name
375
375
  )),