@codingame/monaco-vscode-chat-service-override 28.4.1 → 29.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 +18 -12
- package/package.json +5 -5
- package/vscode/src/vs/platform/agentHost/common/agentService.d.ts +300 -0
- package/vscode/src/vs/platform/agentHost/common/agentService.js +31 -0
- package/vscode/src/vs/platform/agentHost/common/agentService.service.d.ts +84 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/action-origin.generated.d.ts +16 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/actions.d.ts +488 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/commands.d.ts +424 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/errors.d.ts +50 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/messages.d.ts +202 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/notifications.d.ts +114 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/state.d.ts +723 -0
- package/vscode/src/vs/platform/agentHost/common/state/sessionActions.d.ts +33 -0
- package/vscode/src/vs/platform/agentHost/common/state/sessionProtocol.d.ts +40 -0
- package/vscode/src/vs/platform/agentHost/common/state/sessionState.d.ts +22 -0
- package/vscode/src/vs/platform/browserElements/common/browserElements.d.ts +13 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityService.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.js +29 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +59 -59
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAgentRecommendationActions.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatForkActions.js +76 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatNewActions.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatOpenAgentDebugPanelAction.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatOpenAgentDebugPanelAction.js +162 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPluginActions.js +167 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQueueActions.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQueueActions.js +52 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +19 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginActions.d.ts +82 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginActions.js +195 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditor.d.ts +5 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditor.js +97 -88
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditorInput.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginItems.d.ts +4 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.d.ts +5 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.js +78 -35
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.d.ts +7 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.js +174 -170
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.js +7 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.js +118 -52
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsQuickAccess.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsService.d.ts +5 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsService.js +13 -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.d.ts +0 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionActions.js +5 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionsExperiments.contribution.js +9 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.d.ts +23 -25
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.js +341 -196
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/media/agenttitlebarstatuswidget.css +79 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccess.js +17 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccessActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/localAgentSessionsController.d.ts +5 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/localAgentSessionsController.js +22 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.d.ts +4 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.js +15 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.d.ts +85 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.js +668 -214
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidgetUtils.d.ts +10 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidgetUtils.js +18 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.contribution.js +306 -39
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.d.ts +84 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.js +651 -81
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.js +6 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWorkspaceService.d.ts +31 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWorkspaceService.js +9 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCreatorService.d.ts +11 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCreatorService.js +7 -142
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationGroupHeaderRenderer.d.ts +43 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationGroupHeaderRenderer.js +63 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.d.ts +11 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.js +44 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.d.ts +25 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.js +297 -123
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationManagement.css +153 -31
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.d.ts +17 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.js +111 -171
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.d.ts +1 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.js +5 -30
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/simpleBrowserEditorOverlay.js +19 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +277 -186
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatCustomizationDiscoveryRenderer.d.ts +4 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatCustomizationDiscoveryRenderer.js +31 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCollapsible.d.ts +3 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCollapsible.js +4 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugDetailPanel.d.ts +18 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugDetailPanel.js +112 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditor.d.ts +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditor.js +16 -27
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditorInput.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventDetailRenderer.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventDetailRenderer.js +41 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventList.d.ts +7 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventList.js +35 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFilters.d.ts +1 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFilters.js +8 -51
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowChartView.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowChartView.js +13 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowGraph.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowGraph.js +29 -36
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowLayout.js +14 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHomeView.d.ts +5 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHomeView.js +79 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHookContentRenderer.d.ts +19 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHookContentRenderer.js +125 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.d.ts +11 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.js +113 -82
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugMessageContentRenderer.d.ts +18 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugMessageContentRenderer.js +54 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugModelTurnContentRenderer.d.ts +8 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugModelTurnContentRenderer.js +103 -28
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugOverviewView.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugOverviewView.js +48 -37
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugToolCallContentRenderer.d.ts +28 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugToolCallContentRenderer.js +62 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/media/chatDebug.css +21 -37
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingDeletedFileEntry.js +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +4 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +17 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.d.ts +4 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +43 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatImageCarouselService.d.ts +59 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatImageCarouselService.js +194 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.js +9 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.js +8 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.d.ts +11 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.js +81 -50
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatUsageWidget.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +32 -32
- package/vscode/src/vs/workbench/contrib/chat/browser/chatRepoInfo.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetup.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.js +22 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupGrowthSession.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupGrowthSession.js +9 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.js +29 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.d.ts +0 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.js +19 -27
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.d.ts +2 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.js +105 -172
- 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 +80 -65
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipCatalog.js +56 -27
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/claudePluginRecommendations.d.ts +16 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/claudePluginRecommendations.js +70 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/defaultModelContribution.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/enablementActions.d.ts +20 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/enablementActions.js +40 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/enablementStatusWidget.d.ts +31 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/enablementStatusWidget.js +53 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelsConfigurationService.js +33 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.d.ts +21 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.js +362 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.d.ts +15 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.js +90 -43
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginUrlHandler.d.ts +35 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginUrlHandler.js +146 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.js +26 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.js +10 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/skillActions.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/promptsDebugContribution.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/promptsDebugContribution.js +33 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.d.ts +3 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.js +200 -55
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.d.ts +7 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.js +90 -45
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/renameTool.d.ts +4 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/renameTool.js +21 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +22 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/usagesTool.d.ts +4 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/usagesTool.js +28 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatQueuePickerActionItem.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatStatusWidget.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.js +20 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorContrib.js +68 -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 +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditor.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.js +57 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewTitleControl.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.d.ts +21 -5
- package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.js +171 -57
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.d.ts +7 -5
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.js +206 -35
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionOperationLog.js +4 -3
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/common/participants/chatSlashCommands.d.ts +7 -1
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.d.ts +11 -3
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.d.ts +44 -22
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.js +450 -301
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/marketplaceReference.d.ts +23 -0
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/marketplaceReference.js +165 -0
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.d.ts +34 -20
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.js +209 -144
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/workspacePluginSettingsService.d.ts +20 -0
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/workspacePluginSettingsService.js +205 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +17 -17
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/internalCustomizations/internalCustomizations.d.ts +33 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/internalCustomizations/internalCustomizations.js +47 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/internalCustomizations/internalSkill.d.ts +30 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.js +191 -159
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +6 -7
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +210 -233
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +19 -26
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +183 -193
- package/vscode/src/vs/workbench/contrib/chat/common/tools/chatArtifactsService.d.ts +24 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/chatArtifactsService.js +75 -0
- package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +1 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.js +8 -5
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +97 -35
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatDefaultModel.js +2 -2
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatHistoryService.d.ts +16 -0
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatHistoryService.js +67 -0
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +62 -23
- package/vscode/src/vs/workbench/contrib/mcp/browser/mcpPromptArgumentPick.js +14 -14
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chat/notebookChatUtils.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/cellChatActions.js +10 -10
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebook.chat.contribution.js +5 -5
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +1 -1
- package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.js +8 -8
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +16 -16
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +20 -20
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +2 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.js +23 -9
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.js +2 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.js +50 -9
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.js +21 -7
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/strategyHelpers.d.ts +20 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/strategyHelpers.js +124 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/outputHelpers.js +20 -5
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.d.ts +5 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +10 -7
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.js +46 -31
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.d.ts +18 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +74 -37
- 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/commandLineAnalyzer.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.js +24 -14
- 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/commandLineAnalyzer/commandLineSandboxAnalyzer.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/sandboxedCommandLinePresenter.d.ts +3 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/sandboxedCommandLinePresenter.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineRewriter.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineSandboxRewriter.js +5 -1
- 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 +1 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +66 -64
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/outputAnalyzer.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.js +5 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.d.ts +32 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +390 -114
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.d.ts +14 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.js +21 -11
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/createAndRunTaskTool.js +70 -51
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/getTaskOutputTool.js +61 -51
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/runTaskTool.js +94 -76
- 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 +19 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.js +112 -21
- package/vscode/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackService.d.ts +0 -53
- package/vscode/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackService.js +0 -219
- package/vscode/src/vs/sessions/contrib/chat/browser/aiCustomizationWorkspaceService.d.ts +0 -89
- package/vscode/src/vs/sessions/contrib/chat/browser/aiCustomizationWorkspaceService.js +0 -251
- package/vscode/src/vs/sessions/contrib/chat/browser/newSession.d.ts +0 -123
- package/vscode/src/vs/sessions/contrib/chat/browser/newSession.js +0 -278
- package/vscode/src/vs/sessions/contrib/chat/browser/sessionsConfigurationService.d.ts +0 -76
- package/vscode/src/vs/sessions/contrib/chat/browser/sessionsConfigurationService.js +0 -299
- package/vscode/src/vs/sessions/contrib/fileTreeView/browser/githubFileSystemProvider.d.ts +0 -67
- package/vscode/src/vs/sessions/contrib/fileTreeView/browser/githubFileSystemProvider.js +0 -263
- package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsManagementService.d.ts +0 -85
- package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsManagementService.js +0 -397
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.d.ts +0 -56
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.js +0 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/sessionResourceMatching.d.ts +0 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/sessionResourceMatching.js +0 -30
- package/vscode/src/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService.d.ts +0 -40
- package/vscode/src/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService.js +0 -28
- package/vscode/src/vs/workbench/contrib/chat/common/chatDebugService.d.ts +0 -190
- package/vscode/src/vs/workbench/contrib/chat/common/chatDebugService.js +0 -11
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.d.ts +0 -16
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.js +0 -20
|
@@ -7,12 +7,13 @@ import { escapeRegExpCharacters } from '@codingame/monaco-vscode-api/vscode/vs/b
|
|
|
7
7
|
import { Disposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
|
|
8
8
|
import { ResourceSet } from '@codingame/monaco-vscode-api/vscode/vs/base/common/map';
|
|
9
9
|
import { ThemeIcon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/themables';
|
|
10
|
-
import { relativePath } from '@codingame/monaco-vscode-api/vscode/vs/base/common/resources';
|
|
10
|
+
import { relativePath, isEqual } from '@codingame/monaco-vscode-api/vscode/vs/base/common/resources';
|
|
11
11
|
import { Position } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/core/position';
|
|
12
12
|
import { Range } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/core/range';
|
|
13
13
|
import { IModelService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/services/model.service';
|
|
14
14
|
import { ILanguageFeaturesService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/services/languageFeatures.service';
|
|
15
15
|
import { ITextModelService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/services/resolverService.service';
|
|
16
|
+
import { ILanguageService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/languages/language.service';
|
|
16
17
|
import { getDefinitionsAtPosition, getReferencesAtPosition, getImplementationsAtPosition } from '@codingame/monaco-vscode-api/vscode/vs/editor/contrib/gotoSymbol/browser/goToSymbol';
|
|
17
18
|
import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
18
19
|
import { ContextKeyExpr } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey';
|
|
@@ -40,6 +41,7 @@ If the tool returns an error, retry with corrected input - ensure the file path
|
|
|
40
41
|
let UsagesTool = class UsagesTool extends Disposable {
|
|
41
42
|
constructor(
|
|
42
43
|
_languageFeaturesService,
|
|
44
|
+
_languageService,
|
|
43
45
|
_modelService,
|
|
44
46
|
_searchService,
|
|
45
47
|
_textModelService,
|
|
@@ -47,6 +49,7 @@ let UsagesTool = class UsagesTool extends Disposable {
|
|
|
47
49
|
) {
|
|
48
50
|
super();
|
|
49
51
|
this._languageFeaturesService = _languageFeaturesService;
|
|
52
|
+
this._languageService = _languageService;
|
|
50
53
|
this._modelService = _modelService;
|
|
51
54
|
this._searchService = _searchService;
|
|
52
55
|
this._textModelService = _textModelService;
|
|
@@ -61,22 +64,31 @@ let UsagesTool = class UsagesTool extends Disposable {
|
|
|
61
64
|
}
|
|
62
65
|
getToolData() {
|
|
63
66
|
const languageIds = this._languageFeaturesService.referenceProvider.registeredLanguageIds;
|
|
67
|
+
if (languageIds.size === 0) {
|
|
68
|
+
return undefined;
|
|
69
|
+
}
|
|
64
70
|
let modelDescription = BaseModelDescription;
|
|
71
|
+
let userDescription;
|
|
65
72
|
if (( languageIds.has("*"))) {
|
|
66
73
|
modelDescription += "\n\nSupported for all languages.";
|
|
67
|
-
|
|
74
|
+
userDescription = ( localize(6645, "Find references, definitions, and implementations of a symbol"));
|
|
75
|
+
} else {
|
|
68
76
|
const sorted = [...languageIds].sort();
|
|
69
77
|
modelDescription += `\n\nCurrently supported for: ${sorted.join(", ")}.`;
|
|
70
|
-
|
|
71
|
-
|
|
78
|
+
const niceNames = ( sorted.map(id => this._languageService.getLanguageName(id) ?? id));
|
|
79
|
+
userDescription = ( localize(
|
|
80
|
+
6646,
|
|
81
|
+
"Find references, definitions, and implementations of a symbol ({0})",
|
|
82
|
+
niceNames.join(", ")
|
|
83
|
+
));
|
|
72
84
|
}
|
|
73
85
|
return {
|
|
74
86
|
id: UsagesToolId,
|
|
75
87
|
toolReferenceName: "usages",
|
|
76
88
|
canBeReferencedInPrompt: false,
|
|
77
89
|
icon: ThemeIcon.fromId(Codicon.references.id),
|
|
78
|
-
displayName: ( localize(
|
|
79
|
-
userDescription
|
|
90
|
+
displayName: ( localize(6647, "List Code Usages")),
|
|
91
|
+
userDescription,
|
|
80
92
|
modelDescription,
|
|
81
93
|
source: ToolDataSource.Internal,
|
|
82
94
|
when: ( ContextKeyExpr.has("config.chat.tools.usagesTool.enabled")),
|
|
@@ -107,7 +119,7 @@ let UsagesTool = class UsagesTool extends Disposable {
|
|
|
107
119
|
async prepareToolInvocation(context, _token) {
|
|
108
120
|
const input = context.parameters;
|
|
109
121
|
return {
|
|
110
|
-
invocationMessage: ( localize(
|
|
122
|
+
invocationMessage: ( localize(6648, "Analyzing usages of `{0}`", input.symbol))
|
|
111
123
|
};
|
|
112
124
|
}
|
|
113
125
|
async invoke(invocation, _countTokens, _progress, token) {
|
|
@@ -160,7 +172,7 @@ let UsagesTool = class UsagesTool extends Disposable {
|
|
|
160
172
|
)]);
|
|
161
173
|
if (references.length === 0) {
|
|
162
174
|
const result = createToolSimpleTextResult(`No usages found for \`${input.symbol}\`.`);
|
|
163
|
-
result.toolResultMessage = ( new MarkdownString(( localize(
|
|
175
|
+
result.toolResultMessage = ( new MarkdownString(( localize(6649, "Analyzed usages of `{0}`, no results", input.symbol))));
|
|
164
176
|
return result;
|
|
165
177
|
}
|
|
166
178
|
const previews = await this._getLinePreviews(input.symbol, references, token);
|
|
@@ -181,8 +193,8 @@ let UsagesTool = class UsagesTool extends Disposable {
|
|
|
181
193
|
}
|
|
182
194
|
const text = lines.join("\n");
|
|
183
195
|
const result = createToolSimpleTextResult(text);
|
|
184
|
-
result.toolResultMessage = references.length === 1 ? ( new MarkdownString(( localize(
|
|
185
|
-
|
|
196
|
+
result.toolResultMessage = references.length === 1 ? ( new MarkdownString(( localize(6650, "Analyzed usages of `{0}`, 1 result", input.symbol)))) : ( new MarkdownString(( localize(
|
|
197
|
+
6651,
|
|
186
198
|
"Analyzed usages of `{0}`, {1} results",
|
|
187
199
|
input.symbol,
|
|
188
200
|
references.length
|
|
@@ -278,13 +290,13 @@ let UsagesTool = class UsagesTool extends Disposable {
|
|
|
278
290
|
return "reference";
|
|
279
291
|
}
|
|
280
292
|
_overlaps(a, b) {
|
|
281
|
-
if ((
|
|
293
|
+
if (!isEqual(a.uri, b.uri)) {
|
|
282
294
|
return false;
|
|
283
295
|
}
|
|
284
296
|
return Range.areIntersectingOrTouching(a.range, b.range);
|
|
285
297
|
}
|
|
286
298
|
};
|
|
287
|
-
UsagesTool = ( __decorate([( __param(0, ILanguageFeaturesService)), ( __param(1,
|
|
299
|
+
UsagesTool = ( __decorate([( __param(0, ILanguageFeaturesService)), ( __param(1, ILanguageService)), ( __param(2, IModelService)), ( __param(3, ISearchService)), ( __param(4, ITextModelService)), ( __param(5, IWorkspaceContextService))], UsagesTool));
|
|
288
300
|
let UsagesToolContribution = class UsagesToolContribution extends Disposable {
|
|
289
301
|
static {
|
|
290
302
|
this.ID = "chat.usagesTool";
|
|
@@ -295,9 +307,12 @@ let UsagesToolContribution = class UsagesToolContribution extends Disposable {
|
|
|
295
307
|
let registration;
|
|
296
308
|
const registerUsagesTool = () => {
|
|
297
309
|
registration?.dispose();
|
|
310
|
+
registration = undefined;
|
|
298
311
|
toolsService.flushToolUpdates();
|
|
299
312
|
const toolData = usagesTool.getToolData();
|
|
300
|
-
|
|
313
|
+
if (toolData) {
|
|
314
|
+
registration = toolsService.registerTool(toolData, usagesTool);
|
|
315
|
+
}
|
|
301
316
|
};
|
|
302
317
|
registerUsagesTool();
|
|
303
318
|
this._store.add(usagesTool.onDidUpdateToolData(registerUsagesTool));
|
package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js
CHANGED
|
@@ -17,29 +17,29 @@ const chatViewsWelcomeJsonSchema = {
|
|
|
17
17
|
properties: {
|
|
18
18
|
icon: {
|
|
19
19
|
type: "string",
|
|
20
|
-
description: ( localize(
|
|
20
|
+
description: ( localize(6652, "The icon for the welcome message."))
|
|
21
21
|
},
|
|
22
22
|
title: {
|
|
23
23
|
type: "string",
|
|
24
|
-
description: ( localize(
|
|
24
|
+
description: ( localize(6653, "The title of the welcome message."))
|
|
25
25
|
},
|
|
26
26
|
content: {
|
|
27
27
|
type: "string",
|
|
28
28
|
description: ( localize(
|
|
29
|
-
|
|
29
|
+
6654,
|
|
30
30
|
"The content of the welcome message. The first command link will be rendered as a button."
|
|
31
31
|
))
|
|
32
32
|
},
|
|
33
33
|
when: {
|
|
34
34
|
type: "string",
|
|
35
|
-
description: ( localize(
|
|
35
|
+
description: ( localize(6655, "Condition when the welcome message is shown."))
|
|
36
36
|
}
|
|
37
37
|
}
|
|
38
38
|
};
|
|
39
39
|
const chatViewsWelcomeExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
|
|
40
40
|
extensionPoint: "chatViewsWelcome",
|
|
41
41
|
jsonSchema: {
|
|
42
|
-
description: ( localize(
|
|
42
|
+
description: ( localize(6656, "Contributes a welcome message to a chat view")),
|
|
43
43
|
type: "array",
|
|
44
44
|
items: chatViewsWelcomeJsonSchema
|
|
45
45
|
}
|
package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatQueuePickerActionItem.js
CHANGED
|
@@ -39,7 +39,7 @@ let ChatQueuePickerActionItem = class ChatQueuePickerActionItem extends BaseActi
|
|
|
39
39
|
this.configurationService = configurationService;
|
|
40
40
|
this._altKeyPressed = false;
|
|
41
41
|
const isSteerDefault = this._isSteerDefault();
|
|
42
|
-
this._primaryActionAction = this._register(( new Action("chat.queuePickerPrimary", isSteerDefault ? ( localize(
|
|
42
|
+
this._primaryActionAction = this._register(( new Action("chat.queuePickerPrimary", isSteerDefault ? ( localize(7007, "Steer with Message")) : ( localize(7008, "Add to Queue")), ThemeIcon.asClassName(isSteerDefault ? Codicon.arrowUp : Codicon.add), !!contextKeyService.getContextKeyValue(ChatContextKeys.inputHasText.key), () => this._runDefaultAction())));
|
|
43
43
|
this._primaryAction = this._register(( new ActionViewItem(undefined, this._primaryActionAction, {
|
|
44
44
|
icon: true,
|
|
45
45
|
label: false
|
|
@@ -47,7 +47,7 @@ let ChatQueuePickerActionItem = class ChatQueuePickerActionItem extends BaseActi
|
|
|
47
47
|
this._register(contextKeyService.onDidChangeContext(e => {
|
|
48
48
|
this._primaryActionAction.enabled = !!contextKeyService.getContextKeyValue(ChatContextKeys.inputHasText.key);
|
|
49
49
|
}));
|
|
50
|
-
const dropdownAction = this._register(( new Action("chat.queuePickerDropdown", ( localize(
|
|
50
|
+
const dropdownAction = this._register(( new Action("chat.queuePickerDropdown", ( localize(7009, "More Actions...")))));
|
|
51
51
|
this._dropdown = this._register(( new ChevronActionWidgetDropdown(dropdownAction, {
|
|
52
52
|
actionProvider: {
|
|
53
53
|
getActions: () => this._getDropdownActions()
|
|
@@ -75,7 +75,7 @@ let ChatQueuePickerActionItem = class ChatQueuePickerActionItem extends BaseActi
|
|
|
75
75
|
}
|
|
76
76
|
_updatePrimaryAction() {
|
|
77
77
|
const isSteer = this._isEffectiveSteer();
|
|
78
|
-
this._primaryActionAction.label = isSteer ? ( localize(
|
|
78
|
+
this._primaryActionAction.label = isSteer ? ( localize(7007, "Steer with Message")) : ( localize(7008, "Add to Queue"));
|
|
79
79
|
this._primaryActionAction.class = ThemeIcon.asClassName(isSteer ? Codicon.arrowUp : Codicon.add);
|
|
80
80
|
}
|
|
81
81
|
_runDefaultAction() {
|
|
@@ -125,7 +125,7 @@ let ChatQueuePickerActionItem = class ChatQueuePickerActionItem extends BaseActi
|
|
|
125
125
|
const isSteerDefault = this._isSteerDefault();
|
|
126
126
|
const queueAction = {
|
|
127
127
|
id: ChatQueueMessageAction.ID,
|
|
128
|
-
label: ( localize(
|
|
128
|
+
label: ( localize(7008, "Add to Queue")),
|
|
129
129
|
tooltip: "",
|
|
130
130
|
enabled: true,
|
|
131
131
|
checked: !isSteerDefault,
|
|
@@ -133,7 +133,7 @@ let ChatQueuePickerActionItem = class ChatQueuePickerActionItem extends BaseActi
|
|
|
133
133
|
class: undefined,
|
|
134
134
|
hover: {
|
|
135
135
|
content: ( localize(
|
|
136
|
-
|
|
136
|
+
7010,
|
|
137
137
|
"Queue this message to send after the current request completes. The current response will finish uninterrupted before the queued message is sent."
|
|
138
138
|
))
|
|
139
139
|
},
|
|
@@ -143,7 +143,7 @@ let ChatQueuePickerActionItem = class ChatQueuePickerActionItem extends BaseActi
|
|
|
143
143
|
};
|
|
144
144
|
const steerAction = {
|
|
145
145
|
id: ChatSteerWithMessageAction.ID,
|
|
146
|
-
label: ( localize(
|
|
146
|
+
label: ( localize(7007, "Steer with Message")),
|
|
147
147
|
tooltip: "",
|
|
148
148
|
enabled: true,
|
|
149
149
|
checked: isSteerDefault,
|
|
@@ -151,7 +151,7 @@ let ChatQueuePickerActionItem = class ChatQueuePickerActionItem extends BaseActi
|
|
|
151
151
|
class: undefined,
|
|
152
152
|
hover: {
|
|
153
153
|
content: ( localize(
|
|
154
|
-
|
|
154
|
+
7011,
|
|
155
155
|
"Send this message at the next opportunity, signaling the current request to yield. The current response will stop and the new message will be sent immediately."
|
|
156
156
|
))
|
|
157
157
|
},
|
|
@@ -161,13 +161,13 @@ let ChatQueuePickerActionItem = class ChatQueuePickerActionItem extends BaseActi
|
|
|
161
161
|
};
|
|
162
162
|
const sendAction = {
|
|
163
163
|
id: "_" + ChatSubmitAction.ID,
|
|
164
|
-
label: ( localize(
|
|
164
|
+
label: ( localize(7012, "Stop and Send")),
|
|
165
165
|
tooltip: "",
|
|
166
166
|
enabled: true,
|
|
167
167
|
icon: Codicon.arrowRight,
|
|
168
168
|
class: undefined,
|
|
169
169
|
hover: {
|
|
170
|
-
content: ( localize(
|
|
170
|
+
content: ( localize(7013, "Cancel the current request and send this message immediately."))
|
|
171
171
|
},
|
|
172
172
|
run: () => {
|
|
173
173
|
this.commandService.executeCommand(ChatSubmitAction.ID);
|
|
@@ -65,19 +65,19 @@ let ChatStatusWidget = class ChatStatusWidget extends Disposable {
|
|
|
65
65
|
this.actionButton.element.classList.add("chat-status-button");
|
|
66
66
|
if (enabledSku === "anonymous") {
|
|
67
67
|
const message = ( localize(
|
|
68
|
-
|
|
68
|
+
7014,
|
|
69
69
|
"You've reached the limit for chat messages. Sign in to use Copilot Free."
|
|
70
70
|
));
|
|
71
|
-
const buttonLabel = ( localize(
|
|
71
|
+
const buttonLabel = ( localize(7015, "Sign In"));
|
|
72
72
|
this.messageElement.textContent = message;
|
|
73
73
|
this.actionButton.label = buttonLabel;
|
|
74
|
-
this.actionButton.element.ariaLabel = ( localize(
|
|
74
|
+
this.actionButton.element.ariaLabel = ( localize(7016, "{0} {1}", message, buttonLabel));
|
|
75
75
|
} else {
|
|
76
|
-
const message = ( localize(
|
|
77
|
-
const buttonLabel = ( localize(
|
|
76
|
+
const message = ( localize(7017, "You've reached the limit for chat messages."));
|
|
77
|
+
const buttonLabel = ( localize(7018, "Upgrade"));
|
|
78
78
|
this.messageElement.textContent = message;
|
|
79
79
|
this.actionButton.label = buttonLabel;
|
|
80
|
-
this.actionButton.element.ariaLabel = ( localize(
|
|
80
|
+
this.actionButton.element.ariaLabel = ( localize(7019, "{0} {1}", message, buttonLabel));
|
|
81
81
|
}
|
|
82
82
|
this._register(this.actionButton.onDidClick(async () => {
|
|
83
83
|
const commandId = this.chatEntitlementService.anonymous ? CHAT_SETUP_ACTION_ID : "workbench.action.chat.upgradePlan";
|
package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.js
CHANGED
|
@@ -60,6 +60,7 @@ import { IChatService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/c
|
|
|
60
60
|
import { IChatDebugService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatDebugService.service';
|
|
61
61
|
import { createDebugEventsAttachment } from '@codingame/monaco-vscode-xterm-addons-common/vscode/vs/workbench/contrib/chat/browser/chatDebug/chatDebugAttachment';
|
|
62
62
|
import { getPromptFileType } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/config/promptFileLocations';
|
|
63
|
+
import { getChatSessionType } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/model/chatUri';
|
|
63
64
|
|
|
64
65
|
var BuiltinDynamicCompletions_1, ToolCompletions_1;
|
|
65
66
|
const SlashCommandWord = /\/[\p{L}0-9_.:-]*/gu;
|
|
@@ -92,12 +93,9 @@ let SlashCommandCompletions = class SlashCommandCompletions extends Disposable {
|
|
|
92
93
|
}
|
|
93
94
|
let customAgentTarget = undefined;
|
|
94
95
|
if (widget.lockedAgentId) {
|
|
95
|
-
if (!widget.attachmentCapabilities.supportsPromptAttachments) {
|
|
96
|
-
return null;
|
|
97
|
-
}
|
|
98
96
|
const sessionResource = widget.viewModel.model.sessionResource;
|
|
99
97
|
const ctx = sessionResource && chatService.getChatSessionFromInternalUri(sessionResource);
|
|
100
|
-
customAgentTarget = (ctx ? chatSessionsService.getCustomAgentTargetForSessionType(
|
|
98
|
+
customAgentTarget = (ctx ? chatSessionsService.getCustomAgentTargetForSessionType(getChatSessionType(sessionResource)) : undefined) ?? Target.Undefined;
|
|
101
99
|
}
|
|
102
100
|
const range = computeCompletionRanges(model, position, SlashCommandWord);
|
|
103
101
|
if (!range) {
|
|
@@ -117,13 +115,19 @@ let SlashCommandCompletions = class SlashCommandCompletions extends Disposable {
|
|
|
117
115
|
}
|
|
118
116
|
return {
|
|
119
117
|
suggestions: ( slashCommands.filter(c => {
|
|
118
|
+
if (!c.silent && !widget.attachmentCapabilities.supportsPromptAttachments) {
|
|
119
|
+
return false;
|
|
120
|
+
}
|
|
121
|
+
if (c.when && !widget.scopedContextKeyService.contextMatchesRules(c.when)) {
|
|
122
|
+
return false;
|
|
123
|
+
}
|
|
120
124
|
if (!widget.lockedAgentId) {
|
|
121
125
|
return true;
|
|
122
126
|
}
|
|
123
127
|
if (c.modes && c.modes.length && !c.modes.includes(ChatModeKind.Agent)) {
|
|
124
128
|
return false;
|
|
125
129
|
}
|
|
126
|
-
if (c.
|
|
130
|
+
if (c.targets && customAgentTarget && !c.targets.includes(customAgentTarget)) {
|
|
127
131
|
return false;
|
|
128
132
|
}
|
|
129
133
|
return true;
|
|
@@ -178,7 +182,7 @@ let SlashCommandCompletions = class SlashCommandCompletions extends Disposable {
|
|
|
178
182
|
return null;
|
|
179
183
|
}
|
|
180
184
|
return {
|
|
181
|
-
suggestions: ( slashCommands.map((c, i) => {
|
|
185
|
+
suggestions: ( slashCommands.filter(c => !c.when || widget.scopedContextKeyService.contextMatchesRules(c.when)).map((c, i) => {
|
|
182
186
|
const withSlash = `${chatSubcommandLeader}${c.command}`;
|
|
183
187
|
return {
|
|
184
188
|
label: {
|
|
@@ -247,7 +251,7 @@ let SlashCommandCompletions = class SlashCommandCompletions extends Disposable {
|
|
|
247
251
|
} catch {}
|
|
248
252
|
}
|
|
249
253
|
return true;
|
|
250
|
-
}).filter(c => c.parsedPromptFile?.header?.userInvocable !== false);
|
|
254
|
+
}).filter(c => c.parsedPromptFile?.header?.userInvocable !== false).filter(c => !c.when || widget.scopedContextKeyService.contextMatchesRules(c.when));
|
|
251
255
|
if (userInvocableCommands.length === 0) {
|
|
252
256
|
return null;
|
|
253
257
|
}
|
|
@@ -559,7 +563,7 @@ let AgentCompletions = class AgentCompletions extends Disposable {
|
|
|
559
563
|
if (!isEmptyUpToCompletionWord(model, range)) {
|
|
560
564
|
return;
|
|
561
565
|
}
|
|
562
|
-
const label = ( localize(
|
|
566
|
+
const label = ( localize(7026, "Install Chat Extensions..."));
|
|
563
567
|
const item = {
|
|
564
568
|
label,
|
|
565
569
|
insertText: "",
|
|
@@ -707,7 +711,7 @@ class StartParameterizedPromptAction extends Action2 {
|
|
|
707
711
|
messages = await prompt.resolve(args, cts.token);
|
|
708
712
|
} catch (e) {
|
|
709
713
|
if (!cts.token.isCancellationRequested) {
|
|
710
|
-
notificationService.error(( localize(
|
|
714
|
+
notificationService.error(( localize(7027, "Error resolving prompt: {0}", String(e))));
|
|
711
715
|
}
|
|
712
716
|
replaceTextWith("");
|
|
713
717
|
return;
|
|
@@ -735,15 +739,15 @@ class StartParameterizedPromptAction extends Action2 {
|
|
|
735
739
|
id: generateUuid(),
|
|
736
740
|
kind: "generic",
|
|
737
741
|
value: contents,
|
|
738
|
-
name: ( localize(
|
|
742
|
+
name: ( localize(7028, "Prompt Resource"))
|
|
739
743
|
});
|
|
740
744
|
}
|
|
741
745
|
} else if (mimeType && getAttachableImageExtension(mimeType)) {
|
|
742
746
|
const resized = await resizeImage(contents).catch(() => decodeBase64(contents).buffer);
|
|
743
747
|
chatWidget.attachmentModel.addContext({
|
|
744
748
|
id: generateUuid(),
|
|
745
|
-
name: ( localize(
|
|
746
|
-
fullName: ( localize(
|
|
749
|
+
name: ( localize(7029, "Prompt Image")),
|
|
750
|
+
fullName: ( localize(7029, "Prompt Image")),
|
|
747
751
|
value: resized,
|
|
748
752
|
kind: "image",
|
|
749
753
|
references: validURI && [{
|
|
@@ -980,7 +984,7 @@ let BuiltinDynamicCompletions = class BuiltinDynamicCompletions extends Disposab
|
|
|
980
984
|
result.suggestions.push({
|
|
981
985
|
label: {
|
|
982
986
|
label: text,
|
|
983
|
-
description: ( localize(
|
|
987
|
+
description: ( localize(7030, "Attach debug events snapshot"))
|
|
984
988
|
},
|
|
985
989
|
filterText: text,
|
|
986
990
|
insertText: "",
|
|
@@ -1073,7 +1077,7 @@ let BuiltinDynamicCompletions = class BuiltinDynamicCompletions extends Disposab
|
|
|
1073
1077
|
const uriLabel = this.labelService.getUriLabel(resource, {
|
|
1074
1078
|
relative: true
|
|
1075
1079
|
});
|
|
1076
|
-
const labelDescription = description ? ( localize(
|
|
1080
|
+
const labelDescription = description ? ( localize(7031, "{0} ({1})", uriLabel, description)) : uriLabel;
|
|
1077
1081
|
const sortText = boostPriority ? " " : "!";
|
|
1078
1082
|
return {
|
|
1079
1083
|
label: {
|
|
@@ -1121,7 +1125,7 @@ let BuiltinDynamicCompletions = class BuiltinDynamicCompletions extends Disposab
|
|
|
1121
1125
|
}
|
|
1122
1126
|
}
|
|
1123
1127
|
seen.add(resource);
|
|
1124
|
-
const newLen = result.suggestions.push(makeCompletionItem(resource, FileKind.FILE, i === 0 ? ( localize(
|
|
1128
|
+
const newLen = result.suggestions.push(makeCompletionItem(resource, FileKind.FILE, i === 0 ? ( localize(7032, "Active file")) : undefined, i === 0));
|
|
1125
1129
|
if (newLen - len >= 5) {
|
|
1126
1130
|
break;
|
|
1127
1131
|
}
|
|
@@ -1354,7 +1358,7 @@ let ToolCompletions = class ToolCompletions extends Disposable {
|
|
|
1354
1358
|
name = item.referenceName;
|
|
1355
1359
|
} else {
|
|
1356
1360
|
const source = item.source;
|
|
1357
|
-
detail = ( localize(
|
|
1361
|
+
detail = ( localize(7033, "{0}: {1}", source.label, item.displayName));
|
|
1358
1362
|
name = item.toolReferenceName ?? item.displayName;
|
|
1359
1363
|
documentation = item.userDescription ?? item.modelDescription;
|
|
1360
1364
|
}
|
package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorContrib.js
CHANGED
|
@@ -5,7 +5,9 @@ import { Disposable, MutableDisposable } from '@codingame/monaco-vscode-api/vsco
|
|
|
5
5
|
import '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/index';
|
|
6
6
|
import { themeColorFromId } from '@codingame/monaco-vscode-api/vscode/vs/base/common/themables';
|
|
7
7
|
import { URI } from '@codingame/monaco-vscode-api/vscode/vs/base/common/uri';
|
|
8
|
+
import { MouseTargetType } from '@codingame/monaco-vscode-api/vscode/vs/editor/browser/editorBrowser';
|
|
8
9
|
import { ICodeEditorService } from '@codingame/monaco-vscode-api/vscode/vs/editor/browser/services/codeEditorService.service';
|
|
10
|
+
import { Position } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/core/position';
|
|
9
11
|
import { Range } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/core/range';
|
|
10
12
|
import { TrackedRangeStickiness } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/model';
|
|
11
13
|
import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
|
|
@@ -23,6 +25,7 @@ import '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/colors/quic
|
|
|
23
25
|
import '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/colors/searchColors';
|
|
24
26
|
import { IThemeService } from '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/themeService.service';
|
|
25
27
|
import { IChatAgentService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/participants/chatAgents.service';
|
|
28
|
+
import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
26
29
|
import { chatSlashCommandBackground, chatSlashCommandForeground } from '@codingame/monaco-vscode-katex-common/vscode/vs/workbench/contrib/chat/common/widget/chatColors';
|
|
27
30
|
import { ChatRequestTextPart, ChatRequestSlashPromptPart, ChatRequestAgentPart, ChatRequestAgentSubcommandPart, ChatRequestSlashCommandPart, ChatRequestToolPart, ChatRequestToolSetPart, ChatRequestDynamicVariablePart, chatAgentLeader, chatSubcommandLeader } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/requestParser/chatParserTypes';
|
|
28
31
|
import { ChatRequestParser } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/requestParser/chatRequestParser';
|
|
@@ -33,12 +36,14 @@ import { dynamicVariableDecorationType } from '@codingame/monaco-vscode-api/vsco
|
|
|
33
36
|
import { NativeEditContextRegistry } from '@codingame/monaco-vscode-api/vscode/vs/editor/browser/controller/editContext/native/nativeEditContextRegistry';
|
|
34
37
|
import { TextAreaEditContextRegistry } from '@codingame/monaco-vscode-api/vscode/vs/editor/browser/controller/editContext/textArea/textAreaEditContextRegistry';
|
|
35
38
|
import { ThrottledDelayer } from '@codingame/monaco-vscode-api/vscode/vs/base/common/async';
|
|
39
|
+
import { IEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service';
|
|
36
40
|
import { autorun } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/reactions/autorun';
|
|
37
41
|
|
|
38
42
|
var InputEditorDecorations_1;
|
|
39
43
|
const decorationDescription = "chat";
|
|
40
44
|
const placeholderDecorationType = "chat-session-detail";
|
|
41
45
|
const slashCommandTextDecorationType = "chat-session-text";
|
|
46
|
+
const clickableSlashPromptTextDecorationType = "chat-session-clickable-text";
|
|
42
47
|
const variableTextDecorationType = "chat-variable-text";
|
|
43
48
|
function agentAndCommandToKey(agent, subcommand) {
|
|
44
49
|
return subcommand ? `${agent.id}__${subcommand}` : agent.id;
|
|
@@ -75,7 +80,8 @@ let InputEditorDecorations = class InputEditorDecorations extends Disposable {
|
|
|
75
80
|
themeService,
|
|
76
81
|
chatAgentService,
|
|
77
82
|
labelService,
|
|
78
|
-
promptsService
|
|
83
|
+
promptsService,
|
|
84
|
+
editorService
|
|
79
85
|
) {
|
|
80
86
|
super();
|
|
81
87
|
this.widget = widget;
|
|
@@ -84,6 +90,7 @@ let InputEditorDecorations = class InputEditorDecorations extends Disposable {
|
|
|
84
90
|
this.chatAgentService = chatAgentService;
|
|
85
91
|
this.labelService = labelService;
|
|
86
92
|
this.promptsService = promptsService;
|
|
93
|
+
this.editorService = editorService;
|
|
87
94
|
this.id = "inputEditorDecorations";
|
|
88
95
|
this.previouslyUsedAgents = ( new Set());
|
|
89
96
|
this.viewModelDisposables = this._register(( new MutableDisposable()));
|
|
@@ -104,6 +111,34 @@ let InputEditorDecorations = class InputEditorDecorations extends Disposable {
|
|
|
104
111
|
this._register(this.widget.onDidSubmitAgent(e => {
|
|
105
112
|
this.previouslyUsedAgents.add(agentAndCommandToKey(e.agent, e.slashCommand?.name));
|
|
106
113
|
}));
|
|
114
|
+
this._register(this.widget.inputEditor.onMouseDown(e => {
|
|
115
|
+
this.mouseDownPromptSlashCommand = undefined;
|
|
116
|
+
if (!e.event.leftButton || e.target.type !== MouseTargetType.CONTENT_TEXT || !e.target.position) {
|
|
117
|
+
return;
|
|
118
|
+
}
|
|
119
|
+
const clickablePromptSlashCommand = this.clickablePromptSlashCommand;
|
|
120
|
+
if (!clickablePromptSlashCommand || !clickablePromptSlashCommand.range.containsPosition(e.target.position)) {
|
|
121
|
+
return;
|
|
122
|
+
}
|
|
123
|
+
this.mouseDownPromptSlashCommand = {
|
|
124
|
+
position: Position.lift(e.target.position),
|
|
125
|
+
uri: clickablePromptSlashCommand.uri,
|
|
126
|
+
range: clickablePromptSlashCommand.range
|
|
127
|
+
};
|
|
128
|
+
}));
|
|
129
|
+
this._register(this.widget.inputEditor.onMouseUp(e => {
|
|
130
|
+
const mouseDownPromptSlashCommand = this.mouseDownPromptSlashCommand;
|
|
131
|
+
this.mouseDownPromptSlashCommand = undefined;
|
|
132
|
+
if (!mouseDownPromptSlashCommand || e.target.type !== MouseTargetType.CONTENT_TEXT || !e.target.position) {
|
|
133
|
+
return;
|
|
134
|
+
}
|
|
135
|
+
if (!mouseDownPromptSlashCommand.range.containsPosition(e.target.position) || !Position.equals(mouseDownPromptSlashCommand.position, e.target.position)) {
|
|
136
|
+
return;
|
|
137
|
+
}
|
|
138
|
+
void this.editorService.openEditor({
|
|
139
|
+
resource: mouseDownPromptSlashCommand.uri
|
|
140
|
+
});
|
|
141
|
+
}));
|
|
107
142
|
this._register(
|
|
108
143
|
this.chatAgentService.onDidChangeAgents(() => this.triggerInputEditorDecorationsUpdate())
|
|
109
144
|
);
|
|
@@ -137,6 +172,14 @@ let InputEditorDecorations = class InputEditorDecorations extends Disposable {
|
|
|
137
172
|
borderRadius: "3px"
|
|
138
173
|
})
|
|
139
174
|
);
|
|
175
|
+
this._register(
|
|
176
|
+
this.codeEditorService.registerDecorationType(decorationDescription, clickableSlashPromptTextDecorationType, {
|
|
177
|
+
color: themeColorFromId(chatSlashCommandForeground),
|
|
178
|
+
backgroundColor: themeColorFromId(chatSlashCommandBackground),
|
|
179
|
+
borderRadius: "3px",
|
|
180
|
+
cursor: "pointer"
|
|
181
|
+
})
|
|
182
|
+
);
|
|
140
183
|
this._register(
|
|
141
184
|
this.codeEditorService.registerDecorationType(decorationDescription, variableTextDecorationType, {
|
|
142
185
|
color: themeColorFromId(chatSlashCommandForeground),
|
|
@@ -255,6 +298,8 @@ let InputEditorDecorations = class InputEditorDecorations extends Disposable {
|
|
|
255
298
|
);
|
|
256
299
|
}
|
|
257
300
|
async updateAsyncInputEditorDecorations(token) {
|
|
301
|
+
this.clickablePromptSlashCommand = undefined;
|
|
302
|
+
this.widget.inputEditor.setDecorationsByType(decorationDescription, clickableSlashPromptTextDecorationType, []);
|
|
258
303
|
const parsedRequest = this.widget.parsedInput.parts;
|
|
259
304
|
const agentPart = parsedRequest.find(p => p instanceof ChatRequestAgentPart);
|
|
260
305
|
const agentSubcommandPart = parsedRequest.find(p => p instanceof ChatRequestAgentSubcommandPart);
|
|
@@ -299,9 +344,27 @@ let InputEditorDecorations = class InputEditorDecorations extends Disposable {
|
|
|
299
344
|
});
|
|
300
345
|
}
|
|
301
346
|
if (slashPromptPart && promptSlashCommand) {
|
|
302
|
-
|
|
303
|
-
range: slashPromptPart.editorRange
|
|
304
|
-
|
|
347
|
+
this.clickablePromptSlashCommand = {
|
|
348
|
+
range: Range.lift(slashPromptPart.editorRange),
|
|
349
|
+
uri: promptSlashCommand.promptPath.uri
|
|
350
|
+
};
|
|
351
|
+
const promptHoverMessage = ( new MarkdownString());
|
|
352
|
+
promptHoverMessage.appendText(( localize(
|
|
353
|
+
7034,
|
|
354
|
+
"Click to open {0}",
|
|
355
|
+
this.labelService.getUriLabel(promptSlashCommand.promptPath.uri, {
|
|
356
|
+
relative: true
|
|
357
|
+
})
|
|
358
|
+
)));
|
|
359
|
+
const promptDecoration = {
|
|
360
|
+
range: slashPromptPart.editorRange,
|
|
361
|
+
hoverMessage: promptHoverMessage
|
|
362
|
+
};
|
|
363
|
+
this.widget.inputEditor.setDecorationsByType(
|
|
364
|
+
decorationDescription,
|
|
365
|
+
clickableSlashPromptTextDecorationType,
|
|
366
|
+
[promptDecoration]
|
|
367
|
+
);
|
|
305
368
|
}
|
|
306
369
|
this.widget.inputEditor.setDecorationsByType(decorationDescription, slashCommandTextDecorationType, textDecorations);
|
|
307
370
|
const varDecorations = [];
|
|
@@ -349,7 +412,7 @@ let InputEditorDecorations = class InputEditorDecorations extends Disposable {
|
|
|
349
412
|
}
|
|
350
413
|
}
|
|
351
414
|
};
|
|
352
|
-
InputEditorDecorations = InputEditorDecorations_1 = ( __decorate([( __param(1, ICodeEditorService)), ( __param(2, IThemeService)), ( __param(3, IChatAgentService)), ( __param(4, ILabelService)), ( __param(5, IPromptsService))], InputEditorDecorations));
|
|
415
|
+
InputEditorDecorations = InputEditorDecorations_1 = ( __decorate([( __param(1, ICodeEditorService)), ( __param(2, IThemeService)), ( __param(3, IChatAgentService)), ( __param(4, ILabelService)), ( __param(5, IPromptsService)), ( __param(6, IEditorService))], InputEditorDecorations));
|
|
353
416
|
class InputEditorSlashCommandMode extends Disposable {
|
|
354
417
|
constructor(widget) {
|
|
355
418
|
super();
|
package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorHover.js
CHANGED
|
@@ -62,7 +62,7 @@ let ChatAgentHoverParticipant = class ChatAgentHoverParticipant {
|
|
|
62
62
|
return ( new RenderedHoverParts([renderedHoverPart]));
|
|
63
63
|
}
|
|
64
64
|
getAccessibleContent(hoverPart) {
|
|
65
|
-
return localize(
|
|
65
|
+
return localize(7035, "There is a chat agent hover part here.");
|
|
66
66
|
}
|
|
67
67
|
};
|
|
68
68
|
ChatAgentHoverParticipant = ( __decorate([( __param(1, IInstantiationService)), ( __param(2, IChatWidgetService)), ( __param(3, ICommandService))], ChatAgentHoverParticipant));
|
|
@@ -253,7 +253,7 @@ let QuickChat = class QuickChat extends Disposable {
|
|
|
253
253
|
disclaimerElement.classList.toggle("hidden", !showDisclaimer);
|
|
254
254
|
if (showDisclaimer) {
|
|
255
255
|
const renderedMarkdown = disposables.add(this.markdownRendererService.render(( new MarkdownString(( localize(
|
|
256
|
-
|
|
256
|
+
7081,
|
|
257
257
|
"By continuing with {0} Copilot, you agree to {1}'s [Terms]({2}) and [Privacy Statement]({3})",
|
|
258
258
|
product.defaultChatAgent?.provider?.default?.name ?? "",
|
|
259
259
|
product.defaultChatAgent?.provider?.default?.name ?? "",
|
|
@@ -174,7 +174,7 @@ let ChatEditor = class ChatEditor extends AbstractEditorWithViewState {
|
|
|
174
174
|
let isContributedChatSession = false;
|
|
175
175
|
const chatSessionType = input.getSessionType();
|
|
176
176
|
if (chatSessionType !== localChatSessionType) {
|
|
177
|
-
const loadingMessage = ( localize(
|
|
177
|
+
const loadingMessage = ( localize(7082, "Loading..."));
|
|
178
178
|
this.showLoadingInChatWidget(loadingMessage);
|
|
179
179
|
}
|
|
180
180
|
await super.setInput(input, options, context, token);
|
|
@@ -56,6 +56,7 @@ export declare class ChatViewPane extends ViewPane implements IViewWelcomeDelega
|
|
|
56
56
|
private readonly lastDimensionsPerOrientation;
|
|
57
57
|
private welcomeController;
|
|
58
58
|
private restoringSession;
|
|
59
|
+
private readonly loadSessionCts;
|
|
59
60
|
private readonly modelRef;
|
|
60
61
|
private readonly activityBadge;
|
|
61
62
|
constructor(options: IViewPaneOptions, keybindingService: IKeybindingService, contextMenuService: IContextMenuService, configurationService: IConfigurationService, contextKeyService: IContextKeyService, viewDescriptorService: IViewDescriptorService, instantiationService: IInstantiationService, openerService: IOpenerService, themeService: IThemeService, hoverService: IHoverService, storageService: IStorageService, chatService: IChatService, chatAgentService: IChatAgentService, logService: ILogService, notificationService: INotificationService, layoutService: IWorkbenchLayoutService, chatSessionsService: IChatSessionsService, telemetryService: ITelemetryService, lifecycleService: ILifecycleService, progressService: IProgressService, agentSessionsService: IAgentSessionsService, chatEntitlementService: IChatEntitlementService, commandService: ICommandService, activityService: IActivityService, workbenchEnvironmentService: IWorkbenchEnvironmentService, hostService: IHostService);
|