@codingame/monaco-vscode-chat-service-override 27.0.0 → 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 (251) hide show
  1. package/index.js +5 -2
  2. package/package.json +5 -5
  3. package/vscode/src/vs/sessions/contrib/chat/browser/aiCustomizationWorkspaceService.d.ts +54 -4
  4. package/vscode/src/vs/sessions/contrib/chat/browser/aiCustomizationWorkspaceService.js +179 -11
  5. package/vscode/src/vs/sessions/contrib/chat/browser/newSession.js +5 -1
  6. package/vscode/src/vs/sessions/contrib/chat/browser/sessionsConfigurationService.d.ts +6 -1
  7. package/vscode/src/vs/sessions/contrib/chat/browser/sessionsConfigurationService.js +25 -10
  8. package/vscode/src/vs/sessions/contrib/fileTreeView/browser/githubFileSystemProvider.d.ts +67 -0
  9. package/vscode/src/vs/sessions/contrib/fileTreeView/browser/githubFileSystemProvider.js +263 -0
  10. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsManagementService.d.ts +6 -0
  11. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsManagementService.js +25 -6
  12. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityService.js +2 -2
  13. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.js +15 -15
  14. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.js +8 -8
  15. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +59 -59
  16. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAgentRecommendationActions.js +1 -1
  17. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.js +12 -12
  18. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.js +8 -8
  19. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +13 -5
  20. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +4 -4
  21. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +2 -2
  22. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatForkActions.js +5 -5
  23. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +3 -3
  24. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.js +13 -13
  25. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.js +6 -6
  26. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatNewActions.js +11 -11
  27. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatOpenAgentDebugPanelAction.js +5 -4
  28. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPluginActions.d.ts +7 -0
  29. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPluginActions.js +2 -2
  30. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.js +2 -2
  31. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQueueActions.js +13 -13
  32. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +8 -8
  33. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +12 -12
  34. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +49 -13
  35. package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +18 -18
  36. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditor.d.ts +58 -0
  37. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditor.js +537 -0
  38. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditorInput.d.ts +17 -0
  39. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditorInput.js +55 -0
  40. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginItems.d.ts +26 -0
  41. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginItems.js +9 -0
  42. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/media/agentPluginEditor.css +32 -0
  43. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.d.ts +17 -2
  44. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.js +89 -11
  45. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.d.ts +4 -26
  46. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.js +146 -53
  47. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.js +3 -3
  48. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.js +56 -54
  49. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.js +5 -5
  50. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsQuickAccess.js +1 -1
  51. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjection.js +1 -1
  52. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionActions.js +5 -5
  53. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.js +1 -1
  54. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionsExperiments.contribution.js +4 -4
  55. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.js +25 -25
  56. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccess.js +17 -17
  57. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccessActions.js +4 -4
  58. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.d.ts +4 -0
  59. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.js +13 -12
  60. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.d.ts +7 -9
  61. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.js +189 -145
  62. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.contribution.js +42 -44
  63. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.d.ts +0 -1
  64. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.js +3 -4
  65. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.d.ts +20 -8
  66. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.js +210 -59
  67. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.js +1 -1
  68. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWorkspaceService.js +14 -3
  69. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCreatorService.js +3 -3
  70. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.js +122 -53
  71. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationManagement.css +87 -9
  72. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.d.ts +62 -0
  73. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.js +702 -0
  74. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.js +1 -1
  75. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/simpleBrowserEditorOverlay.js +19 -19
  76. package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +279 -214
  77. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatCustomizationDiscoveryRenderer.js +21 -21
  78. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugDetailPanel.js +6 -6
  79. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditor.js +12 -3
  80. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditorInput.js +2 -2
  81. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventDetailRenderer.js +19 -19
  82. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventList.js +7 -7
  83. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFilters.d.ts +12 -0
  84. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFilters.js +63 -4
  85. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowChartView.js +7 -7
  86. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowGraph.js +18 -18
  87. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHomeView.js +6 -6
  88. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.d.ts +4 -1
  89. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.js +62 -24
  90. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugMessageContentRenderer.js +8 -8
  91. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugModelTurnContentRenderer.js +23 -23
  92. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugOverviewView.js +28 -28
  93. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugToolCallContentRenderer.js +9 -9
  94. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugTypes.d.ts +2 -0
  95. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/media/chatDebug.css +7 -0
  96. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCheckpointTimelineImpl.d.ts +2 -5
  97. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCheckpointTimelineImpl.js +32 -36
  98. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +1 -1
  99. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.js +4 -5
  100. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +2 -2
  101. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +1 -1
  102. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +1 -1
  103. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +3 -3
  104. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +1 -1
  105. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/media/chatEditorController.css +2 -2
  106. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +1 -1
  107. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.js +8 -8
  108. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.js +13 -13
  109. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.js +4 -4
  110. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.js +2 -2
  111. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.js +49 -49
  112. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatUsageWidget.js +11 -11
  113. package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +3 -3
  114. package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +30 -30
  115. package/vscode/src/vs/workbench/contrib/chat/browser/chatRepoInfo.d.ts +9 -0
  116. package/vscode/src/vs/workbench/contrib/chat/browser/chatRepoInfo.js +2 -2
  117. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetup.js +1 -1
  118. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.js +14 -14
  119. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.js +10 -10
  120. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupGrowthSession.js +6 -6
  121. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.js +26 -26
  122. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.js +13 -13
  123. package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.d.ts +3 -1
  124. package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.js +103 -60
  125. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.js +61 -61
  126. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.js +12 -12
  127. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipCatalog.d.ts +66 -0
  128. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipCatalog.js +245 -0
  129. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipEligibilityTracker.d.ts +78 -0
  130. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipEligibilityTracker.js +234 -0
  131. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.d.ts +31 -126
  132. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.js +229 -524
  133. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipStorageKeys.d.ts +41 -0
  134. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipStorageKeys.js +22 -0
  135. package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.d.ts +4 -3
  136. package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.js +54 -20
  137. package/vscode/src/vs/workbench/contrib/chat/browser/defaultModelContribution.js +4 -4
  138. package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.d.ts +11 -12
  139. package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.js +112 -39
  140. package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.d.ts +99 -0
  141. package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.js +489 -0
  142. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +6 -6
  143. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.d.ts +6 -3
  144. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.js +348 -285
  145. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.d.ts +18 -1
  146. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.js +107 -5
  147. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +2 -2
  148. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +4 -4
  149. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.js +8 -8
  150. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.js +7 -7
  151. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.js +3 -3
  152. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/skillActions.js +3 -3
  153. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.d.ts +2 -0
  154. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.js +55 -38
  155. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.d.ts +20 -1
  156. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.js +148 -60
  157. package/vscode/src/vs/workbench/contrib/chat/browser/tools/renameTool.js +5 -5
  158. package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +13 -13
  159. package/vscode/src/vs/workbench/contrib/chat/browser/tools/usagesTool.js +6 -6
  160. package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +5 -5
  161. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatQueuePickerActionItem.d.ts +2 -0
  162. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatQueuePickerActionItem.js +29 -14
  163. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatStatusWidget.js +6 -6
  164. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.js +72 -14
  165. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorContrib.js +5 -3
  166. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorHover.js +1 -1
  167. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/chatQuick.js +1 -1
  168. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditor.js +5 -2
  169. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.js +11 -10
  170. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewTitleControl.js +2 -2
  171. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/media/chatViewPane.css +8 -0
  172. package/vscode/src/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService.d.ts +1 -0
  173. package/vscode/src/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService.js +1 -0
  174. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.d.ts +8 -0
  175. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.js +20 -0
  176. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.d.ts +1 -1
  177. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.js +72 -23
  178. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceTelemetry.d.ts +19 -1
  179. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceTelemetry.js +5 -1
  180. package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.d.ts +6 -1
  181. package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.js +37 -8
  182. package/vscode/src/vs/workbench/contrib/chat/common/model/objectMutationLog.js +36 -3
  183. package/vscode/src/vs/workbench/contrib/chat/common/participants/chatSlashCommands.d.ts +4 -4
  184. package/vscode/src/vs/workbench/contrib/chat/common/participants/chatSlashCommands.js +2 -2
  185. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.d.ts +6 -1
  186. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.d.ts +71 -25
  187. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.js +217 -91
  188. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.d.ts +85 -3
  189. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.js +257 -63
  190. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +17 -17
  191. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookClaudeCompat.d.ts +3 -16
  192. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookClaudeCompat.js +7 -50
  193. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCompatibility.d.ts +2 -1
  194. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCompatibility.js +32 -3
  195. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCopilotCliCompat.d.ts +1 -1
  196. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCopilotCliCompat.js +3 -1
  197. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/PromptHeaderDefinitionProvider.js +1 -1
  198. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.js +7 -6
  199. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptDocumentSemanticTokensProvider.js +1 -1
  200. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.d.ts +26 -1
  201. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +287 -88
  202. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.d.ts +10 -1
  203. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.js +75 -20
  204. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.d.ts +121 -0
  205. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.js +1422 -0
  206. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptFileContributions.js +1 -1
  207. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +5 -1
  208. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +81 -41
  209. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +3 -1
  210. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +8 -6
  211. package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +1 -1
  212. package/vscode/src/vs/workbench/contrib/chat/common/widget/chatResponseResourceFileSystemProvider.d.ts +14 -2
  213. package/vscode/src/vs/workbench/contrib/chat/common/widget/chatResponseResourceFileSystemProvider.js +54 -5
  214. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.js +6 -5
  215. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.d.ts +4 -4
  216. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +38 -22
  217. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatDefaultModel.js +2 -2
  218. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +8 -8
  219. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpPromptArgumentPick.js +14 -14
  220. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chat/notebookChatUtils.js +1 -1
  221. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/cellChatActions.js +10 -10
  222. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebook.chat.contribution.js +5 -5
  223. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +1 -1
  224. package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.js +7 -7
  225. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +16 -16
  226. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +20 -20
  227. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +1 -1
  228. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +6 -6
  229. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +3 -3
  230. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/awaitTerminalTool.js +3 -3
  231. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/npmScriptAutoApprover.js +1 -1
  232. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.js +12 -12
  233. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.js +2 -2
  234. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalLastCommandTool.js +3 -3
  235. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.js +3 -3
  236. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.js +3 -3
  237. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/killTerminalTool.js +3 -3
  238. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.d.ts +8 -0
  239. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +36 -18
  240. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.js +2 -2
  241. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.d.ts +6 -0
  242. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +27 -13
  243. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.js +1 -1
  244. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/createAndRunTaskTool.js +14 -14
  245. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/getTaskOutputTool.js +7 -7
  246. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/runTaskTool.js +14 -14
  247. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.js +1 -1
  248. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.d.ts +1 -0
  249. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.js +8 -1
  250. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatVariables.d.ts +0 -12
  251. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatVariables.js +0 -67
