@codingame/monaco-vscode-chat-service-override 27.0.0 → 28.0.1
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 +5 -2
- package/package.json +5 -5
- package/vscode/src/vs/sessions/contrib/chat/browser/aiCustomizationWorkspaceService.d.ts +54 -4
- package/vscode/src/vs/sessions/contrib/chat/browser/aiCustomizationWorkspaceService.js +179 -11
- package/vscode/src/vs/sessions/contrib/chat/browser/newSession.js +5 -1
- package/vscode/src/vs/sessions/contrib/chat/browser/sessionsConfigurationService.d.ts +6 -1
- package/vscode/src/vs/sessions/contrib/chat/browser/sessionsConfigurationService.js +25 -10
- package/vscode/src/vs/sessions/contrib/fileTreeView/browser/githubFileSystemProvider.d.ts +67 -0
- package/vscode/src/vs/sessions/contrib/fileTreeView/browser/githubFileSystemProvider.js +263 -0
- package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsManagementService.d.ts +6 -0
- package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsManagementService.js +25 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityService.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.js +15 -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 +13 -5
- 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 +5 -5
- 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.js +5 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPluginActions.d.ts +7 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPluginActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQueueActions.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +49 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +18 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditor.d.ts +58 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditor.js +537 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditorInput.d.ts +17 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditorInput.js +55 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginItems.d.ts +26 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginItems.js +9 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/media/agentPluginEditor.css +32 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.d.ts +17 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.js +89 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.d.ts +4 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.js +146 -53
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.js +56 -54
- 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 +5 -5
- 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 +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.js +25 -25
- 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/aiCustomizationIcons.d.ts +4 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.js +13 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.d.ts +7 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.js +189 -145
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.contribution.js +42 -44
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.d.ts +0 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.js +3 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.d.ts +20 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.js +210 -59
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWorkspaceService.js +14 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCreatorService.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.js +122 -53
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationManagement.css +87 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.d.ts +62 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.js +702 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/simpleBrowserEditorOverlay.js +19 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +279 -214
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatCustomizationDiscoveryRenderer.js +21 -21
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugDetailPanel.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditor.js +12 -3
- 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.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFilters.js +63 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowChartView.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowGraph.js +18 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHomeView.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.d.ts +4 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.js +62 -24
- 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 +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugTypes.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/media/chatDebug.css +7 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCheckpointTimelineImpl.d.ts +2 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCheckpointTimelineImpl.js +32 -36
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.js +4 -5
- 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.js +1 -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 +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/media/chatEditorController.css +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.js +49 -49
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatUsageWidget.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +30 -30
- package/vscode/src/vs/workbench/contrib/chat/browser/chatRepoInfo.d.ts +9 -0
- 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 +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupGrowthSession.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.js +26 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.js +103 -60
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.js +61 -61
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipCatalog.d.ts +66 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipCatalog.js +245 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipEligibilityTracker.d.ts +78 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipEligibilityTracker.js +234 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.d.ts +31 -126
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.js +229 -524
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipStorageKeys.d.ts +41 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipStorageKeys.js +22 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.d.ts +4 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.js +54 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/defaultModelContribution.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.d.ts +11 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.js +112 -39
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.d.ts +99 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.js +489 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.d.ts +6 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.js +348 -285
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.d.ts +18 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.js +107 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +4 -4
- 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/tools/languageModelToolsConfirmationService.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.js +55 -38
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.d.ts +20 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.js +148 -60
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/renameTool.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/usagesTool.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatQueuePickerActionItem.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatQueuePickerActionItem.js +29 -14
- 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 +72 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorContrib.js +5 -3
- 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 +5 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.js +11 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewTitleControl.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/media/chatViewPane.css +8 -0
- package/vscode/src/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService.js +1 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.js +20 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.js +72 -23
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceTelemetry.d.ts +19 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceTelemetry.js +5 -1
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.d.ts +6 -1
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.js +37 -8
- package/vscode/src/vs/workbench/contrib/chat/common/model/objectMutationLog.js +36 -3
- package/vscode/src/vs/workbench/contrib/chat/common/participants/chatSlashCommands.d.ts +4 -4
- package/vscode/src/vs/workbench/contrib/chat/common/participants/chatSlashCommands.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.d.ts +6 -1
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.d.ts +71 -25
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.js +217 -91
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.d.ts +85 -3
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.js +257 -63
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +17 -17
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookClaudeCompat.d.ts +3 -16
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookClaudeCompat.js +7 -50
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCompatibility.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCompatibility.js +32 -3
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCopilotCliCompat.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCopilotCliCompat.js +3 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/PromptHeaderDefinitionProvider.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.js +7 -6
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptDocumentSemanticTokensProvider.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.d.ts +26 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +287 -88
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.d.ts +10 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.js +75 -20
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.d.ts +121 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.js +1422 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptFileContributions.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +5 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +81 -41
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +8 -6
- package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/widget/chatResponseResourceFileSystemProvider.d.ts +14 -2
- package/vscode/src/vs/workbench/contrib/chat/common/widget/chatResponseResourceFileSystemProvider.js +54 -5
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.js +6 -5
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.d.ts +4 -4
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +38 -22
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatDefaultModel.js +2 -2
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +8 -8
- 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 +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 +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +6 -6
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +3 -3
- 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/commandLineAutoApproveAnalyzer.js +12 -12
- 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/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 +8 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +36 -18
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.js +2 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.d.ts +6 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +27 -13
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/createAndRunTaskTool.js +14 -14
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/getTaskOutputTool.js +7 -7
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/runTaskTool.js +14 -14
- 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 +1 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.js +8 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatVariables.d.ts +0 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatVariables.js +0 -67
package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/media/agentPluginEditor.css
ADDED
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/*---------------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
3
|
+
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
4
|
+
*--------------------------------------------------------------------------------------------*/
|
|
5
|
+
|
|
6
|
+
.agent-plugin-editor {
|
|
7
|
+
& .marketplace-link {
|
|
8
|
+
color: var(--vscode-textLink-foreground);
|
|
9
|
+
text-decoration: none;
|
|
10
|
+
cursor: pointer;
|
|
11
|
+
|
|
12
|
+
&:hover {
|
|
13
|
+
text-decoration: underline;
|
|
14
|
+
color: var(--vscode-textLink-activeForeground);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
& > .body > .content > .details {
|
|
19
|
+
display: flex;
|
|
20
|
+
height: 100%;
|
|
21
|
+
|
|
22
|
+
&.narrow {
|
|
23
|
+
flex-direction: column;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
& > .content-container {
|
|
27
|
+
flex: 1;
|
|
28
|
+
min-width: 0;
|
|
29
|
+
height: 100%;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
}
|
|
@@ -2,13 +2,15 @@ import { URI } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri";
|
|
|
2
2
|
import { ICommandService } from "@codingame/monaco-vscode-api/vscode/vs/platform/commands/common/commands.service";
|
|
3
3
|
import { IEnvironmentService } from "@codingame/monaco-vscode-api/vscode/vs/platform/environment/common/environment.service";
|
|
4
4
|
import { IFileService } from "@codingame/monaco-vscode-api/vscode/vs/platform/files/common/files.service";
|
|
5
|
+
import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation";
|
|
5
6
|
import { ILogService } from "@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service";
|
|
6
7
|
import { INotificationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/notification/common/notification.service";
|
|
7
8
|
import { IProgressService } from "@codingame/monaco-vscode-api/vscode/vs/platform/progress/common/progress.service";
|
|
8
9
|
import { IStorageService } from "@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage.service";
|
|
9
10
|
import { IEnsureRepositoryOptions, IPullRepositoryOptions } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/plugins/agentPluginRepositoryService";
|
|
10
11
|
import { IAgentPluginRepositoryService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/plugins/agentPluginRepositoryService.service";
|
|
11
|
-
import { IMarketplacePlugin, IMarketplaceReference, MarketplaceType } from "../common/plugins/pluginMarketplaceService.js";
|
|
12
|
+
import { IMarketplacePlugin, IMarketplaceReference, IPluginSourceDescriptor, MarketplaceType, PluginSourceKind } from "../common/plugins/pluginMarketplaceService.js";
|
|
13
|
+
import { IPluginSource } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/plugins/pluginSource";
|
|
12
14
|
export declare class AgentPluginRepositoryService implements IAgentPluginRepositoryService {
|
|
13
15
|
private readonly _commandService;
|
|
14
16
|
private readonly _fileService;
|
|
@@ -19,7 +21,9 @@ export declare class AgentPluginRepositoryService implements IAgentPluginReposit
|
|
|
19
21
|
readonly _serviceBrand: undefined;
|
|
20
22
|
private readonly _cacheRoot;
|
|
21
23
|
private readonly _marketplaceIndex;
|
|
22
|
-
|
|
24
|
+
private readonly _pluginSources;
|
|
25
|
+
constructor(_commandService: ICommandService, environmentService: IEnvironmentService, _fileService: IFileService, instantiationService: IInstantiationService, _logService: ILogService, _notificationService: INotificationService, _progressService: IProgressService, _storageService: IStorageService);
|
|
26
|
+
getPluginSource(kind: PluginSourceKind): IPluginSource;
|
|
23
27
|
getRepositoryUri(marketplace: IMarketplaceReference, marketplaceType?: MarketplaceType): URI;
|
|
24
28
|
getPluginInstallUri(plugin: IMarketplacePlugin): URI;
|
|
25
29
|
ensureRepository(marketplace: IMarketplaceReference, options?: IEnsureRepositoryOptions): Promise<URI>;
|
|
@@ -30,4 +34,15 @@ export declare class AgentPluginRepositoryService implements IAgentPluginReposit
|
|
|
30
34
|
private _saveMarketplaceIndex;
|
|
31
35
|
private _cloneRepository;
|
|
32
36
|
private _getPluginDir;
|
|
37
|
+
getPluginSourceInstallUri(sourceDescriptor: IPluginSourceDescriptor): URI;
|
|
38
|
+
ensurePluginSource(plugin: IMarketplacePlugin, options?: IEnsureRepositoryOptions): Promise<URI>;
|
|
39
|
+
updatePluginSource(plugin: IMarketplacePlugin, options?: IPullRepositoryOptions): Promise<void>;
|
|
40
|
+
cleanupPluginSource(plugin: IMarketplacePlugin): Promise<void>;
|
|
41
|
+
/**
|
|
42
|
+
* Walk from {@link child}'s parent toward {@link _cacheRoot}, removing
|
|
43
|
+
* each directory that is empty. Stops as soon as a non-empty directory
|
|
44
|
+
* is found or the cache root is reached. Only operates on descendants
|
|
45
|
+
* of the cache root — returns immediately for paths outside it.
|
|
46
|
+
*/
|
|
47
|
+
private _pruneEmptyParents;
|
|
33
48
|
}
|
|
@@ -3,11 +3,12 @@ import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib
|
|
|
3
3
|
import { Action } from '@codingame/monaco-vscode-api/vscode/vs/base/common/actions';
|
|
4
4
|
import { Lazy } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lazy';
|
|
5
5
|
import { revive } from '@codingame/monaco-vscode-api/vscode/vs/base/common/marshalling';
|
|
6
|
-
import { joinPath, dirname, isEqualOrParent } from '@codingame/monaco-vscode-api/vscode/vs/base/common/resources';
|
|
6
|
+
import { joinPath, dirname, isEqualOrParent, isEqual } from '@codingame/monaco-vscode-api/vscode/vs/base/common/resources';
|
|
7
7
|
import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
8
8
|
import { ICommandService } from '@codingame/monaco-vscode-api/vscode/vs/platform/commands/common/commands.service';
|
|
9
9
|
import { IEnvironmentService } from '@codingame/monaco-vscode-api/vscode/vs/platform/environment/common/environment.service';
|
|
10
10
|
import { IFileService } from '@codingame/monaco-vscode-api/vscode/vs/platform/files/common/files.service';
|
|
11
|
+
import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
|
|
11
12
|
import { ILogService } from '@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service';
|
|
12
13
|
import '@codingame/monaco-vscode-api/vscode/vs/platform/notification/common/notification';
|
|
13
14
|
import { INotificationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/notification/common/notification.service';
|
|
@@ -15,7 +16,8 @@ import { ProgressLocation } from '@codingame/monaco-vscode-api/vscode/vs/platfor
|
|
|
15
16
|
import { IProgressService } from '@codingame/monaco-vscode-api/vscode/vs/platform/progress/common/progress.service';
|
|
16
17
|
import { StorageScope, StorageTarget } from '@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage';
|
|
17
18
|
import { IStorageService } from '@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage.service';
|
|
18
|
-
import { MarketplaceReferenceKind } from '../common/plugins/pluginMarketplaceService.js';
|
|
19
|
+
import { PluginSourceKind, MarketplaceReferenceKind } from '../common/plugins/pluginMarketplaceService.js';
|
|
20
|
+
import { RelativePathPluginSource, GitHubPluginSource, GitUrlPluginSource, NpmPluginSource, PipPluginSource } from './pluginSources.js';
|
|
19
21
|
import Severity from '@codingame/monaco-vscode-api/vscode/vs/base/common/severity';
|
|
20
22
|
|
|
21
23
|
const MARKETPLACE_INDEX_STORAGE_KEY = "chat.plugins.marketplaces.index.v1";
|
|
@@ -24,6 +26,7 @@ let AgentPluginRepositoryService = class AgentPluginRepositoryService {
|
|
|
24
26
|
_commandService,
|
|
25
27
|
environmentService,
|
|
26
28
|
_fileService,
|
|
29
|
+
instantiationService,
|
|
27
30
|
_logService,
|
|
28
31
|
_notificationService,
|
|
29
32
|
_progressService,
|
|
@@ -37,6 +40,20 @@ let AgentPluginRepositoryService = class AgentPluginRepositoryService {
|
|
|
37
40
|
this._storageService = _storageService;
|
|
38
41
|
this._marketplaceIndex = ( new Lazy(() => this._loadMarketplaceIndex()));
|
|
39
42
|
this._cacheRoot = joinPath(environmentService.cacheHome, "agentPlugins");
|
|
43
|
+
this._pluginSources = ( new Map([[PluginSourceKind.RelativePath, ( new RelativePathPluginSource())], [
|
|
44
|
+
PluginSourceKind.GitHub,
|
|
45
|
+
instantiationService.createInstance(GitHubPluginSource)
|
|
46
|
+
], [
|
|
47
|
+
PluginSourceKind.GitUrl,
|
|
48
|
+
instantiationService.createInstance(GitUrlPluginSource)
|
|
49
|
+
], [PluginSourceKind.Npm, instantiationService.createInstance(NpmPluginSource)], [PluginSourceKind.Pip, instantiationService.createInstance(PipPluginSource)]]));
|
|
50
|
+
}
|
|
51
|
+
getPluginSource(kind) {
|
|
52
|
+
const repo = this._pluginSources.get(kind);
|
|
53
|
+
if (!repo) {
|
|
54
|
+
throw ( new Error(`No source repository registered for kind '${kind}'`));
|
|
55
|
+
}
|
|
56
|
+
return repo;
|
|
40
57
|
}
|
|
41
58
|
getRepositoryUri(marketplace, marketplaceType) {
|
|
42
59
|
if (marketplace.kind === MarketplaceReferenceKind.LocalFileUri && marketplace.localRepositoryUri) {
|
|
@@ -62,7 +79,7 @@ let AgentPluginRepositoryService = class AgentPluginRepositoryService {
|
|
|
62
79
|
if (marketplace.kind === MarketplaceReferenceKind.LocalFileUri) {
|
|
63
80
|
throw ( new Error(`Local marketplace repository does not exist: ${repoDir.fsPath}`));
|
|
64
81
|
}
|
|
65
|
-
const progressTitle = options?.progressTitle ?? ( localize(
|
|
82
|
+
const progressTitle = options?.progressTitle ?? ( localize(5019, "Preparing plugin marketplace '{0}'...", marketplace.displayLabel));
|
|
66
83
|
const failureLabel = options?.failureLabel ?? marketplace.displayLabel;
|
|
67
84
|
await this._cloneRepository(repoDir, marketplace.cloneUrl, progressTitle, failureLabel);
|
|
68
85
|
this._updateMarketplaceIndex(marketplace, repoDir, options?.marketplaceType);
|
|
@@ -81,7 +98,7 @@ let AgentPluginRepositoryService = class AgentPluginRepositoryService {
|
|
|
81
98
|
try {
|
|
82
99
|
await this._progressService.withProgress({
|
|
83
100
|
location: ProgressLocation.Notification,
|
|
84
|
-
title: ( localize(
|
|
101
|
+
title: ( localize(5020, "Updating plugin '{0}'...", updateLabel)),
|
|
85
102
|
cancellable: false
|
|
86
103
|
}, async () => {
|
|
87
104
|
await this._commandService.executeCommand("_git.pull", repoDir.fsPath);
|
|
@@ -94,13 +111,13 @@ let AgentPluginRepositoryService = class AgentPluginRepositoryService {
|
|
|
94
111
|
this._notificationService.notify({
|
|
95
112
|
severity: Severity.Error,
|
|
96
113
|
message: ( localize(
|
|
97
|
-
|
|
114
|
+
5021,
|
|
98
115
|
"Failed to update plugin '{0}': {1}",
|
|
99
116
|
options?.failureLabel ?? updateLabel,
|
|
100
117
|
err?.message ?? String(err)
|
|
101
118
|
)),
|
|
102
119
|
actions: {
|
|
103
|
-
primary: [( new Action("showGitOutput", ( localize(
|
|
120
|
+
primary: [( new Action("showGitOutput", ( localize(5022, "Show Git Output")), undefined, true, () => {
|
|
104
121
|
this._commandService.executeCommand("git.showOutput");
|
|
105
122
|
}))]
|
|
106
123
|
}
|
|
@@ -161,7 +178,7 @@ let AgentPluginRepositoryService = class AgentPluginRepositoryService {
|
|
|
161
178
|
StorageTarget.MACHINE
|
|
162
179
|
);
|
|
163
180
|
}
|
|
164
|
-
async _cloneRepository(repoDir, cloneUrl, progressTitle, failureLabel) {
|
|
181
|
+
async _cloneRepository(repoDir, cloneUrl, progressTitle, failureLabel, ref) {
|
|
165
182
|
try {
|
|
166
183
|
await this._progressService.withProgress({
|
|
167
184
|
location: ProgressLocation.Notification,
|
|
@@ -169,20 +186,20 @@ let AgentPluginRepositoryService = class AgentPluginRepositoryService {
|
|
|
169
186
|
cancellable: false
|
|
170
187
|
}, async () => {
|
|
171
188
|
await this._fileService.createFolder(dirname(repoDir));
|
|
172
|
-
await this._commandService.executeCommand("_git.cloneRepository", cloneUrl,
|
|
189
|
+
await this._commandService.executeCommand("_git.cloneRepository", cloneUrl, repoDir.fsPath, ref);
|
|
173
190
|
});
|
|
174
191
|
} catch (err) {
|
|
175
192
|
this._logService.error(`[AgentPluginRepositoryService] Failed to clone ${cloneUrl}:`, err);
|
|
176
193
|
this._notificationService.notify({
|
|
177
194
|
severity: Severity.Error,
|
|
178
195
|
message: ( localize(
|
|
179
|
-
|
|
196
|
+
5023,
|
|
180
197
|
"Failed to install plugin '{0}': {1}",
|
|
181
198
|
failureLabel,
|
|
182
199
|
err?.message ?? String(err)
|
|
183
200
|
)),
|
|
184
201
|
actions: {
|
|
185
|
-
primary: [( new Action("showGitOutput", ( localize(
|
|
202
|
+
primary: [( new Action("showGitOutput", ( localize(5022, "Show Git Output")), undefined, true, () => {
|
|
186
203
|
this._commandService.executeCommand("git.showOutput");
|
|
187
204
|
}))]
|
|
188
205
|
}
|
|
@@ -198,7 +215,68 @@ let AgentPluginRepositoryService = class AgentPluginRepositoryService {
|
|
|
198
215
|
}
|
|
199
216
|
return pluginDir;
|
|
200
217
|
}
|
|
218
|
+
getPluginSourceInstallUri(sourceDescriptor) {
|
|
219
|
+
return this.getPluginSource(sourceDescriptor.kind).getInstallUri(this._cacheRoot, sourceDescriptor);
|
|
220
|
+
}
|
|
221
|
+
async ensurePluginSource(plugin, options) {
|
|
222
|
+
const repo = this.getPluginSource(plugin.sourceDescriptor.kind);
|
|
223
|
+
if (plugin.sourceDescriptor.kind === PluginSourceKind.RelativePath) {
|
|
224
|
+
return this.ensureRepository(plugin.marketplaceReference, options);
|
|
225
|
+
}
|
|
226
|
+
return repo.ensure(this._cacheRoot, plugin, options);
|
|
227
|
+
}
|
|
228
|
+
async updatePluginSource(plugin, options) {
|
|
229
|
+
const repo = this.getPluginSource(plugin.sourceDescriptor.kind);
|
|
230
|
+
if (plugin.sourceDescriptor.kind === PluginSourceKind.RelativePath) {
|
|
231
|
+
return this.pullRepository(plugin.marketplaceReference, options);
|
|
232
|
+
}
|
|
233
|
+
return repo.update(this._cacheRoot, plugin, options);
|
|
234
|
+
}
|
|
235
|
+
async cleanupPluginSource(plugin) {
|
|
236
|
+
const repo = this.getPluginSource(plugin.sourceDescriptor.kind);
|
|
237
|
+
const cleanupDir = repo.getCleanupTarget(this._cacheRoot, plugin.sourceDescriptor);
|
|
238
|
+
if (!cleanupDir) {
|
|
239
|
+
return;
|
|
240
|
+
}
|
|
241
|
+
try {
|
|
242
|
+
const exists = await this._fileService.exists(cleanupDir);
|
|
243
|
+
if (exists) {
|
|
244
|
+
await this._fileService.del(cleanupDir, {
|
|
245
|
+
recursive: true
|
|
246
|
+
});
|
|
247
|
+
this._logService.info(`[${plugin.sourceDescriptor.kind}] Removed plugin cache: ${( cleanupDir.toString())}`);
|
|
248
|
+
}
|
|
249
|
+
} catch (err) {
|
|
250
|
+
this._logService.warn(
|
|
251
|
+
`[${plugin.sourceDescriptor.kind}] Failed to remove plugin cache '${( cleanupDir.toString())}':`,
|
|
252
|
+
err
|
|
253
|
+
);
|
|
254
|
+
}
|
|
255
|
+
try {
|
|
256
|
+
await this._pruneEmptyParents(cleanupDir);
|
|
257
|
+
} catch (err) {
|
|
258
|
+
this._logService.warn(`[${plugin.sourceDescriptor.kind}] Failed to cleanup plugin source:`, err);
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
async _pruneEmptyParents(child) {
|
|
262
|
+
if (!isEqualOrParent(child, this._cacheRoot)) {
|
|
263
|
+
return;
|
|
264
|
+
}
|
|
265
|
+
let current = dirname(child);
|
|
266
|
+
while (isEqualOrParent(current, this._cacheRoot) && !isEqual(current, this._cacheRoot)) {
|
|
267
|
+
try {
|
|
268
|
+
const stat = await this._fileService.resolve(current);
|
|
269
|
+
if (stat.children && stat.children.length > 0) {
|
|
270
|
+
break;
|
|
271
|
+
}
|
|
272
|
+
await this._fileService.del(current);
|
|
273
|
+
} catch {
|
|
274
|
+
break;
|
|
275
|
+
}
|
|
276
|
+
current = dirname(current);
|
|
277
|
+
}
|
|
278
|
+
}
|
|
201
279
|
};
|
|
202
|
-
AgentPluginRepositoryService = ( __decorate([( __param(0, ICommandService)), ( __param(1, IEnvironmentService)), ( __param(2, IFileService)), ( __param(3,
|
|
280
|
+
AgentPluginRepositoryService = ( __decorate([( __param(0, ICommandService)), ( __param(1, IEnvironmentService)), ( __param(2, IFileService)), ( __param(3, IInstantiationService)), ( __param(4, ILogService)), ( __param(5, INotificationService)), ( __param(6, IProgressService)), ( __param(7, IStorageService))], AgentPluginRepositoryService));
|
|
203
281
|
|
|
204
282
|
export { AgentPluginRepositoryService };
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
|
|
2
2
|
import { IPagedModel } from "@codingame/monaco-vscode-api/vscode/vs/base/common/paging";
|
|
3
|
-
import { URI } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri";
|
|
4
3
|
import { IConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service";
|
|
5
4
|
import { RawContextKey } from "@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey";
|
|
6
5
|
import { IContextKeyService } from "@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey.service";
|
|
@@ -14,36 +13,14 @@ import { IThemeService } from "@codingame/monaco-vscode-api/vscode/vs/platform/t
|
|
|
14
13
|
import { IViewletViewOptions } from "@codingame/monaco-vscode-api/vscode/vs/workbench/browser/parts/views/viewsViewlet";
|
|
15
14
|
import { IWorkbenchContribution } from "@codingame/monaco-vscode-api/vscode/vs/workbench/common/contributions";
|
|
16
15
|
import { IViewDescriptorService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/common/views.service";
|
|
16
|
+
import { IEditorService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service";
|
|
17
17
|
import { AbstractExtensionsListView } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/extensions/browser/extensionsViews";
|
|
18
|
-
import { IAgentPlugin } from "../common/plugins/agentPluginService.js";
|
|
19
18
|
import { IAgentPluginService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/plugins/agentPluginService.service";
|
|
20
19
|
import { IPluginInstallService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/plugins/pluginInstallService.service";
|
|
21
|
-
import { IMarketplaceReference, MarketplaceType } from "../common/plugins/pluginMarketplaceService.js";
|
|
22
20
|
import { IPluginMarketplaceService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.service";
|
|
21
|
+
import { IAgentPluginItem } from "./agentPluginEditor/agentPluginItems.js";
|
|
23
22
|
export declare const HasInstalledAgentPluginsContext: RawContextKey<boolean>;
|
|
24
23
|
export declare const InstalledAgentPluginsViewId = "workbench.views.agentPlugins.installed";
|
|
25
|
-
declare enum AgentPluginItemKind {
|
|
26
|
-
Installed = "installed",
|
|
27
|
-
Marketplace = "marketplace"
|
|
28
|
-
}
|
|
29
|
-
interface IInstalledPluginItem {
|
|
30
|
-
readonly kind: AgentPluginItemKind.Installed;
|
|
31
|
-
readonly name: string;
|
|
32
|
-
readonly description: string;
|
|
33
|
-
readonly marketplace?: string;
|
|
34
|
-
readonly plugin: IAgentPlugin;
|
|
35
|
-
}
|
|
36
|
-
interface IMarketplacePluginItem {
|
|
37
|
-
readonly kind: AgentPluginItemKind.Marketplace;
|
|
38
|
-
readonly name: string;
|
|
39
|
-
readonly description: string;
|
|
40
|
-
readonly source: string;
|
|
41
|
-
readonly marketplace: string;
|
|
42
|
-
readonly marketplaceReference: IMarketplaceReference;
|
|
43
|
-
readonly marketplaceType: MarketplaceType;
|
|
44
|
-
readonly readmeUri?: URI;
|
|
45
|
-
}
|
|
46
|
-
type IAgentPluginItem = IInstalledPluginItem | IMarketplacePluginItem;
|
|
47
24
|
interface IAgentPluginsListViewOptions {
|
|
48
25
|
installedOnly?: boolean;
|
|
49
26
|
}
|
|
@@ -53,6 +30,7 @@ export declare class AgentPluginsListView extends AbstractExtensionsListView<IAg
|
|
|
53
30
|
private readonly pluginMarketplaceService;
|
|
54
31
|
private readonly pluginInstallService;
|
|
55
32
|
private readonly labelService;
|
|
33
|
+
private readonly editorService;
|
|
56
34
|
private readonly actionStore;
|
|
57
35
|
private readonly queryCts;
|
|
58
36
|
private list;
|
|
@@ -60,7 +38,7 @@ export declare class AgentPluginsListView extends AbstractExtensionsListView<IAg
|
|
|
60
38
|
private currentQuery;
|
|
61
39
|
private readonly refreshOnPluginsChangedScheduler;
|
|
62
40
|
private bodyTemplate;
|
|
63
|
-
constructor(listOptions: IAgentPluginsListViewOptions, options: IViewletViewOptions, keybindingService: IKeybindingService, contextMenuService: IContextMenuService, instantiationService: IInstantiationService, themeService: IThemeService, hoverService: IHoverService, configurationService: IConfigurationService, contextKeyService: IContextKeyService, viewDescriptorService: IViewDescriptorService, openerService: IOpenerService, agentPluginService: IAgentPluginService, pluginMarketplaceService: IPluginMarketplaceService, pluginInstallService: IPluginInstallService, labelService: ILabelService);
|
|
41
|
+
constructor(listOptions: IAgentPluginsListViewOptions, options: IViewletViewOptions, keybindingService: IKeybindingService, contextMenuService: IContextMenuService, instantiationService: IInstantiationService, themeService: IThemeService, hoverService: IHoverService, configurationService: IConfigurationService, contextKeyService: IContextKeyService, viewDescriptorService: IViewDescriptorService, openerService: IOpenerService, agentPluginService: IAgentPluginService, pluginMarketplaceService: IPluginMarketplaceService, pluginInstallService: IPluginInstallService, labelService: ILabelService, editorService: IEditorService);
|
|
64
42
|
protected renderBody(container: HTMLElement): void;
|
|
65
43
|
private onContextMenu;
|
|
66
44
|
private getContextMenuActions;
|