@codingame/monaco-vscode-chat-service-override 19.1.3 → 20.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 +20 -8
- package/package.json +36 -31
- package/vscode/src/vs/base/common/policy.d.ts +14 -0
- package/vscode/src/vs/base/common/policy.js +11 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +53 -43
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatClearActions.js +54 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContext.js +15 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.js +37 -25
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatGettingStarted.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.js +23 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +83 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +421 -21
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +20 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +215 -104
- package/vscode/src/vs/workbench/contrib/chat/browser/chatAccessibilityService.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatAccessibilityService.js +9 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatAttachmentResolveService.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatAttachmentResolveService.js +18 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatMarkdownAnchorService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js +20 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +6 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.d.ts +4 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +9 -6
- 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 +11 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.d.ts +5 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +16 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.d.ts +7 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +58 -326
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSessionStorage.d.ts +0 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSessionStorage.js +33 -30
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelChangeService.d.ts +12 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelChangeService.js +39 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTimeline.d.ts +55 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTimeline.js +380 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingModifiedNotebookSnapshot.js +3 -2
- 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/chatEditingNotebookCellEntry.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/notebookCellChanges.js +4 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/overlayToolbarDecorator.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/overlayToolbarDecorator.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/simpleBrowserEditorOverlay.js +22 -22
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditor.d.ts +9 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditor.js +44 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.d.ts +38 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +145 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +34 -34
- package/vscode/src/vs/workbench/contrib/chat/browser/chatPasteProviders.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatQuick.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatQuick.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatResponseAccessibleView.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatResponseAccessibleView.js +36 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions.contribution.d.ts +49 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions.contribution.js +407 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions.js +738 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup.js +142 -151
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus.js +54 -54
- package/vscode/src/vs/workbench/contrib/chat/browser/chatVariables.js +20 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatViewPane.d.ts +4 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatViewPane.js +5 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/codeBlockContextProviderService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorContrib.js +23 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorHover.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorHover.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelToolsService.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelToolsService.js +13 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/media/apple-dark.svg +3 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/media/apple-light.svg +3 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/media/chatSessions.css +28 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/media/chatSetup.css +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/attachInstructionsAction.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/attachInstructionsAction.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/newPromptFileActions.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptName.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptName.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptSourceFolder.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptSourceFolder.js +19 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/promptFilePickers.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/promptFilePickers.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionContribution.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveToPromptAction.d.ts +1 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveToPromptAction.js +52 -90
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +15 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/common/chatProgressTypes/chatToolInvocation.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/chatProgressTypes/chatToolInvocation.js +6 -2
- package/vscode/src/vs/workbench/contrib/chat/common/chatResponseResourceFileSystemProvider.js +9 -6
- package/vscode/src/vs/workbench/contrib/chat/common/chatServiceImpl.d.ts +11 -6
- package/vscode/src/vs/workbench/contrib/chat/common/chatServiceImpl.js +137 -30
- package/vscode/src/vs/workbench/contrib/chat/common/chatServiceTelemetry.js +8 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatSessionStore.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatSessionStore.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/common/chatTodoListService.d.ts +27 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatTodoListService.js +44 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/config/configMigration.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contentProviders/filePromptContentsProvider.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contentProviders/promptContentsProviderBase.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contentProviders/promptContentsProviderBase.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderDiagnosticsProvider.js +3 -5
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderHovers.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptLinkDiagnosticsProvider.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptPathAutocompletion.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/providerInstanceManagerBase.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/basePromptParser.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/headerBase.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/instructionsHeader.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/applyTo.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/base/enum.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/base/string.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/tools.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/modeHeader.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/promptHeader.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/promptHeader.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/topError.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.js +27 -27
- package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +2 -2
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.js +9 -9
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAccessibilityHelp.js +1 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAccessibleView.js +4 -4
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.d.ts +104 -0
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +667 -0
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatCurrentLine.js +14 -14
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatNotebook.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookModifiedCellDecorator.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookModifiedCellDecorator.js +2 -2
- package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.js +7 -7
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/media/terminalChatWidget.css +56 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminal.chat.contribution.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminal.chat.contribution.js +14 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.d.ts +11 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +111 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibleView.d.ts +10 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibleView.js +52 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +262 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatController.d.ts +35 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatController.js +129 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatControllerHolder.d.ts +3 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatControllerHolder.js +8 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatEnabler.d.ts +9 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatEnabler.js +30 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.d.ts +72 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +411 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/alternativeRecommendation.d.ts +3 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/alternativeRecommendation.js +59 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/bufferOutputPolling.d.ts +51 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/bufferOutputPolling.js +163 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandLineAutoApprover.d.ts +24 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandLineAutoApprover.js +164 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.d.ts +14 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.js +101 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.d.ts +16 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.js +52 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.js +71 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.d.ts +14 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.js +94 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/getTerminalOutputTool.d.ts +11 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/getTerminalOutputTool.js +44 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/outputHelpers.d.ts +3 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/outputHelpers.js +18 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.d.ts +3 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +13 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalTool.d.ts +55 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalTool.js +603 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/subCommands.d.ts +3 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/subCommands.js +113 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task/createAndRunTaskTool.d.ts +21 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task/createAndRunTaskTool.js +227 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task/getTaskOutputTool.d.ts +19 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task/getTaskOutputTool.js +88 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task/runTaskTool.d.ts +21 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task/runTaskTool.js +140 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task/taskHelpers.d.ts +22 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task/taskHelpers.js +80 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task.chatAgentTools.contribution.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task.chatAgentTools.contribution.js +40 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +36 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.d.ts +20 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.js +114 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/media/google-mono-dark.svg +0 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/media/google-mono-light.svg +0 -3
|
@@ -6,20 +6,21 @@ import { IAuthenticationAccessService } from '@codingame/monaco-vscode-api/vscod
|
|
|
6
6
|
import { localize2, localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
7
7
|
import { INTERNAL_AUTH_PROVIDER_PREFIX } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/authentication/common/authentication';
|
|
8
8
|
import { IDialogService } from '@codingame/monaco-vscode-api/vscode/vs/platform/dialogs/common/dialogs.service';
|
|
9
|
-
import { CHAT_CATEGORY } from '@codingame/monaco-vscode-
|
|
9
|
+
import { CHAT_CATEGORY } from '@codingame/monaco-vscode-c2deffc4-ad68-5e63-8f95-9b89e0fc6898-common/vscode/vs/workbench/contrib/chat/browser/actions/chatActions';
|
|
10
10
|
import { IExtensionService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensions/common/extensions.service';
|
|
11
11
|
import { IExtensionsWorkbenchService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/extensions/common/extensions.service';
|
|
12
12
|
import { IProductService } from '@codingame/monaco-vscode-api/vscode/vs/platform/product/common/productService.service';
|
|
13
13
|
import { Codicon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/codicons';
|
|
14
14
|
import { ThemeIcon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/themables';
|
|
15
15
|
import { ChatContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatContextKeys';
|
|
16
|
+
import { ManageModelsAction } from '@codingame/monaco-vscode-e28ac690-06d5-5ee9-92d1-02df70296354-common/vscode/vs/workbench/contrib/chat/browser/actions/manageModelsActions';
|
|
16
17
|
|
|
17
18
|
class ManageLanguageModelAuthenticationAction extends Action2 {
|
|
18
19
|
static { this.ID = 'workbench.action.chat.manageLanguageModelAuthentication'; }
|
|
19
20
|
constructor() {
|
|
20
21
|
super({
|
|
21
22
|
id: ManageLanguageModelAuthenticationAction.ID,
|
|
22
|
-
title: ( localize2(
|
|
23
|
+
title: ( localize2(4621, 'Manage Language Model Access...')),
|
|
23
24
|
category: CHAT_CATEGORY,
|
|
24
25
|
precondition: ChatContextKeys.enabled,
|
|
25
26
|
menu: [{
|
|
@@ -90,9 +91,9 @@ class ManageLanguageModelAuthenticationAction extends Action2 {
|
|
|
90
91
|
if (extensionAuth.size === 0) {
|
|
91
92
|
dialogService.prompt({
|
|
92
93
|
type: 'info',
|
|
93
|
-
message: ( localize(
|
|
94
|
+
message: ( localize(4622, 'No language models requiring authentication found.')),
|
|
94
95
|
detail: ( localize(
|
|
95
|
-
|
|
96
|
+
4623,
|
|
96
97
|
'There are currently no language models that require authentication.'
|
|
97
98
|
))
|
|
98
99
|
});
|
|
@@ -107,10 +108,10 @@ class ManageLanguageModelAuthenticationAction extends Action2 {
|
|
|
107
108
|
items.push({
|
|
108
109
|
type: 'separator',
|
|
109
110
|
id: ownerId,
|
|
110
|
-
label: ( localize(
|
|
111
|
+
label: ( localize(4624, '{0}', extension.displayName || extension.name)),
|
|
111
112
|
buttons: [{
|
|
112
113
|
iconClass: ThemeIcon.asClassName(Codicon.info),
|
|
113
|
-
tooltip: ( localize(
|
|
114
|
+
tooltip: ( localize(4625, 'Open Extension')),
|
|
114
115
|
}]
|
|
115
116
|
});
|
|
116
117
|
let addedTrustedSeparator = false;
|
|
@@ -119,7 +120,7 @@ class ManageLanguageModelAuthenticationAction extends Action2 {
|
|
|
119
120
|
if (allowedExt.trusted && !addedTrustedSeparator) {
|
|
120
121
|
items.push({
|
|
121
122
|
type: 'separator',
|
|
122
|
-
label: ( localize(
|
|
123
|
+
label: ( localize(4626, 'Trusted by Microsoft')),
|
|
123
124
|
});
|
|
124
125
|
addedTrustedSeparator = true;
|
|
125
126
|
}
|
|
@@ -130,14 +131,18 @@ class ManageLanguageModelAuthenticationAction extends Action2 {
|
|
|
130
131
|
picked: allowedExt.allowed ?? false,
|
|
131
132
|
extension: allowedExt,
|
|
132
133
|
disabled: allowedExt.trusted,
|
|
134
|
+
buttons: [{
|
|
135
|
+
iconClass: ThemeIcon.asClassName(Codicon.info),
|
|
136
|
+
tooltip: ( localize(4625, 'Open Extension')),
|
|
137
|
+
}]
|
|
133
138
|
});
|
|
134
139
|
}
|
|
135
140
|
}
|
|
136
141
|
else {
|
|
137
142
|
items.push({
|
|
138
|
-
label: ( localize(
|
|
143
|
+
label: ( localize(4627, 'No extensions have access')),
|
|
139
144
|
description: ( localize(
|
|
140
|
-
|
|
145
|
+
4628,
|
|
141
146
|
'No extensions are currently allowed to use models from {0}',
|
|
142
147
|
ownerId
|
|
143
148
|
)),
|
|
@@ -154,8 +159,14 @@ class ManageLanguageModelAuthenticationAction extends Action2 {
|
|
|
154
159
|
void extensionsWorkbenchService.open(extId);
|
|
155
160
|
}
|
|
156
161
|
},
|
|
157
|
-
|
|
158
|
-
|
|
162
|
+
onDidTriggerItemButton(context) {
|
|
163
|
+
const extId = context.item.id;
|
|
164
|
+
if (extId) {
|
|
165
|
+
void extensionsWorkbenchService.open(extId);
|
|
166
|
+
}
|
|
167
|
+
},
|
|
168
|
+
title: ( localize(4629, 'Manage Language Model Access')),
|
|
169
|
+
placeHolder: ( localize(4630, 'Choose which extensions can access language models')),
|
|
159
170
|
});
|
|
160
171
|
if (!result) {
|
|
161
172
|
return;
|
|
@@ -174,6 +185,7 @@ class ManageLanguageModelAuthenticationAction extends Action2 {
|
|
|
174
185
|
}
|
|
175
186
|
function registerLanguageModelActions() {
|
|
176
187
|
registerAction2(ManageLanguageModelAuthenticationAction);
|
|
188
|
+
registerAction2(ManageModelsAction);
|
|
177
189
|
}
|
|
178
190
|
|
|
179
191
|
export { registerLanguageModelActions };
|
|
@@ -12,11 +12,11 @@ import { IViewsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/
|
|
|
12
12
|
import { isChatViewTitleActionContext } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatActions';
|
|
13
13
|
import { ChatContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatContextKeys';
|
|
14
14
|
import { ChatAgentLocation } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
|
|
15
|
-
import { ChatViewId } from '@codingame/monaco-vscode-
|
|
15
|
+
import { ChatViewId } from '@codingame/monaco-vscode-b994942c-360d-5b68-8a33-77d4bde6b714-common/vscode/vs/workbench/contrib/chat/browser/chat';
|
|
16
16
|
import { IChatWidgetService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat.service';
|
|
17
17
|
import { ChatEditor } from '../chatEditor.js';
|
|
18
|
-
import { ChatEditorInput } from '@codingame/monaco-vscode-
|
|
19
|
-
import { CHAT_CATEGORY } from '@codingame/monaco-vscode-
|
|
18
|
+
import { ChatEditorInput } from '@codingame/monaco-vscode-b994942c-360d-5b68-8a33-77d4bde6b714-common/vscode/vs/workbench/contrib/chat/browser/chatEditorInput';
|
|
19
|
+
import { CHAT_CATEGORY } from '@codingame/monaco-vscode-c2deffc4-ad68-5e63-8f95-9b89e0fc6898-common/vscode/vs/workbench/contrib/chat/browser/actions/chatActions';
|
|
20
20
|
|
|
21
21
|
var MoveToNewLocation;
|
|
22
22
|
(function (MoveToNewLocation) {
|
|
@@ -28,7 +28,7 @@ function registerMoveActions() {
|
|
|
28
28
|
constructor() {
|
|
29
29
|
super({
|
|
30
30
|
id: 'workbench.action.chat.openInEditor',
|
|
31
|
-
title: ( localize2(
|
|
31
|
+
title: ( localize2(4631, "Open Chat in Editor")),
|
|
32
32
|
category: CHAT_CATEGORY,
|
|
33
33
|
precondition: ChatContextKeys.enabled,
|
|
34
34
|
f1: true,
|
|
@@ -49,7 +49,7 @@ function registerMoveActions() {
|
|
|
49
49
|
constructor() {
|
|
50
50
|
super({
|
|
51
51
|
id: 'workbench.action.chat.openInNewWindow',
|
|
52
|
-
title: ( localize2(
|
|
52
|
+
title: ( localize2(4632, "Open Chat in New Window")),
|
|
53
53
|
category: CHAT_CATEGORY,
|
|
54
54
|
precondition: ChatContextKeys.enabled,
|
|
55
55
|
f1: true,
|
|
@@ -70,7 +70,7 @@ function registerMoveActions() {
|
|
|
70
70
|
constructor() {
|
|
71
71
|
super({
|
|
72
72
|
id: 'workbench.action.chat.openInSidebar',
|
|
73
|
-
title: ( localize2(
|
|
73
|
+
title: ( localize2(4633, "Open Chat in Side Bar")),
|
|
74
74
|
category: CHAT_CATEGORY,
|
|
75
75
|
precondition: ChatContextKeys.enabled,
|
|
76
76
|
f1: true
|
|
@@ -89,9 +89,9 @@ function registerMoveActions() {
|
|
|
89
89
|
});
|
|
90
90
|
}
|
|
91
91
|
[MenuId.EditorTitle, MenuId.CompactWindowEditorTitle].forEach(id => {
|
|
92
|
-
appendOpenChatInViewMenuItem(id, ( localize(
|
|
93
|
-
appendOpenChatInViewMenuItem(id, ( localize(
|
|
94
|
-
appendOpenChatInViewMenuItem(id, ( localize(
|
|
92
|
+
appendOpenChatInViewMenuItem(id, ( localize(4634, "Open Chat in Secondary Side Bar")), Codicon.layoutSidebarRightDock, ( ChatContextKeys.panelLocation.isEqualTo(ViewContainerLocation.AuxiliaryBar)));
|
|
93
|
+
appendOpenChatInViewMenuItem(id, ( localize(4635, "Open Chat in Primary Side Bar")), Codicon.layoutSidebarLeftDock, ( ChatContextKeys.panelLocation.isEqualTo(ViewContainerLocation.Sidebar)));
|
|
94
|
+
appendOpenChatInViewMenuItem(id, ( localize(4636, "Open Chat in Panel")), Codicon.layoutPanelDock, ( ChatContextKeys.panelLocation.isEqualTo(ViewContainerLocation.Panel)));
|
|
95
95
|
});
|
|
96
96
|
}
|
|
97
97
|
async function executeMoveToAction(accessor, moveTo, _sessionId) {
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { ASK_QUICK_QUESTION_ACTION_ID } from "@codingame/monaco-vscode-
|
|
1
|
+
export { ASK_QUICK_QUESTION_ACTION_ID } from "@codingame/monaco-vscode-eda30bac-0984-5b42-9362-c68996b85232-common/vscode/vs/workbench/contrib/chat/browser/actions/chatConstants";
|
|
2
2
|
export declare function registerQuickChatActions(): void;
|
|
@@ -5,11 +5,11 @@ import { Selection } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/
|
|
|
5
5
|
import { localize2, localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
6
6
|
import { registerAction2, Action2, MenuId } from '@codingame/monaco-vscode-api/vscode/vs/platform/actions/common/actions';
|
|
7
7
|
import { KeybindingWeight } from '@codingame/monaco-vscode-api/vscode/vs/platform/keybinding/common/keybindingsRegistry';
|
|
8
|
-
import { CHAT_CATEGORY } from '@codingame/monaco-vscode-
|
|
8
|
+
import { CHAT_CATEGORY } from '@codingame/monaco-vscode-c2deffc4-ad68-5e63-8f95-9b89e0fc6898-common/vscode/vs/workbench/contrib/chat/browser/actions/chatActions';
|
|
9
9
|
import { IQuickChatService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat.service';
|
|
10
10
|
import { ChatContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatContextKeys';
|
|
11
|
-
import { ASK_QUICK_QUESTION_ACTION_ID } from '@codingame/monaco-vscode-
|
|
12
|
-
export { ASK_QUICK_QUESTION_ACTION_ID } from '@codingame/monaco-vscode-
|
|
11
|
+
import { ASK_QUICK_QUESTION_ACTION_ID } from '@codingame/monaco-vscode-eda30bac-0984-5b42-9362-c68996b85232-common/vscode/vs/workbench/contrib/chat/browser/actions/chatConstants';
|
|
12
|
+
export { ASK_QUICK_QUESTION_ACTION_ID } from '@codingame/monaco-vscode-eda30bac-0984-5b42-9362-c68996b85232-common/vscode/vs/workbench/contrib/chat/browser/actions/chatConstants';
|
|
13
13
|
|
|
14
14
|
function registerQuickChatActions() {
|
|
15
15
|
registerAction2(QuickChatGlobalAction);
|
|
@@ -18,7 +18,7 @@ function registerQuickChatActions() {
|
|
|
18
18
|
constructor() {
|
|
19
19
|
super({
|
|
20
20
|
id: 'workbench.action.quickchat.openInChatView',
|
|
21
|
-
title: ( localize2(
|
|
21
|
+
title: ( localize2(4637, "Open in Chat View")),
|
|
22
22
|
f1: false,
|
|
23
23
|
category: CHAT_CATEGORY,
|
|
24
24
|
icon: Codicon.commentDiscussion,
|
|
@@ -38,7 +38,7 @@ function registerQuickChatActions() {
|
|
|
38
38
|
constructor() {
|
|
39
39
|
super({
|
|
40
40
|
id: 'workbench.action.quickchat.close',
|
|
41
|
-
title: ( localize2(
|
|
41
|
+
title: ( localize2(4638, "Close Quick Chat")),
|
|
42
42
|
f1: false,
|
|
43
43
|
category: CHAT_CATEGORY,
|
|
44
44
|
icon: Codicon.close,
|
|
@@ -59,7 +59,7 @@ class QuickChatGlobalAction extends Action2 {
|
|
|
59
59
|
constructor() {
|
|
60
60
|
super({
|
|
61
61
|
id: ASK_QUICK_QUESTION_ACTION_ID,
|
|
62
|
-
title: ( localize2(
|
|
62
|
+
title: ( localize2(4639, 'Quick Chat')),
|
|
63
63
|
precondition: ChatContextKeys.enabled,
|
|
64
64
|
icon: Codicon.commentDiscussion,
|
|
65
65
|
f1: false,
|
|
@@ -74,7 +74,7 @@ class QuickChatGlobalAction extends Action2 {
|
|
|
74
74
|
order: 4
|
|
75
75
|
},
|
|
76
76
|
metadata: {
|
|
77
|
-
description: ( localize(
|
|
77
|
+
description: ( localize(4640, 'Toggle the quick chat')),
|
|
78
78
|
args: [{
|
|
79
79
|
name: 'args',
|
|
80
80
|
schema: {
|
|
@@ -84,18 +84,18 @@ class QuickChatGlobalAction extends Action2 {
|
|
|
84
84
|
required: ['query'],
|
|
85
85
|
properties: {
|
|
86
86
|
query: {
|
|
87
|
-
description: ( localize(
|
|
87
|
+
description: ( localize(4641, "The query to open the quick chat with")),
|
|
88
88
|
type: 'string'
|
|
89
89
|
},
|
|
90
90
|
isPartialQuery: {
|
|
91
|
-
description: ( localize(
|
|
91
|
+
description: ( localize(4642, "Whether the query is partial; it will wait for more user input")),
|
|
92
92
|
type: 'boolean'
|
|
93
93
|
}
|
|
94
94
|
},
|
|
95
95
|
},
|
|
96
96
|
{
|
|
97
97
|
type: 'string',
|
|
98
|
-
description: ( localize(
|
|
98
|
+
description: ( localize(4641, "The query to open the quick chat with"))
|
|
99
99
|
}
|
|
100
100
|
]
|
|
101
101
|
}
|
|
@@ -125,7 +125,7 @@ class AskQuickChatAction extends Action2 {
|
|
|
125
125
|
super({
|
|
126
126
|
id: `workbench.action.openQuickChat`,
|
|
127
127
|
category: CHAT_CATEGORY,
|
|
128
|
-
title: ( localize2(
|
|
128
|
+
title: ( localize2(4643, "Open Quick Chat")),
|
|
129
129
|
precondition: ChatContextKeys.enabled,
|
|
130
130
|
f1: true
|
|
131
131
|
});
|
|
@@ -1,27 +1,34 @@
|
|
|
1
1
|
|
|
2
|
+
import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
|
|
3
|
+
import { $ } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/dom';
|
|
2
4
|
import { Codicon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/codicons';
|
|
3
5
|
import { KeyMod, KeyCode } from '@codingame/monaco-vscode-api/vscode/vs/base/common/keyCodes';
|
|
6
|
+
import { markAsSingleton } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
|
|
7
|
+
import { ThemeIcon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/themables';
|
|
4
8
|
import { localize2, localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
5
|
-
import {
|
|
9
|
+
import { IActionViewItemService } from '@codingame/monaco-vscode-api/vscode/vs/platform/actions/browser/actionViewItemService.service';
|
|
10
|
+
import { MenuEntryActionViewItem } from '@codingame/monaco-vscode-api/vscode/vs/platform/actions/browser/menuEntryActionViewItem';
|
|
11
|
+
import { Action2, MenuId, MenuItemAction, registerAction2 } from '@codingame/monaco-vscode-api/vscode/vs/platform/actions/common/actions';
|
|
6
12
|
import { ContextKeyExpr } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey';
|
|
7
13
|
import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
|
|
8
14
|
import { KeybindingWeight } from '@codingame/monaco-vscode-api/vscode/vs/platform/keybinding/common/keybindingsRegistry';
|
|
9
15
|
import { ITelemetryService } from '@codingame/monaco-vscode-api/vscode/vs/platform/telemetry/common/telemetry.service';
|
|
16
|
+
import { registerWorkbenchContribution2, WorkbenchPhase } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/contributions';
|
|
10
17
|
import { ChatContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatContextKeys';
|
|
11
|
-
import { isResponseVM } from '@codingame/monaco-vscode-
|
|
18
|
+
import { isResponseVM } from '@codingame/monaco-vscode-c2deffc4-ad68-5e63-8f95-9b89e0fc6898-common/vscode/vs/workbench/contrib/chat/common/chatViewModel';
|
|
12
19
|
import { ChatModeKind } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
|
|
13
20
|
import '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/languageModelToolsService';
|
|
14
21
|
import { IChatWidgetService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat.service';
|
|
15
|
-
import { ToolsScope } from '@codingame/monaco-vscode-
|
|
16
|
-
import { CHAT_CATEGORY } from '@codingame/monaco-vscode-
|
|
17
|
-
import { AcceptToolConfirmationActionId } from '@codingame/monaco-vscode-
|
|
22
|
+
import { ToolsScope } from '@codingame/monaco-vscode-e28ac690-06d5-5ee9-92d1-02df70296354-common/vscode/vs/workbench/contrib/chat/browser/chatSelectedTools';
|
|
23
|
+
import { CHAT_CATEGORY } from '@codingame/monaco-vscode-c2deffc4-ad68-5e63-8f95-9b89e0fc6898-common/vscode/vs/workbench/contrib/chat/browser/actions/chatActions';
|
|
24
|
+
import { AcceptToolConfirmationActionId } from '@codingame/monaco-vscode-eda30bac-0984-5b42-9362-c68996b85232-common/vscode/vs/workbench/contrib/chat/browser/actions/chatConstants';
|
|
18
25
|
import { showToolsPicker } from './chatToolPicker.js';
|
|
19
26
|
|
|
20
27
|
class AcceptToolConfirmation extends Action2 {
|
|
21
28
|
constructor() {
|
|
22
29
|
super({
|
|
23
30
|
id: AcceptToolConfirmationActionId,
|
|
24
|
-
title: ( localize2(
|
|
31
|
+
title: ( localize2(4654, "Accept")),
|
|
25
32
|
f1: false,
|
|
26
33
|
category: CHAT_CATEGORY,
|
|
27
34
|
keybinding: {
|
|
@@ -46,16 +53,17 @@ class AcceptToolConfirmation extends Action2 {
|
|
|
46
53
|
}
|
|
47
54
|
}
|
|
48
55
|
class ConfigureToolsAction extends Action2 {
|
|
56
|
+
static { this.ID = 'workbench.action.chat.configureTools'; }
|
|
49
57
|
constructor() {
|
|
50
58
|
super({
|
|
51
|
-
id:
|
|
52
|
-
title: ( localize(
|
|
59
|
+
id: ConfigureToolsAction.ID,
|
|
60
|
+
title: ( localize(4655, "Configure Tools...")),
|
|
53
61
|
icon: Codicon.tools,
|
|
54
62
|
f1: false,
|
|
55
63
|
category: CHAT_CATEGORY,
|
|
56
64
|
precondition: ( ChatContextKeys.chatModeKind.isEqualTo(ChatModeKind.Agent)),
|
|
57
65
|
menu: [{
|
|
58
|
-
when: ( ChatContextKeys.chatModeKind.isEqualTo(ChatModeKind.Agent)),
|
|
66
|
+
when: ( ContextKeyExpr.and(( ChatContextKeys.chatModeKind.isEqualTo(ChatModeKind.Agent)), ( ChatContextKeys.lockedToCodingAgent.negate()))),
|
|
59
67
|
id: MenuId.ChatExecute,
|
|
60
68
|
group: 'navigation',
|
|
61
69
|
order: 1,
|
|
@@ -84,22 +92,22 @@ class ConfigureToolsAction extends Action2 {
|
|
|
84
92
|
const { entriesScope, entriesMap } = widget.input.selectedToolsModel;
|
|
85
93
|
switch (entriesScope) {
|
|
86
94
|
case ToolsScope.Session:
|
|
87
|
-
placeholder = ( localize(
|
|
95
|
+
placeholder = ( localize(4656, "Select tools for this chat session"));
|
|
88
96
|
description = ( localize(
|
|
89
|
-
|
|
97
|
+
4657,
|
|
90
98
|
"The selected tools were configured by a prompt command and only apply to this chat session."
|
|
91
99
|
));
|
|
92
100
|
break;
|
|
93
101
|
case ToolsScope.Mode:
|
|
94
|
-
placeholder = ( localize(
|
|
102
|
+
placeholder = ( localize(4658, "Select tools for this chat mode"));
|
|
95
103
|
description = ( localize(
|
|
96
|
-
|
|
104
|
+
4659,
|
|
97
105
|
"The selected tools are configured by the '{0}' chat mode. Changes to the tools will be applied to the mode file as well.",
|
|
98
106
|
widget.input.currentModeObs.get().name
|
|
99
107
|
));
|
|
100
108
|
break;
|
|
101
109
|
case ToolsScope.Global:
|
|
102
|
-
placeholder = ( localize(
|
|
110
|
+
placeholder = ( localize(4660, "Select tools that are available to chat."));
|
|
103
111
|
description = undefined;
|
|
104
112
|
break;
|
|
105
113
|
}
|
|
@@ -116,9 +124,70 @@ class ConfigureToolsAction extends Action2 {
|
|
|
116
124
|
});
|
|
117
125
|
}
|
|
118
126
|
}
|
|
127
|
+
let ConfigureToolsActionRendering = class ConfigureToolsActionRendering {
|
|
128
|
+
static { this.ID = 'chat.configureToolsActionRendering'; }
|
|
129
|
+
constructor(actionViewItemService) {
|
|
130
|
+
const disposable = actionViewItemService.register(MenuId.ChatExecute, ConfigureToolsAction.ID, (action, _opts, instantiationService) => {
|
|
131
|
+
if (!(action instanceof MenuItemAction)) {
|
|
132
|
+
return undefined;
|
|
133
|
+
}
|
|
134
|
+
return instantiationService.createInstance(class extends MenuEntryActionViewItem {
|
|
135
|
+
render(container) {
|
|
136
|
+
super.render(container);
|
|
137
|
+
this.warningElement = $(`.tool-warning-indicator${ThemeIcon.asCSSSelector(Codicon.warning)}`);
|
|
138
|
+
this.warningElement.style.display = 'none';
|
|
139
|
+
container.appendChild(this.warningElement);
|
|
140
|
+
container.style.position = 'relative';
|
|
141
|
+
this.updateWarningState();
|
|
142
|
+
this._register(this._contextKeyService.onDidChangeContext(() => {
|
|
143
|
+
this.updateWarningState();
|
|
144
|
+
}));
|
|
145
|
+
}
|
|
146
|
+
updateWarningState() {
|
|
147
|
+
const wasShown = this.warningElement.style.display === 'block';
|
|
148
|
+
const shouldBeShown = this.isAboveToolLimit();
|
|
149
|
+
if (!wasShown && shouldBeShown) {
|
|
150
|
+
this.warningElement.style.display = 'block';
|
|
151
|
+
this.updateTooltip();
|
|
152
|
+
}
|
|
153
|
+
else if (wasShown && !shouldBeShown) {
|
|
154
|
+
this.warningElement.style.display = 'none';
|
|
155
|
+
this.updateTooltip();
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
getTooltip() {
|
|
159
|
+
if (this.isAboveToolLimit()) {
|
|
160
|
+
const warningMessage = ( localize(
|
|
161
|
+
4661,
|
|
162
|
+
'More than {0} tools are enabled, you may experience degraded tool calling.',
|
|
163
|
+
this._contextKeyService.getContextKeyValue(ChatContextKeys.chatToolGroupingThreshold.key)
|
|
164
|
+
));
|
|
165
|
+
return `${warningMessage}`;
|
|
166
|
+
}
|
|
167
|
+
return super.getTooltip();
|
|
168
|
+
}
|
|
169
|
+
isAboveToolLimit() {
|
|
170
|
+
const rawToolLimit = this._contextKeyService.getContextKeyValue(ChatContextKeys.chatToolGroupingThreshold.key);
|
|
171
|
+
const rawToolCount = this._contextKeyService.getContextKeyValue(ChatContextKeys.chatToolCount.key);
|
|
172
|
+
if (rawToolLimit === undefined || rawToolCount === undefined) {
|
|
173
|
+
return false;
|
|
174
|
+
}
|
|
175
|
+
const toolLimit = Number(rawToolLimit || 0);
|
|
176
|
+
const toolCount = Number(rawToolCount || 0);
|
|
177
|
+
return toolCount > toolLimit;
|
|
178
|
+
}
|
|
179
|
+
}, action, undefined);
|
|
180
|
+
});
|
|
181
|
+
markAsSingleton(disposable);
|
|
182
|
+
}
|
|
183
|
+
};
|
|
184
|
+
ConfigureToolsActionRendering = ( __decorate([
|
|
185
|
+
( __param(0, IActionViewItemService))
|
|
186
|
+
], ConfigureToolsActionRendering));
|
|
119
187
|
function registerChatToolActions() {
|
|
120
188
|
registerAction2(AcceptToolConfirmation);
|
|
121
189
|
registerAction2(ConfigureToolsAction);
|
|
190
|
+
registerWorkbenchContribution2(ConfigureToolsActionRendering.ID, ConfigureToolsActionRendering, WorkbenchPhase.BlockRestore);
|
|
122
191
|
}
|
|
123
192
|
|
|
124
193
|
export { registerChatToolActions };
|