@@ -224,13 +224,13 @@ function mergeDiscoveryNodes(nodes) {
224
224
  const mergedId = `merged-discovery:${run[0].id}`;
225
225
  const labels = ( run.map(n => n.label));
226
226
  const uniqueLabels = [...( new Set(labels))];
227
- const summaryLabel = uniqueLabels.length <= 2 ? uniqueLabels.join(", ") : ( localize(5614, "{0} +{1} more", uniqueLabels[0], run.length - 1));
227
+ const summaryLabel = uniqueLabels.length <= 2 ? uniqueLabels.join(", ") : ( localize(5682, "{0} +{1} more", uniqueLabels[0], run.length - 1));
228
228
  result.push({
229
229
  id: mergedId,
230
230
  kind: "generic",
231
231
  category: "discovery",
232
232
  label: summaryLabel,
233
- sublabel: ( localize(5615, "{0} discovery steps", run.length)),
233
+ sublabel: ( localize(5683, "{0} discovery steps", run.length)),
234
234
  tooltip: ( run.map(n => n.label + (n.sublabel ? `: ${n.sublabel}` : ""))).join("\n"),
235
235
  created: run[0].created,
236
236
  children: [],
@@ -281,7 +281,7 @@ function mergeToolCallNodes(nodes) {
281
281
  id: mergedId,
282
282
  kind: "toolCall",
283
283
  label: toolName,
284
- sublabel: ( localize(5616, "{0} calls", run.length)),
284
+ sublabel: ( localize(5684, "{0} calls", run.length)),
285
285
  tooltip: ( run.map(n => n.label + (n.sublabel ? `: ${n.sublabel}` : ""))).join("\n"),
286
286
  created: run[0].created,
287
287
  children: [],
@@ -314,9 +314,9 @@ function getEventLabel(event, effectiveKind) {
314
314
  const kind = effectiveKind ?? event.kind;
315
315
  switch (kind) {
316
316
  case "userMessage":
317
- return localize(5617, "User");
317
+ return localize(5685, "User");
318
318
  case "modelTurn":
319
- return event.kind === "modelTurn" ? (event.model ?? ( localize(5618, "Model Turn"))) : ( localize(5618, "Model Turn"));
319
+ return event.kind === "modelTurn" ? (event.model ?? ( localize(5686, "Model Turn"))) : ( localize(5686, "Model Turn"));
320
320
  case "toolCall":
321
321
  return event.kind === "toolCall" ? event.toolName : event.kind === "generic" ? event.name : "";
322
322
  case "subagentInvocation":
@@ -324,7 +324,7 @@ function getEventLabel(event, effectiveKind) {
324
324
  case "agentResponse":
325
325
  {
326
326
  if (event.kind === "agentResponse") {
327
- return event.message || ( localize(5619, "Response"));
327
+ return event.message || ( localize(5687, "Response"));
328
328
  }
329
329
  if (event.kind === "generic") {
330
330
  const match = /\(([^)]+)\)\s*$/.exec(event.name);
@@ -332,7 +332,7 @@ function getEventLabel(event, effectiveKind) {
332
332
  return match[1];
333
333
  }
334
334
  }
335
- return localize(5619, "Response");
335
+ return localize(5687, "Response");
336
336
  }
337
337
  case "generic":
338
338
  return event.kind === "generic" ? event.name : "";
@@ -348,7 +348,7 @@ function getEventSublabel(event, effectiveKind) {
348
348
  parts.push(event.requestName);
349
349
  }
350
350
  if (event.kind === "modelTurn" && event.totalTokens) {
351
- parts.push(( localize(5620, "{0} tokens", event.totalTokens)));
351
+ parts.push(( localize(5688, "{0} tokens", event.totalTokens)));
352
352
  }
353
353
  if (event.kind === "modelTurn" && event.durationInMillis) {
354
354
  parts.push(formatDuration(event.durationInMillis));
@@ -433,7 +433,7 @@ function getEventTooltip(event) {
433
433
  if (event.input) {
434
434
  const input = event.input.trim();
435
435
  parts.push(( localize(
436
- 5621,
436
+ 5689,
437
437
  "Input: {0}",
438
438
  input.length > TOOLTIP_MAX_LENGTH ? input.substring(0, TOOLTIP_MAX_LENGTH) + "…" : input
439
439
  )));
@@ -441,13 +441,13 @@ function getEventTooltip(event) {
441
441
  if (event.output) {
442
442
  const output = event.output.trim();
443
443
  parts.push(( localize(
444
- 5622,
444
+ 5690,
445
445
  "Output: {0}",
446
446
  output.length > TOOLTIP_MAX_LENGTH ? output.substring(0, TOOLTIP_MAX_LENGTH) + "…" : output
447
447
  )));
448
448
  }
449
449
  if (event.result) {
450
- parts.push(( localize(5623, "Result: {0}", event.result)));
450
+ parts.push(( localize(5691, "Result: {0}", event.result)));
451
451
  }
452
452
  return parts.join("\n");
453
453
  }
@@ -458,13 +458,13 @@ function getEventTooltip(event) {
458
458
  parts.push(event.description);
459
459
  }
460
460
  if (event.status) {
461
- parts.push(( localize(5624, "Status: {0}", event.status)));
461
+ parts.push(( localize(5692, "Status: {0}", event.status)));
462
462
  }
463
463
  if (event.toolCallCount !== undefined) {
464
- parts.push(( localize(5625, "Tool calls: {0}", event.toolCallCount)));
464
+ parts.push(( localize(5693, "Tool calls: {0}", event.toolCallCount)));
465
465
  }
466
466
  if (event.modelTurnCount !== undefined) {
467
- parts.push(( localize(5626, "Model turns: {0}", event.modelTurnCount)));
467
+ parts.push(( localize(5694, "Model turns: {0}", event.modelTurnCount)));
468
468
  }
469
469
  return parts.join("\n");
470
470
  }
@@ -483,16 +483,16 @@ function getEventTooltip(event) {
483
483
  parts.push(event.model);
484
484
  }
485
485
  if (event.totalTokens) {
486
- parts.push(( localize(5627, "Tokens: {0}", event.totalTokens)));
486
+ parts.push(( localize(5695, "Tokens: {0}", event.totalTokens)));
487
487
  }
488
488
  if (event.inputTokens) {
489
- parts.push(( localize(5628, "Input tokens: {0}", event.inputTokens)));
489
+ parts.push(( localize(5696, "Input tokens: {0}", event.inputTokens)));
490
490
  }
491
491
  if (event.outputTokens) {
492
- parts.push(( localize(5629, "Output tokens: {0}", event.outputTokens)));
492
+ parts.push(( localize(5697, "Output tokens: {0}", event.outputTokens)));
493
493
  }
494
494
  if (event.durationInMillis) {
495
- parts.push(( localize(5630, "Duration: {0}", formatDuration(event.durationInMillis))));
495
+ parts.push(( localize(5698, "Duration: {0}", formatDuration(event.durationInMillis))));
496
496
  }
497
497
  return parts.length > 0 ? parts.join("\n") : undefined;
498
498
  }
@@ -37,7 +37,7 @@ let ChatDebugHomeView = class ChatDebugHomeView extends Disposable {
37
37
  this.renderDisposables.clear();
38
38
  append(
39
39
  this.scrollContent,
40
- $("h2.chat-debug-home-title", undefined, ( localize(5631, "Agent Debug Panel")))
40
+ $("h2.chat-debug-home-title", undefined, ( localize(5699, "Agent Debug Panel")))
41
41
  );
42
42
  const activeWidget = this.chatWidgetService.lastFocusedWidget;
43
43
  const activeSessionResource = activeWidget?.viewModel?.sessionResource;
@@ -52,12 +52,12 @@ let ChatDebugHomeView = class ChatDebugHomeView extends Disposable {
52
52
  append(this.scrollContent, $(
53
53
  "p.chat-debug-home-subtitle",
54
54
  undefined,
55
- sessionResources.length > 0 ? ( localize(5632, "Select a chat session to debug")) : ( localize(5633, "Send a chat message to get started"))
55
+ sessionResources.length > 0 ? ( localize(5700, "Select a chat session to debug")) : ( localize(5701, "Send a chat message to get started"))
56
56
  ));
57
57
  if (sessionResources.length > 0) {
58
58
  const sessionList = append(this.scrollContent, $(".chat-debug-home-session-list"));
59
59
  sessionList.setAttribute("role", "list");
60
- sessionList.setAttribute("aria-label", ( localize(5634, "Chat sessions")));
60
+ sessionList.setAttribute("aria-label", ( localize(5702, "Chat sessions")));
61
61
  const items = [];
62
62
  for (const sessionResource of sessionResources) {
63
63
  const sessionTitle = this.chatService.getSessionTitle(sessionResource) || LocalChatSessionUri.parseLocalSessionId(sessionResource) || ( sessionResource.toString());
@@ -75,14 +75,14 @@ let ChatDebugHomeView = class ChatDebugHomeView extends Disposable {
75
75
  titleSpan.classList.add("chat-debug-home-session-item-shimmer");
76
76
  item.disabled = true;
77
77
  item.setAttribute("aria-busy", "true");
78
- item.setAttribute("aria-label", ( localize(5635, "Loading session…")));
78
+ item.setAttribute("aria-label", ( localize(5703, "Loading session…")));
79
79
  } else {
80
80
  titleSpan.textContent = sessionTitle;
81
- const ariaLabel = isActive ? ( localize(5636, "{0} (active)", sessionTitle)) : sessionTitle;
81
+ const ariaLabel = isActive ? ( localize(5704, "{0} (active)", sessionTitle)) : sessionTitle;
82
82
  item.setAttribute("aria-label", ariaLabel);
83
83
  }
84
84
  if (isActive) {
85
- append(item, $("span.chat-debug-home-session-badge", undefined, ( localize(5637, "Active"))));
85
+ append(item, $("span.chat-debug-home-session-badge", undefined, ( localize(5705, "Active"))));
86
86
  }
87
87
  if (!isShimmering) {
88
88
  this.renderDisposables.add(addDisposableListener(item, EventType.CLICK, () => {
@@ -7,6 +7,7 @@ import { IChatDebugEvent } from "../../common/chatDebugService.js";
7
7
  import { IChatDebugService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatDebugService.service";
8
8
  import { IChatService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService/chatService.service";
9
9
  import { ChatDebugFilterState } from "./chatDebugFilters.js";
10
+ import { IChatWidgetService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat.service";
10
11
  export declare enum LogsNavigation {
11
12
  Home = "home",
12
13
  Overview = "overview"
@@ -17,6 +18,7 @@ export declare class ChatDebugLogsView extends Disposable {
17
18
  private readonly chatDebugService;
18
19
  private readonly instantiationService;
19
20
  private readonly contextKeyService;
21
+ private readonly chatWidgetService;
20
22
  private readonly _onNavigate;
21
23
  readonly onNavigate: import("@codingame/monaco-vscode-api/vscode/vs/base/common/event").Event<LogsNavigation>;
22
24
  readonly container: HTMLElement;
@@ -38,8 +40,9 @@ export declare class ChatDebugLogsView extends Disposable {
38
40
  private readonly eventListener;
39
41
  private readonly sessionStateDisposable;
40
42
  private shimmerRow;
41
- constructor(parent: HTMLElement, filterState: ChatDebugFilterState, chatService: IChatService, chatDebugService: IChatDebugService, instantiationService: IInstantiationService, contextKeyService: IContextKeyService);
43
+ constructor(parent: HTMLElement, filterState: ChatDebugFilterState, chatService: IChatService, chatDebugService: IChatDebugService, instantiationService: IInstantiationService, contextKeyService: IContextKeyService, chatWidgetService: IChatWidgetService);
42
44
  setSession(sessionResource: URI): void;
45
+ setFilterText(text: string): void;
43
46
  show(): void;
44
47
  hide(): void;
45
48
  focus(): void;
@@ -5,7 +5,7 @@ import { BreadcrumbsWidget } from '@codingame/monaco-vscode-api/vscode/vs/base/b
5
5
  import { Button } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/button/button';
6
6
  import { Codicon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/codicons';
7
7
  import { Emitter } from '@codingame/monaco-vscode-api/vscode/vs/base/common/event';
8
- import { Disposable, MutableDisposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
8
+ import { Disposable, MutableDisposable, combinedDisposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
9
9
  import '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/index';
10
10
  import { ThemeIcon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/themables';
11
11
  import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
@@ -22,6 +22,8 @@ import { ChatDebugEventDelegate, ChatDebugEventRenderer, ChatDebugEventTreeRende
22
22
  import { LogsViewMode, setupBreadcrumbKeyboardNavigation, TextBreadcrumbItem } from './chatDebugTypes.js';
23
23
  import { bindFilterContextKeys } from './chatDebugFilters.js';
24
24
  import { ChatDebugDetailPanel } from './chatDebugDetailPanel.js';
25
+ import { IChatWidgetService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat.service';
26
+ import { createDebugEventsAttachment } from '@codingame/monaco-vscode-xterm-addons-common/vscode/vs/workbench/contrib/chat/browser/chatDebug/chatDebugAttachment';
25
27
  import { autorun } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/reactions/autorun';
26
28
 
27
29
  const $ = $$1;
@@ -37,7 +39,8 @@ let ChatDebugLogsView = class ChatDebugLogsView extends Disposable {
37
39
  chatService,
38
40
  chatDebugService,
39
41
  instantiationService,
40
- contextKeyService
42
+ contextKeyService,
43
+ chatWidgetService
41
44
  ) {
42
45
  super();
43
46
  this.filterState = filterState;
@@ -45,6 +48,7 @@ let ChatDebugLogsView = class ChatDebugLogsView extends Disposable {
45
48
  this.chatDebugService = chatDebugService;
46
49
  this.instantiationService = instantiationService;
47
50
  this.contextKeyService = contextKeyService;
51
+ this.chatWidgetService = chatWidgetService;
48
52
  this._onNavigate = this._register(( new Emitter()));
49
53
  this.onNavigate = this._onNavigate.event;
50
54
  this.logsViewMode = LogsViewMode.List;
@@ -82,13 +86,13 @@ let ChatDebugLogsView = class ChatDebugLogsView extends Disposable {
82
86
  syncContextKeys();
83
87
  const childInstantiationService = this._register(this.instantiationService.createChild(( new ServiceCollection([IContextKeyService, scopedContextKeyService]))));
84
88
  this.filterWidget = this._register(childInstantiationService.createInstance(FilterWidget, {
85
- placeholder: ( localize(5638, "Filter (e.g. text, !exclude)")),
86
- ariaLabel: ( localize(5639, "Filter debug events"))
89
+ placeholder: ( localize(5706, "Filter (e.g. text, !exclude, before:YYYY-MM-DDTHH:MM:SS)")),
90
+ ariaLabel: ( localize(5707, "Filter debug events"))
87
91
  }));
88
92
  this.viewModeToggle = this._register(( new Button(this.headerContainer, {
89
93
  ...defaultButtonStyles,
90
94
  secondary: true,
91
- title: ( localize(5640, "Toggle between list and tree view"))
95
+ title: ( localize(5708, "Toggle between list and tree view"))
92
96
  })));
93
97
  this.viewModeToggle.element.classList.add("chat-debug-view-mode-toggle", "monaco-text-button");
94
98
  this.updateViewModeToggle();
@@ -97,6 +101,27 @@ let ChatDebugLogsView = class ChatDebugLogsView extends Disposable {
97
101
  }));
98
102
  const filterContainer = append(this.headerContainer, $(".viewpane-filter-container"));
99
103
  filterContainer.appendChild(this.filterWidget.element);
104
+ const troubleshootButton = this._register(( new Button(this.headerContainer, {
105
+ ...defaultButtonStyles,
106
+ secondary: true,
107
+ title: ( localize(5709, "Add snapshot to Chat"))
108
+ })));
109
+ troubleshootButton.element.classList.add("chat-debug-troubleshoot-button", "monaco-text-button");
110
+ append(
111
+ troubleshootButton.element,
112
+ $(`span${ThemeIcon.asCSSSelector(Codicon.chatSparkle)}`)
113
+ );
114
+ this._register(troubleshootButton.onDidClick(async () => {
115
+ if (!this.currentSessionResource) {
116
+ return;
117
+ }
118
+ const widget = await this.chatWidgetService.openSession(this.currentSessionResource);
119
+ if (widget) {
120
+ const attachment = await createDebugEventsAttachment(this.currentSessionResource, this.chatDebugService);
121
+ widget.attachmentModel.addContext(attachment);
122
+ widget.focusInput();
123
+ }
124
+ }));
100
125
  this._register(this.filterWidget.onDidChangeFilterText(text => {
101
126
  this.filterState.setTextFilter(text);
102
127
  }));
@@ -110,12 +135,12 @@ let ChatDebugLogsView = class ChatDebugLogsView extends Disposable {
110
135
  this.tableHeader = append(mainColumn, $(".chat-debug-table-header"));
111
136
  append(
112
137
  this.tableHeader,
113
- $("span.chat-debug-col-created", undefined, ( localize(5641, "Created")))
138
+ $("span.chat-debug-col-created", undefined, ( localize(5710, "Created")))
114
139
  );
115
- append(this.tableHeader, $("span.chat-debug-col-name", undefined, ( localize(5642, "Name"))));
140
+ append(this.tableHeader, $("span.chat-debug-col-name", undefined, ( localize(5711, "Name"))));
116
141
  append(
117
142
  this.tableHeader,
118
- $("span.chat-debug-col-details", undefined, ( localize(5643, "Details")))
143
+ $("span.chat-debug-col-details", undefined, ( localize(5712, "Details")))
119
144
  );
120
145
  this.bodyContainer = append(mainColumn, $(".chat-debug-logs-body"));
121
146
  this.listContainer = append(this.bodyContainer, $(".chat-debug-list-container"));
@@ -123,30 +148,30 @@ let ChatDebugLogsView = class ChatDebugLogsView extends Disposable {
123
148
  getAriaLabel: e => {
124
149
  switch (e.kind) {
125
150
  case "toolCall":
126
- return localize(5644, "Tool call: {0}{1}", e.toolName, e.result ? ` (${e.result})` : "");
151
+ return localize(5713, "Tool call: {0}{1}", e.toolName, e.result ? ` (${e.result})` : "");
127
152
  case "modelTurn":
128
153
  return localize(
129
- 5645,
154
+ 5714,
130
155
  "Model turn: {0}{1}",
131
- e.model ?? ( localize(5646, "model")),
132
- e.totalTokens ? ( localize(5647, " {0} tokens", e.totalTokens)) : ""
156
+ e.model ?? ( localize(5715, "model")),
157
+ e.totalTokens ? ( localize(5716, " {0} tokens", e.totalTokens)) : ""
133
158
  );
134
159
  case "generic":
135
160
  return `${e.category ? e.category + ": " : ""}${e.name}: ${e.details ?? ""}`;
136
161
  case "subagentInvocation":
137
162
  return localize(
138
- 5648,
163
+ 5717,
139
164
  "Subagent: {0}{1}",
140
165
  e.agentName,
141
166
  e.description ? ` - ${e.description}` : ""
142
167
  );
143
168
  case "userMessage":
144
- return localize(5649, "User message: {0}", e.message);
169
+ return localize(5718, "User message: {0}", e.message);
145
170
  case "agentResponse":
146
- return localize(5650, "Agent response: {0}", e.message);
171
+ return localize(5719, "Agent response: {0}", e.message);
147
172
  }
148
173
  },
149
- getWidgetAriaLabel: () => ( localize(5651, "Chat Debug Events"))
174
+ getWidgetAriaLabel: () => ( localize(5720, "Chat Debug Events"))
150
175
  };
151
176
  let nextFallbackId = 0;
152
177
  const fallbackIds = ( new WeakMap());
@@ -183,7 +208,7 @@ let ChatDebugLogsView = class ChatDebugLogsView extends Disposable {
183
208
  }
184
209
  ));
185
210
  this.shimmerRow = append(this.bodyContainer, $(".chat-debug-logs-shimmer-row"));
186
- this.shimmerRow.setAttribute("aria-label", ( localize(5652, "Loading more events…")));
211
+ this.shimmerRow.setAttribute("aria-label", ( localize(5721, "Loading more events…")));
187
212
  this.shimmerRow.setAttribute("aria-busy", "true");
188
213
  append(this.shimmerRow, $("span.chat-debug-logs-shimmer-bar"));
189
214
  hide(this.shimmerRow);
@@ -218,6 +243,9 @@ let ChatDebugLogsView = class ChatDebugLogsView extends Disposable {
218
243
  setSession(sessionResource) {
219
244
  this.currentSessionResource = sessionResource;
220
245
  }
246
+ setFilterText(text) {
247
+ this.filterWidget.setFilterText(text);
248
+ }
221
249
  show() {
222
250
  show(this.container);
223
251
  this.loadEvents();
@@ -238,7 +266,7 @@ let ChatDebugLogsView = class ChatDebugLogsView extends Disposable {
238
266
  return;
239
267
  }
240
268
  const sessionTitle = this.chatService.getSessionTitle(this.currentSessionResource) || LocalChatSessionUri.parseLocalSessionId(this.currentSessionResource) || ( this.currentSessionResource.toString());
241
- this.breadcrumbWidget.setItems([( new TextBreadcrumbItem(( localize(5653, "Agent Debug Panel")), true)), ( new TextBreadcrumbItem(sessionTitle, true)), ( new TextBreadcrumbItem(( localize(5654, "Logs"))))]);
269
+ this.breadcrumbWidget.setItems([( new TextBreadcrumbItem(( localize(5722, "Agent Debug Panel")), true)), ( new TextBreadcrumbItem(sessionTitle, true)), ( new TextBreadcrumbItem(( localize(5723, "Logs"))))]);
242
270
  }
243
271
  layout(dimension) {
244
272
  this.currentDimension = dimension;
@@ -261,7 +289,8 @@ let ChatDebugLogsView = class ChatDebugLogsView extends Disposable {
261
289
  const category = e.kind === "generic" ? e.category : undefined;
262
290
  return this.filterState.isKindVisible(e.kind, category);
263
291
  });
264
- const filterText = this.filterState.textFilter;
292
+ filtered = filtered.filter(e => this.filterState.isTimestampVisible(e.created));
293
+ const filterText = this.filterState.textFilterWithoutTimestamps;
265
294
  if (filterText) {
266
295
  const terms = filterText.split(/\s*,\s*/).filter(t => t.length > 0);
267
296
  const includeTerms = ( terms.filter(t => !t.startsWith("!")).map(t => t.trim()));
@@ -317,12 +346,21 @@ let ChatDebugLogsView = class ChatDebugLogsView extends Disposable {
317
346
  this.events = [
318
347
  ...this.chatDebugService.getEvents(this.currentSessionResource || undefined)
319
348
  ];
320
- this.eventListener.value = this.chatDebugService.onDidAddEvent(e => {
349
+ const addEventDisposable = this.chatDebugService.onDidAddEvent(e => {
321
350
  if (!this.currentSessionResource || ( e.sessionResource.toString()) === ( this.currentSessionResource.toString())) {
322
351
  this.events.push(e);
323
352
  this.refreshList();
324
353
  }
325
354
  });
355
+ const clearEventsDisposable = this.chatDebugService.onDidClearProviderEvents(sessionResource => {
356
+ if (!this.currentSessionResource || ( sessionResource.toString()) === ( this.currentSessionResource.toString())) {
357
+ this.events = [
358
+ ...this.chatDebugService.getEvents(this.currentSessionResource || undefined)
359
+ ];
360
+ this.refreshList();
361
+ }
362
+ });
363
+ this.eventListener.value = combinedDisposable(addEventDisposable, clearEventsDisposable);
326
364
  this.updateBreadcrumb();
327
365
  this.trackSessionState();
328
366
  }
@@ -408,15 +446,15 @@ let ChatDebugLogsView = class ChatDebugLogsView extends Disposable {
408
446
  ));
409
447
  const labelContainer = append(el, $("span.chat-debug-view-mode-labels"));
410
448
  const treeLabel = append(labelContainer, $("span.chat-debug-view-mode-label"));
411
- treeLabel.textContent = ( localize(5655, "Tree View"));
449
+ treeLabel.textContent = ( localize(5724, "Tree View"));
412
450
  const listLabel = append(labelContainer, $("span.chat-debug-view-mode-label"));
413
- listLabel.textContent = ( localize(5656, "List View"));
451
+ listLabel.textContent = ( localize(5725, "List View"));
414
452
  if (isTree) {
415
453
  listLabel.classList.add("hidden");
416
454
  } else {
417
455
  treeLabel.classList.add("hidden");
418
456
  }
419
- const activeLabel = isTree ? ( localize(5657, "Switch to List View")) : ( localize(5658, "Switch to Tree View"));
457
+ const activeLabel = isTree ? ( localize(5726, "Switch to List View")) : ( localize(5727, "Switch to Tree View"));
420
458
  el.setAttribute("aria-label", activeLabel);
421
459
  this.viewModeToggle.setTitle(activeLabel);
422
460
  }
@@ -424,6 +462,6 @@ let ChatDebugLogsView = class ChatDebugLogsView extends Disposable {
424
462
  this.filterWidget.checkMoreFilters(!this.filterState.isAllFiltersDefault());
425
463
  }
426
464
  };
427
- ChatDebugLogsView = ( __decorate([( __param(2, IChatService)), ( __param(3, IChatDebugService)), ( __param(4, IInstantiationService)), ( __param(5, IContextKeyService))], ChatDebugLogsView));
465
+ ChatDebugLogsView = ( __decorate([( __param(2, IChatService)), ( __param(3, IChatDebugService)), ( __param(4, IInstantiationService)), ( __param(5, IContextKeyService)), ( __param(6, IChatWidgetService))], ChatDebugLogsView));
428
466
 
429
467
  export { ChatDebugLogsView, LogsNavigation };
@@ -11,7 +11,7 @@ function renderUserMessageContent(event) {
11
11
  container.tabIndex = 0;
12
12
  append(
13
13
  container,
14
- $("div.chat-debug-message-content-title", undefined, ( localize(5659, "User Message")))
14
+ $("div.chat-debug-message-content-title", undefined, ( localize(5728, "User Message")))
15
15
  );
16
16
  append(
17
17
  container,
@@ -21,7 +21,7 @@ function renderUserMessageContent(event) {
21
21
  const sectionsContainer = append(container, $("div.chat-debug-message-sections"));
22
22
  append(
23
23
  sectionsContainer,
24
- $("div.chat-debug-message-sections-label", undefined, ( localize(5660, "Prompt Sections ({0})", event.sections.length)))
24
+ $("div.chat-debug-message-sections-label", undefined, ( localize(5729, "Prompt Sections ({0})", event.sections.length)))
25
25
  );
26
26
  for (const section of event.sections) {
27
27
  renderCollapsibleSection(sectionsContainer, section, disposables);
@@ -38,7 +38,7 @@ function renderAgentResponseContent(event) {
38
38
  container.tabIndex = 0;
39
39
  append(
40
40
  container,
41
- $("div.chat-debug-message-content-title", undefined, ( localize(5661, "Agent Response")))
41
+ $("div.chat-debug-message-content-title", undefined, ( localize(5730, "Agent Response")))
42
42
  );
43
43
  append(
44
44
  container,
@@ -48,7 +48,7 @@ function renderAgentResponseContent(event) {
48
48
  const sectionsContainer = append(container, $("div.chat-debug-message-sections"));
49
49
  append(
50
50
  sectionsContainer,
51
- $("div.chat-debug-message-sections-label", undefined, ( localize(5662, "Response Sections ({0})", event.sections.length)))
51
+ $("div.chat-debug-message-sections-label", undefined, ( localize(5731, "Response Sections ({0})", event.sections.length)))
52
52
  );
53
53
  for (const section of event.sections) {
54
54
  renderCollapsibleSection(sectionsContainer, section, disposables);
@@ -61,7 +61,7 @@ function renderAgentResponseContent(event) {
61
61
  }
62
62
  function messageEventToPlainText(event) {
63
63
  const lines = [];
64
- const label = event.kind === "userMessage" ? ( localize(5659, "User Message")) : ( localize(5661, "Agent Response"));
64
+ const label = event.kind === "userMessage" ? ( localize(5728, "User Message")) : ( localize(5730, "Agent Response"));
65
65
  lines.push(`${label}: ${event.message}`);
66
66
  lines.push("");
67
67
  for (const section of event.sections) {
@@ -75,7 +75,7 @@ function renderResolvedMessageContent(content) {
75
75
  const disposables = ( new DisposableStore());
76
76
  const container = $("div.chat-debug-message-content");
77
77
  container.tabIndex = 0;
78
- const title = content.type === "user" ? ( localize(5659, "User Message")) : ( localize(5661, "Agent Response"));
78
+ const title = content.type === "user" ? ( localize(5728, "User Message")) : ( localize(5730, "Agent Response"));
79
79
  append(container, $("div.chat-debug-message-content-title", undefined, title));
80
80
  append(
81
81
  container,
@@ -83,7 +83,7 @@ function renderResolvedMessageContent(content) {
83
83
  );
84
84
  if (content.sections.length > 0) {
85
85
  const sectionsContainer = append(container, $("div.chat-debug-message-sections"));
86
- const label = content.type === "user" ? ( localize(5660, "Prompt Sections ({0})", content.sections.length)) : ( localize(5662, "Response Sections ({0})", content.sections.length));
86
+ const label = content.type === "user" ? ( localize(5729, "Prompt Sections ({0})", content.sections.length)) : ( localize(5731, "Response Sections ({0})", content.sections.length));
87
87
  append(
88
88
  sectionsContainer,
89
89
  $("div.chat-debug-message-sections-label", undefined, label)
@@ -99,7 +99,7 @@ function renderResolvedMessageContent(content) {
99
99
  }
100
100
  function resolvedMessageToPlainText(content) {
101
101
  const lines = [];
102
- const label = content.type === "user" ? ( localize(5659, "User Message")) : ( localize(5661, "Agent Response"));
102
+ const label = content.type === "user" ? ( localize(5728, "User Message")) : ( localize(5730, "Agent Response"));
103
103
  lines.push(`${label}: ${content.message}`);
104
104
  lines.push("");
105
105
  for (const section of content.sections) {
@@ -11,7 +11,7 @@ function renderModelTurnContent(content) {
11
11
  container.tabIndex = 0;
12
12
  append(
13
13
  container,
14
- $("div.chat-debug-message-content-title", undefined, ( localize(5663, "Model Turn")))
14
+ $("div.chat-debug-message-content-title", undefined, ( localize(5732, "Model Turn")))
15
15
  );
16
16
  const statusParts = [];
17
17
  if (content.requestName) {
@@ -24,7 +24,7 @@ function renderModelTurnContent(content) {
24
24
  statusParts.push(content.status);
25
25
  }
26
26
  if (content.durationInMillis !== undefined) {
27
- statusParts.push(( localize(5664, "{0}ms", content.durationInMillis)));
27
+ statusParts.push(( localize(5733, "{0}ms", content.durationInMillis)));
28
28
  }
29
29
  if (statusParts.length > 0) {
30
30
  append(container, $(
@@ -35,37 +35,37 @@ function renderModelTurnContent(content) {
35
35
  }
36
36
  const detailsContainer = append(container, $("div.chat-debug-model-turn-details"));
37
37
  if (content.inputTokens !== undefined) {
38
- append(detailsContainer, $("div", undefined, ( localize(5665, "Input tokens: {0}", content.inputTokens))));
38
+ append(detailsContainer, $("div", undefined, ( localize(5734, "Input tokens: {0}", content.inputTokens))));
39
39
  }
40
40
  if (content.outputTokens !== undefined) {
41
- append(detailsContainer, $("div", undefined, ( localize(5666, "Output tokens: {0}", content.outputTokens))));
41
+ append(detailsContainer, $("div", undefined, ( localize(5735, "Output tokens: {0}", content.outputTokens))));
42
42
  }
43
43
  if (content.cachedTokens !== undefined) {
44
- append(detailsContainer, $("div", undefined, ( localize(5667, "Cached tokens: {0}", content.cachedTokens))));
44
+ append(detailsContainer, $("div", undefined, ( localize(5736, "Cached tokens: {0}", content.cachedTokens))));
45
45
  }
46
46
  if (content.totalTokens !== undefined) {
47
- append(detailsContainer, $("div", undefined, ( localize(5668, "Total tokens: {0}", content.totalTokens))));
47
+ append(detailsContainer, $("div", undefined, ( localize(5737, "Total tokens: {0}", content.totalTokens))));
48
48
  }
49
49
  if (content.timeToFirstTokenInMillis !== undefined) {
50
- append(detailsContainer, $("div", undefined, ( localize(5669, "Time to first token: {0}ms", content.timeToFirstTokenInMillis))));
50
+ append(detailsContainer, $("div", undefined, ( localize(5738, "Time to first token: {0}ms", content.timeToFirstTokenInMillis))));
51
51
  }
52
52
  if (content.maxInputTokens !== undefined) {
53
- append(detailsContainer, $("div", undefined, ( localize(5670, "Max input tokens: {0}", content.maxInputTokens))));
53
+ append(detailsContainer, $("div", undefined, ( localize(5739, "Max input tokens: {0}", content.maxInputTokens))));
54
54
  }
55
55
  if (content.maxOutputTokens !== undefined) {
56
- append(detailsContainer, $("div", undefined, ( localize(5671, "Max output tokens: {0}", content.maxOutputTokens))));
56
+ append(detailsContainer, $("div", undefined, ( localize(5740, "Max output tokens: {0}", content.maxOutputTokens))));
57
57
  }
58
58
  if (content.errorMessage) {
59
59
  append(
60
60
  detailsContainer,
61
- $("div.chat-debug-model-turn-error", undefined, ( localize(5672, "Error: {0}", content.errorMessage)))
61
+ $("div.chat-debug-model-turn-error", undefined, ( localize(5741, "Error: {0}", content.errorMessage)))
62
62
  );
63
63
  }
64
64
  if (content.sections && content.sections.length > 0) {
65
65
  const sectionsContainer = append(container, $("div.chat-debug-message-sections"));
66
66
  append(
67
67
  sectionsContainer,
68
- $("div.chat-debug-message-sections-label", undefined, ( localize(5673, "Sections ({0})", content.sections.length)))
68
+ $("div.chat-debug-message-sections-label", undefined, ( localize(5742, "Sections ({0})", content.sections.length)))
69
69
  );
70
70
  for (const section of content.sections) {
71
71
  renderCollapsibleSection(sectionsContainer, section, disposables);
@@ -78,39 +78,39 @@ function renderModelTurnContent(content) {
78
78
  }
79
79
  function modelTurnContentToPlainText(content) {
80
80
  const lines = [];
81
- lines.push(( localize(5674, "Request: {0}", content.requestName)));
81
+ lines.push(( localize(5743, "Request: {0}", content.requestName)));
82
82
  if (content.model) {
83
- lines.push(( localize(5675, "Model: {0}", content.model)));
83
+ lines.push(( localize(5744, "Model: {0}", content.model)));
84
84
  }
85
85
  if (content.status) {
86
- lines.push(( localize(5676, "Status: {0}", content.status)));
86
+ lines.push(( localize(5745, "Status: {0}", content.status)));
87
87
  }
88
88
  if (content.durationInMillis !== undefined) {
89
- lines.push(( localize(5677, "Duration: {0}ms", content.durationInMillis)));
89
+ lines.push(( localize(5746, "Duration: {0}ms", content.durationInMillis)));
90
90
  }
91
91
  if (content.timeToFirstTokenInMillis !== undefined) {
92
- lines.push(( localize(5678, "Time to first token: {0}ms", content.timeToFirstTokenInMillis)));
92
+ lines.push(( localize(5747, "Time to first token: {0}ms", content.timeToFirstTokenInMillis)));
93
93
  }
94
94
  if (content.inputTokens !== undefined) {
95
- lines.push(( localize(5679, "Input tokens: {0}", content.inputTokens)));
95
+ lines.push(( localize(5748, "Input tokens: {0}", content.inputTokens)));
96
96
  }
97
97
  if (content.outputTokens !== undefined) {
98
- lines.push(( localize(5680, "Output tokens: {0}", content.outputTokens)));
98
+ lines.push(( localize(5749, "Output tokens: {0}", content.outputTokens)));
99
99
  }
100
100
  if (content.cachedTokens !== undefined) {
101
- lines.push(( localize(5681, "Cached tokens: {0}", content.cachedTokens)));
101
+ lines.push(( localize(5750, "Cached tokens: {0}", content.cachedTokens)));
102
102
  }
103
103
  if (content.totalTokens !== undefined) {
104
- lines.push(( localize(5682, "Total tokens: {0}", content.totalTokens)));
104
+ lines.push(( localize(5751, "Total tokens: {0}", content.totalTokens)));
105
105
  }
106
106
  if (content.maxInputTokens !== undefined) {
107
- lines.push(( localize(5683, "Max input tokens: {0}", content.maxInputTokens)));
107
+ lines.push(( localize(5752, "Max input tokens: {0}", content.maxInputTokens)));
108
108
  }
109
109
  if (content.maxOutputTokens !== undefined) {
110
- lines.push(( localize(5684, "Max output tokens: {0}", content.maxOutputTokens)));
110
+ lines.push(( localize(5753, "Max output tokens: {0}", content.maxOutputTokens)));
111
111
  }
112
112
  if (content.errorMessage) {
113
- lines.push(( localize(5685, "Error: {0}", content.errorMessage)));
113
+ lines.push(( localize(5754, "Error: {0}", content.errorMessage)));
114
114
  }
115
115
  if (content.sections && content.sections.length > 0) {
116
116
  lines.push("");