@codingame/monaco-vscode-chat-service-override 22.1.8 → 23.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 +16 -7
- package/package.json +43 -41
- package/vscode/src/vs/editor/common/diff/documentDiffProvider.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +57 -48
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.js +18 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.js +26 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +51 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatGettingStarted.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.js +19 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/{chatClearActions.d.ts → chatNewActions.d.ts} +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/{chatClearActions.js → chatNewActions.js} +32 -32
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatSessionActions.d.ts +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatSessionActions.js +101 -98
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +35 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +43 -25
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +33 -32
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionViewModel.d.ts +53 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionViewModel.js +154 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.d.ts +7 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.js +13 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsView.d.ts +44 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsView.js +347 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.d.ts +85 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.js +250 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/media/agentsessionsview.css +24 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/media/agentsessionsviewer.css +97 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +290 -231
- package/vscode/src/vs/workbench/contrib/chat/browser/chatAccessibilityService.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatAccessibilityService.js +7 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/chatAttachmentResolveService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatAttachmentResolveService.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatMarkdownAnchorService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatContextService.d.ts +24 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatContextService.js +113 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCheckpointTimeline.d.ts +31 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCheckpointTimelineImpl.d.ts +102 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCheckpointTimelineImpl.js +646 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.d.ts +2 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +46 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.d.ts +17 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js +44 -34
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.d.ts +25 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +46 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.d.ts +45 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +30 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.d.ts +10 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +60 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingOperations.d.ts +117 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingOperations.js +12 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.d.ts +6 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +60 -55
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.d.ts +29 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +365 -143
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSessionStorage.d.ts +2 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSessionStorage.js +3 -30
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelChangeService.d.ts +7 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelChangeService.js +58 -22
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelContentProviders.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelContentProviders.js +5 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingModifiedNotebookSnapshot.d.ts +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingModifiedNotebookSnapshot.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookCellEntry.d.ts +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookCellEntry.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +6 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookFileSystemProvider.d.ts +1 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookFileSystemProvider.js +7 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/overlayToolbarDecorator.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/overlayToolbarDecorator.js +13 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/simpleBrowserEditorOverlay.js +38 -33
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditor.d.ts +11 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditor.js +83 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.js +91 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.d.ts +64 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.js +370 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.d.ts +25 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.js +56 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.d.ts +61 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.js +349 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.d.ts +43 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.js +787 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatUsageWidget.d.ts +17 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatUsageWidget.js +109 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/media/chatManagementEditor.css +122 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/media/chatModelsWidget.css +211 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/media/chatUsageWidget.css +69 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +21 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +54 -54
- package/vscode/src/vs/workbench/contrib/chat/browser/chatQuick.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatQuick.js +31 -22
- package/vscode/src/vs/workbench/contrib/chat/browser/chatResponseAccessibleView.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatResponseAccessibleView.js +16 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionTracker.d.ts +6 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionTracker.js +29 -21
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/localChatSessionsProvider.d.ts +5 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/localChatSessionsProvider.js +37 -33
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/view/chatSessionsView.d.ts +15 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/view/chatSessionsView.js +96 -131
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/view/sessionsTreeRenderer.d.ts +12 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/view/sessionsTreeRenderer.js +66 -34
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/view/sessionsViewPane.d.ts +5 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/view/sessionsViewPane.js +77 -71
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions.contribution.d.ts +91 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions.contribution.js +458 -138
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup.js +212 -150
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus.js +96 -89
- package/vscode/src/vs/workbench/contrib/chat/browser/chatVariables.d.ts +3 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatVariables.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/chatViewPane.d.ts +3 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatViewPane.js +15 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/codeBlockContextProviderService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorContrib.js +33 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorHover.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorHover.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelToolsConfirmationService.d.ts +27 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelToolsConfirmationService.js +688 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelToolsService.d.ts +15 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelToolsService.js +126 -135
- package/vscode/src/vs/workbench/contrib/chat/browser/media/chatEditingEditorOverlay.css +6 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/media/chatEditorController.css +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/media/chatSessions.css +38 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/media/simpleBrowserOverlay.css +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +28 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionContribution.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptFileActions.js +9 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +24 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.js +15 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.js +25 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.d.ts +21 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.js +89 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +16 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +30 -29
- package/vscode/src/vs/workbench/contrib/chat/common/chatProgressTypes/chatToolInvocation.d.ts +10 -19
- package/vscode/src/vs/workbench/contrib/chat/common/chatProgressTypes/chatToolInvocation.js +61 -43
- package/vscode/src/vs/workbench/contrib/chat/common/chatResponseResourceFileSystemProvider.js +7 -4
- package/vscode/src/vs/workbench/contrib/chat/common/chatServiceImpl.d.ts +28 -28
- package/vscode/src/vs/workbench/contrib/chat/common/chatServiceImpl.js +254 -165
- package/vscode/src/vs/workbench/contrib/chat/common/chatServiceTelemetry.d.ts +4 -4
- package/vscode/src/vs/workbench/contrib/chat/common/chatServiceTelemetry.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/chatSessionStore.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatSessionStore.js +4 -6
- package/vscode/src/vs/workbench/contrib/chat/common/chatTodoListService.d.ts +10 -6
- package/vscode/src/vs/workbench/contrib/chat/common/chatTodoListService.js +20 -12
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +13 -17
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/PromptHeaderDefinitionProvider.js +9 -8
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptBodyAutocompletion.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptBodyAutocompletion.js +51 -21
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.d.ts +7 -3
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.js +74 -20
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptDocumentSemanticTokensProvider.js +11 -6
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.d.ts +1 -2
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +83 -53
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.js +136 -78
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptLinkProvider.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.d.ts +18 -10
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.js +357 -157
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptFileContributions.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +55 -28
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +235 -108
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +12 -2
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +50 -4
- package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.js +27 -27
- package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +2 -2
- package/vscode/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.js +11 -7
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.js +12 -14
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAccessibilityHelp.js +1 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAccessibleView.js +1 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.d.ts +18 -30
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +62 -139
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatCurrentLine.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatCurrentLine.js +16 -15
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookModifiedCellDecorator.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookModifiedCellDecorator.js +2 -2
- package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.js +7 -7
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminal.chat.contribution.js +3 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +16 -16
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +119 -15
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatController.js +6 -4
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatService.d.ts +47 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatService.js +192 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.d.ts +7 -5
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +21 -16
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandLineAutoApprover.js +8 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.js +18 -27
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.d.ts +5 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.js +3 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.js +4 -25
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.js +18 -27
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/strategyHelpers.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/strategyHelpers.js +31 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.d.ts +3 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +24 -8
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.js +8 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.js +33 -4
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +42 -13
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.js +14 -21
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAnalyzer.d.ts +23 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.d.ts +18 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.js +227 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.d.ts +17 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.js +133 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineCdPrefixRewriter.d.ts +5 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineCdPrefixRewriter.js +36 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePwshChainOperatorRewriter.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePwshChainOperatorRewriter.js +33 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineRewriter.d.ts +17 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalLastCommandTool.js +4 -4
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.d.ts +5 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +75 -37
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/types.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.js +71 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.d.ts +28 -15
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +366 -363
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/createAndRunTaskTool.js +18 -18
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/getTaskOutputTool.js +9 -9
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/runTaskTool.js +16 -16
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.d.ts +19 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.js +123 -0
- package/vscode/src/vs/base/common/yaml.d.ts +0 -74
- package/vscode/src/vs/base/common/yaml.js +0 -597
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContext.d.ts +0 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContext.js +0 -239
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTimeline.d.ts +0 -102
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTimeline.js +0 -435
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingModifiedNotebookDiff.d.ts +0 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingModifiedNotebookDiff.js +0 -67
- package/vscode/src/vs/workbench/contrib/chat/browser/chatPasteProviders.d.ts +0 -49
- package/vscode/src/vs/workbench/contrib/chat/browser/chatPasteProviders.js +0 -380
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/common.d.ts +0 -37
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/common.js +0 -137
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/attachInstructionsAction.d.ts +0 -44
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/attachInstructionsAction.js +0 -176
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/newPromptFileActions.d.ts +0 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/newPromptFileActions.js +0 -206
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptName.d.ts +0 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptName.js +0 -79
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptSourceFolder.d.ts +0 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptSourceFolder.js +0 -145
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/promptFilePickers.d.ts +0 -65
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/promptFilePickers.js +0 -306
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveToPromptAction.d.ts +0 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveToPromptAction.js +0 -102
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/newPromptsParser.d.ts +0 -97
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/newPromptsParser.js +0 -247
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.d.ts +0 -118
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.js +0 -10
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandSimplifier.d.ts +0 -10
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandSimplifier.js +0 -55
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/subCommands.d.ts +0 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/subCommands.js +0 -66
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
|
|
2
|
-
import {
|
|
2
|
+
import { CancellationToken } from '@codingame/monaco-vscode-api/vscode/vs/base/common/cancellation';
|
|
3
3
|
import { Codicon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/codicons';
|
|
4
4
|
import { KeyCode } from '@codingame/monaco-vscode-api/vscode/vs/base/common/keyCodes';
|
|
5
5
|
import Severity from '@codingame/monaco-vscode-api/vscode/vs/base/common/severity';
|
|
6
|
-
import {
|
|
6
|
+
import { localize, localize2 } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
7
|
+
import { Action2, MenuId, MenuRegistry } from '@codingame/monaco-vscode-api/vscode/vs/platform/actions/common/actions';
|
|
7
8
|
import { IConfigurationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service';
|
|
8
9
|
import { ContextKeyExpr } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey';
|
|
9
10
|
import { IDialogService } from '@codingame/monaco-vscode-api/vscode/vs/platform/dialogs/common/dialogs.service';
|
|
@@ -19,22 +20,20 @@ import { IWorkbenchExtensionManagementService } from '@codingame/monaco-vscode-a
|
|
|
19
20
|
import { IViewsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/views/common/viewsService.service';
|
|
20
21
|
import { ChatContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatContextKeys';
|
|
21
22
|
import { IChatService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService.service';
|
|
23
|
+
import { localChatSessionType } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatSessionsService';
|
|
22
24
|
import { IChatSessionsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatSessionsService.service';
|
|
23
|
-
import {
|
|
24
|
-
import {
|
|
25
|
-
import { ChatViewId } from '@codingame/monaco-vscode-b994942c-360d-5b68-8a33-77d4bde6b714-common/vscode/vs/workbench/contrib/chat/browser/chat';
|
|
25
|
+
import { ChatConfiguration, AGENT_SESSIONS_VIEWLET_ID } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
|
|
26
|
+
import { ChatViewId } from '@codingame/monaco-vscode-2339d6ac-d6bb-53cd-95ee-81911735d1c7-common/vscode/vs/workbench/contrib/chat/browser/chat';
|
|
26
27
|
import { IChatWidgetService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat.service';
|
|
27
|
-
import {
|
|
28
|
-
import {
|
|
29
|
-
import { CHAT_CATEGORY, ACTION_ID_OPEN_CHAT } from '@codingame/monaco-vscode-c2deffc4-ad68-5e63-8f95-9b89e0fc6898-common/vscode/vs/workbench/contrib/chat/browser/actions/chatActions';
|
|
30
|
-
import { CancellationToken } from '@codingame/monaco-vscode-api/vscode/vs/base/common/cancellation';
|
|
28
|
+
import { findExistingChatEditorByUri } from '@codingame/monaco-vscode-2339d6ac-d6bb-53cd-95ee-81911735d1c7-common/vscode/vs/workbench/contrib/chat/browser/chatSessions/common';
|
|
29
|
+
import { CHAT_CATEGORY, ACTION_ID_OPEN_CHAT } from '@codingame/monaco-vscode-2339d6ac-d6bb-53cd-95ee-81911735d1c7-common/vscode/vs/workbench/contrib/chat/browser/actions/chatActions';
|
|
31
30
|
|
|
32
31
|
class RenameChatSessionAction extends Action2 {
|
|
33
32
|
static { this.id = 'workbench.action.chat.renameSession'; }
|
|
34
33
|
constructor() {
|
|
35
34
|
super({
|
|
36
35
|
id: RenameChatSessionAction.id,
|
|
37
|
-
title: ( localize(
|
|
36
|
+
title: ( localize(4730, "Rename")),
|
|
38
37
|
f1: false,
|
|
39
38
|
category: CHAT_CATEGORY,
|
|
40
39
|
icon: Codicon.pencil,
|
|
@@ -49,40 +48,39 @@ class RenameChatSessionAction extends Action2 {
|
|
|
49
48
|
if (!context) {
|
|
50
49
|
return;
|
|
51
50
|
}
|
|
52
|
-
const sessionId = context.session.id.replace('history-', '');
|
|
53
51
|
const label = context.session.label;
|
|
54
52
|
const chatSessionsService = accessor.get(IChatSessionsService);
|
|
55
53
|
const logService = accessor.get(ILogService);
|
|
56
54
|
const chatService = accessor.get(IChatService);
|
|
57
55
|
try {
|
|
58
|
-
await chatSessionsService.setEditableSession(
|
|
56
|
+
await chatSessionsService.setEditableSession(context.session.resource, {
|
|
59
57
|
validationMessage: (value) => {
|
|
60
58
|
if (!value || value.trim().length === 0) {
|
|
61
|
-
return { content: ( localize(
|
|
59
|
+
return { content: ( localize(4731, "Name cannot be empty")), severity: Severity.Error };
|
|
62
60
|
}
|
|
63
61
|
if (value.length > 100) {
|
|
64
|
-
return { content: ( localize(
|
|
62
|
+
return { content: ( localize(4732, "Name is too long (maximum 100 characters)")), severity: Severity.Error };
|
|
65
63
|
}
|
|
66
64
|
return null;
|
|
67
65
|
},
|
|
68
|
-
placeholder: ( localize(
|
|
66
|
+
placeholder: ( localize(4733, "Enter new name for chat session")),
|
|
69
67
|
startingValue: label,
|
|
70
68
|
onFinish: async (value, success) => {
|
|
71
69
|
if (success && value && value.trim() !== label) {
|
|
72
70
|
try {
|
|
73
71
|
const newTitle = value.trim();
|
|
74
|
-
chatService.setChatSessionTitle(
|
|
75
|
-
chatSessionsService.notifySessionItemsChanged(
|
|
72
|
+
chatService.setChatSessionTitle(context.session.resource, newTitle);
|
|
73
|
+
chatSessionsService.notifySessionItemsChanged(localChatSessionType);
|
|
76
74
|
}
|
|
77
75
|
catch (error) {
|
|
78
76
|
logService.error(( localize(
|
|
79
|
-
|
|
77
|
+
4734,
|
|
80
78
|
"Failed to rename chat session: {0}",
|
|
81
79
|
(error instanceof Error ? error.message : String(error))
|
|
82
80
|
)));
|
|
83
81
|
}
|
|
84
82
|
}
|
|
85
|
-
await chatSessionsService.setEditableSession(
|
|
83
|
+
await chatSessionsService.setEditableSession(context.session.resource, null);
|
|
86
84
|
}
|
|
87
85
|
});
|
|
88
86
|
}
|
|
@@ -96,7 +94,7 @@ class DeleteChatSessionAction extends Action2 {
|
|
|
96
94
|
constructor() {
|
|
97
95
|
super({
|
|
98
96
|
id: DeleteChatSessionAction.id,
|
|
99
|
-
title: ( localize(
|
|
97
|
+
title: ( localize(4735, "Delete")),
|
|
100
98
|
f1: false,
|
|
101
99
|
category: CHAT_CATEGORY,
|
|
102
100
|
icon: Codicon.x,
|
|
@@ -106,21 +104,20 @@ class DeleteChatSessionAction extends Action2 {
|
|
|
106
104
|
if (!context) {
|
|
107
105
|
return;
|
|
108
106
|
}
|
|
109
|
-
const sessionId = context.session.id;
|
|
110
107
|
const chatService = accessor.get(IChatService);
|
|
111
108
|
const dialogService = accessor.get(IDialogService);
|
|
112
109
|
const logService = accessor.get(ILogService);
|
|
113
110
|
const chatSessionsService = accessor.get(IChatSessionsService);
|
|
114
111
|
try {
|
|
115
112
|
const result = await dialogService.confirm({
|
|
116
|
-
message: ( localize(
|
|
117
|
-
detail: ( localize(
|
|
118
|
-
primaryButton: ( localize(
|
|
113
|
+
message: ( localize(4736, "Are you sure you want to delete this chat session?")),
|
|
114
|
+
detail: ( localize(4737, "This action cannot be undone.")),
|
|
115
|
+
primaryButton: ( localize(4738, "Delete")),
|
|
119
116
|
type: 'warning'
|
|
120
117
|
});
|
|
121
118
|
if (result.confirmed) {
|
|
122
|
-
await chatService.removeHistoryEntry(
|
|
123
|
-
chatSessionsService.notifySessionItemsChanged(
|
|
119
|
+
await chatService.removeHistoryEntry(context.session.resource);
|
|
120
|
+
chatSessionsService.notifySessionItemsChanged(localChatSessionType);
|
|
124
121
|
}
|
|
125
122
|
}
|
|
126
123
|
catch (error) {
|
|
@@ -133,7 +130,7 @@ class OpenChatSessionInNewWindowAction extends Action2 {
|
|
|
133
130
|
constructor() {
|
|
134
131
|
super({
|
|
135
132
|
id: OpenChatSessionInNewWindowAction.id,
|
|
136
|
-
title: ( localize(
|
|
133
|
+
title: ( localize(4739, "Move Chat into New Window")),
|
|
137
134
|
category: CHAT_CATEGORY,
|
|
138
135
|
f1: false,
|
|
139
136
|
});
|
|
@@ -144,28 +141,17 @@ class OpenChatSessionInNewWindowAction extends Action2 {
|
|
|
144
141
|
}
|
|
145
142
|
const editorService = accessor.get(IEditorService);
|
|
146
143
|
const chatWidgetService = accessor.get(IChatWidgetService);
|
|
147
|
-
const sessionId = context.session.id;
|
|
148
144
|
const editorGroupsService = accessor.get(IEditorGroupsService);
|
|
149
145
|
if (context.session.provider?.chatSessionType) {
|
|
150
|
-
const uri =
|
|
151
|
-
const existingEditor = findExistingChatEditorByUri(uri,
|
|
146
|
+
const uri = context.session.resource;
|
|
147
|
+
const existingEditor = findExistingChatEditorByUri(uri, editorGroupsService);
|
|
152
148
|
if (existingEditor) {
|
|
153
|
-
await editorService.openEditor(existingEditor.editor, existingEditor.
|
|
149
|
+
await editorService.openEditor(existingEditor.editor, existingEditor.group);
|
|
154
150
|
return;
|
|
155
151
|
}
|
|
156
|
-
else if (chatWidgetService.
|
|
152
|
+
else if (chatWidgetService.getWidgetBySessionResource(uri)) {
|
|
157
153
|
return;
|
|
158
154
|
}
|
|
159
|
-
else if (isLocalChatSessionItem(context.session)) {
|
|
160
|
-
const options = {
|
|
161
|
-
target: { sessionId },
|
|
162
|
-
ignoreInView: true,
|
|
163
|
-
};
|
|
164
|
-
await editorService.openEditor({
|
|
165
|
-
resource: ChatEditorInput.getNewEditorUri(),
|
|
166
|
-
options,
|
|
167
|
-
}, AUX_WINDOW_GROUP);
|
|
168
|
-
}
|
|
169
155
|
else {
|
|
170
156
|
const options = {
|
|
171
157
|
ignoreInView: true,
|
|
@@ -183,7 +169,7 @@ class OpenChatSessionInNewEditorGroupAction extends Action2 {
|
|
|
183
169
|
constructor() {
|
|
184
170
|
super({
|
|
185
171
|
id: OpenChatSessionInNewEditorGroupAction.id,
|
|
186
|
-
title: ( localize(
|
|
172
|
+
title: ( localize(4740, "Move Chat to the Side")),
|
|
187
173
|
category: CHAT_CATEGORY,
|
|
188
174
|
f1: false,
|
|
189
175
|
});
|
|
@@ -194,28 +180,17 @@ class OpenChatSessionInNewEditorGroupAction extends Action2 {
|
|
|
194
180
|
}
|
|
195
181
|
const editorService = accessor.get(IEditorService);
|
|
196
182
|
const chatWidgetService = accessor.get(IChatWidgetService);
|
|
197
|
-
const sessionId = context.session.id;
|
|
198
183
|
const editorGroupsService = accessor.get(IEditorGroupsService);
|
|
199
184
|
if (context.session.provider?.chatSessionType) {
|
|
200
|
-
const uri =
|
|
201
|
-
const existingEditor = findExistingChatEditorByUri(uri,
|
|
185
|
+
const uri = context.session.resource;
|
|
186
|
+
const existingEditor = findExistingChatEditorByUri(uri, editorGroupsService);
|
|
202
187
|
if (existingEditor) {
|
|
203
|
-
await editorService.openEditor(existingEditor.editor, existingEditor.
|
|
188
|
+
await editorService.openEditor(existingEditor.editor, existingEditor.group);
|
|
204
189
|
return;
|
|
205
190
|
}
|
|
206
|
-
else if (chatWidgetService.
|
|
191
|
+
else if (chatWidgetService.getWidgetBySessionResource(uri)) {
|
|
207
192
|
return;
|
|
208
193
|
}
|
|
209
|
-
else if (isLocalChatSessionItem(context.session)) {
|
|
210
|
-
const options = {
|
|
211
|
-
target: { sessionId },
|
|
212
|
-
ignoreInView: true,
|
|
213
|
-
};
|
|
214
|
-
await editorService.openEditor({
|
|
215
|
-
resource: ChatEditorInput.getNewEditorUri(),
|
|
216
|
-
options,
|
|
217
|
-
}, SIDE_GROUP);
|
|
218
|
-
}
|
|
219
194
|
else {
|
|
220
195
|
const options = {
|
|
221
196
|
ignoreInView: true,
|
|
@@ -233,41 +208,33 @@ class OpenChatSessionInSidebarAction extends Action2 {
|
|
|
233
208
|
constructor() {
|
|
234
209
|
super({
|
|
235
210
|
id: OpenChatSessionInSidebarAction.id,
|
|
236
|
-
title: ( localize(
|
|
211
|
+
title: ( localize(4741, "Move Chat into Side Bar")),
|
|
237
212
|
category: CHAT_CATEGORY,
|
|
238
213
|
f1: false,
|
|
239
214
|
});
|
|
240
215
|
}
|
|
241
216
|
async run(accessor, context) {
|
|
242
|
-
if (!context) {
|
|
243
|
-
return;
|
|
244
|
-
}
|
|
245
217
|
const editorService = accessor.get(IEditorService);
|
|
246
218
|
const viewsService = accessor.get(IViewsService);
|
|
247
219
|
const chatWidgetService = accessor.get(IChatWidgetService);
|
|
248
220
|
const editorGroupsService = accessor.get(IEditorGroupsService);
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
221
|
+
if (!context) {
|
|
222
|
+
return;
|
|
223
|
+
}
|
|
224
|
+
if (context.session.provider.chatSessionType !== localChatSessionType) {
|
|
225
|
+
return;
|
|
226
|
+
}
|
|
227
|
+
const existingEditor = findExistingChatEditorByUri(context.session.resource, editorGroupsService);
|
|
228
|
+
if (existingEditor) {
|
|
229
|
+
await editorService.openEditor(existingEditor.editor, existingEditor.group);
|
|
230
|
+
return;
|
|
231
|
+
}
|
|
232
|
+
else if (chatWidgetService.getWidgetBySessionResource(context.session.resource)) {
|
|
233
|
+
return;
|
|
260
234
|
}
|
|
261
235
|
const chatViewPane = await viewsService.openView(ChatViewId);
|
|
262
236
|
if (chatViewPane) {
|
|
263
|
-
|
|
264
|
-
await chatViewPane.loadSession(sessionId);
|
|
265
|
-
}
|
|
266
|
-
else {
|
|
267
|
-
const providerType = context.session.provider?.chatSessionType || 'external';
|
|
268
|
-
const sessionUri = ChatSessionUri.forSession(providerType, sessionId);
|
|
269
|
-
await chatViewPane.loadSession(sessionUri);
|
|
270
|
-
}
|
|
237
|
+
await chatViewPane.loadSession(context.session.resource);
|
|
271
238
|
chatViewPane.focusInput();
|
|
272
239
|
}
|
|
273
240
|
}
|
|
@@ -277,7 +244,7 @@ class ToggleChatSessionsDescriptionDisplayAction extends Action2 {
|
|
|
277
244
|
constructor() {
|
|
278
245
|
super({
|
|
279
246
|
id: ToggleChatSessionsDescriptionDisplayAction.id,
|
|
280
|
-
title: ( localize(
|
|
247
|
+
title: ( localize(4742, "Show Rich Descriptions")),
|
|
281
248
|
category: CHAT_CATEGORY,
|
|
282
249
|
f1: false,
|
|
283
250
|
toggled: ( ContextKeyExpr.equals(`config.${ChatConfiguration.ShowAgentSessionsViewDescription}`, true))
|
|
@@ -289,12 +256,47 @@ class ToggleChatSessionsDescriptionDisplayAction extends Action2 {
|
|
|
289
256
|
await configurationService.updateValue(ChatConfiguration.ShowAgentSessionsViewDescription, !currentValue);
|
|
290
257
|
}
|
|
291
258
|
}
|
|
259
|
+
class ToggleAgentSessionsViewLocationAction extends Action2 {
|
|
260
|
+
static { this.id = 'workbench.action.chatSessions.toggleNewSingleView'; }
|
|
261
|
+
constructor() {
|
|
262
|
+
super({
|
|
263
|
+
id: ToggleAgentSessionsViewLocationAction.id,
|
|
264
|
+
title: ( localize(4743, "Enable New Single View")),
|
|
265
|
+
category: CHAT_CATEGORY,
|
|
266
|
+
f1: false,
|
|
267
|
+
toggled: ( ContextKeyExpr.equals(`config.${ChatConfiguration.AgentSessionsViewLocation}`, 'single-view')),
|
|
268
|
+
menu: [
|
|
269
|
+
{
|
|
270
|
+
id: MenuId.ViewContainerTitle,
|
|
271
|
+
when: ( ContextKeyExpr.equals('viewContainer', AGENT_SESSIONS_VIEWLET_ID)),
|
|
272
|
+
group: '2_togglenew',
|
|
273
|
+
order: 1
|
|
274
|
+
},
|
|
275
|
+
{
|
|
276
|
+
id: MenuId.ViewTitle,
|
|
277
|
+
when: ( ContextKeyExpr.equals('view', 'workbench.view.agentSessions')),
|
|
278
|
+
group: '2_togglenew',
|
|
279
|
+
order: 1
|
|
280
|
+
}
|
|
281
|
+
]
|
|
282
|
+
});
|
|
283
|
+
}
|
|
284
|
+
async run(accessor) {
|
|
285
|
+
const configurationService = accessor.get(IConfigurationService);
|
|
286
|
+
const viewsService = accessor.get(IViewsService);
|
|
287
|
+
const currentValue = configurationService.getValue(ChatConfiguration.AgentSessionsViewLocation);
|
|
288
|
+
const newValue = currentValue === 'single-view' ? 'view' : 'single-view';
|
|
289
|
+
await configurationService.updateValue(ChatConfiguration.AgentSessionsViewLocation, newValue);
|
|
290
|
+
const viewId = newValue === 'single-view' ? 'workbench.view.agentSessions' : `${AGENT_SESSIONS_VIEWLET_ID}.local`;
|
|
291
|
+
await viewsService.openView(viewId, true);
|
|
292
|
+
}
|
|
293
|
+
}
|
|
292
294
|
class ChatSessionsGettingStartedAction extends Action2 {
|
|
293
295
|
static { this.ID = 'chat.sessions.gettingStarted'; }
|
|
294
296
|
constructor() {
|
|
295
297
|
super({
|
|
296
298
|
id: ChatSessionsGettingStartedAction.ID,
|
|
297
|
-
title: ( localize2(
|
|
299
|
+
title: ( localize2(4744, "Getting Started with Chat Sessions")),
|
|
298
300
|
icon: Codicon.sendToRemoteAgent,
|
|
299
301
|
f1: false,
|
|
300
302
|
});
|
|
@@ -318,15 +320,15 @@ class ChatSessionsGettingStartedAction extends Action2 {
|
|
|
318
320
|
label: recommendation.displayName,
|
|
319
321
|
description: recommendation.description,
|
|
320
322
|
detail: extensionInstalled
|
|
321
|
-
? ( localize(
|
|
322
|
-
: ( localize(
|
|
323
|
+
? ( localize(4745, "'{0}' is already installed", recommendation.extensionName))
|
|
324
|
+
: ( localize(4746, "Installs '{0}'", recommendation.extensionName)),
|
|
323
325
|
extensionId: recommendation.extensionId,
|
|
324
326
|
disabled: extensionInstalled,
|
|
325
327
|
};
|
|
326
328
|
}));
|
|
327
329
|
const selected = await quickInputService.pick(quickPickItems, {
|
|
328
|
-
title: ( localize(
|
|
329
|
-
placeHolder: ( localize(
|
|
330
|
+
title: ( localize(4747, "Install Chat Extensions")),
|
|
331
|
+
placeHolder: ( localize(4748, "Choose extensions to enhance your chat experience")),
|
|
330
332
|
canPickMany: true,
|
|
331
333
|
});
|
|
332
334
|
if (!selected) {
|
|
@@ -344,17 +346,17 @@ class ChatSessionsGettingStartedAction extends Action2 {
|
|
|
344
346
|
MenuRegistry.appendMenuItem(MenuId.ChatSessionsMenu, {
|
|
345
347
|
command: {
|
|
346
348
|
id: RenameChatSessionAction.id,
|
|
347
|
-
title: ( localize(
|
|
349
|
+
title: ( localize(4730, "Rename")),
|
|
348
350
|
icon: Codicon.pencil
|
|
349
351
|
},
|
|
350
352
|
group: 'inline',
|
|
351
353
|
order: 1,
|
|
352
|
-
when: ( ChatContextKeys.sessionType.isEqualTo(
|
|
354
|
+
when: ( ChatContextKeys.sessionType.isEqualTo(localChatSessionType))
|
|
353
355
|
});
|
|
354
356
|
MenuRegistry.appendMenuItem(MenuId.ChatSessionsMenu, {
|
|
355
357
|
command: {
|
|
356
358
|
id: DeleteChatSessionAction.id,
|
|
357
|
-
title: ( localize(
|
|
359
|
+
title: ( localize(4735, "Delete")),
|
|
358
360
|
icon: Codicon.x
|
|
359
361
|
},
|
|
360
362
|
group: 'inline',
|
|
@@ -364,7 +366,7 @@ MenuRegistry.appendMenuItem(MenuId.ChatSessionsMenu, {
|
|
|
364
366
|
MenuRegistry.appendMenuItem(MenuId.ChatSessionsMenu, {
|
|
365
367
|
command: {
|
|
366
368
|
id: OpenChatSessionInNewWindowAction.id,
|
|
367
|
-
title: ( localize(
|
|
369
|
+
title: ( localize(4749, "Open in New Window"))
|
|
368
370
|
},
|
|
369
371
|
group: 'navigation',
|
|
370
372
|
order: 1,
|
|
@@ -372,7 +374,7 @@ MenuRegistry.appendMenuItem(MenuId.ChatSessionsMenu, {
|
|
|
372
374
|
MenuRegistry.appendMenuItem(MenuId.ChatSessionsMenu, {
|
|
373
375
|
command: {
|
|
374
376
|
id: OpenChatSessionInNewEditorGroupAction.id,
|
|
375
|
-
title: ( localize(
|
|
377
|
+
title: ( localize(4750, "Open to the Side"))
|
|
376
378
|
},
|
|
377
379
|
group: 'navigation',
|
|
378
380
|
order: 2,
|
|
@@ -380,30 +382,31 @@ MenuRegistry.appendMenuItem(MenuId.ChatSessionsMenu, {
|
|
|
380
382
|
MenuRegistry.appendMenuItem(MenuId.ChatSessionsMenu, {
|
|
381
383
|
command: {
|
|
382
384
|
id: OpenChatSessionInSidebarAction.id,
|
|
383
|
-
title: ( localize(
|
|
385
|
+
title: ( localize(4751, "Open in Sidebar"))
|
|
384
386
|
},
|
|
385
387
|
group: 'navigation',
|
|
386
388
|
order: 3,
|
|
389
|
+
when: ( ChatContextKeys.sessionType.isEqualTo(localChatSessionType)),
|
|
387
390
|
});
|
|
388
391
|
MenuRegistry.appendMenuItem(MenuId.ViewContainerTitle, {
|
|
389
392
|
command: {
|
|
390
393
|
id: ToggleChatSessionsDescriptionDisplayAction.id,
|
|
391
|
-
title: ( localize(
|
|
394
|
+
title: ( localize(4742, "Show Rich Descriptions")),
|
|
392
395
|
toggled: ( ContextKeyExpr.equals(`config.${ChatConfiguration.ShowAgentSessionsViewDescription}`, true))
|
|
393
396
|
},
|
|
394
397
|
group: '1_config',
|
|
395
398
|
order: 1,
|
|
396
|
-
when: ( ContextKeyExpr.equals('viewContainer',
|
|
399
|
+
when: ( ContextKeyExpr.equals('viewContainer', AGENT_SESSIONS_VIEWLET_ID)),
|
|
397
400
|
});
|
|
398
401
|
MenuRegistry.appendMenuItem(MenuId.ViewTitle, {
|
|
399
402
|
command: {
|
|
400
403
|
id: ACTION_ID_OPEN_CHAT,
|
|
401
|
-
title: ( localize2(
|
|
404
|
+
title: ( localize2(4752, "New Chat Editor")),
|
|
402
405
|
icon: Codicon.plus
|
|
403
406
|
},
|
|
404
407
|
group: 'navigation',
|
|
405
408
|
order: 1,
|
|
406
|
-
when: ( ContextKeyExpr.equals('view', `${
|
|
409
|
+
when: ( ContextKeyExpr.equals('view', `${AGENT_SESSIONS_VIEWLET_ID}.local`)),
|
|
407
410
|
});
|
|
408
411
|
|
|
409
|
-
export { ChatSessionsGettingStartedAction, DeleteChatSessionAction, OpenChatSessionInNewEditorGroupAction, OpenChatSessionInNewWindowAction, OpenChatSessionInSidebarAction, RenameChatSessionAction, ToggleChatSessionsDescriptionDisplayAction };
|
|
412
|
+
export { ChatSessionsGettingStartedAction, DeleteChatSessionAction, OpenChatSessionInNewEditorGroupAction, OpenChatSessionInNewWindowAction, OpenChatSessionInSidebarAction, RenameChatSessionAction, ToggleAgentSessionsViewLocationAction, ToggleChatSessionsDescriptionDisplayAction };
|
|
@@ -16,12 +16,12 @@ import { KeybindingWeight } from '@codingame/monaco-vscode-api/vscode/vs/platfor
|
|
|
16
16
|
import { ITelemetryService } from '@codingame/monaco-vscode-api/vscode/vs/platform/telemetry/common/telemetry.service';
|
|
17
17
|
import { registerWorkbenchContribution2, WorkbenchPhase } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/contributions';
|
|
18
18
|
import { ChatContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatContextKeys';
|
|
19
|
-
import { ToolConfirmKind } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService';
|
|
20
|
-
import { isResponseVM } from '@codingame/monaco-vscode-
|
|
19
|
+
import { IChatToolInvocation, ToolConfirmKind } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService';
|
|
20
|
+
import { isResponseVM } from '@codingame/monaco-vscode-2339d6ac-d6bb-53cd-95ee-81911735d1c7-common/vscode/vs/workbench/contrib/chat/common/chatViewModel';
|
|
21
21
|
import { ChatModeKind } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
|
|
22
22
|
import { IChatWidgetService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat.service';
|
|
23
|
-
import { ToolsScope } from '@codingame/monaco-vscode-
|
|
24
|
-
import { CHAT_CATEGORY } from '@codingame/monaco-vscode-
|
|
23
|
+
import { ToolsScope } from '@codingame/monaco-vscode-a793b3ee-7ba9-5176-a019-30ec806fdd95-common/vscode/vs/workbench/contrib/chat/browser/chatSelectedTools';
|
|
24
|
+
import { CHAT_CATEGORY } from '@codingame/monaco-vscode-2339d6ac-d6bb-53cd-95ee-81911735d1c7-common/vscode/vs/workbench/contrib/chat/browser/actions/chatActions';
|
|
25
25
|
import { AcceptToolConfirmationActionId, SkipToolConfirmationActionId } from '@codingame/monaco-vscode-eda30bac-0984-5b42-9362-c68996b85232-common/vscode/vs/workbench/contrib/chat/browser/actions/chatConstants';
|
|
26
26
|
import { showToolsPicker } from './chatToolPicker.js';
|
|
27
27
|
|
|
@@ -33,9 +33,12 @@ class ToolConfirmationAction extends Action2 {
|
|
|
33
33
|
if (!isResponseVM(lastItem)) {
|
|
34
34
|
return;
|
|
35
35
|
}
|
|
36
|
-
const
|
|
37
|
-
|
|
38
|
-
|
|
36
|
+
for (const item of lastItem.model.response.value) {
|
|
37
|
+
const state = item.kind === 'toolInvocation' ? item.state.get() : undefined;
|
|
38
|
+
if (state?.type === IChatToolInvocation.StateKind.WaitingForConfirmation || state?.type === IChatToolInvocation.StateKind.WaitingForPostApproval) {
|
|
39
|
+
state.confirm(this.getReason());
|
|
40
|
+
break;
|
|
41
|
+
}
|
|
39
42
|
}
|
|
40
43
|
widget?.focusInput();
|
|
41
44
|
}
|
|
@@ -44,7 +47,7 @@ class AcceptToolConfirmation extends ToolConfirmationAction {
|
|
|
44
47
|
constructor() {
|
|
45
48
|
super({
|
|
46
49
|
id: AcceptToolConfirmationActionId,
|
|
47
|
-
title: ( localize2(
|
|
50
|
+
title: ( localize2(4763, "Accept")),
|
|
48
51
|
f1: false,
|
|
49
52
|
category: CHAT_CATEGORY,
|
|
50
53
|
keybinding: {
|
|
@@ -62,7 +65,7 @@ class SkipToolConfirmation extends ToolConfirmationAction {
|
|
|
62
65
|
constructor() {
|
|
63
66
|
super({
|
|
64
67
|
id: SkipToolConfirmationActionId,
|
|
65
|
-
title: ( localize2(
|
|
68
|
+
title: ( localize2(4764, "Skip")),
|
|
66
69
|
f1: false,
|
|
67
70
|
category: CHAT_CATEGORY,
|
|
68
71
|
keybinding: {
|
|
@@ -81,16 +84,16 @@ class ConfigureToolsAction extends Action2 {
|
|
|
81
84
|
constructor() {
|
|
82
85
|
super({
|
|
83
86
|
id: ConfigureToolsAction.ID,
|
|
84
|
-
title: ( localize(
|
|
87
|
+
title: ( localize(4765, "Configure Tools...")),
|
|
85
88
|
icon: Codicon.tools,
|
|
86
89
|
f1: false,
|
|
87
90
|
category: CHAT_CATEGORY,
|
|
88
91
|
precondition: ( ChatContextKeys.chatModeKind.isEqualTo(ChatModeKind.Agent)),
|
|
89
92
|
menu: [{
|
|
90
93
|
when: ( ContextKeyExpr.and(( ChatContextKeys.chatModeKind.isEqualTo(ChatModeKind.Agent)), ( ChatContextKeys.lockedToCodingAgent.negate()))),
|
|
91
|
-
id: MenuId.
|
|
94
|
+
id: MenuId.ChatInput,
|
|
92
95
|
group: 'navigation',
|
|
93
|
-
order:
|
|
96
|
+
order: 100,
|
|
94
97
|
}]
|
|
95
98
|
});
|
|
96
99
|
}
|
|
@@ -116,23 +119,31 @@ class ConfigureToolsAction extends Action2 {
|
|
|
116
119
|
const { entriesScope, entriesMap } = widget.input.selectedToolsModel;
|
|
117
120
|
switch (entriesScope) {
|
|
118
121
|
case ToolsScope.Session:
|
|
119
|
-
placeholder = ( localize(
|
|
122
|
+
placeholder = ( localize(4766, "Select tools for this chat session"));
|
|
123
|
+
description = ( localize(4767, "The selected tools were configured only for this chat session."));
|
|
124
|
+
break;
|
|
125
|
+
case ToolsScope.Agent:
|
|
126
|
+
placeholder = ( localize(4768, "Select tools for this custom agent"));
|
|
120
127
|
description = ( localize(
|
|
121
|
-
|
|
122
|
-
"The selected tools
|
|
128
|
+
4769,
|
|
129
|
+
"The selected tools are configured by the '{0}' custom agent. Changes to the tools will be applied to the custom agent file as well.",
|
|
130
|
+
widget.input.currentModeObs.get().label.get()
|
|
123
131
|
));
|
|
124
132
|
break;
|
|
125
|
-
case ToolsScope.
|
|
126
|
-
placeholder = ( localize(
|
|
133
|
+
case ToolsScope.Agent_ReadOnly:
|
|
134
|
+
placeholder = ( localize(4770, "Select tools for this custom agent"));
|
|
127
135
|
description = ( localize(
|
|
128
|
-
|
|
129
|
-
"The selected tools are configured by the '{0}'
|
|
130
|
-
widget.input.currentModeObs.get().label
|
|
136
|
+
4771,
|
|
137
|
+
"The selected tools are configured by the '{0}' custom agent. Changes to the tools will only be used for this session and will not change the '{0}' custom agent.",
|
|
138
|
+
widget.input.currentModeObs.get().label.get()
|
|
131
139
|
));
|
|
132
140
|
break;
|
|
133
141
|
case ToolsScope.Global:
|
|
134
|
-
placeholder = ( localize(
|
|
135
|
-
description =
|
|
142
|
+
placeholder = ( localize(4772, "Select tools that are available to chat."));
|
|
143
|
+
description = ( localize(
|
|
144
|
+
4773,
|
|
145
|
+
"The selected tools will be applied globally for all chat sessions that use the default agent."
|
|
146
|
+
));
|
|
136
147
|
break;
|
|
137
148
|
}
|
|
138
149
|
const result = await instaService.invokeFunction(showToolsPicker, placeholder, description, () => entriesMap.get());
|
|
@@ -149,7 +160,7 @@ class ConfigureToolsAction extends Action2 {
|
|
|
149
160
|
let ConfigureToolsActionRendering = class ConfigureToolsActionRendering {
|
|
150
161
|
static { this.ID = 'chat.configureToolsActionRendering'; }
|
|
151
162
|
constructor(actionViewItemService) {
|
|
152
|
-
const disposable = actionViewItemService.register(MenuId.
|
|
163
|
+
const disposable = actionViewItemService.register(MenuId.ChatInput, ConfigureToolsAction.ID, (action, _opts, instantiationService) => {
|
|
153
164
|
if (!(action instanceof MenuItemAction)) {
|
|
154
165
|
return undefined;
|
|
155
166
|
}
|
|
@@ -180,7 +191,7 @@ let ConfigureToolsActionRendering = class ConfigureToolsActionRendering {
|
|
|
180
191
|
getTooltip() {
|
|
181
192
|
if (this.isAboveToolLimit()) {
|
|
182
193
|
const warningMessage = ( localize(
|
|
183
|
-
|
|
194
|
+
4774,
|
|
184
195
|
'More than {0} tools are enabled, you may experience degraded tool calling.',
|
|
185
196
|
this._contextKeyService.getContextKeyValue(ChatContextKeys.chatToolGroupingThreshold.key)
|
|
186
197
|
));
|