@codingame/monaco-vscode-chat-service-override 28.4.1 → 29.1.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
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { URI } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri";
|
|
2
|
+
import { ICommandService } from "@codingame/monaco-vscode-api/vscode/vs/platform/commands/common/commands.service";
|
|
3
|
+
import { IFileService } from "@codingame/monaco-vscode-api/vscode/vs/platform/files/common/files.service";
|
|
4
|
+
import { IChatRequestViewModel, IChatResponseViewModel } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/model/chatViewModel";
|
|
5
|
+
import { IChatWidgetService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat.service";
|
|
6
|
+
import { IChatImageCarouselService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chatImageCarouselService.service";
|
|
7
|
+
export interface ICarouselImage {
|
|
8
|
+
readonly id: string;
|
|
9
|
+
readonly name: string;
|
|
10
|
+
readonly mimeType: string;
|
|
11
|
+
readonly data: Uint8Array;
|
|
12
|
+
readonly caption?: string;
|
|
13
|
+
}
|
|
14
|
+
export interface ICarouselSection {
|
|
15
|
+
readonly title: string;
|
|
16
|
+
readonly images: ICarouselImage[];
|
|
17
|
+
}
|
|
18
|
+
export interface ICarouselCollectionArgs {
|
|
19
|
+
readonly collection: {
|
|
20
|
+
readonly id: string;
|
|
21
|
+
readonly title: string;
|
|
22
|
+
readonly sections: ICarouselSection[];
|
|
23
|
+
};
|
|
24
|
+
readonly startIndex: number;
|
|
25
|
+
}
|
|
26
|
+
export interface ICarouselSingleImageArgs {
|
|
27
|
+
readonly name: string;
|
|
28
|
+
readonly mimeType: string;
|
|
29
|
+
readonly data: Uint8Array;
|
|
30
|
+
readonly title: string;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Collects all carousel image sections from chat items.
|
|
34
|
+
* Each request/response pair with images becomes one section containing
|
|
35
|
+
* user attachment images, tool invocation images, and inline reference images.
|
|
36
|
+
*/
|
|
37
|
+
export declare function collectCarouselSections(items: (IChatRequestViewModel | IChatResponseViewModel)[], readFile: (uri: URI) => Promise<Uint8Array>): Promise<ICarouselSection[]>;
|
|
38
|
+
/**
|
|
39
|
+
* Finds the global index of the clicked image across all carousel sections.
|
|
40
|
+
* Tries URI string match, then parsed URI equality, then data buffer equality.
|
|
41
|
+
*/
|
|
42
|
+
export declare function findClickedImageIndex(sections: ICarouselSection[], resource: URI, data?: Uint8Array): number;
|
|
43
|
+
/**
|
|
44
|
+
* Builds the collection arguments for the carousel command.
|
|
45
|
+
*/
|
|
46
|
+
export declare function buildCollectionArgs(sections: ICarouselSection[], clickedGlobalIndex: number, sessionResource: URI): ICarouselCollectionArgs;
|
|
47
|
+
/**
|
|
48
|
+
* Builds the single-image arguments for the carousel command.
|
|
49
|
+
*/
|
|
50
|
+
export declare function buildSingleImageArgs(resource: URI, data: Uint8Array): ICarouselSingleImageArgs;
|
|
51
|
+
export declare class ChatImageCarouselService implements IChatImageCarouselService {
|
|
52
|
+
private readonly chatWidgetService;
|
|
53
|
+
private readonly commandService;
|
|
54
|
+
private readonly fileService;
|
|
55
|
+
readonly _serviceBrand: undefined;
|
|
56
|
+
constructor(chatWidgetService: IChatWidgetService, commandService: ICommandService, fileService: IFileService);
|
|
57
|
+
openCarouselAtResource(resource: URI, data?: Uint8Array): Promise<void>;
|
|
58
|
+
private openSingleImage;
|
|
59
|
+
}
|
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
|
|
2
|
+
import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
|
|
3
|
+
import { getMediaMime } from '@codingame/monaco-vscode-api/vscode/vs/base/common/mime';
|
|
4
|
+
import { isEqual } from '@codingame/monaco-vscode-api/vscode/vs/base/common/resources';
|
|
5
|
+
import { URI } from '@codingame/monaco-vscode-api/vscode/vs/base/common/uri';
|
|
6
|
+
import { VSBuffer } from '@codingame/monaco-vscode-api/vscode/vs/base/common/buffer';
|
|
7
|
+
import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
8
|
+
import { ICommandService } from '@codingame/monaco-vscode-api/vscode/vs/platform/commands/common/commands.service';
|
|
9
|
+
import { IFileService } from '@codingame/monaco-vscode-api/vscode/vs/platform/files/common/files.service';
|
|
10
|
+
import { extractImagesFromChatResponse, extractImagesFromChatRequest } from '@codingame/monaco-vscode-katex-common/vscode/vs/workbench/contrib/chat/common/chatImageExtraction';
|
|
11
|
+
import { isRequestVM, isResponseVM } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/model/chatViewModel';
|
|
12
|
+
import { IChatWidgetService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat.service';
|
|
13
|
+
|
|
14
|
+
async function collectCarouselSections(items, readFile) {
|
|
15
|
+
const sections = [];
|
|
16
|
+
const requestMap = ( new Map());
|
|
17
|
+
for (const item of items) {
|
|
18
|
+
if (isRequestVM(item)) {
|
|
19
|
+
requestMap.set(item.id, item);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
for (const item of items) {
|
|
23
|
+
if (!isResponseVM(item)) {
|
|
24
|
+
continue;
|
|
25
|
+
}
|
|
26
|
+
const {
|
|
27
|
+
title: extractedTitle,
|
|
28
|
+
images: responseImages
|
|
29
|
+
} = await extractImagesFromChatResponse(item, async uri => VSBuffer.wrap(await readFile(uri)));
|
|
30
|
+
const request = requestMap.get(item.requestId);
|
|
31
|
+
const requestImages = request ? extractImagesFromChatRequest(request) : [];
|
|
32
|
+
const allImages = [...requestImages, ...responseImages];
|
|
33
|
+
const dedupedImages = deduplicateConsecutiveImages(allImages);
|
|
34
|
+
if (dedupedImages.length > 0) {
|
|
35
|
+
sections.push({
|
|
36
|
+
title: request?.messageText ?? extractedTitle,
|
|
37
|
+
images: ( dedupedImages.map((
|
|
38
|
+
{
|
|
39
|
+
uri,
|
|
40
|
+
name,
|
|
41
|
+
mimeType,
|
|
42
|
+
data,
|
|
43
|
+
caption
|
|
44
|
+
}
|
|
45
|
+
) => ({
|
|
46
|
+
id: ( uri.toString()),
|
|
47
|
+
name,
|
|
48
|
+
mimeType,
|
|
49
|
+
data: data.buffer,
|
|
50
|
+
caption
|
|
51
|
+
})))
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
const respondedRequestIds = ( new Set(( items.filter(isResponseVM).map(r => r.requestId))));
|
|
56
|
+
for (const item of items) {
|
|
57
|
+
if (!isRequestVM(item) || ( respondedRequestIds.has(item.id))) {
|
|
58
|
+
continue;
|
|
59
|
+
}
|
|
60
|
+
const requestImages = extractImagesFromChatRequest(item);
|
|
61
|
+
const dedupedImages = deduplicateConsecutiveImages(requestImages);
|
|
62
|
+
if (dedupedImages.length > 0) {
|
|
63
|
+
sections.push({
|
|
64
|
+
title: item.messageText,
|
|
65
|
+
images: ( dedupedImages.map((
|
|
66
|
+
{
|
|
67
|
+
uri,
|
|
68
|
+
name,
|
|
69
|
+
mimeType,
|
|
70
|
+
data,
|
|
71
|
+
caption
|
|
72
|
+
}
|
|
73
|
+
) => ({
|
|
74
|
+
id: ( uri.toString()),
|
|
75
|
+
name,
|
|
76
|
+
mimeType,
|
|
77
|
+
data: data.buffer,
|
|
78
|
+
caption
|
|
79
|
+
})))
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
return sections;
|
|
84
|
+
}
|
|
85
|
+
function deduplicateConsecutiveImages(images) {
|
|
86
|
+
return images.filter((img, index) => {
|
|
87
|
+
if (index === 0) {
|
|
88
|
+
return true;
|
|
89
|
+
}
|
|
90
|
+
return !isEqual(images[index - 1].uri, img.uri);
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
function findClickedImageIndex(sections, resource, data) {
|
|
94
|
+
let globalOffset = 0;
|
|
95
|
+
for (const section of sections) {
|
|
96
|
+
const localIndex = findImageInListByUri(section.images, resource);
|
|
97
|
+
if (localIndex >= 0) {
|
|
98
|
+
return globalOffset + localIndex;
|
|
99
|
+
}
|
|
100
|
+
globalOffset += section.images.length;
|
|
101
|
+
}
|
|
102
|
+
if (!data) {
|
|
103
|
+
return -1;
|
|
104
|
+
}
|
|
105
|
+
globalOffset = 0;
|
|
106
|
+
for (const section of sections) {
|
|
107
|
+
const localIndex = findImageInListByData(section.images, data);
|
|
108
|
+
if (localIndex >= 0) {
|
|
109
|
+
return globalOffset + localIndex;
|
|
110
|
+
}
|
|
111
|
+
globalOffset += section.images.length;
|
|
112
|
+
}
|
|
113
|
+
return -1;
|
|
114
|
+
}
|
|
115
|
+
function findImageInListByUri(images, resource) {
|
|
116
|
+
const uriStr = ( resource.toString());
|
|
117
|
+
const byUri = images.findIndex(img => img.id === uriStr);
|
|
118
|
+
if (byUri >= 0) {
|
|
119
|
+
return byUri;
|
|
120
|
+
}
|
|
121
|
+
const byParsedUri = images.findIndex(img => {
|
|
122
|
+
try {
|
|
123
|
+
return isEqual(( URI.parse(img.id)), resource);
|
|
124
|
+
} catch {
|
|
125
|
+
return false;
|
|
126
|
+
}
|
|
127
|
+
});
|
|
128
|
+
if (byParsedUri >= 0) {
|
|
129
|
+
return byParsedUri;
|
|
130
|
+
}
|
|
131
|
+
return -1;
|
|
132
|
+
}
|
|
133
|
+
function findImageInListByData(images, data) {
|
|
134
|
+
const wrapped = VSBuffer.wrap(data);
|
|
135
|
+
return images.findIndex(img => VSBuffer.wrap(img.data).equals(wrapped));
|
|
136
|
+
}
|
|
137
|
+
function buildCollectionArgs(sections, clickedGlobalIndex, sessionResource) {
|
|
138
|
+
const collectionId = ( sessionResource.toString()) + "_carousel";
|
|
139
|
+
const defaultTitle = ( localize(6015, "Conversation Images"));
|
|
140
|
+
return {
|
|
141
|
+
collection: {
|
|
142
|
+
id: collectionId,
|
|
143
|
+
title: sections.length === 1 ? (sections[0].title || defaultTitle) : defaultTitle,
|
|
144
|
+
sections
|
|
145
|
+
},
|
|
146
|
+
startIndex: clickedGlobalIndex
|
|
147
|
+
};
|
|
148
|
+
}
|
|
149
|
+
function buildSingleImageArgs(resource, data) {
|
|
150
|
+
const name = resource.path.split("/").pop() ?? "image";
|
|
151
|
+
const mimeType = getMediaMime(resource.path) ?? getMediaMime(name) ?? "image/png";
|
|
152
|
+
return {
|
|
153
|
+
name,
|
|
154
|
+
mimeType,
|
|
155
|
+
data,
|
|
156
|
+
title: name
|
|
157
|
+
};
|
|
158
|
+
}
|
|
159
|
+
const CAROUSEL_COMMAND = "workbench.action.chat.openImageInCarousel";
|
|
160
|
+
let ChatImageCarouselService = class ChatImageCarouselService {
|
|
161
|
+
constructor(chatWidgetService, commandService, fileService) {
|
|
162
|
+
this.chatWidgetService = chatWidgetService;
|
|
163
|
+
this.commandService = commandService;
|
|
164
|
+
this.fileService = fileService;
|
|
165
|
+
}
|
|
166
|
+
async openCarouselAtResource(resource, data) {
|
|
167
|
+
const widget = this.chatWidgetService.lastFocusedWidget;
|
|
168
|
+
if (!widget?.viewModel) {
|
|
169
|
+
await this.openSingleImage(resource, data);
|
|
170
|
+
return;
|
|
171
|
+
}
|
|
172
|
+
const items = widget.viewModel.getItems().filter(item => isRequestVM(item) || isResponseVM(item));
|
|
173
|
+
const readFile = async uri => (await this.fileService.readFile(uri)).value.buffer;
|
|
174
|
+
const sections = await collectCarouselSections(items, readFile);
|
|
175
|
+
const clickedGlobalIndex = findClickedImageIndex(sections, resource, data);
|
|
176
|
+
if (clickedGlobalIndex === -1 || sections.length === 0) {
|
|
177
|
+
await this.openSingleImage(resource, data);
|
|
178
|
+
return;
|
|
179
|
+
}
|
|
180
|
+
const args = buildCollectionArgs(sections, clickedGlobalIndex, widget.viewModel.sessionResource);
|
|
181
|
+
await this.commandService.executeCommand(CAROUSEL_COMMAND, args);
|
|
182
|
+
}
|
|
183
|
+
async openSingleImage(resource, data) {
|
|
184
|
+
if (!data) {
|
|
185
|
+
const content = await this.fileService.readFile(resource);
|
|
186
|
+
data = content.value.buffer;
|
|
187
|
+
}
|
|
188
|
+
const args = buildSingleImageArgs(resource, data);
|
|
189
|
+
await this.commandService.executeCommand(CAROUSEL_COMMAND, args);
|
|
190
|
+
}
|
|
191
|
+
};
|
|
192
|
+
ChatImageCarouselService = ( __decorate([( __param(0, IChatWidgetService)), ( __param(1, ICommandService)), ( __param(2, IFileService))], ChatImageCarouselService));
|
|
193
|
+
|
|
194
|
+
export { ChatImageCarouselService, buildCollectionArgs, buildSingleImageArgs, collectCarouselSections, findClickedImageIndex };
|
package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.js
CHANGED
|
@@ -10,7 +10,6 @@ import { KeybindingWeight } from '@codingame/monaco-vscode-api/vscode/vs/platfor
|
|
|
10
10
|
import { Registry } from '@codingame/monaco-vscode-api/vscode/vs/platform/registry/common/platform';
|
|
11
11
|
import { EditorPaneDescriptor } from '@codingame/monaco-vscode-api/vscode/vs/workbench/browser/editor';
|
|
12
12
|
import { EditorExtensions } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/editor';
|
|
13
|
-
import { MODAL_GROUP } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService';
|
|
14
13
|
import { IEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service';
|
|
15
14
|
import { ResourceContextKey } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/contextkeys';
|
|
16
15
|
import { ChatContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/actions/chatContextKeys';
|
|
@@ -24,7 +23,7 @@ import { registerIcon } from '@codingame/monaco-vscode-api/vscode/vs/platform/th
|
|
|
24
23
|
import { Disposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
|
|
25
24
|
import { registerWorkbenchContribution2, WorkbenchPhase } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/contributions';
|
|
26
25
|
|
|
27
|
-
const languageModelsOpenSettingsIcon = registerIcon("language-models-open-settings", Codicon.goToFile, ( localize(
|
|
26
|
+
const languageModelsOpenSettingsIcon = registerIcon("language-models-open-settings", Codicon.goToFile, ( localize(6016, "Icon for open language models settings commands.")));
|
|
28
27
|
const LANGUAGE_MODELS_ENTITLEMENT_PRECONDITION = ( ContextKeyExpr.and(ChatContextKeys.enabled, ( ContextKeyExpr.or(
|
|
29
28
|
ChatContextKeys.Entitlement.planFree,
|
|
30
29
|
ChatContextKeys.Entitlement.planPro,
|
|
@@ -34,11 +33,11 @@ const LANGUAGE_MODELS_ENTITLEMENT_PRECONDITION = ( ContextKeyExpr.and(ChatContex
|
|
|
34
33
|
ChatContextKeys.Entitlement.internal
|
|
35
34
|
))));
|
|
36
35
|
( Registry.as(EditorExtensions.EditorPane)).registerEditorPane(
|
|
37
|
-
EditorPaneDescriptor.create(ChatManagementEditor, ChatManagementEditor.ID, ( localize(
|
|
36
|
+
EditorPaneDescriptor.create(ChatManagementEditor, ChatManagementEditor.ID, ( localize(6017, "Chat Management Editor"))),
|
|
38
37
|
[( new SyncDescriptor(ChatManagementEditorInput))]
|
|
39
38
|
);
|
|
40
39
|
( Registry.as(EditorExtensions.EditorPane)).registerEditorPane(
|
|
41
|
-
EditorPaneDescriptor.create(ModelsManagementEditor, ModelsManagementEditor.ID, ( localize(
|
|
40
|
+
EditorPaneDescriptor.create(ModelsManagementEditor, ModelsManagementEditor.ID, ( localize(6018, "Models Management Editor"))),
|
|
42
41
|
[( new SyncDescriptor(ModelsManagementEditorInput))]
|
|
43
42
|
);
|
|
44
43
|
class ChatManagementEditorInputSerializer {
|
|
@@ -80,7 +79,7 @@ let ChatManagementActionsContribution = class ChatManagementActionsContribution
|
|
|
80
79
|
constructor() {
|
|
81
80
|
super({
|
|
82
81
|
id: MANAGE_CHAT_COMMAND_ID,
|
|
83
|
-
title: ( localize2(
|
|
82
|
+
title: ( localize2(6019, "Manage Language Models")),
|
|
84
83
|
category: CHAT_CATEGORY,
|
|
85
84
|
precondition: LANGUAGE_MODELS_ENTITLEMENT_PRECONDITION,
|
|
86
85
|
f1: true
|
|
@@ -90,7 +89,7 @@ let ChatManagementActionsContribution = class ChatManagementActionsContribution
|
|
|
90
89
|
const editorService = accessor.get(IEditorService);
|
|
91
90
|
return editorService.openEditor(( new ModelsManagementEditorInput()), {
|
|
92
91
|
pinned: true
|
|
93
|
-
}
|
|
92
|
+
});
|
|
94
93
|
}
|
|
95
94
|
}));
|
|
96
95
|
this._register(registerAction2(class extends Action2 {
|
|
@@ -103,7 +102,7 @@ let ChatManagementActionsContribution = class ChatManagementActionsContribution
|
|
|
103
102
|
weight: KeybindingWeight.EditorContrib,
|
|
104
103
|
when: CONTEXT_MODELS_SEARCH_FOCUS
|
|
105
104
|
},
|
|
106
|
-
title: ( localize2(
|
|
105
|
+
title: ( localize2(6020, "Clear Models Search Results"))
|
|
107
106
|
});
|
|
108
107
|
}
|
|
109
108
|
run(accessor) {
|
|
@@ -118,7 +117,7 @@ let ChatManagementActionsContribution = class ChatManagementActionsContribution
|
|
|
118
117
|
constructor() {
|
|
119
118
|
super({
|
|
120
119
|
id: "workbench.action.openLanguageModelsJson",
|
|
121
|
-
title: ( localize2(
|
|
120
|
+
title: ( localize2(6021, "Open Language Models (JSON)")),
|
|
122
121
|
category: CHAT_CATEGORY,
|
|
123
122
|
precondition: LANGUAGE_MODELS_ENTITLEMENT_PRECONDITION,
|
|
124
123
|
f1: true
|
|
@@ -136,7 +135,7 @@ let ChatManagementActionsContribution = class ChatManagementActionsContribution
|
|
|
136
135
|
MenuRegistry.appendMenuItem(MenuId.EditorTitle, {
|
|
137
136
|
command: {
|
|
138
137
|
id: MANAGE_CHAT_COMMAND_ID,
|
|
139
|
-
title: ( localize2(
|
|
138
|
+
title: ( localize2(6019, "Manage Language Models")),
|
|
140
139
|
icon: languageModelsOpenSettingsIcon
|
|
141
140
|
},
|
|
142
141
|
when: openModelsManagementEditorWhen,
|
|
@@ -147,7 +146,7 @@ let ChatManagementActionsContribution = class ChatManagementActionsContribution
|
|
|
147
146
|
MenuRegistry.appendMenuItem(MenuId.EditorTitle, {
|
|
148
147
|
command: {
|
|
149
148
|
id: "workbench.action.openLanguageModelsJson",
|
|
150
|
-
title: ( localize2(
|
|
149
|
+
title: ( localize2(6021, "Open Language Models (JSON)")),
|
|
151
150
|
icon: languageModelsOpenSettingsIcon
|
|
152
151
|
},
|
|
153
152
|
when: openLanguageModelsJsonWhen,
|
|
@@ -102,7 +102,7 @@ let ModelsManagementEditor = class ModelsManagementEditor extends EditorPane {
|
|
|
102
102
|
}
|
|
103
103
|
};
|
|
104
104
|
ModelsManagementEditor = ModelsManagementEditor_1 = ( __decorate([( __param(1, ITelemetryService)), ( __param(2, IThemeService)), ( __param(3, IStorageService)), ( __param(4, IInstantiationService)), ( __param(5, IContextKeyService))], ModelsManagementEditor));
|
|
105
|
-
const chatManagementSashBorder = registerColor("chatManagement.sashBorder", PANEL_BORDER, ( localize(
|
|
105
|
+
const chatManagementSashBorder = registerColor("chatManagement.sashBorder", PANEL_BORDER, ( localize(6022, "The color of the Chat Management editor splitview sash border.")));
|
|
106
106
|
function isNewUser(chatEntitlementService) {
|
|
107
107
|
return !chatEntitlementService.sentiment.installed || chatEntitlementService.entitlement === ChatEntitlement.Available;
|
|
108
108
|
}
|
|
@@ -192,10 +192,10 @@ let ChatManagementEditor = class ChatManagementEditor extends EditorPane {
|
|
|
192
192
|
renderSidebar(parent) {
|
|
193
193
|
this.sections = [{
|
|
194
194
|
id: CHAT_MANAGEMENT_SECTION_USAGE,
|
|
195
|
-
label: ( localize(
|
|
195
|
+
label: ( localize(6023, "Usage"))
|
|
196
196
|
}, {
|
|
197
197
|
id: CHAT_MANAGEMENT_SECTION_MODELS,
|
|
198
|
-
label: ( localize(
|
|
198
|
+
label: ( localize(6024, "Models"))
|
|
199
199
|
}];
|
|
200
200
|
const delegate = ( new SectionItemDelegate());
|
|
201
201
|
const renderer = ( new SectionItemRenderer());
|
|
@@ -209,7 +209,7 @@ let ChatManagementEditor = class ChatManagementEditor extends EditorPane {
|
|
|
209
209
|
return element.label;
|
|
210
210
|
},
|
|
211
211
|
getWidgetAriaLabel() {
|
|
212
|
-
return localize(
|
|
212
|
+
return localize(6025, "Sections");
|
|
213
213
|
}
|
|
214
214
|
},
|
|
215
215
|
openOnSingleClick: true,
|
|
@@ -234,7 +234,7 @@ let ChatManagementEditor = class ChatManagementEditor extends EditorPane {
|
|
|
234
234
|
const headerTitleContainer = append(this.headerContainer, $(".header-title-container"));
|
|
235
235
|
const headerTitleWrapper = append(headerTitleContainer, $(".header-title-wrapper"));
|
|
236
236
|
const tile = append(headerTitleWrapper, $(".ai-management-editor-title"));
|
|
237
|
-
tile.textContent = ( localize(
|
|
237
|
+
tile.textContent = ( localize(6026, "Copilot"));
|
|
238
238
|
this.planBadge = append(headerTitleWrapper, $(".plan-badge"));
|
|
239
239
|
const titleButtonContainer = append(headerTitleContainer, $(".header-upgrade-button-container"));
|
|
240
240
|
this.actionButton = this._register(( new Button(titleButtonContainer, {
|
|
@@ -289,7 +289,7 @@ let ChatManagementEditor = class ChatManagementEditor extends EditorPane {
|
|
|
289
289
|
this.planBadge.style.display = "none";
|
|
290
290
|
} else {
|
|
291
291
|
this.planBadge.style.display = "";
|
|
292
|
-
this.planBadge.textContent = ( localize(
|
|
292
|
+
this.planBadge.textContent = ( localize(6027, "Free"));
|
|
293
293
|
}
|
|
294
294
|
} else {
|
|
295
295
|
this.planBadge.style.display = "";
|
|
@@ -303,25 +303,25 @@ let ChatManagementEditor = class ChatManagementEditor extends EditorPane {
|
|
|
303
303
|
let commandId;
|
|
304
304
|
if (shouldUpgrade && !isFreePlan && !anonymousUser) {
|
|
305
305
|
if (this.chatEntitlementService.entitlement === ChatEntitlement.Pro) {
|
|
306
|
-
buttonLabel = ( localize(
|
|
306
|
+
buttonLabel = ( localize(6028, "Upgrade to Copilot Pro+"));
|
|
307
307
|
} else {
|
|
308
|
-
buttonLabel = ( localize(
|
|
308
|
+
buttonLabel = ( localize(6029, "Upgrade to Copilot Pro"));
|
|
309
309
|
}
|
|
310
310
|
commandId = "workbench.action.chat.upgradePlan";
|
|
311
311
|
} else if (shouldUpgrade && (isFreePlan || anonymousUser)) {
|
|
312
|
-
buttonLabel = ( localize(
|
|
312
|
+
buttonLabel = ( localize(6030, "Upgrade to Copilot Pro"));
|
|
313
313
|
commandId = "workbench.action.chat.upgradePlan";
|
|
314
314
|
} else if (newUser) {
|
|
315
|
-
buttonLabel = ( localize(
|
|
315
|
+
buttonLabel = ( localize(6031, "Use AI Features"));
|
|
316
316
|
commandId = newUser && anonymousUser ? "workbench.action.chat.triggerSetupAnonymousWithoutDialog" : "workbench.action.chat.triggerSetup";
|
|
317
317
|
} else if (anonymousUser) {
|
|
318
|
-
buttonLabel = ( localize(
|
|
318
|
+
buttonLabel = ( localize(6032, "Enable more AI Features"));
|
|
319
319
|
commandId = "workbench.action.chat.triggerSetup";
|
|
320
320
|
} else if (disabled) {
|
|
321
|
-
buttonLabel = ( localize(
|
|
321
|
+
buttonLabel = ( localize(6033, "Enable AI Features"));
|
|
322
322
|
commandId = "workbench.action.chat.triggerSetup";
|
|
323
323
|
} else {
|
|
324
|
-
buttonLabel = ( localize(
|
|
324
|
+
buttonLabel = ( localize(6034, "Sign in to use AI Features"));
|
|
325
325
|
commandId = "workbench.action.chat.triggerSetup";
|
|
326
326
|
}
|
|
327
327
|
this.actionButton.label = buttonLabel;
|
package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ThemeIcon } from "@codingame/monaco-vscode-api/vscode/vs/base/common/themables";
|
|
2
|
-
import { IUntypedEditorInput } from "@codingame/monaco-vscode-api/vscode/vs/workbench/common/editor";
|
|
2
|
+
import { EditorInputCapabilities, IUntypedEditorInput } from "@codingame/monaco-vscode-api/vscode/vs/workbench/common/editor";
|
|
3
3
|
import { EditorInput } from "@codingame/monaco-vscode-api/vscode/vs/workbench/common/editor/editorInput";
|
|
4
4
|
export declare const CHAT_MANAGEMENT_SECTION_USAGE = "usage";
|
|
5
5
|
export declare const CHAT_MANAGEMENT_SECTION_MODELS = "models";
|
|
@@ -16,6 +16,7 @@ export declare class ChatManagementEditorInput extends EditorInput {
|
|
|
16
16
|
export declare class ModelsManagementEditorInput extends EditorInput {
|
|
17
17
|
static readonly ID: string;
|
|
18
18
|
readonly resource: undefined;
|
|
19
|
+
get capabilities(): EditorInputCapabilities;
|
|
19
20
|
constructor();
|
|
20
21
|
matches(otherInput: EditorInput | IUntypedEditorInput): boolean;
|
|
21
22
|
get typeId(): string;
|
package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.js
CHANGED
|
@@ -2,10 +2,11 @@
|
|
|
2
2
|
import { Codicon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/codicons';
|
|
3
3
|
import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
4
4
|
import { registerIcon } from '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/iconRegistry';
|
|
5
|
+
import { EditorInputCapabilities } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/editor';
|
|
5
6
|
import { EditorInput } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/editor/editorInput';
|
|
6
7
|
|
|
7
|
-
const ChatManagementEditorIcon = registerIcon("ai-management-editor-label-icon", Codicon.copilot, ( localize(
|
|
8
|
-
const ModelsManagementEditorIcon = registerIcon("models-management-editor-label-icon", Codicon.settings, ( localize(
|
|
8
|
+
const ChatManagementEditorIcon = registerIcon("ai-management-editor-label-icon", Codicon.copilot, ( localize(6035, "Icon of the AI Management editor label.")));
|
|
9
|
+
const ModelsManagementEditorIcon = registerIcon("models-management-editor-label-icon", Codicon.settings, ( localize(6036, "Icon of the Models Management editor label.")));
|
|
9
10
|
const CHAT_MANAGEMENT_SECTION_USAGE = "usage";
|
|
10
11
|
const CHAT_MANAGEMENT_SECTION_MODELS = "models";
|
|
11
12
|
class ChatManagementEditorInput extends EditorInput {
|
|
@@ -23,7 +24,7 @@ class ChatManagementEditorInput extends EditorInput {
|
|
|
23
24
|
return ChatManagementEditorInput.ID;
|
|
24
25
|
}
|
|
25
26
|
getName() {
|
|
26
|
-
return localize(
|
|
27
|
+
return localize(6037, "Manage Copilot");
|
|
27
28
|
}
|
|
28
29
|
getIcon() {
|
|
29
30
|
return ChatManagementEditorIcon;
|
|
@@ -36,6 +37,9 @@ class ModelsManagementEditorInput extends EditorInput {
|
|
|
36
37
|
static {
|
|
37
38
|
this.ID = "workbench.input.modelsManagement";
|
|
38
39
|
}
|
|
40
|
+
get capabilities() {
|
|
41
|
+
return super.capabilities | EditorInputCapabilities.Singleton | EditorInputCapabilities.RequiresModal;
|
|
42
|
+
}
|
|
39
43
|
constructor() {
|
|
40
44
|
super();
|
|
41
45
|
this.resource = undefined;
|
|
@@ -47,7 +51,7 @@ class ModelsManagementEditorInput extends EditorInput {
|
|
|
47
51
|
return ModelsManagementEditorInput.ID;
|
|
48
52
|
}
|
|
49
53
|
getName() {
|
|
50
|
-
return localize(
|
|
54
|
+
return localize(6038, "Language Models");
|
|
51
55
|
}
|
|
52
56
|
getIcon() {
|
|
53
57
|
return ModelsManagementEditorIcon;
|
|
@@ -261,7 +261,7 @@ let ChatModelsViewModel = class ChatModelsViewModel extends Disposable {
|
|
|
261
261
|
group: {
|
|
262
262
|
type: "group",
|
|
263
263
|
id: "visible",
|
|
264
|
-
label: ( localize(
|
|
264
|
+
label: ( localize(6039, "Visible")),
|
|
265
265
|
templateId: GROUP_ENTRY_TEMPLATE_ID,
|
|
266
266
|
collapsed: ( this.collapsedGroups.has("visible"))
|
|
267
267
|
},
|
|
@@ -271,7 +271,7 @@ let ChatModelsViewModel = class ChatModelsViewModel extends Disposable {
|
|
|
271
271
|
group: {
|
|
272
272
|
type: "group",
|
|
273
273
|
id: "hidden",
|
|
274
|
-
label: ( localize(
|
|
274
|
+
label: ( localize(6040, "Hidden")),
|
|
275
275
|
templateId: GROUP_ENTRY_TEMPLATE_ID,
|
|
276
276
|
collapsed: ( this.collapsedGroups.has("hidden"))
|
|
277
277
|
},
|
|
@@ -20,6 +20,8 @@ export declare class ChatModelsWidget extends Disposable {
|
|
|
20
20
|
private readonly commandService;
|
|
21
21
|
private static NUM_INSTANCES;
|
|
22
22
|
readonly element: HTMLElement;
|
|
23
|
+
private readonly _onDidChangeItemCount;
|
|
24
|
+
readonly onDidChangeItemCount: import("@codingame/monaco-vscode-api/vscode/vs/base/common/event").Event<number>;
|
|
23
25
|
private searchWidget;
|
|
24
26
|
private searchActionsContainer;
|
|
25
27
|
private table;
|
|
@@ -42,4 +44,13 @@ export declare class ChatModelsWidget extends Disposable {
|
|
|
42
44
|
search(filter: string): void;
|
|
43
45
|
clearSearch(): void;
|
|
44
46
|
render(): void;
|
|
47
|
+
/**
|
|
48
|
+
* Gets the total model count (excluding vendor/group/status headers).
|
|
49
|
+
*/
|
|
50
|
+
get itemCount(): number;
|
|
51
|
+
/**
|
|
52
|
+
* Re-fires the current item count. Call after subscribing to onDidChangeItemCount
|
|
53
|
+
* to ensure the subscriber receives the latest count.
|
|
54
|
+
*/
|
|
55
|
+
fireItemCount(): void;
|
|
45
56
|
}
|