@codingame/monaco-vscode-chat-service-override 27.0.0 → 28.0.1
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/sessions/contrib/chat/browser/aiCustomizationWorkspaceService.d.ts +54 -4
- package/vscode/src/vs/sessions/contrib/chat/browser/aiCustomizationWorkspaceService.js +179 -11
- package/vscode/src/vs/sessions/contrib/chat/browser/newSession.js +5 -1
- package/vscode/src/vs/sessions/contrib/chat/browser/sessionsConfigurationService.d.ts +6 -1
- package/vscode/src/vs/sessions/contrib/chat/browser/sessionsConfigurationService.js +25 -10
- package/vscode/src/vs/sessions/contrib/fileTreeView/browser/githubFileSystemProvider.d.ts +67 -0
- package/vscode/src/vs/sessions/contrib/fileTreeView/browser/githubFileSystemProvider.js +263 -0
- package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsManagementService.d.ts +6 -0
- package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsManagementService.js +25 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityService.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.js +15 -15
- 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 +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +13 -5
- 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 +5 -5
- 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 +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatOpenAgentDebugPanelAction.js +5 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPluginActions.d.ts +7 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPluginActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQueueActions.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +49 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +18 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditor.d.ts +58 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditor.js +537 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditorInput.d.ts +17 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditorInput.js +55 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginItems.d.ts +26 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginItems.js +9 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/media/agentPluginEditor.css +32 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.d.ts +17 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.js +89 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.d.ts +4 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.js +146 -53
- 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 +56 -54
- 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 +5 -5
- 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 +25 -25
- 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/aiCustomization/aiCustomizationIcons.d.ts +4 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.js +13 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.d.ts +7 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.js +189 -145
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.contribution.js +42 -44
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.d.ts +0 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.js +3 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.d.ts +20 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.js +210 -59
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWorkspaceService.js +14 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCreatorService.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.js +122 -53
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationManagement.css +87 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.d.ts +62 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.js +702 -0
- 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 +279 -214
- 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/chatDebugEditor.js +12 -3
- 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.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFilters.js +63 -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 +18 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHomeView.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.d.ts +4 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.js +62 -24
- 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 +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugTypes.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/media/chatDebug.css +7 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCheckpointTimelineImpl.d.ts +2 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCheckpointTimelineImpl.js +32 -36
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.js +4 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/media/chatEditorController.css +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.js +13 -13
- 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 +49 -49
- 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.d.ts +9 -0
- 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.js +14 -14
- 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 +26 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.js +103 -60
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.js +61 -61
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipCatalog.d.ts +66 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipCatalog.js +245 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipEligibilityTracker.d.ts +78 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipEligibilityTracker.js +234 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.d.ts +31 -126
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.js +229 -524
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipStorageKeys.d.ts +41 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipStorageKeys.js +22 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.d.ts +4 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.js +54 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/defaultModelContribution.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.d.ts +11 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.js +112 -39
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.d.ts +99 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.js +489 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.d.ts +6 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.js +348 -285
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.d.ts +18 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.js +107 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +4 -4
- 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/tools/languageModelToolsConfirmationService.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.js +55 -38
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.d.ts +20 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.js +148 -60
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/renameTool.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/usagesTool.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatQueuePickerActionItem.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatQueuePickerActionItem.js +29 -14
- 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/chatInputCompletions.js +72 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorContrib.js +5 -3
- 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 +5 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.js +11 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewTitleControl.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/media/chatViewPane.css +8 -0
- package/vscode/src/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService.js +1 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.js +20 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.js +72 -23
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceTelemetry.d.ts +19 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceTelemetry.js +5 -1
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.d.ts +6 -1
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.js +37 -8
- package/vscode/src/vs/workbench/contrib/chat/common/model/objectMutationLog.js +36 -3
- package/vscode/src/vs/workbench/contrib/chat/common/participants/chatSlashCommands.d.ts +4 -4
- package/vscode/src/vs/workbench/contrib/chat/common/participants/chatSlashCommands.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.d.ts +6 -1
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.d.ts +71 -25
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.js +217 -91
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.d.ts +85 -3
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.js +257 -63
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +17 -17
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookClaudeCompat.d.ts +3 -16
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookClaudeCompat.js +7 -50
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCompatibility.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCompatibility.js +32 -3
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCopilotCliCompat.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCopilotCliCompat.js +3 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/PromptHeaderDefinitionProvider.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.js +7 -6
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptDocumentSemanticTokensProvider.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.d.ts +26 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +287 -88
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.d.ts +10 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.js +75 -20
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.d.ts +121 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.js +1422 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptFileContributions.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +5 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +81 -41
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +8 -6
- package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/widget/chatResponseResourceFileSystemProvider.d.ts +14 -2
- package/vscode/src/vs/workbench/contrib/chat/common/widget/chatResponseResourceFileSystemProvider.js +54 -5
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.js +6 -5
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.d.ts +4 -4
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +38 -22
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatDefaultModel.js +2 -2
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +8 -8
- 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 +10 -10
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebook.chat.contribution.js +5 -5
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +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/terminalChatWidget.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +6 -6
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +3 -3
- 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/getTerminalLastCommandTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/killTerminalTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +36 -18
- 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.d.ts +6 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +27 -13
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.js +1 -1
- 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 +1 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.js +8 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatVariables.d.ts +0 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatVariables.js +0 -67
|
@@ -17,6 +17,7 @@ import { IMcpRegistry } from '@codingame/monaco-vscode-api/vscode/vs/workbench/c
|
|
|
17
17
|
import { McpServerEditorTab, McpConnectionState, McpServerCacheState } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/mcp/common/mcpTypes';
|
|
18
18
|
import { IMcpService, IMcpWorkbenchService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/mcp/common/mcpTypes.service';
|
|
19
19
|
import { startServerAndWaitForLiveTools } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/mcp/common/mcpTypesUtils';
|
|
20
|
+
import { ILanguageModelToolsConfirmationService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/tools/languageModelToolsConfirmationService.service';
|
|
20
21
|
import { ToolDataSource } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/tools/languageModelToolsService';
|
|
21
22
|
import { ILanguageModelToolsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/tools/languageModelToolsService.service';
|
|
22
23
|
import { ConfigureToolSets } from '../tools/toolSetsContribution.js';
|
|
@@ -78,7 +79,7 @@ function createToolSetTreeItem(toolset, checked, editorService) {
|
|
|
78
79
|
const resource = toolset.source.file;
|
|
79
80
|
buttons.push({
|
|
80
81
|
iconClass: ThemeIcon.asClassName(Codicon.edit),
|
|
81
|
-
tooltip: ( localize(
|
|
82
|
+
tooltip: ( localize(4984, "Edit Tool Set")),
|
|
82
83
|
action: () => editorService.openEditor({
|
|
83
84
|
resource
|
|
84
85
|
})
|
|
@@ -106,6 +107,7 @@ async function showToolsPicker(accessor, placeHolder, source, description, getTo
|
|
|
106
107
|
const editorService = accessor.get(IEditorService);
|
|
107
108
|
const mcpWorkbenchService = accessor.get(IMcpWorkbenchService);
|
|
108
109
|
const toolsService = accessor.get(ILanguageModelToolsService);
|
|
110
|
+
const confirmationService = accessor.get(ILanguageModelToolsConfirmationService);
|
|
109
111
|
const telemetryService = accessor.get(ITelemetryService);
|
|
110
112
|
const mcpServerByTool = ( new Map());
|
|
111
113
|
for (const server of mcpService.servers.get()) {
|
|
@@ -164,7 +166,7 @@ async function showToolsPicker(accessor, placeHolder, source, description, getTo
|
|
|
164
166
|
if (collection?.source) {
|
|
165
167
|
buttons.push({
|
|
166
168
|
iconClass: ThemeIcon.asClassName(Codicon.settingsGear),
|
|
167
|
-
tooltip: ( localize(
|
|
169
|
+
tooltip: ( localize(4985, "Configure {0}", collection.label)),
|
|
168
170
|
action: () => collection.source ? collection.source instanceof ExtensionIdentifier ? extensionsWorkbenchService.open(collection.source.value, {
|
|
169
171
|
tab: ExtensionEditorTab.Features,
|
|
170
172
|
feature: "mcp"
|
|
@@ -175,7 +177,7 @@ async function showToolsPicker(accessor, placeHolder, source, description, getTo
|
|
|
175
177
|
} else if (collection?.presentation?.origin) {
|
|
176
178
|
buttons.push({
|
|
177
179
|
iconClass: ThemeIcon.asClassName(Codicon.settingsGear),
|
|
178
|
-
tooltip: ( localize(
|
|
180
|
+
tooltip: ( localize(4985, "Configure {0}", collection.label)),
|
|
179
181
|
action: () => editorService.openEditor({
|
|
180
182
|
resource: collection.presentation.origin
|
|
181
183
|
})
|
|
@@ -184,7 +186,7 @@ async function showToolsPicker(accessor, placeHolder, source, description, getTo
|
|
|
184
186
|
if (mcpServer.connectionState.get().state === McpConnectionState.Kind.Error) {
|
|
185
187
|
buttons.push({
|
|
186
188
|
iconClass: ThemeIcon.asClassName(Codicon.warning),
|
|
187
|
-
tooltip: ( localize(
|
|
189
|
+
tooltip: ( localize(4986, "Show Output")),
|
|
188
190
|
action: () => mcpServer.showOutput()
|
|
189
191
|
});
|
|
190
192
|
}
|
|
@@ -196,7 +198,7 @@ async function showToolsPicker(accessor, placeHolder, source, description, getTo
|
|
|
196
198
|
children.push({
|
|
197
199
|
itemType: "callback",
|
|
198
200
|
iconClass: ThemeIcon.asClassName(Codicon.sync),
|
|
199
|
-
label: ( localize(
|
|
201
|
+
label: ( localize(4987, "Update Tools")),
|
|
200
202
|
pickable: false,
|
|
201
203
|
run: () => {
|
|
202
204
|
treePicker.busy = true;
|
|
@@ -252,7 +254,7 @@ async function showToolsPicker(accessor, placeHolder, source, description, getTo
|
|
|
252
254
|
itemType: "bucket",
|
|
253
255
|
ordinal: BucketOrdinal.BuiltIn,
|
|
254
256
|
id: key,
|
|
255
|
-
label: ( localize(
|
|
257
|
+
label: ( localize(4988, "Built-In")),
|
|
256
258
|
checked: undefined,
|
|
257
259
|
children: [],
|
|
258
260
|
buttons: [],
|
|
@@ -264,7 +266,7 @@ async function showToolsPicker(accessor, placeHolder, source, description, getTo
|
|
|
264
266
|
itemType: "bucket",
|
|
265
267
|
ordinal: BucketOrdinal.User,
|
|
266
268
|
id: key,
|
|
267
|
-
label: ( localize(
|
|
269
|
+
label: ( localize(4989, "User Defined Tool Sets")),
|
|
268
270
|
checked: undefined,
|
|
269
271
|
children: [],
|
|
270
272
|
buttons: [],
|
|
@@ -355,8 +357,41 @@ async function showToolsPicker(accessor, placeHolder, source, description, getTo
|
|
|
355
357
|
}
|
|
356
358
|
}
|
|
357
359
|
}
|
|
360
|
+
for (const bucket of sortedBuckets) {
|
|
361
|
+
const isMcpBucket = bucket.ordinal === BucketOrdinal.Mcp;
|
|
362
|
+
const addConfirmationButton = toolItem => {
|
|
363
|
+
if (!confirmationService.toolCanManageConfirmation(toolItem.tool)) {
|
|
364
|
+
return;
|
|
365
|
+
}
|
|
366
|
+
const tool = toolItem.tool;
|
|
367
|
+
const manageTools = isMcpBucket ? bucket.children.flatMap(
|
|
368
|
+
c => isToolTreeItem(c) ? [c.tool] : isToolSetTreeItem(c) && c.children ? ( c.children.filter(isToolTreeItem).map(gc => gc.tool)) : []
|
|
369
|
+
) : [tool];
|
|
370
|
+
const buttons = toolItem.buttons ? [...toolItem.buttons] : [];
|
|
371
|
+
buttons.push({
|
|
372
|
+
iconClass: ThemeIcon.asClassName(Codicon.pass),
|
|
373
|
+
tooltip: ( localize(4990, "Manage Approval")),
|
|
374
|
+
keepOpen: true,
|
|
375
|
+
action: () => confirmationService.manageConfirmationPreferences(manageTools, {
|
|
376
|
+
focusToolId: tool.id
|
|
377
|
+
})
|
|
378
|
+
});
|
|
379
|
+
toolItem.buttons = buttons;
|
|
380
|
+
};
|
|
381
|
+
for (const child of bucket.children) {
|
|
382
|
+
if (isToolTreeItem(child)) {
|
|
383
|
+
addConfirmationButton(child);
|
|
384
|
+
} else if (isToolSetTreeItem(child) && child.children) {
|
|
385
|
+
for (const grandchild of child.children) {
|
|
386
|
+
if (isToolTreeItem(grandchild)) {
|
|
387
|
+
addConfirmationButton(grandchild);
|
|
388
|
+
}
|
|
389
|
+
}
|
|
390
|
+
}
|
|
391
|
+
}
|
|
392
|
+
}
|
|
358
393
|
if (treeItems.length === 0) {
|
|
359
|
-
treePicker.placeholder = ( localize(
|
|
394
|
+
treePicker.placeholder = ( localize(4991, "Add tools to chat"));
|
|
360
395
|
} else {
|
|
361
396
|
treePicker.placeholder = placeHolder;
|
|
362
397
|
}
|
|
@@ -372,7 +407,8 @@ async function showToolsPicker(accessor, placeHolder, source, description, getTo
|
|
|
372
407
|
computeItems();
|
|
373
408
|
store.add(treePicker.onDidTriggerItemButton(e => {
|
|
374
409
|
if (e.button && typeof e.button.action === "function") {
|
|
375
|
-
e.button
|
|
410
|
+
const actionableButton = e.button;
|
|
411
|
+
actionableButton.action();
|
|
376
412
|
store.dispose();
|
|
377
413
|
}
|
|
378
414
|
}));
|
|
@@ -416,17 +452,17 @@ async function showToolsPicker(accessor, placeHolder, source, description, getTo
|
|
|
416
452
|
}));
|
|
417
453
|
const addMcpServerButton = {
|
|
418
454
|
iconClass: ThemeIcon.asClassName(Codicon.mcp),
|
|
419
|
-
tooltip: ( localize(
|
|
455
|
+
tooltip: ( localize(4992, "Add MCP Server..."))
|
|
420
456
|
};
|
|
421
457
|
const installExtension = {
|
|
422
458
|
iconClass: ThemeIcon.asClassName(Codicon.extensions),
|
|
423
|
-
tooltip: ( localize(
|
|
459
|
+
tooltip: ( localize(4993, "Install Extension..."))
|
|
424
460
|
};
|
|
425
461
|
const configureToolSets = {
|
|
426
462
|
iconClass: ThemeIcon.asClassName(Codicon.gear),
|
|
427
|
-
tooltip: ( localize(
|
|
463
|
+
tooltip: ( localize(4994, "Configure Tool Sets..."))
|
|
428
464
|
};
|
|
429
|
-
treePicker.title = ( localize(
|
|
465
|
+
treePicker.title = ( localize(4995, "Configure Tools"));
|
|
430
466
|
treePicker.buttons = [addMcpServerButton, installExtension, configureToolSets];
|
|
431
467
|
store.add(treePicker.onDidTriggerButton(button => {
|
|
432
468
|
if (button === addMcpServerButton) {
|
|
@@ -65,7 +65,7 @@ let InsertCodeBlockOperation = class InsertCodeBlockOperation {
|
|
|
65
65
|
await this.handleNotebookEditor(activeNotebookEditor, context);
|
|
66
66
|
} else {
|
|
67
67
|
this.notify(( localize(
|
|
68
|
-
|
|
68
|
+
4996,
|
|
69
69
|
"To insert the code block, open a code editor or notebook editor and set the cursor at the location where to insert the code block."
|
|
70
70
|
)));
|
|
71
71
|
}
|
|
@@ -98,7 +98,7 @@ let InsertCodeBlockOperation = class InsertCodeBlockOperation {
|
|
|
98
98
|
}
|
|
99
99
|
async handleNotebookEditor(notebookEditor, codeBlockContext) {
|
|
100
100
|
if (notebookEditor.isReadOnly) {
|
|
101
|
-
this.notify(( localize(
|
|
101
|
+
this.notify(( localize(4997, "Cannot insert the code block to read-only notebook editor.")));
|
|
102
102
|
return false;
|
|
103
103
|
}
|
|
104
104
|
const focusRange = notebookEditor.getFocus();
|
|
@@ -117,7 +117,7 @@ let InsertCodeBlockOperation = class InsertCodeBlockOperation {
|
|
|
117
117
|
async handleTextEditor(codeEditor, codeBlockContext) {
|
|
118
118
|
const activeModel = codeEditor.getModel();
|
|
119
119
|
if (isReadOnly(activeModel, this.textFileService)) {
|
|
120
|
-
this.notify(( localize(
|
|
120
|
+
this.notify(( localize(4998, "Cannot insert the code block to read-only code editor.")));
|
|
121
121
|
return false;
|
|
122
122
|
}
|
|
123
123
|
const range = codeEditor.getSelection() ?? ( new Range(activeModel.getLineCount(), 1, activeModel.getLineCount(), 1));
|
|
@@ -179,7 +179,7 @@ let ApplyCodeBlockOperation = class ApplyCodeBlockOperation {
|
|
|
179
179
|
this.tryToRevealCodeBlock(codeEditor, context.code);
|
|
180
180
|
activeEditorControl = codeEditor;
|
|
181
181
|
} else {
|
|
182
|
-
this.notify(( localize(
|
|
182
|
+
this.notify(( localize(4999, "Failed to open {0} in a code editor.", (codemapperUri.toString()))));
|
|
183
183
|
return;
|
|
184
184
|
}
|
|
185
185
|
} catch (e) {
|
|
@@ -211,7 +211,7 @@ let ApplyCodeBlockOperation = class ApplyCodeBlockOperation {
|
|
|
211
211
|
if (activeNotebookEditor) {
|
|
212
212
|
result = await this.handleNotebookEditor(activeNotebookEditor, context.chatSessionResource, context.code);
|
|
213
213
|
} else {
|
|
214
|
-
this.notify(( localize(
|
|
214
|
+
this.notify(( localize(5000, "To apply this code block, open a code or notebook editor.")));
|
|
215
215
|
}
|
|
216
216
|
}
|
|
217
217
|
if (isResponseVM(context.element)) {
|
|
@@ -235,7 +235,7 @@ let ApplyCodeBlockOperation = class ApplyCodeBlockOperation {
|
|
|
235
235
|
}
|
|
236
236
|
const activeEditorOption = activeEditorControl?.getModel().uri ? {
|
|
237
237
|
label: ( localize(
|
|
238
|
-
|
|
238
|
+
5001,
|
|
239
239
|
"Active editor '{0}'",
|
|
240
240
|
this.labelService.getUriLabel(activeEditorControl.getModel().uri, {
|
|
241
241
|
relative: true
|
|
@@ -244,13 +244,13 @@ let ApplyCodeBlockOperation = class ApplyCodeBlockOperation {
|
|
|
244
244
|
id: "activeEditor"
|
|
245
245
|
} : undefined;
|
|
246
246
|
const untitledEditorOption = {
|
|
247
|
-
label: ( localize(
|
|
247
|
+
label: ( localize(5002, "New untitled editor")),
|
|
248
248
|
id: "newUntitledFile"
|
|
249
249
|
};
|
|
250
250
|
const options = [];
|
|
251
251
|
if (resource) {
|
|
252
252
|
options.push({
|
|
253
|
-
label: ( localize(
|
|
253
|
+
label: ( localize(5003, "New file '{0}'", this.labelService.getUriLabel(resource, {
|
|
254
254
|
relative: true
|
|
255
255
|
}))),
|
|
256
256
|
id: "createFile"
|
|
@@ -266,7 +266,7 @@ let ApplyCodeBlockOperation = class ApplyCodeBlockOperation {
|
|
|
266
266
|
options.push(untitledEditorOption);
|
|
267
267
|
}
|
|
268
268
|
const selected = options.length > 1 ? await this.quickInputService.pick(options, {
|
|
269
|
-
placeHolder: ( localize(
|
|
269
|
+
placeHolder: ( localize(5004, "Select where to apply the code block"))
|
|
270
270
|
}) : options[0];
|
|
271
271
|
if (selected) {
|
|
272
272
|
switch (selected.id) {
|
|
@@ -275,7 +275,7 @@ let ApplyCodeBlockOperation = class ApplyCodeBlockOperation {
|
|
|
275
275
|
try {
|
|
276
276
|
await this.fileService.writeFile(resource, VSBuffer.fromString(""));
|
|
277
277
|
} catch (error) {
|
|
278
|
-
this.notify(( localize(
|
|
278
|
+
this.notify(( localize(5005, "Failed to create file: {0}", error.message)));
|
|
279
279
|
return ( URI.from({
|
|
280
280
|
scheme: "untitled",
|
|
281
281
|
path: resource.path
|
|
@@ -296,7 +296,7 @@ let ApplyCodeBlockOperation = class ApplyCodeBlockOperation {
|
|
|
296
296
|
}
|
|
297
297
|
async handleNotebookEditor(notebookEditor, chatSessionResource, code) {
|
|
298
298
|
if (notebookEditor.isReadOnly) {
|
|
299
|
-
this.notify(( localize(
|
|
299
|
+
this.notify(( localize(5006, "Cannot apply code block to read-only notebook editor.")));
|
|
300
300
|
return undefined;
|
|
301
301
|
}
|
|
302
302
|
const uri = notebookEditor.textModel.uri;
|
|
@@ -307,7 +307,7 @@ let ApplyCodeBlockOperation = class ApplyCodeBlockOperation {
|
|
|
307
307
|
};
|
|
308
308
|
const codeMapper = this.codeMapperService.providers[0]?.displayName;
|
|
309
309
|
if (!codeMapper) {
|
|
310
|
-
this.notify(( localize(
|
|
310
|
+
this.notify(( localize(5007, "No code mapper available.")));
|
|
311
311
|
return undefined;
|
|
312
312
|
}
|
|
313
313
|
let editsProposed = false;
|
|
@@ -320,7 +320,7 @@ let ApplyCodeBlockOperation = class ApplyCodeBlockOperation {
|
|
|
320
320
|
cancellable: true
|
|
321
321
|
}, async progress => {
|
|
322
322
|
progress.report({
|
|
323
|
-
message: ( localize(
|
|
323
|
+
message: ( localize(5008, "Applying code block using {0}...", codeMapper))
|
|
324
324
|
});
|
|
325
325
|
const editsIterable = this.getNotebookEdits(codeBlock, chatSessionResource, cancellationTokenSource.token);
|
|
326
326
|
return await this.waitForFirstElement(editsIterable);
|
|
@@ -328,7 +328,7 @@ let ApplyCodeBlockOperation = class ApplyCodeBlockOperation {
|
|
|
328
328
|
editsProposed = await this.applyNotebookEditsWithInlinePreview(iterable, uri, cancellationTokenSource);
|
|
329
329
|
} catch (e) {
|
|
330
330
|
if (!isCancellationError(e)) {
|
|
331
|
-
this.notify(( localize(
|
|
331
|
+
this.notify(( localize(5009, "Failed to apply code block: {0}", e.message)));
|
|
332
332
|
}
|
|
333
333
|
} finally {
|
|
334
334
|
cancellationTokenSource.dispose();
|
|
@@ -341,7 +341,7 @@ let ApplyCodeBlockOperation = class ApplyCodeBlockOperation {
|
|
|
341
341
|
async handleTextEditor(codeEditor, chatSessionResource, code, applyCodeBlockSuggestionId) {
|
|
342
342
|
const activeModel = codeEditor.getModel();
|
|
343
343
|
if (isReadOnly(activeModel, this.textFileService)) {
|
|
344
|
-
this.notify(( localize(
|
|
344
|
+
this.notify(( localize(5010, "Cannot apply code block to read-only file.")));
|
|
345
345
|
return undefined;
|
|
346
346
|
}
|
|
347
347
|
const codeBlock = {
|
|
@@ -352,7 +352,7 @@ let ApplyCodeBlockOperation = class ApplyCodeBlockOperation {
|
|
|
352
352
|
};
|
|
353
353
|
const codeMapper = this.codeMapperService.providers[0]?.displayName;
|
|
354
354
|
if (!codeMapper) {
|
|
355
|
-
this.notify(( localize(
|
|
355
|
+
this.notify(( localize(5007, "No code mapper available.")));
|
|
356
356
|
return undefined;
|
|
357
357
|
}
|
|
358
358
|
let editsProposed = false;
|
|
@@ -365,7 +365,7 @@ let ApplyCodeBlockOperation = class ApplyCodeBlockOperation {
|
|
|
365
365
|
cancellable: true
|
|
366
366
|
}, async progress => {
|
|
367
367
|
progress.report({
|
|
368
|
-
message: ( localize(
|
|
368
|
+
message: ( localize(5008, "Applying code block using {0}...", codeMapper))
|
|
369
369
|
});
|
|
370
370
|
const editsIterable = this.getTextEdits(codeBlock, chatSessionResource, cancellationTokenSource.token);
|
|
371
371
|
return await this.waitForFirstElement(editsIterable);
|
|
@@ -373,7 +373,7 @@ let ApplyCodeBlockOperation = class ApplyCodeBlockOperation {
|
|
|
373
373
|
editsProposed = await this.applyWithInlinePreview(iterable, codeEditor, cancellationTokenSource, applyCodeBlockSuggestionId);
|
|
374
374
|
} catch (e) {
|
|
375
375
|
if (!isCancellationError(e)) {
|
|
376
|
-
this.notify(( localize(
|
|
376
|
+
this.notify(( localize(5009, "Failed to apply code block: {0}", e.message)));
|
|
377
377
|
}
|
|
378
378
|
} finally {
|
|
379
379
|
cancellationTokenSource.dispose();
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { Dimension } from "@codingame/monaco-vscode-api/vscode/vs/base/browser/dom";
|
|
2
|
+
import { CancellationToken } from "@codingame/monaco-vscode-api/vscode/vs/base/common/cancellation";
|
|
3
|
+
import { ILanguageService } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/languages/language.service";
|
|
4
|
+
import { IFileService } from "@codingame/monaco-vscode-api/vscode/vs/platform/files/common/files.service";
|
|
5
|
+
import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation";
|
|
6
|
+
import { ILabelService } from "@codingame/monaco-vscode-api/vscode/vs/platform/label/common/label.service";
|
|
7
|
+
import { IOpenerService } from "@codingame/monaco-vscode-api/vscode/vs/platform/opener/common/opener.service";
|
|
8
|
+
import { IRequestService } from "@codingame/monaco-vscode-api/vscode/vs/platform/request/common/request.service";
|
|
9
|
+
import { IStorageService } from "@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage.service";
|
|
10
|
+
import { ITelemetryService } from "@codingame/monaco-vscode-api/vscode/vs/platform/telemetry/common/telemetry.service";
|
|
11
|
+
import { IThemeService } from "@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/themeService.service";
|
|
12
|
+
import { EditorPane } from "@codingame/monaco-vscode-api/vscode/vs/workbench/browser/parts/editor/editorPane";
|
|
13
|
+
import { IEditorOpenContext } from "@codingame/monaco-vscode-api/vscode/vs/workbench/common/editor";
|
|
14
|
+
import { IEditorGroup } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorGroupsService";
|
|
15
|
+
import { IExtensionService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensions/common/extensions.service";
|
|
16
|
+
import { IWebview } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/webview/browser/webview";
|
|
17
|
+
import { IWebviewService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/webview/browser/webview.service";
|
|
18
|
+
import { IAgentPluginService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/plugins/agentPluginService.service";
|
|
19
|
+
import { IPluginInstallService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/plugins/pluginInstallService.service";
|
|
20
|
+
import { AgentPluginEditorInput } from "./agentPluginEditorInput.js";
|
|
21
|
+
export declare class AgentPluginEditor extends EditorPane {
|
|
22
|
+
private readonly instantiationService;
|
|
23
|
+
private readonly openerService;
|
|
24
|
+
private readonly extensionService;
|
|
25
|
+
private readonly webviewService;
|
|
26
|
+
private readonly languageService;
|
|
27
|
+
private readonly fileService;
|
|
28
|
+
private readonly requestService;
|
|
29
|
+
private readonly agentPluginService;
|
|
30
|
+
private readonly pluginInstallService;
|
|
31
|
+
private readonly labelService;
|
|
32
|
+
static readonly ID: string;
|
|
33
|
+
private template;
|
|
34
|
+
private pluginReadme;
|
|
35
|
+
private initialScrollProgress;
|
|
36
|
+
private currentIdentifier;
|
|
37
|
+
private layoutParticipants;
|
|
38
|
+
private readonly contentDisposables;
|
|
39
|
+
private readonly transientDisposables;
|
|
40
|
+
private activeElement;
|
|
41
|
+
private dimension;
|
|
42
|
+
constructor(group: IEditorGroup, telemetryService: ITelemetryService, instantiationService: IInstantiationService, themeService: IThemeService, openerService: IOpenerService, storageService: IStorageService, extensionService: IExtensionService, webviewService: IWebviewService, languageService: ILanguageService, fileService: IFileService, requestService: IRequestService, agentPluginService: IAgentPluginService, pluginInstallService: IPluginInstallService, labelService: ILabelService);
|
|
43
|
+
protected createEditor(parent: HTMLElement): void;
|
|
44
|
+
setInput(input: AgentPluginEditorInput, options: undefined, context: IEditorOpenContext, token: CancellationToken): Promise<void>;
|
|
45
|
+
private render;
|
|
46
|
+
private getItemActions;
|
|
47
|
+
private installedPluginToItem;
|
|
48
|
+
private fetchReadme;
|
|
49
|
+
private openDetails;
|
|
50
|
+
private openMarkdown;
|
|
51
|
+
private renderMarkdown;
|
|
52
|
+
private renderBody;
|
|
53
|
+
private loadContents;
|
|
54
|
+
clearInput(): void;
|
|
55
|
+
focus(): void;
|
|
56
|
+
get activeWebview(): IWebview | undefined;
|
|
57
|
+
layout(dimension: Dimension): void;
|
|
58
|
+
}
|