@codingame/monaco-vscode-chat-service-override 37.0.0 → 37.2.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 +26 -5
- package/package.json +5 -5
- package/vscode/src/vs/platform/agentHost/browser/agentHostEnablementService.js +1 -1
- package/vscode/src/vs/platform/agentHost/browser/agentHostProtocolClient.js +1 -1
- package/vscode/src/vs/platform/agentHost/common/agentHostCustomizationConfig.d.ts +74 -0
- package/vscode/src/vs/platform/agentHost/common/agentHostCustomizationConfig.js +90 -0
- package/vscode/src/vs/platform/agentHost/common/agentHostSlashCommand.d.ts +8 -0
- package/vscode/src/vs/platform/agentHost/common/agentHostSlashCommand.js +16 -0
- package/vscode/src/vs/platform/agentHost/common/agentHostStarter.config.contribution.js +53 -53
- package/vscode/src/vs/platform/agentHost/common/agentHostWorkingDirectories.d.ts +16 -0
- package/vscode/src/vs/platform/agentHost/common/agentHostWorkingDirectories.js +14 -0
- package/vscode/src/vs/platform/agentHost/common/agentMerge.js +7 -7
- package/vscode/src/vs/platform/agentHost/common/agentModelByokMeta.d.ts +24 -0
- package/vscode/src/vs/platform/agentHost/common/agentModelByokMeta.js +13 -0
- package/vscode/src/vs/platform/agentHost/common/agentModelNotices.d.ts +22 -0
- package/vscode/src/vs/platform/agentHost/common/agentModelNotices.js +21 -0
- package/vscode/src/vs/platform/agentHost/common/agentModelPricing.d.ts +114 -0
- package/vscode/src/vs/platform/agentHost/common/agentModelPricing.js +56 -0
- package/vscode/src/vs/platform/agentHost/common/changesetUri.js +15 -1
- package/vscode/src/vs/platform/agentHost/common/copilotConfigSlashCommands.d.ts +73 -0
- package/vscode/src/vs/platform/agentHost/common/copilotConfigSlashCommands.js +141 -0
- package/vscode/src/vs/platform/agentHost/common/meta/agentCompletionAttachmentMeta.js +42 -1
- package/vscode/src/vs/platform/agentHost/common/meta/agentCustomizationMeta.d.ts +27 -0
- package/vscode/src/vs/platform/agentHost/common/meta/agentCustomizationMeta.js +14 -0
- package/vscode/src/vs/platform/agentHost/common/meta/agentEphemeralSessionMeta.d.ts +14 -0
- package/vscode/src/vs/platform/agentHost/common/meta/agentEphemeralSessionMeta.js +11 -0
- package/vscode/src/vs/platform/agentHost/common/sandboxConfigSchema.js +13 -13
- package/vscode/src/vs/platform/agentHost/common/state/agentSubscription.js +1 -1
- package/vscode/src/vs/platform/agentHost/common/state/sessionActions.js +4 -1
- package/vscode/src/vs/platform/agentHost/common/toolSearchConstants.d.ts +4 -0
- package/vscode/src/vs/platform/agentHost/common/toolSearchConstants.js +6 -0
- package/vscode/src/vs/platform/networkFilter/common/networkFilterService.js +1 -1
- package/vscode/src/vs/workbench/api/browser/mainThreadChatAgents2.d.ts +104 -0
- package/vscode/src/vs/workbench/api/browser/mainThreadChatAgents2.js +827 -0
- package/vscode/src/vs/workbench/api/browser/mainThreadChatCodeMapper.d.ts +15 -0
- package/vscode/src/vs/workbench/api/browser/mainThreadChatCodeMapper.js +71 -0
- package/vscode/src/vs/workbench/api/browser/mainThreadChatContext.d.ts +16 -0
- package/vscode/src/vs/workbench/api/browser/mainThreadChatContext.js +95 -0
- package/vscode/src/vs/workbench/api/browser/mainThreadChatDebug.d.ts +22 -0
- package/vscode/src/vs/workbench/api/browser/mainThreadChatDebug.js +286 -0
- package/vscode/src/vs/workbench/api/browser/mainThreadChatInputNotification.d.ts +10 -0
- package/vscode/src/vs/workbench/api/browser/mainThreadChatInputNotification.js +38 -0
- package/vscode/src/vs/workbench/api/browser/mainThreadChatQuota.d.ts +9 -0
- package/vscode/src/vs/workbench/api/browser/mainThreadChatQuota.js +22 -0
- package/vscode/src/vs/workbench/api/browser/mainThreadChatSessions.d.ts +130 -0
- package/vscode/src/vs/workbench/api/browser/mainThreadChatSessions.js +907 -0
- package/vscode/src/vs/workbench/api/browser/mainThreadChatStatus.d.ts +10 -0
- package/vscode/src/vs/workbench/api/browser/mainThreadChatStatus.js +28 -0
- package/vscode/src/vs/workbench/api/browser/mainThreadLanguageModelTools.d.ts +27 -0
- package/vscode/src/vs/workbench/api/browser/mainThreadLanguageModelTools.js +167 -0
- package/vscode/src/vs/workbench/api/browser/mainThreadLanguageModels.d.ts +46 -0
- package/vscode/src/vs/workbench/api/browser/mainThreadLanguageModels.js +356 -0
- package/vscode/src/vs/workbench/browser/chatChangesPill.js +2 -2
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/agentsVoice.contribution.js +28 -28
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/agentsVoiceSessionsPicker.js +2 -2
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/agentsVoiceWidget.js +18 -18
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/agentsVoiceWidgetBinding.js +4 -4
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/confirmationComponent.js +3 -3
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/feedbackDialog.js +6 -6
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/headerComponent.js +11 -11
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/onboardingComponent.js +11 -11
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/sessionListComponent.js +9 -9
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/statusRowsComponent.js +5 -5
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/voiceBarComponent.js +2 -2
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/transcriptsView/voiceTranscripts.contribution.js +13 -13
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/transcriptsView/voiceTranscriptsView.js +7 -7
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/voiceModeOnboarding.js +28 -28
- package/vscode/src/vs/workbench/contrib/agentsVoice/common/voiceTranscriptStore.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.js +18 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +93 -93
- 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 +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFindActions.js +7 -7
- 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 +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatOpenAgentDebugPanelAction.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPluginActions.js +16 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQueueActions.js +15 -15
- 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.js +32 -32
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/exportAgentHostDebugLogsAction.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/openAgentHostStateFileAction.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginCommands.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditor.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditorInput.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginItems.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.js +16 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentCustomizationContentExpander.d.ts +34 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentCustomizationContentExpander.js +229 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentCustomizationItemProvider.d.ts +57 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentCustomizationItemProvider.js +460 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentCustomizationSyncProvider.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHost.contribution.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHost.contribution.js +92 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostActiveClientService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostAllowSignedOutWhenUsableContribution.d.ts +23 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostAllowSignedOutWhenUsableContribution.js +46 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostAuth.d.ts +142 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostAuth.js +746 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostChatContribution.d.ts +77 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostChatContribution.js +474 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostConfigEditor.d.ts +169 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostConfigEditor.js +261 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostCopilotCliSettingsContribution.d.ts +20 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostCopilotCliSettingsContribution.js +90 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostDownloadProgress.d.ts +35 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostDownloadProgress.js +73 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostExistingSessionHarnessPickerEnablement.d.ts +20 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostExistingSessionHarnessPickerEnablement.js +61 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostLanguageModelProvider.d.ts +112 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostLanguageModelProvider.js +192 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostLocalCustomizations.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostPermissionUiContribution.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostPromptCacheNotification.d.ts +21 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostPromptCacheNotification.js +137 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostResponseFileChanges.js +301 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostRootConfigForwarder.d.ts +84 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostRootConfigForwarder.js +96 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionHandler.d.ts +884 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionHandler.js +5870 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionInputPills.js +19 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionListContribution.d.ts +27 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionListContribution.js +129 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionListController.d.ts +42 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionListController.js +221 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionListStore.d.ts +125 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionListStore.js +345 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionWorkingDirectorySynchronizer.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSettings.contribution.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSettings.contribution.js +68 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSettingsFileSystemProvider.d.ts +62 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSettingsFileSystemProvider.js +163 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSignedOutModelsNotification.d.ts +54 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSignedOutModelsNotification.js +219 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSubagentProgress.d.ts +10 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSubagentProgress.js +50 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostTerminalContribution.d.ts +42 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostTerminalContribution.js +132 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentSessionSettings.contribution.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentSessionSettings.contribution.js +85 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentSessionSettingsFileSystemProvider.d.ts +79 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentSessionSettingsFileSystemProvider.js +161 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/applyAgentHostSubmitConfig.d.ts +18 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/applyAgentHostSubmitConfig.js +13 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/copilotConfigSlashSubmitHandler.d.ts +28 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/copilotConfigSlashSubmitHandler.js +71 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/openSessionLinkOpener.contribution.d.ts +35 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/openSessionLinkOpener.contribution.js +205 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.js +51 -51
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsService.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.d.ts +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.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.js +2 -2
- 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 +23 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccess.js +17 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccessActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/externalSessionsFilterMenu.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/localAgentSessionsController.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/sessionSummaryHover.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessionsConfiguration.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.js +15 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemSource.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemSource.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemsModel.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.js +126 -126
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.contribution.js +44 -44
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.js +138 -138
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationPresentation.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationPresentation.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePagePromptLaunchers.js +37 -37
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCardList.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCreatorService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigration.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigrationAccessibility.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigrationCategories.js +146 -146
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigrationDashboard.js +29 -29
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigrationServiceImpl.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedAgentPluginDetail.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedAgentPluginDetail.js +40 -40
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedExtensionToolsDetail.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedMcpServerDetail.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/galleryItemRenderer.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.js +76 -76
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.js +116 -116
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/promptsServiceCustomizationItemProvider.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/promptsServiceCustomizationItemProvider.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/toolsListWidget.js +50 -50
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chat.shared.contribution.js +356 -356
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/agentHostChatDebugProvider.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/agentHostChatDebugProvider.js +38 -38
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/agentHostLogSources.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatCustomizationDiscoveryRenderer.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatCustomizationDiscoveryRenderer.js +32 -32
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCacheExplorerView.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCacheExplorerView.js +124 -124
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCacheInsights.js +72 -72
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugDetailPanel.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugDetailPanel.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditorInput.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEnablement.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventDetailRenderer.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventDetailRenderer.js +20 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventList.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventList.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFilters.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowChartView.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowGraph.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowGraph.js +22 -22
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHomeView.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHookContentRenderer.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHookContentRenderer.js +18 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.js +24 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugMessageContentRenderer.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugMessageContentRenderer.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugModelTurnContentRenderer.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugModelTurnContentRenderer.js +23 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugOverviewView.js +36 -36
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugToolCallContentRenderer.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugToolCallContentRenderer.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugWireLogView.js +40 -40
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationWidget.js +12 -12
- 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 -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/notebook/chatEditingModifiedNotebookSnapshot.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookCellEntry.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatImageCarouselService.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatInputPills.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.js +63 -63
- package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +30 -30
- package/vscode/src/vs/workbench/contrib/chat/browser/chatPetAchievements.contribution.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/chatPetAchievementsEditor.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatPetAchievementsEditorInput.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatPetAchievementsWidget.js +35 -35
- package/vscode/src/vs/workbench/contrib/chat/browser/chatPromoNotification.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatQuotaNotification.js +27 -27
- package/vscode/src/vs/workbench/contrib/chat/browser/chatRepoInfo.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionDescription.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionDescription.js +57 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.js +21 -21
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupGrowthSession.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupGrowthSession.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.js +27 -27
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.js +17 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.js +20 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.js +62 -62
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipCatalog.js +19 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/claudePluginRecommendations.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/contextContrib/chatContext.contribution.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/defaultModelContribution.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/enablementStatusWidget.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/expNotification/chatExpNotificationConfig.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/expNotification/chatExpNotificationConfig.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/expNotification/chatExpNotificationContribution.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelsConfigurationService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackEditorOverlay.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginGitCommandService.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.js +29 -29
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.js +16 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginUrlHandler.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.js +30 -30
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolSetsCodeLensProvider.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/promptTimeline/promptTimeline.contribution.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptTimelineCard.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptTimelineGutterRail.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptTimelineModel.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptTimelineRulerRail.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptTimelineStickyHeader.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/promptsDebugContribution.js +21 -21
- package/vscode/src/vs/workbench/contrib/chat/browser/sessionChatPillOptions.js +18 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/sessionPullRequestPill.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/clientToolSetsContribution.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.js +39 -39
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.js +26 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/renameTool.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolHelpers.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/usagesTool.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/utilityModelContribution.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/voiceInputMode/voiceInputMode.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSubagentOpenChat.js +17 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatFind/chatFindAccessibilityHelp.js +15 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatQueuePickerActionItem.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/agentHostInputCompletions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCommandArgumentHint.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorContrib.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorHover.js +13 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputReferenceDecorations.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/chatQuick.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditor.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.js +11 -11
- 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 +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatDebugService.d.ts +253 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatDebugService.js +20 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/common/customizationHarnessService.d.ts +300 -0
- package/vscode/src/vs/workbench/contrib/chat/common/customizationHarnessService.js +272 -0
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginEnablement.d.ts +25 -0
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginEnablement.js +178 -0
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.d.ts +78 -0
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.js +51 -0
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/fileBackedInstalledPluginsStore.d.ts +67 -0
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/fileBackedInstalledPluginsStore.js +195 -0
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/marketplaceReference.d.ts +67 -0
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/marketplaceReference.js +294 -0
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.d.ts +212 -0
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.js +955 -0
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/strictKnownMarketplaces.d.ts +31 -0
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/strictKnownMarketplaces.js +122 -0
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/workspacePluginSettingsService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/workspacePluginSettingsService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +18 -18
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/computeAutomaticInstructions.d.ts +65 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/computeAutomaticInstructions.js +698 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookClaudeCompat.d.ts +50 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookClaudeCompat.js +78 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCompatibility.d.ts +77 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCompatibility.js +120 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCopilotCliCompat.d.ts +10 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCopilotCliCompat.js +23 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.js +12 -12
- 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.js +154 -154
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/extensionPromptFileService.d.ts +92 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/extensionPromptFileService.js +335 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +235 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +1673 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +202 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +872 -0
- package/vscode/src/vs/workbench/contrib/chat/common/sessionChatPills.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/confirmationTool.d.ts +36 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/confirmationTool.js +239 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/editFileTool.d.ts +21 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/editFileTool.js +143 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/manageTodoListTool.d.ts +24 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/manageTodoListTool.js +298 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/reviewPlanTool.d.ts +25 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/reviewPlanTool.js +177 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/runSubagentTool.d.ts +73 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/runSubagentTool.js +577 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/setArtifactRulesTool.d.ts +11 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/setArtifactRulesTool.js +90 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/setArtifactsTool.d.ts +16 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/setArtifactsTool.js +130 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/taskCompleteTool.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/taskCompleteTool.js +53 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/toolHelpers.d.ts +5 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/toolHelpers.js +12 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/tools.d.ts +10 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/tools.js +91 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.d.ts +38 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.js +518 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsParametersSchema.d.ts +6 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsParametersSchema.js +231 -0
- package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +1 -1
- package/vscode/src/vs/workbench/contrib/imageCarousel/browser/imageCarousel.contribution.js +10 -10
- package/vscode/src/vs/workbench/contrib/imageCarousel/browser/imageCarouselEditor.js +10 -10
- package/vscode/src/vs/workbench/contrib/imageCarousel/browser/imageCarouselEditorInput.js +1 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +15 -15
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatDefaultModel.js +2 -2
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatEditReviewSession.js +1 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +4 -4
- 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 +11 -11
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebook.chat.contribution.js +9 -9
- 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/terminalChat.js +10 -10
- 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/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 +4 -4
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.js +4 -4
- 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 +4 -4
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.js +5 -5
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +74 -74
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sendToTerminalTool.js +11 -11
- 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.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalOutputCache.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalOutputCache.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalOutputCompressor.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.js +4 -4
- package/vscode/src/vs/workbench/services/agentEditorComments/browser/agentEditorCommentsOverlayWidget.js +3 -3
- package/vscode/src/vs/platform/agentHost/common/state/legacyProtocolCompatibility.d.ts +0 -30
- package/vscode/src/vs/platform/agentHost/common/state/legacyProtocolCompatibility.js +0 -87
- package/vscode/src/vs/workbench/services/accounts/browser/defaultAccount.d.ts +0 -205
- package/vscode/src/vs/workbench/services/accounts/browser/defaultAccount.js +0 -1580
|
@@ -0,0 +1,272 @@
|
|
|
1
|
+
|
|
2
|
+
import { Codicon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/codicons';
|
|
3
|
+
import '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/index';
|
|
4
|
+
import { Emitter } from '@codingame/monaco-vscode-api/vscode/vs/base/common/event';
|
|
5
|
+
import { ThemeIcon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/themables';
|
|
6
|
+
import { URI } from '@codingame/monaco-vscode-api/vscode/vs/base/common/uri';
|
|
7
|
+
import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
8
|
+
import { AICustomizationManagementSection, BUILTIN_STORAGE } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService';
|
|
9
|
+
import { PromptsType } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/promptTypes';
|
|
10
|
+
import { AGENT_MD_FILENAME } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/config/promptFileLocations';
|
|
11
|
+
import { matchesSessionType, PromptsStorage } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService';
|
|
12
|
+
import { SessionType } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatSessionsService';
|
|
13
|
+
import { CustomAgent } from './promptSyntax/service/promptsServiceImpl.js';
|
|
14
|
+
import { ExtensionIdentifier } from '@codingame/monaco-vscode-api/vscode/vs/platform/extensions/common/extensions';
|
|
15
|
+
import { getCanonicalPluginCommandId } from './plugins/agentPluginService.js';
|
|
16
|
+
import { getChatSessionType, LocalChatSessionUri } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/model/chatUri';
|
|
17
|
+
import { isAgentBuiltinCustomizationUri } from '@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/agentHostCustomizationUri';
|
|
18
|
+
import '@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/protocol/channels-root/state';
|
|
19
|
+
import { CustomizationEnablementKind } from '@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/protocol/channels-session/state';
|
|
20
|
+
import '@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/protocol/channels-chat/state';
|
|
21
|
+
import '@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/protocol/channels-terminal/state';
|
|
22
|
+
import '@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/protocol/channels-changeset/state';
|
|
23
|
+
import '@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/protocol/channels-resource-watch/state';
|
|
24
|
+
import '@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/protocol/channels-automation/state';
|
|
25
|
+
import '@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/protocol/channels-automation-run/state';
|
|
26
|
+
import { observableValue } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/observableValue';
|
|
27
|
+
import { derived } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/derived';
|
|
28
|
+
|
|
29
|
+
function isPluginCustomizationItem(item) {
|
|
30
|
+
return item.type === "plugin" || item.type === AICustomizationManagementSection.Plugins;
|
|
31
|
+
}
|
|
32
|
+
function getCustomizationDisabledLabel(reason) {
|
|
33
|
+
if (reason?.source === "plugin") {
|
|
34
|
+
return localize(10443, "Disabled (Plugin)");
|
|
35
|
+
}
|
|
36
|
+
switch (reason?.scope) {
|
|
37
|
+
case CustomizationEnablementKind.Workspace:
|
|
38
|
+
return localize(10444, "Disabled (Workspace)");
|
|
39
|
+
case CustomizationEnablementKind.Session:
|
|
40
|
+
return localize(10445, "Disabled (Session)");
|
|
41
|
+
case CustomizationEnablementKind.Global:
|
|
42
|
+
case undefined:
|
|
43
|
+
return localize(10446, "Disabled");
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
const EMPTY_DESCRIPTOR = {
|
|
47
|
+
id: "",
|
|
48
|
+
label: "",
|
|
49
|
+
icon: Codicon.sparkle
|
|
50
|
+
};
|
|
51
|
+
function createVSCodeHarnessDescriptor() {
|
|
52
|
+
return {
|
|
53
|
+
id: SessionType.Local,
|
|
54
|
+
label: ( localize(10447, "Local")),
|
|
55
|
+
icon: ThemeIcon.fromId(Codicon.vm.id),
|
|
56
|
+
supportsTroubleshoot: true,
|
|
57
|
+
hiddenSections: [AICustomizationManagementSection.Tools],
|
|
58
|
+
sectionOverrides: ( new Map([[AICustomizationManagementSection.Instructions, {
|
|
59
|
+
rootFileShortcuts: [AGENT_MD_FILENAME]
|
|
60
|
+
}]]))
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
class CustomizationHarnessServiceBase {
|
|
64
|
+
constructor(staticHarnesses, defaultHarness, promptsService) {
|
|
65
|
+
this.promptsService = promptsService;
|
|
66
|
+
this._onDidChangeSlashCommands = ( new Emitter());
|
|
67
|
+
this.onDidChangeSlashCommands = this._onDidChangeSlashCommands.event;
|
|
68
|
+
this._onDidChangeCustomAgents = ( new Emitter());
|
|
69
|
+
this.onDidChangeCustomAgents = this._onDidChangeCustomAgents.event;
|
|
70
|
+
this._providerListeners = [];
|
|
71
|
+
this._isDisposed = false;
|
|
72
|
+
this._externalHarnesses = [];
|
|
73
|
+
this._staticHarnesses = staticHarnesses;
|
|
74
|
+
this.promptsService = promptsService;
|
|
75
|
+
this._activeSessionResource = observableValue(this, this.getSessionResourceForHarness(defaultHarness));
|
|
76
|
+
this.activeSessionResource = this._activeSessionResource;
|
|
77
|
+
this._activeHarness = derived(
|
|
78
|
+
this,
|
|
79
|
+
reader => getChatSessionType(this._activeSessionResource.read(reader))
|
|
80
|
+
);
|
|
81
|
+
this.activeHarness = this._activeHarness;
|
|
82
|
+
this._availableHarnesses = observableValue(this, [...this._staticHarnesses]);
|
|
83
|
+
this.availableHarnesses = this._availableHarnesses;
|
|
84
|
+
this._rebindProviderListeners();
|
|
85
|
+
}
|
|
86
|
+
_getAllHarnesses() {
|
|
87
|
+
const externalIds = ( new Set(( this._externalHarnesses.map(h => h.id))));
|
|
88
|
+
return [...this._staticHarnesses.filter(h => !( externalIds.has(h.id))), ...this._externalHarnesses];
|
|
89
|
+
}
|
|
90
|
+
_refreshAvailableHarnesses() {
|
|
91
|
+
if (this._isDisposed) {
|
|
92
|
+
return;
|
|
93
|
+
}
|
|
94
|
+
this._availableHarnesses.set(this._getAllHarnesses(), undefined);
|
|
95
|
+
this._rebindProviderListeners();
|
|
96
|
+
}
|
|
97
|
+
_rebindProviderListeners() {
|
|
98
|
+
for (const listener of this._providerListeners) {
|
|
99
|
+
listener.dispose();
|
|
100
|
+
}
|
|
101
|
+
this._providerListeners.length = 0;
|
|
102
|
+
for (const harness of this._getAllHarnesses()) {
|
|
103
|
+
const provider = harness.itemProvider;
|
|
104
|
+
if (!provider) {
|
|
105
|
+
this._providerListeners.push(
|
|
106
|
+
this.promptsService.onDidChangeSlashCommands(() => this._onDidChangeSlashCommands.fire({
|
|
107
|
+
sessionType: harness.id
|
|
108
|
+
}))
|
|
109
|
+
);
|
|
110
|
+
this._providerListeners.push(
|
|
111
|
+
this.promptsService.onDidChangeCustomAgents(() => this._onDidChangeCustomAgents.fire({
|
|
112
|
+
sessionType: harness.id
|
|
113
|
+
}))
|
|
114
|
+
);
|
|
115
|
+
} else {
|
|
116
|
+
this._providerListeners.push(provider.onDidChange(() => this._onDidChangeSlashCommands.fire({
|
|
117
|
+
sessionType: harness.id
|
|
118
|
+
})));
|
|
119
|
+
this._providerListeners.push(provider.onDidChange(() => this._onDidChangeCustomAgents.fire({
|
|
120
|
+
sessionType: harness.id
|
|
121
|
+
})));
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
dispose() {
|
|
126
|
+
this._isDisposed = true;
|
|
127
|
+
for (const listener of this._providerListeners) {
|
|
128
|
+
listener.dispose();
|
|
129
|
+
}
|
|
130
|
+
this._providerListeners.length = 0;
|
|
131
|
+
this._onDidChangeSlashCommands.dispose();
|
|
132
|
+
this._onDidChangeCustomAgents.dispose();
|
|
133
|
+
}
|
|
134
|
+
registerExternalHarness(descriptor) {
|
|
135
|
+
this._externalHarnesses.push(descriptor);
|
|
136
|
+
this._refreshAvailableHarnesses();
|
|
137
|
+
return {
|
|
138
|
+
dispose: () => {
|
|
139
|
+
if (this._isDisposed) {
|
|
140
|
+
return;
|
|
141
|
+
}
|
|
142
|
+
const idx = this._externalHarnesses.indexOf(descriptor);
|
|
143
|
+
if (idx >= 0) {
|
|
144
|
+
this._externalHarnesses.splice(idx, 1);
|
|
145
|
+
this._refreshAvailableHarnesses();
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
};
|
|
149
|
+
}
|
|
150
|
+
findHarnessById(id) {
|
|
151
|
+
return this._getAllHarnesses().find(h => h.id === id);
|
|
152
|
+
}
|
|
153
|
+
setActiveSession(sessionResource) {
|
|
154
|
+
this._activeSessionResource.set(sessionResource, undefined);
|
|
155
|
+
}
|
|
156
|
+
getActiveDescriptor() {
|
|
157
|
+
const activeId = this._activeHarness.get();
|
|
158
|
+
const descriptor = this.findHarnessById(activeId);
|
|
159
|
+
return descriptor ?? EMPTY_DESCRIPTOR;
|
|
160
|
+
}
|
|
161
|
+
async getSlashCommands(sessionResource, token) {
|
|
162
|
+
const sessionType = getChatSessionType(sessionResource);
|
|
163
|
+
const harness = this.findHarnessById(sessionType);
|
|
164
|
+
if (!harness || !harness.itemProvider) {
|
|
165
|
+
const commands = await this.promptsService.getPromptSlashCommands(token);
|
|
166
|
+
return commands.filter(command => matchesSessionType(command.sessionTypes, sessionType));
|
|
167
|
+
}
|
|
168
|
+
const items = await harness.itemProvider.provideChatSessionCustomizations(sessionResource, token);
|
|
169
|
+
if (!items) {
|
|
170
|
+
return [];
|
|
171
|
+
}
|
|
172
|
+
const result = [];
|
|
173
|
+
for (const item of items) {
|
|
174
|
+
if ((item.enabled !== false) && (item.type === PromptsType.prompt || item.type === PromptsType.skill)) {
|
|
175
|
+
const storage = item.source;
|
|
176
|
+
const narrowStorage = storage !== undefined && storage !== BUILTIN_STORAGE ? storage : PromptsStorage.local;
|
|
177
|
+
result.push({
|
|
178
|
+
uri: item.uri,
|
|
179
|
+
type: item.type,
|
|
180
|
+
name: item.pluginUri ? getCanonicalPluginCommandId({
|
|
181
|
+
uri: item.pluginUri,
|
|
182
|
+
label: item.pluginLabel
|
|
183
|
+
}, item.name) : item.name,
|
|
184
|
+
description: item.description,
|
|
185
|
+
userInvocable: item.userInvocable ?? true,
|
|
186
|
+
storage: narrowStorage,
|
|
187
|
+
sessionTypes: [sessionType]
|
|
188
|
+
});
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
return result;
|
|
192
|
+
}
|
|
193
|
+
async getCustomAgents(sessionResource, token) {
|
|
194
|
+
const sessionType = getChatSessionType(sessionResource);
|
|
195
|
+
const harness = this.findHarnessById(sessionType);
|
|
196
|
+
if (!harness || !harness.itemProvider) {
|
|
197
|
+
const allAgents = await this.promptsService.getCustomAgents(token);
|
|
198
|
+
return allAgents.filter(agent => matchesSessionType(agent.sessionTypes, sessionType));
|
|
199
|
+
}
|
|
200
|
+
if (harness.itemProvider.provideCustomAgents) {
|
|
201
|
+
return harness.itemProvider.provideCustomAgents(sessionResource, token);
|
|
202
|
+
}
|
|
203
|
+
const items = await harness.itemProvider.provideChatSessionCustomizations(sessionResource, token);
|
|
204
|
+
if (!items || token.isCancellationRequested) {
|
|
205
|
+
return [];
|
|
206
|
+
}
|
|
207
|
+
const getSource = item => {
|
|
208
|
+
if (item.source === PromptsStorage.extension && item.extensionId) {
|
|
209
|
+
return {
|
|
210
|
+
storage: PromptsStorage.extension,
|
|
211
|
+
extensionId: ( new ExtensionIdentifier(item.extensionId))
|
|
212
|
+
};
|
|
213
|
+
} else if (item.source === PromptsStorage.plugin && item.pluginUri) {
|
|
214
|
+
return {
|
|
215
|
+
storage: PromptsStorage.plugin,
|
|
216
|
+
pluginUri: item.pluginUri
|
|
217
|
+
};
|
|
218
|
+
} else if (item.source === PromptsStorage.user) {
|
|
219
|
+
return {
|
|
220
|
+
storage: PromptsStorage.user
|
|
221
|
+
};
|
|
222
|
+
}
|
|
223
|
+
return {
|
|
224
|
+
storage: PromptsStorage.local
|
|
225
|
+
};
|
|
226
|
+
};
|
|
227
|
+
const result = [];
|
|
228
|
+
for (const item of items) {
|
|
229
|
+
if (item.type === PromptsType.agent) {
|
|
230
|
+
const promptFile = await this.promptsService.parseNew(item.uri, token);
|
|
231
|
+
const extra = {
|
|
232
|
+
name: item.name,
|
|
233
|
+
description: item.description,
|
|
234
|
+
sessionTypes: [sessionType],
|
|
235
|
+
hooks: undefined,
|
|
236
|
+
source: getSource(item),
|
|
237
|
+
type: PromptsType.agent,
|
|
238
|
+
enabled: item.enabled !== false
|
|
239
|
+
};
|
|
240
|
+
result.push(CustomAgent.fromParsedPromptFile(promptFile, extra));
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
return result;
|
|
244
|
+
}
|
|
245
|
+
async resolvePromptSlashCommand(name, sessionResource, token) {
|
|
246
|
+
const commands = await this.getSlashCommands(sessionResource, token);
|
|
247
|
+
const command = commands.find(cmd => cmd.name === name);
|
|
248
|
+
if (command) {
|
|
249
|
+
if (isAgentBuiltinCustomizationUri(command.uri)) {
|
|
250
|
+
return command;
|
|
251
|
+
}
|
|
252
|
+
const parsedPromptFile = await this.promptsService.parseNew(command.uri, token);
|
|
253
|
+
return {
|
|
254
|
+
...command,
|
|
255
|
+
userInvocable: parsedPromptFile.header?.userInvocable ?? command.userInvocable,
|
|
256
|
+
parsedPromptFile
|
|
257
|
+
};
|
|
258
|
+
}
|
|
259
|
+
return undefined;
|
|
260
|
+
}
|
|
261
|
+
getSessionResourceForHarness(sessionType) {
|
|
262
|
+
if (sessionType === SessionType.Local) {
|
|
263
|
+
return LocalChatSessionUri.getNewSessionUri();
|
|
264
|
+
}
|
|
265
|
+
return ( URI.from({
|
|
266
|
+
scheme: sessionType,
|
|
267
|
+
path: "/untitled-2"
|
|
268
|
+
}));
|
|
269
|
+
}
|
|
270
|
+
}
|
|
271
|
+
|
|
272
|
+
export { CustomizationHarnessServiceBase, createVSCodeHarnessDescriptor, getCustomizationDisabledLabel, isPluginCustomizationItem };
|
|
@@ -99,7 +99,7 @@ let ChatSessionStore = class ChatSessionStore extends Disposable {
|
|
|
99
99
|
}
|
|
100
100
|
e.join(this.storeTask, {
|
|
101
101
|
id: "join.chatSessionStore",
|
|
102
|
-
label: ( localize(
|
|
102
|
+
label: ( localize(10494, "Saving chat history"))
|
|
103
103
|
});
|
|
104
104
|
}));
|
|
105
105
|
}
|
|
@@ -357,14 +357,14 @@ let ChatSessionStore = class ChatSessionStore extends Disposable {
|
|
|
357
357
|
this._didReportIssue = true;
|
|
358
358
|
this.dialogService.prompt({
|
|
359
359
|
custom: true,
|
|
360
|
-
title: ( localize(
|
|
360
|
+
title: ( localize(10495, "Error saving chat session")),
|
|
361
361
|
message: ( localize(
|
|
362
|
-
|
|
362
|
+
10496,
|
|
363
363
|
"Error serializing chat session for storage. The session will be lost if the window is closed. Please report this issue to the VS Code team:\n\n{0}",
|
|
364
364
|
e.stack || toErrorMessage(e)
|
|
365
365
|
)),
|
|
366
366
|
buttons: [{
|
|
367
|
-
label: ( localize(
|
|
367
|
+
label: ( localize(10497, "Report Issue")),
|
|
368
368
|
run: () => this.openerService.open("https://github.com/microsoft/vscode/issues/new?template=bug_report.md")
|
|
369
369
|
}]
|
|
370
370
|
});
|
|
@@ -757,7 +757,7 @@ function getSessionMetadataSync(session) {
|
|
|
757
757
|
} : undefined;
|
|
758
758
|
return {
|
|
759
759
|
sessionId: session.sessionId,
|
|
760
|
-
title: title || ( localize(
|
|
760
|
+
title: title || ( localize(10498, "New Chat")),
|
|
761
761
|
lastMessageDate: session.lastMessageDate,
|
|
762
762
|
timing: session.timing,
|
|
763
763
|
initialLocation: session.initialLocation,
|
|
@@ -779,7 +779,7 @@ async function getSessionMetadata(session) {
|
|
|
779
779
|
const lastMessageDate = session.requests.at(-1)?.timestamp ?? session.creationDate;
|
|
780
780
|
return {
|
|
781
781
|
sessionId: session.sessionId,
|
|
782
|
-
title: session.customTitle || ( localize(
|
|
782
|
+
title: session.customTitle || ( localize(10498, "New Chat")),
|
|
783
783
|
lastMessageDate,
|
|
784
784
|
timing: {
|
|
785
785
|
created: session.creationDate,
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { IObservable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/observable";
|
|
2
|
+
import { AgentPluginDiscoveryPriority, IAgentPlugin } from "./agentPluginService.js";
|
|
3
|
+
import { CollisionEnablementModel, IEnablementModel } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/enablement";
|
|
4
|
+
export interface IDiscoveredAgentPlugins {
|
|
5
|
+
readonly plugins: readonly IAgentPlugin[];
|
|
6
|
+
readonly priority: AgentPluginDiscoveryPriority;
|
|
7
|
+
readonly order: number;
|
|
8
|
+
}
|
|
9
|
+
export declare class AgentPluginCollisionEnablementModel extends CollisionEnablementModel {
|
|
10
|
+
constructor(base: IEnablementModel, collisionGroups: IObservable<ReadonlyMap<string, readonly string[]>>);
|
|
11
|
+
}
|
|
12
|
+
export declare function getSortedAgentPlugins(discoveries: readonly IDiscoveredAgentPlugins[]): readonly IAgentPlugin[];
|
|
13
|
+
export declare function getCanonicalAgentPluginCollisionGroups(discoveries: readonly IDiscoveredAgentPlugins[], isBlocked?: (plugin: IAgentPlugin) => boolean): ReadonlyMap<string, readonly string[]>;
|
|
14
|
+
/**
|
|
15
|
+
* Whether the `ChatEnabledPlugins` enterprise policy explicitly blocks this plugin.
|
|
16
|
+
*
|
|
17
|
+
* The policy is a **deny list**, not an allowlist: enterprise-managed `enabledPlugins` entries
|
|
18
|
+
* add to (never replace) the plugins a user has installed. A plugin is blocked only when its
|
|
19
|
+
* policy id is mapped to `false`; entries mapped to `true` enable the plugin, and a plugin the
|
|
20
|
+
* policy never mentions is left to the user's own enablement. This keeps a customer's existing
|
|
21
|
+
* plugins working when their enterprise deploys `enabledPlugins` for a different plugin.
|
|
22
|
+
*/
|
|
23
|
+
export declare function isAgentPluginBlockedByPolicy(plugin: IAgentPlugin, enabledPluginsPolicy: Record<string, boolean> | undefined): boolean;
|
|
24
|
+
export declare function isAgentPluginForceEnabledByPolicy(plugin: IAgentPlugin, enabledPluginsPolicy: Record<string, boolean> | undefined): boolean;
|
|
25
|
+
export declare function getAgentPluginPolicyId(plugin: IAgentPlugin): string | undefined;
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
|
|
2
|
+
import { PluginSourceKind } from './pluginMarketplaceService.js';
|
|
3
|
+
import { CollisionEnablementModel } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/enablement';
|
|
4
|
+
|
|
5
|
+
const COPILOT_CLI_INSTALL_PATH_FRAGMENT = "/.copilot/installed-plugins/";
|
|
6
|
+
class AgentPluginCollisionEnablementModel extends CollisionEnablementModel {
|
|
7
|
+
constructor(base, collisionGroups) {
|
|
8
|
+
super(base, collisionGroups);
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
function getSortedAgentPlugins(discoveries) {
|
|
12
|
+
return ( getUniqueAgentPluginCandidates(discoveries).map(candidate => candidate.plugin)).sort((a, b) => ( a.uri.toString()).localeCompare(( b.uri.toString())));
|
|
13
|
+
}
|
|
14
|
+
function getCanonicalAgentPluginCollisionGroups(discoveries, isBlocked) {
|
|
15
|
+
const candidates = getUniqueAgentPluginCandidates(discoveries);
|
|
16
|
+
const byCanonicalKey = ( new Map());
|
|
17
|
+
for (const candidate of candidates) {
|
|
18
|
+
if (isBlocked?.(candidate.plugin)) {
|
|
19
|
+
continue;
|
|
20
|
+
}
|
|
21
|
+
let group = byCanonicalKey.get(candidate.canonicalKey);
|
|
22
|
+
if (!group) {
|
|
23
|
+
group = [];
|
|
24
|
+
byCanonicalKey.set(candidate.canonicalKey, group);
|
|
25
|
+
}
|
|
26
|
+
group.push(( candidate.plugin.uri.toString()));
|
|
27
|
+
}
|
|
28
|
+
const groups = ( new Map());
|
|
29
|
+
for (const group of ( byCanonicalKey.values())) {
|
|
30
|
+
if (group.length < 2) {
|
|
31
|
+
continue;
|
|
32
|
+
}
|
|
33
|
+
for (const key of group) {
|
|
34
|
+
groups.set(key, group);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
return groups;
|
|
38
|
+
}
|
|
39
|
+
function isAgentPluginBlockedByPolicy(plugin, enabledPluginsPolicy) {
|
|
40
|
+
const pluginId = getAgentPluginPolicyId(plugin);
|
|
41
|
+
return pluginId !== undefined && enabledPluginsPolicy?.[pluginId] === false;
|
|
42
|
+
}
|
|
43
|
+
function isAgentPluginForceEnabledByPolicy(plugin, enabledPluginsPolicy) {
|
|
44
|
+
const pluginId = getAgentPluginPolicyId(plugin);
|
|
45
|
+
return pluginId !== undefined && enabledPluginsPolicy?.[pluginId] === true;
|
|
46
|
+
}
|
|
47
|
+
function getAgentPluginPolicyId(plugin) {
|
|
48
|
+
const identity = getPolicyIdentity(plugin);
|
|
49
|
+
return identity ? `${identity.name}@${identity.marketplace}` : undefined;
|
|
50
|
+
}
|
|
51
|
+
function getAgentPluginCandidates(discoveries) {
|
|
52
|
+
const candidates = [];
|
|
53
|
+
for (const discovery of discoveries) {
|
|
54
|
+
for (let pluginOrder = 0; pluginOrder < discovery.plugins.length; pluginOrder++) {
|
|
55
|
+
const plugin = discovery.plugins[pluginOrder];
|
|
56
|
+
candidates.push({
|
|
57
|
+
plugin,
|
|
58
|
+
priority: discovery.priority,
|
|
59
|
+
order: discovery.order,
|
|
60
|
+
pluginOrder,
|
|
61
|
+
canonicalKey: getCanonicalPluginIdentity(plugin)
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
return candidates.sort(
|
|
66
|
+
(a, b) => a.priority - b.priority || a.order - b.order || a.pluginOrder - b.pluginOrder || ( a.plugin.uri.toString()).localeCompare(( b.plugin.uri.toString()))
|
|
67
|
+
);
|
|
68
|
+
}
|
|
69
|
+
function getUniqueAgentPluginCandidates(discoveries) {
|
|
70
|
+
const unique = [];
|
|
71
|
+
const seen = ( new Set());
|
|
72
|
+
for (const candidate of getAgentPluginCandidates(discoveries)) {
|
|
73
|
+
const key = ( candidate.plugin.uri.toString());
|
|
74
|
+
if (( seen.has(key))) {
|
|
75
|
+
continue;
|
|
76
|
+
}
|
|
77
|
+
seen.add(key);
|
|
78
|
+
unique.push(candidate);
|
|
79
|
+
}
|
|
80
|
+
return unique;
|
|
81
|
+
}
|
|
82
|
+
function getCanonicalPluginIdentity(plugin) {
|
|
83
|
+
return getMarketplaceCanonicalIdentity(plugin.fromMarketplace) ?? getCopilotCliInstallCanonicalIdentity(plugin) ?? `uri:${( plugin.uri.toString())}`;
|
|
84
|
+
}
|
|
85
|
+
function getMarketplaceCanonicalIdentity(plugin) {
|
|
86
|
+
if (!plugin) {
|
|
87
|
+
return undefined;
|
|
88
|
+
}
|
|
89
|
+
const normalizedName = normalizePluginIdentitySegment(plugin.name);
|
|
90
|
+
const source = plugin.sourceDescriptor;
|
|
91
|
+
switch (source.kind) {
|
|
92
|
+
case PluginSourceKind.RelativePath:
|
|
93
|
+
{
|
|
94
|
+
if (plugin.marketplaceReference.githubRepo) {
|
|
95
|
+
return `github:${plugin.marketplaceReference.githubRepo.toLowerCase()}|${normalizedName}`;
|
|
96
|
+
}
|
|
97
|
+
return `marketplace:${plugin.marketplaceReference.canonicalId}|${normalizedName}`;
|
|
98
|
+
}
|
|
99
|
+
case PluginSourceKind.GitHub:
|
|
100
|
+
{
|
|
101
|
+
const github = source;
|
|
102
|
+
return `github:${github.repo.toLowerCase()}|${normalizedName}`;
|
|
103
|
+
}
|
|
104
|
+
case PluginSourceKind.GitUrl:
|
|
105
|
+
{
|
|
106
|
+
const git = source;
|
|
107
|
+
return `git:${git.url.toLowerCase()}|${normalizedName}`;
|
|
108
|
+
}
|
|
109
|
+
case PluginSourceKind.Npm:
|
|
110
|
+
{
|
|
111
|
+
const npm = source;
|
|
112
|
+
return `npm:${npm.package.toLowerCase()}|${normalizedName}`;
|
|
113
|
+
}
|
|
114
|
+
case PluginSourceKind.Pip:
|
|
115
|
+
{
|
|
116
|
+
const pip = source;
|
|
117
|
+
return `pip:${pip.package.toLowerCase()}|${normalizedName}`;
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
function getCopilotCliInstallCanonicalIdentity(plugin) {
|
|
122
|
+
if (plugin.uri.scheme !== "file") {
|
|
123
|
+
return undefined;
|
|
124
|
+
}
|
|
125
|
+
const idx = plugin.uri.path.indexOf(COPILOT_CLI_INSTALL_PATH_FRAGMENT);
|
|
126
|
+
if (idx === -1) {
|
|
127
|
+
return undefined;
|
|
128
|
+
}
|
|
129
|
+
const segments = plugin.uri.path.slice(idx + COPILOT_CLI_INSTALL_PATH_FRAGMENT.length).split("/").filter(s => s.length > 0);
|
|
130
|
+
if (segments.length !== 2) {
|
|
131
|
+
return undefined;
|
|
132
|
+
}
|
|
133
|
+
const [bucket, installName] = segments;
|
|
134
|
+
const normalizedName = normalizePluginIdentitySegment(plugin.label || installName);
|
|
135
|
+
if (bucket !== "_direct") {
|
|
136
|
+
return `copilot-cli-marketplace:${normalizePluginIdentitySegment(bucket)}|${normalizedName}`;
|
|
137
|
+
}
|
|
138
|
+
const match = /^(?<owner>.+)--(?<repo>.+)--(?<plugin>.+)$/.exec(installName);
|
|
139
|
+
const groups = match?.groups;
|
|
140
|
+
if (!groups) {
|
|
141
|
+
return undefined;
|
|
142
|
+
}
|
|
143
|
+
return `github:${groups.owner.toLowerCase()}/${groups.repo.toLowerCase()}|${normalizePluginIdentitySegment(groups.plugin)}`;
|
|
144
|
+
}
|
|
145
|
+
function normalizePluginIdentitySegment(value) {
|
|
146
|
+
return value.trim().toLowerCase().replace(/\s+/g, "-").replace(/[^a-z0-9_.:-]/g, "-").replace(/-+/g, "-").replace(/^[-:.]+|[-:.]+$/g, "");
|
|
147
|
+
}
|
|
148
|
+
function getPolicyIdentity(plugin) {
|
|
149
|
+
const m = plugin.fromMarketplace;
|
|
150
|
+
if (m) {
|
|
151
|
+
return {
|
|
152
|
+
name: m.name,
|
|
153
|
+
marketplace: m.marketplace,
|
|
154
|
+
marketplaceReference: m.marketplaceReference
|
|
155
|
+
};
|
|
156
|
+
}
|
|
157
|
+
if (plugin.uri.scheme !== "file") {
|
|
158
|
+
return undefined;
|
|
159
|
+
}
|
|
160
|
+
const idx = plugin.uri.path.indexOf(COPILOT_CLI_INSTALL_PATH_FRAGMENT);
|
|
161
|
+
if (idx === -1) {
|
|
162
|
+
return undefined;
|
|
163
|
+
}
|
|
164
|
+
const segments = plugin.uri.path.slice(idx + COPILOT_CLI_INSTALL_PATH_FRAGMENT.length).split("/").filter(s => s.length > 0);
|
|
165
|
+
if (segments.length !== 2) {
|
|
166
|
+
return undefined;
|
|
167
|
+
}
|
|
168
|
+
const [marketplace, name] = segments;
|
|
169
|
+
if (marketplace === "_direct") {
|
|
170
|
+
return undefined;
|
|
171
|
+
}
|
|
172
|
+
return {
|
|
173
|
+
name,
|
|
174
|
+
marketplace
|
|
175
|
+
};
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
export { AgentPluginCollisionEnablementModel, getAgentPluginPolicyId, getCanonicalAgentPluginCollisionGroups, getSortedAgentPlugins, isAgentPluginBlockedByPolicy, isAgentPluginForceEnabledByPolicy };
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { IDisposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
|
|
2
|
+
import { IObservable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/observable";
|
|
3
|
+
import { URI } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri";
|
|
4
|
+
import { SyncDescriptor0 } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/descriptors";
|
|
5
|
+
import { type INamedPluginResource, type IMcpServerDefinition, type IParsedHookCommand, type PluginFormat } from "@codingame/monaco-vscode-api/vscode/vs/platform/agentPlugins/common/pluginParsers";
|
|
6
|
+
import { ContributionEnablementState, IEnablementModel } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/enablement";
|
|
7
|
+
import { IAutomationBlueprint } from "../automations/automationBlueprint.js";
|
|
8
|
+
import { HookType } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/hookTypes";
|
|
9
|
+
import { IMarketplacePlugin } from "./pluginMarketplaceService.js";
|
|
10
|
+
export interface IAgentPluginHook {
|
|
11
|
+
readonly type: HookType;
|
|
12
|
+
readonly hooks: readonly IParsedHookCommand[];
|
|
13
|
+
/** URI where this hook is defined -- not unique, multiple hooks may be in a manifest */
|
|
14
|
+
readonly uri: URI;
|
|
15
|
+
readonly originalId: string;
|
|
16
|
+
}
|
|
17
|
+
export type IAgentPluginCommand = INamedPluginResource;
|
|
18
|
+
export type IAgentPluginSkill = INamedPluginResource;
|
|
19
|
+
export type IAgentPluginAgent = INamedPluginResource;
|
|
20
|
+
export type IAgentPluginInstruction = INamedPluginResource;
|
|
21
|
+
export type IAgentPluginMcpServerDefinition = IMcpServerDefinition;
|
|
22
|
+
export interface IAgentPluginAutomation {
|
|
23
|
+
readonly uri: URI;
|
|
24
|
+
readonly blueprint: IAutomationBlueprint;
|
|
25
|
+
}
|
|
26
|
+
export interface IAgentPlugin {
|
|
27
|
+
readonly uri: URI;
|
|
28
|
+
readonly format: PluginFormat;
|
|
29
|
+
/** Human-readable display name for the plugin. */
|
|
30
|
+
readonly label: string;
|
|
31
|
+
/** Version declared by the plugin manifest, falling back to marketplace metadata. */
|
|
32
|
+
readonly version?: IObservable<string | undefined>;
|
|
33
|
+
readonly enablement: IObservable<ContributionEnablementState>;
|
|
34
|
+
/**
|
|
35
|
+
* When `true`, the plugin is blocked by enterprise policy. It remains
|
|
36
|
+
* visible (shown as disabled) but its contributions are inactive and the
|
|
37
|
+
* user cannot re-enable it. Folded into {@link enablement} so all gating
|
|
38
|
+
* consumers honor it automatically.
|
|
39
|
+
*/
|
|
40
|
+
readonly policyBlocked?: IObservable<boolean>;
|
|
41
|
+
/** Removes this plugin from its discovery source (config or installed storage). Undefined for policy-managed plugins that cannot be removed by the user. */
|
|
42
|
+
remove?(): Promise<boolean>;
|
|
43
|
+
readonly hooks: IObservable<readonly IAgentPluginHook[]>;
|
|
44
|
+
readonly commands: IObservable<readonly IAgentPluginCommand[]>;
|
|
45
|
+
readonly skills: IObservable<readonly IAgentPluginSkill[]>;
|
|
46
|
+
readonly agents: IObservable<readonly IAgentPluginAgent[]>;
|
|
47
|
+
readonly instructions: IObservable<readonly IAgentPluginInstruction[]>;
|
|
48
|
+
readonly mcpServerDefinitions: IObservable<readonly IAgentPluginMcpServerDefinition[]>;
|
|
49
|
+
readonly automations: IObservable<readonly IAgentPluginAutomation[]>;
|
|
50
|
+
/** Set when the plugin was installed from a marketplace repository. */
|
|
51
|
+
readonly fromMarketplace?: IMarketplacePlugin;
|
|
52
|
+
}
|
|
53
|
+
export interface IAgentPluginDiscovery extends IDisposable {
|
|
54
|
+
readonly plugins: IObservable<readonly IAgentPlugin[] | undefined>;
|
|
55
|
+
start(enablementModel: IEnablementModel): void;
|
|
56
|
+
}
|
|
57
|
+
export declare enum AgentPluginDiscoveryPriority {
|
|
58
|
+
Configured = 10,
|
|
59
|
+
Marketplace = 20,
|
|
60
|
+
Extension = 30,
|
|
61
|
+
CopilotCli = 40
|
|
62
|
+
}
|
|
63
|
+
export declare function getCanonicalPluginCommandId(plugin: {
|
|
64
|
+
readonly uri: URI;
|
|
65
|
+
readonly label?: string;
|
|
66
|
+
}, commandName: string): string;
|
|
67
|
+
declare class AgentPluginDiscoveryRegistry {
|
|
68
|
+
private readonly _discovery;
|
|
69
|
+
private _order;
|
|
70
|
+
register(descriptor: SyncDescriptor0<IAgentPluginDiscovery>, priority: AgentPluginDiscoveryPriority): IDisposable;
|
|
71
|
+
getAll(): readonly {
|
|
72
|
+
readonly descriptor: SyncDescriptor0<IAgentPluginDiscovery>;
|
|
73
|
+
readonly priority: AgentPluginDiscoveryPriority;
|
|
74
|
+
readonly order: number;
|
|
75
|
+
}[];
|
|
76
|
+
}
|
|
77
|
+
export declare const agentPluginDiscoveryRegistry: AgentPluginDiscoveryRegistry;
|
|
78
|
+
export {};
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
|
|
2
|
+
import { toDisposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
|
|
3
|
+
import { basename } from '@codingame/monaco-vscode-api/vscode/vs/base/common/resources';
|
|
4
|
+
|
|
5
|
+
var AgentPluginDiscoveryPriority;
|
|
6
|
+
(function(AgentPluginDiscoveryPriority) {
|
|
7
|
+
AgentPluginDiscoveryPriority[AgentPluginDiscoveryPriority["Configured"] = 10] = "Configured";
|
|
8
|
+
AgentPluginDiscoveryPriority[AgentPluginDiscoveryPriority["Marketplace"] = 20] = "Marketplace";
|
|
9
|
+
AgentPluginDiscoveryPriority[AgentPluginDiscoveryPriority["Extension"] = 30] = "Extension";
|
|
10
|
+
AgentPluginDiscoveryPriority[AgentPluginDiscoveryPriority["CopilotCli"] = 40] = "CopilotCli";
|
|
11
|
+
})(AgentPluginDiscoveryPriority || (AgentPluginDiscoveryPriority = {}));
|
|
12
|
+
function getCanonicalPluginCommandId(plugin, commandName) {
|
|
13
|
+
const prefix = (plugin.label ? normalizePluginToken(plugin.label) : "") || normalizePluginToken(basename(plugin.uri));
|
|
14
|
+
const normalizedCommand = normalizePluginToken(commandName);
|
|
15
|
+
if (normalizedCommand.startsWith(`${prefix}:`)) {
|
|
16
|
+
return normalizedCommand;
|
|
17
|
+
}
|
|
18
|
+
if (prefix === normalizedCommand) {
|
|
19
|
+
return prefix;
|
|
20
|
+
}
|
|
21
|
+
return `${prefix}:${normalizedCommand}`;
|
|
22
|
+
}
|
|
23
|
+
function normalizePluginToken(value) {
|
|
24
|
+
return value.trim().toLowerCase().replace(/\s+/g, "-").replace(/[^a-z0-9_.:-]/g, "-").replace(/-+/g, "-").replace(/^[-:.]+|[-:.]+$/g, "");
|
|
25
|
+
}
|
|
26
|
+
class AgentPluginDiscoveryRegistry {
|
|
27
|
+
constructor() {
|
|
28
|
+
this._discovery = [];
|
|
29
|
+
this._order = 0;
|
|
30
|
+
}
|
|
31
|
+
register(descriptor, priority) {
|
|
32
|
+
const registration = {
|
|
33
|
+
descriptor,
|
|
34
|
+
priority,
|
|
35
|
+
order: this._order++
|
|
36
|
+
};
|
|
37
|
+
this._discovery.push(registration);
|
|
38
|
+
return toDisposable(() => {
|
|
39
|
+
const index = this._discovery.indexOf(registration);
|
|
40
|
+
if (index >= 0) {
|
|
41
|
+
this._discovery.splice(index, 1);
|
|
42
|
+
}
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
getAll() {
|
|
46
|
+
return [...this._discovery].sort((a, b) => a.priority - b.priority || a.order - b.order);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
const agentPluginDiscoveryRegistry = ( new AgentPluginDiscoveryRegistry());
|
|
50
|
+
|
|
51
|
+
export { AgentPluginDiscoveryPriority, agentPluginDiscoveryRegistry, getCanonicalPluginCommandId };
|
|
@@ -13,9 +13,9 @@ import { IDialogService } from "@codingame/monaco-vscode-api/vscode/vs/platform/
|
|
|
13
13
|
import { IPathService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/path/common/pathService.service";
|
|
14
14
|
import { IEnablementModel } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/enablement";
|
|
15
15
|
import { IAgentPluginRepositoryService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/plugins/agentPluginRepositoryService.service";
|
|
16
|
-
import { IAgentPlugin, IAgentPluginDiscovery } from "
|
|
16
|
+
import { IAgentPlugin, IAgentPluginDiscovery } from "./agentPluginService.js";
|
|
17
17
|
import { IAgentPluginService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/plugins/agentPluginService.service";
|
|
18
|
-
import { IMarketplacePlugin } from "
|
|
18
|
+
import { IMarketplacePlugin } from "./pluginMarketplaceService.js";
|
|
19
19
|
import { IPluginMarketplaceService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.service";
|
|
20
20
|
export { shellQuotePluginRootInCommand, resolveMcpServersMap, convertBareEnvVarsToVsCodeSyntax } from "@codingame/monaco-vscode-api/vscode/vs/platform/agentPlugins/common/pluginParsers";
|
|
21
21
|
export declare class AgentPluginService extends Disposable implements IAgentPluginService {
|