@codingame/monaco-vscode-chat-service-override 26.2.2 → 28.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 +35 -2
- package/package.json +5 -5
- package/vscode/src/vs/platform/browserElements/common/browserElements.d.ts +15 -0
- package/vscode/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackService.d.ts +53 -0
- package/vscode/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackService.js +219 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/aiCustomizationWorkspaceService.d.ts +89 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/aiCustomizationWorkspaceService.js +251 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/newSession.d.ts +123 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/newSession.js +278 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/sessionsConfigurationService.d.ts +76 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/sessionsConfigurationService.js +299 -0
- 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 +85 -0
- package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsManagementService.js +397 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityService.d.ts +1 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityService.js +27 -40
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.d.ts +9 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.js +74 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.js +54 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +87 -53
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAgentRecommendationActions.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.js +71 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.js +43 -21
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +13 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +22 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatForkActions.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatForkActions.js +154 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +6 -8
- 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 +53 -43
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatOpenAgentDebugPanelAction.d.ts +4 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatOpenAgentDebugPanelAction.js +85 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPluginActions.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPluginActions.js +33 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQueueActions.js +18 -32
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.d.ts +13 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +17 -17
- 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 +48 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.js +282 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.d.ts +55 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.js +634 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.js +10 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.js +74 -67
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.d.ts +7 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.js +27 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsQuickAccess.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsQuickAccess.js +4 -2
- 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.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.js +90 -51
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionsExperiments.contribution.js +20 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.js +43 -27
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/media/agenttitlebarstatuswidget.css +7 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccess.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccess.js +84 -22
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccessActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/{localAgentSessionsProvider.d.ts → localAgentSessionsController.d.ts} +7 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/{localAgentSessionsProvider.js → localAgentSessionsController.js} +24 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.d.ts +23 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.js +171 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.d.ts +52 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.js +20 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.d.ts +179 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.js +987 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.contribution.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.contribution.js +246 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.d.ts +56 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.js +26 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.d.ts +130 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.js +878 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.d.ts +22 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.js +38 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWorkspaceService.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWorkspaceService.js +83 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCreatorService.d.ts +45 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCreatorService.js +165 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.d.ts +75 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.js +692 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationManagement.css +936 -0
- 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.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.js +30 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgetRegistry.d.ts +32 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgetRegistry.js +26 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/simpleBrowserEditorOverlay.js +36 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +622 -391
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatCustomizationDiscoveryRenderer.d.ts +18 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatCustomizationDiscoveryRenderer.js +419 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCollapsible.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCollapsible.js +46 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugDetailPanel.d.ts +34 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugDetailPanel.js +198 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditor.d.ts +55 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditor.js +314 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditorInput.d.ts +23 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditorInput.js +64 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventDetailRenderer.d.ts +5 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventDetailRenderer.js +84 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventList.d.ts +27 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventList.js +110 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFilters.d.ts +46 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFilters.js +170 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowChartView.d.ts +71 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowChartView.js +611 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowGraph.d.ts +125 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowGraph.js +504 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowLayout.d.ts +10 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowLayout.js +914 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHomeView.d.ts +19 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHomeView.js +128 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.d.ts +61 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.js +467 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugMessageContentRenderer.d.ts +31 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugMessageContentRenderer.js +113 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugModelTurnContentRenderer.d.ts +14 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugModelTurnContentRenderer.js +126 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugOverviewView.d.ts +38 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugOverviewView.js +279 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugToolCallContentRenderer.d.ts +18 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugToolCallContentRenderer.js +122 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugTypes.d.ts +47 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugTypes.js +85 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/media/chatDebug.css +788 -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 +6 -24
- 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 +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelChangeService.js +2 -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 +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.js +16 -15
- 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 +63 -76
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatUsageWidget.js +26 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/media/chatManagementEditor.css +2 -2
- 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 +24 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatRepoInfo.js +40 -413
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetup.d.ts +10 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetup.js +38 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.d.ts +5 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.js +56 -46
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.js +15 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupGrowthSession.d.ts +52 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupGrowthSession.js +138 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.d.ts +11 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.js +166 -41
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.d.ts +6 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.js +37 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.d.ts +17 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.js +394 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.js +118 -63
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/media/chatStatus.css +28 -0
- 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 +88 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.js +624 -68
- 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 +5 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.js +88 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/contextContrib/chatContextService.js +28 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/createSlashCommandsUsageTracker.d.ts +14 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/createSlashCommandsUsageTracker.js +62 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/defaultModelContribution.d.ts +36 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/defaultModelContribution.js +110 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/exploreAgentDefaultModel.d.ts +10 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/exploreAgentDefaultModel.js +39 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelsConfigurationService.d.ts +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelsConfigurationService.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/planAgentDefaultModel.d.ts +10 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/planAgentDefaultModel.js +39 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.d.ts +26 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.js +175 -0
- 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 +19 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.js +364 -279
- 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 +69 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.d.ts +4 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/skillActions.d.ts +4 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/skillActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/promptsDebugContribution.d.ts +22 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptsDebugContribution.js +76 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/sessionResourceMatching.d.ts +5 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/sessionResourceMatching.js +30 -0
- 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 +67 -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 +187 -74
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/renameTool.d.ts +31 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/renameTool.js +242 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolHelpers.d.ts +34 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolHelpers.js +45 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/usagesTool.d.ts +33 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/usagesTool.js +311 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidgetService.d.ts +4 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidgetService.js +10 -1
- 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 +8 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.js +126 -30
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorContrib.js +9 -5
- 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 +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditor.d.ts +15 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditor.js +46 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.d.ts +8 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.js +65 -37
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewTitleControl.js +6 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/media/chatViewPane.css +16 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/media/chatViewTitleControl.css +15 -6
- package/vscode/src/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService.d.ts +40 -0
- package/vscode/src/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService.js +28 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatDebugService.d.ts +190 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatDebugService.js +11 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.d.ts +44 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.js +208 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.d.ts +19 -9
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.js +261 -105
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceTelemetry.d.ts +21 -2
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceTelemetry.js +7 -2
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatModelStore.d.ts +5 -6
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatModelStore.js +16 -8
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.d.ts +13 -4
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.js +144 -11
- 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 +5 -3
- 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 +57 -0
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.js +29 -0
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.d.ts +119 -0
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.js +748 -0
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.d.ts +146 -0
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.js +672 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +35 -16
- 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 +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCopilotCliCompat.d.ts +1 -6
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCopilotCliCompat.js +4 -8
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/PromptHeaderDefinitionProvider.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.js +10 -9
- 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 +293 -94
- 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 +86 -30
- 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 +48 -14
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +404 -132
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +17 -2
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +40 -28
- package/vscode/src/vs/workbench/contrib/chat/common/tools/chatTodoListService.d.ts +3 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/chatTodoListService.js +13 -0
- 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 +12 -5
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.d.ts +27 -4
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +265 -25
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatDefaultModel.d.ts +6 -11
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatDefaultModel.js +18 -81
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.js +2 -3
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +10 -10
- 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 +6 -6
- 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/media/terminalChatWidget.css +6 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +16 -16
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +35 -26
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatService.d.ts +0 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatService.js +1 -5
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +6 -6
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.d.ts +4 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.js +13 -11
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.js +3 -1
- 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 +17 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +302 -69
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/types.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/outputAnalyzer.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.js +2 -10
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.d.ts +7 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +63 -21
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.js +31 -0
- 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 +7 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.js +46 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCustomizationDiagnosticsAction.d.ts +0 -72
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCustomizationDiagnosticsAction.js +0 -587
- 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 -51
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatToolInvocation.d.ts +0 -71
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatToolInvocation.js +0 -293
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/utils.d.ts +0 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/utils.js +0 -31
|
@@ -9,17 +9,11 @@ import { KeybindingWeight } from '@codingame/monaco-vscode-api/vscode/vs/platfor
|
|
|
9
9
|
import { ChatContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/actions/chatContextKeys';
|
|
10
10
|
import { ChatRequestQueueKind } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService/chatService';
|
|
11
11
|
import { IChatService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService/chatService.service';
|
|
12
|
-
import { ChatConfiguration } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
|
|
13
12
|
import { isRequestVM } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/model/chatViewModel';
|
|
14
13
|
import { IChatWidgetService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat.service';
|
|
15
14
|
import { CHAT_CATEGORY } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/actions/chatActions';
|
|
16
15
|
|
|
17
|
-
const
|
|
18
|
-
const requestInProgressOrPendingToolCall = ( ContextKeyExpr.or(
|
|
19
|
-
ChatContextKeys.requestInProgress,
|
|
20
|
-
ChatContextKeys.Editing.hasToolConfirmation
|
|
21
|
-
));
|
|
22
|
-
const queuingActionsPresent = ( ContextKeyExpr.and(queueingEnabledCondition, ( ContextKeyExpr.or(requestInProgressOrPendingToolCall, ( ChatContextKeys.editingRequestType.isEqualTo(ChatContextKeys.EditingRequestType.QueueOrSteer)))), ( ChatContextKeys.editingRequestType.notEqualsTo(ChatContextKeys.EditingRequestType.Sent))));
|
|
16
|
+
const queuingActionsPresent = ( ContextKeyExpr.and(( ContextKeyExpr.or(ChatContextKeys.requestInProgress, ( ChatContextKeys.editingRequestType.isEqualTo(ChatContextKeys.EditingRequestType.QueueOrSteer)))), ( ChatContextKeys.editingRequestType.notEqualsTo(ChatContextKeys.EditingRequestType.Sent))));
|
|
23
17
|
function isRemovePendingRequestContext(context) {
|
|
24
18
|
return !!context && typeof context === "object" && "sessionResource" in context && "pendingRequestId" in context && URI.isUri(context.sessionResource) && typeof context.pendingRequestId === "string";
|
|
25
19
|
}
|
|
@@ -30,8 +24,8 @@ class ChatQueueMessageAction extends Action2 {
|
|
|
30
24
|
constructor() {
|
|
31
25
|
super({
|
|
32
26
|
id: ChatQueueMessageAction.ID,
|
|
33
|
-
title: ( localize2(
|
|
34
|
-
tooltip: ( localize(
|
|
27
|
+
title: ( localize2(4948, "Add to Queue")),
|
|
28
|
+
tooltip: ( localize(4949, "Queue this message to send after the current request completes")),
|
|
35
29
|
icon: Codicon.add,
|
|
36
30
|
f1: false,
|
|
37
31
|
category: CHAT_CATEGORY,
|
|
@@ -65,12 +59,12 @@ class ChatSteerWithMessageAction extends Action2 {
|
|
|
65
59
|
constructor() {
|
|
66
60
|
super({
|
|
67
61
|
id: ChatSteerWithMessageAction.ID,
|
|
68
|
-
title: ( localize2(
|
|
62
|
+
title: ( localize2(4950, "Steer with Message")),
|
|
69
63
|
tooltip: ( localize(
|
|
70
|
-
|
|
64
|
+
4951,
|
|
71
65
|
"Send this message at the next opportunity, signaling the current request to yield"
|
|
72
66
|
)),
|
|
73
|
-
icon: Codicon.
|
|
67
|
+
icon: Codicon.arrowUp,
|
|
74
68
|
f1: false,
|
|
75
69
|
category: CHAT_CATEGORY,
|
|
76
70
|
precondition: ( ContextKeyExpr.and(queuingActionsPresent, ChatContextKeys.inputHasText)),
|
|
@@ -103,7 +97,7 @@ class ChatRemovePendingRequestAction extends Action2 {
|
|
|
103
97
|
constructor() {
|
|
104
98
|
super({
|
|
105
99
|
id: ChatRemovePendingRequestAction.ID,
|
|
106
|
-
title: ( localize2(
|
|
100
|
+
title: ( localize2(4952, "Remove from Queue")),
|
|
107
101
|
icon: Codicon.close,
|
|
108
102
|
f1: false,
|
|
109
103
|
category: CHAT_CATEGORY,
|
|
@@ -111,11 +105,7 @@ class ChatRemovePendingRequestAction extends Action2 {
|
|
|
111
105
|
id: MenuId.ChatMessageTitle,
|
|
112
106
|
group: "navigation",
|
|
113
107
|
order: 4,
|
|
114
|
-
when: ( ContextKeyExpr.and(
|
|
115
|
-
queueingEnabledCondition,
|
|
116
|
-
ChatContextKeys.isRequest,
|
|
117
|
-
ChatContextKeys.isPendingRequest
|
|
118
|
-
))
|
|
108
|
+
when: ( ContextKeyExpr.and(ChatContextKeys.isRequest, ChatContextKeys.isPendingRequest))
|
|
119
109
|
}]
|
|
120
110
|
});
|
|
121
111
|
}
|
|
@@ -139,7 +129,7 @@ class ChatSendPendingImmediatelyAction extends Action2 {
|
|
|
139
129
|
constructor() {
|
|
140
130
|
super({
|
|
141
131
|
id: ChatSendPendingImmediatelyAction.ID,
|
|
142
|
-
title: ( localize2(
|
|
132
|
+
title: ( localize2(4953, "Send Immediately")),
|
|
143
133
|
icon: Codicon.arrowUp,
|
|
144
134
|
f1: false,
|
|
145
135
|
category: CHAT_CATEGORY,
|
|
@@ -147,11 +137,7 @@ class ChatSendPendingImmediatelyAction extends Action2 {
|
|
|
147
137
|
id: MenuId.ChatMessageTitle,
|
|
148
138
|
group: "navigation",
|
|
149
139
|
order: 3,
|
|
150
|
-
when: ( ContextKeyExpr.and(
|
|
151
|
-
queueingEnabledCondition,
|
|
152
|
-
ChatContextKeys.isRequest,
|
|
153
|
-
ChatContextKeys.isPendingRequest
|
|
154
|
-
))
|
|
140
|
+
when: ( ContextKeyExpr.and(ChatContextKeys.isRequest, ChatContextKeys.isPendingRequest))
|
|
155
141
|
}]
|
|
156
142
|
});
|
|
157
143
|
}
|
|
@@ -181,7 +167,7 @@ class ChatSendPendingImmediatelyAction extends Action2 {
|
|
|
181
167
|
kind: r.kind
|
|
182
168
|
})))];
|
|
183
169
|
chatService.setPendingRequests(context.sessionResource, reordered);
|
|
184
|
-
chatService.cancelCurrentRequestForSession(context.sessionResource);
|
|
170
|
+
chatService.cancelCurrentRequestForSession(context.sessionResource, "queueRunNext");
|
|
185
171
|
chatService.processPendingRequests(context.sessionResource);
|
|
186
172
|
}
|
|
187
173
|
}
|
|
@@ -192,7 +178,7 @@ class ChatRemoveAllPendingRequestsAction extends Action2 {
|
|
|
192
178
|
constructor() {
|
|
193
179
|
super({
|
|
194
180
|
id: ChatRemoveAllPendingRequestsAction.ID,
|
|
195
|
-
title: ( localize2(
|
|
181
|
+
title: ( localize2(4954, "Remove All Queued")),
|
|
196
182
|
icon: Codicon.clearAll,
|
|
197
183
|
f1: false,
|
|
198
184
|
category: CHAT_CATEGORY,
|
|
@@ -200,7 +186,7 @@ class ChatRemoveAllPendingRequestsAction extends Action2 {
|
|
|
200
186
|
id: MenuId.ChatContext,
|
|
201
187
|
group: "navigation",
|
|
202
188
|
order: 3,
|
|
203
|
-
when:
|
|
189
|
+
when: ChatContextKeys.hasPendingRequests
|
|
204
190
|
}]
|
|
205
191
|
});
|
|
206
192
|
}
|
|
@@ -227,7 +213,7 @@ function registerChatQueueActions() {
|
|
|
227
213
|
MenuRegistry.appendMenuItem(MenuId.ChatExecuteQueue, {
|
|
228
214
|
command: {
|
|
229
215
|
id: ChatQueueMessageAction.ID,
|
|
230
|
-
title: ( localize2(
|
|
216
|
+
title: ( localize2(4948, "Add to Queue")),
|
|
231
217
|
icon: Codicon.add
|
|
232
218
|
},
|
|
233
219
|
group: "navigation",
|
|
@@ -236,17 +222,17 @@ function registerChatQueueActions() {
|
|
|
236
222
|
MenuRegistry.appendMenuItem(MenuId.ChatExecuteQueue, {
|
|
237
223
|
command: {
|
|
238
224
|
id: ChatSteerWithMessageAction.ID,
|
|
239
|
-
title: ( localize2(
|
|
240
|
-
icon: Codicon.
|
|
225
|
+
title: ( localize2(4950, "Steer with Message")),
|
|
226
|
+
icon: Codicon.arrowUp
|
|
241
227
|
},
|
|
242
228
|
group: "navigation",
|
|
243
229
|
order: 2
|
|
244
230
|
});
|
|
245
231
|
MenuRegistry.appendMenuItem(MenuId.ChatExecute, {
|
|
246
232
|
submenu: MenuId.ChatExecuteQueue,
|
|
247
|
-
title: ( localize2(
|
|
233
|
+
title: ( localize2(4955, "Queue")),
|
|
248
234
|
icon: Codicon.listOrdered,
|
|
249
|
-
when: queuingActionsPresent,
|
|
235
|
+
when: ( ContextKeyExpr.and(queuingActionsPresent, ChatContextKeys.inputHasText)),
|
|
250
236
|
group: "navigation",
|
|
251
237
|
order: 4
|
|
252
238
|
});
|
|
@@ -18,7 +18,7 @@ function registerQuickChatActions() {
|
|
|
18
18
|
constructor() {
|
|
19
19
|
super({
|
|
20
20
|
id: "workbench.action.quickchat.openInChatView",
|
|
21
|
-
title: ( localize2(
|
|
21
|
+
title: ( localize2(4956, "Open in Chat View")),
|
|
22
22
|
f1: false,
|
|
23
23
|
category: CHAT_CATEGORY,
|
|
24
24
|
icon: Codicon.chatSparkle,
|
|
@@ -38,7 +38,7 @@ function registerQuickChatActions() {
|
|
|
38
38
|
constructor() {
|
|
39
39
|
super({
|
|
40
40
|
id: "workbench.action.quickchat.close",
|
|
41
|
-
title: ( localize2(
|
|
41
|
+
title: ( localize2(4957, "Close Quick Chat")),
|
|
42
42
|
f1: false,
|
|
43
43
|
category: CHAT_CATEGORY,
|
|
44
44
|
icon: Codicon.close,
|
|
@@ -59,7 +59,7 @@ class QuickChatGlobalAction extends Action2 {
|
|
|
59
59
|
constructor() {
|
|
60
60
|
super({
|
|
61
61
|
id: ASK_QUICK_QUESTION_ACTION_ID,
|
|
62
|
-
title: ( localize2(
|
|
62
|
+
title: ( localize2(4958, "Open Quick Chat")),
|
|
63
63
|
precondition: ChatContextKeys.enabled,
|
|
64
64
|
icon: Codicon.chatSparkle,
|
|
65
65
|
f1: false,
|
|
@@ -74,7 +74,7 @@ class QuickChatGlobalAction extends Action2 {
|
|
|
74
74
|
order: 4
|
|
75
75
|
},
|
|
76
76
|
metadata: {
|
|
77
|
-
description: ( localize(
|
|
77
|
+
description: ( localize(4959, "Toggle the quick chat")),
|
|
78
78
|
args: [{
|
|
79
79
|
name: "args",
|
|
80
80
|
schema: {
|
|
@@ -83,17 +83,17 @@ class QuickChatGlobalAction extends Action2 {
|
|
|
83
83
|
required: ["query"],
|
|
84
84
|
properties: {
|
|
85
85
|
query: {
|
|
86
|
-
description: ( localize(
|
|
86
|
+
description: ( localize(4960, "The query to open the quick chat with")),
|
|
87
87
|
type: "string"
|
|
88
88
|
},
|
|
89
89
|
isPartialQuery: {
|
|
90
|
-
description: ( localize(
|
|
90
|
+
description: ( localize(4961, "Whether the query is partial; it will wait for more user input")),
|
|
91
91
|
type: "boolean"
|
|
92
92
|
}
|
|
93
93
|
}
|
|
94
94
|
}, {
|
|
95
95
|
type: "string",
|
|
96
|
-
description: ( localize(
|
|
96
|
+
description: ( localize(4960, "The query to open the quick chat with"))
|
|
97
97
|
}]
|
|
98
98
|
}
|
|
99
99
|
}]
|
|
@@ -124,7 +124,7 @@ class AskQuickChatAction extends Action2 {
|
|
|
124
124
|
super({
|
|
125
125
|
id: `workbench.action.openQuickChat`,
|
|
126
126
|
category: CHAT_CATEGORY,
|
|
127
|
-
title: ( localize2(
|
|
127
|
+
title: ( localize2(4962, "Open Quick Chat")),
|
|
128
128
|
precondition: ChatContextKeys.enabled,
|
|
129
129
|
f1: true
|
|
130
130
|
});
|
|
@@ -1 +1,14 @@
|
|
|
1
|
+
import { URI } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri";
|
|
2
|
+
import { ServicesAccessor } from "@codingame/monaco-vscode-api/vscode/vs/editor/browser/editorExtensions";
|
|
3
|
+
import { Action2 } from "@codingame/monaco-vscode-api/vscode/vs/platform/actions/common/actions";
|
|
4
|
+
export interface IToolConfirmationActionContext {
|
|
5
|
+
readonly sessionResource?: URI;
|
|
6
|
+
}
|
|
7
|
+
export declare class ConfigureToolsAction extends Action2 {
|
|
8
|
+
static ID: string;
|
|
9
|
+
constructor();
|
|
10
|
+
run(accessor: ServicesAccessor, ...args: unknown[]): Promise<void>;
|
|
11
|
+
private extractWidget;
|
|
12
|
+
private extractSource;
|
|
13
|
+
}
|
|
1
14
|
export declare function registerChatToolActions(): void;
|
|
@@ -13,7 +13,7 @@ import { ITelemetryService } from '@codingame/monaco-vscode-api/vscode/vs/platfo
|
|
|
13
13
|
import { ChatContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/actions/chatContextKeys';
|
|
14
14
|
import { IChatToolInvocation, ToolConfirmKind } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService/chatService';
|
|
15
15
|
import { isResponseVM } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/model/chatViewModel';
|
|
16
|
-
import { ChatModeKind
|
|
16
|
+
import { ChatModeKind } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
|
|
17
17
|
import { IChatWidgetService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat.service';
|
|
18
18
|
import { ToolsScope } from '@codingame/monaco-vscode-katex-common/vscode/vs/workbench/contrib/chat/browser/widget/input/chatSelectedTools';
|
|
19
19
|
import { CHAT_CATEGORY } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/actions/chatActions';
|
|
@@ -22,9 +22,9 @@ import { showToolsPicker } from './chatToolPicker.js';
|
|
|
22
22
|
import { autorun } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/reactions/autorun';
|
|
23
23
|
|
|
24
24
|
class ToolConfirmationAction extends Action2 {
|
|
25
|
-
run(accessor,
|
|
25
|
+
run(accessor, context) {
|
|
26
26
|
const chatWidgetService = accessor.get(IChatWidgetService);
|
|
27
|
-
const widget = chatWidgetService.lastFocusedWidget;
|
|
27
|
+
const widget = context?.sessionResource ? chatWidgetService.getWidgetBySessionResource(context.sessionResource) : chatWidgetService.lastFocusedWidget;
|
|
28
28
|
const lastItem = widget?.viewModel?.getItems().at(-1);
|
|
29
29
|
if (!isResponseVM(lastItem)) {
|
|
30
30
|
return;
|
|
@@ -43,7 +43,7 @@ class AcceptToolConfirmation extends ToolConfirmationAction {
|
|
|
43
43
|
constructor() {
|
|
44
44
|
super({
|
|
45
45
|
id: AcceptToolConfirmationActionId,
|
|
46
|
-
title: ( localize2(
|
|
46
|
+
title: ( localize2(4973, "Accept")),
|
|
47
47
|
f1: false,
|
|
48
48
|
category: CHAT_CATEGORY,
|
|
49
49
|
keybinding: {
|
|
@@ -63,7 +63,7 @@ class SkipToolConfirmation extends ToolConfirmationAction {
|
|
|
63
63
|
constructor() {
|
|
64
64
|
super({
|
|
65
65
|
id: SkipToolConfirmationActionId,
|
|
66
|
-
title: ( localize2(
|
|
66
|
+
title: ( localize2(4974, "Skip")),
|
|
67
67
|
f1: false,
|
|
68
68
|
category: CHAT_CATEGORY,
|
|
69
69
|
keybinding: {
|
|
@@ -86,13 +86,13 @@ class ConfigureToolsAction extends Action2 {
|
|
|
86
86
|
constructor() {
|
|
87
87
|
super({
|
|
88
88
|
id: ConfigureToolsAction.ID,
|
|
89
|
-
title: ( localize(
|
|
90
|
-
icon: Codicon.
|
|
89
|
+
title: ( localize(4975, "Configure Tools...")),
|
|
90
|
+
icon: Codicon.settings,
|
|
91
91
|
f1: false,
|
|
92
92
|
category: CHAT_CATEGORY,
|
|
93
93
|
precondition: ( ChatContextKeys.chatModeKind.isEqualTo(ChatModeKind.Agent)),
|
|
94
94
|
menu: [{
|
|
95
|
-
when: ( ContextKeyExpr.and(( ChatContextKeys.chatModeKind.isEqualTo(ChatModeKind.Agent)), ( ChatContextKeys.lockedToCodingAgent.negate())
|
|
95
|
+
when: ( ContextKeyExpr.and(( ChatContextKeys.chatModeKind.isEqualTo(ChatModeKind.Agent)), ( ChatContextKeys.lockedToCodingAgent.negate()))),
|
|
96
96
|
id: MenuId.ChatInput,
|
|
97
97
|
group: "navigation",
|
|
98
98
|
order: 100
|
|
@@ -119,29 +119,29 @@ class ConfigureToolsAction extends Action2 {
|
|
|
119
119
|
} = widget.input.selectedToolsModel;
|
|
120
120
|
switch (entriesScope) {
|
|
121
121
|
case ToolsScope.Session:
|
|
122
|
-
placeholder = ( localize(
|
|
123
|
-
description = ( localize(
|
|
122
|
+
placeholder = ( localize(4976, "Select tools for this chat session"));
|
|
123
|
+
description = ( localize(4977, "The selected tools were configured only for this chat session."));
|
|
124
124
|
break;
|
|
125
125
|
case ToolsScope.Agent:
|
|
126
|
-
placeholder = ( localize(
|
|
126
|
+
placeholder = ( localize(4978, "Select tools for this custom agent"));
|
|
127
127
|
description = ( localize(
|
|
128
|
-
|
|
128
|
+
4979,
|
|
129
129
|
"The selected tools are configured by the '{0}' custom agent. Changes to the tools will be applied to the custom agent file as well.",
|
|
130
130
|
widget.input.currentModeObs.get().label.get()
|
|
131
131
|
));
|
|
132
132
|
break;
|
|
133
133
|
case ToolsScope.Agent_ReadOnly:
|
|
134
|
-
placeholder = ( localize(
|
|
134
|
+
placeholder = ( localize(4980, "Select tools for this custom agent"));
|
|
135
135
|
description = ( localize(
|
|
136
|
-
|
|
136
|
+
4981,
|
|
137
137
|
"The selected tools are configured by the '{0}' custom agent. Changes to the tools will only be used for this session and will not change the '{0}' custom agent.",
|
|
138
138
|
widget.input.currentModeObs.get().label.get()
|
|
139
139
|
));
|
|
140
140
|
break;
|
|
141
141
|
case ToolsScope.Global:
|
|
142
|
-
placeholder = ( localize(
|
|
142
|
+
placeholder = ( localize(4982, "Select tools that are available to chat."));
|
|
143
143
|
description = ( localize(
|
|
144
|
-
|
|
144
|
+
4983,
|
|
145
145
|
"The selected tools will be applied globally for all chat sessions that use the default agent."
|
|
146
146
|
));
|
|
147
147
|
break;
|
|
@@ -205,4 +205,4 @@ function registerChatToolActions() {
|
|
|
205
205
|
registerAction2(ConfigureToolsAction);
|
|
206
206
|
}
|
|
207
207
|
|
|
208
|
-
export { registerChatToolActions };
|
|
208
|
+
export { ConfigureToolsAction, registerChatToolActions };
|
|
@@ -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();
|