@codingame/monaco-vscode-chat-service-override 26.2.2 → 28.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 (356) hide show
  1. package/index.js +35 -2
  2. package/package.json +5 -5
  3. package/vscode/src/vs/platform/browserElements/common/browserElements.d.ts +15 -0
  4. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackService.d.ts +53 -0
  5. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackService.js +219 -0
  6. package/vscode/src/vs/sessions/contrib/chat/browser/aiCustomizationWorkspaceService.d.ts +89 -0
  7. package/vscode/src/vs/sessions/contrib/chat/browser/aiCustomizationWorkspaceService.js +251 -0
  8. package/vscode/src/vs/sessions/contrib/chat/browser/newSession.d.ts +123 -0
  9. package/vscode/src/vs/sessions/contrib/chat/browser/newSession.js +278 -0
  10. package/vscode/src/vs/sessions/contrib/chat/browser/sessionsConfigurationService.d.ts +76 -0
  11. package/vscode/src/vs/sessions/contrib/chat/browser/sessionsConfigurationService.js +299 -0
  12. package/vscode/src/vs/sessions/contrib/fileTreeView/browser/githubFileSystemProvider.d.ts +67 -0
  13. package/vscode/src/vs/sessions/contrib/fileTreeView/browser/githubFileSystemProvider.js +263 -0
  14. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsManagementService.d.ts +85 -0
  15. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsManagementService.js +397 -0
  16. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityService.d.ts +1 -2
  17. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityService.js +27 -40
  18. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.d.ts +9 -3
  19. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.js +74 -18
  20. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.d.ts +1 -0
  21. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.js +54 -8
  22. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +87 -53
  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 +71 -15
  25. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.js +43 -21
  26. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +13 -5
  27. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +22 -3
  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.d.ts +1 -0
  30. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatForkActions.js +154 -0
  31. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +6 -8
  32. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.js +13 -13
  33. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.js +6 -6
  34. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatNewActions.js +53 -43
  35. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatOpenAgentDebugPanelAction.d.ts +4 -0
  36. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatOpenAgentDebugPanelAction.js +85 -0
  37. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPluginActions.d.ts +8 -0
  38. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPluginActions.js +33 -0
  39. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.js +2 -2
  40. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQueueActions.js +18 -32
  41. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +8 -8
  42. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.d.ts +13 -0
  43. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +17 -17
  44. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +49 -13
  45. package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +18 -18
  46. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditor.d.ts +58 -0
  47. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditor.js +537 -0
  48. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditorInput.d.ts +17 -0
  49. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditorInput.js +55 -0
  50. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginItems.d.ts +26 -0
  51. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginItems.js +9 -0
  52. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/media/agentPluginEditor.css +32 -0
  53. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.d.ts +48 -0
  54. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.js +282 -0
  55. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.d.ts +55 -0
  56. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.js +634 -0
  57. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.js +10 -11
  58. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.js +74 -67
  59. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.d.ts +7 -1
  60. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.js +27 -18
  61. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsQuickAccess.d.ts +1 -0
  62. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsQuickAccess.js +4 -2
  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 +5 -5
  65. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.d.ts +2 -0
  66. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.js +90 -51
  67. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionsExperiments.contribution.js +20 -5
  68. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.d.ts +3 -1
  69. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.js +43 -27
  70. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/media/agenttitlebarstatuswidget.css +7 -2
  71. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccess.d.ts +3 -1
  72. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccess.js +84 -22
  73. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccessActions.js +4 -4
  74. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/{localAgentSessionsProvider.d.ts → localAgentSessionsController.d.ts} +7 -4
  75. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/{localAgentSessionsProvider.js → localAgentSessionsController.js} +24 -17
  76. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.d.ts +23 -0
  77. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.js +171 -0
  78. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.d.ts +52 -0
  79. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.js +20 -0
  80. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.d.ts +179 -0
  81. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.js +987 -0
  82. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.contribution.d.ts +1 -0
  83. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.contribution.js +246 -0
  84. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.d.ts +56 -0
  85. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.js +26 -0
  86. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.d.ts +130 -0
  87. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.js +878 -0
  88. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.d.ts +22 -0
  89. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.js +38 -0
  90. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWorkspaceService.d.ts +1 -0
  91. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWorkspaceService.js +83 -0
  92. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCreatorService.d.ts +45 -0
  93. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCreatorService.js +165 -0
  94. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.d.ts +75 -0
  95. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.js +692 -0
  96. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationManagement.css +936 -0
  97. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.d.ts +62 -0
  98. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.js +702 -0
  99. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.d.ts +2 -0
  100. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.js +30 -1
  101. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgetRegistry.d.ts +32 -0
  102. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgetRegistry.js +26 -0
  103. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/simpleBrowserEditorOverlay.js +36 -26
  104. package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +622 -391
  105. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatCustomizationDiscoveryRenderer.d.ts +18 -0
  106. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatCustomizationDiscoveryRenderer.js +419 -0
  107. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCollapsible.d.ts +12 -0
  108. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCollapsible.js +46 -0
  109. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugDetailPanel.d.ts +34 -0
  110. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugDetailPanel.js +198 -0
  111. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditor.d.ts +55 -0
  112. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditor.js +314 -0
  113. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditorInput.d.ts +23 -0
  114. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditorInput.js +64 -0
  115. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventDetailRenderer.d.ts +5 -0
  116. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventDetailRenderer.js +84 -0
  117. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventList.d.ts +27 -0
  118. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventList.js +110 -0
  119. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFilters.d.ts +46 -0
  120. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFilters.js +170 -0
  121. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowChartView.d.ts +71 -0
  122. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowChartView.js +611 -0
  123. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowGraph.d.ts +125 -0
  124. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowGraph.js +504 -0
  125. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowLayout.d.ts +10 -0
  126. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowLayout.js +914 -0
  127. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHomeView.d.ts +19 -0
  128. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHomeView.js +128 -0
  129. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.d.ts +61 -0
  130. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.js +467 -0
  131. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugMessageContentRenderer.d.ts +31 -0
  132. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugMessageContentRenderer.js +113 -0
  133. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugModelTurnContentRenderer.d.ts +14 -0
  134. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugModelTurnContentRenderer.js +126 -0
  135. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugOverviewView.d.ts +38 -0
  136. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugOverviewView.js +279 -0
  137. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugToolCallContentRenderer.d.ts +18 -0
  138. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugToolCallContentRenderer.js +122 -0
  139. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugTypes.d.ts +47 -0
  140. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugTypes.js +85 -0
  141. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/media/chatDebug.css +788 -0
  142. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCheckpointTimelineImpl.d.ts +2 -5
  143. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCheckpointTimelineImpl.js +32 -36
  144. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +1 -1
  145. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.js +6 -24
  146. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +2 -2
  147. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +1 -1
  148. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +1 -1
  149. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +3 -3
  150. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +3 -3
  151. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelChangeService.js +2 -1
  152. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/media/chatEditorController.css +2 -2
  153. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +1 -1
  154. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.js +12 -12
  155. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.d.ts +1 -0
  156. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.js +16 -15
  157. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.js +4 -4
  158. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.js +2 -2
  159. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.js +63 -76
  160. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatUsageWidget.js +26 -15
  161. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/media/chatManagementEditor.css +2 -2
  162. package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +3 -3
  163. package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +30 -30
  164. package/vscode/src/vs/workbench/contrib/chat/browser/chatRepoInfo.d.ts +24 -7
  165. package/vscode/src/vs/workbench/contrib/chat/browser/chatRepoInfo.js +40 -413
  166. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetup.d.ts +10 -0
  167. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetup.js +38 -6
  168. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.d.ts +5 -1
  169. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.js +56 -46
  170. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.js +15 -11
  171. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupGrowthSession.d.ts +52 -0
  172. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupGrowthSession.js +138 -0
  173. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.d.ts +11 -1
  174. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.js +166 -41
  175. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.d.ts +6 -0
  176. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.js +37 -23
  177. package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.d.ts +17 -0
  178. package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.js +394 -0
  179. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.d.ts +1 -0
  180. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.js +118 -63
  181. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.js +12 -12
  182. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/media/chatStatus.css +28 -0
  183. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipCatalog.d.ts +66 -0
  184. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipCatalog.js +245 -0
  185. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipEligibilityTracker.d.ts +78 -0
  186. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipEligibilityTracker.js +234 -0
  187. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.d.ts +88 -14
  188. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.js +624 -68
  189. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipStorageKeys.d.ts +41 -0
  190. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipStorageKeys.js +22 -0
  191. package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.d.ts +5 -0
  192. package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.js +88 -24
  193. package/vscode/src/vs/workbench/contrib/chat/browser/contextContrib/chatContextService.js +28 -19
  194. package/vscode/src/vs/workbench/contrib/chat/browser/createSlashCommandsUsageTracker.d.ts +14 -0
  195. package/vscode/src/vs/workbench/contrib/chat/browser/createSlashCommandsUsageTracker.js +62 -0
  196. package/vscode/src/vs/workbench/contrib/chat/browser/defaultModelContribution.d.ts +36 -0
  197. package/vscode/src/vs/workbench/contrib/chat/browser/defaultModelContribution.js +110 -0
  198. package/vscode/src/vs/workbench/contrib/chat/browser/exploreAgentDefaultModel.d.ts +10 -0
  199. package/vscode/src/vs/workbench/contrib/chat/browser/exploreAgentDefaultModel.js +39 -0
  200. package/vscode/src/vs/workbench/contrib/chat/browser/languageModelsConfigurationService.d.ts +3 -3
  201. package/vscode/src/vs/workbench/contrib/chat/browser/languageModelsConfigurationService.js +6 -6
  202. package/vscode/src/vs/workbench/contrib/chat/browser/planAgentDefaultModel.d.ts +10 -0
  203. package/vscode/src/vs/workbench/contrib/chat/browser/planAgentDefaultModel.js +39 -0
  204. package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.d.ts +26 -0
  205. package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.js +175 -0
  206. package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.d.ts +99 -0
  207. package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.js +489 -0
  208. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +6 -6
  209. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.d.ts +19 -1
  210. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.js +364 -279
  211. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.d.ts +18 -1
  212. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.js +69 -6
  213. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +2 -2
  214. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +9 -9
  215. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.js +8 -8
  216. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.d.ts +4 -0
  217. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.js +8 -8
  218. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.js +3 -3
  219. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/skillActions.d.ts +4 -0
  220. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/skillActions.js +4 -4
  221. package/vscode/src/vs/workbench/contrib/chat/browser/promptsDebugContribution.d.ts +22 -0
  222. package/vscode/src/vs/workbench/contrib/chat/browser/promptsDebugContribution.js +76 -0
  223. package/vscode/src/vs/workbench/contrib/chat/browser/sessionResourceMatching.d.ts +5 -0
  224. package/vscode/src/vs/workbench/contrib/chat/browser/sessionResourceMatching.js +30 -0
  225. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.d.ts +2 -0
  226. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.js +67 -38
  227. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.d.ts +20 -1
  228. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.js +187 -74
  229. package/vscode/src/vs/workbench/contrib/chat/browser/tools/renameTool.d.ts +31 -0
  230. package/vscode/src/vs/workbench/contrib/chat/browser/tools/renameTool.js +242 -0
  231. package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolHelpers.d.ts +34 -0
  232. package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolHelpers.js +45 -0
  233. package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +13 -13
  234. package/vscode/src/vs/workbench/contrib/chat/browser/tools/usagesTool.d.ts +33 -0
  235. package/vscode/src/vs/workbench/contrib/chat/browser/tools/usagesTool.js +311 -0
  236. package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +5 -5
  237. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidgetService.d.ts +4 -0
  238. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidgetService.js +10 -1
  239. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatQueuePickerActionItem.d.ts +2 -0
  240. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatQueuePickerActionItem.js +29 -14
  241. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatStatusWidget.js +8 -9
  242. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.js +126 -30
  243. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorContrib.js +9 -5
  244. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorHover.js +1 -1
  245. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/chatQuick.js +2 -2
  246. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditor.d.ts +15 -4
  247. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditor.js +46 -9
  248. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.d.ts +8 -1
  249. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.js +65 -37
  250. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewTitleControl.js +6 -5
  251. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/media/chatViewPane.css +16 -20
  252. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/media/chatViewTitleControl.css +15 -6
  253. package/vscode/src/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService.d.ts +40 -0
  254. package/vscode/src/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService.js +28 -0
  255. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugService.d.ts +190 -0
  256. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugService.js +11 -0
  257. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.d.ts +44 -0
  258. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.js +208 -0
  259. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.d.ts +19 -9
  260. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.js +261 -105
  261. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceTelemetry.d.ts +21 -2
  262. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceTelemetry.js +7 -2
  263. package/vscode/src/vs/workbench/contrib/chat/common/model/chatModelStore.d.ts +5 -6
  264. package/vscode/src/vs/workbench/contrib/chat/common/model/chatModelStore.js +16 -8
  265. package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.d.ts +13 -4
  266. package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.js +144 -11
  267. package/vscode/src/vs/workbench/contrib/chat/common/model/objectMutationLog.js +36 -3
  268. package/vscode/src/vs/workbench/contrib/chat/common/participants/chatSlashCommands.d.ts +5 -3
  269. package/vscode/src/vs/workbench/contrib/chat/common/participants/chatSlashCommands.js +2 -2
  270. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.d.ts +57 -0
  271. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.js +29 -0
  272. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.d.ts +119 -0
  273. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.js +748 -0
  274. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.d.ts +146 -0
  275. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.js +672 -0
  276. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +35 -16
  277. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookClaudeCompat.d.ts +3 -16
  278. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookClaudeCompat.js +7 -50
  279. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCompatibility.d.ts +2 -1
  280. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCompatibility.js +2 -2
  281. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCopilotCliCompat.d.ts +1 -6
  282. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCopilotCliCompat.js +4 -8
  283. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/PromptHeaderDefinitionProvider.js +2 -2
  284. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.js +10 -9
  285. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptDocumentSemanticTokensProvider.js +1 -1
  286. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.d.ts +26 -1
  287. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +293 -94
  288. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.d.ts +10 -1
  289. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.js +86 -30
  290. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.d.ts +121 -0
  291. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.js +1422 -0
  292. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptFileContributions.js +1 -1
  293. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +48 -14
  294. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +404 -132
  295. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +17 -2
  296. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +40 -28
  297. package/vscode/src/vs/workbench/contrib/chat/common/tools/chatTodoListService.d.ts +3 -0
  298. package/vscode/src/vs/workbench/contrib/chat/common/tools/chatTodoListService.js +13 -0
  299. package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +1 -1
  300. package/vscode/src/vs/workbench/contrib/chat/common/widget/chatResponseResourceFileSystemProvider.d.ts +14 -2
  301. package/vscode/src/vs/workbench/contrib/chat/common/widget/chatResponseResourceFileSystemProvider.js +54 -5
  302. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.js +12 -5
  303. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.d.ts +27 -4
  304. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +265 -25
  305. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatDefaultModel.d.ts +6 -11
  306. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatDefaultModel.js +18 -81
  307. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.js +2 -3
  308. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +10 -10
  309. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpPromptArgumentPick.js +14 -14
  310. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chat/notebookChatUtils.js +1 -1
  311. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/cellChatActions.js +10 -10
  312. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebook.chat.contribution.js +6 -6
  313. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +1 -1
  314. package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.js +7 -7
  315. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/media/terminalChatWidget.css +6 -2
  316. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +16 -16
  317. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +35 -26
  318. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatService.d.ts +0 -1
  319. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatService.js +1 -5
  320. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +3 -3
  321. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +6 -6
  322. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.d.ts +4 -1
  323. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.js +13 -11
  324. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +3 -3
  325. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.js +3 -1
  326. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/awaitTerminalTool.js +3 -3
  327. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/npmScriptAutoApprover.js +1 -1
  328. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.js +12 -12
  329. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.js +2 -2
  330. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalLastCommandTool.js +3 -3
  331. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.js +3 -3
  332. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.js +3 -3
  333. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/killTerminalTool.js +3 -3
  334. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.d.ts +17 -0
  335. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +302 -69
  336. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/types.d.ts +3 -1
  337. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/outputAnalyzer.d.ts +8 -0
  338. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.js +2 -10
  339. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.d.ts +7 -0
  340. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +63 -21
  341. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.d.ts +8 -0
  342. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.js +31 -0
  343. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/createAndRunTaskTool.js +14 -14
  344. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/getTaskOutputTool.js +7 -7
  345. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/runTaskTool.js +14 -14
  346. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.js +1 -1
  347. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.d.ts +7 -1
  348. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.js +46 -17
  349. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCustomizationDiagnosticsAction.d.ts +0 -72
  350. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCustomizationDiagnosticsAction.js +0 -587
  351. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatVariables.d.ts +0 -12
  352. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatVariables.js +0 -51
  353. package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatToolInvocation.d.ts +0 -71
  354. package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatToolInvocation.js +0 -293
  355. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/utils.d.ts +0 -2
  356. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/utils.js +0 -31
