@codingame/monaco-vscode-chat-service-override 30.0.0 → 31.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 (377) hide show
  1. package/index.js +21 -3
  2. package/package.json +5 -5
  3. package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostProtocolClient.d.ts +125 -0
  4. package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostProtocolClient.js +393 -0
  5. package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostServiceImpl.d.ts +65 -0
  6. package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostServiceImpl.js +453 -0
  7. package/vscode/src/vs/platform/agentHost/browser/webSocketClientTransport.d.ts +28 -0
  8. package/vscode/src/vs/platform/agentHost/browser/webSocketClientTransport.js +81 -0
  9. package/vscode/src/vs/platform/agentHost/common/agentHostFileSystemProvider.d.ts +75 -0
  10. package/vscode/src/vs/platform/agentHost/common/agentHostFileSystemProvider.js +180 -0
  11. package/vscode/src/vs/platform/agentHost/common/agentService.d.ts +202 -51
  12. package/vscode/src/vs/platform/agentHost/common/state/agentSubscription.d.ts +182 -0
  13. package/vscode/src/vs/platform/agentHost/common/state/agentSubscription.js +282 -0
  14. package/vscode/src/vs/platform/agentHost/common/state/protocol/commands.d.ts +303 -32
  15. package/vscode/src/vs/platform/agentHost/common/state/protocol/commands.js +14 -0
  16. package/vscode/src/vs/platform/agentHost/common/state/protocol/errors.d.ts +1 -1
  17. package/vscode/src/vs/platform/agentHost/common/state/protocol/errors.js +9 -0
  18. package/vscode/src/vs/platform/agentHost/common/state/protocol/reducers.d.ts +30 -0
  19. package/vscode/src/vs/platform/agentHost/common/state/protocol/reducers.js +662 -0
  20. package/vscode/src/vs/platform/agentHost/common/state/sessionActions.d.ts +12 -5
  21. package/vscode/src/vs/platform/agentHost/common/state/sessionActions.js +9 -0
  22. package/vscode/src/vs/platform/agentHost/common/state/sessionCapabilities.d.ts +17 -0
  23. package/vscode/src/vs/platform/agentHost/common/state/sessionCapabilities.js +5 -0
  24. package/vscode/src/vs/platform/agentHost/common/state/sessionProtocol.d.ts +5 -5
  25. package/vscode/src/vs/platform/agentHost/common/state/sessionProtocol.js +14 -0
  26. package/vscode/src/vs/platform/agentHost/common/state/sessionTransport.d.ts +42 -0
  27. package/vscode/src/vs/platform/agentHost/common/state/sessionTransport.js +7 -0
  28. package/vscode/src/vs/platform/agentPlugins/common/pluginParsers.d.ts +118 -0
  29. package/vscode/src/vs/platform/agentPlugins/common/pluginParsers.js +551 -0
  30. package/vscode/src/vs/platform/networkFilter/common/networkFilterService.d.ts +22 -0
  31. package/vscode/src/vs/platform/networkFilter/common/networkFilterService.js +83 -0
  32. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityService.js +2 -2
  33. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.js +16 -16
  34. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.js +8 -8
  35. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +59 -59
  36. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAgentRecommendationActions.js +1 -1
  37. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.js +12 -12
  38. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.d.ts +2 -1
  39. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.js +17 -15
  40. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.d.ts +8 -0
  41. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +113 -9
  42. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +81 -4
  43. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +2 -2
  44. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatForkActions.js +47 -26
  45. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +15 -10
  46. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.js +13 -13
  47. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.js +6 -6
  48. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatNewActions.js +14 -14
  49. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatOpenAgentDebugPanelAction.js +13 -14
  50. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPluginActions.js +15 -14
  51. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.js +2 -2
  52. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQueueActions.d.ts +5 -0
  53. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQueueActions.js +58 -23
  54. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +8 -8
  55. package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +18 -18
  56. package/vscode/src/vs/workbench/contrib/chat/browser/actions/createPluginAction.d.ts +2 -1
  57. package/vscode/src/vs/workbench/contrib/chat/browser/actions/createPluginAction.js +24 -22
  58. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginActions.js +8 -8
  59. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditor.js +2 -2
  60. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditorInput.js +2 -2
  61. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.d.ts +3 -1
  62. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.js +29 -20
  63. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.js +16 -16
  64. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionWorkingDirectoryResolver.d.ts +9 -0
  65. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionWorkingDirectoryResolver.js +23 -0
  66. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.js +3 -3
  67. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.d.ts +2 -2
  68. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.js +65 -55
  69. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.js +5 -5
  70. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsQuickAccess.js +1 -1
  71. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjection.js +1 -1
  72. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionActions.js +4 -4
  73. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.js +1 -1
  74. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionsExperiments.contribution.js +5 -5
  75. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.js +28 -28
  76. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccess.js +17 -17
  77. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccessActions.js +4 -4
  78. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.d.ts +10 -3
  79. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.js +80 -15
  80. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.d.ts +20 -14
  81. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.js +30 -15
  82. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemSource.d.ts +131 -0
  83. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemSource.js +363 -0
  84. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.d.ts +31 -76
  85. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.js +374 -764
  86. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidgetUtils.d.ts +8 -0
  87. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidgetUtils.js +11 -1
  88. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.contribution.js +222 -44
  89. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.d.ts +20 -11
  90. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.js +269 -123
  91. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.js +1 -1
  92. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePage.d.ts +40 -0
  93. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePage.js +40 -0
  94. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePagePromptLaunchers.d.ts +26 -0
  95. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePagePromptLaunchers.js +249 -0
  96. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWorkspaceService.d.ts +3 -0
  97. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWorkspaceService.js +3 -0
  98. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.d.ts +4 -3
  99. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.js +5 -17
  100. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.d.ts +14 -1
  101. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.js +113 -58
  102. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationManagement.css +202 -68
  103. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationWelcomePromptLaunchers.css +246 -0
  104. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.d.ts +15 -1
  105. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.js +162 -50
  106. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/promptsServiceCustomizationItemProvider.d.ts +24 -0
  107. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/promptsServiceCustomizationItemProvider.js +306 -0
  108. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.js +1 -1
  109. package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +581 -257
  110. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatCustomizationDiscoveryRenderer.d.ts +15 -1
  111. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatCustomizationDiscoveryRenderer.js +245 -26
  112. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugDetailPanel.js +25 -7
  113. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditor.d.ts +1 -1
  114. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditor.js +3 -5
  115. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditorInput.js +2 -2
  116. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventDetailRenderer.js +19 -19
  117. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventList.js +7 -7
  118. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFilters.js +6 -6
  119. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowChartView.js +7 -7
  120. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowGraph.js +103 -28
  121. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowLayout.js +3 -2
  122. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHomeView.d.ts +11 -1
  123. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHomeView.js +80 -29
  124. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHookContentRenderer.js +17 -17
  125. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.d.ts +20 -3
  126. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.js +128 -65
  127. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugMessageContentRenderer.js +8 -8
  128. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugModelTurnContentRenderer.js +23 -23
  129. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugOverviewView.js +28 -28
  130. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugToolCallContentRenderer.js +11 -11
  131. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/media/chatDebug.css +18 -0
  132. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +1 -1
  133. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.js +3 -3
  134. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +2 -2
  135. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +1 -1
  136. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.d.ts +1 -0
  137. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +11 -1
  138. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +3 -3
  139. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +6 -5
  140. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +1 -1
  141. package/vscode/src/vs/workbench/contrib/chat/browser/chatImageCarouselService.js +1 -1
  142. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.js +10 -27
  143. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.d.ts +4 -41
  144. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.js +4 -310
  145. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.d.ts +0 -12
  146. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.js +3 -30
  147. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.js +2 -2
  148. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.d.ts +1 -0
  149. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.js +61 -53
  150. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/media/chatManagementEditor.css +0 -110
  151. package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +3 -3
  152. package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +31 -31
  153. package/vscode/src/vs/workbench/contrib/chat/browser/chatRepoInfo.js +2 -2
  154. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.js +46 -34
  155. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.d.ts +4 -4
  156. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.js +17 -18
  157. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupGrowthSession.js +6 -6
  158. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.d.ts +1 -0
  159. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.js +96 -82
  160. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.d.ts +2 -1
  161. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.js +21 -14
  162. package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.js +18 -18
  163. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatus.js +1 -1
  164. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.d.ts +15 -8
  165. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.js +315 -263
  166. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.js +14 -14
  167. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/media/chatStatus.css +196 -24
  168. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipCatalog.js +56 -17
  169. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipEligibilityTracker.d.ts +2 -2
  170. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.js +2 -2
  171. package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.js +8 -4
  172. package/vscode/src/vs/workbench/contrib/chat/browser/claudePluginRecommendations.js +2 -2
  173. package/vscode/src/vs/workbench/contrib/chat/browser/defaultModelContribution.js +4 -4
  174. package/vscode/src/vs/workbench/contrib/chat/browser/enablementActions.js +4 -4
  175. package/vscode/src/vs/workbench/contrib/chat/browser/enablementStatusWidget.js +2 -2
  176. package/vscode/src/vs/workbench/contrib/chat/browser/languageModelsConfigurationService.js +1 -1
  177. package/vscode/src/vs/workbench/contrib/chat/browser/pluginGitCommandService.d.ts +18 -0
  178. package/vscode/src/vs/workbench/contrib/chat/browser/pluginGitCommandService.js +31 -0
  179. package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.js +26 -25
  180. package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.d.ts +3 -1
  181. package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.js +48 -57
  182. package/vscode/src/vs/workbench/contrib/chat/browser/pluginUrlHandler.js +6 -6
  183. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +6 -6
  184. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.js +26 -26
  185. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.d.ts +2 -2
  186. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.js +3 -3
  187. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +2 -2
  188. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +2 -2
  189. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.js +8 -8
  190. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.js +7 -7
  191. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.js +3 -3
  192. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/skillActions.js +3 -3
  193. package/vscode/src/vs/workbench/contrib/chat/browser/promptsDebugContribution.d.ts +11 -6
  194. package/vscode/src/vs/workbench/contrib/chat/browser/promptsDebugContribution.js +226 -36
  195. package/vscode/src/vs/workbench/contrib/chat/browser/telemetry/chatModelCountTelemetry.d.ts +23 -0
  196. package/vscode/src/vs/workbench/contrib/chat/browser/telemetry/chatModelCountTelemetry.js +82 -0
  197. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.d.ts +3 -1
  198. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.js +108 -56
  199. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.js +24 -24
  200. package/vscode/src/vs/workbench/contrib/chat/browser/tools/renameTool.js +6 -6
  201. package/vscode/src/vs/workbench/contrib/chat/browser/tools/usagesTool.js +7 -7
  202. package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +5 -5
  203. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatQueuePickerActionItem.js +9 -9
  204. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatStatusWidget.d.ts +3 -4
  205. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatStatusWidget.js +9 -16
  206. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.js +21 -80
  207. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorContrib.js +26 -59
  208. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorHover.js +1 -1
  209. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/chatQuick.js +4 -3
  210. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditor.js +9 -1
  211. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.d.ts +2 -1
  212. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.js +46 -14
  213. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewTitleControl.js +2 -2
  214. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugEvents.d.ts +40 -0
  215. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugEvents.js +60 -0
  216. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.d.ts +32 -5
  217. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.js +152 -26
  218. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.d.ts +5 -9
  219. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.js +265 -261
  220. package/vscode/src/vs/workbench/contrib/chat/common/model/chatModelStore.d.ts +28 -2
  221. package/vscode/src/vs/workbench/contrib/chat/common/model/chatModelStore.js +75 -7
  222. package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionOperationLog.js +9 -1
  223. package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.js +6 -5
  224. package/vscode/src/vs/workbench/contrib/chat/common/model/objectMutationLog.d.ts +18 -0
  225. package/vscode/src/vs/workbench/contrib/chat/common/model/objectMutationLog.js +32 -4
  226. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.d.ts +10 -25
  227. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.d.ts +7 -52
  228. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.js +58 -466
  229. package/vscode/src/vs/workbench/contrib/chat/common/plugins/workspacePluginSettingsService.js +3 -1
  230. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +36 -18
  231. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.js +5 -5
  232. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +5 -5
  233. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.js +12 -12
  234. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.d.ts +0 -1
  235. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.js +168 -182
  236. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +49 -29
  237. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +491 -462
  238. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +16 -6
  239. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +18 -12
  240. package/vscode/src/vs/workbench/contrib/chat/common/tools/chatArtifactsService.d.ts +24 -4
  241. package/vscode/src/vs/workbench/contrib/chat/common/tools/chatArtifactsService.js +145 -68
  242. package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +1 -1
  243. package/vscode/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.js +2 -2
  244. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.js +4 -4
  245. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +25 -25
  246. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatDefaultModel.js +2 -2
  247. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatHistoryService.d.ts +2 -4
  248. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatHistoryService.js +19 -17
  249. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatNotebook.d.ts +1 -1
  250. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatNotebook.js +3 -3
  251. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.d.ts +5 -17
  252. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +77 -157
  253. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpPromptArgumentPick.js +14 -14
  254. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chat/notebookChatUtils.js +1 -1
  255. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/cellChatActions.js +10 -10
  256. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebook.chat.contribution.js +5 -5
  257. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +1 -1
  258. package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.js +7 -7
  259. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +17 -17
  260. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibleView.js +1 -1
  261. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +21 -21
  262. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatEnabler.js +1 -1
  263. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatService.d.ts +4 -1
  264. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatService.js +29 -7
  265. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +2 -2
  266. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.d.ts +1 -1
  267. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.js +3 -3
  268. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +12 -14
  269. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalLastCommandTool.js +4 -4
  270. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.d.ts +5 -1
  271. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.js +49 -12
  272. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.js +4 -4
  273. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/killTerminalTool.js +9 -8
  274. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.d.ts +2 -2
  275. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.js +13 -8
  276. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sendToTerminalTool.d.ts +53 -0
  277. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sendToTerminalTool.js +319 -0
  278. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/createAndRunTaskTool.js +15 -15
  279. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/getTaskOutputTool.js +8 -8
  280. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/runTaskTool.js +15 -15
  281. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.d.ts +1 -1
  282. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.js +2 -2
  283. package/vscode/src/vs/workbench/services/agentHost/common/agentHostFileSystemService.d.ts +21 -0
  284. package/vscode/src/vs/workbench/services/agentHost/common/agentHostFileSystemService.js +35 -0
  285. package/vscode/src/vs/platform/agentHost/common/agentService.service.d.ts +0 -94
  286. package/vscode/src/vs/platform/agentHost/common/state/protocol/action-origin.generated.d.ts +0 -16
  287. package/vscode/src/vs/platform/agentHost/common/state/protocol/actions.d.ts +0 -578
  288. package/vscode/src/vs/platform/agentHost/common/state/protocol/messages.d.ts +0 -206
  289. package/vscode/src/vs/platform/agentHost/common/state/protocol/notifications.d.ts +0 -114
  290. package/vscode/src/vs/platform/agentHost/common/state/protocol/state.d.ts +0 -860
  291. package/vscode/src/vs/platform/agentHost/common/state/sessionState.d.ts +0 -27
  292. package/vscode/src/vs/platform/browserElements/common/browserElements.d.ts +0 -58
  293. package/vscode/src/vs/platform/browserElements/common/browserElements.js +0 -16
  294. package/vscode/src/vs/platform/sandbox/common/sandboxHelperIpc.d.ts +0 -18
  295. package/vscode/src/vs/platform/sandbox/common/sandboxHelperIpc.js +0 -13
  296. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/media/simpleBrowserOverlay.css +0 -85
  297. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/simpleBrowserEditorOverlay.d.ts +0 -9
  298. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/simpleBrowserEditorOverlay.js +0 -443
  299. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatUsageWidget.d.ts +0 -17
  300. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatUsageWidget.js +0 -132
  301. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/media/chatUsageWidget.css +0 -69
  302. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetup.d.ts +0 -65
  303. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetup.js +0 -66
  304. package/vscode/src/vs/workbench/contrib/chat/common/chatArtifactExtraction.d.ts +0 -8
  305. package/vscode/src/vs/workbench/contrib/chat/common/chatArtifactExtraction.js +0 -158
  306. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/alternativeRecommendation.d.ts +0 -2
  307. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/alternativeRecommendation.js +0 -41
  308. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers/commandFileWriteParser.d.ts +0 -24
  309. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers/sedFileWriteParser.d.ts +0 -26
  310. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers/sedFileWriteParser.js +0 -142
  311. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.d.ts +0 -45
  312. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.js +0 -164
  313. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.d.ts +0 -50
  314. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.js +0 -163
  315. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.d.ts +0 -27
  316. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.js +0 -142
  317. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.d.ts +0 -29
  318. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.js +0 -137
  319. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/strategyHelpers.d.ts +0 -40
  320. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/strategyHelpers.js +0 -174
  321. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/outputHelpers.d.ts +0 -3
  322. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/outputHelpers.js +0 -39
  323. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.d.ts +0 -32
  324. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +0 -249
  325. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.d.ts +0 -41
  326. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.js +0 -92
  327. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.d.ts +0 -40
  328. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.js +0 -209
  329. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/awaitTerminalTool.d.ts +0 -12
  330. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/awaitTerminalTool.js +0 -106
  331. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/commandLineAutoApprover.d.ts +0 -31
  332. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/commandLineAutoApprover.js +0 -392
  333. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/npmScriptAutoApprover.d.ts +0 -45
  334. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/npmScriptAutoApprover.js +0 -243
  335. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAnalyzer.d.ts +0 -52
  336. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAnalyzer.js +0 -10
  337. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.d.ts +0 -20
  338. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.js +0 -310
  339. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.d.ts +0 -19
  340. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.js +0 -168
  341. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineSandboxAnalyzer.d.ts +0 -8
  342. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineSandboxAnalyzer.js +0 -25
  343. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/commandLinePresenter.d.ts +0 -41
  344. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/nodeCommandLinePresenter.d.ts +0 -19
  345. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/nodeCommandLinePresenter.js +0 -37
  346. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/pythonCommandLinePresenter.d.ts +0 -19
  347. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/pythonCommandLinePresenter.js +0 -37
  348. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/rubyCommandLinePresenter.d.ts +0 -19
  349. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/rubyCommandLinePresenter.js +0 -44
  350. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/sandboxedCommandLinePresenter.d.ts +0 -13
  351. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/sandboxedCommandLinePresenter.js +0 -21
  352. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineCdPrefixRewriter.d.ts +0 -5
  353. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineCdPrefixRewriter.js +0 -27
  354. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePreventHistoryRewriter.d.ts +0 -14
  355. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePreventHistoryRewriter.js +0 -29
  356. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePwshChainOperatorRewriter.d.ts +0 -8
  357. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePwshChainOperatorRewriter.js +0 -33
  358. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineRewriter.d.ts +0 -20
  359. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineSandboxRewriter.d.ts +0 -8
  360. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineSandboxRewriter.js +0 -28
  361. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.d.ts +0 -118
  362. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +0 -1019
  363. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/types.d.ts +0 -49
  364. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/types.js +0 -23
  365. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/outputAnalyzer.d.ts +0 -9
  366. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.d.ts +0 -150
  367. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +0 -1619
  368. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.d.ts +0 -22
  369. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.js +0 -41
  370. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalCommandArtifactCollector.d.ts +0 -17
  371. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalCommandArtifactCollector.js +0 -118
  372. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/toolIds.d.ts +0 -12
  373. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/toolIds.js +0 -17
  374. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.d.ts +0 -25
  375. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.js +0 -130
  376. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.d.ts +0 -122
  377. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.js +0 -482
