@codingame/monaco-vscode-chat-service-override 29.1.1 → 30.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 +5 -2
- package/package.json +5 -5
- package/vscode/src/vs/platform/agentHost/common/agentService.d.ts +37 -39
- package/vscode/src/vs/platform/agentHost/common/agentService.js +3 -1
- package/vscode/src/vs/platform/agentHost/common/agentService.service.d.ts +11 -1
- package/vscode/src/vs/platform/agentHost/common/state/protocol/action-origin.generated.d.ts +4 -4
- package/vscode/src/vs/platform/agentHost/common/state/protocol/actions.d.ts +132 -42
- package/vscode/src/vs/platform/agentHost/common/state/protocol/commands.d.ts +54 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/errors.d.ts +15 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/messages.d.ts +5 -1
- package/vscode/src/vs/platform/agentHost/common/state/protocol/state.d.ts +188 -51
- package/vscode/src/vs/platform/agentHost/common/state/sessionActions.d.ts +7 -6
- package/vscode/src/vs/platform/agentHost/common/state/sessionProtocol.d.ts +1 -1
- package/vscode/src/vs/platform/agentHost/common/state/sessionState.d.ts +7 -2
- package/vscode/src/vs/platform/sandbox/browser/sandboxHelperService.d.ts +6 -0
- package/vscode/src/vs/platform/sandbox/browser/sandboxHelperService.js +14 -0
- package/vscode/src/vs/platform/sandbox/common/sandboxHelperIpc.d.ts +18 -0
- package/vscode/src/vs/platform/sandbox/common/sandboxHelperIpc.js +13 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityService.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.js +37 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +59 -59
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAgentRecommendationActions.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.js +10 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +37 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatForkActions.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatNewActions.js +20 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatOpenAgentDebugPanelAction.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPluginActions.js +18 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQueueActions.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +19 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/createPluginAction.d.ts +36 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/createPluginAction.js +482 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditor.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditorInput.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.d.ts +10 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.js +43 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.js +74 -76
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsQuickAccess.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjection.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionsExperiments.contribution.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.js +27 -35
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccess.js +17 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccessActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/localAgentSessionsController.d.ts +5 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/localAgentSessionsController.js +86 -80
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.d.ts +3 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.js +38 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.d.ts +38 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.js +427 -167
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.contribution.js +37 -37
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.d.ts +15 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.js +108 -37
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.d.ts +8 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.js +28 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWorkspaceService.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWorkspaceService.js +11 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.d.ts +1 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.js +3 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.d.ts +4 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.js +65 -68
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationManagement.css +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.js +64 -51
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/simpleBrowserEditorOverlay.js +19 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +288 -195
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatCustomizationDiscoveryRenderer.js +21 -21
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugDetailPanel.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditorInput.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventDetailRenderer.js +19 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventList.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFilters.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowChartView.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowGraph.js +21 -21
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHomeView.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHookContentRenderer.js +17 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.js +21 -21
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugMessageContentRenderer.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugModelTurnContentRenderer.js +23 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugOverviewView.js +28 -28
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugToolCallContentRenderer.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingDeletedFileEntry.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingDeletedFileEntry.js +3 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +5 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +10 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.d.ts +4 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +19 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.d.ts +3 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +54 -12
- 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 +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatImageCarouselService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.js +9 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.js +50 -50
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatUsageWidget.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +30 -30
- package/vscode/src/vs/workbench/contrib/chat/browser/chatRepoInfo.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetup.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.js +86 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupGrowthSession.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.js +29 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.js +19 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.js +65 -65
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.js +24 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipCatalog.js +17 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.js +2 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/claudePluginRecommendations.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/defaultModelContribution.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/enablementActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/enablementStatusWidget.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelsConfigurationService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.d.ts +3 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.js +54 -39
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.js +16 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginUrlHandler.d.ts +24 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginUrlHandler.js +72 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.js +26 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptFileContributions.js +181 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/skillActions.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/promptsDebugContribution.js +8 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.js +37 -37
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.js +28 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/renameTool.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/usagesTool.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatQueuePickerActionItem.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatStatusWidget.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletionUtils.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletionUtils.js +62 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.d.ts +1 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.js +148 -88
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorContrib.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorHover.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/chatQuick.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditor.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.js +16 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewTitleControl.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/chatArtifactExtraction.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatArtifactExtraction.js +158 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.d.ts +8 -3
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.js +155 -76
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceTelemetry.js +1 -2
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionOperationLog.js +5 -4
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.d.ts +5 -1
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.js +7 -6
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.d.ts +31 -1
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.js +228 -1
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/fileBackedInstalledPluginsStore.d.ts +66 -0
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/fileBackedInstalledPluginsStore.js +190 -0
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.d.ts +25 -3
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.js +130 -107
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +19 -18
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.d.ts +2 -18
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.js +169 -266
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +12 -10
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +149 -206
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +3 -3
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +27 -22
- package/vscode/src/vs/workbench/contrib/chat/common/tools/chatArtifactsService.d.ts +20 -8
- package/vscode/src/vs/workbench/contrib/chat/common/tools/chatArtifactsService.js +183 -43
- package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/widget/chatResponseResourceFileSystemProvider.js +1 -1
- package/vscode/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.js +2 -3
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.js +4 -4
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +21 -21
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatDefaultModel.js +2 -2
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +11 -11
- package/vscode/src/vs/workbench/contrib/mcp/browser/mcpPromptArgumentPick.js +14 -14
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chat/notebookChatUtils.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/cellChatActions.js +11 -11
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebook.chat.contribution.js +6 -6
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookModifiedCellDecorator.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.js +7 -7
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +16 -16
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +20 -20
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatService.js +2 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.js +3 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.js +4 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.js +3 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +6 -6
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.js +1 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.d.ts +1 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +26 -23
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/awaitTerminalTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/npmScriptAutoApprover.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.js +12 -12
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.js +2 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineSandboxRewriter.js +4 -9
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalLastCommandTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.js +16 -6
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/killTerminalTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +9 -9
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.js +2 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +150 -50
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.js +2 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/createAndRunTaskTool.js +14 -14
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/getTaskOutputTool.js +7 -7
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/runTaskTool.js +14 -14
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.d.ts +66 -5
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.js +239 -48
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.d.ts +0 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +0 -208
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.d.ts +0 -22
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +0 -637
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.d.ts +0 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +0 -384
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/internalCustomizations/internalCustomizations.d.ts +0 -33
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/internalCustomizations/internalCustomizations.js +0 -47
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/internalCustomizations/internalSkill.d.ts +0 -30
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptFileContributions.js +0 -55
- /package/vscode/src/vs/workbench/contrib/chat/{common → browser}/promptSyntax/promptFileContributions.d.ts +0 -0
|
@@ -32,8 +32,8 @@ import { activeChatController } from './terminalChatControllerHolder.js';
|
|
|
32
32
|
|
|
33
33
|
registerActiveXtermAction({
|
|
34
34
|
id: TerminalChatCommandId.Start,
|
|
35
|
-
title: ( localize2(
|
|
36
|
-
category: ( localize2(
|
|
35
|
+
title: ( localize2(13835, "Open Inline Chat")),
|
|
36
|
+
category: ( localize2(13836, "Terminal")),
|
|
37
37
|
keybinding: {
|
|
38
38
|
primary: KeyMod.CtrlCmd | KeyCode.KeyI,
|
|
39
39
|
when: ( ContextKeyExpr.and(TerminalContextKeys.focusInAny)),
|
|
@@ -77,7 +77,7 @@ registerActiveXtermAction({
|
|
|
77
77
|
});
|
|
78
78
|
registerActiveXtermAction({
|
|
79
79
|
id: TerminalChatCommandId.Close,
|
|
80
|
-
title: ( localize2(
|
|
80
|
+
title: ( localize2(13837, "Close")),
|
|
81
81
|
category: AbstractInlineChatAction.category,
|
|
82
82
|
keybinding: {
|
|
83
83
|
primary: KeyCode.Escape,
|
|
@@ -102,8 +102,8 @@ registerActiveXtermAction({
|
|
|
102
102
|
});
|
|
103
103
|
registerActiveXtermAction({
|
|
104
104
|
id: TerminalChatCommandId.RunCommand,
|
|
105
|
-
title: ( localize2(
|
|
106
|
-
shortTitle: ( localize2(
|
|
105
|
+
title: ( localize2(13838, "Run Chat Command")),
|
|
106
|
+
shortTitle: ( localize2(13839, "Run")),
|
|
107
107
|
category: AbstractInlineChatAction.category,
|
|
108
108
|
precondition: ( ContextKeyExpr.and(ChatContextKeys.enabled, ( ContextKeyExpr.or(
|
|
109
109
|
TerminalContextKeys.processSupported,
|
|
@@ -131,8 +131,8 @@ registerActiveXtermAction({
|
|
|
131
131
|
});
|
|
132
132
|
registerActiveXtermAction({
|
|
133
133
|
id: TerminalChatCommandId.RunFirstCommand,
|
|
134
|
-
title: ( localize2(
|
|
135
|
-
shortTitle: ( localize2(
|
|
134
|
+
title: ( localize2(13840, "Run First Chat Command")),
|
|
135
|
+
shortTitle: ( localize2(13841, "Run First")),
|
|
136
136
|
category: AbstractInlineChatAction.category,
|
|
137
137
|
precondition: ( ContextKeyExpr.and(ChatContextKeys.enabled, ( ContextKeyExpr.or(
|
|
138
138
|
TerminalContextKeys.processSupported,
|
|
@@ -160,8 +160,8 @@ registerActiveXtermAction({
|
|
|
160
160
|
});
|
|
161
161
|
registerActiveXtermAction({
|
|
162
162
|
id: TerminalChatCommandId.InsertCommand,
|
|
163
|
-
title: ( localize2(
|
|
164
|
-
shortTitle: ( localize2(
|
|
163
|
+
title: ( localize2(13842, "Insert Chat Command")),
|
|
164
|
+
shortTitle: ( localize2(13843, "Insert")),
|
|
165
165
|
category: AbstractInlineChatAction.category,
|
|
166
166
|
icon: Codicon.insert,
|
|
167
167
|
precondition: ( ContextKeyExpr.and(ChatContextKeys.enabled, ( ContextKeyExpr.or(
|
|
@@ -190,8 +190,8 @@ registerActiveXtermAction({
|
|
|
190
190
|
});
|
|
191
191
|
registerActiveXtermAction({
|
|
192
192
|
id: TerminalChatCommandId.InsertFirstCommand,
|
|
193
|
-
title: ( localize2(
|
|
194
|
-
shortTitle: ( localize2(
|
|
193
|
+
title: ( localize2(13844, "Insert First Chat Command")),
|
|
194
|
+
shortTitle: ( localize2(13845, "Insert First")),
|
|
195
195
|
category: AbstractInlineChatAction.category,
|
|
196
196
|
precondition: ( ContextKeyExpr.and(ChatContextKeys.enabled, ( ContextKeyExpr.or(
|
|
197
197
|
TerminalContextKeys.processSupported,
|
|
@@ -219,7 +219,7 @@ registerActiveXtermAction({
|
|
|
219
219
|
});
|
|
220
220
|
registerActiveXtermAction({
|
|
221
221
|
id: TerminalChatCommandId.RerunRequest,
|
|
222
|
-
title: ( localize2(
|
|
222
|
+
title: ( localize2(13846, "Rerun Request")),
|
|
223
223
|
f1: false,
|
|
224
224
|
icon: Codicon.refresh,
|
|
225
225
|
category: AbstractInlineChatAction.category,
|
|
@@ -260,7 +260,7 @@ registerActiveXtermAction({
|
|
|
260
260
|
});
|
|
261
261
|
registerActiveXtermAction({
|
|
262
262
|
id: TerminalChatCommandId.ViewInChat,
|
|
263
|
-
title: ( localize2(
|
|
263
|
+
title: ( localize2(13847, "View in Chat")),
|
|
264
264
|
category: AbstractInlineChatAction.category,
|
|
265
265
|
precondition: ( ContextKeyExpr.and(ChatContextKeys.enabled, ( ContextKeyExpr.or(
|
|
266
266
|
TerminalContextKeys.processSupported,
|
|
@@ -286,8 +286,8 @@ registerAction2(class ShowChatTerminalsAction extends Action2 {
|
|
|
286
286
|
constructor() {
|
|
287
287
|
super({
|
|
288
288
|
id: TerminalChatCommandId.ViewHiddenChatTerminals,
|
|
289
|
-
title: ( localize2(
|
|
290
|
-
category: ( localize2(
|
|
289
|
+
title: ( localize2(13848, "View Hidden Chat Terminals")),
|
|
290
|
+
category: ( localize2(13849, "Terminal")),
|
|
291
291
|
f1: true,
|
|
292
292
|
precondition: ( ContextKeyExpr.and(TerminalChatContextKeys.hasHiddenChatTerminals, ChatContextKeys.enabled)),
|
|
293
293
|
menu: [{
|
|
@@ -329,7 +329,7 @@ registerAction2(class ShowChatTerminalsAction extends Action2 {
|
|
|
329
329
|
return;
|
|
330
330
|
}
|
|
331
331
|
const items = [];
|
|
332
|
-
const lastCommandLocalized = command => ( localize2(
|
|
332
|
+
const lastCommandLocalized = command => ( localize2(13850, "Last: {0}", command)).value;
|
|
333
333
|
const MAX_DETAIL_LENGTH = 80;
|
|
334
334
|
const metas = [];
|
|
335
335
|
for (const instance of ( all.values())) {
|
|
@@ -381,10 +381,10 @@ registerAction2(class ShowChatTerminalsAction extends Action2 {
|
|
|
381
381
|
});
|
|
382
382
|
}
|
|
383
383
|
const qp = quickInputService.createQuickPick();
|
|
384
|
-
qp.placeholder = ( localize2(
|
|
384
|
+
qp.placeholder = ( localize2(13851, "Select a chat terminal to show and focus")).value;
|
|
385
385
|
qp.items = items;
|
|
386
386
|
qp.canSelectMany = false;
|
|
387
|
-
qp.title = ( localize2(
|
|
387
|
+
qp.title = ( localize2(13852, "Chat Terminals")).value;
|
|
388
388
|
qp.matchOnDescription = true;
|
|
389
389
|
qp.matchOnDetail = true;
|
|
390
390
|
const qpDisposables = ( new DisposableStore());
|
|
@@ -442,14 +442,14 @@ KeybindingsRegistry.registerCommandAndKeybindingRule({
|
|
|
442
442
|
MenuRegistry.appendMenuItem(MenuId.CommandPalette, {
|
|
443
443
|
command: {
|
|
444
444
|
id: TerminalChatCommandId.FocusMostRecentChatTerminal,
|
|
445
|
-
title: ( localize(
|
|
445
|
+
title: ( localize(13853, "Chat: Focus Most Recent Terminal"))
|
|
446
446
|
},
|
|
447
447
|
when: ChatContextKeys.inChatSession
|
|
448
448
|
});
|
|
449
449
|
MenuRegistry.appendMenuItem(MenuId.CommandPalette, {
|
|
450
450
|
command: {
|
|
451
451
|
id: TerminalChatCommandId.FocusMostRecentChatTerminalOutput,
|
|
452
|
-
title: ( localize(
|
|
452
|
+
title: ( localize(13854, "Chat: Focus Most Recent Terminal Output"))
|
|
453
453
|
},
|
|
454
454
|
when: ChatContextKeys.inChatSession
|
|
455
455
|
});
|
|
@@ -49,7 +49,7 @@ let TerminalChatService = class TerminalChatService extends Disposable {
|
|
|
49
49
|
this._hasHiddenToolTerminalContext = TerminalChatContextKeys.hasHiddenChatTerminals.bindTo(this._contextKeyService);
|
|
50
50
|
this._restoreFromStorage();
|
|
51
51
|
this._register(this._chatService.onDidDisposeSession(e => {
|
|
52
|
-
for (const resource of e.
|
|
52
|
+
for (const resource of e.sessionResources) {
|
|
53
53
|
this._sessionAutoApproveRules.delete(resource);
|
|
54
54
|
this._sessionAutoApprovalEnabled.delete(resource);
|
|
55
55
|
}
|
|
@@ -73,7 +73,7 @@ let TerminalChatService = class TerminalChatService extends Disposable {
|
|
|
73
73
|
this._updateHasToolTerminalContextKeys();
|
|
74
74
|
}));
|
|
75
75
|
this._register(this._chatService.onDidDisposeSession(e => {
|
|
76
|
-
for (const resource of e.
|
|
76
|
+
for (const resource of e.sessionResources) {
|
|
77
77
|
if (LocalChatSessionUri.parseLocalSessionId(resource) === terminalToolSessionId) {
|
|
78
78
|
this._terminalInstancesByToolSessionId.delete(terminalToolSessionId);
|
|
79
79
|
this._toolSessionIdByTerminalInstance.delete(instance);
|
|
@@ -187,7 +187,7 @@ let TerminalChatWidget = class TerminalChatWidget extends Disposable {
|
|
|
187
187
|
}
|
|
188
188
|
_resetPlaceholder() {
|
|
189
189
|
const defaultAgent = this._chatAgentService.getDefaultAgent(ChatAgentLocation.Terminal);
|
|
190
|
-
this.inlineChatWidget.placeholder = defaultAgent?.description ?? ( localize(
|
|
190
|
+
this.inlineChatWidget.placeholder = defaultAgent?.description ?? ( localize(13855, "Ask about commands"));
|
|
191
191
|
}
|
|
192
192
|
async reveal() {
|
|
193
193
|
await this._createSession();
|
|
@@ -9,6 +9,7 @@ import { ITerminalLogService } from '@codingame/monaco-vscode-api/vscode/vs/plat
|
|
|
9
9
|
import { trackIdleOnPrompt, waitForIdle } from './executeStrategy.js';
|
|
10
10
|
import { createAltBufferPromise, setupRecreatingStartMarker, stripCommandEchoAndPrompt } from './strategyHelpers.js';
|
|
11
11
|
import { TerminalChatAgentToolsSettingId } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalChatAgentToolsConfiguration';
|
|
12
|
+
import { isMacintosh } from '@codingame/monaco-vscode-api/vscode/vs/base/common/platform';
|
|
12
13
|
|
|
13
14
|
let BasicExecuteStrategy = class BasicExecuteStrategy extends Disposable {
|
|
14
15
|
constructor(
|
|
@@ -85,7 +86,8 @@ let BasicExecuteStrategy = class BasicExecuteStrategy extends Disposable {
|
|
|
85
86
|
}
|
|
86
87
|
this._log(`Executing command line \`${commandLine}\``);
|
|
87
88
|
markerRecreation.dispose();
|
|
88
|
-
|
|
89
|
+
const forceBracketedPasteMode = isMacintosh;
|
|
90
|
+
this._instance.sendText(commandLine, true, forceBracketedPasteMode);
|
|
89
91
|
this._log("Waiting for done event");
|
|
90
92
|
const onDoneResult = await Promise.race([onDone, alternateBufferPromise.then(() => ({
|
|
91
93
|
type: "alternateBuffer"
|
|
@@ -8,6 +8,7 @@ import { ITerminalLogService } from '@codingame/monaco-vscode-api/vscode/vs/plat
|
|
|
8
8
|
import { waitForIdle, waitForIdleWithPromptHeuristics } from './executeStrategy.js';
|
|
9
9
|
import { createAltBufferPromise, setupRecreatingStartMarker, stripCommandEchoAndPrompt } from './strategyHelpers.js';
|
|
10
10
|
import { TerminalChatAgentToolsSettingId } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalChatAgentToolsConfiguration';
|
|
11
|
+
import { isMacintosh } from '@codingame/monaco-vscode-api/vscode/vs/base/common/platform';
|
|
11
12
|
|
|
12
13
|
let NoneExecuteStrategy = class NoneExecuteStrategy extends Disposable {
|
|
13
14
|
constructor(_instance, _hasReceivedUserInput, _configurationService, _logService) {
|
|
@@ -54,7 +55,8 @@ let NoneExecuteStrategy = class NoneExecuteStrategy extends Disposable {
|
|
|
54
55
|
this._log(`Executing command line \`${commandLine}\``);
|
|
55
56
|
markerRecreation.dispose();
|
|
56
57
|
const startLine = this._startMarker.value?.line;
|
|
57
|
-
|
|
58
|
+
const forceBracketedPasteMode = isMacintosh;
|
|
59
|
+
this._instance.sendText(commandLine, true, forceBracketedPasteMode);
|
|
58
60
|
if (startLine !== undefined) {
|
|
59
61
|
this._log("Waiting for cursor to move past start line");
|
|
60
62
|
const cursorMovedPromise = ( new Promise(resolve => {
|
|
@@ -70,7 +72,7 @@ let NoneExecuteStrategy = class NoneExecuteStrategy extends Disposable {
|
|
|
70
72
|
check();
|
|
71
73
|
}));
|
|
72
74
|
const cursorMoveTimeout = ( new Promise(resolve => {
|
|
73
|
-
const handle = setTimeout(() => resolve("timeout"),
|
|
75
|
+
const handle = setTimeout(() => resolve("timeout"), 1000);
|
|
74
76
|
store.add({
|
|
75
77
|
dispose: () => clearTimeout(handle)
|
|
76
78
|
});
|
|
@@ -5,7 +5,7 @@ import { Emitter, Event } from '@codingame/monaco-vscode-api/vscode/vs/base/comm
|
|
|
5
5
|
import { Disposable, MutableDisposable, DisposableStore } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
|
|
6
6
|
import { isNumber } from '@codingame/monaco-vscode-api/vscode/vs/base/common/types';
|
|
7
7
|
import { IConfigurationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service';
|
|
8
|
-
import { isCI } from '@codingame/monaco-vscode-api/vscode/vs/base/common/platform';
|
|
8
|
+
import { isMacintosh, isCI } from '@codingame/monaco-vscode-api/vscode/vs/base/common/platform';
|
|
9
9
|
import { ITerminalLogService } from '@codingame/monaco-vscode-api/vscode/vs/platform/terminal/common/terminal.service';
|
|
10
10
|
import { trackIdleOnPrompt } from './executeStrategy.js';
|
|
11
11
|
import { createAltBufferPromise, setupRecreatingStartMarker, stripCommandEchoAndPrompt } from './strategyHelpers.js';
|
|
@@ -63,7 +63,8 @@ let RichExecuteStrategy = class RichExecuteStrategy extends Disposable {
|
|
|
63
63
|
);
|
|
64
64
|
this._log(`Executing command line \`${commandLine}\``);
|
|
65
65
|
markerRecreation.dispose();
|
|
66
|
-
|
|
66
|
+
const forceBracketedPasteMode = isMacintosh;
|
|
67
|
+
this._instance.runCommand(commandLine, true, commandId, forceBracketedPasteMode);
|
|
67
68
|
this._log("Waiting for done event");
|
|
68
69
|
const onDoneResult = await Promise.race([onDone, alternateBufferPromise.then(() => ({
|
|
69
70
|
type: "alternateBuffer"
|
|
@@ -155,7 +155,7 @@ function generateAutoApproveActions(commandLine, subCommands, autoApproveResult)
|
|
|
155
155
|
const firstSubcommandFirstWord = unapprovedSubCommands.length > 0 ? unapprovedSubCommands[0].split(" ")[0] : "";
|
|
156
156
|
if (firstSubcommandFirstWord !== commandLine && !( commandsWithSubcommands.has(commandLine)) && !( commandsWithSubSubCommands.has(commandLine))) {
|
|
157
157
|
actions.push({
|
|
158
|
-
label: ( localize(
|
|
158
|
+
label: ( localize(13856, "Allow Exact Command Line in this Session")),
|
|
159
159
|
data: {
|
|
160
160
|
type: "newRule",
|
|
161
161
|
rule: {
|
|
@@ -169,7 +169,7 @@ function generateAutoApproveActions(commandLine, subCommands, autoApproveResult)
|
|
|
169
169
|
}
|
|
170
170
|
});
|
|
171
171
|
actions.push({
|
|
172
|
-
label: ( localize(
|
|
172
|
+
label: ( localize(13857, "Allow Exact Command Line in this Workspace")),
|
|
173
173
|
data: {
|
|
174
174
|
type: "newRule",
|
|
175
175
|
rule: {
|
|
@@ -183,7 +183,7 @@ function generateAutoApproveActions(commandLine, subCommands, autoApproveResult)
|
|
|
183
183
|
}
|
|
184
184
|
});
|
|
185
185
|
actions.push({
|
|
186
|
-
label: ( localize(
|
|
186
|
+
label: ( localize(13858, "Always Allow Exact Command Line")),
|
|
187
187
|
data: {
|
|
188
188
|
type: "newRule",
|
|
189
189
|
rule: {
|
|
@@ -202,15 +202,15 @@ function generateAutoApproveActions(commandLine, subCommands, autoApproveResult)
|
|
|
202
202
|
actions.push(( new Separator()));
|
|
203
203
|
}
|
|
204
204
|
actions.push({
|
|
205
|
-
label: ( localize(
|
|
206
|
-
tooltip: ( localize(
|
|
205
|
+
label: ( localize(13859, "Allow All Commands in this Session")),
|
|
206
|
+
tooltip: ( localize(13860, "Allow this tool to run in this session without confirmation.")),
|
|
207
207
|
data: {
|
|
208
208
|
type: "sessionApproval"
|
|
209
209
|
}
|
|
210
210
|
});
|
|
211
211
|
actions.push(( new Separator()));
|
|
212
212
|
actions.push({
|
|
213
|
-
label: ( localize(
|
|
213
|
+
label: ( localize(13861, "Configure Auto Approve...")),
|
|
214
214
|
data: {
|
|
215
215
|
type: "configure"
|
|
216
216
|
}
|
|
@@ -19,6 +19,7 @@ export declare class RunInTerminalToolTelemetry {
|
|
|
19
19
|
error: string | undefined;
|
|
20
20
|
isBackground: boolean;
|
|
21
21
|
isNewSession: boolean;
|
|
22
|
+
isSandboxWrapped: boolean;
|
|
22
23
|
shellIntegrationQuality: ShellIntegrationQuality;
|
|
23
24
|
outputLineCount: number;
|
|
24
25
|
timingConnectMs: number;
|
|
@@ -60,6 +60,7 @@ let RunInTerminalToolTelemetry = class RunInTerminalToolTelemetry {
|
|
|
60
60
|
toolEditedCommand: state.didToolEditCommand ? 1 : 0,
|
|
61
61
|
isBackground: state.isBackground ? 1 : 0,
|
|
62
62
|
isNewSession: state.isNewSession ? 1 : 0,
|
|
63
|
+
isSandbox: state.isSandboxWrapped ? 1 : 0,
|
|
63
64
|
outputLineCount: state.outputLineCount,
|
|
64
65
|
nonZeroExitCode: state.exitCode === undefined ? -1 : state.exitCode === 0 ? 0 : 1,
|
|
65
66
|
timingConnectMs: state.timingConnectMs,
|
|
@@ -3,16 +3,14 @@ import { IConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/pl
|
|
|
3
3
|
import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation";
|
|
4
4
|
import { type IWorkbenchContribution } from "@codingame/monaco-vscode-api/vscode/vs/workbench/common/contributions";
|
|
5
5
|
import { ILanguageModelToolsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/tools/languageModelToolsService.service";
|
|
6
|
-
import { ITrustedDomainService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/url/common/trustedDomainService.service";
|
|
7
6
|
export declare class ChatAgentToolsContribution extends Disposable implements IWorkbenchContribution {
|
|
8
7
|
private readonly _instantiationService;
|
|
9
8
|
private readonly _toolsService;
|
|
10
9
|
private readonly _configurationService;
|
|
11
|
-
private readonly _trustedDomainService;
|
|
12
10
|
static readonly ID = "terminal.chatAgentTools";
|
|
13
11
|
private readonly _runInTerminalToolRegistration;
|
|
14
12
|
private _runInTerminalToolRegistrationVersion;
|
|
15
|
-
constructor(_instantiationService: IInstantiationService, _toolsService: ILanguageModelToolsService, _configurationService: IConfigurationService
|
|
13
|
+
constructor(_instantiationService: IInstantiationService, _toolsService: ILanguageModelToolsService, _configurationService: IConfigurationService);
|
|
16
14
|
private _runInTerminalTool;
|
|
17
15
|
private _registerRunInTerminalTool;
|
|
18
16
|
}
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
|
|
3
3
|
import { Codicon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/codicons';
|
|
4
4
|
import { Disposable, MutableDisposable, DisposableStore } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
|
|
5
|
-
import { isNumber } from '@codingame/monaco-vscode-api/vscode/vs/base/common/types';
|
|
6
5
|
import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
7
6
|
import { MenuId } from '@codingame/monaco-vscode-api/vscode/vs/platform/actions/common/actions';
|
|
7
|
+
import { ConfigurationTarget } from '@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration';
|
|
8
8
|
import { IConfigurationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service';
|
|
9
9
|
import { ContextKeyExpr } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey';
|
|
10
10
|
import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
|
|
@@ -29,8 +29,8 @@ import { CreateAndRunTaskTool, CreateAndRunTaskToolData } from './tools/task/cre
|
|
|
29
29
|
import { GetTaskOutputTool, GetTaskOutputToolData } from './tools/task/getTaskOutputTool.js';
|
|
30
30
|
import { RunTaskTool, RunTaskToolData } from './tools/task/runTaskTool.js';
|
|
31
31
|
import '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/extensions';
|
|
32
|
-
import { ITrustedDomainService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/url/common/trustedDomainService.service';
|
|
33
32
|
import '../common/terminalSandboxService.js';
|
|
33
|
+
import { isNumber } from '@codingame/monaco-vscode-api/vscode/vs/base/common/types';
|
|
34
34
|
|
|
35
35
|
let ShellIntegrationTimeoutMigrationContribution = class ShellIntegrationTimeoutMigrationContribution extends Disposable {
|
|
36
36
|
static {
|
|
@@ -38,13 +38,21 @@ let ShellIntegrationTimeoutMigrationContribution = class ShellIntegrationTimeout
|
|
|
38
38
|
}
|
|
39
39
|
constructor(configurationService) {
|
|
40
40
|
super();
|
|
41
|
-
const
|
|
42
|
-
|
|
43
|
-
|
|
41
|
+
const deprecated = configurationService.inspect(TerminalChatAgentToolsSettingId.ShellIntegrationTimeout);
|
|
42
|
+
const target = configurationService.inspect(TerminalSettingId.ShellIntegrationTimeout);
|
|
43
|
+
if (deprecated.userValue !== undefined && target.userValue === undefined && isNumber(deprecated.userValue)) {
|
|
44
|
+
configurationService.updateValue(
|
|
45
|
+
TerminalSettingId.ShellIntegrationTimeout,
|
|
46
|
+
deprecated.userValue,
|
|
47
|
+
ConfigurationTarget.USER
|
|
48
|
+
);
|
|
44
49
|
}
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
50
|
+
if (deprecated.workspaceValue !== undefined && target.workspaceValue === undefined && isNumber(deprecated.workspaceValue)) {
|
|
51
|
+
configurationService.updateValue(
|
|
52
|
+
TerminalSettingId.ShellIntegrationTimeout,
|
|
53
|
+
deprecated.workspaceValue,
|
|
54
|
+
ConfigurationTarget.WORKSPACE
|
|
55
|
+
);
|
|
48
56
|
}
|
|
49
57
|
}
|
|
50
58
|
};
|
|
@@ -76,17 +84,11 @@ let ChatAgentToolsContribution = class ChatAgentToolsContribution extends Dispos
|
|
|
76
84
|
static {
|
|
77
85
|
this.ID = "terminal.chatAgentTools";
|
|
78
86
|
}
|
|
79
|
-
constructor(
|
|
80
|
-
_instantiationService,
|
|
81
|
-
_toolsService,
|
|
82
|
-
_configurationService,
|
|
83
|
-
_trustedDomainService
|
|
84
|
-
) {
|
|
87
|
+
constructor(_instantiationService, _toolsService, _configurationService) {
|
|
85
88
|
super();
|
|
86
89
|
this._instantiationService = _instantiationService;
|
|
87
90
|
this._toolsService = _toolsService;
|
|
88
91
|
this._configurationService = _configurationService;
|
|
89
|
-
this._trustedDomainService = _trustedDomainService;
|
|
90
92
|
this._runInTerminalToolRegistration = this._register(( new MutableDisposable()));
|
|
91
93
|
this._runInTerminalToolRegistrationVersion = 0;
|
|
92
94
|
const confirmTerminalCommandTool = _instantiationService.createInstance(ConfirmTerminalCommandTool);
|
|
@@ -125,13 +127,14 @@ let ChatAgentToolsContribution = class ChatAgentToolsContribution extends Dispos
|
|
|
125
127
|
this._register(_toolsService.executeToolSet.addTool(CreateAndRunTaskToolData));
|
|
126
128
|
this._register(_toolsService.readToolSet.addTool(GetTaskOutputToolData));
|
|
127
129
|
this._register(this._configurationService.onDidChangeConfiguration(e => {
|
|
128
|
-
if (e.affectsConfiguration(TerminalChatAgentToolsSettingId.
|
|
130
|
+
if (e.affectsConfiguration(TerminalChatAgentToolsSettingId.AgentSandboxEnabled) || e.affectsConfiguration(TerminalChatAgentToolsSettingId.AgentSandboxNetworkAllowedDomains) || e.affectsConfiguration(TerminalChatAgentToolsSettingId.AgentSandboxNetworkDeniedDomains) || e.affectsConfiguration(TerminalChatAgentToolsSettingId.DeprecatedTerminalSandboxEnabled) || e.affectsConfiguration(
|
|
131
|
+
TerminalChatAgentToolsSettingId.DeprecatedTerminalSandboxNetworkAllowedDomains
|
|
132
|
+
) || e.affectsConfiguration(
|
|
133
|
+
TerminalChatAgentToolsSettingId.DeprecatedTerminalSandboxNetworkDeniedDomains
|
|
134
|
+
)) {
|
|
129
135
|
this._registerRunInTerminalTool();
|
|
130
136
|
}
|
|
131
137
|
}));
|
|
132
|
-
this._register(this._trustedDomainService.onDidChangeTrustedDomains(() => {
|
|
133
|
-
this._registerRunInTerminalTool();
|
|
134
|
-
}));
|
|
135
138
|
}
|
|
136
139
|
_registerRunInTerminalTool() {
|
|
137
140
|
const version = ++this._runInTerminalToolRegistrationVersion;
|
|
@@ -153,7 +156,7 @@ let ChatAgentToolsContribution = class ChatAgentToolsContribution extends Dispos
|
|
|
153
156
|
});
|
|
154
157
|
}
|
|
155
158
|
};
|
|
156
|
-
ChatAgentToolsContribution = ( __decorate([( __param(0, IInstantiationService)), ( __param(1, ILanguageModelToolsService)), ( __param(2, IConfigurationService))
|
|
159
|
+
ChatAgentToolsContribution = ( __decorate([( __param(0, IInstantiationService)), ( __param(1, ILanguageModelToolsService)), ( __param(2, IConfigurationService))], ChatAgentToolsContribution));
|
|
157
160
|
registerWorkbenchContribution2(
|
|
158
161
|
ChatAgentToolsContribution.ID,
|
|
159
162
|
ChatAgentToolsContribution,
|
|
@@ -161,7 +164,7 @@ registerWorkbenchContribution2(
|
|
|
161
164
|
);
|
|
162
165
|
registerActiveInstanceAction({
|
|
163
166
|
id: TerminalChatAgentToolsCommandId.ChatAddTerminalSelection,
|
|
164
|
-
title: ( localize(
|
|
167
|
+
title: ( localize(13862, "Add Terminal Selection to Chat")),
|
|
165
168
|
precondition: ( ContextKeyExpr.and(ChatContextKeys.enabled, sharedWhenClause.terminalAvailable)),
|
|
166
169
|
menu: [{
|
|
167
170
|
id: MenuId.TerminalInstanceContext,
|
|
@@ -182,8 +185,8 @@ registerActiveInstanceAction({
|
|
|
182
185
|
chatView.attachmentModel.addContext({
|
|
183
186
|
id: `terminal-selection-${Date.now()}`,
|
|
184
187
|
kind: "generic",
|
|
185
|
-
name: ( localize(
|
|
186
|
-
fullName: ( localize(
|
|
188
|
+
name: ( localize(13863, "Terminal Selection")),
|
|
189
|
+
fullName: ( localize(13863, "Terminal Selection")),
|
|
187
190
|
value: selection,
|
|
188
191
|
icon: Codicon.terminal
|
|
189
192
|
});
|
|
@@ -11,7 +11,7 @@ import { timeout, raceCancellationError } from '@codingame/monaco-vscode-api/vsc
|
|
|
11
11
|
const AwaitTerminalToolData = {
|
|
12
12
|
id: TerminalToolId.AwaitTerminal,
|
|
13
13
|
toolReferenceName: "awaitTerminal",
|
|
14
|
-
displayName: ( localize(
|
|
14
|
+
displayName: ( localize(13864, "Await Terminal")),
|
|
15
15
|
modelDescription: "Wait for a background terminal command to complete. Returns the output, exit code, or timeout status.",
|
|
16
16
|
icon: Codicon.terminal,
|
|
17
17
|
source: ToolDataSource.Internal,
|
|
@@ -33,8 +33,8 @@ const AwaitTerminalToolData = {
|
|
|
33
33
|
class AwaitTerminalTool extends Disposable {
|
|
34
34
|
async prepareToolInvocation(_context, _token) {
|
|
35
35
|
return {
|
|
36
|
-
invocationMessage: ( localize(
|
|
37
|
-
pastTenseMessage: ( localize(
|
|
36
|
+
invocationMessage: ( localize(13865, "Awaiting terminal completion")),
|
|
37
|
+
pastTenseMessage: ( localize(13866, "Awaited terminal completion"))
|
|
38
38
|
};
|
|
39
39
|
}
|
|
40
40
|
async invoke(invocation, _countTokens, _progress, token) {
|
|
@@ -154,7 +154,7 @@ let NpmScriptAutoApprover = class NpmScriptAutoApprover extends Disposable {
|
|
|
154
154
|
isAutoApproved: true,
|
|
155
155
|
scriptName,
|
|
156
156
|
autoApproveInfo: ( new MarkdownString(( localize(
|
|
157
|
-
|
|
157
|
+
13867,
|
|
158
158
|
"Auto approved as {0} is defined in package.json",
|
|
159
159
|
`\`${scriptName}\``
|
|
160
160
|
))))
|
|
@@ -56,7 +56,7 @@ let CommandLineAutoApproveAnalyzer = class CommandLineAutoApproveAnalyzer extend
|
|
|
56
56
|
isAutoApproved: true,
|
|
57
57
|
isAutoApproveAllowed: true,
|
|
58
58
|
disclaimers: [],
|
|
59
|
-
autoApproveInfo: ( new MarkdownString(`${( localize(
|
|
59
|
+
autoApproveInfo: ( new MarkdownString(`${( localize(13868, "Auto approved for this session"))} ([${( localize(13869, "Disable"))}](${( disableUri.toString())}))`, mdTrustSettings))
|
|
60
60
|
};
|
|
61
61
|
}
|
|
62
62
|
const trimmedCommandLine = options.commandLine.trimStart();
|
|
@@ -158,7 +158,7 @@ let CommandLineAutoApproveAnalyzer = class CommandLineAutoApproveAnalyzer extend
|
|
|
158
158
|
const subCommandsLowerFirstWordOnly = ( subCommands.map(command => command.split(" ")[0].toLowerCase()));
|
|
159
159
|
if (!isAutoApproved && (( subCommandsLowerFirstWordOnly.some(command => promptInjectionWarningCommandsLower.includes(command))) || (isPowerShell(options.shell, options.os) && ( subCommandsLowerFirstWordOnly.some(command => promptInjectionWarningCommandsLowerPwshOnly.includes(command)))))) {
|
|
160
160
|
disclaimers.push(( localize(
|
|
161
|
-
|
|
161
|
+
13870,
|
|
162
162
|
"Web content may contain malicious code or attempt prompt injection attacks."
|
|
163
163
|
)));
|
|
164
164
|
}
|
|
@@ -199,10 +199,10 @@ let CommandLineAutoApproveAnalyzer = class CommandLineAutoApproveAnalyzer extend
|
|
|
199
199
|
return ( asArray(result).filter(e => isAutoApproveRule(e.rule)).map(e => {
|
|
200
200
|
const escapedSourceText = e.rule.sourceText.replaceAll("$", "\\$");
|
|
201
201
|
if (e.rule.sourceTarget === "session") {
|
|
202
|
-
return localize(
|
|
202
|
+
return localize(13871, "{0} (session)", `\`${escapedSourceText}\``);
|
|
203
203
|
}
|
|
204
204
|
const settingsUri = createCommandUri(TerminalChatCommandId.OpenTerminalSettingsLink, e.rule.sourceTarget);
|
|
205
|
-
const tooltip = ( localize(
|
|
205
|
+
const tooltip = ( localize(13872, "View rule in settings"));
|
|
206
206
|
let label = escapedSourceText;
|
|
207
207
|
switch (e.rule?.sourceTarget) {
|
|
208
208
|
case ConfigurationTarget.DEFAULT:
|
|
@@ -233,9 +233,9 @@ let CommandLineAutoApproveAnalyzer = class CommandLineAutoApproveAnalyzer extend
|
|
|
233
233
|
if (isGlobalAutoApproved) {
|
|
234
234
|
const settingsUri = createCommandUri(TerminalChatCommandId.OpenTerminalSettingsLink, "global");
|
|
235
235
|
return (new MarkdownString(`${( localize(
|
|
236
|
-
|
|
236
|
+
13873,
|
|
237
237
|
"Auto approved by setting {0}",
|
|
238
|
-
`[\`${ChatConfiguration.GlobalAutoApprove}\`](${( settingsUri.toString())} "${( localize(
|
|
238
|
+
`[\`${ChatConfiguration.GlobalAutoApprove}\`](${( settingsUri.toString())} "${( localize(13874, "View settings"))}")`
|
|
239
239
|
))}`, mdTrustSettings));
|
|
240
240
|
}
|
|
241
241
|
if (isAutoApproved) {
|
|
@@ -244,7 +244,7 @@ let CommandLineAutoApproveAnalyzer = class CommandLineAutoApproveAnalyzer extend
|
|
|
244
244
|
{
|
|
245
245
|
if (isAutoApproveRule(commandLineResult.rule)) {
|
|
246
246
|
return (new MarkdownString(
|
|
247
|
-
localize(
|
|
247
|
+
localize(13875, "Auto approved by rule {0}", formatRuleLinks(commandLineResult)),
|
|
248
248
|
mdTrustSettings
|
|
249
249
|
));
|
|
250
250
|
}
|
|
@@ -259,12 +259,12 @@ let CommandLineAutoApproveAnalyzer = class CommandLineAutoApproveAnalyzer extend
|
|
|
259
259
|
const uniqueRules = dedupeRules(subCommandResults);
|
|
260
260
|
if (uniqueRules.length === 1) {
|
|
261
261
|
return (new MarkdownString(
|
|
262
|
-
localize(
|
|
262
|
+
localize(13875, "Auto approved by rule {0}", formatRuleLinks(uniqueRules)),
|
|
263
263
|
mdTrustSettings
|
|
264
264
|
));
|
|
265
265
|
} else if (uniqueRules.length > 1) {
|
|
266
266
|
return (new MarkdownString(
|
|
267
|
-
localize(
|
|
267
|
+
localize(13876, "Auto approved by rules {0}", formatRuleLinks(uniqueRules)),
|
|
268
268
|
mdTrustSettings
|
|
269
269
|
));
|
|
270
270
|
}
|
|
@@ -277,7 +277,7 @@ let CommandLineAutoApproveAnalyzer = class CommandLineAutoApproveAnalyzer extend
|
|
|
277
277
|
{
|
|
278
278
|
if (commandLineResult.rule) {
|
|
279
279
|
return (new MarkdownString(localize(
|
|
280
|
-
|
|
280
|
+
13877,
|
|
281
281
|
"Auto approval denied by rule {0}",
|
|
282
282
|
formatRuleLinks(commandLineResult)
|
|
283
283
|
), mdTrustSettings));
|
|
@@ -289,12 +289,12 @@ let CommandLineAutoApproveAnalyzer = class CommandLineAutoApproveAnalyzer extend
|
|
|
289
289
|
const uniqueRules = dedupeRules(subCommandResults.filter(e => e.result === "denied"));
|
|
290
290
|
if (uniqueRules.length === 1) {
|
|
291
291
|
return (new MarkdownString(
|
|
292
|
-
localize(
|
|
292
|
+
localize(13877, "Auto approval denied by rule {0}", formatRuleLinks(uniqueRules)),
|
|
293
293
|
mdTrustSettings
|
|
294
294
|
));
|
|
295
295
|
} else if (uniqueRules.length > 1) {
|
|
296
296
|
return (new MarkdownString(
|
|
297
|
-
localize(
|
|
297
|
+
localize(13878, "Auto approval denied by rules {0}", formatRuleLinks(uniqueRules)),
|
|
298
298
|
mdTrustSettings
|
|
299
299
|
));
|
|
300
300
|
}
|
|
@@ -149,12 +149,12 @@ let CommandLineFileWriteAnalyzer = class CommandLineFileWriteAnalyzer extends Di
|
|
|
149
149
|
)).join(", ");
|
|
150
150
|
if (!isAutoApproveAllowed) {
|
|
151
151
|
disclaimers.push(( localize(
|
|
152
|
-
|
|
152
|
+
13879,
|
|
153
153
|
"File write operations detected that cannot be auto approved: {0}",
|
|
154
154
|
fileWritesList
|
|
155
155
|
)));
|
|
156
156
|
} else {
|
|
157
|
-
disclaimers.push(( localize(
|
|
157
|
+
disclaimers.push(( localize(13880, "File write operations detected: {0}", fileWritesList)));
|
|
158
158
|
}
|
|
159
159
|
}
|
|
160
160
|
return {
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
|
|
2
2
|
import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
|
|
3
3
|
import { Disposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
|
|
4
|
+
import { TerminalSandboxPrerequisiteCheck } from '../../../common/terminalSandboxService.js';
|
|
4
5
|
import { ITerminalSandboxService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.service';
|
|
5
6
|
|
|
6
7
|
let CommandLineSandboxRewriter = class CommandLineSandboxRewriter extends Disposable {
|
|
@@ -9,17 +10,11 @@ let CommandLineSandboxRewriter = class CommandLineSandboxRewriter extends Dispos
|
|
|
9
10
|
this._sandboxService = _sandboxService;
|
|
10
11
|
}
|
|
11
12
|
async rewrite(options) {
|
|
12
|
-
|
|
13
|
+
const sandboxPrereqs = await this._sandboxService.checkForSandboxingPrereqs();
|
|
14
|
+
if (!sandboxPrereqs.enabled || sandboxPrereqs.failedCheck === TerminalSandboxPrerequisiteCheck.Config) {
|
|
13
15
|
return undefined;
|
|
14
16
|
}
|
|
15
|
-
|
|
16
|
-
return undefined;
|
|
17
|
-
}
|
|
18
|
-
const sandboxConfigPath = await this._sandboxService.getSandboxConfigPath();
|
|
19
|
-
if (!sandboxConfigPath) {
|
|
20
|
-
return undefined;
|
|
21
|
-
}
|
|
22
|
-
const wrappedCommand = this._sandboxService.wrapCommand(options.commandLine);
|
|
17
|
+
const wrappedCommand = this._sandboxService.wrapCommand(options.commandLine, options.requestUnsandboxedExecution);
|
|
23
18
|
return {
|
|
24
19
|
rewritten: wrappedCommand,
|
|
25
20
|
reasoning: "Wrapped command for sandbox execution",
|
|
@@ -12,7 +12,7 @@ const GetTerminalLastCommandToolData = {
|
|
|
12
12
|
id: TerminalToolId.TerminalLastCommand,
|
|
13
13
|
toolReferenceName: "terminalLastCommand",
|
|
14
14
|
legacyToolReferenceFullNames: ["runCommands/terminalLastCommand"],
|
|
15
|
-
displayName: ( localize(
|
|
15
|
+
displayName: ( localize(13881, "Get Terminal Last Command")),
|
|
16
16
|
modelDescription: "Get the last command run in the active terminal.",
|
|
17
17
|
source: ToolDataSource.Internal,
|
|
18
18
|
icon: Codicon.terminal
|
|
@@ -24,8 +24,8 @@ let GetTerminalLastCommandTool = class GetTerminalLastCommandTool extends Dispos
|
|
|
24
24
|
}
|
|
25
25
|
async prepareToolInvocation(context, token) {
|
|
26
26
|
return {
|
|
27
|
-
invocationMessage: ( localize(
|
|
28
|
-
pastTenseMessage: ( localize(
|
|
27
|
+
invocationMessage: ( localize(13882, "Getting last terminal command")),
|
|
28
|
+
pastTenseMessage: ( localize(13883, "Got last terminal command"))
|
|
29
29
|
};
|
|
30
30
|
}
|
|
31
31
|
async invoke(invocation, _countTokens, _progress, token) {
|