@codingame/monaco-vscode-chat-service-override 28.4.0 → 29.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.
- package/index.js +18 -12
- package/package.json +5 -5
- package/vscode/src/vs/platform/agentHost/common/agentService.d.ts +300 -0
- package/vscode/src/vs/platform/agentHost/common/agentService.js +31 -0
- package/vscode/src/vs/platform/agentHost/common/agentService.service.d.ts +84 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/action-origin.generated.d.ts +16 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/actions.d.ts +488 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/commands.d.ts +424 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/errors.d.ts +50 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/messages.d.ts +202 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/notifications.d.ts +114 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/state.d.ts +723 -0
- package/vscode/src/vs/platform/agentHost/common/state/sessionActions.d.ts +33 -0
- package/vscode/src/vs/platform/agentHost/common/state/sessionProtocol.d.ts +40 -0
- package/vscode/src/vs/platform/agentHost/common/state/sessionState.d.ts +22 -0
- package/vscode/src/vs/platform/browserElements/common/browserElements.d.ts +13 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityService.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.js +29 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +59 -59
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAgentRecommendationActions.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatForkActions.js +76 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatNewActions.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatOpenAgentDebugPanelAction.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatOpenAgentDebugPanelAction.js +162 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPluginActions.js +167 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQueueActions.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQueueActions.js +52 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +19 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginActions.d.ts +82 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginActions.js +195 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditor.d.ts +5 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditor.js +97 -88
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditorInput.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginItems.d.ts +4 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.d.ts +5 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.js +78 -35
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.d.ts +7 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.js +174 -170
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.js +7 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.js +118 -52
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsQuickAccess.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsService.d.ts +5 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsService.js +13 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjection.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionActions.d.ts +0 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionActions.js +5 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionsExperiments.contribution.js +9 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.d.ts +23 -25
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.js +341 -196
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/media/agenttitlebarstatuswidget.css +79 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccess.js +17 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccessActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/localAgentSessionsController.d.ts +5 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/localAgentSessionsController.js +22 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.d.ts +4 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.js +15 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.d.ts +85 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.js +668 -214
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidgetUtils.d.ts +10 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidgetUtils.js +18 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.contribution.js +306 -39
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.d.ts +84 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.js +651 -81
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.js +6 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWorkspaceService.d.ts +31 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWorkspaceService.js +9 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCreatorService.d.ts +11 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCreatorService.js +7 -142
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationGroupHeaderRenderer.d.ts +43 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationGroupHeaderRenderer.js +63 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.d.ts +11 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.js +44 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.d.ts +25 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.js +297 -123
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationManagement.css +153 -31
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.d.ts +17 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.js +111 -171
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.d.ts +1 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.js +5 -30
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/simpleBrowserEditorOverlay.js +19 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +277 -186
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatCustomizationDiscoveryRenderer.d.ts +4 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatCustomizationDiscoveryRenderer.js +31 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCollapsible.d.ts +3 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCollapsible.js +4 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugDetailPanel.d.ts +18 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugDetailPanel.js +112 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditor.d.ts +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditor.js +16 -27
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditorInput.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventDetailRenderer.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventDetailRenderer.js +41 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventList.d.ts +7 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventList.js +35 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFilters.d.ts +1 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFilters.js +8 -51
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowChartView.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowChartView.js +13 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowGraph.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowGraph.js +29 -36
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowLayout.js +14 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHomeView.d.ts +5 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHomeView.js +79 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHookContentRenderer.d.ts +19 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHookContentRenderer.js +125 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.d.ts +11 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.js +113 -82
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugMessageContentRenderer.d.ts +18 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugMessageContentRenderer.js +54 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugModelTurnContentRenderer.d.ts +8 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugModelTurnContentRenderer.js +103 -28
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugOverviewView.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugOverviewView.js +48 -37
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugToolCallContentRenderer.d.ts +28 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugToolCallContentRenderer.js +62 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/media/chatDebug.css +21 -37
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingDeletedFileEntry.js +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +4 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +17 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.d.ts +4 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +43 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatImageCarouselService.d.ts +59 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatImageCarouselService.js +194 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.js +9 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.js +8 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.d.ts +11 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.js +81 -50
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatUsageWidget.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +32 -32
- package/vscode/src/vs/workbench/contrib/chat/browser/chatRepoInfo.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetup.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.js +23 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupGrowthSession.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupGrowthSession.js +9 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.js +29 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.d.ts +0 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.js +19 -27
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.d.ts +2 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.js +105 -172
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.js +80 -65
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipCatalog.js +56 -27
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/claudePluginRecommendations.d.ts +16 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/claudePluginRecommendations.js +70 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/defaultModelContribution.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/enablementActions.d.ts +20 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/enablementActions.js +40 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/enablementStatusWidget.d.ts +31 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/enablementStatusWidget.js +53 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelsConfigurationService.js +33 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.d.ts +21 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.js +362 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.d.ts +15 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.js +90 -43
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginUrlHandler.d.ts +35 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginUrlHandler.js +146 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.js +26 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.js +10 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/skillActions.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/promptsDebugContribution.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/promptsDebugContribution.js +33 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.d.ts +3 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.js +200 -55
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.d.ts +7 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.js +90 -45
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/renameTool.d.ts +4 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/renameTool.js +21 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +22 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/usagesTool.d.ts +4 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/usagesTool.js +28 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatQueuePickerActionItem.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatStatusWidget.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.js +20 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorContrib.js +68 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorHover.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/chatQuick.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditor.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.js +57 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewTitleControl.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.d.ts +21 -5
- package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.js +171 -57
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.d.ts +7 -5
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.js +206 -35
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionOperationLog.js +4 -3
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/common/participants/chatSlashCommands.d.ts +7 -1
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.d.ts +11 -3
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.d.ts +44 -22
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.js +450 -301
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/marketplaceReference.d.ts +23 -0
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/marketplaceReference.js +165 -0
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.d.ts +34 -20
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.js +209 -144
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/workspacePluginSettingsService.d.ts +20 -0
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/workspacePluginSettingsService.js +205 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +17 -17
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/internalCustomizations/internalCustomizations.d.ts +33 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/internalCustomizations/internalCustomizations.js +47 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/internalCustomizations/internalSkill.d.ts +30 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.js +191 -159
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +6 -7
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +210 -233
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +19 -26
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +183 -193
- package/vscode/src/vs/workbench/contrib/chat/common/tools/chatArtifactsService.d.ts +24 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/chatArtifactsService.js +75 -0
- package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +1 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.js +8 -5
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +97 -35
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatDefaultModel.js +2 -2
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatHistoryService.d.ts +16 -0
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatHistoryService.js +67 -0
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +62 -23
- package/vscode/src/vs/workbench/contrib/mcp/browser/mcpPromptArgumentPick.js +14 -14
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chat/notebookChatUtils.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/cellChatActions.js +10 -10
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebook.chat.contribution.js +5 -5
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +1 -1
- package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.js +8 -8
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +16 -16
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +20 -20
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +2 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.js +23 -9
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.js +2 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.js +50 -9
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.js +21 -7
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/strategyHelpers.d.ts +20 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/strategyHelpers.js +124 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/outputHelpers.js +20 -5
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.d.ts +5 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +10 -7
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.js +46 -31
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.d.ts +18 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +74 -37
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/awaitTerminalTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/npmScriptAutoApprover.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAnalyzer.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.js +24 -14
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.js +2 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineSandboxAnalyzer.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/sandboxedCommandLinePresenter.d.ts +3 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/sandboxedCommandLinePresenter.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineRewriter.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineSandboxRewriter.js +5 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalLastCommandTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/killTerminalTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.d.ts +1 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +66 -64
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/outputAnalyzer.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.js +5 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.d.ts +32 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +390 -114
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.d.ts +14 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.js +21 -11
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/createAndRunTaskTool.js +70 -51
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/getTaskOutputTool.js +61 -51
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/runTaskTool.js +94 -76
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.d.ts +19 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.js +112 -21
- package/vscode/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackService.d.ts +0 -53
- package/vscode/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackService.js +0 -219
- package/vscode/src/vs/sessions/contrib/chat/browser/aiCustomizationWorkspaceService.d.ts +0 -89
- package/vscode/src/vs/sessions/contrib/chat/browser/aiCustomizationWorkspaceService.js +0 -251
- package/vscode/src/vs/sessions/contrib/chat/browser/newSession.d.ts +0 -123
- package/vscode/src/vs/sessions/contrib/chat/browser/newSession.js +0 -278
- package/vscode/src/vs/sessions/contrib/chat/browser/sessionsConfigurationService.d.ts +0 -76
- package/vscode/src/vs/sessions/contrib/chat/browser/sessionsConfigurationService.js +0 -299
- package/vscode/src/vs/sessions/contrib/fileTreeView/browser/githubFileSystemProvider.d.ts +0 -67
- package/vscode/src/vs/sessions/contrib/fileTreeView/browser/githubFileSystemProvider.js +0 -263
- package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsManagementService.d.ts +0 -85
- package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsManagementService.js +0 -397
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.d.ts +0 -56
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.js +0 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/sessionResourceMatching.d.ts +0 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/sessionResourceMatching.js +0 -30
- package/vscode/src/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService.d.ts +0 -40
- package/vscode/src/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService.js +0 -28
- package/vscode/src/vs/workbench/contrib/chat/common/chatDebugService.d.ts +0 -190
- package/vscode/src/vs/workbench/contrib/chat/common/chatDebugService.js +0 -11
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.d.ts +0 -16
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.js +0 -20
|
@@ -4,11 +4,13 @@ import { IModelService } from "@codingame/monaco-vscode-api/vscode/vs/editor/com
|
|
|
4
4
|
import { IHoverService } from "@codingame/monaco-vscode-api/vscode/vs/platform/hover/browser/hover.service";
|
|
5
5
|
import { ILabelService } from "@codingame/monaco-vscode-api/vscode/vs/platform/label/common/label.service";
|
|
6
6
|
import { IOpenerService } from "@codingame/monaco-vscode-api/vscode/vs/platform/opener/common/opener.service";
|
|
7
|
-
import { IChatDebugEventFileListContent } from "
|
|
7
|
+
import { IChatDebugEventFileListContent } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatDebugService";
|
|
8
8
|
/**
|
|
9
9
|
* Render a file list resolved content as a rich HTML element.
|
|
10
10
|
*/
|
|
11
|
-
export declare function renderCustomizationDiscoveryContent(content: IChatDebugEventFileListContent, openerService: IOpenerService, modelService: IModelService, languageService: ILanguageService, hoverService: IHoverService, labelService: ILabelService
|
|
11
|
+
export declare function renderCustomizationDiscoveryContent(content: IChatDebugEventFileListContent, openerService: IOpenerService, modelService: IModelService, languageService: ILanguageService, hoverService: IHoverService, labelService: ILabelService, scrollable?: {
|
|
12
|
+
scanDomNode(): void;
|
|
13
|
+
}): {
|
|
12
14
|
element: HTMLElement;
|
|
13
15
|
disposables: DisposableStore;
|
|
14
16
|
};
|
package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatCustomizationDiscoveryRenderer.js
CHANGED
|
@@ -123,20 +123,21 @@ function renderCustomizationDiscoveryContent(
|
|
|
123
123
|
modelService,
|
|
124
124
|
languageService,
|
|
125
125
|
hoverService,
|
|
126
|
-
labelService
|
|
126
|
+
labelService,
|
|
127
|
+
scrollable
|
|
127
128
|
) {
|
|
128
129
|
const disposables = ( new DisposableStore());
|
|
129
130
|
const container = $("div.chat-debug-file-list");
|
|
130
131
|
container.tabIndex = 0;
|
|
131
132
|
const capitalizedType = content.discoveryType.charAt(0).toUpperCase() + content.discoveryType.slice(1);
|
|
132
|
-
append(container, $("div.chat-debug-file-list-title", undefined, ( localize(
|
|
133
|
-
append(container, $("div.chat-debug-file-list-summary", undefined, ( localize(
|
|
133
|
+
append(container, $("div.chat-debug-file-list-title", undefined, ( localize(5722, "{0} Discovery Results", capitalizedType))));
|
|
134
|
+
append(container, $("div.chat-debug-file-list-summary", undefined, ( localize(5723, "Total files: {0}", content.files.length))));
|
|
134
135
|
const loaded = content.files.filter(f => f.status === "loaded");
|
|
135
136
|
if (loaded.length > 0) {
|
|
136
137
|
const section = append(container, $("div.chat-debug-file-list-section"));
|
|
137
138
|
append(
|
|
138
139
|
section,
|
|
139
|
-
$("div.chat-debug-file-list-section-title", undefined, ( localize(
|
|
140
|
+
$("div.chat-debug-file-list-section-title", undefined, ( localize(5724, "Loaded ({0})", loaded.length)))
|
|
140
141
|
);
|
|
141
142
|
const groups = ( new Map());
|
|
142
143
|
for (const file of loaded) {
|
|
@@ -150,7 +151,7 @@ function renderCustomizationDiscoveryContent(
|
|
|
150
151
|
}
|
|
151
152
|
const listEl = append(section, $("div.chat-debug-file-list-rows"));
|
|
152
153
|
listEl.setAttribute("role", "list");
|
|
153
|
-
listEl.setAttribute("aria-label", ( localize(
|
|
154
|
+
listEl.setAttribute("aria-label", ( localize(5725, "Loaded files")));
|
|
154
155
|
const rows = [];
|
|
155
156
|
for (const [locationLabel, files] of groups) {
|
|
156
157
|
const groupHeader = append(listEl, $("div.chat-debug-file-list-group-header"));
|
|
@@ -163,7 +164,7 @@ function renderCustomizationDiscoveryContent(
|
|
|
163
164
|
link.textContent = locationLabel;
|
|
164
165
|
link.tabIndex = -1;
|
|
165
166
|
disposables.add(
|
|
166
|
-
hoverService.setupManagedHover(getDefaultHoverDelegate("element"), link, ( localize(
|
|
167
|
+
hoverService.setupManagedHover(getDefaultHoverDelegate("element"), link, ( localize(5726, "Open {0} in Extensions", firstFile.extensionId)))
|
|
167
168
|
);
|
|
168
169
|
disposables.add(addDisposableListener(link, EventType.CLICK, e => {
|
|
169
170
|
e.preventDefault();
|
|
@@ -215,11 +216,11 @@ function renderCustomizationDiscoveryContent(
|
|
|
215
216
|
const section = append(container, $("div.chat-debug-file-list-section"));
|
|
216
217
|
append(
|
|
217
218
|
section,
|
|
218
|
-
$("div.chat-debug-file-list-section-title", undefined, ( localize(
|
|
219
|
+
$("div.chat-debug-file-list-section-title", undefined, ( localize(5727, "Skipped ({0})", skipped.length)))
|
|
219
220
|
);
|
|
220
221
|
const groups = ( new Map());
|
|
221
222
|
for (const file of skipped) {
|
|
222
|
-
const key = file.skipReason ?? ( localize(
|
|
223
|
+
const key = file.skipReason ?? ( localize(5728, "unknown"));
|
|
223
224
|
let group = groups.get(key);
|
|
224
225
|
if (!group) {
|
|
225
226
|
group = [];
|
|
@@ -229,7 +230,7 @@ function renderCustomizationDiscoveryContent(
|
|
|
229
230
|
}
|
|
230
231
|
const listEl = append(section, $("div.chat-debug-file-list-rows"));
|
|
231
232
|
listEl.setAttribute("role", "list");
|
|
232
|
-
listEl.setAttribute("aria-label", ( localize(
|
|
233
|
+
listEl.setAttribute("aria-label", ( localize(5729, "Skipped files")));
|
|
233
234
|
const rows = [];
|
|
234
235
|
for (const [reasonLabel, files] of groups) {
|
|
235
236
|
const groupHeader = append(listEl, $("div.chat-debug-file-list-group-header"));
|
|
@@ -251,7 +252,7 @@ function renderCustomizationDiscoveryContent(
|
|
|
251
252
|
if (detail) {
|
|
252
253
|
detail += ", ";
|
|
253
254
|
}
|
|
254
|
-
detail += ( localize(
|
|
255
|
+
detail += ( localize(5730, "duplicate of {0}", file.duplicateOf.path));
|
|
255
256
|
}
|
|
256
257
|
row.appendChild(createInlineFileLink(
|
|
257
258
|
file.uri,
|
|
@@ -286,13 +287,13 @@ function renderCustomizationDiscoveryContent(
|
|
|
286
287
|
const chevron = append(header, $("span.chat-debug-message-section-chevron"));
|
|
287
288
|
append(
|
|
288
289
|
header,
|
|
289
|
-
$("span.chat-debug-message-section-title", undefined, ( localize(
|
|
290
|
+
$("span.chat-debug-message-section-title", undefined, ( localize(5731, "Sources ({0})", content.sourceFolders.length)))
|
|
290
291
|
);
|
|
291
292
|
const settingsKey = getSettingsKeyForDiscoveryType(content.discoveryType);
|
|
292
293
|
if (settingsKey) {
|
|
293
294
|
const gearBtn = disposables.add(( new Button(header, {
|
|
294
|
-
title: ( localize(
|
|
295
|
-
ariaLabel: ( localize(
|
|
295
|
+
title: ( localize(5732, "Configure locations")),
|
|
296
|
+
ariaLabel: ( localize(5733, "Configure locations")),
|
|
296
297
|
hoverDelegate: getDefaultHoverDelegate("mouse")
|
|
297
298
|
})));
|
|
298
299
|
gearBtn.icon = Codicon.settingsGear;
|
|
@@ -321,13 +322,13 @@ function renderCustomizationDiscoveryContent(
|
|
|
321
322
|
const contentEl = append(sectionEl, $("div.chat-debug-source-folder-content"));
|
|
322
323
|
contentEl.tabIndex = 0;
|
|
323
324
|
contentEl.setAttribute("role", "region");
|
|
324
|
-
contentEl.setAttribute("aria-label", ( localize(
|
|
325
|
+
contentEl.setAttribute("aria-label", ( localize(5734, "Source folders")));
|
|
325
326
|
const capitalizedType = content.discoveryType.charAt(0).toUpperCase() + content.discoveryType.slice(1);
|
|
326
327
|
const sourcesCaption = capitalizedType.endsWith("s") ? capitalizedType : capitalizedType + "s";
|
|
327
328
|
append(
|
|
328
329
|
contentEl,
|
|
329
330
|
$("div.chat-debug-source-folder-note", undefined, ( localize(
|
|
330
|
-
|
|
331
|
+
5735,
|
|
331
332
|
"{0} were discovered by checking the following sources in order:",
|
|
332
333
|
sourcesCaption
|
|
333
334
|
)))
|
|
@@ -338,7 +339,14 @@ function renderCustomizationDiscoveryContent(
|
|
|
338
339
|
append(row, $("span.chat-debug-source-folder-index", undefined, `${i + 1}.`));
|
|
339
340
|
append(row, $("span.chat-debug-source-folder-label", undefined, folder.uri.path));
|
|
340
341
|
}
|
|
341
|
-
setupCollapsibleToggle(
|
|
342
|
+
setupCollapsibleToggle(
|
|
343
|
+
chevron,
|
|
344
|
+
header,
|
|
345
|
+
contentEl,
|
|
346
|
+
disposables,
|
|
347
|
+
true,
|
|
348
|
+
scrollable
|
|
349
|
+
);
|
|
342
350
|
}
|
|
343
351
|
return {
|
|
344
352
|
element: container,
|
|
@@ -348,13 +356,13 @@ function renderCustomizationDiscoveryContent(
|
|
|
348
356
|
function fileListToPlainText(content) {
|
|
349
357
|
const lines = [];
|
|
350
358
|
const capitalizedType = content.discoveryType.charAt(0).toUpperCase() + content.discoveryType.slice(1);
|
|
351
|
-
lines.push(( localize(
|
|
352
|
-
lines.push(( localize(
|
|
359
|
+
lines.push(( localize(5736, "{0} Discovery Results", capitalizedType)));
|
|
360
|
+
lines.push(( localize(5737, "Total files: {0}", content.files.length)));
|
|
353
361
|
lines.push("");
|
|
354
362
|
const loaded = content.files.filter(f => f.status === "loaded");
|
|
355
363
|
const skipped = content.files.filter(f => f.status === "skipped");
|
|
356
364
|
if (loaded.length > 0) {
|
|
357
|
-
lines.push(( localize(
|
|
365
|
+
lines.push(( localize(5738, "Loaded ({0})", loaded.length)));
|
|
358
366
|
const groups = ( new Map());
|
|
359
367
|
for (const f of loaded) {
|
|
360
368
|
const parentDir = content.discoveryType === "skill" ? dirname(dirname(f.uri)) : dirname(f.uri);
|
|
@@ -376,10 +384,10 @@ function fileListToPlainText(content) {
|
|
|
376
384
|
lines.push("");
|
|
377
385
|
}
|
|
378
386
|
if (skipped.length > 0) {
|
|
379
|
-
lines.push(( localize(
|
|
387
|
+
lines.push(( localize(5739, "Skipped ({0})", skipped.length)));
|
|
380
388
|
const skippedGroups = ( new Map());
|
|
381
389
|
for (const f of skipped) {
|
|
382
|
-
const key = f.skipReason ?? ( localize(
|
|
390
|
+
const key = f.skipReason ?? ( localize(5740, "unknown"));
|
|
383
391
|
let group = skippedGroups.get(key);
|
|
384
392
|
if (!group) {
|
|
385
393
|
group = [];
|
|
@@ -398,7 +406,7 @@ function fileListToPlainText(content) {
|
|
|
398
406
|
parts.push(f.errorMessage);
|
|
399
407
|
}
|
|
400
408
|
if (f.duplicateOf) {
|
|
401
|
-
parts.push(( localize(
|
|
409
|
+
parts.push(( localize(5741, "duplicate of {0}", f.duplicateOf.path)));
|
|
402
410
|
}
|
|
403
411
|
detail += ` (${parts.join(", ")})`;
|
|
404
412
|
}
|
|
@@ -408,7 +416,7 @@ function fileListToPlainText(content) {
|
|
|
408
416
|
}
|
|
409
417
|
if (content.sourceFolders && content.sourceFolders.length > 0) {
|
|
410
418
|
lines.push("");
|
|
411
|
-
lines.push(( localize(
|
|
419
|
+
lines.push(( localize(5742, "Sources ({0})", content.sourceFolders.length)));
|
|
412
420
|
for (const folder of content.sourceFolders) {
|
|
413
421
|
lines.push(` ${folder.uri.path}`);
|
|
414
422
|
}
|
|
@@ -1,12 +1,8 @@
|
|
|
1
1
|
import { DisposableStore } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
|
|
2
|
-
import { IChatDebugMessageSection } from "../../common/chatDebugService.js";
|
|
3
2
|
/**
|
|
4
3
|
* Wire up a collapsible toggle on a chevron+header+content triple.
|
|
5
4
|
* Handles icon switching and display toggling.
|
|
6
5
|
*/
|
|
7
|
-
export declare function setupCollapsibleToggle(chevron: HTMLElement, header: HTMLElement, contentEl: HTMLElement, disposables: DisposableStore, initiallyCollapsed?: boolean
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
* wrapped in a scrollable element.
|
|
11
|
-
*/
|
|
12
|
-
export declare function renderCollapsibleSection(parent: HTMLElement, section: IChatDebugMessageSection, disposables: DisposableStore, initiallyCollapsed?: boolean): void;
|
|
6
|
+
export declare function setupCollapsibleToggle(chevron: HTMLElement, header: HTMLElement, contentEl: HTMLElement, disposables: DisposableStore, initiallyCollapsed?: boolean, scrollable?: {
|
|
7
|
+
scanDomNode(): void;
|
|
8
|
+
}): void;
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
|
|
2
|
-
import {
|
|
2
|
+
import { clearNode, addDisposableListener, EventType } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/dom';
|
|
3
3
|
import { Codicon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/codicons';
|
|
4
4
|
import { ThemeIcon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/themables';
|
|
5
5
|
|
|
6
|
-
|
|
7
|
-
function setupCollapsibleToggle(chevron, header, contentEl, disposables, initiallyCollapsed = false) {
|
|
6
|
+
function setupCollapsibleToggle(chevron, header, contentEl, disposables, initiallyCollapsed = false, scrollable) {
|
|
8
7
|
let collapsed = initiallyCollapsed;
|
|
9
8
|
header.tabIndex = 0;
|
|
10
9
|
header.role = 'button';
|
|
@@ -22,6 +21,7 @@ function setupCollapsibleToggle(chevron, header, contentEl, disposables, initial
|
|
|
22
21
|
collapsed = !collapsed;
|
|
23
22
|
chevron.className = 'chat-debug-message-section-chevron';
|
|
24
23
|
updateState();
|
|
24
|
+
scrollable?.scanDomNode();
|
|
25
25
|
}));
|
|
26
26
|
disposables.add(addDisposableListener(header, EventType.KEY_DOWN, (e) => {
|
|
27
27
|
if (e.key === 'Enter' || e.key === ' ') {
|
|
@@ -30,17 +30,5 @@ function setupCollapsibleToggle(chevron, header, contentEl, disposables, initial
|
|
|
30
30
|
}
|
|
31
31
|
}));
|
|
32
32
|
}
|
|
33
|
-
function renderCollapsibleSection(parent, section, disposables, initiallyCollapsed = false) {
|
|
34
|
-
const sectionEl = append(parent, $('div.chat-debug-message-section'));
|
|
35
|
-
const header = append(sectionEl, $('div.chat-debug-message-section-header'));
|
|
36
|
-
const chevron = append(header, $(`span.chat-debug-message-section-chevron`));
|
|
37
|
-
append(header, $('span.chat-debug-message-section-title', undefined, section.name));
|
|
38
|
-
const contentEl = $('pre.chat-debug-message-section-content');
|
|
39
|
-
contentEl.textContent = section.content;
|
|
40
|
-
contentEl.tabIndex = 0;
|
|
41
|
-
const wrapper = append(sectionEl, $('div.chat-debug-message-section-content-wrapper'));
|
|
42
|
-
wrapper.appendChild(contentEl);
|
|
43
|
-
setupCollapsibleToggle(chevron, header, wrapper, disposables, initiallyCollapsed);
|
|
44
|
-
}
|
|
45
33
|
|
|
46
|
-
export {
|
|
34
|
+
export { setupCollapsibleToggle };
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
|
|
2
|
+
import { ILanguageService } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/languages/language.service";
|
|
2
3
|
import { IClipboardService } from "@codingame/monaco-vscode-api/vscode/vs/platform/clipboard/common/clipboardService.service";
|
|
3
4
|
import { IHoverService } from "@codingame/monaco-vscode-api/vscode/vs/platform/hover/browser/hover.service";
|
|
4
5
|
import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation";
|
|
5
6
|
import { IOpenerService } from "@codingame/monaco-vscode-api/vscode/vs/platform/opener/common/opener.service";
|
|
6
7
|
import { IEditorService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service";
|
|
7
|
-
import { IChatDebugEvent } from "
|
|
8
|
+
import { IChatDebugEvent } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatDebugService";
|
|
8
9
|
import { IChatDebugService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatDebugService.service";
|
|
9
10
|
/**
|
|
10
11
|
* Reusable detail panel that resolves and displays the content of a
|
|
@@ -18,17 +19,32 @@ export declare class ChatDebugDetailPanel extends Disposable {
|
|
|
18
19
|
private readonly clipboardService;
|
|
19
20
|
private readonly hoverService;
|
|
20
21
|
private readonly openerService;
|
|
22
|
+
private readonly languageService;
|
|
21
23
|
private readonly _onDidHide;
|
|
22
24
|
readonly onDidHide: import("@codingame/monaco-vscode-api/vscode/vs/base/common/event").Event<void>;
|
|
25
|
+
private readonly _onDidChangeWidth;
|
|
26
|
+
readonly onDidChangeWidth: import("@codingame/monaco-vscode-api/vscode/vs/base/common/event").Event<number>;
|
|
23
27
|
readonly element: HTMLElement;
|
|
24
28
|
private readonly contentContainer;
|
|
29
|
+
private readonly scrollable;
|
|
30
|
+
private readonly sash;
|
|
31
|
+
private headerElement;
|
|
25
32
|
private readonly detailDisposables;
|
|
26
33
|
private currentDetailText;
|
|
27
34
|
private currentDetailEventId;
|
|
28
35
|
private firstFocusableElement;
|
|
29
|
-
|
|
36
|
+
private _width;
|
|
37
|
+
get width(): number;
|
|
38
|
+
constructor(parent: HTMLElement, chatDebugService: IChatDebugService, instantiationService: IInstantiationService, editorService: IEditorService, clipboardService: IClipboardService, hoverService: IHoverService, openerService: IOpenerService, languageService: ILanguageService);
|
|
30
39
|
show(event: IChatDebugEvent): Promise<void>;
|
|
31
40
|
get isVisible(): boolean;
|
|
32
41
|
focus(): void;
|
|
42
|
+
/**
|
|
43
|
+
* Set explicit dimensions on the scrollable element so the scrollbar
|
|
44
|
+
* can compute its size. Call after the panel is shown and whenever
|
|
45
|
+
* the available space changes.
|
|
46
|
+
*/
|
|
47
|
+
layout(height: number): void;
|
|
48
|
+
layoutSash(): void;
|
|
33
49
|
hide(): void;
|
|
34
50
|
}
|
|
@@ -2,6 +2,9 @@
|
|
|
2
2
|
import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
|
|
3
3
|
import { $ as $$1, append, hide, addDisposableListener, EventType, getWindow, show, clearNode } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/dom';
|
|
4
4
|
import { Button } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/button/button';
|
|
5
|
+
import { Sash, Orientation, SashState } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/sash/sash';
|
|
6
|
+
import { DomScrollableElement } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/scrollbar/scrollableElement';
|
|
7
|
+
import { ScrollbarVisibility } from '@codingame/monaco-vscode-api/vscode/vs/base/common/scrollable';
|
|
5
8
|
import { Codicon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/codicons';
|
|
6
9
|
import { Emitter } from '@codingame/monaco-vscode-api/vscode/vs/base/common/event';
|
|
7
10
|
import { Disposable, DisposableStore } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
|
|
@@ -20,9 +23,16 @@ import { fileListToPlainText, renderCustomizationDiscoveryContent } from './chat
|
|
|
20
23
|
import { resolvedMessageToPlainText, renderResolvedMessageContent, messageEventToPlainText, renderUserMessageContent, renderAgentResponseContent } from './chatDebugMessageContentRenderer.js';
|
|
21
24
|
import { toolCallContentToPlainText, renderToolCallContent } from './chatDebugToolCallContentRenderer.js';
|
|
22
25
|
import { modelTurnContentToPlainText, renderModelTurnContent } from './chatDebugModelTurnContentRenderer.js';
|
|
26
|
+
import { hookContentToPlainText, renderHookContent } from './chatDebugHookContentRenderer.js';
|
|
23
27
|
|
|
24
28
|
const $ = $$1;
|
|
29
|
+
const DETAIL_PANEL_DEFAULT_WIDTH = 350;
|
|
30
|
+
const DETAIL_PANEL_MIN_WIDTH = 200;
|
|
31
|
+
const DETAIL_PANEL_MAX_WIDTH = 800;
|
|
25
32
|
let ChatDebugDetailPanel = class ChatDebugDetailPanel extends Disposable {
|
|
33
|
+
get width() {
|
|
34
|
+
return this._width;
|
|
35
|
+
}
|
|
26
36
|
constructor(
|
|
27
37
|
parent,
|
|
28
38
|
chatDebugService,
|
|
@@ -30,7 +40,8 @@ let ChatDebugDetailPanel = class ChatDebugDetailPanel extends Disposable {
|
|
|
30
40
|
editorService,
|
|
31
41
|
clipboardService,
|
|
32
42
|
hoverService,
|
|
33
|
-
openerService
|
|
43
|
+
openerService,
|
|
44
|
+
languageService
|
|
34
45
|
) {
|
|
35
46
|
super();
|
|
36
47
|
this.chatDebugService = chatDebugService;
|
|
@@ -39,13 +50,48 @@ let ChatDebugDetailPanel = class ChatDebugDetailPanel extends Disposable {
|
|
|
39
50
|
this.clipboardService = clipboardService;
|
|
40
51
|
this.hoverService = hoverService;
|
|
41
52
|
this.openerService = openerService;
|
|
53
|
+
this.languageService = languageService;
|
|
42
54
|
this._onDidHide = this._register(( new Emitter()));
|
|
43
55
|
this.onDidHide = this._onDidHide.event;
|
|
56
|
+
this._onDidChangeWidth = this._register(( new Emitter()));
|
|
57
|
+
this.onDidChangeWidth = this._onDidChangeWidth.event;
|
|
44
58
|
this.detailDisposables = this._register(( new DisposableStore()));
|
|
45
59
|
this.currentDetailText = "";
|
|
60
|
+
this._width = DETAIL_PANEL_DEFAULT_WIDTH;
|
|
46
61
|
this.element = append(parent, $(".chat-debug-detail-panel"));
|
|
47
62
|
this.contentContainer = $(".chat-debug-detail-content");
|
|
63
|
+
this.scrollable = this._register(( new DomScrollableElement(this.contentContainer, {
|
|
64
|
+
horizontal: ScrollbarVisibility.Hidden,
|
|
65
|
+
vertical: ScrollbarVisibility.Auto
|
|
66
|
+
})));
|
|
67
|
+
this.element.style.width = `${this._width}px`;
|
|
48
68
|
hide(this.element);
|
|
69
|
+
this.sash = this._register(( new Sash(parent, {
|
|
70
|
+
getVerticalSashLeft: () => parent.offsetWidth - this._width
|
|
71
|
+
}, {
|
|
72
|
+
orientation: Orientation.VERTICAL
|
|
73
|
+
})));
|
|
74
|
+
this.sash.state = SashState.Disabled;
|
|
75
|
+
let sashStartWidth;
|
|
76
|
+
this._register(this.sash.onDidStart(() => sashStartWidth = this._width));
|
|
77
|
+
this._register(this.sash.onDidEnd(() => {
|
|
78
|
+
sashStartWidth = undefined;
|
|
79
|
+
this.sash.layout();
|
|
80
|
+
}));
|
|
81
|
+
this._register(this.sash.onDidChange(e => {
|
|
82
|
+
if (sashStartWidth === undefined) {
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
85
|
+
const delta = e.startX - e.currentX;
|
|
86
|
+
const newWidth = Math.max(
|
|
87
|
+
DETAIL_PANEL_MIN_WIDTH,
|
|
88
|
+
Math.min(DETAIL_PANEL_MAX_WIDTH, sashStartWidth + delta)
|
|
89
|
+
);
|
|
90
|
+
this._width = newWidth;
|
|
91
|
+
this.element.style.width = `${newWidth}px`;
|
|
92
|
+
this.sash.layout();
|
|
93
|
+
this._onDidChangeWidth.fire(newWidth);
|
|
94
|
+
}));
|
|
49
95
|
this._register(addDisposableListener(this.element, EventType.KEY_DOWN, e => {
|
|
50
96
|
if ((e.ctrlKey || e.metaKey) && e.key === "a") {
|
|
51
97
|
const target = e.target;
|
|
@@ -70,14 +116,17 @@ let ChatDebugDetailPanel = class ChatDebugDetailPanel extends Disposable {
|
|
|
70
116
|
this.currentDetailEventId = event.id;
|
|
71
117
|
const resolved = event.id ? await this.chatDebugService.resolveEvent(event.id) : undefined;
|
|
72
118
|
show(this.element);
|
|
119
|
+
this.sash.state = SashState.Enabled;
|
|
120
|
+
this.sash.layout();
|
|
73
121
|
clearNode(this.element);
|
|
74
122
|
clearNode(this.contentContainer);
|
|
75
123
|
this.detailDisposables.clear();
|
|
76
124
|
const header = append(this.element, $(".chat-debug-detail-header"));
|
|
77
|
-
this.
|
|
125
|
+
this.headerElement = header;
|
|
126
|
+
this.element.appendChild(this.scrollable.getDomNode());
|
|
78
127
|
const fullScreenButton = this.detailDisposables.add(( new Button(header, {
|
|
79
|
-
ariaLabel: ( localize(
|
|
80
|
-
title: ( localize(
|
|
128
|
+
ariaLabel: ( localize(5745, "Open in Editor")),
|
|
129
|
+
title: ( localize(5745, "Open in Editor"))
|
|
81
130
|
})));
|
|
82
131
|
fullScreenButton.element.classList.add("chat-debug-detail-button");
|
|
83
132
|
fullScreenButton.icon = Codicon.goToFile;
|
|
@@ -89,8 +138,8 @@ let ChatDebugDetailPanel = class ChatDebugDetailPanel extends Disposable {
|
|
|
89
138
|
});
|
|
90
139
|
}));
|
|
91
140
|
const copyButton = this.detailDisposables.add(( new Button(header, {
|
|
92
|
-
ariaLabel: ( localize(
|
|
93
|
-
title: ( localize(
|
|
141
|
+
ariaLabel: ( localize(5746, "Copy")),
|
|
142
|
+
title: ( localize(5746, "Copy"))
|
|
94
143
|
})));
|
|
95
144
|
copyButton.element.classList.add("chat-debug-detail-button");
|
|
96
145
|
copyButton.icon = Codicon.copy;
|
|
@@ -98,8 +147,8 @@ let ChatDebugDetailPanel = class ChatDebugDetailPanel extends Disposable {
|
|
|
98
147
|
this.clipboardService.writeText(this.currentDetailText);
|
|
99
148
|
}));
|
|
100
149
|
const closeButton = this.detailDisposables.add(( new Button(header, {
|
|
101
|
-
ariaLabel: ( localize(
|
|
102
|
-
title: ( localize(
|
|
150
|
+
ariaLabel: ( localize(5747, "Close")),
|
|
151
|
+
title: ( localize(5747, "Close"))
|
|
103
152
|
})));
|
|
104
153
|
closeButton.element.classList.add("chat-debug-detail-button");
|
|
105
154
|
closeButton.icon = Codicon.close;
|
|
@@ -115,19 +164,19 @@ let ChatDebugDetailPanel = class ChatDebugDetailPanel extends Disposable {
|
|
|
115
164
|
resolved,
|
|
116
165
|
this.openerService,
|
|
117
166
|
accessor.get(IModelService),
|
|
118
|
-
|
|
167
|
+
this.languageService,
|
|
119
168
|
this.hoverService,
|
|
120
|
-
accessor.get(ILabelService)
|
|
169
|
+
accessor.get(ILabelService),
|
|
170
|
+
this.scrollable
|
|
121
171
|
));
|
|
122
172
|
this.detailDisposables.add(contentDisposables);
|
|
123
173
|
this.contentContainer.appendChild(contentEl);
|
|
124
174
|
} else if (resolved && resolved.kind === "toolCall") {
|
|
125
175
|
this.currentDetailText = toolCallContentToPlainText(resolved);
|
|
126
|
-
const languageService = this.instantiationService.invokeFunction(accessor => accessor.get(ILanguageService));
|
|
127
176
|
const {
|
|
128
177
|
element: contentEl,
|
|
129
178
|
disposables: contentDisposables
|
|
130
|
-
} = await renderToolCallContent(resolved, languageService);
|
|
179
|
+
} = await renderToolCallContent(resolved, this.languageService, this.clipboardService, this.scrollable);
|
|
131
180
|
if (this.currentDetailEventId !== event.id) {
|
|
132
181
|
contentDisposables.dispose();
|
|
133
182
|
return;
|
|
@@ -139,7 +188,11 @@ let ChatDebugDetailPanel = class ChatDebugDetailPanel extends Disposable {
|
|
|
139
188
|
const {
|
|
140
189
|
element: contentEl,
|
|
141
190
|
disposables: contentDisposables
|
|
142
|
-
} = renderResolvedMessageContent(resolved);
|
|
191
|
+
} = await renderResolvedMessageContent(resolved, this.languageService, this.clipboardService, this.scrollable);
|
|
192
|
+
if (this.currentDetailEventId !== event.id) {
|
|
193
|
+
contentDisposables.dispose();
|
|
194
|
+
return;
|
|
195
|
+
}
|
|
143
196
|
this.detailDisposables.add(contentDisposables);
|
|
144
197
|
this.contentContainer.appendChild(contentEl);
|
|
145
198
|
} else if (resolved && resolved.kind === "modelTurn") {
|
|
@@ -147,7 +200,23 @@ let ChatDebugDetailPanel = class ChatDebugDetailPanel extends Disposable {
|
|
|
147
200
|
const {
|
|
148
201
|
element: contentEl,
|
|
149
202
|
disposables: contentDisposables
|
|
150
|
-
} = renderModelTurnContent(resolved);
|
|
203
|
+
} = await renderModelTurnContent(resolved, this.languageService, this.clipboardService, this.scrollable);
|
|
204
|
+
if (this.currentDetailEventId !== event.id) {
|
|
205
|
+
contentDisposables.dispose();
|
|
206
|
+
return;
|
|
207
|
+
}
|
|
208
|
+
this.detailDisposables.add(contentDisposables);
|
|
209
|
+
this.contentContainer.appendChild(contentEl);
|
|
210
|
+
} else if (resolved && resolved.kind === "hook") {
|
|
211
|
+
this.currentDetailText = hookContentToPlainText(resolved);
|
|
212
|
+
const {
|
|
213
|
+
element: contentEl,
|
|
214
|
+
disposables: contentDisposables
|
|
215
|
+
} = await renderHookContent(resolved, this.languageService, this.clipboardService, this.scrollable);
|
|
216
|
+
if (this.currentDetailEventId !== event.id) {
|
|
217
|
+
contentDisposables.dispose();
|
|
218
|
+
return;
|
|
219
|
+
}
|
|
151
220
|
this.detailDisposables.add(contentDisposables);
|
|
152
221
|
this.contentContainer.appendChild(contentEl);
|
|
153
222
|
} else if (event.kind === "userMessage") {
|
|
@@ -155,7 +224,11 @@ let ChatDebugDetailPanel = class ChatDebugDetailPanel extends Disposable {
|
|
|
155
224
|
const {
|
|
156
225
|
element: contentEl,
|
|
157
226
|
disposables: contentDisposables
|
|
158
|
-
} = renderUserMessageContent(event);
|
|
227
|
+
} = await renderUserMessageContent(event, this.languageService, this.clipboardService, this.scrollable);
|
|
228
|
+
if (this.currentDetailEventId !== event.id) {
|
|
229
|
+
contentDisposables.dispose();
|
|
230
|
+
return;
|
|
231
|
+
}
|
|
159
232
|
this.detailDisposables.add(contentDisposables);
|
|
160
233
|
this.contentContainer.appendChild(contentEl);
|
|
161
234
|
} else if (event.kind === "agentResponse") {
|
|
@@ -163,7 +236,11 @@ let ChatDebugDetailPanel = class ChatDebugDetailPanel extends Disposable {
|
|
|
163
236
|
const {
|
|
164
237
|
element: contentEl,
|
|
165
238
|
disposables: contentDisposables
|
|
166
|
-
} = renderAgentResponseContent(event);
|
|
239
|
+
} = await renderAgentResponseContent(event, this.languageService, this.clipboardService, this.scrollable);
|
|
240
|
+
if (this.currentDetailEventId !== event.id) {
|
|
241
|
+
contentDisposables.dispose();
|
|
242
|
+
return;
|
|
243
|
+
}
|
|
167
244
|
this.detailDisposables.add(contentDisposables);
|
|
168
245
|
this.contentContainer.appendChild(contentEl);
|
|
169
246
|
} else {
|
|
@@ -176,6 +253,12 @@ let ChatDebugDetailPanel = class ChatDebugDetailPanel extends Disposable {
|
|
|
176
253
|
}
|
|
177
254
|
pre.textContent = this.currentDetailText;
|
|
178
255
|
}
|
|
256
|
+
const parentHeight = this.element.parentElement?.clientHeight ?? 0;
|
|
257
|
+
if (parentHeight > 0) {
|
|
258
|
+
this.layout(parentHeight);
|
|
259
|
+
} else {
|
|
260
|
+
this.scrollable.scanDomNode();
|
|
261
|
+
}
|
|
179
262
|
}
|
|
180
263
|
get isVisible() {
|
|
181
264
|
return this.element.style.display !== "none";
|
|
@@ -183,16 +266,28 @@ let ChatDebugDetailPanel = class ChatDebugDetailPanel extends Disposable {
|
|
|
183
266
|
focus() {
|
|
184
267
|
this.firstFocusableElement?.focus();
|
|
185
268
|
}
|
|
269
|
+
layout(height) {
|
|
270
|
+
const headerHeight = this.headerElement?.offsetHeight ?? 0;
|
|
271
|
+
const scrollableHeight = Math.max(0, height - headerHeight);
|
|
272
|
+
this.contentContainer.style.height = `${scrollableHeight}px`;
|
|
273
|
+
this.scrollable.scanDomNode();
|
|
274
|
+
this.sash.layout();
|
|
275
|
+
}
|
|
276
|
+
layoutSash() {
|
|
277
|
+
this.sash.layout();
|
|
278
|
+
}
|
|
186
279
|
hide() {
|
|
187
280
|
this.currentDetailEventId = undefined;
|
|
188
281
|
this.firstFocusableElement = undefined;
|
|
282
|
+
this.headerElement = undefined;
|
|
189
283
|
hide(this.element);
|
|
284
|
+
this.sash.state = SashState.Disabled;
|
|
190
285
|
clearNode(this.element);
|
|
191
286
|
clearNode(this.contentContainer);
|
|
192
287
|
this.detailDisposables.clear();
|
|
193
288
|
this._onDidHide.fire();
|
|
194
289
|
}
|
|
195
290
|
};
|
|
196
|
-
ChatDebugDetailPanel = ( __decorate([( __param(1, IChatDebugService)), ( __param(2, IInstantiationService)), ( __param(3, IEditorService)), ( __param(4, IClipboardService)), ( __param(5, IHoverService)), ( __param(6, IOpenerService))], ChatDebugDetailPanel));
|
|
291
|
+
ChatDebugDetailPanel = ( __decorate([( __param(1, IChatDebugService)), ( __param(2, IInstantiationService)), ( __param(3, IEditorService)), ( __param(4, IClipboardService)), ( __param(5, IHoverService)), ( __param(6, IOpenerService)), ( __param(7, ILanguageService))], ChatDebugDetailPanel));
|
|
197
292
|
|
|
198
293
|
export { ChatDebugDetailPanel };
|
|
@@ -2,6 +2,7 @@ import { Dimension } from "@codingame/monaco-vscode-api/vscode/vs/base/browser/d
|
|
|
2
2
|
import { CancellationToken } from "@codingame/monaco-vscode-api/vscode/vs/base/common/cancellation";
|
|
3
3
|
import { URI } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri";
|
|
4
4
|
import { IContextKeyService } from "@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey.service";
|
|
5
|
+
import { IConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service";
|
|
5
6
|
import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation";
|
|
6
7
|
import { IStorageService } from "@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage.service";
|
|
7
8
|
import { ITelemetryService } from "@codingame/monaco-vscode-api/vscode/vs/platform/telemetry/common/telemetry.service";
|
|
@@ -21,6 +22,7 @@ export declare class ChatDebugEditor extends EditorPane {
|
|
|
21
22
|
private readonly chatWidgetService;
|
|
22
23
|
private readonly chatService;
|
|
23
24
|
private readonly contextKeyService;
|
|
25
|
+
private readonly configurationService;
|
|
24
26
|
static readonly ID: string;
|
|
25
27
|
private container;
|
|
26
28
|
private currentDimension;
|
|
@@ -32,15 +34,13 @@ export declare class ChatDebugEditor extends EditorPane {
|
|
|
32
34
|
private filterState;
|
|
33
35
|
private readonly sessionModelListener;
|
|
34
36
|
private readonly modelChangeListeners;
|
|
35
|
-
/** Saved session resource so we can restore it after the editor is re-shown. */
|
|
36
|
-
private savedSessionResource;
|
|
37
37
|
/**
|
|
38
38
|
* Stops the streaming pipeline and clears cached events for the
|
|
39
39
|
* active session. Called when navigating away from a session or
|
|
40
40
|
* when the editor becomes hidden.
|
|
41
41
|
*/
|
|
42
42
|
private endActiveSession;
|
|
43
|
-
constructor(group: IEditorGroup, telemetryService: ITelemetryService, themeService: IThemeService, storageService: IStorageService, instantiationService: IInstantiationService, chatDebugService: IChatDebugService, chatWidgetService: IChatWidgetService, chatService: IChatService, contextKeyService: IContextKeyService);
|
|
43
|
+
constructor(group: IEditorGroup, telemetryService: ITelemetryService, themeService: IThemeService, storageService: IStorageService, instantiationService: IInstantiationService, chatDebugService: IChatDebugService, chatWidgetService: IChatWidgetService, chatService: IChatService, contextKeyService: IContextKeyService, configurationService: IConfigurationService);
|
|
44
44
|
protected createEditor(parent: HTMLElement): void;
|
|
45
45
|
private showView;
|
|
46
46
|
navigateToSession(sessionResource: URI, view?: "logs" | "overview" | "flowchart"): void;
|