@codingame/monaco-vscode-chat-service-override 20.5.0 → 21.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 +15 -7
- package/package.json +38 -36
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.js +60 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +56 -46
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatClearActions.js +18 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.js +52 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContext.js +28 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.js +19 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +15 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatSessionActions.d.ts +68 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatSessionActions.js +433 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +17 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.d.ts +7 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +205 -551
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.d.ts +7 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +52 -29
- package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +277 -163
- package/vscode/src/vs/workbench/contrib/chat/browser/chatAttachmentResolveService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +20 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js +17 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js +11 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.d.ts +4 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +32 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +22 -3
- 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 +22 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +6 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +47 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSessionStorage.js +12 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelChangeService.d.ts +8 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelChangeService.js +33 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelContentProviders.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTimeline.d.ts +3 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTimeline.js +74 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingModifiedNotebookSnapshot.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/simpleBrowserEditorOverlay.js +19 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditor.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditor.js +23 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/chatLayoutService.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatLayoutService.js +36 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +36 -35
- package/vscode/src/vs/workbench/contrib/chat/browser/chatPasteProviders.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatQuick.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatQuick.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatResponseAccessibleView.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions.contribution.d.ts +37 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions.contribution.js +238 -52
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup.d.ts +23 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup.js +257 -148
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus.js +126 -77
- package/vscode/src/vs/workbench/contrib/chat/browser/chatVariables.d.ts +2 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatVariables.js +3 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/chatViewPane.d.ts +4 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatViewPane.js +55 -45
- package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorContrib.js +6 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorHover.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelToolsService.d.ts +13 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelToolsService.js +130 -47
- package/vscode/src/vs/workbench/contrib/chat/browser/media/apple-dark.svg +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/media/apple-light.svg +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/media/chatEditingEditorOverlay.css +5 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/media/chatStatus.css +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/attachInstructionsAction.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/newPromptFileActions.js +39 -35
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptName.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptSourceFolder.js +18 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/promptFilePickers.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveToPromptAction.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/common/chatProgressTypes/chatToolInvocation.d.ts +5 -4
- package/vscode/src/vs/workbench/contrib/chat/common/chatProgressTypes/chatToolInvocation.js +7 -4
- package/vscode/src/vs/workbench/contrib/chat/common/chatServiceImpl.d.ts +4 -8
- package/vscode/src/vs/workbench/contrib/chat/common/chatServiceImpl.js +153 -168
- package/vscode/src/vs/workbench/contrib/chat/common/chatServiceTelemetry.d.ts +127 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatServiceTelemetry.js +111 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatSessionStore.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/common/chatTodoListService.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatTodoListService.js +6 -3
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/PromptHeaderDefinitionProvider.d.ts +20 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/PromptHeaderDefinitionProvider.js +66 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptBodyAutocompletion.d.ts +38 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptBodyAutocompletion.js +143 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +12 -3
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderDiagnosticsProvider.d.ts +8 -3
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderDiagnosticsProvider.js +41 -8
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderHovers.d.ts +4 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderHovers.js +55 -22
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptLinkDiagnosticsProvider.js +1 -1
- 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/metadata/applyTo.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/base/string.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/base/string.js +5 -2
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/mode.d.ts +3 -3
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/mode.js +3 -4
- 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/promptHeader.d.ts +0 -5
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/promptHeader.js +8 -23
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/topError.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptFileContributions.js +4 -5
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +11 -5
- package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.js +28 -28
- package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +1 -1
- package/vscode/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.js +54 -0
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.js +4 -4
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +33 -31
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatCurrentLine.js +9 -9
- package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.d.ts +1 -3
- package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.js +9 -13
- 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 -18
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatController.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatController.js +11 -4
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/alternativeRecommendation.d.ts +1 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/alternativeRecommendation.js +1 -6
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandLineAutoApprover.d.ts +16 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandLineAutoApprover.js +84 -25
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandSimplifier.d.ts +10 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandSimplifier.js +55 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.d.ts +8 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.js +15 -7
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.d.ts +23 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.js +72 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.d.ts +8 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.js +19 -9
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.d.ts +5 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.js +7 -5
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/outputHelpers.js +12 -8
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.d.ts +6 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +85 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.d.ts +35 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.js +448 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/subCommands.d.ts +0 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/subCommands.js +30 -77
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.d.ts +62 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.js +174 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +75 -10
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.d.ts +15 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.js +81 -38
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalLastCommandTool.d.ts +11 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalLastCommandTool.js +106 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/{getTerminalOutputTool.js → tools/getTerminalOutputTool.js} +5 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.d.ts +11 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.js +59 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.d.ts +57 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +452 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/types.d.ts +45 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/types.js +23 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/utils.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/utils.js +31 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/{runInTerminalTool.d.ts → tools/runInTerminalTool.d.ts} +11 -13
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/{runInTerminalTool.js → tools/runInTerminalTool.js} +282 -133
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/{task → tools/task}/createAndRunTaskTool.d.ts +5 -5
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/{task → tools/task}/createAndRunTaskTool.js +51 -50
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/{task → tools/task}/getTaskOutputTool.d.ts +6 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/getTaskOutputTool.js +117 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/{task → tools/task}/runTaskTool.d.ts +3 -5
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/{task → tools/task}/runTaskTool.js +54 -50
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.d.ts +19 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.js +36 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminal.chatAgentTools.d.ts +3 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminal.chatAgentTools.js +8 -0
- package/vscode/src/vs/base/common/policy.d.ts +0 -41
- package/vscode/src/vs/base/common/policy.js +0 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions.d.ts +0 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions.js +0 -738
- package/vscode/src/vs/workbench/contrib/chat/browser/media/chatSessions.css +0 -42
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptPathAutocompletion.d.ts +0 -67
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptPathAutocompletion.js +0 -167
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/base/enum.d.ts +0 -23
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/base/enum.js +0 -63
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/bufferOutputPolling.d.ts +0 -55
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/bufferOutputPolling.js +0 -163
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task/getTaskOutputTool.js +0 -88
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task/taskHelpers.d.ts +0 -35
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task/taskHelpers.js +0 -80
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task.chatAgentTools.contribution.d.ts +0 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task.chatAgentTools.contribution.js +0 -40
- /package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/{getTerminalOutputTool.d.ts → tools/getTerminalOutputTool.d.ts} +0 -0
|
@@ -20,6 +20,8 @@ import { ILabelService } from '@codingame/monaco-vscode-api/vscode/vs/platform/l
|
|
|
20
20
|
import { TerminalLocation } from '@codingame/monaco-vscode-api/vscode/vs/platform/terminal/common/terminal';
|
|
21
21
|
import { IEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service';
|
|
22
22
|
import { accessibleViewInCodeBlock } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration';
|
|
23
|
+
import { IAiEditTelemetryService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryService.service';
|
|
24
|
+
import { EditDeltaInfo } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/textModelEditSource';
|
|
23
25
|
import { reviewEdits } from '@codingame/monaco-vscode-a793b3ee-7ba9-5176-a019-30ec806fdd95-common/vscode/vs/workbench/contrib/inlineChat/browser/inlineChatController';
|
|
24
26
|
import { ITerminalService, ITerminalEditorService, ITerminalGroupService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/terminal/browser/terminal.service';
|
|
25
27
|
import { ChatContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatContextKeys';
|
|
@@ -81,7 +83,7 @@ let CodeBlockActionRendering = class CodeBlockActionRendering extends Disposable
|
|
|
81
83
|
const context = this._context;
|
|
82
84
|
if (isCodeBlockActionContext(context) && context.codemapperUri) {
|
|
83
85
|
const label = labelService.getUriLabel(context.codemapperUri, { relative: true });
|
|
84
|
-
return localize(
|
|
86
|
+
return localize(4593, "Apply to {0}", label);
|
|
85
87
|
}
|
|
86
88
|
return super.getTooltip();
|
|
87
89
|
}
|
|
@@ -104,7 +106,7 @@ function registerChatCodeBlockActions() {
|
|
|
104
106
|
constructor() {
|
|
105
107
|
super({
|
|
106
108
|
id: 'workbench.action.chat.copyCodeBlock',
|
|
107
|
-
title: ( localize2(
|
|
109
|
+
title: ( localize2(4594, "Copy")),
|
|
108
110
|
f1: false,
|
|
109
111
|
category: CHAT_CATEGORY,
|
|
110
112
|
icon: Codicon.copy,
|
|
@@ -121,6 +123,7 @@ function registerChatCodeBlockActions() {
|
|
|
121
123
|
return;
|
|
122
124
|
}
|
|
123
125
|
const clipboardService = accessor.get(IClipboardService);
|
|
126
|
+
const aiEditTelemetryService = accessor.get(IAiEditTelemetryService);
|
|
124
127
|
clipboardService.writeText(context.code);
|
|
125
128
|
if (isResponseVM(context.element)) {
|
|
126
129
|
const chatService = accessor.get(IChatService);
|
|
@@ -145,6 +148,18 @@ function registerChatCodeBlockActions() {
|
|
|
145
148
|
modelId: request?.modelId ?? ''
|
|
146
149
|
}
|
|
147
150
|
});
|
|
151
|
+
const codeBlockInfo = context.element.model.codeBlockInfos?.at(context.codeBlockIndex);
|
|
152
|
+
aiEditTelemetryService.handleCodeAccepted({
|
|
153
|
+
acceptanceMethod: 'copyButton',
|
|
154
|
+
suggestionId: codeBlockInfo?.suggestionId,
|
|
155
|
+
editDeltaInfo: EditDeltaInfo.fromText(context.code),
|
|
156
|
+
feature: 'sideBarChat',
|
|
157
|
+
languageId: context.languageId,
|
|
158
|
+
modeId: context.element.model.request?.modeInfo?.modeId,
|
|
159
|
+
modelId: request?.modelId,
|
|
160
|
+
presentation: 'codeBlock',
|
|
161
|
+
applyCodeBlockSuggestionId: undefined,
|
|
162
|
+
});
|
|
148
163
|
}
|
|
149
164
|
}
|
|
150
165
|
});
|
|
@@ -167,6 +182,7 @@ function registerChatCodeBlockActions() {
|
|
|
167
182
|
editor.getSelections()?.reduce((acc, selection) => acc + editorModel.getValueInRange(selection), '') ?? '';
|
|
168
183
|
const totalCharacters = editorModel.getValueLength();
|
|
169
184
|
const chatService = accessor.get(IChatService);
|
|
185
|
+
const aiEditTelemetryService = accessor.get(IAiEditTelemetryService);
|
|
170
186
|
const element = context.element;
|
|
171
187
|
if (isResponseVM(element)) {
|
|
172
188
|
const requestId = element.requestId;
|
|
@@ -190,6 +206,18 @@ function registerChatCodeBlockActions() {
|
|
|
190
206
|
modelId: request?.modelId ?? ''
|
|
191
207
|
}
|
|
192
208
|
});
|
|
209
|
+
const codeBlockInfo = element.model.codeBlockInfos?.at(context.codeBlockIndex);
|
|
210
|
+
aiEditTelemetryService.handleCodeAccepted({
|
|
211
|
+
acceptanceMethod: 'copyManual',
|
|
212
|
+
suggestionId: codeBlockInfo?.suggestionId,
|
|
213
|
+
editDeltaInfo: EditDeltaInfo.fromText(copiedText),
|
|
214
|
+
feature: 'sideBarChat',
|
|
215
|
+
languageId: context.languageId,
|
|
216
|
+
modeId: element.model.request?.modeInfo?.modeId,
|
|
217
|
+
modelId: request?.modelId,
|
|
218
|
+
presentation: 'codeBlock',
|
|
219
|
+
applyCodeBlockSuggestionId: undefined,
|
|
220
|
+
});
|
|
193
221
|
}
|
|
194
222
|
if (noSelection) {
|
|
195
223
|
accessor.get(IClipboardService).writeText(context.code);
|
|
@@ -201,7 +229,7 @@ function registerChatCodeBlockActions() {
|
|
|
201
229
|
constructor() {
|
|
202
230
|
super({
|
|
203
231
|
id: APPLY_IN_EDITOR_ID,
|
|
204
|
-
title: ( localize2(
|
|
232
|
+
title: ( localize2(4595, "Apply in Editor")),
|
|
205
233
|
precondition: ChatContextKeys.enabled,
|
|
206
234
|
f1: true,
|
|
207
235
|
category: CHAT_CATEGORY,
|
|
@@ -237,7 +265,7 @@ function registerChatCodeBlockActions() {
|
|
|
237
265
|
constructor() {
|
|
238
266
|
super({
|
|
239
267
|
id: 'workbench.action.chat.insertCodeBlock',
|
|
240
|
-
title: ( localize2(
|
|
268
|
+
title: ( localize2(4596, "Insert At Cursor")),
|
|
241
269
|
precondition: ChatContextKeys.enabled,
|
|
242
270
|
f1: true,
|
|
243
271
|
category: CHAT_CATEGORY,
|
|
@@ -271,7 +299,7 @@ function registerChatCodeBlockActions() {
|
|
|
271
299
|
constructor() {
|
|
272
300
|
super({
|
|
273
301
|
id: 'workbench.action.chat.insertIntoNewFile',
|
|
274
|
-
title: ( localize2(
|
|
302
|
+
title: ( localize2(4597, "Insert into New File")),
|
|
275
303
|
precondition: ChatContextKeys.enabled,
|
|
276
304
|
f1: true,
|
|
277
305
|
category: CHAT_CATEGORY,
|
|
@@ -290,6 +318,7 @@ function registerChatCodeBlockActions() {
|
|
|
290
318
|
}
|
|
291
319
|
const editorService = accessor.get(IEditorService);
|
|
292
320
|
const chatService = accessor.get(IChatService);
|
|
321
|
+
const aiEditTelemetryService = accessor.get(IAiEditTelemetryService);
|
|
293
322
|
editorService.openEditor({ contents: context.code, languageId: context.languageId, resource: undefined });
|
|
294
323
|
if (isResponseVM(context.element)) {
|
|
295
324
|
const requestId = context.element.requestId;
|
|
@@ -310,6 +339,18 @@ function registerChatCodeBlockActions() {
|
|
|
310
339
|
modelId: request?.modelId ?? ''
|
|
311
340
|
}
|
|
312
341
|
});
|
|
342
|
+
const codeBlockInfo = context.element.model.codeBlockInfos?.at(context.codeBlockIndex);
|
|
343
|
+
aiEditTelemetryService.handleCodeAccepted({
|
|
344
|
+
acceptanceMethod: 'insertInNewFile',
|
|
345
|
+
suggestionId: codeBlockInfo?.suggestionId,
|
|
346
|
+
editDeltaInfo: EditDeltaInfo.fromText(context.code),
|
|
347
|
+
feature: 'sideBarChat',
|
|
348
|
+
languageId: context.languageId,
|
|
349
|
+
modeId: context.element.model.request?.modeInfo?.modeId,
|
|
350
|
+
modelId: request?.modelId,
|
|
351
|
+
presentation: 'codeBlock',
|
|
352
|
+
applyCodeBlockSuggestionId: undefined,
|
|
353
|
+
});
|
|
313
354
|
}
|
|
314
355
|
}
|
|
315
356
|
});
|
|
@@ -317,7 +358,7 @@ function registerChatCodeBlockActions() {
|
|
|
317
358
|
constructor() {
|
|
318
359
|
super({
|
|
319
360
|
id: 'workbench.action.chat.runInTerminal',
|
|
320
|
-
title: ( localize2(
|
|
361
|
+
title: ( localize2(4598, "Insert into Terminal")),
|
|
321
362
|
precondition: ChatContextKeys.enabled,
|
|
322
363
|
f1: true,
|
|
323
364
|
category: CHAT_CATEGORY,
|
|
@@ -411,7 +452,7 @@ function registerChatCodeBlockActions() {
|
|
|
411
452
|
constructor() {
|
|
412
453
|
super({
|
|
413
454
|
id: 'workbench.action.chat.nextCodeBlock',
|
|
414
|
-
title: ( localize2(
|
|
455
|
+
title: ( localize2(4599, "Next Code Block")),
|
|
415
456
|
keybinding: {
|
|
416
457
|
primary: KeyMod.CtrlCmd | KeyMod.Alt | KeyCode.PageDown,
|
|
417
458
|
mac: { primary: KeyMod.CtrlCmd | KeyMod.Alt | KeyCode.PageDown, },
|
|
@@ -431,7 +472,7 @@ function registerChatCodeBlockActions() {
|
|
|
431
472
|
constructor() {
|
|
432
473
|
super({
|
|
433
474
|
id: 'workbench.action.chat.previousCodeBlock',
|
|
434
|
-
title: ( localize2(
|
|
475
|
+
title: ( localize2(4600, "Previous Code Block")),
|
|
435
476
|
keybinding: {
|
|
436
477
|
primary: KeyMod.CtrlCmd | KeyMod.Alt | KeyCode.PageUp,
|
|
437
478
|
mac: { primary: KeyMod.CtrlCmd | KeyMod.Alt | KeyCode.PageUp, },
|
|
@@ -490,7 +531,7 @@ function registerChatCodeCompareBlockActions() {
|
|
|
490
531
|
constructor() {
|
|
491
532
|
super({
|
|
492
533
|
id: 'workbench.action.chat.applyCompareEdits',
|
|
493
|
-
title: ( localize2(
|
|
534
|
+
title: ( localize2(4601, "Apply Edits")),
|
|
494
535
|
f1: false,
|
|
495
536
|
category: CHAT_CATEGORY,
|
|
496
537
|
icon: Codicon.gitPullRequestGoToChanges,
|
|
@@ -521,7 +562,7 @@ function registerChatCodeCompareBlockActions() {
|
|
|
521
562
|
const editorToApply = await editorService.openCodeEditor({ resource: item.uri }, null);
|
|
522
563
|
if (editorToApply) {
|
|
523
564
|
editorToApply.revealLineInCenterIfOutsideViewport(firstEdit.range.startLineNumber);
|
|
524
|
-
instaService.invokeFunction(reviewEdits, editorToApply, textEdits, CancellationToken.None);
|
|
565
|
+
instaService.invokeFunction(reviewEdits, editorToApply, textEdits, CancellationToken.None, undefined);
|
|
525
566
|
response.setEditApplied(item, 1);
|
|
526
567
|
return true;
|
|
527
568
|
}
|
|
@@ -532,7 +573,7 @@ function registerChatCodeCompareBlockActions() {
|
|
|
532
573
|
constructor() {
|
|
533
574
|
super({
|
|
534
575
|
id: 'workbench.action.chat.discardCompareEdits',
|
|
535
|
-
title: ( localize2(
|
|
576
|
+
title: ( localize2(4602, "Discard Edits")),
|
|
536
577
|
f1: false,
|
|
537
578
|
category: CHAT_CATEGORY,
|
|
538
579
|
icon: Codicon.trash,
|
|
@@ -45,28 +45,30 @@ ChatContextContributions = ( __decorate([
|
|
|
45
45
|
class ToolsContextPickerPick {
|
|
46
46
|
constructor() {
|
|
47
47
|
this.type = 'pickerPick';
|
|
48
|
-
this.label = ( localize(
|
|
48
|
+
this.label = ( localize(4603, 'Tools...'));
|
|
49
49
|
this.icon = Codicon.tools;
|
|
50
50
|
this.ordinal = -500;
|
|
51
51
|
}
|
|
52
52
|
asPicker(widget) {
|
|
53
53
|
const items = [];
|
|
54
|
-
for (const entry of widget.input.selectedToolsModel.
|
|
55
|
-
if (
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
54
|
+
for (const [entry, enabled] of widget.input.selectedToolsModel.entriesMap.get()) {
|
|
55
|
+
if (enabled) {
|
|
56
|
+
if (entry instanceof ToolSet) {
|
|
57
|
+
items.push({
|
|
58
|
+
toolInfo: ToolDataSource.classify(entry.source),
|
|
59
|
+
label: entry.referenceName,
|
|
60
|
+
description: entry.description,
|
|
61
|
+
asAttachment: () => this._asToolSetAttachment(entry)
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
else {
|
|
65
|
+
items.push({
|
|
66
|
+
toolInfo: ToolDataSource.classify(entry.source),
|
|
67
|
+
label: entry.toolReferenceName ?? entry.displayName,
|
|
68
|
+
description: entry.userDescription ?? entry.modelDescription,
|
|
69
|
+
asAttachment: () => this._asToolAttachment(entry)
|
|
70
|
+
});
|
|
71
|
+
}
|
|
70
72
|
}
|
|
71
73
|
}
|
|
72
74
|
items.sort((a, b) => {
|
|
@@ -89,7 +91,7 @@ class ToolsContextPickerPick {
|
|
|
89
91
|
picks.push(item);
|
|
90
92
|
}
|
|
91
93
|
return {
|
|
92
|
-
placeholder: ( localize(
|
|
94
|
+
placeholder: ( localize(4604, 'Select a tool')),
|
|
93
95
|
picks: Promise.resolve(picks)
|
|
94
96
|
};
|
|
95
97
|
}
|
|
@@ -117,7 +119,7 @@ let OpenEditorContextValuePick = class OpenEditorContextValuePick {
|
|
|
117
119
|
this._editorService = _editorService;
|
|
118
120
|
this._labelService = _labelService;
|
|
119
121
|
this.type = 'valuePick';
|
|
120
|
-
this.label = ( localize(
|
|
122
|
+
this.label = ( localize(4605, 'Open Editors'));
|
|
121
123
|
this.icon = Codicon.file;
|
|
122
124
|
this.ordinal = 800;
|
|
123
125
|
}
|
|
@@ -153,7 +155,7 @@ let RelatedFilesContextPickerPick = class RelatedFilesContextPickerPick {
|
|
|
153
155
|
this._chatEditingService = _chatEditingService;
|
|
154
156
|
this._labelService = _labelService;
|
|
155
157
|
this.type = 'pickerPick';
|
|
156
|
-
this.label = ( localize(
|
|
158
|
+
this.label = ( localize(4606, 'Related Files'));
|
|
157
159
|
this.icon = Codicon.sparkle;
|
|
158
160
|
this.ordinal = 300;
|
|
159
161
|
}
|
|
@@ -195,7 +197,7 @@ let RelatedFilesContextPickerPick = class RelatedFilesContextPickerPick {
|
|
|
195
197
|
}, []));
|
|
196
198
|
})();
|
|
197
199
|
return {
|
|
198
|
-
placeholder: ( localize(
|
|
200
|
+
placeholder: ( localize(4607, 'Add related files to your working set')),
|
|
199
201
|
picks,
|
|
200
202
|
};
|
|
201
203
|
}
|
|
@@ -208,7 +210,7 @@ let ClipboardImageContextValuePick = class ClipboardImageContextValuePick {
|
|
|
208
210
|
constructor(_clipboardService) {
|
|
209
211
|
this._clipboardService = _clipboardService;
|
|
210
212
|
this.type = 'valuePick';
|
|
211
|
-
this.label = ( localize(
|
|
213
|
+
this.label = ( localize(4608, 'Image from Clipboard'));
|
|
212
214
|
this.icon = Codicon.fileMedia;
|
|
213
215
|
}
|
|
214
216
|
async isEnabled(widget) {
|
|
@@ -222,8 +224,8 @@ let ClipboardImageContextValuePick = class ClipboardImageContextValuePick {
|
|
|
222
224
|
const fileBuffer = await this._clipboardService.readImage();
|
|
223
225
|
return {
|
|
224
226
|
id: await imageToHash(fileBuffer),
|
|
225
|
-
name: ( localize(
|
|
226
|
-
fullName: ( localize(
|
|
227
|
+
name: ( localize(4609, 'Pasted Image')),
|
|
228
|
+
fullName: ( localize(4609, 'Pasted Image')),
|
|
227
229
|
value: fileBuffer,
|
|
228
230
|
kind: 'image',
|
|
229
231
|
};
|
|
@@ -238,8 +240,8 @@ let ScreenshotContextValuePick = class ScreenshotContextValuePick {
|
|
|
238
240
|
this.type = 'valuePick';
|
|
239
241
|
this.icon = Codicon.deviceCamera;
|
|
240
242
|
this.label = (isElectron
|
|
241
|
-
? ( localize(
|
|
242
|
-
: ( localize(
|
|
243
|
+
? ( localize(4610, 'Screenshot Window'))
|
|
244
|
+
: ( localize(4611, 'Screenshot')));
|
|
243
245
|
}
|
|
244
246
|
async isEnabled(widget) {
|
|
245
247
|
return !!widget.input.selectedLanguageModel?.metadata.capabilities?.vision;
|
|
@@ -10,6 +10,7 @@ import { ThemeIcon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/th
|
|
|
10
10
|
import { isObject } from '@codingame/monaco-vscode-api/vscode/vs/base/common/types';
|
|
11
11
|
import { URI } from '@codingame/monaco-vscode-api/vscode/vs/base/common/uri';
|
|
12
12
|
import { Range } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/core/range';
|
|
13
|
+
import { EditorContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/editorContextKeys';
|
|
13
14
|
import { ITextModelService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/services/resolverService.service';
|
|
14
15
|
import { AbstractGotoSymbolQuickAccessProvider } from '@codingame/monaco-vscode-eda30bac-0984-5b42-9362-c68996b85232-common/vscode/vs/editor/contrib/quickAccess/browser/gotoSymbolQuickAccess';
|
|
15
16
|
import { localize2, localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
@@ -24,7 +25,7 @@ import { KeybindingWeight } from '@codingame/monaco-vscode-api/vscode/vs/platfor
|
|
|
24
25
|
import { IListService } from '@codingame/monaco-vscode-api/vscode/vs/platform/list/browser/listService.service';
|
|
25
26
|
import { ILogService } from '@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service';
|
|
26
27
|
import { IQuickInputService } from '@codingame/monaco-vscode-api/vscode/vs/platform/quickinput/common/quickInput.service';
|
|
27
|
-
import { resolveCommandsContext } from '@codingame/monaco-vscode-
|
|
28
|
+
import { resolveCommandsContext } from '@codingame/monaco-vscode-5e2c24a1-3217-55e8-bc90-521eaf7df5a6-common/vscode/vs/workbench/browser/parts/editor/editorCommandsContext';
|
|
28
29
|
import { ResourceContextKey } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/contextkeys';
|
|
29
30
|
import { isEditorCommandsContext, EditorResourceAccessor, SideBySideEditor } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/editor';
|
|
30
31
|
import { IEditorGroupsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorGroupsService.service';
|
|
@@ -34,7 +35,7 @@ import { ExplorerFolderContext } from '@codingame/monaco-vscode-f24e325c-2ce0-5b
|
|
|
34
35
|
import { AnythingQuickAccessProvider } from '@codingame/monaco-vscode-64322fa2-7385-5f46-935b-8f243d98004b-common/vscode/vs/workbench/contrib/search/browser/anythingQuickAccess';
|
|
35
36
|
import { isSearchTreeFileMatch, isSearchTreeMatch } from '@codingame/monaco-vscode-85f7fb0f-70f5-5a5e-831b-15c743a8bd11-common/vscode/vs/workbench/contrib/search/browser/searchTreeModel/searchTreeCommon';
|
|
36
37
|
import { SymbolsQuickAccessProvider } from '@codingame/monaco-vscode-bc8c28cd-7a80-54a9-af1a-e6b1e7a7f34a-common/vscode/vs/workbench/contrib/search/browser/symbolsQuickAccess';
|
|
37
|
-
import { SearchContext } from '@codingame/monaco-vscode-
|
|
38
|
+
import { SearchContext } from '@codingame/monaco-vscode-4dda7789-5a25-5e8b-b2de-c2f11b1b96e5-common/vscode/vs/workbench/contrib/search/common/constants';
|
|
38
39
|
import { ChatContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatContextKeys';
|
|
39
40
|
import { OmittedState } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatVariableEntries';
|
|
40
41
|
import { ChatAgentLocation } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
|
|
@@ -60,10 +61,11 @@ function registerChatContextActions() {
|
|
|
60
61
|
async function withChatView(accessor) {
|
|
61
62
|
const viewsService = accessor.get(IViewsService);
|
|
62
63
|
const chatWidgetService = accessor.get(IChatWidgetService);
|
|
63
|
-
|
|
64
|
-
|
|
64
|
+
const lastFocusedWidget = chatWidgetService.lastFocusedWidget;
|
|
65
|
+
if (!lastFocusedWidget || lastFocusedWidget.location === ChatAgentLocation.Panel) {
|
|
66
|
+
return showChatView(viewsService);
|
|
65
67
|
}
|
|
66
|
-
return
|
|
68
|
+
return lastFocusedWidget;
|
|
67
69
|
}
|
|
68
70
|
class AttachResourceAction extends Action2 {
|
|
69
71
|
async run(accessor, ...args) {
|
|
@@ -113,7 +115,7 @@ class AttachFileToChatAction extends AttachResourceAction {
|
|
|
113
115
|
constructor() {
|
|
114
116
|
super({
|
|
115
117
|
id: AttachFileToChatAction.ID,
|
|
116
|
-
title: ( localize2(
|
|
118
|
+
title: ( localize2(4612, "Add File to Chat")),
|
|
117
119
|
category: CHAT_CATEGORY,
|
|
118
120
|
precondition: ChatContextKeys.enabled,
|
|
119
121
|
f1: true,
|
|
@@ -162,7 +164,7 @@ class AttachFolderToChatAction extends AttachResourceAction {
|
|
|
162
164
|
constructor() {
|
|
163
165
|
super({
|
|
164
166
|
id: AttachFolderToChatAction.ID,
|
|
165
|
-
title: ( localize2(
|
|
167
|
+
title: ( localize2(4613, "Add Folder to Chat")),
|
|
166
168
|
category: CHAT_CATEGORY,
|
|
167
169
|
f1: false,
|
|
168
170
|
menu: {
|
|
@@ -191,7 +193,7 @@ class AttachSelectionToChatAction extends Action2 {
|
|
|
191
193
|
constructor() {
|
|
192
194
|
super({
|
|
193
195
|
id: AttachSelectionToChatAction.ID,
|
|
194
|
-
title: ( localize2(
|
|
196
|
+
title: ( localize2(4614, "Add Selection to Chat")),
|
|
195
197
|
category: CHAT_CATEGORY,
|
|
196
198
|
f1: true,
|
|
197
199
|
precondition: ChatContextKeys.enabled,
|
|
@@ -199,7 +201,11 @@ class AttachSelectionToChatAction extends Action2 {
|
|
|
199
201
|
id: MenuId.EditorContext,
|
|
200
202
|
group: '1_chat',
|
|
201
203
|
order: 1,
|
|
202
|
-
when: ( ContextKeyExpr.and(
|
|
204
|
+
when: ( ContextKeyExpr.and(
|
|
205
|
+
ChatContextKeys.enabled,
|
|
206
|
+
EditorContextKeys.hasNonEmptySelection,
|
|
207
|
+
( ContextKeyExpr.or(( ResourceContextKey.Scheme.isEqualTo(Schemas.file)), ( ResourceContextKey.Scheme.isEqualTo(Schemas.vscodeRemote)), ( ResourceContextKey.Scheme.isEqualTo(Schemas.untitled)), ( ResourceContextKey.Scheme.isEqualTo(Schemas.vscodeUserData))))
|
|
208
|
+
))
|
|
203
209
|
}
|
|
204
210
|
});
|
|
205
211
|
}
|
|
@@ -252,7 +258,7 @@ class AttachSearchResultAction extends Action2 {
|
|
|
252
258
|
constructor() {
|
|
253
259
|
super({
|
|
254
260
|
id: 'workbench.action.chat.insertSearchResults',
|
|
255
|
-
title: ( localize2(
|
|
261
|
+
title: ( localize2(4615, 'Add Search Results to Chat')),
|
|
256
262
|
category: CHAT_CATEGORY,
|
|
257
263
|
f1: false,
|
|
258
264
|
menu: [{
|
|
@@ -318,7 +324,7 @@ class AttachContextAction extends Action2 {
|
|
|
318
324
|
constructor() {
|
|
319
325
|
super({
|
|
320
326
|
id: 'workbench.action.chat.attachContext',
|
|
321
|
-
title: ( localize2(
|
|
327
|
+
title: ( localize2(4616, "Add Context...")),
|
|
322
328
|
icon: Codicon.attach,
|
|
323
329
|
category: CHAT_CATEGORY,
|
|
324
330
|
keybinding: {
|
|
@@ -395,7 +401,7 @@ class AttachContextAction extends Action2 {
|
|
|
395
401
|
SymbolsQuickAccessProvider.PREFIX,
|
|
396
402
|
AbstractGotoSymbolQuickAccessProvider.PREFIX
|
|
397
403
|
],
|
|
398
|
-
placeholder: placeholder ?? ( localize(
|
|
404
|
+
placeholder: placeholder ?? ( localize(4617, 'Search attachments')),
|
|
399
405
|
providerOptions,
|
|
400
406
|
});
|
|
401
407
|
}
|
|
@@ -463,7 +469,7 @@ class AttachContextAction extends Action2 {
|
|
|
463
469
|
const pickerConfig = item.asPicker(widget);
|
|
464
470
|
const store = ( new DisposableStore());
|
|
465
471
|
const goBackItem = {
|
|
466
|
-
label: ( localize(
|
|
472
|
+
label: ( localize(4618, 'Go back ↩')),
|
|
467
473
|
alwaysShow: true
|
|
468
474
|
};
|
|
469
475
|
const configureItem = pickerConfig.configure ? {
|
|
@@ -13,7 +13,7 @@ function registerChatCopyActions() {
|
|
|
13
13
|
constructor() {
|
|
14
14
|
super({
|
|
15
15
|
id: 'workbench.action.chat.copyAll',
|
|
16
|
-
title: ( localize2(
|
|
16
|
+
title: ( localize2(4619, "Copy All")),
|
|
17
17
|
f1: false,
|
|
18
18
|
category: CHAT_CATEGORY,
|
|
19
19
|
menu: {
|
|
@@ -43,7 +43,7 @@ function registerChatCopyActions() {
|
|
|
43
43
|
constructor() {
|
|
44
44
|
super({
|
|
45
45
|
id: 'workbench.action.chat.copyItem',
|
|
46
|
-
title: ( localize2(
|
|
46
|
+
title: ( localize2(4620, "Copy")),
|
|
47
47
|
f1: false,
|
|
48
48
|
category: CHAT_CATEGORY,
|
|
49
49
|
menu: {
|
|
@@ -16,7 +16,7 @@ class LogChatInputHistoryAction extends Action2 {
|
|
|
16
16
|
constructor() {
|
|
17
17
|
super({
|
|
18
18
|
id: LogChatInputHistoryAction.ID,
|
|
19
|
-
title: ( localize2(
|
|
19
|
+
title: ( localize2(4621, "Log Chat Input History")),
|
|
20
20
|
icon: Codicon.attach,
|
|
21
21
|
category: Categories.Developer,
|
|
22
22
|
f1: true,
|
|
@@ -33,7 +33,7 @@ class LogChatIndexAction extends Action2 {
|
|
|
33
33
|
constructor() {
|
|
34
34
|
super({
|
|
35
35
|
id: LogChatIndexAction.ID,
|
|
36
|
-
title: ( localize2(
|
|
36
|
+
title: ( localize2(4622, "Log Chat Index")),
|
|
37
37
|
icon: Codicon.attach,
|
|
38
38
|
category: Categories.Developer,
|
|
39
39
|
f1: true,
|
|
@@ -13,7 +13,7 @@ function registerChatFileTreeActions() {
|
|
|
13
13
|
constructor() {
|
|
14
14
|
super({
|
|
15
15
|
id: 'workbench.action.chat.nextFileTree',
|
|
16
|
-
title: ( localize2(
|
|
16
|
+
title: ( localize2(4654, "Next File Tree")),
|
|
17
17
|
keybinding: {
|
|
18
18
|
primary: KeyMod.CtrlCmd | KeyCode.F9,
|
|
19
19
|
weight: KeybindingWeight.WorkbenchContrib,
|
|
@@ -32,7 +32,7 @@ function registerChatFileTreeActions() {
|
|
|
32
32
|
constructor() {
|
|
33
33
|
super({
|
|
34
34
|
id: 'workbench.action.chat.previousFileTree',
|
|
35
|
-
title: ( localize2(
|
|
35
|
+
title: ( localize2(4655, "Previous File Tree")),
|
|
36
36
|
keybinding: {
|
|
37
37
|
primary: KeyMod.CtrlCmd | KeyMod.Shift | KeyCode.F9,
|
|
38
38
|
weight: KeybindingWeight.WorkbenchContrib,
|
|
@@ -14,19 +14,19 @@ import { IChatService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/c
|
|
|
14
14
|
import { IEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service';
|
|
15
15
|
|
|
16
16
|
const defaultFileName = 'chat.json';
|
|
17
|
-
const filters = [{ name: ( localize(
|
|
17
|
+
const filters = [{ name: ( localize(4656, "Chat Session")), extensions: ['json'] }];
|
|
18
18
|
function registerChatExportActions() {
|
|
19
19
|
registerAction2(class ExportChatAction extends Action2 {
|
|
20
20
|
constructor() {
|
|
21
21
|
super({
|
|
22
22
|
id: 'workbench.action.chat.export',
|
|
23
23
|
category: CHAT_CATEGORY,
|
|
24
|
-
title: ( localize2(
|
|
24
|
+
title: ( localize2(4657, "Export Chat...")),
|
|
25
25
|
precondition: ChatContextKeys.enabled,
|
|
26
26
|
f1: true,
|
|
27
27
|
});
|
|
28
28
|
}
|
|
29
|
-
async run(accessor,
|
|
29
|
+
async run(accessor, outputPath) {
|
|
30
30
|
const widgetService = accessor.get(IChatWidgetService);
|
|
31
31
|
const fileDialogService = accessor.get(IFileDialogService);
|
|
32
32
|
const fileService = accessor.get(IFileService);
|
|
@@ -35,27 +35,30 @@ function registerChatExportActions() {
|
|
|
35
35
|
if (!widget || !widget.viewModel) {
|
|
36
36
|
return;
|
|
37
37
|
}
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
38
|
+
if (!outputPath) {
|
|
39
|
+
const defaultUri = joinPath(await fileDialogService.defaultFilePath(), defaultFileName);
|
|
40
|
+
const result = await fileDialogService.showSaveDialog({
|
|
41
|
+
defaultUri,
|
|
42
|
+
filters
|
|
43
|
+
});
|
|
44
|
+
if (!result) {
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
outputPath = result;
|
|
45
48
|
}
|
|
46
49
|
const model = chatService.getSession(widget.viewModel.sessionId);
|
|
47
50
|
if (!model) {
|
|
48
51
|
return;
|
|
49
52
|
}
|
|
50
53
|
const content = VSBuffer.fromString(JSON.stringify(model.toExport(), undefined, 2));
|
|
51
|
-
await fileService.writeFile(
|
|
54
|
+
await fileService.writeFile(outputPath, content);
|
|
52
55
|
}
|
|
53
56
|
});
|
|
54
57
|
registerAction2(class ImportChatAction extends Action2 {
|
|
55
58
|
constructor() {
|
|
56
59
|
super({
|
|
57
60
|
id: 'workbench.action.chat.import',
|
|
58
|
-
title: ( localize2(
|
|
61
|
+
title: ( localize2(4658, "Import Chat...")),
|
|
59
62
|
category: CHAT_CATEGORY,
|
|
60
63
|
precondition: ChatContextKeys.enabled,
|
|
61
64
|
f1: true,
|
|
@@ -20,7 +20,7 @@ class ManageLanguageModelAuthenticationAction extends Action2 {
|
|
|
20
20
|
constructor() {
|
|
21
21
|
super({
|
|
22
22
|
id: ManageLanguageModelAuthenticationAction.ID,
|
|
23
|
-
title: ( localize2(
|
|
23
|
+
title: ( localize2(4659, 'Manage Language Model Access...')),
|
|
24
24
|
category: CHAT_CATEGORY,
|
|
25
25
|
precondition: ChatContextKeys.enabled,
|
|
26
26
|
menu: [{
|
|
@@ -91,9 +91,9 @@ class ManageLanguageModelAuthenticationAction extends Action2 {
|
|
|
91
91
|
if (extensionAuth.size === 0) {
|
|
92
92
|
dialogService.prompt({
|
|
93
93
|
type: 'info',
|
|
94
|
-
message: ( localize(
|
|
94
|
+
message: ( localize(4660, 'No language models requiring authentication found.')),
|
|
95
95
|
detail: ( localize(
|
|
96
|
-
|
|
96
|
+
4661,
|
|
97
97
|
'There are currently no language models that require authentication.'
|
|
98
98
|
))
|
|
99
99
|
});
|
|
@@ -108,10 +108,10 @@ class ManageLanguageModelAuthenticationAction extends Action2 {
|
|
|
108
108
|
items.push({
|
|
109
109
|
type: 'separator',
|
|
110
110
|
id: ownerId,
|
|
111
|
-
label: ( localize(
|
|
111
|
+
label: ( localize(4662, '{0}', extension.displayName || extension.name)),
|
|
112
112
|
buttons: [{
|
|
113
113
|
iconClass: ThemeIcon.asClassName(Codicon.info),
|
|
114
|
-
tooltip: ( localize(
|
|
114
|
+
tooltip: ( localize(4663, 'Open Extension')),
|
|
115
115
|
}]
|
|
116
116
|
});
|
|
117
117
|
let addedTrustedSeparator = false;
|
|
@@ -120,7 +120,7 @@ class ManageLanguageModelAuthenticationAction extends Action2 {
|
|
|
120
120
|
if (allowedExt.trusted && !addedTrustedSeparator) {
|
|
121
121
|
items.push({
|
|
122
122
|
type: 'separator',
|
|
123
|
-
label: ( localize(
|
|
123
|
+
label: ( localize(4664, 'Trusted by Microsoft')),
|
|
124
124
|
});
|
|
125
125
|
addedTrustedSeparator = true;
|
|
126
126
|
}
|
|
@@ -133,16 +133,16 @@ class ManageLanguageModelAuthenticationAction extends Action2 {
|
|
|
133
133
|
disabled: allowedExt.trusted,
|
|
134
134
|
buttons: [{
|
|
135
135
|
iconClass: ThemeIcon.asClassName(Codicon.info),
|
|
136
|
-
tooltip: ( localize(
|
|
136
|
+
tooltip: ( localize(4663, 'Open Extension')),
|
|
137
137
|
}]
|
|
138
138
|
});
|
|
139
139
|
}
|
|
140
140
|
}
|
|
141
141
|
else {
|
|
142
142
|
items.push({
|
|
143
|
-
label: ( localize(
|
|
143
|
+
label: ( localize(4665, 'No extensions have access')),
|
|
144
144
|
description: ( localize(
|
|
145
|
-
|
|
145
|
+
4666,
|
|
146
146
|
'No extensions are currently allowed to use models from {0}',
|
|
147
147
|
ownerId
|
|
148
148
|
)),
|
|
@@ -165,8 +165,8 @@ class ManageLanguageModelAuthenticationAction extends Action2 {
|
|
|
165
165
|
void extensionsWorkbenchService.open(extId);
|
|
166
166
|
}
|
|
167
167
|
},
|
|
168
|
-
title: ( localize(
|
|
169
|
-
placeHolder: ( localize(
|
|
168
|
+
title: ( localize(4667, 'Manage Language Model Access')),
|
|
169
|
+
placeHolder: ( localize(4668, 'Choose which extensions can access language models')),
|
|
170
170
|
});
|
|
171
171
|
if (!result) {
|
|
172
172
|
return;
|
|
@@ -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(4669, "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(4670, "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(4671, "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(4672, "Open Chat in Secondary Side Bar")), Codicon.layoutSidebarRightDock, ( ChatContextKeys.panelLocation.isEqualTo(ViewContainerLocation.AuxiliaryBar)));
|
|
93
|
+
appendOpenChatInViewMenuItem(id, ( localize(4673, "Open Chat in Primary Side Bar")), Codicon.layoutSidebarLeftDock, ( ChatContextKeys.panelLocation.isEqualTo(ViewContainerLocation.Sidebar)));
|
|
94
|
+
appendOpenChatInViewMenuItem(id, ( localize(4674, "Open Chat in Panel")), Codicon.layoutPanelDock, ( ChatContextKeys.panelLocation.isEqualTo(ViewContainerLocation.Panel)));
|
|
95
95
|
});
|
|
96
96
|
}
|
|
97
97
|
async function executeMoveToAction(accessor, moveTo, _sessionId) {
|