@codingame/monaco-vscode-chat-service-override 26.2.1 → 27.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 +31 -1
- 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 +39 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/aiCustomizationWorkspaceService.js +83 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/newSession.d.ts +123 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/newSession.js +274 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/sessionsConfigurationService.d.ts +71 -0
- package/vscode/src/vs/sessions/contrib/chat/browser/sessionsConfigurationService.js +284 -0
- package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsManagementService.d.ts +79 -0
- package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsManagementService.js +378 -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 +3 -3
- 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 +84 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPluginActions.d.ts +1 -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 +15 -29
- 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 +16 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +18 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.d.ts +33 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.js +204 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.d.ts +77 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.js +541 -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 +70 -65
- 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 +48 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.js +19 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.d.ts +181 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.js +943 -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 +248 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.d.ts +57 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.js +27 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.d.ts +118 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.js +727 -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 +72 -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 +623 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationManagement.css +858 -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/chatVariables.js +19 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/simpleBrowserEditorOverlay.js +36 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +529 -363
- 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 +305 -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 +34 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFilters.js +111 -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 +58 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.js +429 -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 +45 -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 +781 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.js +5 -22
- 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/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 +15 -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 +15 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.js +351 -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/chatTipService.d.ts +182 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.js +892 -41
- package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.d.ts +5 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.js +55 -25
- 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 +27 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.js +102 -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 +16 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.js +69 -47
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.js +2 -41
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +7 -7
- 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.js +43 -31
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.js +67 -42
- 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.js +10 -10
- 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 +64 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorContrib.js +4 -2
- 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 +42 -8
- 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 +58 -31
- 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 +8 -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 +39 -0
- package/vscode/src/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService.js +27 -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 +36 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.js +188 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.d.ts +18 -8
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.js +192 -85
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceTelemetry.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceTelemetry.js +2 -1
- 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 +8 -4
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.js +111 -7
- package/vscode/src/vs/workbench/contrib/chat/common/participants/chatSlashCommands.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.d.ts +52 -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 +73 -0
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.js +622 -0
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.d.ts +64 -0
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.js +478 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +35 -16
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCompatibility.js +1 -30
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCopilotCliCompat.d.ts +0 -5
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCopilotCliCompat.js +2 -8
- 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 +8 -8
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.js +23 -22
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +44 -14
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +345 -113
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +14 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +34 -24
- 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/inlineChat/browser/inlineChat.contribution.js +11 -5
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.d.ts +23 -0
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +248 -24
- 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 +5 -6
- 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 +9 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +280 -65
- 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 +1 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +47 -19
- 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 +6 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.js +38 -16
- 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/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
package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.js
CHANGED
|
@@ -7,6 +7,8 @@ import { Disposable, DisposableStore } from '@codingame/monaco-vscode-api/vscode
|
|
|
7
7
|
import { URI } from '@codingame/monaco-vscode-api/vscode/vs/base/common/uri';
|
|
8
8
|
import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
9
9
|
import { AccessibleViewType, AccessibleViewProviderId } from '@codingame/monaco-vscode-api/vscode/vs/platform/accessibility/browser/accessibleView';
|
|
10
|
+
import { StorageScope } from '@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage';
|
|
11
|
+
import { IStorageService } from '@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage.service';
|
|
10
12
|
import { AccessibilityVerbositySettingId } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration';
|
|
11
13
|
import { migrateLegacyTerminalToolSpecificData } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chat';
|
|
12
14
|
import { ChatContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/actions/chatContextKeys';
|
|
@@ -24,6 +26,7 @@ class ChatResponseAccessibleView {
|
|
|
24
26
|
}
|
|
25
27
|
getProvider(accessor) {
|
|
26
28
|
const widgetService = accessor.get(IChatWidgetService);
|
|
29
|
+
const storageService = accessor.get(IStorageService);
|
|
27
30
|
const widget = widgetService.lastFocusedWidget;
|
|
28
31
|
if (!widget) {
|
|
29
32
|
return;
|
|
@@ -33,13 +36,30 @@ class ChatResponseAccessibleView {
|
|
|
33
36
|
widget.focusResponseItem();
|
|
34
37
|
}
|
|
35
38
|
const verifiedWidget = widget;
|
|
36
|
-
|
|
37
|
-
if (!focusedItem) {
|
|
39
|
+
let focusedItem = verifiedWidget.getFocus();
|
|
40
|
+
if (!focusedItem || !isResponseVM(focusedItem)) {
|
|
41
|
+
const responseItems = verifiedWidget.viewModel?.getItems().filter(isResponseVM);
|
|
42
|
+
const lastResponse = responseItems?.at(-1);
|
|
43
|
+
if (lastResponse) {
|
|
44
|
+
focusedItem = lastResponse;
|
|
45
|
+
verifiedWidget.focus(lastResponse);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
if (!focusedItem || !isResponseVM(focusedItem)) {
|
|
38
49
|
return;
|
|
39
50
|
}
|
|
40
|
-
return ( new ChatResponseAccessibleProvider(verifiedWidget, focusedItem, chatInputFocused));
|
|
51
|
+
return ( new ChatResponseAccessibleProvider(verifiedWidget, focusedItem, chatInputFocused, storageService));
|
|
41
52
|
}
|
|
42
53
|
}
|
|
54
|
+
const CHAT_ACCESSIBLE_VIEW_INCLUDE_THINKING_STORAGE_KEY = "chat.accessibleView.includeThinking";
|
|
55
|
+
const CHAT_ACCESSIBLE_VIEW_INCLUDE_THINKING_DEFAULT = true;
|
|
56
|
+
function isThinkingContentIncludedInAccessibleView(storageService) {
|
|
57
|
+
return storageService.getBoolean(
|
|
58
|
+
CHAT_ACCESSIBLE_VIEW_INCLUDE_THINKING_STORAGE_KEY,
|
|
59
|
+
StorageScope.PROFILE,
|
|
60
|
+
CHAT_ACCESSIBLE_VIEW_INCLUDE_THINKING_DEFAULT
|
|
61
|
+
);
|
|
62
|
+
}
|
|
43
63
|
function isOutputDetailsSerialized(obj) {
|
|
44
64
|
return typeof obj === "object" && obj !== null && "output" in obj && typeof obj.output === "object" && obj.output?.type === "data" && typeof obj.output?.base64Data === "string";
|
|
45
65
|
}
|
|
@@ -56,31 +76,52 @@ function getToolSpecificDataDescription(toolSpecificData) {
|
|
|
56
76
|
{
|
|
57
77
|
const parts = [];
|
|
58
78
|
if (toolSpecificData.agentName) {
|
|
59
|
-
parts.push(( localize(
|
|
79
|
+
parts.push(( localize(4688, "Agent: {0}", toolSpecificData.agentName)));
|
|
60
80
|
}
|
|
61
81
|
if (toolSpecificData.description) {
|
|
62
82
|
parts.push(toolSpecificData.description);
|
|
63
83
|
}
|
|
64
84
|
if (toolSpecificData.prompt) {
|
|
65
|
-
parts.push(( localize(
|
|
85
|
+
parts.push(( localize(4689, "Task: {0}", toolSpecificData.prompt)));
|
|
66
86
|
}
|
|
67
87
|
return parts.join(". ") || "";
|
|
68
88
|
}
|
|
69
89
|
case "extensions":
|
|
70
|
-
return toolSpecificData.extensions.length > 0 ? ( localize(
|
|
90
|
+
return toolSpecificData.extensions.length > 0 ? ( localize(4690, "Extensions: {0}", toolSpecificData.extensions.join(", "))) : "";
|
|
71
91
|
case "todoList":
|
|
72
92
|
{
|
|
73
93
|
const todos = toolSpecificData.todoList;
|
|
74
94
|
if (todos.length === 0) {
|
|
75
95
|
return "";
|
|
76
96
|
}
|
|
77
|
-
const todoDescriptions = ( todos.map(t => ( localize(
|
|
78
|
-
return localize(
|
|
97
|
+
const todoDescriptions = ( todos.map(t => ( localize(4691, "{0} ({1})", t.title, t.status))));
|
|
98
|
+
return localize(4692, "{0} items: {1}", todos.length, todoDescriptions.join("; "));
|
|
79
99
|
}
|
|
80
100
|
case "pullRequest":
|
|
81
|
-
return localize(
|
|
101
|
+
return localize(4693, "PR: {0} by {1}", toolSpecificData.title, toolSpecificData.author);
|
|
82
102
|
case "input":
|
|
83
103
|
return typeof toolSpecificData.rawInput === "string" ? toolSpecificData.rawInput : JSON.stringify(toolSpecificData.rawInput);
|
|
104
|
+
case "resources":
|
|
105
|
+
{
|
|
106
|
+
const values = toolSpecificData.values;
|
|
107
|
+
if (values.length === 0) {
|
|
108
|
+
return "";
|
|
109
|
+
}
|
|
110
|
+
const paths = ( values.map(v => {
|
|
111
|
+
if ("uri" in v && "range" in v) {
|
|
112
|
+
return `${v.uri.fsPath || v.uri.path}:${v.range.startLineNumber}`;
|
|
113
|
+
} else {
|
|
114
|
+
return v.fsPath || v.path;
|
|
115
|
+
}
|
|
116
|
+
})).join(", ");
|
|
117
|
+
return localize(4694, "Resources: {0}", paths);
|
|
118
|
+
}
|
|
119
|
+
case "simpleToolInvocation":
|
|
120
|
+
{
|
|
121
|
+
const inputText = toolSpecificData.input;
|
|
122
|
+
const outputText = toolSpecificData.output;
|
|
123
|
+
return localize(4695, "Input: {0}, Output: {1}", inputText, outputText);
|
|
124
|
+
}
|
|
84
125
|
default:
|
|
85
126
|
return "";
|
|
86
127
|
}
|
|
@@ -108,12 +149,12 @@ function getResultDetailsDescription(resultDetails) {
|
|
|
108
149
|
}
|
|
109
150
|
if (isOutputDetailsSerialized(resultDetails)) {
|
|
110
151
|
return {
|
|
111
|
-
input: ( localize(
|
|
152
|
+
input: ( localize(4696, "{0} data", resultDetails.output.mimeType))
|
|
112
153
|
};
|
|
113
154
|
}
|
|
114
155
|
if (isToolResultOutputDetails(resultDetails)) {
|
|
115
156
|
return {
|
|
116
|
-
input: ( localize(
|
|
157
|
+
input: ( localize(4696, "{0} data", resultDetails.output.mimeType))
|
|
117
158
|
};
|
|
118
159
|
}
|
|
119
160
|
return {};
|
|
@@ -137,23 +178,25 @@ function getToolInvocationA11yDescription(
|
|
|
137
178
|
if (isComplete && resultDetails) {
|
|
138
179
|
const details = getResultDetailsDescription(resultDetails);
|
|
139
180
|
if (details.isError) {
|
|
140
|
-
parts.unshift(( localize(
|
|
181
|
+
parts.unshift(( localize(4697, "Errored")));
|
|
141
182
|
}
|
|
142
183
|
if (details.input && !toolDataDesc) {
|
|
143
|
-
parts.push(( localize(
|
|
184
|
+
parts.push(( localize(4698, "Input: {0}", details.input)));
|
|
144
185
|
}
|
|
145
186
|
if (details.files && details.files.length > 0) {
|
|
146
|
-
parts.push(( localize(
|
|
187
|
+
parts.push(( localize(4699, "Files: {0}", details.files.join(", "))));
|
|
147
188
|
}
|
|
148
189
|
}
|
|
149
190
|
return parts.join(". ");
|
|
150
191
|
}
|
|
151
192
|
class ChatResponseAccessibleProvider extends Disposable {
|
|
152
|
-
constructor(_widget, item, _wasOpenedFromInput) {
|
|
193
|
+
constructor(_widget, item, _wasOpenedFromInput, _storageService) {
|
|
153
194
|
super();
|
|
154
195
|
this._widget = _widget;
|
|
155
196
|
this._wasOpenedFromInput = _wasOpenedFromInput;
|
|
197
|
+
this._storageService = _storageService;
|
|
156
198
|
this._focusedItemDisposables = this._register(( new DisposableStore()));
|
|
199
|
+
this._storageDisposables = this._register(( new DisposableStore()));
|
|
157
200
|
this._onDidChangeContent = this._register(( new Emitter()));
|
|
158
201
|
this.onDidChangeContent = this._onDidChangeContent.event;
|
|
159
202
|
this.id = AccessibleViewProviderId.PanelChat;
|
|
@@ -161,6 +204,13 @@ class ChatResponseAccessibleProvider extends Disposable {
|
|
|
161
204
|
this.options = {
|
|
162
205
|
type: AccessibleViewType.View
|
|
163
206
|
};
|
|
207
|
+
this._storageDisposables.add(this._storageService.onDidChangeValue(
|
|
208
|
+
StorageScope.PROFILE,
|
|
209
|
+
CHAT_ACCESSIBLE_VIEW_INCLUDE_THINKING_STORAGE_KEY,
|
|
210
|
+
this._storageDisposables
|
|
211
|
+
)(() => {
|
|
212
|
+
this._onDidChangeContent.fire();
|
|
213
|
+
}));
|
|
164
214
|
this._setFocusedItem(item);
|
|
165
215
|
}
|
|
166
216
|
provideContent() {
|
|
@@ -190,10 +240,13 @@ class ChatResponseAccessibleProvider extends Disposable {
|
|
|
190
240
|
switch (part.kind) {
|
|
191
241
|
case "thinking":
|
|
192
242
|
{
|
|
243
|
+
if (!this._shouldIncludeThinkingContent()) {
|
|
244
|
+
break;
|
|
245
|
+
}
|
|
193
246
|
const thinkingValue = Array.isArray(part.value) ? part.value.join("") : (part.value || "");
|
|
194
247
|
const trimmed = thinkingValue.trim();
|
|
195
248
|
if (trimmed) {
|
|
196
|
-
contentParts.push(( localize(
|
|
249
|
+
contentParts.push(( localize(4700, "Thinking: {0}", trimmed)));
|
|
197
250
|
}
|
|
198
251
|
break;
|
|
199
252
|
}
|
|
@@ -250,7 +303,7 @@ class ChatResponseAccessibleProvider extends Disposable {
|
|
|
250
303
|
contentParts.push(toolContent);
|
|
251
304
|
} else if (state.type === IChatToolInvocation.StateKind.WaitingForPostApproval) {
|
|
252
305
|
const postApprovalDetails = isToolResultInputOutputDetails(state.resultDetails) ? state.resultDetails.input : isToolResultOutputDetails(state.resultDetails) ? undefined : toolContentToA11yString(state.contentForModel);
|
|
253
|
-
contentParts.push(( localize(
|
|
306
|
+
contentParts.push(( localize(4701, "Approve results of {0}? Result: ", part.toolId)) + (postApprovalDetails ?? ""));
|
|
254
307
|
} else {
|
|
255
308
|
const resultDetails = IChatToolInvocation.resultDetails(part);
|
|
256
309
|
const isComplete = IChatToolInvocation.isComplete(part);
|
|
@@ -296,6 +349,9 @@ class ChatResponseAccessibleProvider extends Disposable {
|
|
|
296
349
|
}
|
|
297
350
|
return normalized.join("\n");
|
|
298
351
|
}
|
|
352
|
+
_shouldIncludeThinkingContent() {
|
|
353
|
+
return isThinkingContentIncludedInAccessibleView(this._storageService);
|
|
354
|
+
}
|
|
299
355
|
onClose() {
|
|
300
356
|
this._widget.reveal(this._focusedItem);
|
|
301
357
|
if (this._wasOpenedFromInput) {
|
|
@@ -322,4 +378,4 @@ class ChatResponseAccessibleProvider extends Disposable {
|
|
|
322
378
|
}
|
|
323
379
|
}
|
|
324
380
|
|
|
325
|
-
export { ChatResponseAccessibleView, getResultDetailsDescription, getToolInvocationA11yDescription, getToolSpecificDataDescription };
|
|
381
|
+
export { CHAT_ACCESSIBLE_VIEW_INCLUDE_THINKING_STORAGE_KEY, ChatResponseAccessibleView, getResultDetailsDescription, getToolInvocationA11yDescription, getToolSpecificDataDescription, isThinkingContentIncludedInAccessibleView };
|
|
@@ -1,2 +1,3 @@
|
|
|
1
1
|
export declare const ACTION_ID_FOCUS_CHAT_CONFIRMATION = "workbench.action.chat.focusConfirmation";
|
|
2
|
+
export declare const ACTION_ID_TOGGLE_THINKING_CONTENT_ACCESSIBLE_VIEW = "workbench.action.chat.toggleThinkingContentAccessibleView";
|
|
2
3
|
export declare function registerChatAccessibilityActions(): void;
|
|
@@ -4,22 +4,29 @@ import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
|
4
4
|
import { Action2, registerAction2 } from '@codingame/monaco-vscode-api/vscode/vs/platform/actions/common/actions';
|
|
5
5
|
import { KeybindingWeight } from '@codingame/monaco-vscode-api/vscode/vs/platform/keybinding/common/keybindingsRegistry';
|
|
6
6
|
import { KeyMod, KeyCode } from '@codingame/monaco-vscode-api/vscode/vs/base/common/keyCodes';
|
|
7
|
+
import { StorageScope, StorageTarget } from '@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage';
|
|
8
|
+
import { IStorageService } from '@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage.service';
|
|
9
|
+
import { ContextKeyExpr } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey';
|
|
7
10
|
import { IChatWidgetService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat.service';
|
|
8
11
|
import { ChatContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/actions/chatContextKeys';
|
|
9
12
|
import { isResponseVM } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/model/chatViewModel';
|
|
13
|
+
import { AccessibleViewProviderId } from '@codingame/monaco-vscode-api/vscode/vs/platform/accessibility/browser/accessibleView';
|
|
10
14
|
import { CONTEXT_ACCESSIBILITY_MODE_ENABLED } from '@codingame/monaco-vscode-api/vscode/vs/platform/accessibility/common/accessibility';
|
|
15
|
+
import { accessibleViewIsShown, accessibleViewCurrentProviderId } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration';
|
|
16
|
+
import { isThinkingContentIncludedInAccessibleView, CHAT_ACCESSIBLE_VIEW_INCLUDE_THINKING_STORAGE_KEY } from '../accessibility/chatResponseAccessibleView.js';
|
|
11
17
|
|
|
12
18
|
const ACTION_ID_FOCUS_CHAT_CONFIRMATION = "workbench.action.chat.focusConfirmation";
|
|
19
|
+
const ACTION_ID_TOGGLE_THINKING_CONTENT_ACCESSIBLE_VIEW = "workbench.action.chat.toggleThinkingContentAccessibleView";
|
|
13
20
|
class AnnounceChatConfirmationAction extends Action2 {
|
|
14
21
|
constructor() {
|
|
15
22
|
super({
|
|
16
23
|
id: ACTION_ID_FOCUS_CHAT_CONFIRMATION,
|
|
17
24
|
title: {
|
|
18
|
-
value: ( localize(
|
|
25
|
+
value: ( localize(4702, "Focus Chat Confirmation")),
|
|
19
26
|
original: "Focus Chat Confirmation"
|
|
20
27
|
},
|
|
21
28
|
category: {
|
|
22
|
-
value: ( localize(
|
|
29
|
+
value: ( localize(4703, "Chat")),
|
|
23
30
|
original: "Chat"
|
|
24
31
|
},
|
|
25
32
|
precondition: ChatContextKeys.enabled,
|
|
@@ -27,7 +34,7 @@ class AnnounceChatConfirmationAction extends Action2 {
|
|
|
27
34
|
keybinding: {
|
|
28
35
|
weight: KeybindingWeight.WorkbenchContrib,
|
|
29
36
|
primary: KeyMod.CtrlCmd | KeyCode.KeyA | KeyMod.Shift,
|
|
30
|
-
when: CONTEXT_ACCESSIBILITY_MODE_ENABLED
|
|
37
|
+
when: ( ContextKeyExpr.and(CONTEXT_ACCESSIBILITY_MODE_ENABLED, ( ChatContextKeys.Editing.hasQuestionCarousel.negate())))
|
|
31
38
|
}
|
|
32
39
|
});
|
|
33
40
|
}
|
|
@@ -35,12 +42,12 @@ class AnnounceChatConfirmationAction extends Action2 {
|
|
|
35
42
|
const chatWidgetService = accessor.get(IChatWidgetService);
|
|
36
43
|
const pendingWidget = chatWidgetService.getAllWidgets().find(widget => widget.viewModel?.model.requestNeedsInput.get());
|
|
37
44
|
if (!pendingWidget) {
|
|
38
|
-
alert(( localize(
|
|
45
|
+
alert(( localize(4704, "No active chat session found.")));
|
|
39
46
|
return;
|
|
40
47
|
}
|
|
41
48
|
const viewModel = pendingWidget.viewModel;
|
|
42
49
|
if (!viewModel) {
|
|
43
|
-
alert(( localize(
|
|
50
|
+
alert(( localize(4705, "Chat interface not ready.")));
|
|
44
51
|
return;
|
|
45
52
|
}
|
|
46
53
|
let firstConfirmationElement;
|
|
@@ -52,14 +59,53 @@ class AnnounceChatConfirmationAction extends Action2 {
|
|
|
52
59
|
}
|
|
53
60
|
}
|
|
54
61
|
if (firstConfirmationElement) {
|
|
55
|
-
firstConfirmationElement.
|
|
62
|
+
if (firstConfirmationElement.contains(pendingWidget.domNode.ownerDocument.activeElement)) {
|
|
63
|
+
pendingWidget.focusInput();
|
|
64
|
+
} else {
|
|
65
|
+
firstConfirmationElement.focus();
|
|
66
|
+
}
|
|
56
67
|
} else {
|
|
57
|
-
alert(( localize(
|
|
68
|
+
alert(( localize(4706, "No chat confirmation required")));
|
|
58
69
|
}
|
|
59
70
|
}
|
|
60
71
|
}
|
|
72
|
+
class ToggleThinkingContentAccessibleViewAction extends Action2 {
|
|
73
|
+
constructor() {
|
|
74
|
+
super({
|
|
75
|
+
id: ACTION_ID_TOGGLE_THINKING_CONTENT_ACCESSIBLE_VIEW,
|
|
76
|
+
title: {
|
|
77
|
+
value: ( localize(4707, "Toggle Thinking Content in Accessible View")),
|
|
78
|
+
original: "Toggle Thinking Content in Accessible View"
|
|
79
|
+
},
|
|
80
|
+
category: {
|
|
81
|
+
value: ( localize(4703, "Chat")),
|
|
82
|
+
original: "Chat"
|
|
83
|
+
},
|
|
84
|
+
precondition: ChatContextKeys.enabled,
|
|
85
|
+
f1: true,
|
|
86
|
+
keybinding: {
|
|
87
|
+
primary: KeyMod.Alt | KeyCode.KeyT,
|
|
88
|
+
weight: KeybindingWeight.WorkbenchContrib,
|
|
89
|
+
when: ( ContextKeyExpr.and(accessibleViewIsShown, ( ContextKeyExpr.equals(accessibleViewCurrentProviderId.key, AccessibleViewProviderId.PanelChat))))
|
|
90
|
+
}
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
async run(accessor) {
|
|
94
|
+
const storageService = accessor.get(IStorageService);
|
|
95
|
+
const includeThinking = isThinkingContentIncludedInAccessibleView(storageService);
|
|
96
|
+
const updatedValue = !includeThinking;
|
|
97
|
+
storageService.store(
|
|
98
|
+
CHAT_ACCESSIBLE_VIEW_INCLUDE_THINKING_STORAGE_KEY,
|
|
99
|
+
updatedValue,
|
|
100
|
+
StorageScope.PROFILE,
|
|
101
|
+
StorageTarget.USER
|
|
102
|
+
);
|
|
103
|
+
alert(updatedValue ? ( localize(4708, "Thinking content will be included in the accessible view.")) : ( localize(4709, "Thinking content will be hidden from the accessible view.")));
|
|
104
|
+
}
|
|
105
|
+
}
|
|
61
106
|
function registerChatAccessibilityActions() {
|
|
62
107
|
registerAction2(AnnounceChatConfirmationAction);
|
|
108
|
+
registerAction2(ToggleThinkingContentAccessibleViewAction);
|
|
63
109
|
}
|
|
64
110
|
|
|
65
|
-
export { ACTION_ID_FOCUS_CHAT_CONFIRMATION, registerChatAccessibilityActions };
|
|
111
|
+
export { ACTION_ID_FOCUS_CHAT_CONFIRMATION, ACTION_ID_TOGGLE_THINKING_CONTENT_ACCESSIBLE_VIEW, registerChatAccessibilityActions };
|
|
@@ -70,192 +70,226 @@ function getAccessibilityHelpText(type, keybindingService) {
|
|
|
70
70
|
if (type === "panelChat" || type === "quickChat" || type === "agentView") {
|
|
71
71
|
if (type === "quickChat") {
|
|
72
72
|
content.push(( localize(
|
|
73
|
-
|
|
73
|
+
4710,
|
|
74
74
|
"The quick chat view is comprised of an input box and a request/response list. The input box is used to make requests and the list is used to display responses."
|
|
75
75
|
)));
|
|
76
76
|
content.push(( localize(
|
|
77
|
-
|
|
77
|
+
4711,
|
|
78
78
|
"The quick chat view is a transient interface for making and viewing requests, while the panel chat view is a persistent interface that also supports navigating suggested follow-up questions."
|
|
79
79
|
)));
|
|
80
80
|
} else {
|
|
81
81
|
content.push(( localize(
|
|
82
|
-
|
|
82
|
+
4712,
|
|
83
83
|
"The chat view is a persistent interface that also supports navigating suggested follow-up questions, while the quick chat view is a transient interface for making and viewing requests."
|
|
84
84
|
)));
|
|
85
85
|
content.push(( localize(
|
|
86
|
-
|
|
86
|
+
4713,
|
|
87
87
|
"To create a new chat session, invoke the New Chat command{0}.",
|
|
88
88
|
"<keybinding:workbench.action.chat.newChat>"
|
|
89
89
|
)));
|
|
90
90
|
content.push(( localize(
|
|
91
|
-
|
|
91
|
+
4714,
|
|
92
92
|
"To view all chat sessions, invoke the Show Chats command{0}.",
|
|
93
93
|
"<keybinding:workbench.action.chat.history>"
|
|
94
94
|
)));
|
|
95
95
|
content.push(( localize(
|
|
96
|
-
|
|
96
|
+
4715,
|
|
97
97
|
"You can focus the agent sessions list by invoking the Focus Agent Sessions command{0}.",
|
|
98
98
|
`<keybinding:${FocusAgentSessionsAction.id}>`
|
|
99
99
|
)));
|
|
100
100
|
}
|
|
101
101
|
content.push(( localize(
|
|
102
|
-
|
|
102
|
+
4716,
|
|
103
103
|
"In the input box, use up and down arrows to navigate your request history. Edit input and use enter or the submit button to run a new request."
|
|
104
104
|
)));
|
|
105
105
|
content.push(( localize(
|
|
106
|
-
|
|
106
|
+
4717,
|
|
107
107
|
"To remove attached contexts, focus an attachment and press Delete or Backspace."
|
|
108
108
|
)));
|
|
109
109
|
content.push(( localize(
|
|
110
|
-
|
|
111
|
-
"In the input box, inspect the last response in the accessible view{0}. Thinking content is included in order.",
|
|
110
|
+
4718,
|
|
111
|
+
"In the input box, inspect the last response in the accessible view{0}. Thinking content is included in order by default.",
|
|
112
112
|
"<keybinding:editor.action.accessibleView>"
|
|
113
113
|
)));
|
|
114
114
|
content.push(( localize(
|
|
115
|
-
|
|
115
|
+
4719,
|
|
116
|
+
"To include or exclude thinking content in the accessible view, run the Toggle Thinking Content in Accessible View command from the Command Palette."
|
|
117
|
+
)));
|
|
118
|
+
content.push(( localize(
|
|
119
|
+
4720,
|
|
116
120
|
"To focus the chat request and response list, invoke the Focus Chat command{0}. This will move focus to the most recent response, which you can then navigate using the up and down arrow keys.",
|
|
117
121
|
getChatFocusKeybindingLabel(keybindingService, type, "last")
|
|
118
122
|
)));
|
|
119
123
|
content.push(( localize(
|
|
120
|
-
|
|
124
|
+
4721,
|
|
121
125
|
"To return to the last chat response you focused, invoke the Focus Last Focused Chat Response command{0}.",
|
|
122
126
|
getChatFocusKeybindingLabel(keybindingService, type, "lastFocused")
|
|
123
127
|
)));
|
|
124
128
|
content.push(( localize(
|
|
125
|
-
|
|
129
|
+
4722,
|
|
126
130
|
"To focus the input box for chat requests, invoke the Focus Chat Input command{0}.",
|
|
127
131
|
getChatFocusKeybindingLabel(keybindingService, type, "input")
|
|
128
132
|
)));
|
|
129
133
|
content.push(( localize(
|
|
130
|
-
|
|
134
|
+
4723,
|
|
131
135
|
"As the chat request is being processed, you will hear verbose progress updates if the request takes more than 4 seconds. This includes information like searched text for <search term> with X results, created file <file_name>, or read file <file path>. This can be disabled with accessibility.verboseChatProgressUpdates."
|
|
132
136
|
)));
|
|
133
137
|
content.push(( localize(
|
|
134
|
-
|
|
138
|
+
4724,
|
|
135
139
|
"Chat responses will be announced as they come in. A response will indicate the number of code blocks, if any, and then the rest of the response."
|
|
136
140
|
)));
|
|
137
141
|
content.push(( localize(
|
|
138
|
-
|
|
142
|
+
4725,
|
|
139
143
|
"To focus the next code block within a response, invoke the Chat: Next Code Block command{0}.",
|
|
140
144
|
"<keybinding:workbench.action.chat.nextCodeBlock>"
|
|
141
145
|
)));
|
|
142
146
|
content.push(( localize(
|
|
143
|
-
|
|
147
|
+
4726,
|
|
144
148
|
"To navigate to the next user prompt in the conversation, invoke the Next User Prompt command{0}.",
|
|
145
149
|
"<keybinding:workbench.action.chat.nextUserPrompt>"
|
|
146
150
|
)));
|
|
147
151
|
content.push(( localize(
|
|
148
|
-
|
|
152
|
+
4727,
|
|
149
153
|
"To navigate to the previous user prompt in the conversation, invoke the Previous User Prompt command{0}.",
|
|
150
154
|
"<keybinding:workbench.action.chat.previousUserPrompt>"
|
|
151
155
|
)));
|
|
152
156
|
content.push(( localize(
|
|
153
|
-
|
|
157
|
+
4728,
|
|
154
158
|
"To focus pending chat confirmation dialogs, invoke the Focus Chat Confirmation Status command{0}.",
|
|
155
159
|
"<keybinding:workbench.action.chat.focusConfirmation>"
|
|
156
160
|
)));
|
|
157
161
|
content.push(( localize(
|
|
158
|
-
|
|
162
|
+
4729,
|
|
159
163
|
"If there are any hidden chat terminals, you can view them by invoking the View Hidden Chat Terminals command{0}.",
|
|
160
164
|
"<keybinding:workbench.action.terminal.chat.viewHiddenChatTerminals>"
|
|
161
165
|
)));
|
|
162
166
|
content.push(( localize(
|
|
163
|
-
|
|
167
|
+
4730,
|
|
164
168
|
"To focus the last chat terminal that ran a tool, invoke the Focus Most Recent Chat Terminal command{0}.",
|
|
165
169
|
`<keybinding:${TerminalContribCommandId.FocusMostRecentChatTerminal}>`
|
|
166
170
|
)));
|
|
167
171
|
content.push(( localize(
|
|
168
|
-
|
|
172
|
+
4731,
|
|
169
173
|
"To focus the output from the last chat terminal tool, invoke the Focus Most Recent Chat Terminal Output command{0}.",
|
|
170
174
|
`<keybinding:${TerminalContribCommandId.FocusMostRecentChatTerminalOutput}>`
|
|
171
175
|
)));
|
|
176
|
+
content.push(( localize(
|
|
177
|
+
4732,
|
|
178
|
+
"When a chat question appears, toggle focus between the question and the chat input{0}.",
|
|
179
|
+
"<keybinding:workbench.action.chat.focusQuestionCarousel>"
|
|
180
|
+
)));
|
|
181
|
+
content.push(( localize(
|
|
182
|
+
4733,
|
|
183
|
+
"When a chat question is focused, move to the previous question{0}.",
|
|
184
|
+
"<keybinding:workbench.action.chat.previousQuestion>"
|
|
185
|
+
)));
|
|
186
|
+
content.push(( localize(
|
|
187
|
+
4734,
|
|
188
|
+
"When a chat question is focused, move to the next question{0}.",
|
|
189
|
+
"<keybinding:workbench.action.chat.nextQuestion>"
|
|
190
|
+
)));
|
|
191
|
+
content.push(( localize(
|
|
192
|
+
4735,
|
|
193
|
+
"When a tip appears, toggle focus between the tip and the chat input{0}.",
|
|
194
|
+
"<keybinding:workbench.action.chat.focusTip>"
|
|
195
|
+
)));
|
|
172
196
|
}
|
|
173
197
|
if (type === "editsView" || type === "agentView") {
|
|
174
198
|
if (type === "agentView") {
|
|
175
199
|
content.push(( localize(
|
|
176
|
-
|
|
200
|
+
4736,
|
|
177
201
|
"The chat agent view is used to apply edits across files in your workspace, enable running commands in the terminal, and more."
|
|
178
202
|
)));
|
|
179
203
|
} else {
|
|
180
|
-
content.push(( localize(
|
|
204
|
+
content.push(( localize(4737, "The chat editing view is used to apply edits across files.")));
|
|
181
205
|
}
|
|
182
206
|
content.push(( localize(
|
|
183
|
-
|
|
207
|
+
4738,
|
|
184
208
|
"It is comprised of an input box and a file working set (Shift+Tab)."
|
|
185
209
|
)));
|
|
186
210
|
content.push(( localize(
|
|
187
|
-
|
|
211
|
+
4739,
|
|
188
212
|
"When a request is made, a progress indicator will play while the edits are being applied."
|
|
189
213
|
)));
|
|
190
214
|
content.push(( localize(
|
|
191
|
-
|
|
215
|
+
4740,
|
|
192
216
|
"Once the edits are applied, a sound will play to indicate the document has been opened and is ready for review. The sound can be disabled with accessibility.signals.chatEditModifiedFile."
|
|
193
217
|
)));
|
|
194
218
|
content.push(( localize(
|
|
195
|
-
|
|
219
|
+
4741,
|
|
196
220
|
"Navigate between edits in the editor with navigate previous{0} and next{1}",
|
|
197
221
|
"<keybinding:chatEditor.action.navigatePrevious>",
|
|
198
222
|
"<keybinding:chatEditor.action.navigateNext>"
|
|
199
223
|
)));
|
|
200
224
|
content.push(( localize(
|
|
201
|
-
|
|
225
|
+
4742,
|
|
202
226
|
"In the editor, Keep{0}, Undo{1}, or Toggle the Diff{2} for the current Change.",
|
|
203
227
|
"<keybinding:chatEditor.action.acceptHunk>",
|
|
204
228
|
"<keybinding:chatEditor.action.undoHunk>",
|
|
205
229
|
"<keybinding:chatEditor.action.toggleDiff>"
|
|
206
230
|
)));
|
|
207
231
|
content.push(( localize(
|
|
208
|
-
|
|
232
|
+
4743,
|
|
209
233
|
"Sounds will play when a change is accepted or undone. The sounds can be disabled with accessibility.signals.editsKept and accessibility.signals.editsUndone."
|
|
210
234
|
)));
|
|
211
235
|
if (type === "agentView") {
|
|
212
236
|
content.push(( localize(
|
|
213
|
-
|
|
237
|
+
4744,
|
|
214
238
|
"An alert will indicate when user action is required. For example, if the agent wants to run something in the terminal, you will hear Action Required: Run Command in Terminal."
|
|
215
239
|
)));
|
|
216
240
|
content.push(( localize(
|
|
217
|
-
|
|
241
|
+
4745,
|
|
218
242
|
"To take the action, use the accept tool command{0}.",
|
|
219
243
|
"<keybinding:workbench.action.chat.acceptTool>"
|
|
220
244
|
)));
|
|
221
245
|
content.push(( localize(
|
|
222
|
-
|
|
246
|
+
4746,
|
|
223
247
|
"To automatically approve tool actions without manual confirmation, set {0} to {1} in your settings.",
|
|
224
248
|
ChatConfiguration.GlobalAutoApprove,
|
|
225
249
|
"true"
|
|
226
250
|
)));
|
|
227
251
|
content.push(( localize(
|
|
228
|
-
|
|
252
|
+
4747,
|
|
229
253
|
"To accept a tool action, use the Accept Tool Confirmation command{0}.",
|
|
230
254
|
"<keybinding:workbench.action.chat.acceptTool>"
|
|
231
255
|
)));
|
|
232
256
|
content.push(( localize(
|
|
233
|
-
|
|
257
|
+
4748,
|
|
234
258
|
"By default, when edits are made to files, they will be opened. To change this behavior, set accessibility.openChatEditedFiles to false in your settings."
|
|
235
259
|
)));
|
|
260
|
+
content.push(( localize(
|
|
261
|
+
4749,
|
|
262
|
+
"To toggle focus between the Agent TODOs view and the chat input, use Agent TODOs: Toggle Focus{0}.",
|
|
263
|
+
"<keybinding:workbench.action.chat.focusTodosView>"
|
|
264
|
+
)));
|
|
236
265
|
}
|
|
237
|
-
content.push(( localize(
|
|
238
|
-
content.push(( localize(
|
|
266
|
+
content.push(( localize(4750, "Some helpful commands include:")));
|
|
267
|
+
content.push(( localize(4751, "- Undo Edits{0}.", "<keybinding:workbench.action.chat.undoEdits>")));
|
|
268
|
+
content.push(( localize(
|
|
269
|
+
4752,
|
|
270
|
+
"- Restore to Last Checkpoint{0}.",
|
|
271
|
+
"<keybinding:workbench.action.chat.restoreLastCheckpoint>"
|
|
272
|
+
)));
|
|
239
273
|
content.push(( localize(
|
|
240
|
-
|
|
274
|
+
4753,
|
|
241
275
|
"- Attach Files{0}.",
|
|
242
276
|
"<keybinding:workbench.action.chat.editing.attachFiles>"
|
|
243
277
|
)));
|
|
244
278
|
content.push(( localize(
|
|
245
|
-
|
|
279
|
+
4754,
|
|
246
280
|
"- Remove File from Working Set{0}.",
|
|
247
281
|
"<keybinding:chatEditing.removeFileFromWorkingSet>"
|
|
248
282
|
)));
|
|
249
283
|
content.push(( localize(
|
|
250
|
-
|
|
284
|
+
4755,
|
|
251
285
|
"- Keep{0} and Undo File{1}.",
|
|
252
286
|
"<keybinding:chatEditing.acceptFile>",
|
|
253
287
|
"<keybinding:chatEditing.discardFile>"
|
|
254
288
|
)));
|
|
255
|
-
content.push(( localize(
|
|
256
|
-
content.push(( localize(
|
|
257
|
-
content.push(( localize(
|
|
258
|
-
content.push(( localize(
|
|
289
|
+
content.push(( localize(4756, "- Save All Files{0}.", "<keybinding:chatEditing.saveAllFiles>")));
|
|
290
|
+
content.push(( localize(4757, "- Keep All Edits{0}.", "<keybinding:chatEditing.acceptAllFiles>")));
|
|
291
|
+
content.push(( localize(4758, "- Undo All Edits{0}.", "<keybinding:chatEditing.discardAllFiles>")));
|
|
292
|
+
content.push(( localize(4759, "- Open File in Diff{0}.", "<keybinding:chatEditing.openFileInDiff>")));
|
|
259
293
|
content.push(
|
|
260
294
|
`- ${ChatEditingShowChangesAction.LABEL}<keybinding:chatEditing.viewChanges>`
|
|
261
295
|
);
|
|
@@ -264,45 +298,45 @@ function getAccessibilityHelpText(type, keybindingService) {
|
|
|
264
298
|
);
|
|
265
299
|
} else {
|
|
266
300
|
content.push(( localize(
|
|
267
|
-
|
|
301
|
+
4760,
|
|
268
302
|
"Inline chat occurs within a code editor and takes into account the current selection. It is useful for making changes to the current editor. For example, fixing diagnostics, documenting or refactoring code. Keep in mind that AI generated code may be incorrect."
|
|
269
303
|
)));
|
|
270
304
|
content.push(( localize(
|
|
271
|
-
|
|
305
|
+
4761,
|
|
272
306
|
"It can be activated via code actions or directly using the command: Inline Chat: Start Inline Chat{0}.",
|
|
273
307
|
"<keybinding:inlineChat.start>"
|
|
274
308
|
)));
|
|
275
309
|
content.push(( localize(
|
|
276
|
-
|
|
310
|
+
4762,
|
|
277
311
|
"In the input box, use Show Previous{0} and Show Next{1} to navigate your request history. Edit input and use enter or the submit button to run a new request.",
|
|
278
312
|
"<keybinding:history.showPrevious>",
|
|
279
313
|
"<keybinding:history.showNext>"
|
|
280
314
|
)));
|
|
281
315
|
content.push(( localize(
|
|
282
|
-
|
|
316
|
+
4763,
|
|
283
317
|
"In the input box, inspect the response in the accessible view{0}.",
|
|
284
318
|
"<keybinding:editor.action.accessibleView>"
|
|
285
319
|
)));
|
|
286
320
|
content.push(( localize(
|
|
287
|
-
|
|
321
|
+
4764,
|
|
288
322
|
"Context menu actions may run a request prefixed with a /. Type / to discover such ready-made commands."
|
|
289
323
|
)));
|
|
290
324
|
content.push(( localize(
|
|
291
|
-
|
|
325
|
+
4765,
|
|
292
326
|
"If a fix action is invoked, a response will indicate the problem with the current code. A diff editor will be rendered and can be reached by tabbing."
|
|
293
327
|
)));
|
|
294
328
|
content.push(( localize(
|
|
295
|
-
|
|
329
|
+
4766,
|
|
296
330
|
"Once in the diff editor, enter review mode with{0}. Use up and down arrows to navigate lines with the proposed changes.",
|
|
297
331
|
AccessibleDiffViewerNext.id
|
|
298
332
|
)));
|
|
299
333
|
content.push(( localize(
|
|
300
|
-
|
|
334
|
+
4767,
|
|
301
335
|
"Use tab to reach conditional parts like commands, status, message responses and more."
|
|
302
336
|
)));
|
|
303
337
|
}
|
|
304
338
|
content.push(( localize(
|
|
305
|
-
|
|
339
|
+
4768,
|
|
306
340
|
"Accessibility Signals can be changed via settings with a prefix of signals.chat. By default, if a request takes more than 4 seconds, you will hear a sound indicating that progress is still occurring."
|
|
307
341
|
)));
|
|
308
342
|
return content.join("\n");
|