@codingame/monaco-vscode-chat-service-override 29.1.0 → 30.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.js +5 -2
- package/package.json +5 -5
- package/vscode/src/vs/platform/agentHost/common/agentService.d.ts +37 -39
- package/vscode/src/vs/platform/agentHost/common/agentService.js +3 -1
- package/vscode/src/vs/platform/agentHost/common/agentService.service.d.ts +11 -1
- package/vscode/src/vs/platform/agentHost/common/state/protocol/action-origin.generated.d.ts +4 -4
- package/vscode/src/vs/platform/agentHost/common/state/protocol/actions.d.ts +132 -42
- package/vscode/src/vs/platform/agentHost/common/state/protocol/commands.d.ts +54 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/errors.d.ts +15 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/messages.d.ts +5 -1
- package/vscode/src/vs/platform/agentHost/common/state/protocol/state.d.ts +188 -51
- package/vscode/src/vs/platform/agentHost/common/state/sessionActions.d.ts +7 -6
- package/vscode/src/vs/platform/agentHost/common/state/sessionProtocol.d.ts +1 -1
- package/vscode/src/vs/platform/agentHost/common/state/sessionState.d.ts +7 -2
- package/vscode/src/vs/platform/sandbox/browser/sandboxHelperService.d.ts +6 -0
- package/vscode/src/vs/platform/sandbox/browser/sandboxHelperService.js +14 -0
- package/vscode/src/vs/platform/sandbox/common/sandboxHelperIpc.d.ts +18 -0
- package/vscode/src/vs/platform/sandbox/common/sandboxHelperIpc.js +13 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityService.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.js +37 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +59 -59
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAgentRecommendationActions.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.js +10 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +37 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatForkActions.js +6 -6
- 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 +20 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatOpenAgentDebugPanelAction.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPluginActions.js +18 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQueueActions.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +19 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/createPluginAction.d.ts +36 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/createPluginAction.js +482 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditor.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditorInput.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.d.ts +10 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.js +43 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.js +13 -13
- 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 +74 -76
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsQuickAccess.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjection.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionsExperiments.contribution.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.js +27 -35
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccess.js +17 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccessActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/localAgentSessionsController.d.ts +5 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/localAgentSessionsController.js +86 -80
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.d.ts +3 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.js +38 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.d.ts +38 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.js +427 -167
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.contribution.js +37 -37
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.d.ts +15 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.js +108 -37
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.d.ts +8 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.js +28 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWorkspaceService.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWorkspaceService.js +11 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.d.ts +1 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.js +3 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.d.ts +4 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.js +65 -68
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationManagement.css +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.js +64 -51
- 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 +288 -195
- 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/chatDebugEditorInput.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventDetailRenderer.js +19 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventList.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFilters.js +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.js +21 -21
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHomeView.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHookContentRenderer.js +17 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.js +21 -21
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugMessageContentRenderer.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugModelTurnContentRenderer.js +23 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugOverviewView.js +28 -28
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugToolCallContentRenderer.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingDeletedFileEntry.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingDeletedFileEntry.js +3 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +5 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.d.ts +1 -0
- 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 +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +10 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.d.ts +4 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +19 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.d.ts +3 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +54 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatImageCarouselService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.js +9 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.js +14 -14
- 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 +50 -50
- 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.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.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.js +86 -17
- 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 +29 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.js +19 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.js +65 -65
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.js +24 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipCatalog.js +17 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.js +2 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/claudePluginRecommendations.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/defaultModelContribution.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/enablementActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/enablementStatusWidget.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelsConfigurationService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.d.ts +3 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.js +54 -39
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.js +16 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginUrlHandler.d.ts +24 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginUrlHandler.js +72 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.js +26 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptFileContributions.js +181 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/skillActions.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/promptsDebugContribution.js +8 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.js +37 -37
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.js +28 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/renameTool.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/usagesTool.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatQueuePickerActionItem.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatStatusWidget.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletionUtils.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletionUtils.js +62 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.d.ts +1 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.js +148 -88
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorContrib.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorHover.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/chatQuick.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditor.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.js +16 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewTitleControl.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/chatArtifactExtraction.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatArtifactExtraction.js +158 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.d.ts +8 -3
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.js +155 -76
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceTelemetry.js +1 -2
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionOperationLog.js +5 -4
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.d.ts +5 -1
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.js +7 -6
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.d.ts +31 -1
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.js +228 -1
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/fileBackedInstalledPluginsStore.d.ts +66 -0
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/fileBackedInstalledPluginsStore.js +190 -0
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.d.ts +25 -3
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.js +130 -107
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +19 -18
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.d.ts +2 -18
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.js +169 -266
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +12 -10
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +149 -206
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +3 -3
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +27 -22
- package/vscode/src/vs/workbench/contrib/chat/common/tools/chatArtifactsService.d.ts +20 -8
- package/vscode/src/vs/workbench/contrib/chat/common/tools/chatArtifactsService.js +183 -43
- package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/widget/chatResponseResourceFileSystemProvider.js +1 -1
- package/vscode/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.js +2 -3
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.js +4 -4
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +21 -21
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatDefaultModel.js +2 -2
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +11 -11
- 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 +6 -6
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookModifiedCellDecorator.d.ts +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/terminalChatService.js +2 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.js +3 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.js +4 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.js +3 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +6 -6
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.js +1 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.d.ts +1 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +26 -23
- 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/commandLineRewriter/commandLineSandboxRewriter.js +4 -9
- 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 +16 -6
- 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.js +9 -9
- 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.js +150 -50
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.js +2 -2
- 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 +66 -5
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.js +239 -48
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.d.ts +0 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +0 -208
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.d.ts +0 -22
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +0 -637
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.d.ts +0 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +0 -384
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/internalCustomizations/internalCustomizations.d.ts +0 -33
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/internalCustomizations/internalCustomizations.js +0 -47
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/internalCustomizations/internalSkill.d.ts +0 -30
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptFileContributions.js +0 -55
- /package/vscode/src/vs/workbench/contrib/chat/{common → browser}/promptSyntax/promptFileContributions.d.ts +0 -0
|
@@ -1,19 +1,24 @@
|
|
|
1
1
|
|
|
2
2
|
import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
|
|
3
3
|
import { mainWindow } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/window';
|
|
4
|
+
import { decodeBase64 } from '@codingame/monaco-vscode-api/vscode/vs/base/common/buffer';
|
|
4
5
|
import { Codicon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/codicons';
|
|
5
6
|
import { Disposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
|
|
6
7
|
import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
7
8
|
import { ConfigurationTarget } from '@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration';
|
|
8
9
|
import { IConfigurationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service';
|
|
9
10
|
import { IDialogService } from '@codingame/monaco-vscode-api/vscode/vs/platform/dialogs/common/dialogs.service';
|
|
11
|
+
import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
|
|
10
12
|
import { ILogService } from '@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service';
|
|
11
13
|
import { IURLService } from '@codingame/monaco-vscode-api/vscode/vs/platform/url/common/url.service';
|
|
14
|
+
import { IEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service';
|
|
12
15
|
import { IHostService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/host/browser/host.service';
|
|
16
|
+
import { IExtensionsWorkbenchService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/extensions/common/extensions.service';
|
|
17
|
+
import { AgentPluginEditorInput } from './agentPluginEditor/agentPluginEditorInput.js';
|
|
18
|
+
import { AgentPluginItemKind } from './agentPluginEditor/agentPluginItems.js';
|
|
13
19
|
import { ChatConfiguration } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
|
|
14
20
|
import { parseMarketplaceReference, MarketplaceReferenceKind, parseMarketplaceReferences } from '../common/plugins/marketplaceReference.js';
|
|
15
21
|
import { IPluginInstallService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/plugins/pluginInstallService.service';
|
|
16
|
-
import { decodeBase64 } from '@codingame/monaco-vscode-api/vscode/vs/base/common/buffer';
|
|
17
22
|
|
|
18
23
|
let PluginUrlHandler = class PluginUrlHandler extends Disposable {
|
|
19
24
|
static {
|
|
@@ -24,15 +29,21 @@ let PluginUrlHandler = class PluginUrlHandler extends Disposable {
|
|
|
24
29
|
_pluginInstallService,
|
|
25
30
|
_dialogService,
|
|
26
31
|
_configurationService,
|
|
32
|
+
_extensionsWorkbenchService,
|
|
27
33
|
_hostService,
|
|
28
|
-
_logService
|
|
34
|
+
_logService,
|
|
35
|
+
_editorService,
|
|
36
|
+
_instantiationService
|
|
29
37
|
) {
|
|
30
38
|
super();
|
|
31
39
|
this._pluginInstallService = _pluginInstallService;
|
|
32
40
|
this._dialogService = _dialogService;
|
|
33
41
|
this._configurationService = _configurationService;
|
|
42
|
+
this._extensionsWorkbenchService = _extensionsWorkbenchService;
|
|
34
43
|
this._hostService = _hostService;
|
|
35
44
|
this._logService = _logService;
|
|
45
|
+
this._editorService = _editorService;
|
|
46
|
+
this._instantiationService = _instantiationService;
|
|
36
47
|
this._register(urlService.registerHandler(this));
|
|
37
48
|
}
|
|
38
49
|
async handleURL(uri) {
|
|
@@ -64,17 +75,21 @@ let PluginUrlHandler = class PluginUrlHandler extends Disposable {
|
|
|
64
75
|
return true;
|
|
65
76
|
}
|
|
66
77
|
await this._hostService.focus(mainWindow);
|
|
78
|
+
const pluginName = this._decodeStringParam(uri, "plugin");
|
|
79
|
+
if (pluginName) {
|
|
80
|
+
return this._handleInstallTargetedPlugin(source, ref.displayLabel, pluginName);
|
|
81
|
+
}
|
|
67
82
|
const {
|
|
68
83
|
confirmed
|
|
69
84
|
} = await this._dialogService.confirm({
|
|
70
85
|
type: "question",
|
|
71
|
-
message: ( localize(
|
|
86
|
+
message: ( localize(6466, "Install Plugin from '{0}'?", ref.displayLabel)),
|
|
72
87
|
detail: ( localize(
|
|
73
|
-
|
|
88
|
+
6467,
|
|
74
89
|
"An external application wants to install a plugin from this source. Plugins can run code on your machine. Only install plugins from sources you trust.\n\nSource: {0}",
|
|
75
90
|
ref.rawValue
|
|
76
91
|
)),
|
|
77
|
-
primaryButton: ( localize(
|
|
92
|
+
primaryButton: ( localize(6468, "&&Install")),
|
|
78
93
|
custom: {
|
|
79
94
|
icon: Codicon.shield
|
|
80
95
|
}
|
|
@@ -83,6 +98,38 @@ let PluginUrlHandler = class PluginUrlHandler extends Disposable {
|
|
|
83
98
|
return true;
|
|
84
99
|
}
|
|
85
100
|
await this._pluginInstallService.installPluginFromSource(source);
|
|
101
|
+
this._extensionsWorkbenchService.openSearch(`@agentPlugins ${ref.displayLabel}`);
|
|
102
|
+
return true;
|
|
103
|
+
}
|
|
104
|
+
async _handleInstallTargetedPlugin(source, displayLabel, pluginName) {
|
|
105
|
+
const result = await this._pluginInstallService.installPluginFromValidatedSource(source, {
|
|
106
|
+
plugin: pluginName
|
|
107
|
+
});
|
|
108
|
+
if (!result.success) {
|
|
109
|
+
if (result.message) {
|
|
110
|
+
this._logService.warn(`[PluginUrlHandler] ${result.message}`);
|
|
111
|
+
}
|
|
112
|
+
this._extensionsWorkbenchService.openSearch(`@agentPlugins ${displayLabel}`);
|
|
113
|
+
return true;
|
|
114
|
+
}
|
|
115
|
+
if (!result.matchedPlugin) {
|
|
116
|
+
this._extensionsWorkbenchService.openSearch(`@agentPlugins ${displayLabel}`);
|
|
117
|
+
return true;
|
|
118
|
+
}
|
|
119
|
+
const plugin = result.matchedPlugin;
|
|
120
|
+
const item = {
|
|
121
|
+
kind: AgentPluginItemKind.Marketplace,
|
|
122
|
+
name: plugin.name,
|
|
123
|
+
description: plugin.description,
|
|
124
|
+
source: plugin.source,
|
|
125
|
+
sourceDescriptor: plugin.sourceDescriptor,
|
|
126
|
+
marketplace: plugin.marketplace,
|
|
127
|
+
marketplaceReference: plugin.marketplaceReference,
|
|
128
|
+
marketplaceType: plugin.marketplaceType,
|
|
129
|
+
readmeUri: plugin.readmeUri
|
|
130
|
+
};
|
|
131
|
+
const input = this._instantiationService.createInstance(AgentPluginEditorInput, item);
|
|
132
|
+
await this._editorService.openEditor(input);
|
|
86
133
|
return true;
|
|
87
134
|
}
|
|
88
135
|
async _handleAddMarketplace(uri) {
|
|
@@ -101,13 +148,13 @@ let PluginUrlHandler = class PluginUrlHandler extends Disposable {
|
|
|
101
148
|
confirmed
|
|
102
149
|
} = await this._dialogService.confirm({
|
|
103
150
|
type: "question",
|
|
104
|
-
message: ( localize(
|
|
151
|
+
message: ( localize(6469, "Add Plugin Marketplace '{0}'?", ref.displayLabel)),
|
|
105
152
|
detail: ( localize(
|
|
106
|
-
|
|
153
|
+
6470,
|
|
107
154
|
"An external application wants to add a plugin marketplace. Plugins from this marketplace will appear in the plugin catalog and can be installed.\n\nSource: {0}",
|
|
108
155
|
ref.rawValue
|
|
109
156
|
)),
|
|
110
|
-
primaryButton: ( localize(
|
|
157
|
+
primaryButton: ( localize(6471, "&&Add Marketplace")),
|
|
111
158
|
custom: {
|
|
112
159
|
icon: Codicon.shield
|
|
113
160
|
}
|
|
@@ -124,6 +171,7 @@ let PluginUrlHandler = class PluginUrlHandler extends Disposable {
|
|
|
124
171
|
ConfigurationTarget.USER
|
|
125
172
|
);
|
|
126
173
|
}
|
|
174
|
+
this._extensionsWorkbenchService.openSearch(`@agentPlugins ${ref.displayLabel}`);
|
|
127
175
|
return true;
|
|
128
176
|
}
|
|
129
177
|
_decodeQueryParam(uri, key) {
|
|
@@ -132,15 +180,25 @@ let PluginUrlHandler = class PluginUrlHandler extends Disposable {
|
|
|
132
180
|
if (!raw) {
|
|
133
181
|
return undefined;
|
|
134
182
|
}
|
|
183
|
+
const decoded = this._tryBase64Decode(raw);
|
|
184
|
+
if (decoded && parseMarketplaceReference(decoded)) {
|
|
185
|
+
return decoded;
|
|
186
|
+
}
|
|
187
|
+
return parseMarketplaceReference(raw) ? raw : undefined;
|
|
188
|
+
}
|
|
189
|
+
_decodeStringParam(uri, key) {
|
|
190
|
+
const params = ( new URLSearchParams(uri.query));
|
|
191
|
+
return params.get(key) ?? undefined;
|
|
192
|
+
}
|
|
193
|
+
_tryBase64Decode(raw) {
|
|
135
194
|
try {
|
|
136
195
|
const decoded = ( decodeBase64(raw).toString());
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
}
|
|
141
|
-
return raw;
|
|
196
|
+
return decoded || undefined;
|
|
197
|
+
} catch {
|
|
198
|
+
return undefined;
|
|
199
|
+
}
|
|
142
200
|
}
|
|
143
201
|
};
|
|
144
|
-
PluginUrlHandler = ( __decorate([( __param(0, IURLService)), ( __param(1, IPluginInstallService)), ( __param(2, IDialogService)), ( __param(3, IConfigurationService)), ( __param(4,
|
|
202
|
+
PluginUrlHandler = ( __decorate([( __param(0, IURLService)), ( __param(1, IPluginInstallService)), ( __param(2, IDialogService)), ( __param(3, IConfigurationService)), ( __param(4, IExtensionsWorkbenchService)), ( __param(5, IHostService)), ( __param(6, ILogService)), ( __param(7, IEditorService)), ( __param(8, IInstantiationService))], PluginUrlHandler));
|
|
145
203
|
|
|
146
204
|
export { PluginUrlHandler };
|
|
@@ -17,7 +17,7 @@ class ConfigAgentActionImpl extends Action2 {
|
|
|
17
17
|
const openerService = accessor.get(IOpenerService);
|
|
18
18
|
const pickers = instaService.createInstance(PromptFilePickers);
|
|
19
19
|
const placeholder = ( localize(
|
|
20
|
-
|
|
20
|
+
6478,
|
|
21
21
|
"Select the custom agents to open and configure visibility in the agent picker"
|
|
22
22
|
));
|
|
23
23
|
const result = await pickers.selectPromptFile({
|
|
@@ -35,8 +35,8 @@ const PICKER_CONFIGURE_AGENTS_ACTION_ID = "workbench.action.chat.picker.customag
|
|
|
35
35
|
function createPickerConfigureAgentsActionConfig(disabled) {
|
|
36
36
|
const config = {
|
|
37
37
|
id: disabled ? PICKER_CONFIGURE_AGENTS_ACTION_ID + ".disabled" : PICKER_CONFIGURE_AGENTS_ACTION_ID,
|
|
38
|
-
title: ( localize2(
|
|
39
|
-
tooltip: disabled ? ( localize(
|
|
38
|
+
title: ( localize2(6479, "Configure Custom Agents...")),
|
|
39
|
+
tooltip: disabled ? ( localize(6480, "Managed by your organization")) : undefined,
|
|
40
40
|
icon: disabled ? Codicon.lock : undefined,
|
|
41
41
|
category: CHAT_CATEGORY,
|
|
42
42
|
f1: false,
|
|
@@ -62,8 +62,8 @@ const CONFIGURE_AGENTS_ACTION_ID = "workbench.action.chat.configure.customagents
|
|
|
62
62
|
function createManageAgentsActionConfig(disabled) {
|
|
63
63
|
const base = {
|
|
64
64
|
id: disabled ? CONFIGURE_AGENTS_ACTION_ID + ".disabled" : CONFIGURE_AGENTS_ACTION_ID,
|
|
65
|
-
title: ( localize2(
|
|
66
|
-
shortTitle: ( localize(
|
|
65
|
+
title: ( localize2(6481, "Configure Custom Agents...")),
|
|
66
|
+
shortTitle: ( localize(6482, "Custom Agents")),
|
|
67
67
|
icon: disabled ? Codicon.lock : Codicon.bookmark,
|
|
68
68
|
f1: !disabled,
|
|
69
69
|
precondition: disabled ? ( ContextKeyExpr.false()) : ( ContextKeyExpr.and(ChatContextKeys.enabled, ( ChatContextKeys.Modes.agentModeDisabledByPolicy.negate()))),
|
|
@@ -77,7 +77,7 @@ function createManageAgentsActionConfig(disabled) {
|
|
|
77
77
|
};
|
|
78
78
|
return disabled ? {
|
|
79
79
|
...base,
|
|
80
|
-
tooltip: ( localize(
|
|
80
|
+
tooltip: ( localize(6480, "Managed by your organization"))
|
|
81
81
|
} : base;
|
|
82
82
|
}
|
|
83
83
|
class ManageAgentsAction extends ConfigAgentActionImpl {
|
|
@@ -74,7 +74,7 @@ async function addHookToFile(
|
|
|
74
74
|
}
|
|
75
75
|
} catch {
|
|
76
76
|
notificationService.error(( localize(
|
|
77
|
-
|
|
77
|
+
6483,
|
|
78
78
|
"Failed to parse existing hooks file. Please fix the JSON syntax errors and try again."
|
|
79
79
|
)));
|
|
80
80
|
await editorService.openEditor({
|
|
@@ -157,7 +157,7 @@ async function addHookToFile(
|
|
|
157
157
|
range: ( new Range(1, 1, Number.MAX_SAFE_INTEGER, 1)),
|
|
158
158
|
text: jsonContent
|
|
159
159
|
}))], {
|
|
160
|
-
label: ( localize(
|
|
160
|
+
label: ( localize(6484, "Add Hook"))
|
|
161
161
|
});
|
|
162
162
|
const selection = findHookCommandSelection(jsonContent, keyToUse, newHookIndex, "command");
|
|
163
163
|
await editorService.openEditor({
|
|
@@ -182,7 +182,7 @@ async function addHookToFile(
|
|
|
182
182
|
range: ( new Range(1, 1, Number.MAX_SAFE_INTEGER, 1)),
|
|
183
183
|
text: jsonContent
|
|
184
184
|
}))], {
|
|
185
|
-
label: ( localize(
|
|
185
|
+
label: ( localize(6484, "Add Hook"))
|
|
186
186
|
});
|
|
187
187
|
}
|
|
188
188
|
const selection = findHookCommandSelection(jsonContent, keyToUse, newHookIndex, "command");
|
|
@@ -308,29 +308,29 @@ async function showConfigureHooksQuickPick(accessor, options) {
|
|
|
308
308
|
if (shared.length > 0) {
|
|
309
309
|
pickerItems.push({
|
|
310
310
|
type: "separator",
|
|
311
|
-
label: ( localize(
|
|
311
|
+
label: ( localize(6485, "Local/Copilot CLI Agents"))
|
|
312
312
|
});
|
|
313
313
|
pickerItems.push(...( shared.map(makeItem)));
|
|
314
314
|
}
|
|
315
315
|
if (vscodeOnly.length > 0) {
|
|
316
316
|
pickerItems.push({
|
|
317
317
|
type: "separator",
|
|
318
|
-
label: ( localize(
|
|
318
|
+
label: ( localize(6486, "Local Agents"))
|
|
319
319
|
});
|
|
320
320
|
pickerItems.push(...( vscodeOnly.map(makeItem)));
|
|
321
321
|
}
|
|
322
322
|
if (copilotOnly.length > 0) {
|
|
323
323
|
pickerItems.push({
|
|
324
324
|
type: "separator",
|
|
325
|
-
label: ( localize(
|
|
325
|
+
label: ( localize(6487, "Copilot CLI Agents"))
|
|
326
326
|
});
|
|
327
327
|
pickerItems.push(...( copilotOnly.map(makeItem)));
|
|
328
328
|
}
|
|
329
329
|
}
|
|
330
330
|
picker.items = pickerItems;
|
|
331
331
|
picker.value = "";
|
|
332
|
-
picker.placeholder = ( localize(
|
|
333
|
-
picker.title = ( localize(
|
|
332
|
+
picker.placeholder = ( localize(6488, "Select a lifecycle event"));
|
|
333
|
+
picker.title = ( localize(6489, "Hooks"));
|
|
334
334
|
picker.buttons = [];
|
|
335
335
|
const result = await awaitPick(picker, backButton);
|
|
336
336
|
if (!result || result === "back") {
|
|
@@ -348,14 +348,14 @@ async function showConfigureHooksQuickPick(accessor, options) {
|
|
|
348
348
|
const agentHooks = hooksOfType.filter(h => h.agentName);
|
|
349
349
|
const hookItems = [];
|
|
350
350
|
hookItems.push({
|
|
351
|
-
label: `$(plus) ${( localize(
|
|
351
|
+
label: `$(plus) ${( localize(6490, "Add new hook..."))}`,
|
|
352
352
|
isAddNewHook: true,
|
|
353
353
|
alwaysShow: true
|
|
354
354
|
});
|
|
355
355
|
if (fileHooks.length > 0) {
|
|
356
356
|
hookItems.push({
|
|
357
357
|
type: "separator",
|
|
358
|
-
label: ( localize(
|
|
358
|
+
label: ( localize(6491, "Existing Hooks"))
|
|
359
359
|
});
|
|
360
360
|
for (const entry of fileHooks) {
|
|
361
361
|
const description = labelService.getUriLabel(entry.fileUri, {
|
|
@@ -373,7 +373,7 @@ async function showConfigureHooksQuickPick(accessor, options) {
|
|
|
373
373
|
for (const agentName of agentNames) {
|
|
374
374
|
hookItems.push({
|
|
375
375
|
type: "separator",
|
|
376
|
-
label: ( localize(
|
|
376
|
+
label: ( localize(6492, "Agent: {0}", agentName))
|
|
377
377
|
});
|
|
378
378
|
for (const entry of agentHooks.filter(h => h.agentName === agentName)) {
|
|
379
379
|
const description = labelService.getUriLabel(entry.fileUri, {
|
|
@@ -392,7 +392,7 @@ async function showConfigureHooksQuickPick(accessor, options) {
|
|
|
392
392
|
} else {
|
|
393
393
|
picker.items = hookItems;
|
|
394
394
|
picker.value = "";
|
|
395
|
-
picker.placeholder = ( localize(
|
|
395
|
+
picker.placeholder = ( localize(6493, "Select a hook to open or add a new one"));
|
|
396
396
|
picker.title = selectedHookType.hookTypeMeta.label;
|
|
397
397
|
picker.buttons = [backButton];
|
|
398
398
|
const result = await awaitPick(picker, backButton);
|
|
@@ -449,14 +449,14 @@ async function showConfigureHooksQuickPick(accessor, options) {
|
|
|
449
449
|
const hookFiles = await promptsService.listPromptFilesForStorage(PromptsType.hook, PromptsStorage.local, CancellationToken.None);
|
|
450
450
|
const fileItems = [];
|
|
451
451
|
fileItems.push({
|
|
452
|
-
label: `$(new-file) ${( localize(
|
|
452
|
+
label: `$(new-file) ${( localize(6494, "Create new hook config file..."))}`,
|
|
453
453
|
isCreateNewFile: true,
|
|
454
454
|
alwaysShow: true
|
|
455
455
|
});
|
|
456
456
|
if (hookFiles.length > 0) {
|
|
457
457
|
fileItems.push({
|
|
458
458
|
type: "separator",
|
|
459
|
-
label: ( localize(
|
|
459
|
+
label: ( localize(6495, "Existing Hook Files"))
|
|
460
460
|
});
|
|
461
461
|
for (const hookFile of hookFiles) {
|
|
462
462
|
const relativePath = labelService.getUriLabel(hookFile.uri, {
|
|
@@ -473,8 +473,8 @@ async function showConfigureHooksQuickPick(accessor, options) {
|
|
|
473
473
|
} else {
|
|
474
474
|
picker.items = fileItems;
|
|
475
475
|
picker.value = "";
|
|
476
|
-
picker.placeholder = ( localize(
|
|
477
|
-
picker.title = ( localize(
|
|
476
|
+
picker.placeholder = ( localize(6496, "Select a hook file or create a new one"));
|
|
477
|
+
picker.title = ( localize(6497, "Add Hook"));
|
|
478
478
|
picker.buttons = [backButton];
|
|
479
479
|
const result = await awaitPick(picker, backButton);
|
|
480
480
|
if (result === "back") {
|
|
@@ -507,7 +507,7 @@ async function showConfigureHooksQuickPick(accessor, options) {
|
|
|
507
507
|
const allFolders = await promptsService.getSourceFolders(PromptsType.hook);
|
|
508
508
|
const localFolders = allFolders.filter(f => f.storage === PromptsStorage.local);
|
|
509
509
|
if (localFolders.length === 0) {
|
|
510
|
-
notificationService.error(( localize(
|
|
510
|
+
notificationService.error(( localize(6498, "Please open a workspace folder to configure hooks.")));
|
|
511
511
|
return;
|
|
512
512
|
}
|
|
513
513
|
selectedFolder = localFolders[0];
|
|
@@ -520,8 +520,8 @@ async function showConfigureHooksQuickPick(accessor, options) {
|
|
|
520
520
|
})));
|
|
521
521
|
picker.items = folderItems;
|
|
522
522
|
picker.value = "";
|
|
523
|
-
picker.placeholder = ( localize(
|
|
524
|
-
picker.title = ( localize(
|
|
523
|
+
picker.placeholder = ( localize(6499, "Select a location for the hook file"));
|
|
524
|
+
picker.title = ( localize(6500, "Hook File Location"));
|
|
525
525
|
picker.buttons = [backButton];
|
|
526
526
|
const result = await awaitPick(picker, backButton);
|
|
527
527
|
if (result === "back") {
|
|
@@ -551,20 +551,20 @@ async function showConfigureHooksQuickPick(accessor, options) {
|
|
|
551
551
|
};
|
|
552
552
|
const inputDisposables = ( new DisposableStore());
|
|
553
553
|
const inputBox = inputDisposables.add(quickInputService.createInputBox());
|
|
554
|
-
inputBox.prompt = ( localize(
|
|
555
|
-
inputBox.placeholder = ( localize(
|
|
556
|
-
inputBox.title = ( localize(
|
|
554
|
+
inputBox.prompt = ( localize(6501, "Enter hook file name"));
|
|
555
|
+
inputBox.placeholder = ( localize(6502, "e.g., hooks, diagnostics, security"));
|
|
556
|
+
inputBox.title = ( localize(6503, "Hook File Name"));
|
|
557
557
|
inputBox.buttons = [backButton];
|
|
558
558
|
inputBox.ignoreFocusOut = true;
|
|
559
559
|
inputDisposables.add(inputBox.onDidAccept(async () => {
|
|
560
560
|
const value = inputBox.value;
|
|
561
561
|
if (!value || !value.trim()) {
|
|
562
|
-
inputBox.validationMessage = ( localize(
|
|
562
|
+
inputBox.validationMessage = ( localize(6504, "File name is required"));
|
|
563
563
|
return;
|
|
564
564
|
}
|
|
565
565
|
const name = value.trim();
|
|
566
566
|
if (/[/\\:*?"<>|]/.test(name)) {
|
|
567
|
-
inputBox.validationMessage = ( localize(
|
|
567
|
+
inputBox.validationMessage = ( localize(6505, "File name contains invalid characters"));
|
|
568
568
|
return;
|
|
569
569
|
}
|
|
570
570
|
done(name);
|
|
@@ -651,8 +651,8 @@ class ManageHooksAction extends Action2 {
|
|
|
651
651
|
constructor() {
|
|
652
652
|
super({
|
|
653
653
|
id: CONFIGURE_HOOKS_ACTION_ID,
|
|
654
|
-
title: ( localize2(
|
|
655
|
-
shortTitle: ( localize2(
|
|
654
|
+
title: ( localize2(6506, "Configure Hooks...")),
|
|
655
|
+
shortTitle: ( localize2(6507, "Hooks")),
|
|
656
656
|
icon: Codicon.zap,
|
|
657
657
|
f1: true,
|
|
658
658
|
precondition: ChatContextKeys.enabled,
|
|
@@ -126,7 +126,7 @@ async function parseAllHookFiles(
|
|
|
126
126
|
}
|
|
127
127
|
for (let i = 0; i < commands.length; i++) {
|
|
128
128
|
const command = commands[i];
|
|
129
|
-
const commandLabel = formatHookCommandLabel(command, os) || ( localize(
|
|
129
|
+
const commandLabel = formatHookCommandLabel(command, os) || ( localize(6508, "(empty command)"));
|
|
130
130
|
parsedHooks.push({
|
|
131
131
|
hookType,
|
|
132
132
|
hookTypeLabel: hookTypeMeta.label,
|
|
@@ -163,7 +163,7 @@ async function parseAllHookFiles(
|
|
|
163
163
|
}
|
|
164
164
|
for (let i = 0; i < commands.length; i++) {
|
|
165
165
|
const command = commands[i];
|
|
166
|
-
const commandLabel = formatHookCommandLabel(command, os) || ( localize(
|
|
166
|
+
const commandLabel = formatHookCommandLabel(command, os) || ( localize(6508, "(empty command)"));
|
|
167
167
|
parsedHooks.push({
|
|
168
168
|
hookType,
|
|
169
169
|
hookTypeLabel: hookTypeMeta.label,
|
|
@@ -201,7 +201,7 @@ async function parseAllHookFiles(
|
|
|
201
201
|
}
|
|
202
202
|
for (let i = 0; i < commands.length; i++) {
|
|
203
203
|
const command = commands[i];
|
|
204
|
-
const commandLabel = formatHookCommandLabel(command, os) || ( localize(
|
|
204
|
+
const commandLabel = formatHookCommandLabel(command, os) || ( localize(6508, "(empty command)"));
|
|
205
205
|
parsedHooks.push({
|
|
206
206
|
hookType: hookTypeValue,
|
|
207
207
|
hookTypeLabel: hookTypeMeta.label,
|
package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js
CHANGED
|
@@ -38,11 +38,11 @@ let PromptCodingAgentActionOverlayWidget = class PromptCodingAgentActionOverlayW
|
|
|
38
38
|
this._domNode = $(".prompt-coding-agent-action-overlay");
|
|
39
39
|
this._button = this._register(( new Button(this._domNode, {
|
|
40
40
|
supportIcons: true,
|
|
41
|
-
title: ( localize(
|
|
41
|
+
title: ( localize(6590, "Run prompt file in a remote coding agent"))
|
|
42
42
|
})));
|
|
43
43
|
this._button.element.style.background = "var(--vscode-button-background)";
|
|
44
44
|
this._button.element.style.color = "var(--vscode-button-foreground)";
|
|
45
|
-
this._button.label = ( localize(
|
|
45
|
+
this._button.label = ( localize(6591, "{0} Delegate to Copilot coding agent", "$(cloud-upload)"));
|
|
46
46
|
this._register(this._button.onDidClick(async () => {
|
|
47
47
|
await this._execute();
|
|
48
48
|
}));
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
|
|
2
|
+
import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
|
|
3
|
+
import { PromptLinkProvider } from '../../common/promptSyntax/languageProviders/promptLinkProvider.js';
|
|
4
|
+
import { PromptBodyAutocompletion } from '../../common/promptSyntax/languageProviders/promptBodyAutocompletion.js';
|
|
5
|
+
import { PromptHeaderAutocompletion } from '../../common/promptSyntax/languageProviders/promptHeaderAutocompletion.js';
|
|
6
|
+
import { PromptHoverProvider } from '../../common/promptSyntax/languageProviders/promptHovers.js';
|
|
7
|
+
import { PromptHeaderDefinitionProvider } from '../../common/promptSyntax/languageProviders/PromptHeaderDefinitionProvider.js';
|
|
8
|
+
import { PromptValidator, MARKERS_OWNER_ID } from '../../common/promptSyntax/languageProviders/promptValidator.js';
|
|
9
|
+
import { PromptDocumentSemanticTokensProvider } from '../../common/promptSyntax/languageProviders/promptDocumentSemanticTokensProvider.js';
|
|
10
|
+
import { PromptCodeActionProvider } from '../../common/promptSyntax/languageProviders/promptCodeActions.js';
|
|
11
|
+
import { ILanguageFeaturesService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/services/languageFeatures.service';
|
|
12
|
+
import { Disposable, DisposableStore, toDisposable, DisposableMap } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
|
|
13
|
+
import { ALL_PROMPTS_LANGUAGE_SELECTOR, getPromptsTypeForLanguageId } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/promptTypes';
|
|
14
|
+
import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
|
|
15
|
+
import { ICodeEditorService } from '@codingame/monaco-vscode-api/vscode/vs/editor/browser/services/codeEditorService.service';
|
|
16
|
+
import { IMarkerService } from '@codingame/monaco-vscode-api/vscode/vs/platform/markers/common/markers.service';
|
|
17
|
+
import { ILanguageModelsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/languageModels.service';
|
|
18
|
+
import { ILanguageModelToolsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/tools/languageModelToolsService.service';
|
|
19
|
+
import { IChatModeService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatModes.service';
|
|
20
|
+
import { IPromptsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.service';
|
|
21
|
+
import { Delayer } from '@codingame/monaco-vscode-api/vscode/vs/base/common/async';
|
|
22
|
+
import { ResourceMap } from '@codingame/monaco-vscode-api/vscode/vs/base/common/map';
|
|
23
|
+
|
|
24
|
+
let PromptLanguageFeaturesProvider = class PromptLanguageFeaturesProvider extends Disposable {
|
|
25
|
+
static {
|
|
26
|
+
this.ID = "chat.promptLanguageFeatures";
|
|
27
|
+
}
|
|
28
|
+
constructor(languageService, instantiationService) {
|
|
29
|
+
super();
|
|
30
|
+
this._register(languageService.linkProvider.register(
|
|
31
|
+
ALL_PROMPTS_LANGUAGE_SELECTOR,
|
|
32
|
+
instantiationService.createInstance(PromptLinkProvider)
|
|
33
|
+
));
|
|
34
|
+
this._register(languageService.completionProvider.register(
|
|
35
|
+
ALL_PROMPTS_LANGUAGE_SELECTOR,
|
|
36
|
+
instantiationService.createInstance(PromptBodyAutocompletion)
|
|
37
|
+
));
|
|
38
|
+
this._register(languageService.completionProvider.register(
|
|
39
|
+
ALL_PROMPTS_LANGUAGE_SELECTOR,
|
|
40
|
+
instantiationService.createInstance(PromptHeaderAutocompletion)
|
|
41
|
+
));
|
|
42
|
+
this._register(languageService.hoverProvider.register(
|
|
43
|
+
ALL_PROMPTS_LANGUAGE_SELECTOR,
|
|
44
|
+
instantiationService.createInstance(PromptHoverProvider)
|
|
45
|
+
));
|
|
46
|
+
this._register(languageService.definitionProvider.register(
|
|
47
|
+
ALL_PROMPTS_LANGUAGE_SELECTOR,
|
|
48
|
+
instantiationService.createInstance(PromptHeaderDefinitionProvider)
|
|
49
|
+
));
|
|
50
|
+
this._register(languageService.documentSemanticTokensProvider.register(
|
|
51
|
+
ALL_PROMPTS_LANGUAGE_SELECTOR,
|
|
52
|
+
instantiationService.createInstance(PromptDocumentSemanticTokensProvider)
|
|
53
|
+
));
|
|
54
|
+
this._register(languageService.codeActionProvider.register(
|
|
55
|
+
ALL_PROMPTS_LANGUAGE_SELECTOR,
|
|
56
|
+
instantiationService.createInstance(PromptCodeActionProvider)
|
|
57
|
+
));
|
|
58
|
+
this._register(instantiationService.createInstance(PromptValidatorContribution));
|
|
59
|
+
}
|
|
60
|
+
};
|
|
61
|
+
PromptLanguageFeaturesProvider = ( __decorate([( __param(0, ILanguageFeaturesService)), ( __param(1, IInstantiationService))], PromptLanguageFeaturesProvider));
|
|
62
|
+
let PromptValidatorContribution = class PromptValidatorContribution extends Disposable {
|
|
63
|
+
constructor(
|
|
64
|
+
codeEditorService,
|
|
65
|
+
instantiationService,
|
|
66
|
+
markerService,
|
|
67
|
+
promptsService,
|
|
68
|
+
languageModelsService,
|
|
69
|
+
languageModelToolsService,
|
|
70
|
+
chatModeService
|
|
71
|
+
) {
|
|
72
|
+
super();
|
|
73
|
+
this.codeEditorService = codeEditorService;
|
|
74
|
+
this.markerService = markerService;
|
|
75
|
+
this.promptsService = promptsService;
|
|
76
|
+
this.languageModelsService = languageModelsService;
|
|
77
|
+
this.languageModelToolsService = languageModelToolsService;
|
|
78
|
+
this.chatModeService = chatModeService;
|
|
79
|
+
this.localDisposables = this._register(( new DisposableStore()));
|
|
80
|
+
this.validator = instantiationService.createInstance(PromptValidator);
|
|
81
|
+
this.updateRegistration();
|
|
82
|
+
}
|
|
83
|
+
updateRegistration() {
|
|
84
|
+
this.localDisposables.clear();
|
|
85
|
+
const trackers = ( new ResourceMap());
|
|
86
|
+
this.localDisposables.add(toDisposable(() => {
|
|
87
|
+
trackers.forEach(tracker => tracker.dispose());
|
|
88
|
+
trackers.clear();
|
|
89
|
+
}));
|
|
90
|
+
const acquire = editor => {
|
|
91
|
+
const model = editor.getModel();
|
|
92
|
+
if (!model) {
|
|
93
|
+
return;
|
|
94
|
+
}
|
|
95
|
+
const promptType = getPromptsTypeForLanguageId(model.getLanguageId());
|
|
96
|
+
if (promptType) {
|
|
97
|
+
const existing = trackers.get(model.uri);
|
|
98
|
+
if (existing) {
|
|
99
|
+
existing.refCount++;
|
|
100
|
+
return;
|
|
101
|
+
}
|
|
102
|
+
trackers.set(model.uri, ( new ModelTracker(model, promptType, this.validator, this.promptsService, this.markerService)));
|
|
103
|
+
}
|
|
104
|
+
};
|
|
105
|
+
const release = uri => {
|
|
106
|
+
const tracker = trackers.get(uri);
|
|
107
|
+
if (tracker && --tracker.refCount === 0) {
|
|
108
|
+
tracker.dispose();
|
|
109
|
+
trackers.delete(uri);
|
|
110
|
+
}
|
|
111
|
+
};
|
|
112
|
+
const perEditorDisposables = ( new DisposableMap());
|
|
113
|
+
this.localDisposables.add(perEditorDisposables);
|
|
114
|
+
const onCodeEditorAdd = editor => {
|
|
115
|
+
acquire(editor);
|
|
116
|
+
const store = ( new DisposableStore());
|
|
117
|
+
store.add(editor.onDidChangeModel(e => {
|
|
118
|
+
if (e.oldModelUrl) {
|
|
119
|
+
release(e.oldModelUrl);
|
|
120
|
+
}
|
|
121
|
+
acquire(editor);
|
|
122
|
+
}));
|
|
123
|
+
store.add(editor.onDidChangeModelLanguage(e => {
|
|
124
|
+
const model = editor.getModel();
|
|
125
|
+
if (model) {
|
|
126
|
+
release(model.uri);
|
|
127
|
+
acquire(editor);
|
|
128
|
+
}
|
|
129
|
+
}));
|
|
130
|
+
perEditorDisposables.set(editor.getId(), store);
|
|
131
|
+
};
|
|
132
|
+
for (const editor of this.codeEditorService.listCodeEditors()) {
|
|
133
|
+
onCodeEditorAdd(editor);
|
|
134
|
+
}
|
|
135
|
+
this.localDisposables.add(this.codeEditorService.onCodeEditorAdd(editor => {
|
|
136
|
+
onCodeEditorAdd(editor);
|
|
137
|
+
}));
|
|
138
|
+
this.localDisposables.add(this.codeEditorService.onCodeEditorRemove(editor => {
|
|
139
|
+
perEditorDisposables.deleteAndDispose(editor.getId());
|
|
140
|
+
const model = editor.getModel();
|
|
141
|
+
if (model) {
|
|
142
|
+
release(model.uri);
|
|
143
|
+
}
|
|
144
|
+
}));
|
|
145
|
+
const validateAll = () => trackers.forEach(tracker => tracker.validate());
|
|
146
|
+
this.localDisposables.add(this.languageModelToolsService.onDidChangeTools(() => validateAll()));
|
|
147
|
+
this.localDisposables.add(this.chatModeService.onDidChangeChatModes(() => validateAll()));
|
|
148
|
+
this.localDisposables.add(this.languageModelsService.onDidChangeLanguageModels(() => validateAll()));
|
|
149
|
+
}
|
|
150
|
+
};
|
|
151
|
+
PromptValidatorContribution = ( __decorate([( __param(0, ICodeEditorService)), ( __param(1, IInstantiationService)), ( __param(2, IMarkerService)), ( __param(3, IPromptsService)), ( __param(4, ILanguageModelsService)), ( __param(5, ILanguageModelToolsService)), ( __param(6, IChatModeService))], PromptValidatorContribution));
|
|
152
|
+
class ModelTracker extends Disposable {
|
|
153
|
+
constructor(textModel, promptType, validator, promptsService, markerService) {
|
|
154
|
+
super();
|
|
155
|
+
this.textModel = textModel;
|
|
156
|
+
this.promptType = promptType;
|
|
157
|
+
this.validator = validator;
|
|
158
|
+
this.promptsService = promptsService;
|
|
159
|
+
this.markerService = markerService;
|
|
160
|
+
this.refCount = 1;
|
|
161
|
+
this.delayer = this._register(( new Delayer(200)));
|
|
162
|
+
this._register(textModel.onDidChangeContent(() => this.validate()));
|
|
163
|
+
this.validate();
|
|
164
|
+
}
|
|
165
|
+
validate() {
|
|
166
|
+
this.delayer.trigger(async () => {
|
|
167
|
+
const markers = [];
|
|
168
|
+
const ast = this.promptsService.getParsedPromptFile(this.textModel);
|
|
169
|
+
await this.validator.validate(ast, this.promptType, m => markers.push(m));
|
|
170
|
+
if (!this._store.isDisposed) {
|
|
171
|
+
this.markerService.changeOne(MARKERS_OWNER_ID, this.textModel.uri, markers);
|
|
172
|
+
}
|
|
173
|
+
});
|
|
174
|
+
}
|
|
175
|
+
dispose() {
|
|
176
|
+
this.markerService.remove(MARKERS_OWNER_ID, [this.textModel.uri]);
|
|
177
|
+
super.dispose();
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
export { PromptLanguageFeaturesProvider };
|
package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js
CHANGED
|
@@ -7,7 +7,7 @@ import { ILanguageFeaturesService } from '@codingame/monaco-vscode-api/vscode/vs
|
|
|
7
7
|
import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
8
8
|
import { CommandsRegistry } from '@codingame/monaco-vscode-api/vscode/vs/platform/commands/common/commands';
|
|
9
9
|
import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
|
|
10
|
-
import { showToolsPicker } from '
|
|
10
|
+
import { showToolsPicker } from '@codingame/monaco-vscode-katex-common/vscode/vs/workbench/contrib/chat/browser/actions/chatToolPicker';
|
|
11
11
|
import { ILanguageModelToolsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/tools/languageModelToolsService.service';
|
|
12
12
|
import { ALL_PROMPTS_LANGUAGE_SELECTOR, getPromptsTypeForLanguageId, PromptsType } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/promptTypes';
|
|
13
13
|
import { IPromptsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.service';
|
|
@@ -72,7 +72,7 @@ let PromptToolsCodeLensProvider = class PromptToolsCodeLensProvider extends Disp
|
|
|
72
72
|
const codeLens = {
|
|
73
73
|
range: toolsAttr.range.collapseToStart(),
|
|
74
74
|
command: {
|
|
75
|
-
title: ( localize(
|
|
75
|
+
title: ( localize(6592, "Configure Tools...")),
|
|
76
76
|
id: this.cmdId,
|
|
77
77
|
arguments: [
|
|
78
78
|
model,
|
|
@@ -89,7 +89,7 @@ let PromptToolsCodeLensProvider = class PromptToolsCodeLensProvider extends Disp
|
|
|
89
89
|
}
|
|
90
90
|
async updateTools(model, range, isString, selectedTools, target) {
|
|
91
91
|
const selectedToolsNow = () => this.languageModelToolsService.toToolAndToolSetEnablementMap(selectedTools, undefined);
|
|
92
|
-
const newSelectedAfter = await this.instantiationService.invokeFunction(showToolsPicker, ( localize(
|
|
92
|
+
const newSelectedAfter = await this.instantiationService.invokeFunction(showToolsPicker, ( localize(6593, "Select tools")), "codeLens", undefined, selectedToolsNow);
|
|
93
93
|
if (!newSelectedAfter) {
|
|
94
94
|
return;
|
|
95
95
|
}
|