@codingame/monaco-vscode-chat-service-override 30.0.0 → 31.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.js +21 -3
- package/package.json +5 -5
- package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostProtocolClient.d.ts +125 -0
- package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostProtocolClient.js +393 -0
- package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostServiceImpl.d.ts +65 -0
- package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostServiceImpl.js +453 -0
- package/vscode/src/vs/platform/agentHost/browser/webSocketClientTransport.d.ts +28 -0
- package/vscode/src/vs/platform/agentHost/browser/webSocketClientTransport.js +81 -0
- package/vscode/src/vs/platform/agentHost/common/agentHostFileSystemProvider.d.ts +75 -0
- package/vscode/src/vs/platform/agentHost/common/agentHostFileSystemProvider.js +180 -0
- package/vscode/src/vs/platform/agentHost/common/agentService.d.ts +202 -51
- package/vscode/src/vs/platform/agentHost/common/state/agentSubscription.d.ts +182 -0
- package/vscode/src/vs/platform/agentHost/common/state/agentSubscription.js +282 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/commands.d.ts +303 -32
- package/vscode/src/vs/platform/agentHost/common/state/protocol/commands.js +14 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/errors.d.ts +1 -1
- package/vscode/src/vs/platform/agentHost/common/state/protocol/errors.js +9 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/reducers.d.ts +30 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/reducers.js +662 -0
- package/vscode/src/vs/platform/agentHost/common/state/sessionActions.d.ts +12 -5
- package/vscode/src/vs/platform/agentHost/common/state/sessionActions.js +9 -0
- package/vscode/src/vs/platform/agentHost/common/state/sessionCapabilities.d.ts +17 -0
- package/vscode/src/vs/platform/agentHost/common/state/sessionCapabilities.js +5 -0
- package/vscode/src/vs/platform/agentHost/common/state/sessionProtocol.d.ts +5 -5
- package/vscode/src/vs/platform/agentHost/common/state/sessionProtocol.js +14 -0
- package/vscode/src/vs/platform/agentHost/common/state/sessionTransport.d.ts +42 -0
- package/vscode/src/vs/platform/agentHost/common/state/sessionTransport.js +7 -0
- package/vscode/src/vs/platform/agentPlugins/common/pluginParsers.d.ts +118 -0
- package/vscode/src/vs/platform/agentPlugins/common/pluginParsers.js +551 -0
- package/vscode/src/vs/platform/networkFilter/common/networkFilterService.d.ts +22 -0
- package/vscode/src/vs/platform/networkFilter/common/networkFilterService.js +83 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityService.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.js +16 -16
- 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.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.js +17 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +113 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +81 -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 +47 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +15 -10
- 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 +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatOpenAgentDebugPanelAction.js +13 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPluginActions.js +15 -14
- 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 +5 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQueueActions.js +58 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +18 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/createPluginAction.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/createPluginAction.js +24 -22
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditor.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditorInput.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.js +29 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.js +16 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionWorkingDirectoryResolver.d.ts +9 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionWorkingDirectoryResolver.js +23 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.js +65 -55
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsQuickAccess.js +1 -1
- 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.js +4 -4
- 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 +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.js +28 -28
- 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/aiCustomization/aiCustomizationDebugPanel.d.ts +10 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.js +80 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.d.ts +20 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.js +30 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemSource.d.ts +131 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemSource.js +363 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.d.ts +31 -76
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.js +374 -764
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidgetUtils.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidgetUtils.js +11 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.contribution.js +222 -44
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.d.ts +20 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.js +269 -123
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePage.d.ts +40 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePage.js +40 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePagePromptLaunchers.d.ts +26 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePagePromptLaunchers.js +249 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWorkspaceService.d.ts +3 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWorkspaceService.js +3 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.d.ts +4 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.js +5 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.d.ts +14 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.js +113 -58
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationManagement.css +202 -68
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationWelcomePromptLaunchers.css +246 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.d.ts +15 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.js +162 -50
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/promptsServiceCustomizationItemProvider.d.ts +24 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/promptsServiceCustomizationItemProvider.js +306 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +581 -257
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatCustomizationDiscoveryRenderer.d.ts +15 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatCustomizationDiscoveryRenderer.js +245 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugDetailPanel.js +25 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditor.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditor.js +3 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditorInput.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventDetailRenderer.js +19 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventList.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFilters.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowChartView.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowGraph.js +103 -28
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowLayout.js +3 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHomeView.d.ts +11 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHomeView.js +80 -29
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHookContentRenderer.js +17 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.d.ts +20 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.js +128 -65
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugMessageContentRenderer.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugModelTurnContentRenderer.js +23 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugOverviewView.js +28 -28
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugToolCallContentRenderer.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/media/chatDebug.css +18 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +1 -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 +2 -2
- 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 +11 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +6 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatImageCarouselService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.js +10 -27
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.d.ts +4 -41
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.js +4 -310
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.d.ts +0 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.js +3 -30
- 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 +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.js +61 -53
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/media/chatManagementEditor.css +0 -110
- package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +31 -31
- package/vscode/src/vs/workbench/contrib/chat/browser/chatRepoInfo.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.js +46 -34
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.d.ts +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.js +17 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupGrowthSession.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.js +96 -82
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.js +21 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.js +18 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatus.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.d.ts +15 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.js +315 -263
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/media/chatStatus.css +196 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipCatalog.js +56 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipEligibilityTracker.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.js +8 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/claudePluginRecommendations.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/defaultModelContribution.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/enablementActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/enablementStatusWidget.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelsConfigurationService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginGitCommandService.d.ts +18 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginGitCommandService.js +31 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.js +26 -25
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.js +48 -57
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginUrlHandler.js +6 -6
- 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.d.ts +2 -2
- 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 +8 -8
- 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 +11 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/promptsDebugContribution.js +226 -36
- package/vscode/src/vs/workbench/contrib/chat/browser/telemetry/chatModelCountTelemetry.d.ts +23 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/telemetry/chatModelCountTelemetry.js +82 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.js +108 -56
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.js +24 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/renameTool.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/usagesTool.js +7 -7
- 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.d.ts +3 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatStatusWidget.js +9 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.js +21 -80
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorContrib.js +26 -59
- 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 +4 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditor.js +9 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.js +46 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewTitleControl.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/chatDebugEvents.d.ts +40 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatDebugEvents.js +60 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.d.ts +32 -5
- package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.js +152 -26
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.d.ts +5 -9
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.js +265 -261
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatModelStore.d.ts +28 -2
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatModelStore.js +75 -7
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionOperationLog.js +9 -1
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.js +6 -5
- package/vscode/src/vs/workbench/contrib/chat/common/model/objectMutationLog.d.ts +18 -0
- package/vscode/src/vs/workbench/contrib/chat/common/model/objectMutationLog.js +32 -4
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.d.ts +10 -25
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.d.ts +7 -52
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.js +58 -466
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/workspacePluginSettingsService.js +3 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +36 -18
- 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 +0 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.js +168 -182
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +49 -29
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +491 -462
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +16 -6
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +18 -12
- package/vscode/src/vs/workbench/contrib/chat/common/tools/chatArtifactsService.d.ts +24 -4
- package/vscode/src/vs/workbench/contrib/chat/common/tools/chatArtifactsService.js +145 -68
- package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +1 -1
- package/vscode/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.js +2 -2
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.js +4 -4
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +25 -25
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatDefaultModel.js +2 -2
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatHistoryService.d.ts +2 -4
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatHistoryService.js +19 -17
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatNotebook.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatNotebook.js +3 -3
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.d.ts +5 -17
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +77 -157
- 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 +7 -7
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +17 -17
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibleView.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +21 -21
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatEnabler.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatService.d.ts +4 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatService.js +29 -7
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +2 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +12 -14
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalLastCommandTool.js +4 -4
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.d.ts +5 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.js +49 -12
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.js +4 -4
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/killTerminalTool.js +9 -8
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.js +13 -8
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sendToTerminalTool.d.ts +53 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sendToTerminalTool.js +319 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/createAndRunTaskTool.js +15 -15
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/getTaskOutputTool.js +8 -8
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/runTaskTool.js +15 -15
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.js +2 -2
- package/vscode/src/vs/workbench/services/agentHost/common/agentHostFileSystemService.d.ts +21 -0
- package/vscode/src/vs/workbench/services/agentHost/common/agentHostFileSystemService.js +35 -0
- package/vscode/src/vs/platform/agentHost/common/agentService.service.d.ts +0 -94
- package/vscode/src/vs/platform/agentHost/common/state/protocol/action-origin.generated.d.ts +0 -16
- package/vscode/src/vs/platform/agentHost/common/state/protocol/actions.d.ts +0 -578
- package/vscode/src/vs/platform/agentHost/common/state/protocol/messages.d.ts +0 -206
- package/vscode/src/vs/platform/agentHost/common/state/protocol/notifications.d.ts +0 -114
- package/vscode/src/vs/platform/agentHost/common/state/protocol/state.d.ts +0 -860
- package/vscode/src/vs/platform/agentHost/common/state/sessionState.d.ts +0 -27
- package/vscode/src/vs/platform/browserElements/common/browserElements.d.ts +0 -58
- package/vscode/src/vs/platform/browserElements/common/browserElements.js +0 -16
- package/vscode/src/vs/platform/sandbox/common/sandboxHelperIpc.d.ts +0 -18
- package/vscode/src/vs/platform/sandbox/common/sandboxHelperIpc.js +0 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/media/simpleBrowserOverlay.css +0 -85
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/simpleBrowserEditorOverlay.d.ts +0 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/simpleBrowserEditorOverlay.js +0 -443
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatUsageWidget.d.ts +0 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatUsageWidget.js +0 -132
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/media/chatUsageWidget.css +0 -69
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetup.d.ts +0 -65
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetup.js +0 -66
- package/vscode/src/vs/workbench/contrib/chat/common/chatArtifactExtraction.d.ts +0 -8
- package/vscode/src/vs/workbench/contrib/chat/common/chatArtifactExtraction.js +0 -158
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/alternativeRecommendation.d.ts +0 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/alternativeRecommendation.js +0 -41
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers/commandFileWriteParser.d.ts +0 -24
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers/sedFileWriteParser.d.ts +0 -26
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers/sedFileWriteParser.js +0 -142
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.d.ts +0 -45
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.js +0 -164
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.d.ts +0 -50
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.js +0 -163
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.d.ts +0 -27
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.js +0 -142
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.d.ts +0 -29
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.js +0 -137
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/strategyHelpers.d.ts +0 -40
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/strategyHelpers.js +0 -174
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/outputHelpers.d.ts +0 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/outputHelpers.js +0 -39
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.d.ts +0 -32
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +0 -249
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.d.ts +0 -41
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.js +0 -92
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.d.ts +0 -40
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.js +0 -209
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/awaitTerminalTool.d.ts +0 -12
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/awaitTerminalTool.js +0 -106
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/commandLineAutoApprover.d.ts +0 -31
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/commandLineAutoApprover.js +0 -392
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/npmScriptAutoApprover.d.ts +0 -45
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/npmScriptAutoApprover.js +0 -243
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAnalyzer.d.ts +0 -52
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAnalyzer.js +0 -10
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.d.ts +0 -20
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.js +0 -310
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.d.ts +0 -19
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.js +0 -168
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineSandboxAnalyzer.d.ts +0 -8
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineSandboxAnalyzer.js +0 -25
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/commandLinePresenter.d.ts +0 -41
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/nodeCommandLinePresenter.d.ts +0 -19
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/nodeCommandLinePresenter.js +0 -37
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/pythonCommandLinePresenter.d.ts +0 -19
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/pythonCommandLinePresenter.js +0 -37
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/rubyCommandLinePresenter.d.ts +0 -19
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/rubyCommandLinePresenter.js +0 -44
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/sandboxedCommandLinePresenter.d.ts +0 -13
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/sandboxedCommandLinePresenter.js +0 -21
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineCdPrefixRewriter.d.ts +0 -5
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineCdPrefixRewriter.js +0 -27
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePreventHistoryRewriter.d.ts +0 -14
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePreventHistoryRewriter.js +0 -29
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePwshChainOperatorRewriter.d.ts +0 -8
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePwshChainOperatorRewriter.js +0 -33
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineRewriter.d.ts +0 -20
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineSandboxRewriter.d.ts +0 -8
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineSandboxRewriter.js +0 -28
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.d.ts +0 -118
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +0 -1019
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/types.d.ts +0 -49
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/types.js +0 -23
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/outputAnalyzer.d.ts +0 -9
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.d.ts +0 -150
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +0 -1619
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.d.ts +0 -22
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.js +0 -41
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalCommandArtifactCollector.d.ts +0 -17
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalCommandArtifactCollector.js +0 -118
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/toolIds.d.ts +0 -12
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/toolIds.js +0 -17
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.d.ts +0 -25
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.js +0 -130
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.d.ts +0 -122
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.js +0 -482
|
@@ -61,7 +61,6 @@ import { ITextModelService } from '@codingame/monaco-vscode-api/vscode/vs/editor
|
|
|
61
61
|
import { IConfigurationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service';
|
|
62
62
|
import { getSimpleEditorOptions } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/codeEditor/browser/simpleEditorOptions';
|
|
63
63
|
import { IWorkingCopyService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/workingCopy/common/workingCopyService.service';
|
|
64
|
-
import { IFileDialogService } from '@codingame/monaco-vscode-api/vscode/vs/platform/dialogs/common/dialogs.service';
|
|
65
64
|
import { IHoverService } from '@codingame/monaco-vscode-api/vscode/vs/platform/hover/browser/hover.service';
|
|
66
65
|
import { IFileService } from '@codingame/monaco-vscode-api/vscode/vs/platform/files/common/files.service';
|
|
67
66
|
import { INotificationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/notification/common/notification.service';
|
|
@@ -76,16 +75,18 @@ import { AgentPluginEditorInput } from '../agentPluginEditor/agentPluginEditorIn
|
|
|
76
75
|
import { CustomizationHarness, matchesWorkspaceSubpath } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/customizationHarnessService';
|
|
77
76
|
import { ICustomizationHarnessService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/customizationHarnessService.service';
|
|
78
77
|
import { ChatConfiguration } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
|
|
79
|
-
import {
|
|
78
|
+
import { AICustomizationWelcomePage } from './aiCustomizationWelcomePage.js';
|
|
79
|
+
import { IViewsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/views/common/viewsService.service';
|
|
80
80
|
import { autorun } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/reactions/autorun';
|
|
81
81
|
import { Orientation } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/sash/sash';
|
|
82
|
+
import { AICustomizationManagementSection, BUILTIN_STORAGE } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService';
|
|
82
83
|
|
|
83
84
|
var AICustomizationManagementEditor_1;
|
|
84
85
|
registerCss(aiCustomizationManagement);
|
|
85
86
|
const $ = $$1;
|
|
86
87
|
const aiCustomizationManagementSashBorder = registerColor("aiCustomizationManagement.sashBorder", PANEL_BORDER, ( localize(
|
|
87
|
-
|
|
88
|
-
"The color of the
|
|
88
|
+
5410,
|
|
89
|
+
"The color of the Agent Customizations editor splitview sash border."
|
|
89
90
|
)));
|
|
90
91
|
class SectionItemDelegate {
|
|
91
92
|
getHeight() {
|
|
@@ -96,7 +97,8 @@ class SectionItemDelegate {
|
|
|
96
97
|
}
|
|
97
98
|
}
|
|
98
99
|
class SectionItemRenderer {
|
|
99
|
-
constructor() {
|
|
100
|
+
constructor(hoverService) {
|
|
101
|
+
this.hoverService = hoverService;
|
|
100
102
|
this.templateId = "sectionItem";
|
|
101
103
|
}
|
|
102
104
|
renderTemplate(container) {
|
|
@@ -104,14 +106,17 @@ class SectionItemRenderer {
|
|
|
104
106
|
const icon = append(container, $(".section-icon"));
|
|
105
107
|
const label = append(container, $(".section-label"));
|
|
106
108
|
const count = append(container, $(".section-count"));
|
|
109
|
+
const templateDisposables = ( new DisposableStore());
|
|
107
110
|
return {
|
|
108
111
|
container,
|
|
109
112
|
icon,
|
|
110
113
|
label,
|
|
111
|
-
count
|
|
114
|
+
count,
|
|
115
|
+
templateDisposables
|
|
112
116
|
};
|
|
113
117
|
}
|
|
114
118
|
renderElement(element, index, templateData) {
|
|
119
|
+
templateData.templateDisposables.clear();
|
|
115
120
|
templateData.icon.className = "section-icon";
|
|
116
121
|
templateData.icon.classList.add(...ThemeIcon.asClassNameArray(element.icon));
|
|
117
122
|
templateData.label.textContent = element.label;
|
|
@@ -122,8 +127,15 @@ class SectionItemRenderer {
|
|
|
122
127
|
templateData.count.textContent = "";
|
|
123
128
|
templateData.count.style.display = "none";
|
|
124
129
|
}
|
|
130
|
+
templateData.templateDisposables.add(this.hoverService.setupManagedHover(
|
|
131
|
+
getDefaultHoverDelegate("element"),
|
|
132
|
+
templateData.container,
|
|
133
|
+
element.description
|
|
134
|
+
));
|
|
135
|
+
}
|
|
136
|
+
disposeTemplate(templateData) {
|
|
137
|
+
templateData.templateDisposables.dispose();
|
|
125
138
|
}
|
|
126
|
-
disposeTemplate() {}
|
|
127
139
|
}
|
|
128
140
|
let AICustomizationManagementEditor = class AICustomizationManagementEditor extends EditorPane {
|
|
129
141
|
static {
|
|
@@ -146,14 +158,14 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
146
158
|
textModelService,
|
|
147
159
|
configurationService,
|
|
148
160
|
workingCopyService,
|
|
149
|
-
fileDialogService,
|
|
150
161
|
hoverService,
|
|
151
162
|
modelService,
|
|
152
163
|
quickInputService,
|
|
153
164
|
contextMenuService,
|
|
154
165
|
fileService,
|
|
155
166
|
notificationService,
|
|
156
|
-
harnessService
|
|
167
|
+
harnessService,
|
|
168
|
+
viewsService
|
|
157
169
|
) {
|
|
158
170
|
super(
|
|
159
171
|
AICustomizationManagementEditor_1.ID,
|
|
@@ -171,7 +183,6 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
171
183
|
this.textModelService = textModelService;
|
|
172
184
|
this.configurationService = configurationService;
|
|
173
185
|
this.workingCopyService = workingCopyService;
|
|
174
|
-
this.fileDialogService = fileDialogService;
|
|
175
186
|
this.hoverService = hoverService;
|
|
176
187
|
this.modelService = modelService;
|
|
177
188
|
this.quickInputService = quickInputService;
|
|
@@ -179,6 +190,7 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
179
190
|
this.fileService = fileService;
|
|
180
191
|
this.notificationService = notificationService;
|
|
181
192
|
this.harnessService = harnessService;
|
|
193
|
+
this.viewsService = viewsService;
|
|
182
194
|
this.editorActionButtonInProgress = false;
|
|
183
195
|
this.editorModelChangeDisposables = this._register(( new DisposableStore()));
|
|
184
196
|
this.builtinEditingSessions = ( new Map());
|
|
@@ -187,7 +199,6 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
187
199
|
this.pluginDetailDisposables = this._register(( new DisposableStore()));
|
|
188
200
|
this.sections = [];
|
|
189
201
|
this.allSections = [];
|
|
190
|
-
this.selectedSection = AICustomizationManagementSection.Agents;
|
|
191
202
|
this.editorDisposables = this._register(( new DisposableStore()));
|
|
192
203
|
this.promptsSectionCountScheduler = this._register(( new RunOnceScheduler(() => this._doRefreshAllPromptsSectionCounts(), 100)));
|
|
193
204
|
this._editorContentChanged = false;
|
|
@@ -207,36 +218,62 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
207
218
|
this._register(toDisposable(() => this.disposeBuiltinEditingSessions()));
|
|
208
219
|
const sectionInfo = {
|
|
209
220
|
[AICustomizationManagementSection.Agents]: {
|
|
210
|
-
label: ( localize(
|
|
211
|
-
icon: agentIcon
|
|
221
|
+
label: ( localize(5411, "Agents")),
|
|
222
|
+
icon: agentIcon,
|
|
223
|
+
description: ( localize(
|
|
224
|
+
5412,
|
|
225
|
+
"Define custom agents with specialized personas, tool access, and instructions for specific tasks."
|
|
226
|
+
))
|
|
212
227
|
},
|
|
213
228
|
[AICustomizationManagementSection.Skills]: {
|
|
214
|
-
label: ( localize(
|
|
215
|
-
icon: skillIcon
|
|
229
|
+
label: ( localize(5413, "Skills")),
|
|
230
|
+
icon: skillIcon,
|
|
231
|
+
description: ( localize(
|
|
232
|
+
5414,
|
|
233
|
+
"Create reusable skill files that provide domain-specific knowledge and workflows."
|
|
234
|
+
))
|
|
216
235
|
},
|
|
217
236
|
[AICustomizationManagementSection.Instructions]: {
|
|
218
|
-
label: ( localize(
|
|
219
|
-
icon: instructionsIcon
|
|
237
|
+
label: ( localize(5415, "Instructions")),
|
|
238
|
+
icon: instructionsIcon,
|
|
239
|
+
description: ( localize(
|
|
240
|
+
5416,
|
|
241
|
+
"Set always-on instructions that guide AI behavior across your workspace or user profile."
|
|
242
|
+
))
|
|
220
243
|
},
|
|
221
244
|
[AICustomizationManagementSection.Prompts]: {
|
|
222
|
-
label: ( localize(
|
|
223
|
-
icon: promptIcon
|
|
245
|
+
label: ( localize(5417, "Prompts")),
|
|
246
|
+
icon: promptIcon,
|
|
247
|
+
description: ( localize(5418, "Reusable prompt templates that can be invoked as slash commands."))
|
|
224
248
|
},
|
|
225
249
|
[AICustomizationManagementSection.Hooks]: {
|
|
226
|
-
label: ( localize(
|
|
227
|
-
icon: hookIcon
|
|
250
|
+
label: ( localize(5419, "Hooks")),
|
|
251
|
+
icon: hookIcon,
|
|
252
|
+
description: ( localize(
|
|
253
|
+
5420,
|
|
254
|
+
"Configure automated actions triggered by events like saving files or running tasks."
|
|
255
|
+
))
|
|
228
256
|
},
|
|
229
257
|
[AICustomizationManagementSection.McpServers]: {
|
|
230
|
-
label: ( localize(
|
|
231
|
-
icon: Codicon.server
|
|
258
|
+
label: ( localize(5421, "MCP Servers")),
|
|
259
|
+
icon: Codicon.server,
|
|
260
|
+
description: ( localize(
|
|
261
|
+
5422,
|
|
262
|
+
"Connect external tool servers that extend AI capabilities with custom tools and data sources."
|
|
263
|
+
))
|
|
232
264
|
},
|
|
233
265
|
[AICustomizationManagementSection.Plugins]: {
|
|
234
|
-
label: ( localize(
|
|
235
|
-
icon: pluginIcon
|
|
266
|
+
label: ( localize(5423, "Plugins")),
|
|
267
|
+
icon: pluginIcon,
|
|
268
|
+
description: ( localize(
|
|
269
|
+
5424,
|
|
270
|
+
"Install and manage agent plugins that add additional tools, skills, and integrations."
|
|
271
|
+
))
|
|
236
272
|
},
|
|
237
273
|
[AICustomizationManagementSection.Models]: {
|
|
238
|
-
label: ( localize(
|
|
239
|
-
icon: Codicon.vm
|
|
274
|
+
label: ( localize(5425, "Models")),
|
|
275
|
+
icon: Codicon.vm,
|
|
276
|
+
description: ( localize(5426, "Configure and manage language models available for use."))
|
|
240
277
|
}
|
|
241
278
|
};
|
|
242
279
|
for (const id of this.workspaceService.managementSections) {
|
|
@@ -253,8 +290,8 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
253
290
|
const savedSection = this.storageService.get(AI_CUSTOMIZATION_MANAGEMENT_SELECTED_SECTION_KEY, StorageScope.PROFILE);
|
|
254
291
|
if (savedSection && ( this.sections.some(s => s.id === savedSection))) {
|
|
255
292
|
this.selectedSection = savedSection;
|
|
256
|
-
} else
|
|
257
|
-
this.selectedSection =
|
|
293
|
+
} else {
|
|
294
|
+
this.selectedSection = undefined;
|
|
258
295
|
}
|
|
259
296
|
}
|
|
260
297
|
createEditor(parent) {
|
|
@@ -286,9 +323,7 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
286
323
|
layout: (width, _, height) => {
|
|
287
324
|
this.sidebarContainer.style.width = `${width}px`;
|
|
288
325
|
if (height !== undefined) {
|
|
289
|
-
|
|
290
|
-
const listHeight = height - 8 - footerHeight;
|
|
291
|
-
this.sectionsList.layout(listHeight, width);
|
|
326
|
+
this.sectionsList.layout(height - 8, width);
|
|
292
327
|
}
|
|
293
328
|
}
|
|
294
329
|
}, savedWidth, undefined, true);
|
|
@@ -360,29 +395,30 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
360
395
|
if (this.sectionsList) {
|
|
361
396
|
this.sectionsList.splice(0, this.sectionsList.length, this.sections);
|
|
362
397
|
}
|
|
363
|
-
|
|
364
|
-
|
|
398
|
+
this.welcomePage?.rebuildCards(( new Set(( this.sections.map(s => s.id)))));
|
|
399
|
+
if (this.selectedSection !== undefined && !( this.sections.some(s => s.id === this.selectedSection)) && this.sections.length > 0) {
|
|
400
|
+
this.showWelcomePage();
|
|
365
401
|
} else {
|
|
366
402
|
this.ensureSectionsListReflectsActiveSection();
|
|
367
403
|
}
|
|
368
404
|
}
|
|
369
405
|
createSidebar() {
|
|
370
|
-
const sidebarContent =
|
|
371
|
-
this.
|
|
406
|
+
const sidebarContent = append(this.sidebarContainer, $(".sidebar-content"));
|
|
407
|
+
this.createSidebarHeader(sidebarContent);
|
|
372
408
|
const sectionsListContainer = append(sidebarContent, $(".sidebar-sections-list"));
|
|
373
409
|
this.sectionsList = this.editorDisposables.add(this.instantiationService.createInstance(
|
|
374
410
|
WorkbenchList,
|
|
375
411
|
"AICustomizationManagementSections",
|
|
376
412
|
sectionsListContainer,
|
|
377
413
|
( new SectionItemDelegate()),
|
|
378
|
-
[( new SectionItemRenderer())],
|
|
414
|
+
[( new SectionItemRenderer(this.hoverService))],
|
|
379
415
|
{
|
|
380
416
|
multipleSelectionSupport: false,
|
|
381
417
|
setRowLineHeight: false,
|
|
382
418
|
horizontalScrolling: false,
|
|
383
419
|
accessibilityProvider: {
|
|
384
420
|
getAriaLabel: item => item.label,
|
|
385
|
-
getWidgetAriaLabel: () => ( localize(
|
|
421
|
+
getWidgetAriaLabel: () => ( localize(5427, "Agent Customization Sections"))
|
|
386
422
|
},
|
|
387
423
|
openOnSingleClick: true,
|
|
388
424
|
identityProvider: {
|
|
@@ -394,7 +430,9 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
394
430
|
this.ensureSectionsListReflectsActiveSection();
|
|
395
431
|
this.editorDisposables.add(this.sectionsList.onDidChangeSelection(e => {
|
|
396
432
|
if (e.elements.length === 0) {
|
|
397
|
-
this.
|
|
433
|
+
if (this.selectedSection !== undefined) {
|
|
434
|
+
this.showWelcomePage();
|
|
435
|
+
}
|
|
398
436
|
return;
|
|
399
437
|
}
|
|
400
438
|
this.selectSection(e.elements[0].id);
|
|
@@ -410,6 +448,12 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
410
448
|
this.rebuildVisibleSections();
|
|
411
449
|
this.ensureHarnessDropdown();
|
|
412
450
|
this.updateHarnessDropdown();
|
|
451
|
+
if (this._previousActiveHarnessId !== undefined && this._previousActiveHarnessId !== activeId) {
|
|
452
|
+
for (const section of this.sections) {
|
|
453
|
+
this.updateSectionCount(section.id, 0);
|
|
454
|
+
}
|
|
455
|
+
}
|
|
456
|
+
this._previousActiveHarnessId = activeId;
|
|
413
457
|
this.refreshAllPromptsSectionCounts();
|
|
414
458
|
}));
|
|
415
459
|
if (!this.isHarnessSelectorEnabled) {
|
|
@@ -422,18 +466,39 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
422
466
|
}
|
|
423
467
|
}
|
|
424
468
|
}));
|
|
425
|
-
if (this.workspaceService.isSessionsWindow) {
|
|
426
|
-
this.createFolderPicker(sidebarContent);
|
|
427
|
-
}
|
|
428
469
|
}
|
|
429
|
-
|
|
470
|
+
createSidebarHeader(sidebarContent) {
|
|
471
|
+
const headerRow = this.sidebarHeaderContainer = append(sidebarContent, $(".sidebar-header-row"));
|
|
472
|
+
const homeButton = this.homeButton = append(headerRow, $("button.sidebar-home-button"));
|
|
473
|
+
homeButton.setAttribute("aria-label", ( localize(5428, "Overview")));
|
|
474
|
+
this.editorDisposables.add(
|
|
475
|
+
this.hoverService.setupManagedHover(getDefaultHoverDelegate("element"), homeButton, ( localize(5429, "Back to overview")))
|
|
476
|
+
);
|
|
477
|
+
const homeIcon = append(homeButton, $("span.sidebar-home-icon"));
|
|
478
|
+
homeIcon.classList.add(...ThemeIcon.asClassNameArray(Codicon.home));
|
|
479
|
+
homeIcon.setAttribute("aria-hidden", "true");
|
|
480
|
+
const homeLabel = this.homeButtonLabel = append(homeButton, $("span.sidebar-home-label"));
|
|
481
|
+
homeLabel.textContent = ( localize(5430, "Overview"));
|
|
482
|
+
this.editorDisposables.add(addDisposableListener(homeButton, "click", () => {
|
|
483
|
+
this.showWelcomePage();
|
|
484
|
+
}));
|
|
485
|
+
this.createHarnessDropdown(headerRow);
|
|
486
|
+
this.updateHomeButtonStyle();
|
|
487
|
+
}
|
|
488
|
+
createHarnessDropdown(parent) {
|
|
430
489
|
if (!this.isHarnessSelectorEnabled) {
|
|
431
490
|
return;
|
|
432
491
|
}
|
|
433
|
-
const container = this.harnessDropdownContainer = append(
|
|
492
|
+
const container = this.harnessDropdownContainer = append(parent, $(".sidebar-harness-dropdown"));
|
|
434
493
|
this.harnessDropdownButton = append(container, $("button.harness-dropdown-button"));
|
|
435
|
-
this.harnessDropdownButton.setAttribute("aria-label", ( localize(
|
|
494
|
+
this.harnessDropdownButton.setAttribute("aria-label", ( localize(5431, "Select customization target")));
|
|
436
495
|
this.harnessDropdownButton.setAttribute("aria-haspopup", "listbox");
|
|
496
|
+
this.editorDisposables.add(
|
|
497
|
+
this.hoverService.setupManagedHover(getDefaultHoverDelegate("element"), this.harnessDropdownButton, () => {
|
|
498
|
+
const descriptor = this.harnessService.availableHarnesses.get().find(h => h.id === this.harnessService.activeHarness.get());
|
|
499
|
+
return descriptor?.label ?? "";
|
|
500
|
+
})
|
|
501
|
+
);
|
|
437
502
|
this.harnessDropdownIcon = append(this.harnessDropdownButton, $("span.harness-dropdown-icon"));
|
|
438
503
|
this.harnessDropdownLabel = append(this.harnessDropdownButton, $("span.harness-dropdown-label"));
|
|
439
504
|
append(
|
|
@@ -446,17 +511,25 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
446
511
|
}));
|
|
447
512
|
}
|
|
448
513
|
ensureHarnessDropdown() {
|
|
449
|
-
|
|
450
|
-
const shouldShow = this.isHarnessSelectorEnabled && harnesses.length > 1;
|
|
451
|
-
if (shouldShow && !this.harnessDropdownContainer && this.sidebarContent) {
|
|
452
|
-
this.createHarnessDropdown(this.sidebarContent);
|
|
453
|
-
} else if (!shouldShow && this.harnessDropdownContainer) {
|
|
514
|
+
if (!this.isHarnessSelectorEnabled && this.harnessDropdownContainer) {
|
|
454
515
|
this.harnessDropdownContainer.remove();
|
|
455
516
|
this.harnessDropdownContainer = undefined;
|
|
456
517
|
this.harnessDropdownButton = undefined;
|
|
457
518
|
this.harnessDropdownIcon = undefined;
|
|
458
519
|
this.harnessDropdownLabel = undefined;
|
|
520
|
+
this.updateHomeButtonStyle();
|
|
521
|
+
} else if (this.isHarnessSelectorEnabled && !this.harnessDropdownContainer && this.sidebarHeaderContainer) {
|
|
522
|
+
this.createHarnessDropdown(this.sidebarHeaderContainer);
|
|
523
|
+
this.updateHomeButtonStyle();
|
|
524
|
+
}
|
|
525
|
+
}
|
|
526
|
+
updateHomeButtonStyle() {
|
|
527
|
+
if (!this.homeButtonLabel || !this.homeButton) {
|
|
528
|
+
return;
|
|
459
529
|
}
|
|
530
|
+
const harnessVisible = this.harnessDropdownContainer && this.harnessDropdownContainer.style.display !== "none";
|
|
531
|
+
this.homeButtonLabel.style.display = harnessVisible ? "none" : "";
|
|
532
|
+
this.homeButton.style.flex = harnessVisible ? "" : "1";
|
|
460
533
|
}
|
|
461
534
|
updateHarnessDropdown() {
|
|
462
535
|
if (!this.harnessDropdownContainer || !this.harnessDropdownIcon || !this.harnessDropdownLabel) {
|
|
@@ -464,6 +537,7 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
464
537
|
}
|
|
465
538
|
const harnesses = this.harnessService.availableHarnesses.get();
|
|
466
539
|
this.harnessDropdownContainer.style.display = harnesses.length <= 1 ? "none" : "";
|
|
540
|
+
this.updateHomeButtonStyle();
|
|
467
541
|
const activeId = this.harnessService.activeHarness.get();
|
|
468
542
|
const descriptor = harnesses.find(h => h.id === activeId);
|
|
469
543
|
if (descriptor) {
|
|
@@ -491,62 +565,75 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
491
565
|
getCheckedActionsRepresentation: () => "radio"
|
|
492
566
|
});
|
|
493
567
|
}
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
568
|
+
createWelcomePage(parent) {
|
|
569
|
+
this.welcomePage = this.editorDisposables.add(( new AICustomizationWelcomePage(parent, this.workspaceService.welcomePageFeatures, {
|
|
570
|
+
selectSection: section => this.selectSection(section),
|
|
571
|
+
selectSectionWithMarketplace: section => this.selectSection(section, {
|
|
572
|
+
showMarketplace: true
|
|
573
|
+
}),
|
|
574
|
+
closeEditor: () => {
|
|
575
|
+
if (this.input) {
|
|
576
|
+
this.group.closeEditor(this.input);
|
|
577
|
+
}
|
|
578
|
+
},
|
|
579
|
+
prefillChat: async (query, options) => {
|
|
580
|
+
try {
|
|
581
|
+
if (this.workspaceService.isSessionsWindow) {
|
|
582
|
+
const sessionsViewId = "workbench.view.sessions.chat";
|
|
583
|
+
if (options?.newChat) {
|
|
584
|
+
await this.commandService.executeCommand("workbench.action.sessions.newChat");
|
|
585
|
+
}
|
|
586
|
+
const view = await this.viewsService.openView(sessionsViewId, true);
|
|
587
|
+
const chatView = view;
|
|
588
|
+
if (options?.isPartialQuery && chatView?.prefillInput) {
|
|
589
|
+
chatView.prefillInput(query);
|
|
590
|
+
} else if (chatView?.sendQuery) {
|
|
591
|
+
chatView.sendQuery(query);
|
|
592
|
+
}
|
|
593
|
+
} else {
|
|
594
|
+
if (options?.newChat) {
|
|
595
|
+
await this.commandService.executeCommand("workbench.action.chat.newChat");
|
|
596
|
+
}
|
|
597
|
+
await this.commandService.executeCommand("workbench.action.chat.open", {
|
|
598
|
+
query,
|
|
599
|
+
isPartialQuery: options?.isPartialQuery ?? false
|
|
600
|
+
});
|
|
601
|
+
}
|
|
602
|
+
} catch (err) {
|
|
603
|
+
onUnexpectedError(err);
|
|
604
|
+
}
|
|
605
|
+
}
|
|
606
|
+
}, this.commandService, this.workspaceService, this.hoverService)));
|
|
607
|
+
this.welcomePage.rebuildCards(( new Set(( this.sections.map(s => s.id)))));
|
|
608
|
+
}
|
|
609
|
+
createBackArrowButton() {
|
|
610
|
+
const button = $("button.section-back-arrow-button");
|
|
611
|
+
button.type = "button";
|
|
612
|
+
button.setAttribute("aria-label", ( localize(5432, "Back to overview")));
|
|
510
613
|
this.editorDisposables.add(
|
|
511
|
-
this.hoverService.setupManagedHover(getDefaultHoverDelegate("element"), button, (
|
|
512
|
-
const root = this.workspaceService.getActiveProjectRoot();
|
|
513
|
-
return root?.fsPath ?? "";
|
|
514
|
-
})
|
|
614
|
+
this.hoverService.setupManagedHover(getDefaultHoverDelegate("element"), button, ( localize(5433, "Back to overview")))
|
|
515
615
|
);
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
616
|
+
const icon = append(button, $("span.section-back-arrow-icon"));
|
|
617
|
+
icon.classList.add(...ThemeIcon.asClassNameArray(Codicon.arrowLeft));
|
|
618
|
+
icon.setAttribute("aria-hidden", "true");
|
|
619
|
+
this.editorDisposables.add(addDisposableListener(button, "click", () => {
|
|
620
|
+
this.showWelcomePage();
|
|
520
621
|
}));
|
|
622
|
+
return button;
|
|
521
623
|
}
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
this.folderPickerLabel.textContent = root ? basename(root) : ( localize(5406, "No folder"));
|
|
525
|
-
}
|
|
526
|
-
if (this.folderPickerClearButton) {
|
|
527
|
-
this.folderPickerClearButton.style.display = hasOverride ? "" : "none";
|
|
528
|
-
}
|
|
529
|
-
}
|
|
530
|
-
async browseForFolder() {
|
|
531
|
-
const result = await this.fileDialogService.showOpenDialog({
|
|
532
|
-
canSelectFolders: true,
|
|
533
|
-
canSelectFiles: false,
|
|
534
|
-
canSelectMany: false,
|
|
535
|
-
title: ( localize(5407, "Select Folder to Explore")),
|
|
536
|
-
defaultUri: this.workspaceService.getActiveProjectRoot()
|
|
537
|
-
});
|
|
538
|
-
if (result?.[0]) {
|
|
539
|
-
this.workspaceService.setOverrideProjectRoot(result[0]);
|
|
540
|
-
}
|
|
624
|
+
injectBackArrowIntoSearchRow(widget) {
|
|
625
|
+
widget.prependToSearchRow(this.createBackArrowButton());
|
|
541
626
|
}
|
|
542
627
|
createContent() {
|
|
543
628
|
const contentInner = append(this.contentContainer, $(".content-inner"));
|
|
629
|
+
this.createWelcomePage(contentInner);
|
|
544
630
|
this.promptsContentContainer = append(contentInner, $(".prompts-content-container"));
|
|
545
631
|
this.listWidget = this.editorDisposables.add(this.instantiationService.createInstance(AICustomizationListWidget));
|
|
546
632
|
this.promptsContentContainer.appendChild(this.listWidget.element);
|
|
633
|
+
this.injectBackArrowIntoSearchRow(this.listWidget);
|
|
547
634
|
this.editorDisposables.add(this.listWidget.onDidSelectItem(item => {
|
|
548
635
|
this.telemetryService.publicLog2("chatCustomizationEditor.itemSelected", {
|
|
549
|
-
section: this.selectedSection,
|
|
636
|
+
section: this.selectedSection ?? "welcome",
|
|
550
637
|
promptType: item.promptType,
|
|
551
638
|
storage: item.storage ?? "external"
|
|
552
639
|
});
|
|
@@ -577,16 +664,18 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
577
664
|
const hasSections = ( new Set(this.workspaceService.managementSections));
|
|
578
665
|
if (( hasSections.has(AICustomizationManagementSection.Models))) {
|
|
579
666
|
this.modelsContentContainer = append(contentInner, $(".models-content-container"));
|
|
667
|
+
const modelsBackBar = append(this.modelsContentContainer, $(".section-back-bar"));
|
|
668
|
+
modelsBackBar.appendChild(this.createBackArrowButton());
|
|
580
669
|
this.modelsWidget = this.editorDisposables.add(this.instantiationService.createInstance(ChatModelsWidget));
|
|
581
670
|
this.modelsContentContainer.appendChild(this.modelsWidget.element);
|
|
582
671
|
this.modelsFooterElement = append(this.modelsContentContainer, $(".section-footer"));
|
|
583
672
|
const modelsDescription = append(this.modelsFooterElement, $("p.section-footer-description"));
|
|
584
673
|
modelsDescription.textContent = ( localize(
|
|
585
|
-
|
|
674
|
+
5434,
|
|
586
675
|
"Browse and manage language models from different providers. Select models for use in chat, code completion, and other AI features."
|
|
587
676
|
));
|
|
588
677
|
const modelsLink = append(this.modelsFooterElement, $("a.section-footer-link"));
|
|
589
|
-
modelsLink.textContent = ( localize(
|
|
678
|
+
modelsLink.textContent = ( localize(5435, "Learn more about language models"));
|
|
590
679
|
modelsLink.href = "https://code.visualstudio.com/docs/copilot/customization/language-models";
|
|
591
680
|
this.editorDisposables.add(addDisposableListener(modelsLink, "click", e => {
|
|
592
681
|
e.preventDefault();
|
|
@@ -597,6 +686,7 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
597
686
|
this.mcpContentContainer = append(contentInner, $(".mcp-content-container"));
|
|
598
687
|
this.mcpListWidget = this.editorDisposables.add(this.instantiationService.createInstance(McpListWidget));
|
|
599
688
|
this.mcpContentContainer.appendChild(this.mcpListWidget.element);
|
|
689
|
+
this.injectBackArrowIntoSearchRow(this.mcpListWidget);
|
|
600
690
|
this.mcpDetailContainer = append(contentInner, $(".mcp-detail-container"));
|
|
601
691
|
this.createEmbeddedMcpDetail();
|
|
602
692
|
this.editorDisposables.add(this.mcpListWidget.onDidSelectServer(server => {
|
|
@@ -610,6 +700,7 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
610
700
|
this.pluginContentContainer = append(contentInner, $(".plugin-content-container"));
|
|
611
701
|
this.pluginListWidget = this.editorDisposables.add(this.instantiationService.createInstance(PluginListWidget));
|
|
612
702
|
this.pluginContentContainer.appendChild(this.pluginListWidget.element);
|
|
703
|
+
this.injectBackArrowIntoSearchRow(this.pluginListWidget);
|
|
613
704
|
this.pluginDetailContainer = append(contentInner, $(".plugin-detail-container"));
|
|
614
705
|
this.createEmbeddedPluginDetail();
|
|
615
706
|
this.editorDisposables.add(this.pluginListWidget.onDidSelectPlugin(item => {
|
|
@@ -684,8 +775,25 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
684
775
|
}
|
|
685
776
|
}
|
|
686
777
|
}
|
|
687
|
-
|
|
688
|
-
if (this.
|
|
778
|
+
showWelcomePage() {
|
|
779
|
+
if (this.viewMode === "editor") {
|
|
780
|
+
this.goBackToList();
|
|
781
|
+
}
|
|
782
|
+
if (this.viewMode === "mcpDetail") {
|
|
783
|
+
this.goBackFromMcpDetail();
|
|
784
|
+
}
|
|
785
|
+
if (this.viewMode === "pluginDetail") {
|
|
786
|
+
this.goBackFromPluginDetail();
|
|
787
|
+
}
|
|
788
|
+
this.selectedSection = undefined;
|
|
789
|
+
this.sectionContextKey.set("");
|
|
790
|
+
this.storageService.remove(AI_CUSTOMIZATION_MANAGEMENT_SELECTED_SECTION_KEY, StorageScope.PROFILE);
|
|
791
|
+
this.welcomePage?.reset();
|
|
792
|
+
this.updateContentVisibility();
|
|
793
|
+
this.ensureSectionsListReflectsActiveSection(undefined);
|
|
794
|
+
}
|
|
795
|
+
selectSection(section, options) {
|
|
796
|
+
if (this.selectedSection === section && !options?.showMarketplace) {
|
|
689
797
|
this.ensureSectionsListReflectsActiveSection(section);
|
|
690
798
|
return;
|
|
691
799
|
}
|
|
@@ -714,11 +822,23 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
714
822
|
void this.listWidget.setSection(section);
|
|
715
823
|
}
|
|
716
824
|
this.ensureSectionsListReflectsActiveSection(section);
|
|
825
|
+
if (options?.showMarketplace) {
|
|
826
|
+
if (section === AICustomizationManagementSection.McpServers) {
|
|
827
|
+
this.mcpListWidget?.showBrowseMarketplace();
|
|
828
|
+
} else if (section === AICustomizationManagementSection.Plugins) {
|
|
829
|
+
this.pluginListWidget?.showBrowseMarketplace();
|
|
830
|
+
}
|
|
831
|
+
}
|
|
717
832
|
}
|
|
718
833
|
ensureSectionsListReflectsActiveSection(section = this.selectedSection) {
|
|
719
834
|
if (!this.sectionsList) {
|
|
720
835
|
return;
|
|
721
836
|
}
|
|
837
|
+
if (section === undefined) {
|
|
838
|
+
this.sectionsList.setSelection([]);
|
|
839
|
+
this.sectionsList.setFocus([]);
|
|
840
|
+
return;
|
|
841
|
+
}
|
|
722
842
|
const index = this.sections.findIndex(s => s.id === section);
|
|
723
843
|
if (index < 0) {
|
|
724
844
|
return;
|
|
@@ -737,10 +857,14 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
737
857
|
const isMcpDetailMode = this.viewMode === "mcpDetail";
|
|
738
858
|
const isPluginDetailMode = this.viewMode === "pluginDetail";
|
|
739
859
|
const isDetailMode = isMcpDetailMode || isPluginDetailMode;
|
|
740
|
-
const
|
|
860
|
+
const isWelcome = this.selectedSection === undefined;
|
|
861
|
+
const isPromptsSection = this.selectedSection !== undefined && this.isPromptsSection(this.selectedSection);
|
|
741
862
|
const isModelsSection = this.selectedSection === AICustomizationManagementSection.Models;
|
|
742
863
|
const isMcpSection = this.selectedSection === AICustomizationManagementSection.McpServers;
|
|
743
864
|
const isPluginsSection = this.selectedSection === AICustomizationManagementSection.Plugins;
|
|
865
|
+
if (this.welcomePage) {
|
|
866
|
+
this.welcomePage.container.style.display = isWelcome && !isEditorMode && !isDetailMode ? "" : "none";
|
|
867
|
+
}
|
|
744
868
|
if (this.promptsContentContainer) {
|
|
745
869
|
this.promptsContentContainer.style.display = !isEditorMode && !isDetailMode && isPromptsSection ? "" : "none";
|
|
746
870
|
}
|
|
@@ -771,7 +895,7 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
771
895
|
}
|
|
772
896
|
async createNewItemWithAI(type) {
|
|
773
897
|
this.telemetryService.publicLog2("chatCustomizationEditor.createItem", {
|
|
774
|
-
section: this.selectedSection,
|
|
898
|
+
section: this.selectedSection ?? "welcome",
|
|
775
899
|
promptType: type,
|
|
776
900
|
creationMode: "ai",
|
|
777
901
|
target: "workspace"
|
|
@@ -783,7 +907,7 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
783
907
|
}
|
|
784
908
|
async createNewItemManual(type, target, rootFileName) {
|
|
785
909
|
this.telemetryService.publicLog2("chatCustomizationEditor.createItem", {
|
|
786
|
-
section: this.selectedSection,
|
|
910
|
+
section: this.selectedSection ?? "welcome",
|
|
787
911
|
promptType: type,
|
|
788
912
|
creationMode: "manual",
|
|
789
913
|
target: target === "workspace-root" ? "workspace" : target
|
|
@@ -793,7 +917,7 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
793
917
|
if (!projectRoot) {
|
|
794
918
|
return;
|
|
795
919
|
}
|
|
796
|
-
const override = this.harnessService.getActiveDescriptor().sectionOverrides?.get(this.selectedSection);
|
|
920
|
+
const override = this.selectedSection ? this.harnessService.getActiveDescriptor().sectionOverrides?.get(this.selectedSection) : undefined;
|
|
797
921
|
const fileName = rootFileName ?? override?.rootFile ?? AGENT_MD_FILENAME;
|
|
798
922
|
const fileUri = URI.joinPath(projectRoot, fileName);
|
|
799
923
|
if (await this.fileService.exists(fileUri)) {
|
|
@@ -828,7 +952,7 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
828
952
|
if (targetDir === null) {
|
|
829
953
|
return;
|
|
830
954
|
}
|
|
831
|
-
const override = this.harnessService.getActiveDescriptor().sectionOverrides?.get(this.selectedSection);
|
|
955
|
+
const override = this.selectedSection ? this.harnessService.getActiveDescriptor().sectionOverrides?.get(this.selectedSection) : undefined;
|
|
832
956
|
const options = {
|
|
833
957
|
targetFolder: targetDir,
|
|
834
958
|
targetStorage: target === "user" ? PromptsStorage.user : PromptsStorage.local,
|
|
@@ -910,7 +1034,7 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
910
1034
|
uri: folder.uri
|
|
911
1035
|
})));
|
|
912
1036
|
const picked = await this.quickInputService.pick(items, {
|
|
913
|
-
placeHolder: ( localize(
|
|
1037
|
+
placeHolder: ( localize(5436, "Select a directory for the new customization file"))
|
|
914
1038
|
});
|
|
915
1039
|
return picked?.uri ?? null;
|
|
916
1040
|
}
|
|
@@ -925,10 +1049,10 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
925
1049
|
async setInput(input, options, context, token) {
|
|
926
1050
|
this.workspaceService.clearOverrideProjectRoot();
|
|
927
1051
|
this.inEditorContextKey.set(true);
|
|
928
|
-
this.sectionContextKey.set(this.selectedSection);
|
|
1052
|
+
this.sectionContextKey.set(this.selectedSection ?? "");
|
|
929
1053
|
input.setSaveHandler(() => this.handleBuiltinSave());
|
|
930
1054
|
this.telemetryService.publicLog2("chatCustomizationEditor.opened", {
|
|
931
|
-
section: this.selectedSection
|
|
1055
|
+
section: this.selectedSection ?? "welcome"
|
|
932
1056
|
});
|
|
933
1057
|
await super.setInput(input, options, context, token);
|
|
934
1058
|
if (this.dimension) {
|
|
@@ -968,6 +1092,10 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
968
1092
|
this.embeddedEditor?.focus();
|
|
969
1093
|
return;
|
|
970
1094
|
}
|
|
1095
|
+
if (this.selectedSection === undefined) {
|
|
1096
|
+
this.welcomePage?.focus();
|
|
1097
|
+
return;
|
|
1098
|
+
}
|
|
971
1099
|
if (this.selectedSection === AICustomizationManagementSection.McpServers) {
|
|
972
1100
|
this.mcpListWidget?.focusSearch();
|
|
973
1101
|
} else if (this.selectedSection === AICustomizationManagementSection.Plugins) {
|
|
@@ -978,7 +1106,7 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
978
1106
|
this.listWidget?.focusSearch();
|
|
979
1107
|
}
|
|
980
1108
|
}
|
|
981
|
-
selectSectionById(sectionId) {
|
|
1109
|
+
selectSectionById(sectionId, options) {
|
|
982
1110
|
const index = this.sections.findIndex(s => s.id === sectionId);
|
|
983
1111
|
if (index >= 0) {
|
|
984
1112
|
if (this.viewMode === "editor") {
|
|
@@ -1006,6 +1134,13 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
1006
1134
|
this.layout(this.dimension);
|
|
1007
1135
|
}
|
|
1008
1136
|
this.ensureSectionsListReflectsActiveSection(sectionId);
|
|
1137
|
+
if (options?.showMarketplace) {
|
|
1138
|
+
if (sectionId === AICustomizationManagementSection.McpServers) {
|
|
1139
|
+
this.mcpListWidget?.showBrowseMarketplace();
|
|
1140
|
+
} else if (sectionId === AICustomizationManagementSection.Plugins) {
|
|
1141
|
+
this.pluginListWidget?.showBrowseMarketplace();
|
|
1142
|
+
}
|
|
1143
|
+
}
|
|
1009
1144
|
}
|
|
1010
1145
|
}
|
|
1011
1146
|
refreshList() {
|
|
@@ -1029,7 +1164,12 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
1029
1164
|
}
|
|
1030
1165
|
const editorHeader = append(this.editorContentContainer, $(".editor-header"));
|
|
1031
1166
|
this.editorActionButton = append(editorHeader, $("button.editor-back-button"));
|
|
1032
|
-
this.editorActionButton.setAttribute("aria-label", ( localize(
|
|
1167
|
+
this.editorActionButton.setAttribute("aria-label", ( localize(5437, "Back to list")));
|
|
1168
|
+
this.editorDisposables.add(this.hoverService.setupManagedHover(
|
|
1169
|
+
getDefaultHoverDelegate("element"),
|
|
1170
|
+
this.editorActionButton,
|
|
1171
|
+
( localize(5438, "Back to list"))
|
|
1172
|
+
));
|
|
1033
1173
|
this.editorActionButtonIcon = append(
|
|
1034
1174
|
this.editorActionButton,
|
|
1035
1175
|
$(`.codicon.codicon-${Codicon.arrowLeft.id}.editor-action-button-icon`)
|
|
@@ -1038,7 +1178,7 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
1038
1178
|
this.editorDisposables.add(addDisposableListener(this.editorActionButton, "click", () => {
|
|
1039
1179
|
void this.handleEditorActionButton().catch(error => {
|
|
1040
1180
|
console.error("Failed to handle editor back action:", error);
|
|
1041
|
-
this.notificationService.error(( localize(
|
|
1181
|
+
this.notificationService.error(( localize(5439, "Failed to finish the prompt action.")));
|
|
1042
1182
|
});
|
|
1043
1183
|
}));
|
|
1044
1184
|
const itemInfo = append(editorHeader, $(".editor-item-info"));
|
|
@@ -1142,7 +1282,7 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
1142
1282
|
this._editorContentChanged = this.workingCopyService.isDirty(uri);
|
|
1143
1283
|
this.editorSaveIndicator.className = "editor-save-indicator visible saved";
|
|
1144
1284
|
this.editorSaveIndicator.classList.add(...ThemeIcon.asClassNameArray(Codicon.check));
|
|
1145
|
-
this.editorSaveIndicator.title = ( localize(
|
|
1285
|
+
this.editorSaveIndicator.title = ( localize(5440, "Saved"));
|
|
1146
1286
|
}
|
|
1147
1287
|
}));
|
|
1148
1288
|
} catch (error) {
|
|
@@ -1187,7 +1327,7 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
1187
1327
|
const saveRequest = backgroundSaveRequest;
|
|
1188
1328
|
void this.saveExistingCustomization(saveRequest).catch(error => {
|
|
1189
1329
|
console.error("Failed to save customization changes on exit:", error);
|
|
1190
|
-
this.notificationService.warn(( localize(
|
|
1330
|
+
this.notificationService.warn(( localize(5441, "Could not save changes to {0}.", basename(saveRequest.fileUri))));
|
|
1191
1331
|
});
|
|
1192
1332
|
}
|
|
1193
1333
|
}
|
|
@@ -1280,7 +1420,7 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
1280
1420
|
const workspaceFolder = resolveWorkspaceTargetDirectory(this.workspaceService, promptType);
|
|
1281
1421
|
if (workspaceFolder) {
|
|
1282
1422
|
items.push({
|
|
1283
|
-
label: ( localize(
|
|
1423
|
+
label: ( localize(5442, "Workspace")),
|
|
1284
1424
|
description: workspaceFolder.fsPath,
|
|
1285
1425
|
target: "workspace",
|
|
1286
1426
|
folder: workspaceFolder
|
|
@@ -1289,19 +1429,19 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
1289
1429
|
const userFolder = await resolveUserTargetDirectory(this.promptsService, promptType);
|
|
1290
1430
|
if (userFolder) {
|
|
1291
1431
|
items.push({
|
|
1292
|
-
label: ( localize(
|
|
1432
|
+
label: ( localize(5443, "User")),
|
|
1293
1433
|
description: userFolder.fsPath,
|
|
1294
1434
|
target: "user",
|
|
1295
1435
|
folder: userFolder
|
|
1296
1436
|
});
|
|
1297
1437
|
}
|
|
1298
1438
|
items.push({
|
|
1299
|
-
label: ( localize(
|
|
1439
|
+
label: ( localize(5444, "Cancel")),
|
|
1300
1440
|
target: "cancel"
|
|
1301
1441
|
});
|
|
1302
1442
|
return this.quickInputService.pick(items, {
|
|
1303
1443
|
canPickMany: false,
|
|
1304
|
-
placeHolder: ( localize(
|
|
1444
|
+
placeHolder: ( localize(5445, "Select Workspace, User, or Cancel")),
|
|
1305
1445
|
matchOnDescription: true
|
|
1306
1446
|
});
|
|
1307
1447
|
}
|
|
@@ -1334,7 +1474,7 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
1334
1474
|
void this.listWidget?.refresh();
|
|
1335
1475
|
}, error => {
|
|
1336
1476
|
console.error("Failed to save built-in override:", error);
|
|
1337
|
-
this.notificationService.warn(saveRequest.target === "workspace" ? ( localize(
|
|
1477
|
+
this.notificationService.warn(saveRequest.target === "workspace" ? ( localize(5446, "Could not save the override to the workspace.")) : ( localize(5447, "Could not save the override to your user folder.")));
|
|
1338
1478
|
});
|
|
1339
1479
|
}
|
|
1340
1480
|
} finally {
|
|
@@ -1350,8 +1490,8 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
1350
1490
|
const shouldShowBuiltinSaveAction = this.shouldShowBuiltinSaveAction();
|
|
1351
1491
|
this.editorActionButtonIcon.className = `codicon codicon-${shouldShowBuiltinSaveAction ? Codicon.save.id : Codicon.arrowLeft.id} editor-action-button-icon`;
|
|
1352
1492
|
this.editorActionButton.disabled = this.editorActionButtonInProgress;
|
|
1353
|
-
this.editorActionButton.setAttribute("aria-label", shouldShowBuiltinSaveAction ? ( localize(
|
|
1354
|
-
this.editorActionButton.title = shouldShowBuiltinSaveAction ? ( localize(
|
|
1493
|
+
this.editorActionButton.setAttribute("aria-label", shouldShowBuiltinSaveAction ? ( localize(5448, "Save override")) : ( localize(5437, "Back to list")));
|
|
1494
|
+
this.editorActionButton.title = shouldShowBuiltinSaveAction ? ( localize(5449, "Save override (choose Workspace, User, or Cancel)")) : ( localize(5437, "Back to list"));
|
|
1355
1495
|
}
|
|
1356
1496
|
shouldShowBuiltinSaveAction() {
|
|
1357
1497
|
return this._editorContentChanged && this.currentEditingStorage === BUILTIN_STORAGE && (this.currentEditingPromptType === PromptsType.prompt || this.currentEditingPromptType === PromptsType.skill);
|
|
@@ -1386,7 +1526,7 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
1386
1526
|
return true;
|
|
1387
1527
|
} catch (error) {
|
|
1388
1528
|
console.error("Failed to save built-in override:", error);
|
|
1389
|
-
this.notificationService.warn(target.target === "workspace" ? ( localize(
|
|
1529
|
+
this.notificationService.warn(target.target === "workspace" ? ( localize(5446, "Could not save the override to the workspace.")) : ( localize(5447, "Could not save the override to your user folder.")));
|
|
1390
1530
|
return false;
|
|
1391
1531
|
}
|
|
1392
1532
|
}
|
|
@@ -1415,7 +1555,10 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
1415
1555
|
}
|
|
1416
1556
|
const detailHeader = append(this.mcpDetailContainer, $(".editor-header"));
|
|
1417
1557
|
const backButton = append(detailHeader, $("button.editor-back-button"));
|
|
1418
|
-
backButton.setAttribute("aria-label", ( localize(
|
|
1558
|
+
backButton.setAttribute("aria-label", ( localize(5450, "Back to MCP servers")));
|
|
1559
|
+
this.editorDisposables.add(
|
|
1560
|
+
this.hoverService.setupManagedHover(getDefaultHoverDelegate("element"), backButton, ( localize(5451, "Back to MCP servers")))
|
|
1561
|
+
);
|
|
1419
1562
|
const backIconEl = append(backButton, $(`.codicon.codicon-${Codicon.arrowLeft.id}`));
|
|
1420
1563
|
backIconEl.setAttribute("aria-hidden", "true");
|
|
1421
1564
|
this.editorDisposables.add(addDisposableListener(backButton, "click", () => {
|
|
@@ -1460,7 +1603,10 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
1460
1603
|
}
|
|
1461
1604
|
const detailHeader = append(this.pluginDetailContainer, $(".editor-header"));
|
|
1462
1605
|
const backButton = append(detailHeader, $("button.editor-back-button"));
|
|
1463
|
-
backButton.setAttribute("aria-label", ( localize(
|
|
1606
|
+
backButton.setAttribute("aria-label", ( localize(5452, "Back to plugins")));
|
|
1607
|
+
this.editorDisposables.add(
|
|
1608
|
+
this.hoverService.setupManagedHover(getDefaultHoverDelegate("element"), backButton, ( localize(5453, "Back to plugins")))
|
|
1609
|
+
);
|
|
1464
1610
|
const backIconEl = append(backButton, $(`.codicon.codicon-${Codicon.arrowLeft.id}`));
|
|
1465
1611
|
backIconEl.setAttribute("aria-hidden", "true");
|
|
1466
1612
|
this.editorDisposables.add(addDisposableListener(backButton, "click", () => {
|
|
@@ -1491,7 +1637,7 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
1491
1637
|
}
|
|
1492
1638
|
async showPluginDetail(item) {
|
|
1493
1639
|
if (this.selectedSection !== AICustomizationManagementSection.Plugins) {
|
|
1494
|
-
this.pluginDetailReturnSection = this.selectedSection;
|
|
1640
|
+
this.pluginDetailReturnSection = this.selectedSection ?? AICustomizationManagementSection.Agents;
|
|
1495
1641
|
}
|
|
1496
1642
|
await this.showEmbeddedPluginDetail(item);
|
|
1497
1643
|
}
|
|
@@ -1514,6 +1660,6 @@ let AICustomizationManagementEditor = class AICustomizationManagementEditor exte
|
|
|
1514
1660
|
}
|
|
1515
1661
|
}
|
|
1516
1662
|
};
|
|
1517
|
-
AICustomizationManagementEditor = AICustomizationManagementEditor_1 = ( __decorate([( __param(1, ITelemetryService)), ( __param(2, IThemeService)), ( __param(3, IStorageService)), ( __param(4, IInstantiationService)), ( __param(5, IContextKeyService)), ( __param(6, IOpenerService)), ( __param(7, ICommandService)), ( __param(8, IAICustomizationWorkspaceService)), ( __param(9, IPromptsService)), ( __param(10, ITextModelService)), ( __param(11, IConfigurationService)), ( __param(12, IWorkingCopyService)), ( __param(13,
|
|
1663
|
+
AICustomizationManagementEditor = AICustomizationManagementEditor_1 = ( __decorate([( __param(1, ITelemetryService)), ( __param(2, IThemeService)), ( __param(3, IStorageService)), ( __param(4, IInstantiationService)), ( __param(5, IContextKeyService)), ( __param(6, IOpenerService)), ( __param(7, ICommandService)), ( __param(8, IAICustomizationWorkspaceService)), ( __param(9, IPromptsService)), ( __param(10, ITextModelService)), ( __param(11, IConfigurationService)), ( __param(12, IWorkingCopyService)), ( __param(13, IHoverService)), ( __param(14, IModelService)), ( __param(15, IQuickInputService)), ( __param(16, IContextMenuService)), ( __param(17, IFileService)), ( __param(18, INotificationService)), ( __param(19, ICustomizationHarnessService)), ( __param(20, IViewsService))], AICustomizationManagementEditor));
|
|
1518
1664
|
|
|
1519
1665
|
export { AICustomizationManagementEditor, aiCustomizationManagementSashBorder };
|