@codingame/monaco-vscode-chat-service-override 25.1.2 → 26.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 +24 -3
- package/package.json +5 -5
- package/vscode/src/vs/platform/browserElements/common/browserElements.d.ts +23 -3
- package/vscode/src/vs/platform/browserElements/common/browserElements.js +13 -6
- package/vscode/src/vs/platform/domWidget/browser/domWidget.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityService.js +42 -27
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.d.ts +14 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.js +218 -74
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatTerminalOutputAccessibleView.js +6 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.js +14 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +165 -168
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAgentRecommendationActions.js +27 -25
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.js +141 -140
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.js +189 -121
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +14 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCustomizationDiagnosticsAction.d.ts +60 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCustomizationDiagnosticsAction.js +435 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +28 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +10 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatGettingStarted.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatGettingStarted.js +37 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.d.ts +11 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +54 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.js +73 -34
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.js +71 -30
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatNewActions.js +151 -89
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.js +12 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +39 -40
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +90 -125
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.d.ts +5 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +263 -143
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatTransfer.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +188 -126
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.js +37 -28
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.d.ts +21 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.js +392 -226
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.js +31 -27
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsQuickAccess.js +25 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsService.js +1 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjection.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjection.js +13 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionActions.d.ts +20 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionActions.js +83 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.d.ts +68 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.js +319 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionsExperiments.contribution.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionsExperiments.contribution.js +215 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.d.ts +179 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.js +951 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/media/agentsessionprojection.css +20 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/media/agenttitlebarstatuswidget.css +388 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/media/unifiedQuickAccess.css +195 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccess.d.ts +120 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccess.js +394 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccessActions.d.ts +38 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccessActions.js +95 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/localAgentSessionsProvider.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/localAgentSessionsProvider.js +31 -29
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.js +49 -47
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatVariables.js +4 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/media/simpleBrowserOverlay.css +0 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/simpleBrowserEditorOverlay.js +188 -151
- package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +1012 -639
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCheckpointTimelineImpl.js +256 -151
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.d.ts +8 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +182 -101
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingDeletedFileEntry.d.ts +79 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingDeletedFileEntry.js +193 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorAccessibility.js +9 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.d.ts +68 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.js +253 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.d.ts +4 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +69 -50
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.d.ts +3 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +52 -33
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.d.ts +5 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +274 -155
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingOperations.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.d.ts +2 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +130 -104
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.d.ts +12 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +385 -160
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSessionStorage.js +53 -36
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelChangeService.js +112 -75
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelContentProviders.js +19 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/media/chatEditorController.css +31 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingModifiedNotebookSnapshot.js +39 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNewNotebookContentEdits.js +10 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookCellEntry.d.ts +0 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookCellEntry.js +25 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +265 -203
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookFileSystemProvider.js +29 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/helpers.js +114 -60
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/notebookCellChanges.js +16 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/overlayToolbarDecorator.js +44 -30
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.js +119 -45
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.js +152 -136
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.js +12 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.d.ts +51 -31
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.js +323 -217
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.d.ts +4 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.js +653 -401
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatUsageWidget.js +52 -40
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/media/chatModelsWidget.css +22 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.d.ts +5 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +43 -28
- package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +182 -136
- package/vscode/src/vs/workbench/contrib/chat/browser/chatRepoInfo.d.ts +33 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatRepoInfo.js +548 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.d.ts +0 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.js +222 -138
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.d.ts +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.js +151 -113
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.d.ts +6 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.js +453 -217
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.js +162 -88
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/media/chatSetup.css +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatus.d.ts +0 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatus.js +1 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.js +309 -233
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.js +55 -53
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusItemService.js +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.d.ts +37 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.js +109 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.js +35 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/contextContrib/chatContextService.d.ts +9 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/contextContrib/chatContextService.js +73 -33
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelsConfigurationService.d.ts +47 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelsConfigurationService.js +333 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +39 -25
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionContribution.js +9 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +23 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptFileActions.js +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +20 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.js +65 -57
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.js +48 -36
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.js +20 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/skillActions.d.ts +4 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/skillActions.js +52 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.js +155 -159
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.d.ts +24 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.js +521 -246
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +107 -76
- package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +28 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownAnchorService.js +10 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolOutputStateCache.d.ts +16 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolOutputStateCache.js +57 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatLayoutService.js +4 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidgetService.js +56 -44
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatStatusWidget.d.ts +0 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatStatusWidget.js +37 -47
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatEditorInputContentProvider.js +5 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.d.ts +10 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.js +1284 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorContrib.js +179 -125
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorHover.js +9 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/editorHoverWrapper.js +7 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/chatQuick.js +96 -78
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditor.js +58 -53
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.d.ts +25 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.js +484 -292
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewTitleControl.d.ts +1 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewTitleControl.js +65 -92
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/media/chatViewPane.css +16 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/media/chatViewTitleControl.css +1 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.d.ts +9 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.js +331 -189
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceTelemetry.js +81 -93
- package/vscode/src/vs/workbench/contrib/chat/common/ignoredFiles.js +1 -3
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatModelStore.d.ts +5 -3
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatModelStore.js +6 -7
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatToolInvocation.d.ts +36 -8
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatToolInvocation.js +169 -31
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionOperationLog.d.ts +6 -0
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionOperationLog.js +141 -0
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.d.ts +6 -4
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.js +218 -144
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatTransferService.js +20 -10
- package/vscode/src/vs/workbench/contrib/chat/common/model/objectMutationLog.d.ts +109 -0
- package/vscode/src/vs/workbench/contrib/chat/common/model/objectMutationLog.js +349 -0
- package/vscode/src/vs/workbench/contrib/chat/common/participants/chatSlashCommands.js +9 -8
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.d.ts +9 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +139 -36
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/PromptHeaderDefinitionProvider.js +3 -6
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptBodyAutocompletion.js +64 -51
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.js +49 -34
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptDocumentSemanticTokensProvider.js +21 -13
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +125 -97
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.js +91 -131
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptLinkProvider.js +8 -5
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.d.ts +5 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.js +488 -222
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptFileContributions.js +32 -12
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +58 -13
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +717 -200
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +79 -18
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +371 -130
- package/vscode/src/vs/workbench/contrib/chat/common/tools/chatTodoListService.d.ts +0 -1
- package/vscode/src/vs/workbench/contrib/chat/common/tools/chatTodoListService.js +3 -7
- package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +79 -61
- package/vscode/src/vs/workbench/contrib/chat/common/widget/chatResponseResourceFileSystemProvider.js +27 -21
- package/vscode/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.js +7 -10
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.js +26 -32
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAccessibilityHelp.js +2 -2
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.d.ts +8 -60
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +115 -426
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatDefaultModel.d.ts +15 -0
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatDefaultModel.js +127 -0
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatNotebook.js +1 -37
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.d.ts +16 -0
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.js +21 -0
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.d.ts +51 -0
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +334 -0
- package/vscode/src/vs/workbench/contrib/mcp/browser/mcpPromptArgumentPick.d.ts +41 -0
- package/vscode/src/vs/workbench/contrib/mcp/browser/mcpPromptArgumentPick.js +424 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chat/notebookChatUtils.d.ts +4 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chat/notebookChatUtils.js +58 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/cellChatActions.d.ts +7 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/cellChatActions.js +195 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebook.chat.contribution.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebook.chat.contribution.js +368 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +7 -0
- 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 +1 -1
- package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.js +23 -25
- package/vscode/src/vs/workbench/contrib/remoteCodingAgents/common/remoteCodingAgentsService.js +7 -8
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +34 -38
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibleView.js +8 -12
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +103 -95
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatController.js +28 -16
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatEnabler.js +4 -5
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatService.d.ts +12 -8
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatService.js +65 -54
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +86 -60
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/alternativeRecommendation.js +13 -26
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers/commandFileWriteParser.d.ts +24 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers/sedFileWriteParser.d.ts +26 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers/sedFileWriteParser.js +142 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.js +56 -46
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.js +63 -31
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.js +35 -30
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.js +44 -37
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/strategyHelpers.js +3 -4
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/outputHelpers.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.d.ts +11 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +70 -50
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.js +26 -394
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.js +85 -49
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +68 -27
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.js +67 -45
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/awaitTerminalTool.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/awaitTerminalTool.js +106 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/commandLineAutoApprover.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/commandLineAutoApprover.js +177 -97
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/npmScriptAutoApprover.js +136 -49
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAnalyzer.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.js +128 -112
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.js +51 -49
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineSandboxAnalyzer.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineSandboxAnalyzer.js +25 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/commandLinePresenter.d.ts +41 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/nodeCommandLinePresenter.d.ts +19 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/nodeCommandLinePresenter.js +37 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/pythonCommandLinePresenter.d.ts +19 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/pythonCommandLinePresenter.js +37 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/rubyCommandLinePresenter.d.ts +19 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/rubyCommandLinePresenter.js +44 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/sandboxedCommandLinePresenter.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/sandboxedCommandLinePresenter.js +21 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineCdPrefixRewriter.js +5 -14
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePreventHistoryRewriter.js +2 -4
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineRewriter.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineSandboxRewriter.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineSandboxRewriter.js +29 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalLastCommandTool.js +30 -31
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.js +16 -17
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.js +19 -20
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/killTerminalTool.d.ts +11 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/killTerminalTool.js +58 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.d.ts +31 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +325 -199
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/types.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/types.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.js +33 -38
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.d.ts +45 -5
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +746 -456
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/createAndRunTaskTool.js +145 -98
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/getTaskOutputTool.js +88 -37
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/runTaskTool.js +120 -51
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.js +25 -28
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalCommandArtifactCollector.d.ts +5 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalCommandArtifactCollector.js +58 -12
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/toolIds.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/toolIds.js +17 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.d.ts +8 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.js +47 -28
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.d.ts +37 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.js +171 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsControl.d.ts +0 -58
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsControl.js +0 -213
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsFilter.d.ts +0 -39
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsFilter.js +0 -243
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsOpener.d.ts +0 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsOpener.js +0 -41
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.d.ts +0 -166
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.js +0 -607
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/media/agentsessionsviewer.css +0 -255
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.d.ts +0 -46
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js +0 -396
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.d.ts +0 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js +0 -379
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/media/chatEditingEditorOverlay.css +0 -117
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessions.contribution.d.ts +0 -141
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessions.contribution.js +0 -961
- package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.d.ts +0 -36
- package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.js +0 -447
- package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsParametersSchema.d.ts +0 -6
- package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsParametersSchema.js +0 -251
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAccessibleView.d.ts +0 -10
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAccessibleView.js +0 -42
|
@@ -20,54 +20,58 @@ import { ChatEditorInput, showClearEditingSessionConfirmation } from '@codingame
|
|
|
20
20
|
import { IDialogService } from '@codingame/monaco-vscode-api/vscode/vs/platform/dialogs/common/dialogs.service';
|
|
21
21
|
import { IConfigurationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service';
|
|
22
22
|
import { ChatConfiguration } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
|
|
23
|
-
import {
|
|
23
|
+
import { ACTION_ID_NEW_CHAT } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/actions/chatActions';
|
|
24
24
|
import { IViewsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/views/common/viewsService.service';
|
|
25
25
|
import { ICommandService } from '@codingame/monaco-vscode-api/vscode/vs/platform/commands/common/commands.service';
|
|
26
26
|
import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
|
|
27
27
|
import { AgentSessionsPicker } from './agentSessionsPicker.js';
|
|
28
|
-
import { ActiveEditorContext } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/contextkeys';
|
|
28
|
+
import { AuxiliaryBarMaximizedContext, ActiveEditorContext } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/contextkeys';
|
|
29
29
|
import { IQuickInputService } from '@codingame/monaco-vscode-api/vscode/vs/platform/quickinput/common/quickInput.service';
|
|
30
30
|
import { KeybindingWeight } from '@codingame/monaco-vscode-api/vscode/vs/platform/keybinding/common/keybindingsRegistry';
|
|
31
31
|
import { KeyMod, KeyCode } from '@codingame/monaco-vscode-api/vscode/vs/base/common/keyCodes';
|
|
32
|
+
import { coalesce } from '@codingame/monaco-vscode-api/vscode/vs/base/common/arrays';
|
|
33
|
+
import { StorageScope, StorageTarget } from '@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage';
|
|
34
|
+
import { IStorageService } from '@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage.service';
|
|
32
35
|
|
|
33
|
-
|
|
36
|
+
const AGENT_SESSIONS_CATEGORY = ( localize2(4909, "Chat Agent Sessions"));
|
|
37
|
+
class ToggleShowAgentSessionsAction extends Action2 {
|
|
34
38
|
constructor() {
|
|
35
39
|
super({
|
|
36
|
-
id:
|
|
37
|
-
title: ( localize2(
|
|
40
|
+
id: "workbench.action.chat.toggleShowAgentSessions",
|
|
41
|
+
title: ( localize2(4910, "Show Sessions")),
|
|
38
42
|
toggled: ( ContextKeyExpr.equals(`config.${ChatConfiguration.ChatViewSessionsEnabled}`, true)),
|
|
39
43
|
menu: {
|
|
40
44
|
id: MenuId.ChatWelcomeContext,
|
|
41
|
-
group:
|
|
42
|
-
order:
|
|
45
|
+
group: "0_sessions",
|
|
46
|
+
order: 2,
|
|
43
47
|
when: ( ChatContextKeys.inChatEditor.negate())
|
|
44
48
|
}
|
|
45
49
|
});
|
|
46
50
|
}
|
|
47
51
|
async run(accessor) {
|
|
48
52
|
const configurationService = accessor.get(IConfigurationService);
|
|
49
|
-
const
|
|
50
|
-
await configurationService.updateValue(ChatConfiguration.ChatViewSessionsEnabled, !
|
|
53
|
+
const currentValue = configurationService.getValue(ChatConfiguration.ChatViewSessionsEnabled);
|
|
54
|
+
await configurationService.updateValue(ChatConfiguration.ChatViewSessionsEnabled, !currentValue);
|
|
51
55
|
}
|
|
52
56
|
}
|
|
53
|
-
const agentSessionsOrientationSubmenu = ( new MenuId(
|
|
57
|
+
const agentSessionsOrientationSubmenu = ( new MenuId("chatAgentSessionsOrientationSubmenu"));
|
|
54
58
|
MenuRegistry.appendMenuItem(MenuId.ChatWelcomeContext, {
|
|
55
59
|
submenu: agentSessionsOrientationSubmenu,
|
|
56
|
-
title: ( localize2(
|
|
57
|
-
group:
|
|
58
|
-
order:
|
|
60
|
+
title: ( localize2(4911, "Sessions Orientation")),
|
|
61
|
+
group: "0_sessions",
|
|
62
|
+
order: 1,
|
|
59
63
|
when: ( ChatContextKeys.inChatEditor.negate())
|
|
60
64
|
});
|
|
61
65
|
class SetAgentSessionsOrientationStackedAction extends Action2 {
|
|
62
66
|
constructor() {
|
|
63
67
|
super({
|
|
64
|
-
id:
|
|
65
|
-
title: ( localize2(
|
|
66
|
-
toggled: ( ContextKeyExpr.equals(`config.${ChatConfiguration.ChatViewSessionsOrientation}`,
|
|
67
|
-
precondition: ( ContextKeyExpr.equals(`config.${ChatConfiguration.ChatViewSessionsEnabled}`, true)),
|
|
68
|
+
id: "workbench.action.chat.setAgentSessionsOrientationStacked",
|
|
69
|
+
title: ( localize2(4912, "Stacked")),
|
|
70
|
+
toggled: ( ContextKeyExpr.equals(`config.${ChatConfiguration.ChatViewSessionsOrientation}`, "stacked")),
|
|
71
|
+
precondition: ( ContextKeyExpr.and(( ContextKeyExpr.equals(`config.${ChatConfiguration.ChatViewSessionsEnabled}`, true)), ( AuxiliaryBarMaximizedContext.negate()))),
|
|
68
72
|
menu: {
|
|
69
73
|
id: agentSessionsOrientationSubmenu,
|
|
70
|
-
group:
|
|
74
|
+
group: "navigation",
|
|
71
75
|
order: 2
|
|
72
76
|
}
|
|
73
77
|
});
|
|
@@ -80,13 +84,13 @@ class SetAgentSessionsOrientationStackedAction extends Action2 {
|
|
|
80
84
|
class SetAgentSessionsOrientationSideBySideAction extends Action2 {
|
|
81
85
|
constructor() {
|
|
82
86
|
super({
|
|
83
|
-
id:
|
|
84
|
-
title: ( localize2(
|
|
85
|
-
toggled: ( ContextKeyExpr.notEquals(`config.${ChatConfiguration.ChatViewSessionsOrientation}`,
|
|
86
|
-
precondition: ( ContextKeyExpr.equals(`config.${ChatConfiguration.ChatViewSessionsEnabled}`, true)),
|
|
87
|
+
id: "workbench.action.chat.setAgentSessionsOrientationSideBySide",
|
|
88
|
+
title: ( localize2(4913, "Side by Side")),
|
|
89
|
+
toggled: ( ContextKeyExpr.notEquals(`config.${ChatConfiguration.ChatViewSessionsOrientation}`, "stacked")),
|
|
90
|
+
precondition: ( ContextKeyExpr.and(( ContextKeyExpr.equals(`config.${ChatConfiguration.ChatViewSessionsEnabled}`, true)), ( AuxiliaryBarMaximizedContext.negate()))),
|
|
87
91
|
menu: {
|
|
88
92
|
id: agentSessionsOrientationSubmenu,
|
|
89
|
-
group:
|
|
93
|
+
group: "navigation",
|
|
90
94
|
order: 1
|
|
91
95
|
}
|
|
92
96
|
});
|
|
@@ -100,26 +104,17 @@ class PickAgentSessionAction extends Action2 {
|
|
|
100
104
|
constructor() {
|
|
101
105
|
super({
|
|
102
106
|
id: `workbench.action.chat.history`,
|
|
103
|
-
title: ( localize2(
|
|
104
|
-
menu: [
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
group: '2_history',
|
|
115
|
-
order: 1
|
|
116
|
-
},
|
|
117
|
-
{
|
|
118
|
-
id: MenuId.EditorTitle,
|
|
119
|
-
when: ( ActiveEditorContext.isEqualTo(ChatEditorInput.EditorID)),
|
|
120
|
-
}
|
|
121
|
-
],
|
|
122
|
-
category: CHAT_CATEGORY,
|
|
107
|
+
title: ( localize2(4914, "Open Agent Session...")),
|
|
108
|
+
menu: [{
|
|
109
|
+
id: MenuId.ViewTitle,
|
|
110
|
+
when: ( ContextKeyExpr.and(( ContextKeyExpr.equals("view", ChatViewId)), ( ContextKeyExpr.equals(`config.${ChatConfiguration.ChatViewSessionsEnabled}`, false)))),
|
|
111
|
+
group: "navigation",
|
|
112
|
+
order: 2
|
|
113
|
+
}, {
|
|
114
|
+
id: MenuId.EditorTitle,
|
|
115
|
+
when: ( ActiveEditorContext.isEqualTo(ChatEditorInput.EditorID))
|
|
116
|
+
}],
|
|
117
|
+
category: AGENT_SESSIONS_CATEGORY,
|
|
123
118
|
icon: Codicon.history,
|
|
124
119
|
f1: true,
|
|
125
120
|
precondition: ChatContextKeys.enabled
|
|
@@ -134,11 +129,11 @@ class PickAgentSessionAction extends Action2 {
|
|
|
134
129
|
class ArchiveAllAgentSessionsAction extends Action2 {
|
|
135
130
|
constructor() {
|
|
136
131
|
super({
|
|
137
|
-
id:
|
|
138
|
-
title: ( localize2(
|
|
132
|
+
id: "workbench.action.chat.archiveAllAgentSessions",
|
|
133
|
+
title: ( localize2(4915, "Archive All Workspace Agent Sessions")),
|
|
139
134
|
precondition: ChatContextKeys.enabled,
|
|
140
|
-
category:
|
|
141
|
-
f1: true
|
|
135
|
+
category: AGENT_SESSIONS_CATEGORY,
|
|
136
|
+
f1: true
|
|
142
137
|
});
|
|
143
138
|
}
|
|
144
139
|
async run(accessor) {
|
|
@@ -149,15 +144,13 @@ class ArchiveAllAgentSessionsAction extends Action2 {
|
|
|
149
144
|
return;
|
|
150
145
|
}
|
|
151
146
|
const confirmed = await dialogService.confirm({
|
|
152
|
-
message: sessionsToArchive.length === 1
|
|
153
|
-
|
|
154
|
-
: ( localize(
|
|
155
|
-
4862,
|
|
147
|
+
message: sessionsToArchive.length === 1 ? ( localize(4916, "Are you sure you want to archive 1 agent session?")) : ( localize(
|
|
148
|
+
4917,
|
|
156
149
|
"Are you sure you want to archive {0} agent sessions?",
|
|
157
150
|
sessionsToArchive.length
|
|
158
151
|
)),
|
|
159
|
-
detail: ( localize(
|
|
160
|
-
primaryButton: ( localize(
|
|
152
|
+
detail: ( localize(4918, "You can unarchive sessions later if needed from the Chat view.")),
|
|
153
|
+
primaryButton: ( localize(4919, "Archive"))
|
|
161
154
|
});
|
|
162
155
|
if (!confirmed.confirmed) {
|
|
163
156
|
return;
|
|
@@ -167,18 +160,107 @@ class ArchiveAllAgentSessionsAction extends Action2 {
|
|
|
167
160
|
}
|
|
168
161
|
}
|
|
169
162
|
}
|
|
163
|
+
class MarkAllAgentSessionsReadAction extends Action2 {
|
|
164
|
+
constructor() {
|
|
165
|
+
super({
|
|
166
|
+
id: "workbench.action.chat.markAllAgentSessionsRead",
|
|
167
|
+
title: ( localize2(4920, "Mark All as Read")),
|
|
168
|
+
precondition: ChatContextKeys.enabled,
|
|
169
|
+
category: AGENT_SESSIONS_CATEGORY,
|
|
170
|
+
f1: true,
|
|
171
|
+
menu: {
|
|
172
|
+
id: MenuId.AgentSessionsContext,
|
|
173
|
+
group: "0_read",
|
|
174
|
+
order: 2,
|
|
175
|
+
when: ( ChatContextKeys.isArchivedAgentSession.negate())
|
|
176
|
+
}
|
|
177
|
+
});
|
|
178
|
+
}
|
|
179
|
+
async run(accessor) {
|
|
180
|
+
const agentSessionsService = accessor.get(IAgentSessionsService);
|
|
181
|
+
const sessionsToMarkRead = agentSessionsService.model.sessions.filter(session => !session.isArchived() && !session.isRead());
|
|
182
|
+
if (sessionsToMarkRead.length === 0) {
|
|
183
|
+
return;
|
|
184
|
+
}
|
|
185
|
+
for (const session of sessionsToMarkRead) {
|
|
186
|
+
session.setRead(true);
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
const ConfirmArchiveStorageKey = "chat.sessions.confirmArchive";
|
|
170
191
|
class ArchiveAgentSessionSectionAction extends Action2 {
|
|
171
192
|
constructor() {
|
|
172
193
|
super({
|
|
173
|
-
id:
|
|
174
|
-
title: ( localize2(
|
|
194
|
+
id: "agentSessionSection.archive",
|
|
195
|
+
title: ( localize2(4921, "Archive All")),
|
|
175
196
|
icon: Codicon.archive,
|
|
176
|
-
menu: {
|
|
197
|
+
menu: [{
|
|
177
198
|
id: MenuId.AgentSessionSectionToolbar,
|
|
178
|
-
group:
|
|
199
|
+
group: "navigation",
|
|
179
200
|
order: 1,
|
|
180
|
-
when: ( ChatContextKeys.agentSessionSection.notEqualsTo(AgentSessionSection.Archived))
|
|
201
|
+
when: ( ChatContextKeys.agentSessionSection.notEqualsTo(AgentSessionSection.Archived))
|
|
202
|
+
}, {
|
|
203
|
+
id: MenuId.AgentSessionSectionContext,
|
|
204
|
+
group: "1_edit",
|
|
205
|
+
order: 2,
|
|
206
|
+
when: ( ChatContextKeys.agentSessionSection.notEqualsTo(AgentSessionSection.Archived))
|
|
207
|
+
}]
|
|
208
|
+
});
|
|
209
|
+
}
|
|
210
|
+
async run(accessor, context) {
|
|
211
|
+
if (!context || !isAgentSessionSection(context)) {
|
|
212
|
+
return;
|
|
213
|
+
}
|
|
214
|
+
const dialogService = accessor.get(IDialogService);
|
|
215
|
+
const storageService = accessor.get(IStorageService);
|
|
216
|
+
const skipConfirmation = storageService.getBoolean(ConfirmArchiveStorageKey, StorageScope.PROFILE, false);
|
|
217
|
+
if (!skipConfirmation) {
|
|
218
|
+
const confirmed = await dialogService.confirm({
|
|
219
|
+
message: context.sessions.length === 1 ? ( localize(
|
|
220
|
+
4922,
|
|
221
|
+
"Are you sure you want to archive 1 agent session from '{0}'?",
|
|
222
|
+
context.label
|
|
223
|
+
)) : ( localize(
|
|
224
|
+
4923,
|
|
225
|
+
"Are you sure you want to archive {0} agent sessions from '{1}'?",
|
|
226
|
+
context.sessions.length,
|
|
227
|
+
context.label
|
|
228
|
+
)),
|
|
229
|
+
detail: ( localize(4924, "You can unarchive sessions later if needed from the sessions view.")),
|
|
230
|
+
primaryButton: ( localize(4925, "Archive All")),
|
|
231
|
+
checkbox: {
|
|
232
|
+
label: ( localize(4926, "Do not ask me again"))
|
|
233
|
+
}
|
|
234
|
+
});
|
|
235
|
+
if (!confirmed.confirmed) {
|
|
236
|
+
return;
|
|
181
237
|
}
|
|
238
|
+
if (confirmed.checkboxChecked) {
|
|
239
|
+
storageService.store(ConfirmArchiveStorageKey, true, StorageScope.PROFILE, StorageTarget.USER);
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
for (const session of context.sessions) {
|
|
243
|
+
session.setArchived(true);
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
class UnarchiveAgentSessionSectionAction extends Action2 {
|
|
248
|
+
constructor() {
|
|
249
|
+
super({
|
|
250
|
+
id: "agentSessionSection.unarchive",
|
|
251
|
+
title: ( localize2(4927, "Unarchive All")),
|
|
252
|
+
icon: Codicon.unarchive,
|
|
253
|
+
menu: [{
|
|
254
|
+
id: MenuId.AgentSessionSectionToolbar,
|
|
255
|
+
group: "navigation",
|
|
256
|
+
order: 1,
|
|
257
|
+
when: ( ChatContextKeys.agentSessionSection.isEqualTo(AgentSessionSection.Archived))
|
|
258
|
+
}, {
|
|
259
|
+
id: MenuId.AgentSessionSectionContext,
|
|
260
|
+
group: "1_edit",
|
|
261
|
+
order: 2,
|
|
262
|
+
when: ( ChatContextKeys.agentSessionSection.isEqualTo(AgentSessionSection.Archived))
|
|
263
|
+
}]
|
|
182
264
|
});
|
|
183
265
|
}
|
|
184
266
|
async run(accessor, context) {
|
|
@@ -186,27 +268,51 @@ class ArchiveAgentSessionSectionAction extends Action2 {
|
|
|
186
268
|
return;
|
|
187
269
|
}
|
|
188
270
|
const dialogService = accessor.get(IDialogService);
|
|
189
|
-
const
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
"Are you sure you want to
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
271
|
+
const storageService = accessor.get(IStorageService);
|
|
272
|
+
const skipConfirmation = storageService.getBoolean(ConfirmArchiveStorageKey, StorageScope.PROFILE, false);
|
|
273
|
+
if (!skipConfirmation) {
|
|
274
|
+
const confirmed = await dialogService.confirm({
|
|
275
|
+
message: context.sessions.length === 1 ? ( localize(4928, "Are you sure you want to unarchive 1 agent session?")) : ( localize(
|
|
276
|
+
4929,
|
|
277
|
+
"Are you sure you want to unarchive {0} agent sessions?",
|
|
278
|
+
context.sessions.length
|
|
279
|
+
)),
|
|
280
|
+
primaryButton: ( localize(4930, "Unarchive All")),
|
|
281
|
+
checkbox: {
|
|
282
|
+
label: ( localize(4926, "Do not ask me again"))
|
|
283
|
+
}
|
|
284
|
+
});
|
|
285
|
+
if (!confirmed.confirmed) {
|
|
286
|
+
return;
|
|
287
|
+
}
|
|
288
|
+
if (confirmed.checkboxChecked) {
|
|
289
|
+
storageService.store(ConfirmArchiveStorageKey, true, StorageScope.PROFILE, StorageTarget.USER);
|
|
290
|
+
}
|
|
291
|
+
}
|
|
292
|
+
for (const session of context.sessions) {
|
|
293
|
+
session.setArchived(false);
|
|
294
|
+
}
|
|
295
|
+
}
|
|
296
|
+
}
|
|
297
|
+
class MarkAgentSessionSectionReadAction extends Action2 {
|
|
298
|
+
constructor() {
|
|
299
|
+
super({
|
|
300
|
+
id: "agentSessionSection.markRead",
|
|
301
|
+
title: ( localize2(4931, "Mark All as Read")),
|
|
302
|
+
menu: [{
|
|
303
|
+
id: MenuId.AgentSessionSectionContext,
|
|
304
|
+
group: "1_edit",
|
|
305
|
+
order: 1,
|
|
306
|
+
when: ( ChatContextKeys.agentSessionSection.notEqualsTo(AgentSessionSection.Archived))
|
|
307
|
+
}]
|
|
204
308
|
});
|
|
205
|
-
|
|
309
|
+
}
|
|
310
|
+
async run(accessor, context) {
|
|
311
|
+
if (!context || !isAgentSessionSection(context)) {
|
|
206
312
|
return;
|
|
207
313
|
}
|
|
208
314
|
for (const session of context.sessions) {
|
|
209
|
-
session.
|
|
315
|
+
session.setRead(true);
|
|
210
316
|
}
|
|
211
317
|
}
|
|
212
318
|
}
|
|
@@ -214,107 +320,117 @@ class BaseAgentSessionAction extends Action2 {
|
|
|
214
320
|
async run(accessor, context) {
|
|
215
321
|
const agentSessionsService = accessor.get(IAgentSessionsService);
|
|
216
322
|
const viewsService = accessor.get(IViewsService);
|
|
217
|
-
let
|
|
323
|
+
let sessions = [];
|
|
218
324
|
if (isMarshalledAgentSessionContext(context)) {
|
|
219
|
-
|
|
325
|
+
sessions = coalesce(( (context.sessions ?? [context.session]).map(session => agentSessionsService.getSession(session.resource))));
|
|
326
|
+
} else if (context) {
|
|
327
|
+
sessions = [context];
|
|
220
328
|
}
|
|
221
|
-
|
|
222
|
-
session = context;
|
|
223
|
-
}
|
|
224
|
-
if (!session) {
|
|
329
|
+
if (sessions.length === 0) {
|
|
225
330
|
const chatView = viewsService.getActiveViewWithId(ChatViewId);
|
|
226
|
-
|
|
331
|
+
const focused = chatView?.getFocusedSessions().at(0);
|
|
332
|
+
if (focused) {
|
|
333
|
+
sessions = [focused];
|
|
334
|
+
}
|
|
227
335
|
}
|
|
228
|
-
if (
|
|
229
|
-
await this.
|
|
336
|
+
if (sessions.length > 0) {
|
|
337
|
+
await this.runWithSessions(sessions, accessor);
|
|
230
338
|
}
|
|
231
339
|
}
|
|
232
340
|
}
|
|
233
341
|
class MarkAgentSessionUnreadAction extends BaseAgentSessionAction {
|
|
234
342
|
constructor() {
|
|
235
343
|
super({
|
|
236
|
-
id:
|
|
237
|
-
title: ( localize2(
|
|
344
|
+
id: "agentSession.markUnread",
|
|
345
|
+
title: ( localize2(4932, "Mark as Unread")),
|
|
238
346
|
menu: {
|
|
239
347
|
id: MenuId.AgentSessionsContext,
|
|
240
|
-
group:
|
|
348
|
+
group: "0_read",
|
|
241
349
|
order: 1,
|
|
242
350
|
when: ( ContextKeyExpr.and(ChatContextKeys.isReadAgentSession, (
|
|
243
|
-
ChatContextKeys.isArchivedAgentSession.negate())))
|
|
351
|
+
ChatContextKeys.isArchivedAgentSession.negate())))
|
|
244
352
|
}
|
|
245
353
|
});
|
|
246
354
|
}
|
|
247
|
-
|
|
248
|
-
session
|
|
355
|
+
runWithSessions(sessions) {
|
|
356
|
+
for (const session of sessions) {
|
|
357
|
+
session.setRead(false);
|
|
358
|
+
}
|
|
249
359
|
}
|
|
250
360
|
}
|
|
251
361
|
class MarkAgentSessionReadAction extends BaseAgentSessionAction {
|
|
252
362
|
constructor() {
|
|
253
363
|
super({
|
|
254
|
-
id:
|
|
255
|
-
title: ( localize2(
|
|
364
|
+
id: "agentSession.markRead",
|
|
365
|
+
title: ( localize2(4933, "Mark as Read")),
|
|
256
366
|
menu: {
|
|
257
367
|
id: MenuId.AgentSessionsContext,
|
|
258
|
-
group:
|
|
368
|
+
group: "0_read",
|
|
259
369
|
order: 1,
|
|
260
370
|
when: ( ContextKeyExpr.and(( ChatContextKeys.isReadAgentSession.negate()), (
|
|
261
|
-
ChatContextKeys.isArchivedAgentSession.negate())))
|
|
371
|
+
ChatContextKeys.isArchivedAgentSession.negate())))
|
|
262
372
|
}
|
|
263
373
|
});
|
|
264
374
|
}
|
|
265
|
-
|
|
266
|
-
session
|
|
375
|
+
runWithSessions(sessions) {
|
|
376
|
+
for (const session of sessions) {
|
|
377
|
+
session.setRead(true);
|
|
378
|
+
}
|
|
267
379
|
}
|
|
268
380
|
}
|
|
269
381
|
class ArchiveAgentSessionAction extends BaseAgentSessionAction {
|
|
270
382
|
constructor() {
|
|
271
383
|
super({
|
|
272
|
-
id:
|
|
273
|
-
title: ( localize2(
|
|
384
|
+
id: "agentSession.archive",
|
|
385
|
+
title: ( localize2(4934, "Archive")),
|
|
274
386
|
icon: Codicon.archive,
|
|
275
387
|
keybinding: {
|
|
276
388
|
primary: KeyCode.Delete,
|
|
277
|
-
mac: {
|
|
389
|
+
mac: {
|
|
390
|
+
primary: KeyMod.CtrlCmd | KeyCode.Backspace
|
|
391
|
+
},
|
|
278
392
|
weight: KeybindingWeight.WorkbenchContrib + 1,
|
|
279
393
|
when: ( ContextKeyExpr.and(ChatContextKeys.agentSessionsViewerFocused, ( ChatContextKeys.isArchivedAgentSession.negate())))
|
|
280
394
|
},
|
|
281
395
|
menu: [{
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
396
|
+
id: MenuId.AgentSessionItemToolbar,
|
|
397
|
+
group: "navigation",
|
|
398
|
+
order: 1,
|
|
399
|
+
when: ( ChatContextKeys.isArchivedAgentSession.negate())
|
|
400
|
+
}, {
|
|
401
|
+
id: MenuId.AgentSessionsContext,
|
|
402
|
+
group: "1_edit",
|
|
403
|
+
order: 2,
|
|
404
|
+
when: ( ChatContextKeys.isArchivedAgentSession.negate())
|
|
405
|
+
}]
|
|
292
406
|
});
|
|
293
407
|
}
|
|
294
|
-
async
|
|
408
|
+
async runWithSessions(sessions, accessor) {
|
|
295
409
|
const chatService = accessor.get(IChatService);
|
|
296
|
-
const chatModel = chatService.getSession(session.resource);
|
|
297
410
|
const dialogService = accessor.get(IDialogService);
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
411
|
+
for (const session of sessions) {
|
|
412
|
+
const chatModel = chatService.getSession(session.resource);
|
|
413
|
+
if (chatModel && !(await showClearEditingSessionConfirmation(chatModel, dialogService, {
|
|
414
|
+
isArchiveAction: true,
|
|
415
|
+
titleOverride: ( localize(4935, "Archive chat with pending edits?")),
|
|
416
|
+
messageOverride: ( localize(4936, "You have pending changes in this chat session."))
|
|
417
|
+
}))) {
|
|
418
|
+
return;
|
|
419
|
+
}
|
|
420
|
+
session.setArchived(true);
|
|
304
421
|
}
|
|
305
|
-
session.setArchived(true);
|
|
306
422
|
}
|
|
307
423
|
}
|
|
308
424
|
class UnarchiveAgentSessionAction extends BaseAgentSessionAction {
|
|
309
425
|
constructor() {
|
|
310
426
|
super({
|
|
311
|
-
id:
|
|
312
|
-
title: ( localize2(
|
|
427
|
+
id: "agentSession.unarchive",
|
|
428
|
+
title: ( localize2(4937, "Unarchive")),
|
|
313
429
|
icon: Codicon.unarchive,
|
|
314
430
|
keybinding: {
|
|
315
431
|
primary: KeyMod.Shift | KeyCode.Delete,
|
|
316
432
|
mac: {
|
|
317
|
-
primary: KeyMod.CtrlCmd | KeyMod.Shift | KeyCode.Backspace
|
|
433
|
+
primary: KeyMod.CtrlCmd | KeyMod.Shift | KeyCode.Backspace
|
|
318
434
|
},
|
|
319
435
|
weight: KeybindingWeight.WorkbenchContrib + 1,
|
|
320
436
|
when: ( ContextKeyExpr.and(
|
|
@@ -323,47 +439,57 @@ class UnarchiveAgentSessionAction extends BaseAgentSessionAction {
|
|
|
323
439
|
))
|
|
324
440
|
},
|
|
325
441
|
menu: [{
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
442
|
+
id: MenuId.AgentSessionItemToolbar,
|
|
443
|
+
group: "navigation",
|
|
444
|
+
order: 1,
|
|
445
|
+
when: ChatContextKeys.isArchivedAgentSession
|
|
446
|
+
}, {
|
|
447
|
+
id: MenuId.AgentSessionsContext,
|
|
448
|
+
group: "1_edit",
|
|
449
|
+
order: 2,
|
|
450
|
+
when: ChatContextKeys.isArchivedAgentSession
|
|
451
|
+
}]
|
|
336
452
|
});
|
|
337
453
|
}
|
|
338
|
-
|
|
339
|
-
session
|
|
454
|
+
runWithSessions(sessions) {
|
|
455
|
+
for (const session of sessions) {
|
|
456
|
+
session.setArchived(false);
|
|
457
|
+
}
|
|
340
458
|
}
|
|
341
459
|
}
|
|
342
460
|
class RenameAgentSessionAction extends BaseAgentSessionAction {
|
|
343
461
|
constructor() {
|
|
344
462
|
super({
|
|
345
463
|
id: AGENT_SESSION_RENAME_ACTION_ID,
|
|
346
|
-
title: ( localize2(
|
|
464
|
+
title: ( localize2(4938, "Rename...")),
|
|
465
|
+
precondition: ( ChatContextKeys.hasMultipleAgentSessionsSelected.negate()),
|
|
347
466
|
keybinding: {
|
|
348
467
|
primary: KeyCode.F2,
|
|
349
468
|
mac: {
|
|
350
469
|
primary: KeyCode.Enter
|
|
351
470
|
},
|
|
352
471
|
weight: KeybindingWeight.WorkbenchContrib + 1,
|
|
353
|
-
when: ( ContextKeyExpr.and(ChatContextKeys.agentSessionsViewerFocused, ( ChatContextKeys.agentSessionType.isEqualTo(AgentSessionProviders.Local))))
|
|
472
|
+
when: ( ContextKeyExpr.and(ChatContextKeys.agentSessionsViewerFocused, ( ChatContextKeys.agentSessionType.isEqualTo(AgentSessionProviders.Local))))
|
|
354
473
|
},
|
|
355
474
|
menu: {
|
|
356
475
|
id: MenuId.AgentSessionsContext,
|
|
357
|
-
group:
|
|
476
|
+
group: "1_edit",
|
|
358
477
|
order: 3,
|
|
359
478
|
when: ( ChatContextKeys.agentSessionType.isEqualTo(AgentSessionProviders.Local))
|
|
360
479
|
}
|
|
361
480
|
});
|
|
362
481
|
}
|
|
363
|
-
async
|
|
482
|
+
async runWithSessions(sessions, accessor) {
|
|
483
|
+
const session = sessions.at(0);
|
|
484
|
+
if (!session) {
|
|
485
|
+
return;
|
|
486
|
+
}
|
|
364
487
|
const quickInputService = accessor.get(IQuickInputService);
|
|
365
488
|
const chatService = accessor.get(IChatService);
|
|
366
|
-
const title = await quickInputService.input({
|
|
489
|
+
const title = await quickInputService.input({
|
|
490
|
+
prompt: ( localize(4939, "New agent session title")),
|
|
491
|
+
value: session.label
|
|
492
|
+
});
|
|
367
493
|
if (title) {
|
|
368
494
|
chatService.setChatSessionTitle(session.resource, title);
|
|
369
495
|
}
|
|
@@ -373,39 +499,48 @@ class DeleteAgentSessionAction extends BaseAgentSessionAction {
|
|
|
373
499
|
constructor() {
|
|
374
500
|
super({
|
|
375
501
|
id: AGENT_SESSION_DELETE_ACTION_ID,
|
|
376
|
-
title: ( localize2(
|
|
502
|
+
title: ( localize2(4940, "Delete...")),
|
|
377
503
|
menu: {
|
|
378
504
|
id: MenuId.AgentSessionsContext,
|
|
379
|
-
group:
|
|
505
|
+
group: "1_edit",
|
|
380
506
|
order: 4,
|
|
381
507
|
when: ( ChatContextKeys.agentSessionType.isEqualTo(AgentSessionProviders.Local))
|
|
382
508
|
}
|
|
383
509
|
});
|
|
384
510
|
}
|
|
385
|
-
async
|
|
511
|
+
async runWithSessions(sessions, accessor) {
|
|
512
|
+
if (sessions.length === 0) {
|
|
513
|
+
return;
|
|
514
|
+
}
|
|
386
515
|
const chatService = accessor.get(IChatService);
|
|
387
516
|
const dialogService = accessor.get(IDialogService);
|
|
388
517
|
const widgetService = accessor.get(IChatWidgetService);
|
|
389
518
|
const confirmed = await dialogService.confirm({
|
|
390
|
-
message: ( localize(
|
|
391
|
-
|
|
392
|
-
|
|
519
|
+
message: sessions.length === 1 ? ( localize(4941, "Are you sure you want to delete this chat session?")) : ( localize(
|
|
520
|
+
4942,
|
|
521
|
+
"Are you sure you want to delete {0} chat sessions?",
|
|
522
|
+
sessions.length
|
|
523
|
+
)),
|
|
524
|
+
detail: ( localize(4943, "This action cannot be undone.")),
|
|
525
|
+
primaryButton: ( localize(4944, "Delete"))
|
|
393
526
|
});
|
|
394
527
|
if (!confirmed.confirmed) {
|
|
395
528
|
return;
|
|
396
529
|
}
|
|
397
|
-
|
|
398
|
-
|
|
530
|
+
for (const session of sessions) {
|
|
531
|
+
await widgetService.getWidgetBySessionResource(session.resource)?.clear();
|
|
532
|
+
await chatService.removeHistoryEntry(session.resource);
|
|
533
|
+
}
|
|
399
534
|
}
|
|
400
535
|
}
|
|
401
536
|
class DeleteAllLocalSessionsAction extends Action2 {
|
|
402
537
|
constructor() {
|
|
403
538
|
super({
|
|
404
|
-
id:
|
|
405
|
-
title: ( localize2(
|
|
539
|
+
id: "workbench.action.chat.clearHistory",
|
|
540
|
+
title: ( localize2(4945, "Delete All Local Workspace Chat Sessions")),
|
|
406
541
|
precondition: ChatContextKeys.enabled,
|
|
407
|
-
category:
|
|
408
|
-
f1: true
|
|
542
|
+
category: AGENT_SESSIONS_CATEGORY,
|
|
543
|
+
f1: true
|
|
409
544
|
});
|
|
410
545
|
}
|
|
411
546
|
async run(accessor, ...args) {
|
|
@@ -418,15 +553,13 @@ class DeleteAllLocalSessionsAction extends Action2 {
|
|
|
418
553
|
return;
|
|
419
554
|
}
|
|
420
555
|
const confirmed = await dialogService.confirm({
|
|
421
|
-
message: localSessionsCount === 1
|
|
422
|
-
|
|
423
|
-
: ( localize(
|
|
424
|
-
4884,
|
|
556
|
+
message: localSessionsCount === 1 ? ( localize(4946, "Are you sure you want to delete 1 local workspace chat session?")) : ( localize(
|
|
557
|
+
4947,
|
|
425
558
|
"Are you sure you want to delete {0} local workspace chat sessions?",
|
|
426
559
|
localSessionsCount
|
|
427
560
|
)),
|
|
428
|
-
detail: ( localize(
|
|
429
|
-
primaryButton: ( localize(
|
|
561
|
+
detail: ( localize(4948, "This action cannot be undone.")),
|
|
562
|
+
primaryButton: ( localize(4949, "Delete All"))
|
|
430
563
|
});
|
|
431
564
|
if (!confirmed.confirmed) {
|
|
432
565
|
return;
|
|
@@ -436,33 +569,38 @@ class DeleteAllLocalSessionsAction extends Action2 {
|
|
|
436
569
|
}
|
|
437
570
|
}
|
|
438
571
|
class BaseOpenAgentSessionAction extends BaseAgentSessionAction {
|
|
439
|
-
async
|
|
572
|
+
async runWithSessions(sessions, accessor) {
|
|
440
573
|
const chatWidgetService = accessor.get(IChatWidgetService);
|
|
441
|
-
const
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
574
|
+
const targetGroup = this.getTargetGroup();
|
|
575
|
+
for (const session of sessions) {
|
|
576
|
+
const uri = session.resource;
|
|
577
|
+
await chatWidgetService.openSession(uri, targetGroup, {
|
|
578
|
+
...this.getOptions(),
|
|
579
|
+
pinned: true
|
|
580
|
+
});
|
|
581
|
+
}
|
|
446
582
|
}
|
|
447
583
|
}
|
|
448
584
|
class OpenAgentSessionInEditorGroupAction extends BaseOpenAgentSessionAction {
|
|
449
|
-
static {
|
|
585
|
+
static {
|
|
586
|
+
this.id = "workbench.action.chat.openSessionInEditorGroup";
|
|
587
|
+
}
|
|
450
588
|
constructor() {
|
|
451
589
|
super({
|
|
452
590
|
id: OpenAgentSessionInEditorGroupAction.id,
|
|
453
|
-
title: ( localize2(
|
|
591
|
+
title: ( localize2(4950, "Open as Editor")),
|
|
454
592
|
keybinding: {
|
|
455
593
|
primary: KeyMod.CtrlCmd | KeyCode.Enter,
|
|
456
594
|
mac: {
|
|
457
595
|
primary: KeyMod.WinCtrl | KeyCode.Enter
|
|
458
596
|
},
|
|
459
597
|
weight: KeybindingWeight.WorkbenchContrib + 1,
|
|
460
|
-
when: ChatContextKeys.agentSessionsViewerFocused
|
|
598
|
+
when: ChatContextKeys.agentSessionsViewerFocused
|
|
461
599
|
},
|
|
462
600
|
menu: {
|
|
463
601
|
id: MenuId.AgentSessionsContext,
|
|
464
602
|
order: 1,
|
|
465
|
-
group:
|
|
603
|
+
group: "navigation"
|
|
466
604
|
}
|
|
467
605
|
});
|
|
468
606
|
}
|
|
@@ -474,23 +612,25 @@ class OpenAgentSessionInEditorGroupAction extends BaseOpenAgentSessionAction {
|
|
|
474
612
|
}
|
|
475
613
|
}
|
|
476
614
|
class OpenAgentSessionInNewEditorGroupAction extends BaseOpenAgentSessionAction {
|
|
477
|
-
static {
|
|
615
|
+
static {
|
|
616
|
+
this.id = "workbench.action.chat.openSessionInNewEditorGroup";
|
|
617
|
+
}
|
|
478
618
|
constructor() {
|
|
479
619
|
super({
|
|
480
620
|
id: OpenAgentSessionInNewEditorGroupAction.id,
|
|
481
|
-
title: ( localize2(
|
|
621
|
+
title: ( localize2(4951, "Open to the Side")),
|
|
482
622
|
keybinding: {
|
|
483
623
|
primary: KeyMod.CtrlCmd | KeyMod.Alt | KeyCode.Enter,
|
|
484
624
|
mac: {
|
|
485
625
|
primary: KeyMod.WinCtrl | KeyMod.Alt | KeyCode.Enter
|
|
486
626
|
},
|
|
487
627
|
weight: KeybindingWeight.WorkbenchContrib + 1,
|
|
488
|
-
when: ChatContextKeys.agentSessionsViewerFocused
|
|
628
|
+
when: ChatContextKeys.agentSessionsViewerFocused
|
|
489
629
|
},
|
|
490
630
|
menu: {
|
|
491
631
|
id: MenuId.AgentSessionsContext,
|
|
492
632
|
order: 2,
|
|
493
|
-
group:
|
|
633
|
+
group: "navigation"
|
|
494
634
|
}
|
|
495
635
|
});
|
|
496
636
|
}
|
|
@@ -502,15 +642,17 @@ class OpenAgentSessionInNewEditorGroupAction extends BaseOpenAgentSessionAction
|
|
|
502
642
|
}
|
|
503
643
|
}
|
|
504
644
|
class OpenAgentSessionInNewWindowAction extends BaseOpenAgentSessionAction {
|
|
505
|
-
static {
|
|
645
|
+
static {
|
|
646
|
+
this.id = "workbench.action.chat.openSessionInNewWindow";
|
|
647
|
+
}
|
|
506
648
|
constructor() {
|
|
507
649
|
super({
|
|
508
650
|
id: OpenAgentSessionInNewWindowAction.id,
|
|
509
|
-
title: ( localize2(
|
|
651
|
+
title: ( localize2(4952, "Open in New Window")),
|
|
510
652
|
menu: {
|
|
511
653
|
id: MenuId.AgentSessionsContext,
|
|
512
654
|
order: 3,
|
|
513
|
-
group:
|
|
655
|
+
group: "navigation"
|
|
514
656
|
}
|
|
515
657
|
});
|
|
516
658
|
}
|
|
@@ -519,22 +661,27 @@ class OpenAgentSessionInNewWindowAction extends BaseOpenAgentSessionAction {
|
|
|
519
661
|
}
|
|
520
662
|
getOptions() {
|
|
521
663
|
return {
|
|
522
|
-
auxiliary: {
|
|
664
|
+
auxiliary: {
|
|
665
|
+
compact: true,
|
|
666
|
+
bounds: {
|
|
667
|
+
width: 800,
|
|
668
|
+
height: 640
|
|
669
|
+
}
|
|
670
|
+
}
|
|
523
671
|
};
|
|
524
672
|
}
|
|
525
673
|
}
|
|
526
674
|
class RefreshAgentSessionsViewerAction extends Action2 {
|
|
527
675
|
constructor() {
|
|
528
676
|
super({
|
|
529
|
-
id:
|
|
530
|
-
title: ( localize2(
|
|
677
|
+
id: "agentSessionsViewer.refresh",
|
|
678
|
+
title: ( localize2(4953, "Refresh Agent Sessions")),
|
|
531
679
|
icon: Codicon.refresh,
|
|
532
680
|
menu: {
|
|
533
681
|
id: MenuId.AgentSessionsToolbar,
|
|
534
|
-
group:
|
|
535
|
-
order: 1
|
|
536
|
-
|
|
537
|
-
},
|
|
682
|
+
group: "navigation",
|
|
683
|
+
order: 1
|
|
684
|
+
}
|
|
538
685
|
});
|
|
539
686
|
}
|
|
540
687
|
run(accessor, agentSessionsControl) {
|
|
@@ -544,14 +691,13 @@ class RefreshAgentSessionsViewerAction extends Action2 {
|
|
|
544
691
|
class FindAgentSessionInViewerAction extends Action2 {
|
|
545
692
|
constructor() {
|
|
546
693
|
super({
|
|
547
|
-
id:
|
|
548
|
-
title: ( localize2(
|
|
694
|
+
id: "agentSessionsViewer.find",
|
|
695
|
+
title: ( localize2(4954, "Find Agent Session")),
|
|
549
696
|
icon: Codicon.search,
|
|
550
697
|
menu: {
|
|
551
698
|
id: MenuId.AgentSessionsToolbar,
|
|
552
|
-
group:
|
|
553
|
-
order: 2
|
|
554
|
-
when: ( ChatContextKeys.agentSessionsViewerLimited.negate())
|
|
699
|
+
group: "navigation",
|
|
700
|
+
order: 2
|
|
555
701
|
}
|
|
556
702
|
});
|
|
557
703
|
}
|
|
@@ -566,7 +712,7 @@ class UpdateChatViewWidthAction extends Action2 {
|
|
|
566
712
|
const configurationService = accessor.get(IConfigurationService);
|
|
567
713
|
const viewsService = accessor.get(IViewsService);
|
|
568
714
|
const chatLocation = viewDescriptorService.getViewLocationById(ChatViewId);
|
|
569
|
-
if (typeof chatLocation !==
|
|
715
|
+
if (typeof chatLocation !== "number") {
|
|
570
716
|
return;
|
|
571
717
|
}
|
|
572
718
|
const panelPosition = layoutService.getPanelPosition();
|
|
@@ -584,19 +730,17 @@ class UpdateChatViewWidthAction extends Action2 {
|
|
|
584
730
|
}
|
|
585
731
|
const configuredOrientation = configurationService.getValue(ChatConfiguration.ChatViewSessionsOrientation);
|
|
586
732
|
let validatedConfiguredOrientation;
|
|
587
|
-
if (configuredOrientation ===
|
|
733
|
+
if (configuredOrientation === "stacked" || configuredOrientation === "sideBySide") {
|
|
588
734
|
validatedConfiguredOrientation = configuredOrientation;
|
|
589
|
-
}
|
|
590
|
-
|
|
591
|
-
validatedConfiguredOrientation = 'sideBySide';
|
|
735
|
+
} else {
|
|
736
|
+
validatedConfiguredOrientation = "sideBySide";
|
|
592
737
|
}
|
|
593
738
|
const newOrientation = this.getOrientation();
|
|
594
739
|
const lastWidthForOrientation = chatView?.getLastDimensions(newOrientation)?.width;
|
|
595
|
-
if ((!canResizeView || validatedConfiguredOrientation ===
|
|
596
|
-
chatView.updateConfiguredSessionsViewerOrientation(
|
|
597
|
-
}
|
|
598
|
-
|
|
599
|
-
chatView.updateConfiguredSessionsViewerOrientation('sideBySide');
|
|
740
|
+
if ((!canResizeView || validatedConfiguredOrientation === "sideBySide") && newOrientation === AgentSessionsViewerOrientation.Stacked) {
|
|
741
|
+
chatView.updateConfiguredSessionsViewerOrientation("stacked");
|
|
742
|
+
} else if ((!canResizeView || validatedConfiguredOrientation === "stacked") && newOrientation === AgentSessionsViewerOrientation.SideBySide) {
|
|
743
|
+
chatView.updateConfiguredSessionsViewerOrientation("sideBySide");
|
|
600
744
|
}
|
|
601
745
|
if (!canResizeView) {
|
|
602
746
|
return;
|
|
@@ -604,10 +748,10 @@ class UpdateChatViewWidthAction extends Action2 {
|
|
|
604
748
|
const part = getPartByLocation(chatLocation);
|
|
605
749
|
let currentSize = layoutService.getSize(part);
|
|
606
750
|
const chatViewDefaultWidth = 300;
|
|
607
|
-
const
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
) {
|
|
751
|
+
const sessionsViewDefaultWidth = chatViewDefaultWidth;
|
|
752
|
+
const sideBySideMinWidth = chatViewDefaultWidth + sessionsViewDefaultWidth + 1;
|
|
753
|
+
if (
|
|
754
|
+
(newOrientation === AgentSessionsViewerOrientation.SideBySide && currentSize.width >= sideBySideMinWidth) || (newOrientation === AgentSessionsViewerOrientation.Stacked && chatLocation === ViewContainerLocation.AuxiliaryBar && layoutService.isAuxiliaryBarMaximized())) {
|
|
611
755
|
return;
|
|
612
756
|
}
|
|
613
757
|
if (chatLocation === ViewContainerLocation.AuxiliaryBar) {
|
|
@@ -616,24 +760,38 @@ class UpdateChatViewWidthAction extends Action2 {
|
|
|
616
760
|
}
|
|
617
761
|
let newWidth;
|
|
618
762
|
if (newOrientation === AgentSessionsViewerOrientation.SideBySide) {
|
|
619
|
-
newWidth = Math.max(
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
763
|
+
newWidth = Math.max(
|
|
764
|
+
sideBySideMinWidth,
|
|
765
|
+
lastWidthForOrientation || Math.round(layoutService.mainContainerDimension.width / 2)
|
|
766
|
+
);
|
|
767
|
+
} else {
|
|
768
|
+
newWidth = lastWidthForOrientation || Math.max(chatViewDefaultWidth, currentSize.width - sessionsViewDefaultWidth);
|
|
769
|
+
}
|
|
770
|
+
layoutService.setSize(part, {
|
|
771
|
+
width: newWidth,
|
|
772
|
+
height: currentSize.height
|
|
773
|
+
});
|
|
774
|
+
const actualSize = layoutService.getSize(part);
|
|
775
|
+
if (
|
|
776
|
+
chatLocation === ViewContainerLocation.AuxiliaryBar && newOrientation === AgentSessionsViewerOrientation.SideBySide && actualSize.width < sideBySideMinWidth) {
|
|
777
|
+
layoutService.setAuxiliaryBarMaximized(true);
|
|
623
778
|
}
|
|
624
|
-
layoutService.setSize(part, { width: newWidth, height: currentSize.height });
|
|
625
779
|
}
|
|
626
780
|
}
|
|
627
781
|
class ShowAgentSessionsSidebar extends UpdateChatViewWidthAction {
|
|
628
|
-
static {
|
|
629
|
-
|
|
782
|
+
static {
|
|
783
|
+
this.ID = "agentSessions.showAgentSessionsSidebar";
|
|
784
|
+
}
|
|
785
|
+
static {
|
|
786
|
+
this.TITLE = ( localize2(4955, "Show Agent Sessions Sidebar"));
|
|
787
|
+
}
|
|
630
788
|
constructor() {
|
|
631
789
|
super({
|
|
632
790
|
id: ShowAgentSessionsSidebar.ID,
|
|
633
791
|
title: ShowAgentSessionsSidebar.TITLE,
|
|
634
|
-
precondition: ( ContextKeyExpr.and(ChatContextKeys.enabled, ( ChatContextKeys.agentSessionsViewerOrientation.isEqualTo(AgentSessionsViewerOrientation.Stacked)))),
|
|
792
|
+
precondition: ( ContextKeyExpr.and(ChatContextKeys.enabled, ( ChatContextKeys.agentSessionsViewerOrientation.isEqualTo(AgentSessionsViewerOrientation.Stacked)), ( AuxiliaryBarMaximizedContext.negate()))),
|
|
635
793
|
f1: true,
|
|
636
|
-
category:
|
|
794
|
+
category: AGENT_SESSIONS_CATEGORY
|
|
637
795
|
});
|
|
638
796
|
}
|
|
639
797
|
getOrientation() {
|
|
@@ -641,15 +799,19 @@ class ShowAgentSessionsSidebar extends UpdateChatViewWidthAction {
|
|
|
641
799
|
}
|
|
642
800
|
}
|
|
643
801
|
class HideAgentSessionsSidebar extends UpdateChatViewWidthAction {
|
|
644
|
-
static {
|
|
645
|
-
|
|
802
|
+
static {
|
|
803
|
+
this.ID = "agentSessions.hideAgentSessionsSidebar";
|
|
804
|
+
}
|
|
805
|
+
static {
|
|
806
|
+
this.TITLE = ( localize2(4956, "Hide Agent Sessions Sidebar"));
|
|
807
|
+
}
|
|
646
808
|
constructor() {
|
|
647
809
|
super({
|
|
648
810
|
id: HideAgentSessionsSidebar.ID,
|
|
649
811
|
title: HideAgentSessionsSidebar.TITLE,
|
|
650
|
-
precondition: ( ContextKeyExpr.and(ChatContextKeys.enabled, ( ChatContextKeys.agentSessionsViewerOrientation.isEqualTo(AgentSessionsViewerOrientation.SideBySide)))),
|
|
812
|
+
precondition: ( ContextKeyExpr.and(ChatContextKeys.enabled, ( ChatContextKeys.agentSessionsViewerOrientation.isEqualTo(AgentSessionsViewerOrientation.SideBySide)), ( AuxiliaryBarMaximizedContext.negate()))),
|
|
651
813
|
f1: true,
|
|
652
|
-
category:
|
|
814
|
+
category: AGENT_SESSIONS_CATEGORY
|
|
653
815
|
});
|
|
654
816
|
}
|
|
655
817
|
getOrientation() {
|
|
@@ -657,15 +819,19 @@ class HideAgentSessionsSidebar extends UpdateChatViewWidthAction {
|
|
|
657
819
|
}
|
|
658
820
|
}
|
|
659
821
|
class ToggleAgentSessionsSidebar extends Action2 {
|
|
660
|
-
static {
|
|
661
|
-
|
|
822
|
+
static {
|
|
823
|
+
this.ID = "agentSessions.toggleAgentSessionsSidebar";
|
|
824
|
+
}
|
|
825
|
+
static {
|
|
826
|
+
this.TITLE = ( localize2(4957, "Toggle Agent Sessions Sidebar"));
|
|
827
|
+
}
|
|
662
828
|
constructor() {
|
|
663
829
|
super({
|
|
664
830
|
id: ToggleAgentSessionsSidebar.ID,
|
|
665
831
|
title: ToggleAgentSessionsSidebar.TITLE,
|
|
666
|
-
precondition: ChatContextKeys.enabled,
|
|
832
|
+
precondition: ( ContextKeyExpr.and(ChatContextKeys.enabled, ( AuxiliaryBarMaximizedContext.negate()))),
|
|
667
833
|
f1: true,
|
|
668
|
-
category:
|
|
834
|
+
category: AGENT_SESSIONS_CATEGORY
|
|
669
835
|
});
|
|
670
836
|
}
|
|
671
837
|
async run(accessor) {
|
|
@@ -675,21 +841,22 @@ class ToggleAgentSessionsSidebar extends Action2 {
|
|
|
675
841
|
const currentOrientation = chatView?.getSessionsViewerOrientation();
|
|
676
842
|
if (currentOrientation === AgentSessionsViewerOrientation.SideBySide) {
|
|
677
843
|
await commandService.executeCommand(HideAgentSessionsSidebar.ID);
|
|
678
|
-
}
|
|
679
|
-
else {
|
|
844
|
+
} else {
|
|
680
845
|
await commandService.executeCommand(ShowAgentSessionsSidebar.ID);
|
|
681
846
|
}
|
|
682
847
|
}
|
|
683
848
|
}
|
|
684
849
|
class FocusAgentSessionsAction extends Action2 {
|
|
685
|
-
static {
|
|
850
|
+
static {
|
|
851
|
+
this.id = "workbench.action.chat.focusAgentSessionsViewer";
|
|
852
|
+
}
|
|
686
853
|
constructor() {
|
|
687
854
|
super({
|
|
688
855
|
id: FocusAgentSessionsAction.id,
|
|
689
|
-
title: ( localize2(
|
|
856
|
+
title: ( localize2(4958, "Focus Agent Sessions")),
|
|
690
857
|
precondition: ( ContextKeyExpr.and(ChatContextKeys.enabled, ( ContextKeyExpr.equals(`config.${ChatConfiguration.ChatViewSessionsEnabled}`, true)))),
|
|
691
|
-
category:
|
|
692
|
-
f1: true
|
|
858
|
+
category: AGENT_SESSIONS_CATEGORY,
|
|
859
|
+
f1: true
|
|
693
860
|
});
|
|
694
861
|
}
|
|
695
862
|
async run(accessor) {
|
|
@@ -702,14 +869,13 @@ class FocusAgentSessionsAction extends Action2 {
|
|
|
702
869
|
return;
|
|
703
870
|
}
|
|
704
871
|
const configuredSessionsViewerOrientation = configurationService.getValue(ChatConfiguration.ChatViewSessionsOrientation);
|
|
705
|
-
if (configuredSessionsViewerOrientation ===
|
|
872
|
+
if (configuredSessionsViewerOrientation === "stacked") {
|
|
706
873
|
await commandService.executeCommand(ACTION_ID_NEW_CHAT);
|
|
707
|
-
}
|
|
708
|
-
else {
|
|
874
|
+
} else {
|
|
709
875
|
await commandService.executeCommand(ShowAgentSessionsSidebar.ID);
|
|
710
876
|
}
|
|
711
877
|
chatView?.focusSessions();
|
|
712
878
|
}
|
|
713
879
|
}
|
|
714
880
|
|
|
715
|
-
export { ArchiveAgentSessionAction, ArchiveAgentSessionSectionAction, ArchiveAllAgentSessionsAction, DeleteAgentSessionAction, DeleteAllLocalSessionsAction, FindAgentSessionInViewerAction, FocusAgentSessionsAction, HideAgentSessionsSidebar, MarkAgentSessionReadAction, MarkAgentSessionUnreadAction, OpenAgentSessionInEditorGroupAction, OpenAgentSessionInNewEditorGroupAction, OpenAgentSessionInNewWindowAction, PickAgentSessionAction, RefreshAgentSessionsViewerAction, RenameAgentSessionAction, SetAgentSessionsOrientationSideBySideAction, SetAgentSessionsOrientationStackedAction, ShowAgentSessionsSidebar, ToggleAgentSessionsSidebar,
|
|
881
|
+
export { ArchiveAgentSessionAction, ArchiveAgentSessionSectionAction, ArchiveAllAgentSessionsAction, DeleteAgentSessionAction, DeleteAllLocalSessionsAction, FindAgentSessionInViewerAction, FocusAgentSessionsAction, HideAgentSessionsSidebar, MarkAgentSessionReadAction, MarkAgentSessionSectionReadAction, MarkAgentSessionUnreadAction, MarkAllAgentSessionsReadAction, OpenAgentSessionInEditorGroupAction, OpenAgentSessionInNewEditorGroupAction, OpenAgentSessionInNewWindowAction, PickAgentSessionAction, RefreshAgentSessionsViewerAction, RenameAgentSessionAction, SetAgentSessionsOrientationSideBySideAction, SetAgentSessionsOrientationStackedAction, ShowAgentSessionsSidebar, ToggleAgentSessionsSidebar, ToggleShowAgentSessionsAction, UnarchiveAgentSessionAction, UnarchiveAgentSessionSectionAction };
|