@@ -41,6 +41,7 @@ import { IPreferencesService } from '@codingame/monaco-vscode-api/vscode/vs/work
41
41
  import { IExtensionsWorkbenchService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/extensions/common/extensions.service';
42
42
  import { ChatContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/actions/chatContextKeys';
43
43
  import { IChatModeService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatModes.service';
44
+ import { IChatSessionsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatSessionsService.service';
44
45
  import { ChatModeKind, ChatAgentLocation, ChatConfiguration } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
45
46
  import { CHAT_CATEGORY, CHAT_SETUP_ACTION_ID, CHAT_SETUP_SUPPORT_ANONYMOUS_ACTION_ID } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/actions/chatActions';
46
47
  import { ChatViewContainerId } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat';
@@ -48,6 +49,7 @@ import { IChatWidgetService } from '@codingame/monaco-vscode-api/vscode/vs/workb
48
49
  import { chatViewsWelcomeRegistry } from '@codingame/monaco-vscode-katex-common/vscode/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcome';
49
50
  import { ChatSetupAnonymous } from './chatSetup.js';
50
51
  import { ChatSetupController } from './chatSetupController.js';
52
+ import { GrowthSessionController, registerGrowthSession } from './chatSetupGrowthSession.js';
51
53
  import { SetupAgent, AINewSymbolNamesProvider, ChatCodeActionsProvider, AICodeActionsHelper } from './chatSetupProviders.js';
52
54
  import { ChatSetup } from './chatSetupRunner.js';
53
55
 
@@ -70,7 +72,9 @@ let ChatSetupContribution = class ChatSetupContribution extends Disposable {
70
72
  extensionEnablementService,
71
73
  extensionsWorkbenchService,
72
74
  extensionService,
73
- environmentService
75
+ environmentService,
76
+ chatSessionsService,
77
+ configurationService
74
78
  ) {
75
79
  super();
76
80
  this.instantiationService = instantiationService;
@@ -80,6 +84,8 @@ let ChatSetupContribution = class ChatSetupContribution extends Disposable {
80
84
  this.extensionsWorkbenchService = extensionsWorkbenchService;
81
85
  this.extensionService = extensionService;
82
86
  this.environmentService = environmentService;
87
+ this.chatSessionsService = chatSessionsService;
88
+ this.configurationService = configurationService;
83
89
  const context = chatEntitlementService.context?.value;
84
90
  const requests = chatEntitlementService.requests?.value;
85
91
  if (!context || !requests) {
@@ -89,6 +95,7 @@ let ChatSetupContribution = class ChatSetupContribution extends Disposable {
89
95
  this.instantiationService.createInstance(ChatSetupController, context, requests)
90
96
  )));
91
97
  this.registerSetupAgents(context, controller);
98
+ this.registerGrowthSession(chatEntitlementService);
92
99
  this.registerActions(context, requests, controller);
93
100
  this.registerUrlLinkHandler();
94
101
  this.checkExtensionInstallation(context);
@@ -183,10 +190,34 @@ let ChatSetupContribution = class ChatSetupContribution extends Disposable {
183
190
  };
184
191
  this._register(Event.runAndSubscribe(context.onDidChange, () => updateRegistration()));
185
192
  }
193
+ registerGrowthSession(chatEntitlementService) {
194
+ const growthSessionDisposables = markAsSingleton(( new MutableDisposable()));
195
+ const updateGrowthSession = () => {
196
+ const experimentEnabled = this.configurationService.getValue(ChatConfiguration.GrowthNotificationEnabled) === true;
197
+ const shouldShow = experimentEnabled && !chatEntitlementService.sentiment.installed;
198
+ if (shouldShow && !growthSessionDisposables.value) {
199
+ const disposables = ( new DisposableStore());
200
+ const controller = disposables.add(this.instantiationService.createInstance(GrowthSessionController));
201
+ if (!controller.isDismissed) {
202
+ disposables.add(registerGrowthSession(this.chatSessionsService, controller));
203
+ disposables.add(controller.onDidDismiss(() => {
204
+ growthSessionDisposables.clear();
205
+ }));
206
+ growthSessionDisposables.value = disposables;
207
+ } else {
208
+ disposables.dispose();
209
+ }
210
+ } else if (!shouldShow) {
211
+ growthSessionDisposables.clear();
212
+ }
213
+ };
214
+ this._register(chatEntitlementService.onDidChangeSentiment(() => updateGrowthSession()));
215
+ updateGrowthSession();
216
+ }
186
217
  registerActions(context, requests, controller) {
187
218
  class ChatSetupTriggerAction extends Action2 {
188
219
  static {
189
- this.CHAT_SETUP_ACTION_LABEL = ( localize2(5555, "Use AI Features with Copilot for free..."));
220
+ this.CHAT_SETUP_ACTION_LABEL = ( localize2(6061, "Use AI Features with Copilot for free..."));
190
221
  }
191
222
  constructor() {
192
223
  super({
@@ -231,8 +262,8 @@ let ChatSetupContribution = class ChatSetupContribution extends Disposable {
231
262
  confirmed
232
263
  } = await dialogService.confirm({
233
264
  type: Severity.Error,
234
- message: ( localize(5556, "Chat setup failed. Would you like to try again?")),
235
- primaryButton: ( localize(5557, "Retry"))
265
+ message: ( localize(6062, "Chat setup failed. Would you like to try again?")),
266
+ primaryButton: ( localize(6063, "Retry"))
236
267
  });
237
268
  if (confirmed) {
238
269
  return Boolean(await commandService.executeCommand(CHAT_SETUP_ACTION_ID, mode, options));
@@ -248,7 +279,7 @@ let ChatSetupContribution = class ChatSetupContribution extends Disposable {
248
279
  title: ChatSetupTriggerAction.CHAT_SETUP_ACTION_LABEL
249
280
  });
250
281
  }
251
- async run(accessor) {
282
+ async run(accessor, options) {
252
283
  const commandService = accessor.get(ICommandService);
253
284
  const telemetryService = accessor.get(ITelemetryService);
254
285
  const chatEntitlementService = accessor.get(IChatEntitlementService);
@@ -257,7 +288,8 @@ let ChatSetupContribution = class ChatSetupContribution extends Disposable {
257
288
  from: "api"
258
289
  });
259
290
  return commandService.executeCommand(CHAT_SETUP_ACTION_ID, undefined, {
260
- forceAnonymous: chatEntitlementService.anonymous ? ChatSetupAnonymous.EnabledWithDialog : undefined
291
+ forceAnonymous: chatEntitlementService.anonymous ? ChatSetupAnonymous.EnabledWithDialog : undefined,
292
+ ...options
261
293
  });
262
294
  }
263
295
  }
@@ -265,7 +297,7 @@ let ChatSetupContribution = class ChatSetupContribution extends Disposable {
265
297
  constructor() {
266
298
  super({
267
299
  id: "workbench.action.chat.triggerSetupForceSignIn",
268
- title: ( localize2(5558, "Sign in to use AI features"))
300
+ title: ( localize2(6064, "Sign in to use AI features"))
269
301
  });
270
302
  }
271
303
  async run(accessor) {
@@ -303,7 +335,7 @@ let ChatSetupContribution = class ChatSetupContribution extends Disposable {
303
335
  constructor() {
304
336
  super({
305
337
  id: "workbench.action.chat.triggerSetupFromAccounts",
306
- title: ( localize2(5559, "Sign in to use AI features...")),
338
+ title: ( localize2(6065, "Sign in to use AI features...")),
307
339
  menu: {
308
340
  id: MenuId.AccountsContext,
309
341
  group: "2_copilot",
@@ -326,8 +358,8 @@ let ChatSetupContribution = class ChatSetupContribution extends Disposable {
326
358
  constructor() {
327
359
  super({
328
360
  id: "workbench.action.chat.upgradePlan",
329
- title: ( localize2(5560, "Upgrade to GitHub Copilot Pro")),
330
- category: ( localize2(5561, "Chat")),
361
+ title: ( localize2(6066, "Upgrade to GitHub Copilot Pro")),
362
+ category: ( localize2(6067, "Chat")),
331
363
  f1: true,
332
364
  precondition: ( ContextKeyExpr.and(( ChatContextKeys.Setup.hidden.negate()), ( ContextKeyExpr.or(
333
365
  ChatContextKeys.Entitlement.canSignUp,
@@ -368,8 +400,8 @@ let ChatSetupContribution = class ChatSetupContribution extends Disposable {
368
400
  constructor() {
369
401
  super({
370
402
  id: "workbench.action.chat.manageOverages",
371
- title: ( localize2(5562, "Manage GitHub Copilot Overages")),
372
- category: ( localize2(5561, "Chat")),
403
+ title: ( localize2(6068, "Manage GitHub Copilot Overages")),
404
+ category: ( localize2(6067, "Chat")),
373
405
  f1: true,
374
406
  precondition: ( ContextKeyExpr.and(( ChatContextKeys.Setup.hidden.negate()), ( ContextKeyExpr.or(
375
407
  ChatContextKeys.Entitlement.planPro,
@@ -422,8 +454,6 @@ let ChatSetupContribution = class ChatSetupContribution extends Disposable {
422
454
  break;
423
455
  }
424
456
  case "chat.internal.review":
425
- case "chat.internal.generateDocs":
426
- case "chat.internal.generateTests":
427
457
  {
428
458
  const result = await commandService.executeCommand(CHAT_SETUP_SUPPORT_ANONYMOUS_ACTION_ID);
429
459
  if (result) {
@@ -436,54 +466,34 @@ let ChatSetupContribution = class ChatSetupContribution extends Disposable {
436
466
  registerGenerateCodeCommand("chat.internal.explain", "github.copilot.chat.explain");
437
467
  registerGenerateCodeCommand("chat.internal.fix", "github.copilot.chat.fix");
438
468
  registerGenerateCodeCommand("chat.internal.review", "github.copilot.chat.review");
439
- registerGenerateCodeCommand("chat.internal.generateDocs", "github.copilot.chat.generateDocs");
440
- registerGenerateCodeCommand("chat.internal.generateTests", "github.copilot.chat.generateTests");
441
469
  const internalGenerateCodeContext = ( ContextKeyExpr.and(( ChatContextKeys.Setup.hidden.negate()), ( ChatContextKeys.Setup.disabled.negate()), ( ChatContextKeys.Setup.installed.negate())));
442
470
  MenuRegistry.appendMenuItem(MenuId.EditorContext, {
443
471
  command: {
444
472
  id: "chat.internal.explain",
445
- title: ( localize(5563, "Explain"))
473
+ title: ( localize(6069, "Explain"))
446
474
  },
447
475
  group: "1_chat",
448
476
  order: 4,
449
477
  when: internalGenerateCodeContext
450
478
  });
451
- MenuRegistry.appendMenuItem(MenuId.ChatTextEditorMenu, {
479
+ MenuRegistry.appendMenuItem(MenuId.EditorContext, {
452
480
  command: {
453
481
  id: "chat.internal.fix",
454
- title: ( localize(5564, "Fix"))
482
+ title: ( localize(6070, "Fix"))
455
483
  },
456
- group: "1_action",
457
- order: 1,
484
+ group: "1_chat",
485
+ order: 5,
458
486
  when: ( ContextKeyExpr.and(internalGenerateCodeContext, ( EditorContextKeys.readOnly.negate())))
459
487
  });
460
- MenuRegistry.appendMenuItem(MenuId.ChatTextEditorMenu, {
488
+ MenuRegistry.appendMenuItem(MenuId.EditorContext, {
461
489
  command: {
462
490
  id: "chat.internal.review",
463
- title: ( localize(5565, "Code Review"))
491
+ title: ( localize(6071, "Code Review"))
464
492
  },
465
- group: "1_action",
466
- order: 2,
493
+ group: "1_chat",
494
+ order: 6,
467
495
  when: internalGenerateCodeContext
468
496
  });
469
- MenuRegistry.appendMenuItem(MenuId.ChatTextEditorMenu, {
470
- command: {
471
- id: "chat.internal.generateDocs",
472
- title: ( localize(5566, "Generate Docs"))
473
- },
474
- group: "2_generate",
475
- order: 1,
476
- when: ( ContextKeyExpr.and(internalGenerateCodeContext, ( EditorContextKeys.readOnly.negate())))
477
- });
478
- MenuRegistry.appendMenuItem(MenuId.ChatTextEditorMenu, {
479
- command: {
480
- id: "chat.internal.generateTests",
481
- title: ( localize(5567, "Generate Tests"))
482
- },
483
- group: "2_generate",
484
- order: 2,
485
- when: ( ContextKeyExpr.and(internalGenerateCodeContext, ( EditorContextKeys.readOnly.negate())))
486
- });
487
497
  }
488
498
  registerUrlLinkHandler() {
489
499
  this._register(
@@ -535,7 +545,7 @@ let ChatSetupContribution = class ChatSetupContribution extends Disposable {
535
545
  }));
536
546
  }
537
547
  };
538
- 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))], ChatSetupContribution));
548
+ 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));
539
549
  let ChatSetupExtensionUrlHandler = class ChatSetupExtensionUrlHandler {
540
550
  constructor(productService, commandService, telemetryService, chatModeService) {
541
551
  this.productService = productService;
@@ -647,7 +657,7 @@ let ChatTeardownContribution = class ChatTeardownContribution extends Disposable
647
657
  }
648
658
  await this.extensionsWorkbenchService.setEnablement([defaultChatExtension], state);
649
659
  await this.extensionsWorkbenchService.updateRunningExtensions(
650
- state === EnablementState.EnabledGlobally || state === EnablementState.EnabledWorkspace ? ( localize(5568, "Enabling AI features")) : ( localize(5569, "Disabling AI features"))
660
+ state === EnablementState.EnabledGlobally || state === EnablementState.EnabledWorkspace ? ( localize(6072, "Enabling AI features")) : ( localize(6073, "Disabling AI features"))
651
661
  );
652
662
  }
653
663
  maybeHideAuxiliaryBar() {
@@ -665,7 +675,7 @@ let ChatTeardownContribution = class ChatTeardownContribution extends Disposable
665
675
  this.ID = "workbench.action.chat.hideSetup";
666
676
  }
667
677
  static {
668
- this.TITLE = ( localize2(5570, "Learn How to Hide AI Features"));
678
+ this.TITLE = ( localize2(6074, "Learn How to Hide AI Features"));
669
679
  }
670
680
  constructor() {
671
681
  super({
@@ -28,7 +28,7 @@ import { IExtensionsWorkbenchService } from '@codingame/monaco-vscode-api/vscode
28
28
  import { ChatEntitlement, isProUser } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/chat/common/chatEntitlementService';
29
29
  import { CHAT_OPEN_ACTION_ID } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/actions/chatActions';
30
30
  import { ChatViewContainerId, ChatViewId } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat';
31
- import { ChatSetupStep, refreshTokens } from './chatSetup.js';
31
+ import { ChatSetupStep, maybeEnableAuthExtension, refreshTokens } from './chatSetup.js';
32
32
  import { IDefaultAccountService } from '@codingame/monaco-vscode-api/vscode/vs/platform/defaultAccount/common/defaultAccount.service';
33
33
 
34
34
  const defaultChat = {
@@ -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(5571, "Getting chat ready..."));
109
+ const title = ( localize(6075, "Getting chat ready..."));
110
110
  const badge = this.activityService.showViewContainerActivity(ChatViewContainerId, {
111
111
  badge: ( new ProgressBadge(() => title))
112
112
  });
@@ -162,6 +162,10 @@ let ChatSetupController = class ChatSetupController extends Disposable {
162
162
  return success;
163
163
  }
164
164
  async signIn(options) {
165
+ const authExtensionReEnabled = await maybeEnableAuthExtension(this.extensionsWorkbenchService, this.logService);
166
+ if (authExtensionReEnabled) {
167
+ refreshTokens(this.commandService);
168
+ }
165
169
  let entitlements;
166
170
  let defaultAccount;
167
171
  try {
@@ -178,12 +182,12 @@ let ChatSetupController = class ChatSetupController extends Disposable {
178
182
  } = await this.dialogService.confirm({
179
183
  type: Severity.Error,
180
184
  message: ( localize(
181
- 5572,
185
+ 6076,
182
186
  "Failed to sign in to {0}. Would you like to try again?",
183
187
  this.defaultAccountService.getDefaultAccountAuthenticationProvider().name
184
188
  )),
185
- detail: ( localize(5573, "You must be signed in to use AI features.")),
186
- primaryButton: ( localize(5574, "Retry"))
189
+ detail: ( localize(6077, "You must be signed in to use AI features.")),
190
+ primaryButton: ( localize(6078, "Retry"))
187
191
  });
188
192
  if (confirmed) {
189
193
  return this.signIn(options);
@@ -264,11 +268,11 @@ let ChatSetupController = class ChatSetupController extends Disposable {
264
268
  } = await this.dialogService.confirm({
265
269
  type: Severity.Error,
266
270
  message: ( localize(
267
- 5575,
271
+ 6079,
268
272
  "An error occurred while setting up chat. Would you like to try again?"
269
273
  )),
270
274
  detail: error && !isCancellationError(error) ? toErrorMessage(error) : undefined,
271
- primaryButton: ( localize(5574, "Retry"))
275
+ primaryButton: ( localize(6078, "Retry"))
272
276
  });
273
277
  if (confirmed) {
274
278
  return this.doInstallWithRetry();
@@ -346,8 +350,8 @@ let ChatSetupController = class ChatSetupController extends Disposable {
346
350
  }
347
351
  let isSingleWord = false;
348
352
  const result = await this.quickInputService.input({
349
- prompt: ( localize(5576, "What is your {0} instance?", defaultChat.provider.enterprise.name)),
350
- placeHolder: ( localize(5577, "i.e. \"octocat\" or \"https://octocat.ghe.com\"...")),
353
+ prompt: ( localize(6080, "What is your {0} instance?", defaultChat.provider.enterprise.name)),
354
+ placeHolder: ( localize(6081, "i.e. \"octocat\" or \"https://octocat.ghe.com\"...")),
351
355
  ignoreFocusLost: true,
352
356
  value: uri,
353
357
  validateInput: async value => {
@@ -358,14 +362,14 @@ let ChatSetupController = class ChatSetupController extends Disposable {
358
362
  if (domainRegEx.test(value)) {
359
363
  isSingleWord = true;
360
364
  return {
361
- content: ( localize(5578, "Will resolve to {0}", `https://${value}.ghe.com`)),
365
+ content: ( localize(6082, "Will resolve to {0}", `https://${value}.ghe.com`)),
362
366
  severity: Severity.Info
363
367
  };
364
368
  }
365
369
  if (!fullUriRegEx.test(value)) {
366
370
  return {
367
371
  content: ( localize(
368
- 5579,
372
+ 6083,
369
373
  "You must enter a valid {0} instance (i.e. \"octocat\" or \"https://octocat.ghe.com\")",
370
374
  defaultChat.provider.enterprise.name
371
375
  )),
@@ -0,0 +1,52 @@
1
+ import { Event } from "@codingame/monaco-vscode-api/vscode/vs/base/common/event";
2
+ import { Disposable, IDisposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
3
+ import { ServicesAccessor } from "@codingame/monaco-vscode-api/vscode/vs/editor/browser/editorExtensions";
4
+ import { ILogService } from "@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service";
5
+ import { IStorageService } from "@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage.service";
6
+ import { ILifecycleService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/lifecycle/common/lifecycle.service";
7
+ import { IChatSessionItem, IChatSessionItemController } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatSessionsService";
8
+ import { IChatSessionsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatSessionsService.service";
9
+ import { IAgentSession } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsModel";
10
+ import { ISessionOpenerParticipant, ISessionOpenOptions } from "@codingame/monaco-vscode-katex-common/vscode/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsOpener";
11
+ import { IChatWidgetService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat.service";
12
+ /**
13
+ * Core-side growth session controller that shows a single "attention needed"
14
+ * session item in the agent sessions view for anonymous/new users.
15
+ *
16
+ * When the user clicks the session, we open the chat panel (which triggers the
17
+ * anonymous setup flow). When the user opens chat at all, the badge is cleared.
18
+ *
19
+ * The session is shown at most once, tracked via a storage flag.
20
+ */
21
+ export declare class GrowthSessionController extends Disposable implements IChatSessionItemController {
22
+ private readonly storageService;
23
+ private readonly chatWidgetService;
24
+ private readonly lifecycleService;
25
+ private readonly logService;
26
+ static readonly STORAGE_KEY = "chat.growthSession.dismissed";
27
+ private static readonly SESSION_URI;
28
+ private readonly _onDidChangeChatSessionItems;
29
+ readonly onDidChangeChatSessionItems: Event<void>;
30
+ private readonly _onDidDismiss;
31
+ readonly onDidDismiss: Event<void>;
32
+ private readonly _created;
33
+ private _dismissed;
34
+ get isDismissed(): boolean;
35
+ constructor(storageService: IStorageService, chatWidgetService: IChatWidgetService, lifecycleService: ILifecycleService, logService: ILogService);
36
+ get items(): readonly IChatSessionItem[];
37
+ refresh(): Promise<void>;
38
+ private dismiss;
39
+ }
40
+ /**
41
+ * Handles clicks on the growth session item in the agent sessions view.
42
+ * Opens a new local chat session with a pre-seeded welcome message.
43
+ * The user can then send messages that go through the normal agent.
44
+ */
45
+ export declare class GrowthSessionOpenerParticipant implements ISessionOpenerParticipant {
46
+ handleOpenSession(accessor: ServicesAccessor, session: IAgentSession, _openOptions?: ISessionOpenOptions): Promise<boolean>;
47
+ }
48
+ /**
49
+ * Registers the growth session controller and opener participant.
50
+ * Returns a disposable that cleans up all registrations.
51
+ */
52
+ export declare function registerGrowthSession(chatSessionsService: IChatSessionsService, growthController: GrowthSessionController): IDisposable;
@@ -0,0 +1,138 @@
1
+
2
+ import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
3
+ import { Codicon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/codicons';
4
+ import { Emitter } from '@codingame/monaco-vscode-api/vscode/vs/base/common/event';
5
+ import { Disposable, DisposableStore } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
6
+ import { URI } from '@codingame/monaco-vscode-api/vscode/vs/base/common/uri';
7
+ import { localize, localize2 } from '@codingame/monaco-vscode-api/vscode/vs/nls';
8
+ import { registerAction2, Action2 } from '@codingame/monaco-vscode-api/vscode/vs/platform/actions/common/actions';
9
+ import { ICommandService } from '@codingame/monaco-vscode-api/vscode/vs/platform/commands/common/commands.service';
10
+ import { ILogService } from '@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service';
11
+ import { StorageScope, StorageTarget } from '@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage';
12
+ import { IStorageService } from '@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage.service';
13
+ import { LifecyclePhase } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/lifecycle/common/lifecycle';
14
+ import { ILifecycleService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/lifecycle/common/lifecycle.service';
15
+ import { ChatSessionStatus } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatSessionsService';
16
+ import { AgentSessionProviders } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/agentSessions/agentSessions';
17
+ import { sessionOpenerRegistry } from '@codingame/monaco-vscode-katex-common/vscode/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsOpener';
18
+ import { IChatWidgetService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat.service';
19
+ import { CHAT_OPEN_ACTION_ID } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/actions/chatActions';
20
+
21
+ var GrowthSessionController_1;
22
+ let GrowthSessionController = class GrowthSessionController extends Disposable {
23
+ static {
24
+ GrowthSessionController_1 = this;
25
+ }
26
+ static {
27
+ this.STORAGE_KEY = "chat.growthSession.dismissed";
28
+ }
29
+ static {
30
+ this.SESSION_URI = ( URI.from({
31
+ scheme: AgentSessionProviders.Growth,
32
+ path: "/growth-welcome"
33
+ }));
34
+ }
35
+ get isDismissed() {
36
+ return this._dismissed;
37
+ }
38
+ constructor(storageService, chatWidgetService, lifecycleService, logService) {
39
+ super();
40
+ this.storageService = storageService;
41
+ this.chatWidgetService = chatWidgetService;
42
+ this.lifecycleService = lifecycleService;
43
+ this.logService = logService;
44
+ this._onDidChangeChatSessionItems = this._register(( new Emitter()));
45
+ this.onDidChangeChatSessionItems = this._onDidChangeChatSessionItems.event;
46
+ this._onDidDismiss = this._register(( new Emitter()));
47
+ this.onDidDismiss = this._onDidDismiss.event;
48
+ this._created = Date.now();
49
+ this._dismissed = this.storageService.getBoolean(GrowthSessionController_1.STORAGE_KEY, StorageScope.APPLICATION, false);
50
+ this.lifecycleService.when(LifecyclePhase.Restored).then(() => {
51
+ if (this._store.isDisposed || this._dismissed) {
52
+ return;
53
+ }
54
+ this._register(this.chatWidgetService.onDidAddWidget(() => {
55
+ this.dismiss();
56
+ }));
57
+ });
58
+ }
59
+ get items() {
60
+ if (this._dismissed) {
61
+ return [];
62
+ }
63
+ return [{
64
+ resource: GrowthSessionController_1.SESSION_URI,
65
+ label: ( localize(6084, "Try Copilot")),
66
+ description: ( localize(6085, "GitHub Copilot is available. Try it for free.")),
67
+ status: ChatSessionStatus.NeedsInput,
68
+ iconPath: Codicon.lightbulb,
69
+ timing: {
70
+ created: this._created,
71
+ lastRequestStarted: undefined,
72
+ lastRequestEnded: undefined
73
+ }
74
+ }];
75
+ }
76
+ async refresh() {}
77
+ dismiss() {
78
+ if (this._dismissed) {
79
+ return;
80
+ }
81
+ this.logService.trace("[GrowthSession] Dismissing growth session");
82
+ this._dismissed = true;
83
+ this.storageService.store(
84
+ GrowthSessionController_1.STORAGE_KEY,
85
+ true,
86
+ StorageScope.APPLICATION,
87
+ StorageTarget.USER
88
+ );
89
+ this._onDidChangeChatSessionItems.fire();
90
+ this._onDidDismiss.fire();
91
+ }
92
+ };
93
+ GrowthSessionController = GrowthSessionController_1 = ( __decorate([( __param(0, IStorageService)), ( __param(1, IChatWidgetService)), ( __param(2, ILifecycleService)), ( __param(3, ILogService))], GrowthSessionController));
94
+ class GrowthSessionOpenerParticipant {
95
+ async handleOpenSession(accessor, session, _openOptions) {
96
+ if (session.providerType !== AgentSessionProviders.Growth) {
97
+ return false;
98
+ }
99
+ const commandService = accessor.get(ICommandService);
100
+ const opts = {
101
+ query: "",
102
+ isPartialQuery: true,
103
+ previousRequests: [{
104
+ request: ( localize(6086, "Tell me about GitHub Copilot!")),
105
+ response: ( localize(
106
+ 6087,
107
+ "Welcome to GitHub Copilot, your AI coding assistant! Here are some things you can try:\n\n- 🐛 *\"Help me debug this error\"* — paste an error message and get a fix\n- 🧪 *\"Write tests for my function\"* — select code and ask for unit tests\n- 💡 *\"Explain this code\"* — highlight something unfamiliar and ask what it does\n- 🚀 *\"Scaffold a REST API\"* — describe what you want and let Agent mode build it\n- 🎨 *\"Refactor this to be more readable\"* — select messy code and clean it up\n\nType anything below to get started!"
108
+ ))
109
+ }]
110
+ };
111
+ await commandService.executeCommand(CHAT_OPEN_ACTION_ID, opts);
112
+ return true;
113
+ }
114
+ }
115
+ function registerGrowthSession(chatSessionsService, growthController) {
116
+ const disposables = ( new DisposableStore());
117
+ disposables.add(
118
+ chatSessionsService.registerChatSessionItemController(AgentSessionProviders.Growth, growthController)
119
+ );
120
+ disposables.add(sessionOpenerRegistry.registerParticipant(( new GrowthSessionOpenerParticipant())));
121
+ return disposables;
122
+ }
123
+ registerAction2(class ResetGrowthSessionAction extends Action2 {
124
+ constructor() {
125
+ super({
126
+ id: "workbench.action.chat.resetGrowthSession",
127
+ title: ( localize2(6088, "Reset Growth Session Notification")),
128
+ category: ( localize2(6089, "Developer")),
129
+ f1: true
130
+ });
131
+ }
132
+ run(accessor) {
133
+ const storageService = accessor.get(IStorageService);
134
+ storageService.remove(GrowthSessionController.STORAGE_KEY, StorageScope.APPLICATION);
135
+ }
136
+ });
137
+
138
+ export { GrowthSessionController, GrowthSessionOpenerParticipant, registerGrowthSession };
@@ -3,6 +3,7 @@ import { Event } from "@codingame/monaco-vscode-api/vscode/vs/base/common/event"
3
3
  import { Lazy } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lazy";
4
4
  import { Disposable, IDisposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
5
5
  import { URI } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri";
6
+ import { IContextKeyService } from "@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey.service";
6
7
  import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation";
7
8
  import { ILogService } from "@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service";
8
9
  import { ITelemetryService } from "@codingame/monaco-vscode-api/vscode/vs/platform/telemetry/common/telemetry.service";
@@ -22,6 +23,9 @@ import { Selection } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/
22
23
  import { IMarker } from "@codingame/monaco-vscode-api/vscode/vs/platform/markers/common/markers";
23
24
  import { IMarkerService } from "@codingame/monaco-vscode-api/vscode/vs/platform/markers/common/markers.service";
24
25
  import { ChatSetupController } from "./chatSetupController.js";
26
+ import { ICommandService } from "@codingame/monaco-vscode-api/vscode/vs/platform/commands/common/commands.service";
27
+ import { IOutputService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/output/common/output.service";
28
+ import { IExtensionsWorkbenchService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/extensions/common/extensions.service";
25
29
  export declare class SetupAgent extends Disposable implements IChatAgentImplementation {
26
30
  private readonly context;
27
31
  private readonly controller;
@@ -33,6 +37,10 @@ export declare class SetupAgent extends Disposable implements IChatAgentImplemen
33
37
  private readonly workspaceTrustManagementService;
34
38
  private readonly chatEntitlementService;
35
39
  private readonly viewsService;
40
+ private readonly contextKeyService;
41
+ private readonly outputService;
42
+ private readonly extensionsWorkbenchService;
43
+ private readonly commandService;
36
44
  static registerDefaultAgents(instantiationService: IInstantiationService, location: ChatAgentLocation, mode: ChatModeKind, context: ChatEntitlementContext, controller: Lazy<ChatSetupController>): {
37
45
  agent: SetupAgent;
38
46
  disposable: IDisposable;
@@ -42,10 +50,11 @@ export declare class SetupAgent extends Disposable implements IChatAgentImplemen
42
50
  private static readonly SETUP_NEEDED_MESSAGE;
43
51
  private static readonly TRUST_NEEDED_MESSAGE;
44
52
  private static readonly CHAT_RETRY_COMMAND_ID;
53
+ private static readonly CHAT_SHOW_OUTPUT_COMMAND_ID;
45
54
  private readonly _onUnresolvableError;
46
55
  readonly onUnresolvableError: Event<void>;
47
56
  private readonly pendingForwardedRequests;
48
- constructor(context: ChatEntitlementContext, controller: Lazy<ChatSetupController>, location: ChatAgentLocation, instantiationService: IInstantiationService, logService: ILogService, telemetryService: ITelemetryService, environmentService: IWorkbenchEnvironmentService, workspaceTrustManagementService: IWorkspaceTrustManagementService, chatEntitlementService: IChatEntitlementService, viewsService: IViewsService);
57
+ constructor(context: ChatEntitlementContext, controller: Lazy<ChatSetupController>, location: ChatAgentLocation, instantiationService: IInstantiationService, logService: ILogService, telemetryService: ITelemetryService, environmentService: IWorkbenchEnvironmentService, workspaceTrustManagementService: IWorkspaceTrustManagementService, chatEntitlementService: IChatEntitlementService, viewsService: IViewsService, contextKeyService: IContextKeyService, outputService: IOutputService, extensionsWorkbenchService: IExtensionsWorkbenchService, commandService: ICommandService);
49
58
  private registerCommands;
50
59
  invoke(request: IChatAgentRequest, progress: (parts: IChatProgress[]) => void): Promise<IChatAgentResult>;
51
60
  private doInvoke;
@@ -53,6 +62,7 @@ export declare class SetupAgent extends Disposable implements IChatAgentImplemen
53
62
  private forwardRequestToChat;
54
63
  private doForwardRequestToChat;
55
64
  private doForwardRequestToChatWhenReady;
65
+ private whenPanelAgentHasGuidance;
56
66
  private whenLanguageModelReady;
57
67
  private whenToolsModelReady;
58
68
  private whenAgentReady;