@codingame/monaco-vscode-chat-service-override 20.4.1 → 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
|
@@ -3,17 +3,18 @@ import { ICodeEditorService } from "@codingame/monaco-vscode-api/vscode/vs/edito
|
|
|
3
3
|
import { ILanguageService } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/languages/language.service";
|
|
4
4
|
import { IDialogService } from "@codingame/monaco-vscode-api/vscode/vs/platform/dialogs/common/dialogs.service";
|
|
5
5
|
import { IFileService } from "@codingame/monaco-vscode-api/vscode/vs/platform/files/common/files.service";
|
|
6
|
+
import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation";
|
|
7
|
+
import { ILabelService } from "@codingame/monaco-vscode-api/vscode/vs/platform/label/common/label.service";
|
|
6
8
|
import { ILogService } from "@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service";
|
|
7
9
|
import { IProgressService } from "@codingame/monaco-vscode-api/vscode/vs/platform/progress/common/progress.service";
|
|
10
|
+
import { IQuickInputService } from "@codingame/monaco-vscode-api/vscode/vs/platform/quickinput/common/quickInput.service";
|
|
8
11
|
import { IEditorService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service";
|
|
9
12
|
import { ITextFileService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/textfile/common/textfiles.service";
|
|
13
|
+
import { IAiEditTelemetryService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryService.service";
|
|
14
|
+
import { INotebookService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookService.service";
|
|
10
15
|
import { ICodeMapperService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatCodeMapperService.service";
|
|
11
16
|
import { IChatService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService.service";
|
|
12
17
|
import { ICodeBlockActionContext } from "@codingame/monaco-vscode-e28ac690-06d5-5ee9-92d1-02df70296354-common/vscode/vs/workbench/contrib/chat/browser/codeBlockPart";
|
|
13
|
-
import { IQuickInputService } from "@codingame/monaco-vscode-api/vscode/vs/platform/quickinput/common/quickInput.service";
|
|
14
|
-
import { ILabelService } from "@codingame/monaco-vscode-api/vscode/vs/platform/label/common/label.service";
|
|
15
|
-
import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation";
|
|
16
|
-
import { INotebookService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookService.service";
|
|
17
18
|
export declare class InsertCodeBlockOperation {
|
|
18
19
|
private readonly editorService;
|
|
19
20
|
private readonly textFileService;
|
|
@@ -22,7 +23,8 @@ export declare class InsertCodeBlockOperation {
|
|
|
22
23
|
private readonly chatService;
|
|
23
24
|
private readonly languageService;
|
|
24
25
|
private readonly dialogService;
|
|
25
|
-
|
|
26
|
+
private readonly aiEditTelemetryService;
|
|
27
|
+
constructor(editorService: IEditorService, textFileService: ITextFileService, bulkEditService: IBulkEditService, codeEditorService: ICodeEditorService, chatService: IChatService, languageService: ILanguageService, dialogService: IDialogService, aiEditTelemetryService: IAiEditTelemetryService);
|
|
26
28
|
run(context: ICodeBlockActionContext): Promise<void>;
|
|
27
29
|
private handleNotebookEditor;
|
|
28
30
|
private handleTextEditor;
|
|
@@ -14,27 +14,29 @@ import { IBulkEditService } from '@codingame/monaco-vscode-api/vscode/vs/editor/
|
|
|
14
14
|
import { ICodeEditorService } from '@codingame/monaco-vscode-api/vscode/vs/editor/browser/services/codeEditorService.service';
|
|
15
15
|
import { Range } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/core/range';
|
|
16
16
|
import { ILanguageService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/languages/language.service';
|
|
17
|
+
import { EditDeltaInfo } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/textModelEditSource';
|
|
17
18
|
import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
18
19
|
import { IDialogService } from '@codingame/monaco-vscode-api/vscode/vs/platform/dialogs/common/dialogs.service';
|
|
19
20
|
import { IFileService } from '@codingame/monaco-vscode-api/vscode/vs/platform/files/common/files.service';
|
|
21
|
+
import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
|
|
22
|
+
import { ILabelService } from '@codingame/monaco-vscode-api/vscode/vs/platform/label/common/label.service';
|
|
20
23
|
import { ILogService } from '@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service';
|
|
21
24
|
import { ProgressLocation } from '@codingame/monaco-vscode-api/vscode/vs/platform/progress/common/progress';
|
|
22
25
|
import { IProgressService } from '@codingame/monaco-vscode-api/vscode/vs/platform/progress/common/progress.service';
|
|
26
|
+
import { IQuickInputService } from '@codingame/monaco-vscode-api/vscode/vs/platform/quickinput/common/quickInput.service';
|
|
23
27
|
import { IEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service';
|
|
24
28
|
import { ITextFileService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/textfile/common/textfiles.service';
|
|
29
|
+
import { IAiEditTelemetryService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryService.service';
|
|
25
30
|
import { reviewEdits, reviewNotebookEdits } from '@codingame/monaco-vscode-a793b3ee-7ba9-5176-a019-30ec806fdd95-common/vscode/vs/workbench/contrib/inlineChat/browser/inlineChatController';
|
|
26
31
|
import { insertCell } from '@codingame/monaco-vscode-e28ac690-06d5-5ee9-92d1-02df70296354-common/vscode/vs/workbench/contrib/notebook/browser/controller/cellOperations';
|
|
27
32
|
import { CellKind, NOTEBOOK_EDITOR_ID } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookCommon';
|
|
33
|
+
import { INotebookService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookService.service';
|
|
28
34
|
import { ICodeMapperService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatCodeMapperService.service';
|
|
29
35
|
import { IChatService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService.service';
|
|
30
36
|
import { isResponseVM, isRequestVM } from '@codingame/monaco-vscode-c2deffc4-ad68-5e63-8f95-9b89e0fc6898-common/vscode/vs/workbench/contrib/chat/common/chatViewModel';
|
|
31
|
-
import { IQuickInputService } from '@codingame/monaco-vscode-api/vscode/vs/platform/quickinput/common/quickInput.service';
|
|
32
|
-
import { ILabelService } from '@codingame/monaco-vscode-api/vscode/vs/platform/label/common/label.service';
|
|
33
|
-
import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
|
|
34
|
-
import { INotebookService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookService.service';
|
|
35
37
|
|
|
36
38
|
let InsertCodeBlockOperation = class InsertCodeBlockOperation {
|
|
37
|
-
constructor(editorService, textFileService, bulkEditService, codeEditorService, chatService, languageService, dialogService) {
|
|
39
|
+
constructor(editorService, textFileService, bulkEditService, codeEditorService, chatService, languageService, dialogService, aiEditTelemetryService) {
|
|
38
40
|
this.editorService = editorService;
|
|
39
41
|
this.textFileService = textFileService;
|
|
40
42
|
this.bulkEditService = bulkEditService;
|
|
@@ -42,6 +44,7 @@ let InsertCodeBlockOperation = class InsertCodeBlockOperation {
|
|
|
42
44
|
this.chatService = chatService;
|
|
43
45
|
this.languageService = languageService;
|
|
44
46
|
this.dialogService = dialogService;
|
|
47
|
+
this.aiEditTelemetryService = aiEditTelemetryService;
|
|
45
48
|
}
|
|
46
49
|
async run(context) {
|
|
47
50
|
const activeEditorControl = getEditableActiveCodeEditor(this.editorService);
|
|
@@ -55,7 +58,7 @@ let InsertCodeBlockOperation = class InsertCodeBlockOperation {
|
|
|
55
58
|
}
|
|
56
59
|
else {
|
|
57
60
|
this.notify(( localize(
|
|
58
|
-
|
|
61
|
+
4728,
|
|
59
62
|
"To insert the code block, open a code editor or notebook editor and set the cursor at the location where to insert the code block."
|
|
60
63
|
)));
|
|
61
64
|
}
|
|
@@ -71,11 +74,23 @@ let InsertCodeBlockOperation = class InsertCodeBlockOperation {
|
|
|
71
74
|
languageId: context.languageId,
|
|
72
75
|
modelId: request?.modelId ?? '',
|
|
73
76
|
});
|
|
77
|
+
const codeBlockInfo = context.element.model.codeBlockInfos?.at(context.codeBlockIndex);
|
|
78
|
+
this.aiEditTelemetryService.handleCodeAccepted({
|
|
79
|
+
acceptanceMethod: 'insertAtCursor',
|
|
80
|
+
suggestionId: codeBlockInfo?.suggestionId,
|
|
81
|
+
editDeltaInfo: EditDeltaInfo.fromText(context.code),
|
|
82
|
+
feature: 'sideBarChat',
|
|
83
|
+
languageId: context.languageId,
|
|
84
|
+
modeId: context.element.model.request?.modeInfo?.modeId,
|
|
85
|
+
modelId: request?.modelId,
|
|
86
|
+
presentation: 'codeBlock',
|
|
87
|
+
applyCodeBlockSuggestionId: undefined,
|
|
88
|
+
});
|
|
74
89
|
}
|
|
75
90
|
}
|
|
76
91
|
async handleNotebookEditor(notebookEditor, codeBlockContext) {
|
|
77
92
|
if (notebookEditor.isReadOnly) {
|
|
78
|
-
this.notify(( localize(
|
|
93
|
+
this.notify(( localize(4729, "Cannot insert the code block to read-only notebook editor.")));
|
|
79
94
|
return false;
|
|
80
95
|
}
|
|
81
96
|
const focusRange = notebookEditor.getFocus();
|
|
@@ -86,7 +101,7 @@ let InsertCodeBlockOperation = class InsertCodeBlockOperation {
|
|
|
86
101
|
async handleTextEditor(codeEditor, codeBlockContext) {
|
|
87
102
|
const activeModel = codeEditor.getModel();
|
|
88
103
|
if (isReadOnly(activeModel, this.textFileService)) {
|
|
89
|
-
this.notify(( localize(
|
|
104
|
+
this.notify(( localize(4730, "Cannot insert the code block to read-only code editor.")));
|
|
90
105
|
return false;
|
|
91
106
|
}
|
|
92
107
|
const range = codeEditor.getSelection() ?? ( new Range(activeModel.getLineCount(), 1, activeModel.getLineCount(), 1));
|
|
@@ -107,7 +122,8 @@ InsertCodeBlockOperation = ( __decorate([
|
|
|
107
122
|
( __param(3, ICodeEditorService)),
|
|
108
123
|
( __param(4, IChatService)),
|
|
109
124
|
( __param(5, ILanguageService)),
|
|
110
|
-
( __param(6, IDialogService))
|
|
125
|
+
( __param(6, IDialogService)),
|
|
126
|
+
( __param(7, IAiEditTelemetryService))
|
|
111
127
|
], InsertCodeBlockOperation));
|
|
112
128
|
let ApplyCodeBlockOperation = class ApplyCodeBlockOperation {
|
|
113
129
|
constructor(editorService, textFileService, chatService, fileService, dialogService, logService, codeMapperService, progressService, quickInputService, labelService, instantiationService, notebookService) {
|
|
@@ -139,7 +155,7 @@ let ApplyCodeBlockOperation = class ApplyCodeBlockOperation {
|
|
|
139
155
|
activeEditorControl = codeEditor;
|
|
140
156
|
}
|
|
141
157
|
else {
|
|
142
|
-
this.notify(( localize(
|
|
158
|
+
this.notify(( localize(4731, "Failed to open {0} in a code editor.", (codemapperUri.toString()))));
|
|
143
159
|
return;
|
|
144
160
|
}
|
|
145
161
|
}
|
|
@@ -148,9 +164,16 @@ let ApplyCodeBlockOperation = class ApplyCodeBlockOperation {
|
|
|
148
164
|
return;
|
|
149
165
|
}
|
|
150
166
|
}
|
|
167
|
+
let codeBlockSuggestionId = undefined;
|
|
168
|
+
if (isResponseVM(context.element)) {
|
|
169
|
+
const codeBlockInfo = context.element.model.codeBlockInfos?.at(context.codeBlockIndex);
|
|
170
|
+
if (codeBlockInfo) {
|
|
171
|
+
codeBlockSuggestionId = codeBlockInfo.suggestionId;
|
|
172
|
+
}
|
|
173
|
+
}
|
|
151
174
|
let result = undefined;
|
|
152
175
|
if (activeEditorControl && !this.notebookService.hasSupportedNotebooks(codemapperUri)) {
|
|
153
|
-
result = await this.handleTextEditor(activeEditorControl, context.chatSessionId, context.code);
|
|
176
|
+
result = await this.handleTextEditor(activeEditorControl, context.chatSessionId, context.code, codeBlockSuggestionId);
|
|
154
177
|
}
|
|
155
178
|
else {
|
|
156
179
|
const activeNotebookEditor = getActiveNotebookEditor(this.editorService);
|
|
@@ -158,7 +181,7 @@ let ApplyCodeBlockOperation = class ApplyCodeBlockOperation {
|
|
|
158
181
|
result = await this.handleNotebookEditor(activeNotebookEditor, context.chatSessionId, context.code);
|
|
159
182
|
}
|
|
160
183
|
else {
|
|
161
|
-
this.notify(( localize(
|
|
184
|
+
this.notify(( localize(4732, "To apply this code block, open a code or notebook editor.")));
|
|
162
185
|
}
|
|
163
186
|
}
|
|
164
187
|
if (isResponseVM(context.element)) {
|
|
@@ -181,15 +204,15 @@ let ApplyCodeBlockOperation = class ApplyCodeBlockOperation {
|
|
|
181
204
|
return resource;
|
|
182
205
|
}
|
|
183
206
|
const activeEditorOption = activeEditorControl?.getModel().uri ? { label: ( localize(
|
|
184
|
-
|
|
207
|
+
4733,
|
|
185
208
|
"Active editor '{0}'",
|
|
186
209
|
this.labelService.getUriLabel(activeEditorControl.getModel().uri, { relative: true })
|
|
187
210
|
)), id: 'activeEditor' } : undefined;
|
|
188
|
-
const untitledEditorOption = { label: ( localize(
|
|
211
|
+
const untitledEditorOption = { label: ( localize(4734, "New untitled editor")), id: 'newUntitledFile' };
|
|
189
212
|
const options = [];
|
|
190
213
|
if (resource) {
|
|
191
214
|
options.push({ label: ( localize(
|
|
192
|
-
|
|
215
|
+
4735,
|
|
193
216
|
"New file '{0}'",
|
|
194
217
|
this.labelService.getUriLabel(resource, { relative: true })
|
|
195
218
|
)), id: 'createFile' });
|
|
@@ -204,7 +227,7 @@ let ApplyCodeBlockOperation = class ApplyCodeBlockOperation {
|
|
|
204
227
|
}
|
|
205
228
|
options.push(untitledEditorOption);
|
|
206
229
|
}
|
|
207
|
-
const selected = options.length > 1 ? await this.quickInputService.pick(options, { placeHolder: ( localize(
|
|
230
|
+
const selected = options.length > 1 ? await this.quickInputService.pick(options, { placeHolder: ( localize(4736, "Select where to apply the code block")) }) : options[0];
|
|
208
231
|
if (selected) {
|
|
209
232
|
switch (selected.id) {
|
|
210
233
|
case 'createFile':
|
|
@@ -213,7 +236,7 @@ let ApplyCodeBlockOperation = class ApplyCodeBlockOperation {
|
|
|
213
236
|
await this.fileService.writeFile(resource, VSBuffer.fromString(''));
|
|
214
237
|
}
|
|
215
238
|
catch (error) {
|
|
216
|
-
this.notify(( localize(
|
|
239
|
+
this.notify(( localize(4737, "Failed to create file: {0}", error.message)));
|
|
217
240
|
return ( URI.from({ scheme: 'untitled', path: resource.path }));
|
|
218
241
|
}
|
|
219
242
|
}
|
|
@@ -228,21 +251,21 @@ let ApplyCodeBlockOperation = class ApplyCodeBlockOperation {
|
|
|
228
251
|
}
|
|
229
252
|
async handleNotebookEditor(notebookEditor, chatSessionId, code) {
|
|
230
253
|
if (notebookEditor.isReadOnly) {
|
|
231
|
-
this.notify(( localize(
|
|
254
|
+
this.notify(( localize(4738, "Cannot apply code block to read-only notebook editor.")));
|
|
232
255
|
return undefined;
|
|
233
256
|
}
|
|
234
257
|
const uri = notebookEditor.textModel.uri;
|
|
235
258
|
const codeBlock = { code, resource: uri, markdownBeforeBlock: undefined };
|
|
236
259
|
const codeMapper = this.codeMapperService.providers[0]?.displayName;
|
|
237
260
|
if (!codeMapper) {
|
|
238
|
-
this.notify(( localize(
|
|
261
|
+
this.notify(( localize(4739, "No code mapper available.")));
|
|
239
262
|
return undefined;
|
|
240
263
|
}
|
|
241
264
|
let editsProposed = false;
|
|
242
265
|
const cancellationTokenSource = ( new CancellationTokenSource());
|
|
243
266
|
try {
|
|
244
267
|
const iterable = await this.progressService.withProgress({ location: ProgressLocation.Notification, delay: 500, sticky: true, cancellable: true }, async (progress) => {
|
|
245
|
-
progress.report({ message: ( localize(
|
|
268
|
+
progress.report({ message: ( localize(4740, "Applying code block using {0}...", codeMapper)) });
|
|
246
269
|
const editsIterable = this.getNotebookEdits(codeBlock, chatSessionId, cancellationTokenSource.token);
|
|
247
270
|
return await this.waitForFirstElement(editsIterable);
|
|
248
271
|
}, () => cancellationTokenSource.cancel());
|
|
@@ -250,7 +273,7 @@ let ApplyCodeBlockOperation = class ApplyCodeBlockOperation {
|
|
|
250
273
|
}
|
|
251
274
|
catch (e) {
|
|
252
275
|
if (!isCancellationError(e)) {
|
|
253
|
-
this.notify(( localize(
|
|
276
|
+
this.notify(( localize(4741, "Failed to apply code block: {0}", e.message)));
|
|
254
277
|
}
|
|
255
278
|
}
|
|
256
279
|
finally {
|
|
@@ -261,31 +284,31 @@ let ApplyCodeBlockOperation = class ApplyCodeBlockOperation {
|
|
|
261
284
|
codeMapper
|
|
262
285
|
};
|
|
263
286
|
}
|
|
264
|
-
async handleTextEditor(codeEditor, chatSessionId, code) {
|
|
287
|
+
async handleTextEditor(codeEditor, chatSessionId, code, applyCodeBlockSuggestionId) {
|
|
265
288
|
const activeModel = codeEditor.getModel();
|
|
266
289
|
if (isReadOnly(activeModel, this.textFileService)) {
|
|
267
|
-
this.notify(( localize(
|
|
290
|
+
this.notify(( localize(4742, "Cannot apply code block to read-only file.")));
|
|
268
291
|
return undefined;
|
|
269
292
|
}
|
|
270
293
|
const codeBlock = { code, resource: activeModel.uri, chatSessionId, markdownBeforeBlock: undefined };
|
|
271
294
|
const codeMapper = this.codeMapperService.providers[0]?.displayName;
|
|
272
295
|
if (!codeMapper) {
|
|
273
|
-
this.notify(( localize(
|
|
296
|
+
this.notify(( localize(4739, "No code mapper available.")));
|
|
274
297
|
return undefined;
|
|
275
298
|
}
|
|
276
299
|
let editsProposed = false;
|
|
277
300
|
const cancellationTokenSource = ( new CancellationTokenSource());
|
|
278
301
|
try {
|
|
279
302
|
const iterable = await this.progressService.withProgress({ location: ProgressLocation.Notification, delay: 500, sticky: true, cancellable: true }, async (progress) => {
|
|
280
|
-
progress.report({ message: ( localize(
|
|
303
|
+
progress.report({ message: ( localize(4740, "Applying code block using {0}...", codeMapper)) });
|
|
281
304
|
const editsIterable = this.getTextEdits(codeBlock, chatSessionId, cancellationTokenSource.token);
|
|
282
305
|
return await this.waitForFirstElement(editsIterable);
|
|
283
306
|
}, () => cancellationTokenSource.cancel());
|
|
284
|
-
editsProposed = await this.applyWithInlinePreview(iterable, codeEditor, cancellationTokenSource);
|
|
307
|
+
editsProposed = await this.applyWithInlinePreview(iterable, codeEditor, cancellationTokenSource, applyCodeBlockSuggestionId);
|
|
285
308
|
}
|
|
286
309
|
catch (e) {
|
|
287
310
|
if (!isCancellationError(e)) {
|
|
288
|
-
this.notify(( localize(
|
|
311
|
+
this.notify(( localize(4741, "Failed to apply code block: {0}", e.message)));
|
|
289
312
|
}
|
|
290
313
|
}
|
|
291
314
|
finally {
|
|
@@ -355,8 +378,8 @@ let ApplyCodeBlockOperation = class ApplyCodeBlockOperation {
|
|
|
355
378
|
}
|
|
356
379
|
};
|
|
357
380
|
}
|
|
358
|
-
async applyWithInlinePreview(edits, codeEditor, tokenSource) {
|
|
359
|
-
return this.instantiationService.invokeFunction(reviewEdits, codeEditor, edits, tokenSource.token);
|
|
381
|
+
async applyWithInlinePreview(edits, codeEditor, tokenSource, applyCodeBlockSuggestionId) {
|
|
382
|
+
return this.instantiationService.invokeFunction(reviewEdits, codeEditor, edits, tokenSource.token, applyCodeBlockSuggestionId);
|
|
360
383
|
}
|
|
361
384
|
async applyNotebookEditsWithInlinePreview(edits, uri, tokenSource) {
|
|
362
385
|
return this.instantiationService.invokeFunction(reviewNotebookEdits, uri, edits, tokenSource.token);
|