@@ -3,12 +3,12 @@ import { IFileService } from "@codingame/monaco-vscode-api/vscode/vs/platform/fi
3
3
  import { IWorkspaceFolder } from "@codingame/monaco-vscode-api/vscode/vs/platform/workspace/common/workspace";
4
4
  import { IWorkspaceContextService } from "@codingame/monaco-vscode-api/vscode/vs/platform/workspace/common/workspace.service";
5
5
  import { IConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service";
6
- import { IResolvedPromptSourceFolder } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/config/promptFileLocations";
6
+ import { IPromptSourceFolder, IResolvedPromptSourceFolder } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/config/promptFileLocations";
7
7
  import { PromptsType } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/promptTypes";
8
8
  import { IWorkbenchEnvironmentService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/environment/common/environmentService.service";
9
9
  import { ISearchService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/search/common/search.service";
10
10
  import { CancellationToken } from "@codingame/monaco-vscode-api/vscode/vs/base/common/cancellation";
11
- import { AgentFileType, IPromptPath, IResolvedAgentFile, Logger, PromptsStorage } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService";
11
+ import { AgentInstructionFileType, IPromptPath, IAgentInstructionFile, Logger, PromptsStorage } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService";
12
12
  import { IUserDataProfileService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/userDataProfile/common/userDataProfile.service";
13
13
  import { Event } from "@codingame/monaco-vscode-api/vscode/vs/base/common/event";
14
14
  import { ILogService } from "@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service";
@@ -16,7 +16,7 @@ import { IPathService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/s
16
16
  import { IWorkspaceTrustManagementService } from "@codingame/monaco-vscode-api/vscode/vs/platform/workspace/common/workspaceTrust.service";
17
17
  export interface IWorkspaceInstructionFile {
18
18
  readonly fileName: string;
19
- readonly type: AgentFileType;
19
+ readonly type: AgentInstructionFileType;
20
20
  }
21
21
  /**
22
22
  * Utility class to locate prompt files.
@@ -36,6 +36,16 @@ export declare class PromptFilesLocator {
36
36
  protected getWorkspaceFolders(): readonly IWorkspaceFolder[];
37
37
  protected getWorkspaceFolder(resource: URI): IWorkspaceFolder | undefined;
38
38
  protected onDidChangeWorkspaceFolders(): Event<void>;
39
+ /**
40
+ * Returns the configured prompt source folders for the given type.
41
+ * Subclasses can override to filter out unsupported sources.
42
+ */
43
+ protected getPromptSourceFolders(type: PromptsType): IPromptSourceFolder[];
44
+ /**
45
+ * Returns the default prompt source folders for the given type.
46
+ * Subclasses can override to filter out unsupported sources.
47
+ */
48
+ protected getDefaultSourceFolders(type: PromptsType): readonly IPromptSourceFolder[];
39
49
  getWorkspaceFolderRoots(includeParents: boolean, logger?: Logger): Promise<URI[]>;
40
50
  /**
41
51
  * Walks up from {@link folderUri} collecting parent folders until a
@@ -57,7 +67,7 @@ export declare class PromptFilesLocator {
57
67
  };
58
68
  /**
59
69
  * Gets the hook source folders for creating new hooks.
60
- * Returns folders from config, excluding user storage and Claude paths (which are read-only).
70
+ * Returns configured hook folders, excluding Claude paths (which are read-only).
61
71
  */
62
72
  getHookSourceFolders(): Promise<readonly URI[]>;
63
73
  /**
@@ -124,14 +134,14 @@ export declare class PromptFilesLocator {
124
134
  /**
125
135
  * Gets list of `AGENTS.md` files anywhere in the workspace.
126
136
  */
127
- findAgentMDsInWorkspace(token: CancellationToken): Promise<IResolvedAgentFile[]>;
137
+ findAgentMDsInWorkspace(token: CancellationToken): Promise<IAgentInstructionFile[]>;
128
138
  private findAgentMDsInFolder;
129
139
  /**
130
140
  * Recursively traverses a folder using the file service to find AGENTS.md files.
131
141
  * This is used as a fallback when no FileSearchProvider is available for the scheme.
132
142
  */
133
143
  private findAgentMDsUsingFileService;
134
- findFilesInRoots(roots: URI[], folder: string | undefined, paths: IWorkspaceInstructionFile[], token: CancellationToken, result?: IResolvedAgentFile[]): Promise<IResolvedAgentFile[]>;
144
+ findFilesInRoots(roots: URI[], folder: string | undefined, paths: IWorkspaceInstructionFile[], token: CancellationToken, result?: IAgentInstructionFile[]): Promise<IAgentInstructionFile[]>;
135
145
  getAgentFileURIFromModeFile(oldURI: URI): URI | undefined;
136
146
  private findAgentSkillsInFolder;
137
147
  /**
@@ -10,7 +10,7 @@ import { PromptsConfig, getPromptFileLocationsConfigKey, isTildePath } from '@co
10
10
  import { joinPath, dirname, isEqual, basename, isEqualOrParent, extname } from '@codingame/monaco-vscode-api/vscode/vs/base/common/resources';
11
11
  import { IWorkspaceContextService } from '@codingame/monaco-vscode-api/vscode/vs/platform/workspace/common/workspace.service';
12
12
  import { IConfigurationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service';
13
- import { getPromptFileType, getPromptFileExtension, getPromptFileDefaultLocations, LEGACY_MODE_FILE_EXTENSION, AGENTS_SOURCE_FOLDER, getCleanPromptName, AGENT_FILE_EXTENSION, SKILL_FILENAME } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/config/promptFileLocations';
13
+ import { getPromptFileDefaultLocations, getPromptFileType, getPromptFileExtension, LEGACY_MODE_FILE_EXTENSION, AGENTS_SOURCE_FOLDER, getCleanPromptName, AGENT_FILE_EXTENSION, SKILL_FILENAME } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/config/promptFileLocations';
14
14
  import { PromptFileSource, PromptsType } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/promptTypes';
15
15
  import { IWorkbenchEnvironmentService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/environment/common/environmentService.service';
16
16
  import { Schemas } from '@codingame/monaco-vscode-api/vscode/vs/base/common/network';
@@ -18,7 +18,7 @@ import { getExcludes, QueryType } from '@codingame/monaco-vscode-api/vscode/vs/w
18
18
  import { ISearchService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/search/common/search.service';
19
19
  import { CancellationTokenSource } from '@codingame/monaco-vscode-api/vscode/vs/base/common/cancellation';
20
20
  import { isCancellationError } from '@codingame/monaco-vscode-api/vscode/vs/base/common/errors';
21
- import { PromptsStorage, AgentFileType } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService';
21
+ import { PromptsStorage, AgentInstructionFileType } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService';
22
22
  import { IUserDataProfileService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/userDataProfile/common/userDataProfile.service';
23
23
  import { Event, Emitter } from '@codingame/monaco-vscode-api/vscode/vs/base/common/event';
24
24
  import { DisposableStore } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
@@ -56,7 +56,7 @@ let PromptFilesLocator = class PromptFilesLocator {
56
56
  filePattern: undefined,
57
57
  source: PromptFileSource.CopilotPersonal,
58
58
  storage: PromptsStorage.user,
59
- displayPath: ( localize(7639, "User Data")),
59
+ displayPath: ( localize(7749, "User Data")),
60
60
  isDefault: true
61
61
  };
62
62
  }
@@ -69,6 +69,12 @@ let PromptFilesLocator = class PromptFilesLocator {
69
69
  onDidChangeWorkspaceFolders() {
70
70
  return ( Event.map(this.workspaceService.onDidChangeWorkspaceFolders, () => undefined));
71
71
  }
72
+ getPromptSourceFolders(type) {
73
+ return PromptsConfig.promptSourceFolders(this.configService, type);
74
+ }
75
+ getDefaultSourceFolders(type) {
76
+ return getPromptFileDefaultLocations(type);
77
+ }
72
78
  async getWorkspaceFolderRoots(includeParents, logger) {
73
79
  const workspaceFolders = this.getWorkspaceFolders();
74
80
  if (includeParents) {
@@ -118,7 +124,7 @@ let PromptFilesLocator = class PromptFilesLocator {
118
124
  if (storage !== PromptsStorage.user && storage !== PromptsStorage.local) {
119
125
  throw ( new Error(`Unsupported prompt file storage: ${storage}`));
120
126
  }
121
- const configuredLocations = PromptsConfig.promptSourceFolders(this.configService, type);
127
+ const configuredLocations = this.getPromptSourceFolders(type);
122
128
  const absoluteLocations = await this.toAbsoluteLocations(type, configuredLocations.filter(loc => loc.storage === storage));
123
129
  if (storage === PromptsStorage.user && (type === PromptsType.agent || type === PromptsType.instructions || type === PromptsType.prompt)) {
124
130
  absoluteLocations.push(this.userDataFolder);
@@ -163,7 +169,7 @@ let PromptFilesLocator = class PromptFilesLocator {
163
169
  };
164
170
  const update = async () => {
165
171
  try {
166
- const configuredLocations = PromptsConfig.promptSourceFolders(this.configService, type);
172
+ const configuredLocations = this.getPromptSourceFolders(type);
167
173
  parentFolders = await this.toAbsoluteLocations(type, configuredLocations, undefined);
168
174
  if (token.isCancellationRequested) {
169
175
  return;
@@ -205,7 +211,7 @@ let PromptFilesLocator = class PromptFilesLocator {
205
211
  };
206
212
  }
207
213
  async getHookSourceFolders() {
208
- const configuredLocations = PromptsConfig.promptSourceFolders(this.configService, PromptsType.hook);
214
+ const configuredLocations = this.getPromptSourceFolders(PromptsType.hook);
209
215
  const allowedHookFolders = configuredLocations.filter(loc => !loc.path.startsWith(".claude/") && !loc.path.includes("/.claude/"));
210
216
  const result = ( new ResourceSet());
211
217
  const absoluteLocations = await this.toAbsoluteLocations(PromptsType.hook, allowedHookFolders);
@@ -215,7 +221,7 @@ let PromptFilesLocator = class PromptFilesLocator {
215
221
  return [...result];
216
222
  }
217
223
  async getConfigBasedSourceFolders(type) {
218
- const configuredLocations = PromptsConfig.promptSourceFolders(this.configService, type);
224
+ const configuredLocations = this.getPromptSourceFolders(type);
219
225
  const absoluteLocations = await this.toAbsoluteLocations(type, configuredLocations);
220
226
  if (type !== PromptsType.prompt && type !== PromptsType.instructions) {
221
227
  return ( absoluteLocations.map(l => l.uri));
@@ -254,8 +260,8 @@ let PromptFilesLocator = class PromptFilesLocator {
254
260
  return this.dedupeSourceFolders([...userFolders, ...localFolders]);
255
261
  }
256
262
  async getLocalStorageFolders(type) {
257
- const configuredLocations = PromptsConfig.promptSourceFolders(this.configService, type);
258
- const defaultFolders = getPromptFileDefaultLocations(type);
263
+ const configuredLocations = this.getPromptSourceFolders(type);
264
+ const defaultFolders = this.getDefaultSourceFolders(type);
259
265
  const allFolders = [...defaultFolders, ...configuredLocations.filter(loc => !( defaultFolders.some(df => df.path === loc.path)))];
260
266
  const absoluteLocations = await this.toAbsoluteLocations(type, allFolders, defaultFolders);
261
267
  if (type === PromptsType.agent || type === PromptsType.instructions || type === PromptsType.prompt) {
@@ -485,7 +491,7 @@ let PromptFilesLocator = class PromptFilesLocator {
485
491
  results.push({
486
492
  uri: r.resource,
487
493
  realPath,
488
- type: AgentFileType.agentsMd
494
+ type: AgentInstructionFileType.agentsMd
489
495
  });
490
496
  }
491
497
  return results;
@@ -513,7 +519,7 @@ let PromptFilesLocator = class PromptFilesLocator {
513
519
  result.push({
514
520
  uri: stat.resource,
515
521
  realPath,
516
- type: AgentFileType.agentsMd
522
+ type: AgentInstructionFileType.agentsMd
517
523
  });
518
524
  } else if (stat.isDirectory && stat.children) {
519
525
  for (const child of stat.children) {
@@ -603,7 +609,7 @@ let PromptFilesLocator = class PromptFilesLocator {
603
609
  }
604
610
  }
605
611
  async findAgentSkills(token) {
606
- const configuredLocations = PromptsConfig.promptSourceFolders(this.configService, PromptsType.skill);
612
+ const configuredLocations = this.getPromptSourceFolders(PromptsType.skill);
607
613
  const absoluteLocations = await this.toAbsoluteLocations(PromptsType.skill, configuredLocations);
608
614
  const allResults = [];
609
615
  for (const {
@@ -18,11 +18,31 @@ export interface IChatArtifact {
18
18
  readonly groupName?: string;
19
19
  readonly onlyShowGroup?: boolean;
20
20
  }
21
+ export type ArtifactSource = {
22
+ readonly kind: "rules";
23
+ } | {
24
+ readonly kind: "agent";
25
+ } | {
26
+ readonly kind: "subagent";
27
+ readonly invocationId: string;
28
+ readonly name: string | undefined;
29
+ };
30
+ export interface IArtifactSourceGroup {
31
+ readonly source: ArtifactSource;
32
+ readonly artifacts: readonly IChatArtifact[];
33
+ }
34
+ export interface IArtifactRuleOverrides {
35
+ readonly byMimeType?: Record<string, IArtifactGroupConfig>;
36
+ readonly byFilePath?: Record<string, IArtifactGroupConfig>;
37
+ readonly byMemoryFilePath?: Record<string, IArtifactGroupConfig>;
38
+ }
21
39
  export interface IChatArtifacts {
22
- readonly artifacts: IObservable<readonly IChatArtifact[]>;
23
- readonly mutable: IObservable<boolean>;
24
- set(artifacts: IChatArtifact[]): void;
25
- clear(): void;
40
+ readonly artifactGroups: IObservable<readonly IArtifactSourceGroup[]>;
41
+ setAgentArtifacts(artifacts: IChatArtifact[]): void;
42
+ setSubagentArtifacts(invocationId: string, name: string | undefined, artifacts: IChatArtifact[]): void;
43
+ setRuleOverrides(rules: IArtifactRuleOverrides | undefined): void;
44
+ clearAgentArtifacts(): void;
45
+ clearSubagentArtifacts(invocationId: string): void;
26
46
  migrate(target: IChatArtifacts): void;
27
47
  }
28
48
  export declare class ChatArtifactsService extends Disposable implements IChatArtifactsService {
@@ -6,16 +6,15 @@ import { IConfigurationService } from '@codingame/monaco-vscode-api/vscode/vs/pl
6
6
  import { StorageScope, StorageTarget } from '@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage';
7
7
  import { IStorageService } from '@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage.service';
8
8
  import { Memento } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/memento';
9
- import { extractArtifactsFromResponse } from '../chatArtifactExtraction.js';
9
+ import { extractArtifactsFromResponse } from '@codingame/monaco-vscode-katex-common/vscode/vs/workbench/contrib/chat/common/chatArtifactExtraction';
10
10
  import { IChatToolInvocation } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService/chatService';
11
11
  import { IChatService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService/chatService.service';
12
12
  import { ChatConfiguration } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
13
13
  import { chatSessionResourceToId } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/model/chatUri';
14
+ import { observableValueOpts } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/observableValueOpts';
14
15
  import { observableFromEvent } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/observableFromEvent';
15
16
  import { derived } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/derived';
16
- import { constObservable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/constObservable';
17
17
  import { observableSignalFromEvent } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/observableSignalFromEvent';
18
- import { observableValueOpts } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/observableValueOpts';
19
18
 
20
19
  let ChatArtifactsStorage = class ChatArtifactsStorage {
21
20
  constructor(storageService) {
@@ -37,11 +36,32 @@ let ChatArtifactsStorage = class ChatArtifactsStorage {
37
36
  }
38
37
  };
39
38
  ChatArtifactsStorage = ( __decorate([( __param(0, IStorageService))], ChatArtifactsStorage));
40
- class RulesChatArtifacts extends Disposable {
41
- constructor(sessionResource, chatService, configurationService) {
39
+ class UnifiedChatArtifacts extends Disposable {
40
+ constructor(sessionResource, _storageKey, _storage, chatService, configurationService) {
42
41
  super();
43
- this.mutable = constObservable(false);
42
+ this._storageKey = _storageKey;
43
+ this._storage = _storage;
44
44
  this._responseCache = ( new Map());
45
+ this._ruleOverrides = observableValueOpts({
46
+ owner: this,
47
+ equalsFn: () => false
48
+ }, undefined);
49
+ this._agentArtifacts = observableValueOpts({
50
+ owner: this,
51
+ equalsFn: () => false
52
+ }, []);
53
+ this._subagentArtifacts = observableValueOpts({
54
+ owner: this,
55
+ equalsFn: () => false
56
+ }, ( new Map()));
57
+ this._nextSequence = 1;
58
+ this._sourceSequences = ( new Map());
59
+ const restored = this._storage.get(this._storageKey);
60
+ this._agentArtifacts.set(restored, undefined);
61
+ this._sourceSequences.set("rules", 0);
62
+ if (restored.length > 0) {
63
+ this._sourceSequences.set("agent", this._nextSequence++);
64
+ }
45
65
  const configByMimeType = observableFromEvent(
46
66
  this,
47
67
  configurationService.onDidChangeConfiguration,
@@ -52,14 +72,21 @@ class RulesChatArtifacts extends Disposable {
52
72
  configurationService.onDidChangeConfiguration,
53
73
  () => configurationService.getValue(ChatConfiguration.ArtifactsRulesByFilePath) ?? {}
54
74
  );
75
+ const configByMemoryFilePath = observableFromEvent(
76
+ this,
77
+ configurationService.onDidChangeConfiguration,
78
+ () => configurationService.getValue(ChatConfiguration.ArtifactsRulesByMemoryFilePath) ?? {}
79
+ );
55
80
  const modelSignal = observableFromEvent(
56
81
  this,
57
82
  chatService.onDidCreateModel,
58
83
  () => chatService.getSession(sessionResource)
59
84
  );
60
- this.artifacts = derived(reader => {
61
- const byMimeType = configByMimeType.read(reader);
62
- const byFilePath = configByFilePath.read(reader);
85
+ const rulesArtifacts = derived(reader => {
86
+ const overrides = this._ruleOverrides.read(reader);
87
+ const byMimeType = overrides?.byMimeType ?? configByMimeType.read(reader);
88
+ const byFilePath = overrides?.byFilePath ?? configByFilePath.read(reader);
89
+ const byMemoryFilePath = overrides?.byMemoryFilePath ?? configByMemoryFilePath.read(reader);
63
90
  const model = modelSignal.read(reader);
64
91
  if (!model) {
65
92
  return [];
@@ -86,15 +113,16 @@ class RulesChatArtifacts extends Disposable {
86
113
  }
87
114
  const cached = this._responseCache.get(response.id);
88
115
  let extracted;
89
- if (cached && cached.partsLength === partsLength && cached.completedToolCount === completedToolCount && cached.byMimeType === byMimeType && cached.byFilePath === byFilePath) {
116
+ if (cached && cached.partsLength === partsLength && cached.completedToolCount === completedToolCount && cached.byMimeType === byMimeType && cached.byFilePath === byFilePath && cached.byMemoryFilePath === byMemoryFilePath) {
90
117
  extracted = cached.artifacts;
91
118
  } else {
92
- extracted = extractArtifactsFromResponse(responseValue, sessionResource, byMimeType, byFilePath);
119
+ extracted = extractArtifactsFromResponse(responseValue, sessionResource, byMimeType, byFilePath, byMemoryFilePath);
93
120
  this._responseCache.set(response.id, {
94
121
  partsLength,
95
122
  completedToolCount,
96
123
  byMimeType,
97
124
  byFilePath,
125
+ byMemoryFilePath,
98
126
  artifacts: extracted
99
127
  });
100
128
  }
@@ -119,71 +147,120 @@ class RulesChatArtifacts extends Disposable {
119
147
  }
120
148
  return allArtifacts;
121
149
  });
150
+ this.artifactGroups = derived(reader => {
151
+ const entries = [];
152
+ const rules = rulesArtifacts.read(reader);
153
+ if (rules.length > 0) {
154
+ entries.push({
155
+ key: "rules",
156
+ seq: this._sourceSequences.get("rules") ?? 0,
157
+ group: {
158
+ source: {
159
+ kind: "rules"
160
+ },
161
+ artifacts: rules
162
+ }
163
+ });
164
+ }
165
+ const agent = this._agentArtifacts.read(reader);
166
+ if (agent.length > 0) {
167
+ entries.push({
168
+ key: "agent",
169
+ seq: this._sourceSequences.get("agent") ?? Infinity,
170
+ group: {
171
+ source: {
172
+ kind: "agent"
173
+ },
174
+ artifacts: agent
175
+ }
176
+ });
177
+ }
178
+ const subagents = this._subagentArtifacts.read(reader);
179
+ for (const [invocationId, entry] of subagents) {
180
+ if (entry.artifacts.length > 0) {
181
+ const key = `subagent:${invocationId}`;
182
+ entries.push({
183
+ key,
184
+ seq: this._sourceSequences.get(key) ?? Infinity,
185
+ group: {
186
+ source: {
187
+ kind: "subagent",
188
+ invocationId,
189
+ name: entry.name
190
+ },
191
+ artifacts: entry.artifacts
192
+ }
193
+ });
194
+ }
195
+ }
196
+ entries.sort((a, b) => a.seq - b.seq);
197
+ const seenKeys = ( new Set());
198
+ const groups = [];
199
+ for (const entry of entries) {
200
+ const filtered = entry.group.artifacts.filter(a => {
201
+ const k = a.toolCallId ? `${a.toolCallId}:${a.dataPartIndex}` : a.uri;
202
+ if (!k) {
203
+ return false;
204
+ }
205
+ const normalized = k.toLowerCase();
206
+ if (( seenKeys.has(normalized))) {
207
+ return false;
208
+ }
209
+ seenKeys.add(normalized);
210
+ return true;
211
+ });
212
+ if (filtered.length > 0) {
213
+ groups.push({
214
+ source: entry.group.source,
215
+ artifacts: filtered
216
+ });
217
+ }
218
+ }
219
+ return groups;
220
+ });
122
221
  }
123
- set() {
124
- throw ( new Error("Artifacts are not mutable in rules mode"));
125
- }
126
- clear() {
127
- throw ( new Error("Artifacts are not mutable in rules mode"));
128
- }
129
- migrate() {}
130
- }
131
- class StorageChatArtifacts {
132
- constructor(_storageKey, _storage) {
133
- this._storageKey = _storageKey;
134
- this._storage = _storage;
135
- this.mutable = constObservable(true);
136
- this._artifacts = observableValueOpts({
137
- owner: this,
138
- equalsFn: () => false
139
- }, []);
140
- this.artifacts = this._artifacts;
141
- this._artifacts.set(this._storage.get(this._storageKey), undefined);
142
- }
143
- set(artifacts) {
144
- this._artifacts.set(artifacts, undefined);
222
+ setAgentArtifacts(artifacts) {
223
+ if (!( this._sourceSequences.has("agent"))) {
224
+ this._sourceSequences.set("agent", this._nextSequence++);
225
+ }
226
+ this._agentArtifacts.set(artifacts, undefined);
145
227
  this._storage.set(this._storageKey, artifacts);
146
228
  }
147
- clear() {
148
- this._artifacts.set([], undefined);
149
- this._storage.set(this._storageKey, []);
150
- }
151
- migrate(target) {
152
- const current = this._artifacts.get();
153
- if (current.length > 0 && target.mutable.get()) {
154
- target.set([...current]);
229
+ setSubagentArtifacts(invocationId, name, artifacts) {
230
+ const key = `subagent:${invocationId}`;
231
+ if (!( this._sourceSequences.has(key))) {
232
+ this._sourceSequences.set(key, this._nextSequence++);
155
233
  }
156
- this._artifacts.set([], undefined);
157
- this._storage.delete(this._storageKey);
234
+ const map = ( new Map(this._subagentArtifacts.get()));
235
+ if (artifacts.length === 0) {
236
+ map.delete(invocationId);
237
+ } else {
238
+ map.set(invocationId, {
239
+ name,
240
+ artifacts
241
+ });
242
+ }
243
+ this._subagentArtifacts.set(map, undefined);
158
244
  }
159
- }
160
- class SwitchingChatArtifacts extends Disposable {
161
- constructor(sessionResource, storageKey, storage, chatService, configurationService) {
162
- super();
163
- this._rules = this._register(( new RulesChatArtifacts(sessionResource, chatService, configurationService)));
164
- this._storage = ( new StorageChatArtifacts(storageKey, storage));
165
- const modeObs = observableFromEvent(
166
- this,
167
- configurationService.onDidChangeConfiguration,
168
- () => configurationService.getValue(ChatConfiguration.ArtifactsMode) ?? "rules"
169
- );
170
- this._active = derived(reader => {
171
- const mode = modeObs.read(reader);
172
- return mode === "tool" ? this._storage : this._rules;
173
- });
174
- this.mutable = derived(reader => this._active.read(reader).mutable.read(reader));
175
- this.artifacts = derived(reader => this._active.read(reader).artifacts.read(reader));
245
+ setRuleOverrides(rules) {
246
+ this._ruleOverrides.set(rules, undefined);
176
247
  }
177
- set(artifacts) {
178
- const active = this._active.get();
179
- active.set(artifacts);
248
+ clearAgentArtifacts() {
249
+ this._agentArtifacts.set([], undefined);
250
+ this._storage.set(this._storageKey, []);
180
251
  }
181
- clear() {
182
- const active = this._active.get();
183
- active.clear();
252
+ clearSubagentArtifacts(invocationId) {
253
+ const map = ( new Map(this._subagentArtifacts.get()));
254
+ map.delete(invocationId);
255
+ this._subagentArtifacts.set(map, undefined);
184
256
  }
185
257
  migrate(target) {
186
- this._storage.migrate(target);
258
+ const current = this._agentArtifacts.get();
259
+ if (current.length > 0) {
260
+ target.setAgentArtifacts([...current]);
261
+ }
262
+ this._agentArtifacts.set([], undefined);
263
+ this._storage.delete(this._storageKey);
187
264
  }
188
265
  }
189
266
  let ChatArtifactsService = class ChatArtifactsService extends Disposable {
@@ -198,7 +275,7 @@ let ChatArtifactsService = class ChatArtifactsService extends Disposable {
198
275
  const key = chatSessionResourceToId(sessionResource);
199
276
  let instance = this._instances.get(key);
200
277
  if (!instance) {
201
- instance = ( new SwitchingChatArtifacts(
278
+ instance = ( new UnifiedChatArtifacts(
202
279
  sessionResource,
203
280
  key,
204
281
  this._storage,
@@ -20,7 +20,7 @@ var PhraseTextType;
20
20
  })(PhraseTextType || (PhraseTextType = {}));
21
21
  const VoiceChatInProgress = ( new RawContextKey("voiceChatInProgress", false, {
22
22
  type: "boolean",
23
- description: ( localize(7697, "A speech-to-text session is in progress for chat."))
23
+ description: ( localize(7816, "A speech-to-text session is in progress for chat."))
24
24
  }));
25
25
  let VoiceChatService = class VoiceChatService extends Disposable {
26
26
  static {
@@ -27,7 +27,7 @@ let AiEditTelemetryServiceImpl = class AiEditTelemetryServiceImpl {
27
27
  editLinesInserted: data.editDeltaInfo?.linesAdded,
28
28
  editLinesDeleted: data.editDeltaInfo?.linesRemoved,
29
29
  modeId: data.modeId,
30
- modelId: data.modelId?.replace(/[\/\\]/g, "_"),
30
+ modelId: data.modelId?.replace(/[\/\\]/g, "|"),
31
31
  applyCodeBlockSuggestionId: data.applyCodeBlockSuggestionId,
32
32
  ...forwardToChannelIf(isCopilotLikeExtension(data.source?.extensionId))
33
33
  });
@@ -48,7 +48,7 @@ let AiEditTelemetryServiceImpl = class AiEditTelemetryServiceImpl {
48
48
  editLinesInserted: data.editDeltaInfo?.linesAdded,
49
49
  editLinesDeleted: data.editDeltaInfo?.linesRemoved,
50
50
  modeId: data.modeId,
51
- modelId: data.modelId?.replace(/[\/\\]/g, "_"),
51
+ modelId: data.modelId?.replace(/[\/\\]/g, "|"),
52
52
  applyCodeBlockSuggestionId: data.applyCodeBlockSuggestionId,
53
53
  acceptanceMethod: data.acceptanceMethod,
54
54
  ...forwardToChannelIf(isCopilotLikeExtension(data.source?.extensionId))
@@ -36,7 +36,7 @@ const editActionMenuItem = {
36
36
  order: 0,
37
37
  command: {
38
38
  id: ChatSubmitAction.ID,
39
- title: ( localize(9925, "Edit Code"))
39
+ title: ( localize(10063, "Edit Code"))
40
40
  },
41
41
  when: ( ContextKeyExpr.and(ChatContextKeys.inputHasText, ( CTX_INLINE_CHAT_REQUEST_IN_PROGRESS.toNegated()), CTX_INLINE_CHAT_EDITING, CTX_INLINE_CHAT_V1_ENABLED))
42
42
  };
@@ -45,7 +45,7 @@ const generateActionMenuItem = {
45
45
  order: 0,
46
46
  command: {
47
47
  id: ChatSubmitAction.ID,
48
- title: ( localize(9926, "Generate"))
48
+ title: ( localize(10064, "Generate"))
49
49
  },
50
50
  when: ( ContextKeyExpr.and(ChatContextKeys.inputHasText, ( CTX_INLINE_CHAT_REQUEST_IN_PROGRESS.toNegated()), ( CTX_INLINE_CHAT_EDITING.toNegated()), CTX_INLINE_CHAT_V1_ENABLED))
51
51
  };
@@ -56,8 +56,8 @@ const cancelActionMenuItem = {
56
56
  order: 0,
57
57
  command: {
58
58
  id: CancelAction.ID,
59
- title: ( localize(9927, "Cancel Request")),
60
- shortTitle: ( localize(9928, "Cancel"))
59
+ title: ( localize(10065, "Cancel Request")),
60
+ shortTitle: ( localize(10066, "Cancel"))
61
61
  },
62
62
  when: ( ContextKeyExpr.and(CTX_INLINE_CHAT_REQUEST_IN_PROGRESS))
63
63
  };