@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
package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.js
CHANGED
|
@@ -13,55 +13,51 @@ import { StorageScope, StorageTarget } from '@codingame/monaco-vscode-api/vscode
|
|
|
13
13
|
import { IStorageService } from '@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage.service';
|
|
14
14
|
import { ToolConfirmKind } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService/chatService';
|
|
15
15
|
|
|
16
|
-
const RUN_WITHOUT_APPROVAL = ( localize(
|
|
17
|
-
const CONTINUE_WITHOUT_REVIEWING_RESULTS = ( localize(
|
|
16
|
+
const RUN_WITHOUT_APPROVAL = ( localize(5760, "without approval"));
|
|
17
|
+
const CONTINUE_WITHOUT_REVIEWING_RESULTS = ( localize(5761, "without reviewing result"));
|
|
18
18
|
class GenericConfirmStore extends Disposable {
|
|
19
19
|
constructor(_storageKey, _instantiationService) {
|
|
20
20
|
super();
|
|
21
21
|
this._storageKey = _storageKey;
|
|
22
22
|
this._instantiationService = _instantiationService;
|
|
23
23
|
this._memoryStore = ( new Set());
|
|
24
|
-
this._workspaceStore = ( new Lazy(
|
|
25
|
-
|
|
26
|
-
));
|
|
27
|
-
this._profileStore = ( new Lazy(
|
|
28
|
-
|
|
29
|
-
));
|
|
24
|
+
this._workspaceStore = ( new Lazy(() => this._register(
|
|
25
|
+
this._instantiationService.createInstance(ToolConfirmStore, StorageScope.WORKSPACE, this._storageKey)
|
|
26
|
+
)));
|
|
27
|
+
this._profileStore = ( new Lazy(() => this._register(
|
|
28
|
+
this._instantiationService.createInstance(ToolConfirmStore, StorageScope.PROFILE, this._storageKey)
|
|
29
|
+
)));
|
|
30
30
|
}
|
|
31
31
|
setAutoConfirmation(id, scope) {
|
|
32
32
|
this._workspaceStore.value.setAutoConfirm(id, false);
|
|
33
33
|
this._profileStore.value.setAutoConfirm(id, false);
|
|
34
34
|
this._memoryStore.delete(id);
|
|
35
|
-
if (scope ===
|
|
35
|
+
if (scope === "workspace") {
|
|
36
36
|
this._workspaceStore.value.setAutoConfirm(id, true);
|
|
37
|
-
}
|
|
38
|
-
else if (scope === 'profile') {
|
|
37
|
+
} else if (scope === "profile") {
|
|
39
38
|
this._profileStore.value.setAutoConfirm(id, true);
|
|
40
|
-
}
|
|
41
|
-
else if (scope === 'session') {
|
|
39
|
+
} else if (scope === "session") {
|
|
42
40
|
this._memoryStore.add(id);
|
|
43
41
|
}
|
|
44
42
|
}
|
|
45
43
|
getAutoConfirmation(id) {
|
|
46
44
|
if (this._workspaceStore.value.getAutoConfirm(id)) {
|
|
47
|
-
return
|
|
45
|
+
return "workspace";
|
|
48
46
|
}
|
|
49
47
|
if (this._profileStore.value.getAutoConfirm(id)) {
|
|
50
|
-
return
|
|
48
|
+
return "profile";
|
|
51
49
|
}
|
|
52
50
|
if (( this._memoryStore.has(id))) {
|
|
53
|
-
return
|
|
51
|
+
return "session";
|
|
54
52
|
}
|
|
55
|
-
return
|
|
53
|
+
return "never";
|
|
56
54
|
}
|
|
57
55
|
getAutoConfirmationIn(id, scope) {
|
|
58
|
-
if (scope ===
|
|
56
|
+
if (scope === "workspace") {
|
|
59
57
|
return this._workspaceStore.value.getAutoConfirm(id);
|
|
60
|
-
}
|
|
61
|
-
else if (scope === 'profile') {
|
|
58
|
+
} else if (scope === "profile") {
|
|
62
59
|
return this._profileStore.value.getAutoConfirm(id);
|
|
63
|
-
}
|
|
64
|
-
else {
|
|
60
|
+
} else {
|
|
65
61
|
return ( this._memoryStore.has(id));
|
|
66
62
|
}
|
|
67
63
|
}
|
|
@@ -72,13 +68,22 @@ class GenericConfirmStore extends Disposable {
|
|
|
72
68
|
}
|
|
73
69
|
checkAutoConfirmation(id) {
|
|
74
70
|
if (this._workspaceStore.value.getAutoConfirm(id)) {
|
|
75
|
-
return {
|
|
71
|
+
return {
|
|
72
|
+
type: ToolConfirmKind.LmServicePerTool,
|
|
73
|
+
scope: "workspace"
|
|
74
|
+
};
|
|
76
75
|
}
|
|
77
76
|
if (this._profileStore.value.getAutoConfirm(id)) {
|
|
78
|
-
return {
|
|
77
|
+
return {
|
|
78
|
+
type: ToolConfirmKind.LmServicePerTool,
|
|
79
|
+
scope: "profile"
|
|
80
|
+
};
|
|
79
81
|
}
|
|
80
82
|
if (( this._memoryStore.has(id))) {
|
|
81
|
-
return {
|
|
83
|
+
return {
|
|
84
|
+
type: ToolConfirmKind.LmServicePerTool,
|
|
85
|
+
scope: "session"
|
|
86
|
+
};
|
|
82
87
|
}
|
|
83
88
|
return undefined;
|
|
84
89
|
}
|
|
@@ -131,8 +136,7 @@ let ToolConfirmStore = class ToolConfirmStore extends Disposable {
|
|
|
131
136
|
setAutoConfirm(id, autoConfirm) {
|
|
132
137
|
if (autoConfirm) {
|
|
133
138
|
this._autoConfirmTools.set(id, true);
|
|
134
|
-
}
|
|
135
|
-
else {
|
|
139
|
+
} else {
|
|
136
140
|
this._autoConfirmTools.delete(id);
|
|
137
141
|
}
|
|
138
142
|
this._didChange = true;
|
|
@@ -141,19 +145,17 @@ let ToolConfirmStore = class ToolConfirmStore extends Disposable {
|
|
|
141
145
|
return [...( this._autoConfirmTools.keys())];
|
|
142
146
|
}
|
|
143
147
|
};
|
|
144
|
-
ToolConfirmStore = ( __decorate([
|
|
145
|
-
( __param(2, IStorageService))
|
|
146
|
-
], ToolConfirmStore));
|
|
148
|
+
ToolConfirmStore = ( __decorate([( __param(2, IStorageService))], ToolConfirmStore));
|
|
147
149
|
let LanguageModelToolsConfirmationService = class LanguageModelToolsConfirmationService extends Disposable {
|
|
148
150
|
constructor(_instantiationService, _quickInputService) {
|
|
149
151
|
super();
|
|
150
152
|
this._instantiationService = _instantiationService;
|
|
151
153
|
this._quickInputService = _quickInputService;
|
|
152
154
|
this._contributions = ( new Map());
|
|
153
|
-
this._preExecutionToolConfirmStore = this._register(( new GenericConfirmStore(
|
|
154
|
-
this._postExecutionToolConfirmStore = this._register(( new GenericConfirmStore(
|
|
155
|
-
this._preExecutionServerConfirmStore = this._register(( new GenericConfirmStore(
|
|
156
|
-
this._postExecutionServerConfirmStore = this._register(( new GenericConfirmStore(
|
|
155
|
+
this._preExecutionToolConfirmStore = this._register(( new GenericConfirmStore("chat/autoconfirm", this._instantiationService)));
|
|
156
|
+
this._postExecutionToolConfirmStore = this._register(( new GenericConfirmStore("chat/autoconfirm-post", this._instantiationService)));
|
|
157
|
+
this._preExecutionServerConfirmStore = this._register(( new GenericConfirmStore("chat/servers/autoconfirm", this._instantiationService)));
|
|
158
|
+
this._postExecutionServerConfirmStore = this._register(( new GenericConfirmStore("chat/servers/autoconfirm-post", this._instantiationService)));
|
|
157
159
|
}
|
|
158
160
|
getPreConfirmAction(ref) {
|
|
159
161
|
const contribution = this._contributions.get(ref.toolId);
|
|
@@ -170,7 +172,7 @@ let LanguageModelToolsConfirmationService = class LanguageModelToolsConfirmation
|
|
|
170
172
|
if (toolResult) {
|
|
171
173
|
return toolResult;
|
|
172
174
|
}
|
|
173
|
-
if (ref.source.type ===
|
|
175
|
+
if (ref.source.type === "mcp") {
|
|
174
176
|
const serverResult = this._preExecutionServerConfirmStore.checkAutoConfirmation(ref.source.definitionId);
|
|
175
177
|
if (serverResult) {
|
|
176
178
|
return serverResult;
|
|
@@ -193,7 +195,7 @@ let LanguageModelToolsConfirmationService = class LanguageModelToolsConfirmation
|
|
|
193
195
|
if (toolResult) {
|
|
194
196
|
return toolResult;
|
|
195
197
|
}
|
|
196
|
-
if (ref.source.type ===
|
|
198
|
+
if (ref.source.type === "mcp") {
|
|
197
199
|
const serverResult = this._postExecutionServerConfirmStore.checkAutoConfirmation(ref.source.definitionId);
|
|
198
200
|
if (serverResult) {
|
|
199
201
|
return serverResult;
|
|
@@ -211,59 +213,62 @@ let LanguageModelToolsConfirmationService = class LanguageModelToolsConfirmation
|
|
|
211
213
|
return actions;
|
|
212
214
|
}
|
|
213
215
|
actions.push({
|
|
214
|
-
label: ( localize(
|
|
215
|
-
detail: ( localize(
|
|
216
|
+
label: ( localize(5762, "Allow in this Session")),
|
|
217
|
+
detail: ( localize(5763, "Allow this tool to run in this session without confirmation.")),
|
|
216
218
|
divider: !!actions.length,
|
|
217
219
|
select: async () => {
|
|
218
|
-
this._preExecutionToolConfirmStore.setAutoConfirmation(ref.toolId,
|
|
220
|
+
this._preExecutionToolConfirmStore.setAutoConfirmation(ref.toolId, "session");
|
|
219
221
|
return true;
|
|
220
222
|
}
|
|
221
223
|
}, {
|
|
222
|
-
label: ( localize(
|
|
223
|
-
detail: ( localize(
|
|
224
|
+
label: ( localize(5764, "Allow in this Workspace")),
|
|
225
|
+
detail: ( localize(5765, "Allow this tool to run in this workspace without confirmation.")),
|
|
224
226
|
select: async () => {
|
|
225
|
-
this._preExecutionToolConfirmStore.setAutoConfirmation(ref.toolId,
|
|
227
|
+
this._preExecutionToolConfirmStore.setAutoConfirmation(ref.toolId, "workspace");
|
|
226
228
|
return true;
|
|
227
229
|
}
|
|
228
230
|
}, {
|
|
229
|
-
label: ( localize(
|
|
230
|
-
detail: ( localize(
|
|
231
|
+
label: ( localize(5766, "Always Allow")),
|
|
232
|
+
detail: ( localize(5767, "Always allow this tool to run without confirmation.")),
|
|
231
233
|
select: async () => {
|
|
232
|
-
this._preExecutionToolConfirmStore.setAutoConfirmation(ref.toolId,
|
|
234
|
+
this._preExecutionToolConfirmStore.setAutoConfirmation(ref.toolId, "profile");
|
|
233
235
|
return true;
|
|
234
236
|
}
|
|
235
237
|
});
|
|
236
|
-
if (ref.source.type ===
|
|
237
|
-
const {
|
|
238
|
+
if (ref.source.type === "mcp") {
|
|
239
|
+
const {
|
|
240
|
+
serverLabel,
|
|
241
|
+
definitionId
|
|
242
|
+
} = ref.source;
|
|
238
243
|
actions.push({
|
|
239
|
-
label: ( localize(
|
|
244
|
+
label: ( localize(5768, "Allow Tools from {0} in this Session", serverLabel)),
|
|
240
245
|
detail: ( localize(
|
|
241
|
-
|
|
242
|
-
|
|
246
|
+
5769,
|
|
247
|
+
"Allow all tools from this server to run in this session without confirmation."
|
|
243
248
|
)),
|
|
244
249
|
divider: true,
|
|
245
250
|
select: async () => {
|
|
246
|
-
this._preExecutionServerConfirmStore.setAutoConfirmation(definitionId,
|
|
251
|
+
this._preExecutionServerConfirmStore.setAutoConfirmation(definitionId, "session");
|
|
247
252
|
return true;
|
|
248
253
|
}
|
|
249
254
|
}, {
|
|
250
|
-
label: ( localize(
|
|
255
|
+
label: ( localize(5770, "Allow Tools from {0} in this Workspace", serverLabel)),
|
|
251
256
|
detail: ( localize(
|
|
252
|
-
|
|
253
|
-
|
|
257
|
+
5771,
|
|
258
|
+
"Allow all tools from this server to run in this workspace without confirmation."
|
|
254
259
|
)),
|
|
255
260
|
select: async () => {
|
|
256
|
-
this._preExecutionServerConfirmStore.setAutoConfirmation(definitionId,
|
|
261
|
+
this._preExecutionServerConfirmStore.setAutoConfirmation(definitionId, "workspace");
|
|
257
262
|
return true;
|
|
258
263
|
}
|
|
259
264
|
}, {
|
|
260
|
-
label: ( localize(
|
|
265
|
+
label: ( localize(5772, "Always Allow Tools from {0}", serverLabel)),
|
|
261
266
|
detail: ( localize(
|
|
262
|
-
|
|
263
|
-
|
|
267
|
+
5773,
|
|
268
|
+
"Always allow all tools from this server to run without confirmation."
|
|
264
269
|
)),
|
|
265
270
|
select: async () => {
|
|
266
|
-
this._preExecutionServerConfirmStore.setAutoConfirmation(definitionId,
|
|
271
|
+
this._preExecutionServerConfirmStore.setAutoConfirmation(definitionId, "profile");
|
|
267
272
|
return true;
|
|
268
273
|
}
|
|
269
274
|
});
|
|
@@ -280,68 +285,71 @@ let LanguageModelToolsConfirmationService = class LanguageModelToolsConfirmation
|
|
|
280
285
|
return actions;
|
|
281
286
|
}
|
|
282
287
|
actions.push({
|
|
283
|
-
label: ( localize(
|
|
288
|
+
label: ( localize(5774, "Allow Without Review in this Session")),
|
|
284
289
|
detail: ( localize(
|
|
285
|
-
|
|
286
|
-
|
|
290
|
+
5775,
|
|
291
|
+
"Allow results from this tool to be sent without confirmation in this session."
|
|
287
292
|
)),
|
|
288
293
|
divider: !!actions.length,
|
|
289
294
|
select: async () => {
|
|
290
|
-
this._postExecutionToolConfirmStore.setAutoConfirmation(ref.toolId,
|
|
295
|
+
this._postExecutionToolConfirmStore.setAutoConfirmation(ref.toolId, "session");
|
|
291
296
|
return true;
|
|
292
297
|
}
|
|
293
298
|
}, {
|
|
294
|
-
label: ( localize(
|
|
299
|
+
label: ( localize(5776, "Allow Without Review in this Workspace")),
|
|
295
300
|
detail: ( localize(
|
|
296
|
-
|
|
297
|
-
|
|
301
|
+
5777,
|
|
302
|
+
"Allow results from this tool to be sent without confirmation in this workspace."
|
|
298
303
|
)),
|
|
299
304
|
select: async () => {
|
|
300
|
-
this._postExecutionToolConfirmStore.setAutoConfirmation(ref.toolId,
|
|
305
|
+
this._postExecutionToolConfirmStore.setAutoConfirmation(ref.toolId, "workspace");
|
|
301
306
|
return true;
|
|
302
307
|
}
|
|
303
308
|
}, {
|
|
304
|
-
label: ( localize(
|
|
309
|
+
label: ( localize(5778, "Always Allow Without Review")),
|
|
305
310
|
detail: ( localize(
|
|
306
|
-
|
|
307
|
-
|
|
311
|
+
5779,
|
|
312
|
+
"Always allow results from this tool to be sent without confirmation."
|
|
308
313
|
)),
|
|
309
314
|
select: async () => {
|
|
310
|
-
this._postExecutionToolConfirmStore.setAutoConfirmation(ref.toolId,
|
|
315
|
+
this._postExecutionToolConfirmStore.setAutoConfirmation(ref.toolId, "profile");
|
|
311
316
|
return true;
|
|
312
317
|
}
|
|
313
318
|
});
|
|
314
|
-
if (ref.source.type ===
|
|
315
|
-
const {
|
|
319
|
+
if (ref.source.type === "mcp") {
|
|
320
|
+
const {
|
|
321
|
+
serverLabel,
|
|
322
|
+
definitionId
|
|
323
|
+
} = ref.source;
|
|
316
324
|
actions.push({
|
|
317
|
-
label: ( localize(
|
|
325
|
+
label: ( localize(5780, "Allow Tools from {0} Without Review in this Session", serverLabel)),
|
|
318
326
|
detail: ( localize(
|
|
319
|
-
|
|
320
|
-
|
|
327
|
+
5781,
|
|
328
|
+
"Allow results from all tools from this server to be sent without confirmation in this session."
|
|
321
329
|
)),
|
|
322
330
|
divider: true,
|
|
323
331
|
select: async () => {
|
|
324
|
-
this._postExecutionServerConfirmStore.setAutoConfirmation(definitionId,
|
|
332
|
+
this._postExecutionServerConfirmStore.setAutoConfirmation(definitionId, "session");
|
|
325
333
|
return true;
|
|
326
334
|
}
|
|
327
335
|
}, {
|
|
328
|
-
label: ( localize(
|
|
336
|
+
label: ( localize(5782, "Allow Tools from {0} Without Review in this Workspace", serverLabel)),
|
|
329
337
|
detail: ( localize(
|
|
330
|
-
|
|
331
|
-
|
|
338
|
+
5783,
|
|
339
|
+
"Allow results from all tools from this server to be sent without confirmation in this workspace."
|
|
332
340
|
)),
|
|
333
341
|
select: async () => {
|
|
334
|
-
this._postExecutionServerConfirmStore.setAutoConfirmation(definitionId,
|
|
342
|
+
this._postExecutionServerConfirmStore.setAutoConfirmation(definitionId, "workspace");
|
|
335
343
|
return true;
|
|
336
344
|
}
|
|
337
345
|
}, {
|
|
338
|
-
label: ( localize(
|
|
346
|
+
label: ( localize(5784, "Always Allow Tools from {0} Without Review", serverLabel)),
|
|
339
347
|
detail: ( localize(
|
|
340
|
-
|
|
341
|
-
|
|
348
|
+
5785,
|
|
349
|
+
"Always allow results from all tools from this server to be sent without confirmation."
|
|
342
350
|
)),
|
|
343
351
|
select: async () => {
|
|
344
|
-
this._postExecutionServerConfirmStore.setAutoConfirmation(definitionId,
|
|
352
|
+
this._postExecutionServerConfirmStore.setAutoConfirmation(definitionId, "profile");
|
|
345
353
|
return true;
|
|
346
354
|
}
|
|
347
355
|
});
|
|
@@ -359,15 +367,22 @@ let LanguageModelToolsConfirmationService = class LanguageModelToolsConfirmation
|
|
|
359
367
|
manageConfirmationPreferences(tools, options) {
|
|
360
368
|
const trackServerTool = (serverId, label, toolId, serversWithTools) => {
|
|
361
369
|
if (!( serversWithTools.has(serverId))) {
|
|
362
|
-
serversWithTools.set(serverId, {
|
|
370
|
+
serversWithTools.set(serverId, {
|
|
371
|
+
label,
|
|
372
|
+
tools: ( new Set())
|
|
373
|
+
});
|
|
363
374
|
}
|
|
364
375
|
serversWithTools.get(serverId).tools.add(toolId);
|
|
365
376
|
};
|
|
366
377
|
const addServerToolFromSource = (source, toolId, serversWithTools) => {
|
|
367
|
-
if (source.type ===
|
|
368
|
-
trackServerTool(
|
|
369
|
-
|
|
370
|
-
|
|
378
|
+
if (source.type === "mcp") {
|
|
379
|
+
trackServerTool(
|
|
380
|
+
source.definitionId,
|
|
381
|
+
source.serverLabel || source.label,
|
|
382
|
+
toolId,
|
|
383
|
+
serversWithTools
|
|
384
|
+
);
|
|
385
|
+
} else if (source.type === "extension") {
|
|
371
386
|
trackServerTool(source.extensionId.value, source.label, toolId, serversWithTools);
|
|
372
387
|
}
|
|
373
388
|
};
|
|
@@ -400,7 +415,7 @@ let LanguageModelToolsConfirmationService = class LanguageModelToolsConfirmation
|
|
|
400
415
|
if (relevantTools.size === 0) {
|
|
401
416
|
return;
|
|
402
417
|
}
|
|
403
|
-
let currentScope = options?.defaultScope ??
|
|
418
|
+
let currentScope = options?.defaultScope ?? "workspace";
|
|
404
419
|
const buildTreeItems = () => {
|
|
405
420
|
const treeItems = [];
|
|
406
421
|
for (const [serverId, serverInfo] of serversWithTools) {
|
|
@@ -425,13 +440,13 @@ let LanguageModelToolsConfirmationService = class LanguageModelToolsConfirmation
|
|
|
425
440
|
const hasPost = !serverPostConfirmed && (tool.canRequestPostApproval || this._postExecutionToolConfirmStore.getAutoConfirmationIn(tool.id, currentScope));
|
|
426
441
|
if (hasPre && hasPost) {
|
|
427
442
|
toolChildren.push({
|
|
428
|
-
type:
|
|
443
|
+
type: "tool-pre",
|
|
429
444
|
toolId: tool.id,
|
|
430
445
|
label: RUN_WITHOUT_APPROVAL,
|
|
431
446
|
checked: this._preExecutionToolConfirmStore.getAutoConfirmationIn(tool.id, currentScope)
|
|
432
447
|
});
|
|
433
448
|
toolChildren.push({
|
|
434
|
-
type:
|
|
449
|
+
type: "tool-post",
|
|
435
450
|
toolId: tool.id,
|
|
436
451
|
label: CONTINUE_WITHOUT_REVIEWING_RESULTS,
|
|
437
452
|
checked: this._postExecutionToolConfirmStore.getAutoConfirmationIn(tool.id, currentScope)
|
|
@@ -442,21 +457,18 @@ let LanguageModelToolsConfirmationService = class LanguageModelToolsConfirmation
|
|
|
442
457
|
let checked;
|
|
443
458
|
let description;
|
|
444
459
|
if (hasPre && hasPost) {
|
|
445
|
-
checked = preApproval && postApproval ? true : (!preApproval && !postApproval ? false :
|
|
446
|
-
}
|
|
447
|
-
else if (hasPre) {
|
|
460
|
+
checked = preApproval && postApproval ? true : (!preApproval && !postApproval ? false : "mixed");
|
|
461
|
+
} else if (hasPre) {
|
|
448
462
|
checked = preApproval;
|
|
449
463
|
description = RUN_WITHOUT_APPROVAL;
|
|
450
|
-
}
|
|
451
|
-
else if (hasPost) {
|
|
464
|
+
} else if (hasPost) {
|
|
452
465
|
checked = postApproval;
|
|
453
466
|
description = CONTINUE_WITHOUT_REVIEWING_RESULTS;
|
|
454
|
-
}
|
|
455
|
-
else {
|
|
467
|
+
} else {
|
|
456
468
|
continue;
|
|
457
469
|
}
|
|
458
470
|
serverChildren.push({
|
|
459
|
-
type:
|
|
471
|
+
type: "tool",
|
|
460
472
|
toolId: tool.id,
|
|
461
473
|
label: tool.displayName || tool.id,
|
|
462
474
|
description,
|
|
@@ -468,19 +480,19 @@ let LanguageModelToolsConfirmationService = class LanguageModelToolsConfirmation
|
|
|
468
480
|
serverChildren.sort((a, b) => a.label.localeCompare(b.label));
|
|
469
481
|
if (hasAnyPost) {
|
|
470
482
|
serverChildren.unshift({
|
|
471
|
-
type:
|
|
483
|
+
type: "server-post",
|
|
472
484
|
serverId,
|
|
473
485
|
iconClass: ThemeIcon.asClassName(Codicon.play),
|
|
474
|
-
label: ( localize(
|
|
486
|
+
label: ( localize(5786, "Continue without reviewing any tool results")),
|
|
475
487
|
checked: serverPostConfirmed
|
|
476
488
|
});
|
|
477
489
|
}
|
|
478
490
|
if (hasAnyPre) {
|
|
479
491
|
serverChildren.unshift({
|
|
480
|
-
type:
|
|
492
|
+
type: "server-pre",
|
|
481
493
|
serverId,
|
|
482
494
|
iconClass: ThemeIcon.asClassName(Codicon.play),
|
|
483
|
-
label: ( localize(
|
|
495
|
+
label: ( localize(5787, "Run any tool without approval")),
|
|
484
496
|
checked: serverPreConfirmed
|
|
485
497
|
});
|
|
486
498
|
}
|
|
@@ -488,20 +500,17 @@ let LanguageModelToolsConfirmationService = class LanguageModelToolsConfirmation
|
|
|
488
500
|
const serverHasPost = this._postExecutionServerConfirmStore.getAutoConfirmationIn(serverId, currentScope);
|
|
489
501
|
let serverChecked;
|
|
490
502
|
if (hasAnyPre && hasAnyPost) {
|
|
491
|
-
serverChecked = serverHasPre && serverHasPost ? true : (!serverHasPre && !serverHasPost ? false :
|
|
492
|
-
}
|
|
493
|
-
else if (hasAnyPre) {
|
|
503
|
+
serverChecked = serverHasPre && serverHasPost ? true : (!serverHasPre && !serverHasPost ? false : "mixed");
|
|
504
|
+
} else if (hasAnyPre) {
|
|
494
505
|
serverChecked = serverHasPre;
|
|
495
|
-
}
|
|
496
|
-
else if (hasAnyPost) {
|
|
506
|
+
} else if (hasAnyPost) {
|
|
497
507
|
serverChecked = serverHasPost;
|
|
498
|
-
}
|
|
499
|
-
else {
|
|
508
|
+
} else {
|
|
500
509
|
serverChecked = false;
|
|
501
510
|
}
|
|
502
511
|
const existingItem = quickTree.itemTree.find(i => i.serverId === serverId);
|
|
503
512
|
treeItems.push({
|
|
504
|
-
type:
|
|
513
|
+
type: "server",
|
|
505
514
|
serverId,
|
|
506
515
|
label: serverInfo.label,
|
|
507
516
|
checked: serverChecked,
|
|
@@ -515,7 +524,7 @@ let LanguageModelToolsConfirmationService = class LanguageModelToolsConfirmation
|
|
|
515
524
|
if (!( relevantTools.has(tool.id))) {
|
|
516
525
|
continue;
|
|
517
526
|
}
|
|
518
|
-
if (tool.source.type ===
|
|
527
|
+
if (tool.source.type === "mcp" || tool.source.type === "extension") {
|
|
519
528
|
continue;
|
|
520
529
|
}
|
|
521
530
|
const contributed = this._contributions.get(tool.id);
|
|
@@ -523,8 +532,8 @@ let LanguageModelToolsConfirmationService = class LanguageModelToolsConfirmation
|
|
|
523
532
|
const manageActions = contributed?.getManageActions?.();
|
|
524
533
|
if (manageActions) {
|
|
525
534
|
toolChildren.push(...( manageActions.map(action => ({
|
|
526
|
-
type:
|
|
527
|
-
...action
|
|
535
|
+
type: "manage",
|
|
536
|
+
...action
|
|
528
537
|
}))));
|
|
529
538
|
}
|
|
530
539
|
let checked = false;
|
|
@@ -536,13 +545,13 @@ let LanguageModelToolsConfirmationService = class LanguageModelToolsConfirmation
|
|
|
536
545
|
const hasPost = tool.canRequestPostApproval || this._postExecutionToolConfirmStore.getAutoConfirmationIn(tool.id, currentScope);
|
|
537
546
|
if (hasPre && hasPost) {
|
|
538
547
|
toolChildren.push({
|
|
539
|
-
type:
|
|
548
|
+
type: "tool-pre",
|
|
540
549
|
toolId: tool.id,
|
|
541
550
|
label: RUN_WITHOUT_APPROVAL,
|
|
542
551
|
checked: this._preExecutionToolConfirmStore.getAutoConfirmationIn(tool.id, currentScope)
|
|
543
552
|
});
|
|
544
553
|
toolChildren.push({
|
|
545
|
-
type:
|
|
554
|
+
type: "tool-post",
|
|
546
555
|
toolId: tool.id,
|
|
547
556
|
label: CONTINUE_WITHOUT_REVIEWING_RESULTS,
|
|
548
557
|
checked: this._postExecutionToolConfirmStore.getAutoConfirmationIn(tool.id, currentScope)
|
|
@@ -551,22 +560,19 @@ let LanguageModelToolsConfirmationService = class LanguageModelToolsConfirmation
|
|
|
551
560
|
const preApproval = this._preExecutionToolConfirmStore.getAutoConfirmationIn(tool.id, currentScope);
|
|
552
561
|
const postApproval = this._postExecutionToolConfirmStore.getAutoConfirmationIn(tool.id, currentScope);
|
|
553
562
|
if (hasPre && hasPost) {
|
|
554
|
-
checked = preApproval && postApproval ? true : (!preApproval && !postApproval ? false :
|
|
555
|
-
}
|
|
556
|
-
else if (hasPre) {
|
|
563
|
+
checked = preApproval && postApproval ? true : (!preApproval && !postApproval ? false : "mixed");
|
|
564
|
+
} else if (hasPre) {
|
|
557
565
|
checked = preApproval;
|
|
558
566
|
description = RUN_WITHOUT_APPROVAL;
|
|
559
|
-
}
|
|
560
|
-
else if (hasPost) {
|
|
567
|
+
} else if (hasPost) {
|
|
561
568
|
checked = postApproval;
|
|
562
569
|
description = CONTINUE_WITHOUT_REVIEWING_RESULTS;
|
|
563
|
-
}
|
|
564
|
-
else {
|
|
570
|
+
} else {
|
|
565
571
|
checked = false;
|
|
566
572
|
}
|
|
567
573
|
}
|
|
568
574
|
treeItems.push({
|
|
569
|
-
type:
|
|
575
|
+
type: "tool",
|
|
570
576
|
toolId: tool.id,
|
|
571
577
|
label: tool.displayName || tool.id,
|
|
572
578
|
description,
|
|
@@ -582,78 +588,71 @@ let LanguageModelToolsConfirmationService = class LanguageModelToolsConfirmation
|
|
|
582
588
|
const quickTree = disposables.add(this._quickInputService.createQuickTree());
|
|
583
589
|
quickTree.ignoreFocusOut = true;
|
|
584
590
|
quickTree.sortByLabel = false;
|
|
585
|
-
if (currentScope !==
|
|
591
|
+
if (currentScope !== "session") {
|
|
586
592
|
const scopeButton = {
|
|
587
593
|
iconClass: ThemeIcon.asClassName(Codicon.folder),
|
|
588
|
-
tooltip: ( localize(
|
|
589
|
-
toggle: {
|
|
594
|
+
tooltip: ( localize(5788, "Configure for this workspace only")),
|
|
595
|
+
toggle: {
|
|
596
|
+
checked: currentScope === "workspace"
|
|
597
|
+
},
|
|
590
598
|
location: QuickInputButtonLocation.Input
|
|
591
599
|
};
|
|
592
600
|
quickTree.buttons = [scopeButton];
|
|
593
601
|
disposables.add(quickTree.onDidTriggerButton(button => {
|
|
594
602
|
if (button === scopeButton) {
|
|
595
|
-
currentScope = currentScope ===
|
|
603
|
+
currentScope = currentScope === "workspace" ? "profile" : "workspace";
|
|
596
604
|
updatePlaceholder();
|
|
597
605
|
quickTree.setItemTree(buildTreeItems());
|
|
598
606
|
}
|
|
599
607
|
}));
|
|
600
608
|
}
|
|
601
609
|
const updatePlaceholder = () => {
|
|
602
|
-
if (currentScope ===
|
|
603
|
-
quickTree.placeholder = ( localize(
|
|
604
|
-
}
|
|
605
|
-
|
|
606
|
-
quickTree.placeholder = currentScope === 'workspace'
|
|
607
|
-
? ( localize(5572, "Configure workspace tool approvals"))
|
|
608
|
-
: ( localize(5573, "Configure global tool approvals"));
|
|
610
|
+
if (currentScope === "session") {
|
|
611
|
+
quickTree.placeholder = ( localize(5789, "Configure session tool approvals"));
|
|
612
|
+
} else {
|
|
613
|
+
quickTree.placeholder = currentScope === "workspace" ? ( localize(5790, "Configure workspace tool approvals")) : ( localize(5791, "Configure global tool approvals"));
|
|
609
614
|
}
|
|
610
615
|
};
|
|
611
616
|
updatePlaceholder();
|
|
612
617
|
quickTree.setItemTree(buildTreeItems());
|
|
613
618
|
disposables.add(quickTree.onDidChangeCheckboxState(item => {
|
|
614
|
-
const newState = item.checked ? currentScope :
|
|
615
|
-
if (item.type ===
|
|
619
|
+
const newState = item.checked ? currentScope : "never";
|
|
620
|
+
if (item.type === "server" && item.serverId) {
|
|
616
621
|
const serverInfo = serversWithTools.get(item.serverId);
|
|
617
622
|
if (serverInfo) {
|
|
618
623
|
this._preExecutionServerConfirmStore.setAutoConfirmation(item.serverId, newState);
|
|
619
624
|
this._postExecutionServerConfirmStore.setAutoConfirmation(item.serverId, newState);
|
|
620
625
|
}
|
|
621
|
-
}
|
|
622
|
-
else if (item.type === 'tool' && item.toolId) {
|
|
626
|
+
} else if (item.type === "tool" && item.toolId) {
|
|
623
627
|
const tool = tools.find(t => t.id === item.toolId);
|
|
624
|
-
if (tool?.canRequestPostApproval || newState ===
|
|
628
|
+
if (tool?.canRequestPostApproval || newState === "never") {
|
|
625
629
|
this._postExecutionToolConfirmStore.setAutoConfirmation(item.toolId, newState);
|
|
626
630
|
}
|
|
627
|
-
if (tool?.canRequestPreApproval || newState ===
|
|
631
|
+
if (tool?.canRequestPreApproval || newState === "never") {
|
|
628
632
|
this._preExecutionToolConfirmStore.setAutoConfirmation(item.toolId, newState);
|
|
629
633
|
}
|
|
630
|
-
}
|
|
631
|
-
else if (item.type === 'tool-pre' && item.toolId) {
|
|
634
|
+
} else if (item.type === "tool-pre" && item.toolId) {
|
|
632
635
|
this._preExecutionToolConfirmStore.setAutoConfirmation(item.toolId, newState);
|
|
633
|
-
}
|
|
634
|
-
else if (item.type === 'tool-post' && item.toolId) {
|
|
636
|
+
} else if (item.type === "tool-post" && item.toolId) {
|
|
635
637
|
this._postExecutionToolConfirmStore.setAutoConfirmation(item.toolId, newState);
|
|
636
|
-
}
|
|
637
|
-
else if (item.type === 'server-pre' && item.serverId) {
|
|
638
|
+
} else if (item.type === "server-pre" && item.serverId) {
|
|
638
639
|
this._preExecutionServerConfirmStore.setAutoConfirmation(item.serverId, newState);
|
|
639
640
|
quickTree.setItemTree(buildTreeItems());
|
|
640
|
-
}
|
|
641
|
-
else if (item.type === 'server-post' && item.serverId) {
|
|
641
|
+
} else if (item.type === "server-post" && item.serverId) {
|
|
642
642
|
this._postExecutionServerConfirmStore.setAutoConfirmation(item.serverId, newState);
|
|
643
643
|
quickTree.setItemTree(buildTreeItems());
|
|
644
|
-
}
|
|
645
|
-
else if (item.type === 'manage') {
|
|
644
|
+
} else if (item.type === "manage") {
|
|
646
645
|
item.onDidChangeChecked?.(!!item.checked);
|
|
647
646
|
}
|
|
648
647
|
}));
|
|
649
648
|
disposables.add(quickTree.onDidTriggerItemButton(i => {
|
|
650
|
-
if (i.item.type ===
|
|
649
|
+
if (i.item.type === "manage") {
|
|
651
650
|
i.item.onDidTriggerItemButton?.(i.button);
|
|
652
651
|
}
|
|
653
652
|
}));
|
|
654
653
|
disposables.add(quickTree.onDidAccept(() => {
|
|
655
654
|
for (const item of quickTree.activeItems) {
|
|
656
|
-
if (item.type ===
|
|
655
|
+
if (item.type === "manage") {
|
|
657
656
|
item.onDidOpen?.();
|
|
658
657
|
quickTree.hide();
|
|
659
658
|
}
|
|
@@ -674,9 +673,6 @@ let LanguageModelToolsConfirmationService = class LanguageModelToolsConfirmation
|
|
|
674
673
|
}
|
|
675
674
|
}
|
|
676
675
|
};
|
|
677
|
-
LanguageModelToolsConfirmationService = ( __decorate([
|
|
678
|
-
( __param(0, IInstantiationService)),
|
|
679
|
-
( __param(1, IQuickInputService))
|
|
680
|
-
], LanguageModelToolsConfirmationService));
|
|
676
|
+
LanguageModelToolsConfirmationService = ( __decorate([( __param(0, IInstantiationService)), ( __param(1, IQuickInputService))], LanguageModelToolsConfirmationService));
|
|
681
677
|
|
|
682
678
|
export { LanguageModelToolsConfirmationService };
|