@codingame/monaco-vscode-chat-service-override 31.0.1 → 32.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.d.ts +1 -1
- package/index.js +21 -5
- package/package.json +5 -5
- package/vscode/src/vs/base/common/defaultAccount.d.ts +69 -0
- package/vscode/src/vs/base/common/defaultAccount.js +12 -0
- package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostProtocolClient.d.ts +91 -22
- package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostProtocolClient.js +301 -68
- package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostServiceImpl.d.ts +24 -5
- package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostServiceImpl.js +89 -16
- package/vscode/src/vs/platform/agentHost/browser/webSocketClientTransport.d.ts +17 -5
- package/vscode/src/vs/platform/agentHost/browser/webSocketClientTransport.js +73 -10
- package/vscode/src/vs/platform/agentHost/common/agentHostFileSystemProvider.d.ts +32 -6
- package/vscode/src/vs/platform/agentHost/common/agentHostFileSystemProvider.js +32 -20
- package/vscode/src/vs/platform/agentHost/common/agentHostPermissionService.d.ts +37 -0
- package/vscode/src/vs/platform/agentHost/common/agentHostPermissionService.js +15 -0
- package/vscode/src/vs/platform/agentHost/common/agentService.d.ts +242 -201
- package/vscode/src/vs/platform/agentHost/common/agentService.js +3 -1
- package/vscode/src/vs/platform/agentHost/common/ahpJsonlLogger.d.ts +35 -0
- package/vscode/src/vs/platform/agentHost/common/ahpJsonlLogger.js +106 -0
- package/vscode/src/vs/platform/agentHost/common/state/agentSubscription.d.ts +38 -30
- package/vscode/src/vs/platform/agentHost/common/state/agentSubscription.js +2 -1
- package/vscode/src/vs/platform/agentHost/common/state/protocol/errors.d.ts +114 -4
- package/vscode/src/vs/platform/agentHost/common/state/protocol/reducers.d.ts +10 -10
- package/vscode/src/vs/platform/agentHost/common/state/protocol/reducers.js +52 -19
- package/vscode/src/vs/platform/agentHost/common/state/protocol/version/registry.d.ts +42 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/version/registry.js +7 -0
- package/vscode/src/vs/platform/agentHost/common/state/sessionActions.d.ts +42 -41
- package/vscode/src/vs/platform/agentHost/common/state/sessionTransport.d.ts +6 -6
- package/vscode/src/vs/platform/agentHost/common/transportConstants.d.ts +15 -0
- package/vscode/src/vs/platform/agentHost/common/transportConstants.js +6 -0
- package/vscode/src/vs/platform/agentPlugins/common/pluginParsers.d.ts +4 -3
- package/vscode/src/vs/platform/agentPlugins/common/pluginParsers.js +4 -3
- package/vscode/src/vs/platform/networkFilter/common/networkFilterService.d.ts +4 -2
- package/vscode/src/vs/platform/networkFilter/common/networkFilterService.js +15 -7
- package/vscode/src/vs/workbench/contrib/browserView/common/browserChatToolReferenceNames.d.ts +19 -0
- package/vscode/src/vs/workbench/contrib/browserView/common/browserChatToolReferenceNames.js +17 -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 +16 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.js +14 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +64 -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 +31 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.js +18 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.d.ts +16 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +30 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatForkActions.js +8 -7
- 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 +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatOpenAgentDebugPanelAction.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPluginActions.js +27 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQueueActions.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +21 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/createPluginAction.js +22 -22
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/reviewEdits.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/reviewEdits.js +171 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginActions.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditor.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditorInput.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginItems.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.d.ts +3 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.js +12 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostPermissionUiContribution.d.ts +28 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostPermissionUiContribution.js +99 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionWorkingDirectoryResolver.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionWorkingDirectoryResolver.js +11 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.js +9 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.js +63 -53
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.js +10 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsQuickAccess.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjection.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionActions.js +4 -4
- 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 +5 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.js +25 -48
- 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.js +5 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.d.ts +8 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.js +99 -39
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.js +17 -30
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemsModel.d.ts +78 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemsModel.js +38 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.d.ts +35 -37
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.js +347 -326
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidgetUtils.d.ts +6 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidgetUtils.js +1 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.contribution.js +113 -109
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.d.ts +37 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.js +436 -134
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePagePromptLaunchers.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePagePromptLaunchers.js +52 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCreatorService.js +7 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.js +13 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedAgentPluginDetail.d.ts +23 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedAgentPluginDetail.js +60 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedMcpServerDetail.d.ts +25 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedMcpServerDetail.js +93 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.d.ts +9 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.js +73 -104
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationManagement.css +272 -41
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationWelcomePromptLaunchers.css +12 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.d.ts +30 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.js +430 -185
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.d.ts +5 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.js +44 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +480 -279
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatCustomizationDiscoveryRenderer.js +32 -32
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCacheDiff.d.ts +138 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCacheDiff.js +221 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCacheExplorerView.d.ts +84 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCacheExplorerView.js +1216 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugDetailPanel.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditor.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditor.js +32 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditorInput.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventDetailRenderer.js +26 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventList.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFilters.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowChartView.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowGraph.js +28 -25
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHomeView.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHookContentRenderer.js +17 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.js +25 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugMessageContentRenderer.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugModelTurnContentRenderer.js +23 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugOverviewView.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugOverviewView.js +68 -33
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugToolCallContentRenderer.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugTypes.d.ts +3 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugTypes.js +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/media/chatDebug.css +650 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.d.ts +46 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js +533 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.d.ts +29 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js +390 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationWidget.d.ts +101 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationWidget.js +509 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +18 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +3 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/media/chatEditingEditorOverlay.css +130 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/media/chatEditingExplanationWidget.css +276 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatImageCarouselService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.js +8 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.d.ts +1 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.js +6 -87
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.js +116 -182
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/media/chatModelsWidget.css +12 -39
- package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +31 -31
- package/vscode/src/vs/workbench/contrib/chat/browser/chatRepoInfo.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.js +61 -41
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupGrowthSession.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.js +27 -27
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.js +16 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.d.ts +20 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.js +106 -36
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.d.ts +25 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.js +629 -425
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.d.ts +9 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.js +105 -29
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusItemService.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/media/chatStatus.css +175 -148
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipCatalog.js +20 -33
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.js +9 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/claudePluginRecommendations.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/defaultModelContribution.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/enablementActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/enablementStatusWidget.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/githubRepoFetcher.d.ts +58 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/githubRepoFetcher.js +339 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelsConfigurationService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/media/planReviewFeedback.css +160 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackEditorActions.d.ts +9 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackEditorActions.js +123 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackEditorContribution.d.ts +37 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackEditorContribution.js +572 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackService.d.ts +36 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackService.js +167 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginGitCommandService.d.ts +49 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginGitCommandService.js +315 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.js +45 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.js +15 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginUrlHandler.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.js +44 -40
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptFileContributions.js +4 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/skillActions.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/promptsDebugContribution.js +20 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.js +39 -39
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.d.ts +9 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.js +111 -52
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/renameTool.d.ts +3 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/renameTool.js +13 -47
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolHelpers.d.ts +3 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolHelpers.js +4 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolResultCompressorService.d.ts +18 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolResultCompressorService.js +56 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/usagesTool.d.ts +3 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/usagesTool.js +14 -52
- package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidgetService.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidgetService.js +17 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatQueuePickerActionItem.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatQueuePickerActionItem.js +23 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/agentHostInputCompletions.d.ts +39 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/agentHostInputCompletions.js +136 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/agentHostInputCompletionsBase.d.ts +72 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/agentHostInputCompletionsBase.js +56 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletionUtils.d.ts +7 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletionUtils.js +14 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.js +41 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorContrib.js +30 -12
- 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 +2 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.js +25 -6
- 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 +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.js +5 -4
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.js +108 -45
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceTelemetry.js +7 -3
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionOperationLog.js +3 -1
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.d.ts +20 -1
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.js +65 -26
- package/vscode/src/vs/workbench/contrib/chat/common/participants/chatSlashCommands.d.ts +5 -3
- package/vscode/src/vs/workbench/contrib/chat/common/participants/chatSlashCommands.js +38 -11
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.d.ts +17 -1
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.js +165 -16
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.js +62 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +18 -18
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/PromptHeaderDefinitionProvider.js +2 -1
- 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.d.ts +1 -3
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +15 -21
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.d.ts +1 -3
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.js +18 -24
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.d.ts +4 -2
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.js +203 -180
- package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/workingDirectory.d.ts +30 -0
- package/vscode/src/vs/workbench/contrib/chat/common/workingDirectory.js +35 -0
- package/vscode/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.js +27 -2
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.js +14 -49
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.d.ts +0 -16
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +35 -177
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatDefaultModel.js +2 -8
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatNotebook.d.ts +1 -2
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatNotebook.js +2 -3
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.d.ts +4 -4
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +11 -11
- 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 +13 -13
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebook.chat.contribution.js +5 -5
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +1 -1
- package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.js +7 -7
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +16 -16
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +20 -20
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.d.ts +29 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +129 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.js +3 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +14 -6
- 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.d.ts +1 -4
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.js +12 -38
- 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 +4 -4
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.js +2 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sendToTerminalTool.d.ts +12 -7
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sendToTerminalTool.js +77 -70
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/createAndRunTaskTool.js +14 -14
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/getTaskOutputTool.js +7 -7
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/runTaskTool.js +14 -14
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalOutputCompressor.d.ts +32 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalOutputCompressor.js +232 -0
- package/vscode/src/vs/workbench/services/agentHost/common/agentHostPermissionService.d.ts +83 -0
- package/vscode/src/vs/workbench/services/agentHost/common/agentHostPermissionService.js +243 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/commands.d.ts +0 -749
- package/vscode/src/vs/platform/agentHost/common/state/protocol/commands.js +0 -14
- package/vscode/src/vs/platform/agentHost/common/state/sessionCapabilities.d.ts +0 -17
- package/vscode/src/vs/platform/agentHost/common/state/sessionCapabilities.js +0 -5
- package/vscode/src/vs/platform/agentHost/common/state/sessionProtocol.d.ts +0 -40
- package/vscode/src/vs/platform/agentHost/common/state/sessionProtocol.js +0 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.d.ts +0 -61
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.js +0 -638
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemSource.d.ts +0 -131
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemSource.js +0 -363
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/promptsServiceCustomizationItemProvider.d.ts +0 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/promptsServiceCustomizationItemProvider.js +0 -306
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatStatusWidget.d.ts +0 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatStatusWidget.js +0 -97
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/media/chatStatusWidget.css +0 -57
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.d.ts +0 -50
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.js +0 -29
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookClaudeCompat.d.ts +0 -50
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookClaudeCompat.js +0 -78
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCompatibility.d.ts +0 -77
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCompatibility.js +0 -120
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCopilotCliCompat.d.ts +0 -10
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCopilotCliCompat.js +0 -23
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +0 -242
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +0 -1701
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +0 -191
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +0 -728
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatHistoryService.d.ts +0 -14
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatHistoryService.js +0 -69
|
@@ -4,7 +4,7 @@ import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib
|
|
|
4
4
|
import * as chatModelsWidget from './media/chatModelsWidget.css';
|
|
5
5
|
import { DisposableStore, Disposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
|
|
6
6
|
import { Emitter } from '@codingame/monaco-vscode-api/vscode/vs/base/common/event';
|
|
7
|
-
import { $ as $$1, append, clearNode, getTotalWidth,
|
|
7
|
+
import { $ as $$1, append, clearNode, getTotalWidth, Dimension } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/dom';
|
|
8
8
|
import { Button } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/button/button';
|
|
9
9
|
import { ThemeIcon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/themables';
|
|
10
10
|
import { ILanguageModelsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/languageModels.service';
|
|
@@ -16,10 +16,10 @@ import { IHoverService } from '@codingame/monaco-vscode-api/vscode/vs/platform/h
|
|
|
16
16
|
import { MarkdownString } from '@codingame/monaco-vscode-api/vscode/vs/base/common/htmlContent';
|
|
17
17
|
import { IExtensionService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensions/common/extensions.service';
|
|
18
18
|
import { IContextMenuService } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextview/browser/contextView.service';
|
|
19
|
-
import { Action, Separator,
|
|
19
|
+
import { Action, Separator, toAction } from '@codingame/monaco-vscode-api/vscode/vs/base/common/actions';
|
|
20
20
|
import { ActionBar } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/actionbar/actionbar';
|
|
21
21
|
import { Codicon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/codicons';
|
|
22
|
-
import {
|
|
22
|
+
import { isLanguageModelProviderEntry, isLanguageModelGroupEntry, isStatusEntry, ChatModelsViewModel, SEARCH_SUGGESTIONS } from './chatModelsViewModel.js';
|
|
23
23
|
import { HighlightedLabel } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/highlightedlabel/highlightedLabel';
|
|
24
24
|
import { SuggestEnabledInput } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/codeEditor/browser/suggestEnabledInput/suggestEnabledInput';
|
|
25
25
|
import { Delayer } from '@codingame/monaco-vscode-api/vscode/vs/base/common/async';
|
|
@@ -38,7 +38,7 @@ import { IDialogService } from '@codingame/monaco-vscode-api/vscode/vs/platform/
|
|
|
38
38
|
import Severity from '@codingame/monaco-vscode-api/vscode/vs/base/common/severity';
|
|
39
39
|
import { AnchorAlignment } from '@codingame/monaco-vscode-api/vscode/vs/base/common/layout';
|
|
40
40
|
|
|
41
|
-
var ModelNameColumnRenderer_1,
|
|
41
|
+
var ModelNameColumnRenderer_1, CombinedCostColumnRenderer_1, TokenLimitsColumnRenderer_1, ActionsColumnRenderer_1, ChatModelsWidget_1;
|
|
42
42
|
registerCss(chatModelsWidget);
|
|
43
43
|
const $ = $$1;
|
|
44
44
|
const HEADER_HEIGHT = 30;
|
|
@@ -46,7 +46,7 @@ const VENDOR_ROW_HEIGHT = 30;
|
|
|
46
46
|
const MODEL_ROW_HEIGHT = 26;
|
|
47
47
|
class ModelsFilterAction extends Action {
|
|
48
48
|
constructor() {
|
|
49
|
-
super("workbench.models.filter", ( localize(
|
|
49
|
+
super("workbench.models.filter", ( localize(6398, "Filter")), ThemeIcon.asClassName(Codicon.filter));
|
|
50
50
|
}
|
|
51
51
|
async run() {}
|
|
52
52
|
}
|
|
@@ -90,19 +90,6 @@ let ModelsSearchFilterDropdownMenuActionViewItem = class ModelsSearchFilterDropd
|
|
|
90
90
|
this.search = search;
|
|
91
91
|
this.viewModel = viewModel;
|
|
92
92
|
}
|
|
93
|
-
createGroupByAction(grouping, label) {
|
|
94
|
-
return {
|
|
95
|
-
id: `groupBy.${grouping}`,
|
|
96
|
-
label,
|
|
97
|
-
class: undefined,
|
|
98
|
-
enabled: true,
|
|
99
|
-
tooltip: ( localize(6165, "Group by {0}", label)),
|
|
100
|
-
checked: this.viewModel.groupBy === grouping,
|
|
101
|
-
run: () => {
|
|
102
|
-
this.viewModel.groupBy = grouping;
|
|
103
|
-
}
|
|
104
|
-
};
|
|
105
|
-
}
|
|
106
93
|
createProviderAction(vendor, displayName) {
|
|
107
94
|
const query = `@provider:"${displayName}"`;
|
|
108
95
|
const currentQuery = this.search.getValue();
|
|
@@ -110,7 +97,7 @@ let ModelsSearchFilterDropdownMenuActionViewItem = class ModelsSearchFilterDropd
|
|
|
110
97
|
return {
|
|
111
98
|
id: `provider-${vendor}`,
|
|
112
99
|
label: displayName,
|
|
113
|
-
tooltip: ( localize(
|
|
100
|
+
tooltip: ( localize(6399, "Filter by {0}", displayName)),
|
|
114
101
|
class: undefined,
|
|
115
102
|
enabled: true,
|
|
116
103
|
checked: isChecked,
|
|
@@ -127,7 +114,7 @@ let ModelsSearchFilterDropdownMenuActionViewItem = class ModelsSearchFilterDropd
|
|
|
127
114
|
return {
|
|
128
115
|
id: `capability-${capability}`,
|
|
129
116
|
label,
|
|
130
|
-
tooltip: ( localize(
|
|
117
|
+
tooltip: ( localize(6400, "Filter by {0}", label)),
|
|
131
118
|
class: undefined,
|
|
132
119
|
enabled: true,
|
|
133
120
|
checked: isChecked,
|
|
@@ -136,23 +123,6 @@ let ModelsSearchFilterDropdownMenuActionViewItem = class ModelsSearchFilterDropd
|
|
|
136
123
|
})
|
|
137
124
|
};
|
|
138
125
|
}
|
|
139
|
-
createVisibleAction(visible, label) {
|
|
140
|
-
const query = `@visible:${visible}`;
|
|
141
|
-
const currentQuery = this.search.getValue();
|
|
142
|
-
const isChecked = currentQuery.includes(query);
|
|
143
|
-
return {
|
|
144
|
-
id: `visible-${visible}`,
|
|
145
|
-
label,
|
|
146
|
-
tooltip: ( localize(6168, "Filter by {0}", label)),
|
|
147
|
-
class: undefined,
|
|
148
|
-
enabled: true,
|
|
149
|
-
checked: isChecked,
|
|
150
|
-
run: () => this.toggleFilterAndSearch({
|
|
151
|
-
query,
|
|
152
|
-
excludes: [`@visible:${!visible}`]
|
|
153
|
-
})
|
|
154
|
-
};
|
|
155
|
-
}
|
|
156
126
|
toggleFilterAndSearch(filter) {
|
|
157
127
|
const currentQuery = this.search.getValue();
|
|
158
128
|
const newQuery = toggleFilter(currentQuery, filter);
|
|
@@ -160,10 +130,7 @@ let ModelsSearchFilterDropdownMenuActionViewItem = class ModelsSearchFilterDropd
|
|
|
160
130
|
}
|
|
161
131
|
getActions() {
|
|
162
132
|
const actions = [];
|
|
163
|
-
actions.push(this.createCapabilityAction("tools", ( localize(
|
|
164
|
-
actions.push(( new Separator()));
|
|
165
|
-
actions.push(this.createVisibleAction(true, ( localize(6172, "Visible in Chat Model Picker"))));
|
|
166
|
-
actions.push(this.createVisibleAction(false, ( localize(6173, "Hidden in Chat Model Picker"))));
|
|
133
|
+
actions.push(this.createCapabilityAction("tools", ( localize(6401, "Tools"))), this.createCapabilityAction("vision", ( localize(6402, "Vision"))), this.createCapabilityAction("agent", ( localize(6403, "Agent Mode"))));
|
|
167
134
|
const configuredVendors = this.viewModel.getConfiguredVendors();
|
|
168
135
|
if (configuredVendors.length > 1) {
|
|
169
136
|
actions.push(( new Separator()));
|
|
@@ -171,11 +138,6 @@ let ModelsSearchFilterDropdownMenuActionViewItem = class ModelsSearchFilterDropd
|
|
|
171
138
|
vendor => this.createProviderAction(vendor.vendor.vendor, vendor.group.name)
|
|
172
139
|
)));
|
|
173
140
|
}
|
|
174
|
-
actions.push(( new Separator()));
|
|
175
|
-
const groupByActions = [];
|
|
176
|
-
groupByActions.push(this.createGroupByAction(ChatModelGroup.Vendor, ( localize(6174, "Provider"))));
|
|
177
|
-
groupByActions.push(this.createGroupByAction(ChatModelGroup.Visibility, ( localize(6175, "Visibility (Chat Model Picker)"))));
|
|
178
|
-
actions.push(( new SubmenuAction("groupBy", ( localize(6176, "Group By")), groupByActions)));
|
|
179
141
|
return actions;
|
|
180
142
|
}
|
|
181
143
|
};
|
|
@@ -198,10 +160,6 @@ class ModelsTableColumnRenderer {
|
|
|
198
160
|
templateData.container.parentElement.classList.toggle("models-vendor-row", isVendor || isGroup);
|
|
199
161
|
templateData.container.parentElement.classList.toggle("models-model-row", !isVendor && !isGroup);
|
|
200
162
|
templateData.container.parentElement.classList.toggle("models-status-row", isStatus);
|
|
201
|
-
templateData.container.parentElement.classList.toggle(
|
|
202
|
-
"model-hidden",
|
|
203
|
-
!isVendor && !isGroup && !isStatus && !element.model.visible
|
|
204
|
-
);
|
|
205
163
|
if (isVendor) {
|
|
206
164
|
this.renderVendorElement(element, index, templateData);
|
|
207
165
|
} else if (isGroup) {
|
|
@@ -254,7 +212,7 @@ class GutterColumnRenderer extends ModelsTableColumnRenderer {
|
|
|
254
212
|
if (templateData.listRowElement) {
|
|
255
213
|
templateData.listRowElement.setAttribute("aria-expanded", entry.collapsed ? "false" : "true");
|
|
256
214
|
}
|
|
257
|
-
const label = entry.collapsed ? ( localize(
|
|
215
|
+
const label = entry.collapsed ? ( localize(6404, "Expand")) : ( localize(6405, "Collapse"));
|
|
258
216
|
const toggleCollapseAction = {
|
|
259
217
|
id: "toggleCollapse",
|
|
260
218
|
label,
|
|
@@ -268,24 +226,7 @@ class GutterColumnRenderer extends ModelsTableColumnRenderer {
|
|
|
268
226
|
label: false
|
|
269
227
|
});
|
|
270
228
|
}
|
|
271
|
-
renderModelElement(entry, index, templateData) {
|
|
272
|
-
const {
|
|
273
|
-
model: modelEntry
|
|
274
|
-
} = entry;
|
|
275
|
-
const isVisible = modelEntry.visible;
|
|
276
|
-
const toggleVisibilityAction = toAction({
|
|
277
|
-
id: "toggleVisibility",
|
|
278
|
-
label: isVisible ? ( localize(6179, "Hide")) : ( localize(6180, "Show")),
|
|
279
|
-
class: `model-visibility-toggle ${isVisible ? `${ThemeIcon.asClassName(Codicon.eye)} model-visible` : `${ThemeIcon.asClassName(Codicon.eyeClosed)} model-hidden`}`,
|
|
280
|
-
tooltip: isVisible ? ( localize(6181, "Hide in the chat model picker")) : ( localize(6182, "Show in the chat model picker")),
|
|
281
|
-
checked: !isVisible,
|
|
282
|
-
run: async () => this.viewModel.toggleVisibility(entry)
|
|
283
|
-
});
|
|
284
|
-
templateData.actionBar.push(toggleVisibilityAction, {
|
|
285
|
-
icon: true,
|
|
286
|
-
label: false
|
|
287
|
-
});
|
|
288
|
-
}
|
|
229
|
+
renderModelElement(entry, index, templateData) {}
|
|
289
230
|
}
|
|
290
231
|
let ModelNameColumnRenderer = class ModelNameColumnRenderer extends ModelsTableColumnRenderer {
|
|
291
232
|
static {
|
|
@@ -365,9 +306,6 @@ let ModelNameColumnRenderer = class ModelNameColumnRenderer extends ModelsTableC
|
|
|
365
306
|
markdown.appendMarkdown(`${entry.model.metadata.tooltip}`);
|
|
366
307
|
markdown.appendText(`\n`);
|
|
367
308
|
}
|
|
368
|
-
if (!entry.model.visible) {
|
|
369
|
-
markdown.appendMarkdown(`\n\n${( localize(6183, "This model is hidden in the chat model picker"))}`);
|
|
370
|
-
}
|
|
371
309
|
templateData.elementDisposables.add(
|
|
372
310
|
this.hoverService.setupDelayedHoverAtMouse(templateData.container, () => ({
|
|
373
311
|
content: markdown,
|
|
@@ -399,56 +337,90 @@ let ModelNameColumnRenderer = class ModelNameColumnRenderer extends ModelsTableC
|
|
|
399
337
|
}
|
|
400
338
|
};
|
|
401
339
|
ModelNameColumnRenderer = ModelNameColumnRenderer_1 = ( __decorate([( __param(0, IHoverService))], ModelNameColumnRenderer));
|
|
402
|
-
let
|
|
340
|
+
let CombinedCostColumnRenderer = class CombinedCostColumnRenderer extends ModelsTableColumnRenderer {
|
|
403
341
|
static {
|
|
404
|
-
|
|
342
|
+
CombinedCostColumnRenderer_1 = this;
|
|
405
343
|
}
|
|
406
344
|
static {
|
|
407
|
-
this.TEMPLATE_ID = "
|
|
345
|
+
this.TEMPLATE_ID = "combinedCost";
|
|
408
346
|
}
|
|
409
347
|
constructor(hoverService) {
|
|
410
348
|
super();
|
|
411
349
|
this.hoverService = hoverService;
|
|
412
|
-
this.templateId =
|
|
350
|
+
this.templateId = CombinedCostColumnRenderer_1.TEMPLATE_ID;
|
|
413
351
|
}
|
|
414
352
|
renderTemplate(container) {
|
|
415
353
|
const disposables = ( new DisposableStore());
|
|
416
354
|
const elementDisposables = ( new DisposableStore());
|
|
417
|
-
const
|
|
355
|
+
const grid = append(container, $(".model-cost-grid"));
|
|
356
|
+
const inputCell = append(grid, $("span.model-cost-cell"));
|
|
357
|
+
const outputCell = append(grid, $("span.model-cost-cell"));
|
|
358
|
+
const cacheCell = append(grid, $("span.model-cost-cell"));
|
|
418
359
|
return {
|
|
419
360
|
container,
|
|
420
|
-
|
|
361
|
+
inputCell,
|
|
362
|
+
outputCell,
|
|
363
|
+
cacheCell,
|
|
421
364
|
disposables,
|
|
422
365
|
elementDisposables
|
|
423
366
|
};
|
|
424
367
|
}
|
|
425
368
|
renderElement(entry, index, templateData) {
|
|
426
|
-
templateData.
|
|
369
|
+
templateData.inputCell.textContent = "";
|
|
370
|
+
templateData.outputCell.textContent = "";
|
|
371
|
+
templateData.cacheCell.textContent = "";
|
|
427
372
|
super.renderElement(entry, index, templateData);
|
|
428
373
|
}
|
|
429
|
-
renderGroupElement(
|
|
430
|
-
renderVendorElement(
|
|
374
|
+
renderGroupElement(_element, _index, _templateData) {}
|
|
375
|
+
renderVendorElement(_element, _index, _templateData) {}
|
|
431
376
|
renderModelElement(entry, index, templateData) {
|
|
432
|
-
const
|
|
433
|
-
|
|
434
|
-
|
|
377
|
+
const {
|
|
378
|
+
inputCost,
|
|
379
|
+
outputCost,
|
|
380
|
+
cacheCost
|
|
381
|
+
} = entry.model.metadata;
|
|
382
|
+
const hasCost = inputCost !== undefined || outputCost !== undefined || cacheCost !== undefined;
|
|
383
|
+
if (hasCost) {
|
|
384
|
+
templateData.inputCell.textContent = inputCost !== undefined ? ( localize(6406, "In: {0}", inputCost)) : "";
|
|
385
|
+
templateData.outputCell.textContent = outputCost !== undefined ? ( localize(6407, "Out: {0}", outputCost)) : "";
|
|
386
|
+
templateData.cacheCell.textContent = cacheCost !== undefined ? ( localize(6408, "Cache: {0}", cacheCost)) : "";
|
|
387
|
+
const parts = [];
|
|
388
|
+
if (inputCost !== undefined) {
|
|
389
|
+
parts.push(inputCost === 1 ? ( localize(6409, "Input: {0} credit per 1M tokens", inputCost)) : ( localize(6410, "Input: {0} credits per 1M tokens", inputCost)));
|
|
390
|
+
}
|
|
391
|
+
if (outputCost !== undefined) {
|
|
392
|
+
parts.push(outputCost === 1 ? ( localize(6411, "Output: {0} credit per 1M tokens", outputCost)) : ( localize(6412, "Output: {0} credits per 1M tokens", outputCost)));
|
|
393
|
+
}
|
|
394
|
+
if (cacheCost !== undefined) {
|
|
395
|
+
parts.push(cacheCost === 1 ? ( localize(6413, "Cache: {0} credit per 1M tokens", cacheCost)) : ( localize(6414, "Cache: {0} credits per 1M tokens", cacheCost)));
|
|
396
|
+
}
|
|
435
397
|
templateData.elementDisposables.add(
|
|
436
398
|
this.hoverService.setupDelayedHoverAtMouse(templateData.container, () => ({
|
|
437
|
-
content: (
|
|
438
|
-
6184,
|
|
439
|
-
"Every chat message counts {0} towards your premium model request quota",
|
|
440
|
-
multiplierText
|
|
441
|
-
)),
|
|
399
|
+
content: parts.join("\n"),
|
|
442
400
|
appearance: {
|
|
443
401
|
compact: true,
|
|
444
402
|
skipFadeInAnimation: true
|
|
445
403
|
}
|
|
446
404
|
}))
|
|
447
405
|
);
|
|
406
|
+
} else {
|
|
407
|
+
const pricingText = entry.model.metadata.pricing;
|
|
408
|
+
if (pricingText) {
|
|
409
|
+
templateData.inputCell.textContent = pricingText;
|
|
410
|
+
templateData.elementDisposables.add(
|
|
411
|
+
this.hoverService.setupDelayedHoverAtMouse(templateData.container, () => ({
|
|
412
|
+
content: ( localize(6415, "Pricing: {0}", pricingText)),
|
|
413
|
+
appearance: {
|
|
414
|
+
compact: true,
|
|
415
|
+
skipFadeInAnimation: true
|
|
416
|
+
}
|
|
417
|
+
}))
|
|
418
|
+
);
|
|
419
|
+
}
|
|
448
420
|
}
|
|
449
421
|
}
|
|
450
422
|
};
|
|
451
|
-
|
|
423
|
+
CombinedCostColumnRenderer = CombinedCostColumnRenderer_1 = ( __decorate([( __param(0, IHoverService))], CombinedCostColumnRenderer));
|
|
452
424
|
let TokenLimitsColumnRenderer = class TokenLimitsColumnRenderer extends ModelsTableColumnRenderer {
|
|
453
425
|
static {
|
|
454
426
|
TokenLimitsColumnRenderer_1 = this;
|
|
@@ -491,7 +463,7 @@ let TokenLimitsColumnRenderer = class TokenLimitsColumnRenderer extends ModelsTa
|
|
|
491
463
|
const tokenDiv = append(templateData.tokenLimitsElement, $(".token-limit-item"));
|
|
492
464
|
const tokenText = append(tokenDiv, $("span"));
|
|
493
465
|
tokenText.textContent = formatTokenCount(totalTokens);
|
|
494
|
-
markdown.appendMarkdown(`${( localize(
|
|
466
|
+
markdown.appendMarkdown(`${( localize(6416, "Context Size"))}: `);
|
|
495
467
|
markdown.appendMarkdown(`${formatTokenCount(totalTokens)}`);
|
|
496
468
|
}
|
|
497
469
|
templateData.elementDisposables.add(
|
|
@@ -546,7 +518,7 @@ class CapabilitiesColumnRenderer extends ModelsTableColumnRenderer {
|
|
|
546
518
|
templateData.elementDisposables.add(this.createCapabilityButton(
|
|
547
519
|
templateData.metadataRow,
|
|
548
520
|
capabilityMatches?.includes("toolCalling") || false,
|
|
549
|
-
( localize(
|
|
521
|
+
( localize(6417, "Tools")),
|
|
550
522
|
"tools"
|
|
551
523
|
));
|
|
552
524
|
}
|
|
@@ -554,7 +526,7 @@ class CapabilitiesColumnRenderer extends ModelsTableColumnRenderer {
|
|
|
554
526
|
templateData.elementDisposables.add(this.createCapabilityButton(
|
|
555
527
|
templateData.metadataRow,
|
|
556
528
|
capabilityMatches?.includes("vision") || false,
|
|
557
|
-
( localize(
|
|
529
|
+
( localize(6418, "Vision")),
|
|
558
530
|
"vision"
|
|
559
531
|
));
|
|
560
532
|
}
|
|
@@ -629,17 +601,17 @@ let ActionsColumnRenderer = class ActionsColumnRenderer extends ModelsTableColum
|
|
|
629
601
|
if (vendorEntry.vendor.configuration) {
|
|
630
602
|
secondaryActions.push(toAction({
|
|
631
603
|
id: "configureAction",
|
|
632
|
-
label: ( localize(
|
|
604
|
+
label: ( localize(6419, "Configure...")),
|
|
633
605
|
run: () => this.languageModelsService.configureLanguageModelsProviderGroup(vendorEntry.vendor.vendor, vendorEntry.group.name)
|
|
634
606
|
}));
|
|
635
607
|
secondaryActions.push(toAction({
|
|
636
608
|
id: "deleteAction",
|
|
637
|
-
label: ( localize(
|
|
609
|
+
label: ( localize(6420, "Delete")),
|
|
638
610
|
class: ThemeIcon.asClassName(Codicon.trash),
|
|
639
611
|
run: async () => {
|
|
640
612
|
const result = await this.dialogService.confirm({
|
|
641
613
|
type: "info",
|
|
642
|
-
message: ( localize(
|
|
614
|
+
message: ( localize(6421, "Would you like to delete {0}?", vendorEntry.group.name))
|
|
643
615
|
});
|
|
644
616
|
if (!result.confirmed) {
|
|
645
617
|
return;
|
|
@@ -651,7 +623,7 @@ let ActionsColumnRenderer = class ActionsColumnRenderer extends ModelsTableColum
|
|
|
651
623
|
} else if (vendorEntry.vendor.managementCommand) {
|
|
652
624
|
primaryActions.push(toAction({
|
|
653
625
|
id: "manageVendor",
|
|
654
|
-
label: ( localize(
|
|
626
|
+
label: ( localize(6422, "Manage {0}...", vendorEntry.group.name)),
|
|
655
627
|
class: ThemeIcon.asClassName(Codicon.gear),
|
|
656
628
|
run: async () => {
|
|
657
629
|
await this.commandService.executeCommand(vendorEntry.vendor.managementCommand, vendorEntry.vendor.vendor);
|
|
@@ -670,7 +642,7 @@ let ActionsColumnRenderer = class ActionsColumnRenderer extends ModelsTableColum
|
|
|
670
642
|
const secondaryActions = [...configActions];
|
|
671
643
|
secondaryActions.push(toAction({
|
|
672
644
|
id: "configureModel",
|
|
673
|
-
label: ( localize(
|
|
645
|
+
label: ( localize(6423, "Configure...")),
|
|
674
646
|
run: () => this.languageModelsService.configureModel(entry.model.identifier)
|
|
675
647
|
}));
|
|
676
648
|
templateData.actionBar.setActions([], secondaryActions);
|
|
@@ -754,18 +726,14 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
754
726
|
}
|
|
755
727
|
create(container) {
|
|
756
728
|
const searchAndButtonContainer = append(container, $(".models-search-and-button-container"));
|
|
757
|
-
const placeholder = ( localize(
|
|
729
|
+
const placeholder = ( localize(6424, "Type to search..."));
|
|
758
730
|
const searchContainer = append(searchAndButtonContainer, $(".models-search-container"));
|
|
759
731
|
this.searchWidget = this._register(
|
|
760
732
|
this.instantiationService.createInstance(SuggestEnabledInput, "chatModelsWidget.searchbox", searchContainer, {
|
|
761
733
|
triggerCharacters: ["@", ":"],
|
|
762
734
|
provideResults: query => {
|
|
763
735
|
const providerSuggestions = ( this.viewModel.getVendors().map(v => `@provider:"${v.displayName}"`));
|
|
764
|
-
const allSuggestions = [
|
|
765
|
-
...providerSuggestions,
|
|
766
|
-
...SEARCH_SUGGESTIONS.CAPABILITIES,
|
|
767
|
-
...SEARCH_SUGGESTIONS.VISIBILITY
|
|
768
|
-
];
|
|
736
|
+
const allSuggestions = [...providerSuggestions, ...SEARCH_SUGGESTIONS.CAPABILITIES];
|
|
769
737
|
if (!query.trim()) {
|
|
770
738
|
return allSuggestions;
|
|
771
739
|
}
|
|
@@ -775,8 +743,6 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
775
743
|
return providerSuggestions;
|
|
776
744
|
} else if (lastPart.startsWith("@capability:")) {
|
|
777
745
|
return SEARCH_SUGGESTIONS.CAPABILITIES;
|
|
778
|
-
} else if (lastPart.startsWith("@visible:")) {
|
|
779
|
-
return SEARCH_SUGGESTIONS.VISIBILITY;
|
|
780
746
|
} else if (lastPart.startsWith("@")) {
|
|
781
747
|
return allSuggestions;
|
|
782
748
|
}
|
|
@@ -791,8 +757,8 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
791
757
|
})
|
|
792
758
|
);
|
|
793
759
|
const filterAction = this._register(( new ModelsFilterAction()));
|
|
794
|
-
const clearSearchAction = this._register(( new Action("workbench.models.clearSearch", ( localize(
|
|
795
|
-
const collapseAllAction = this._register(( new Action("workbench.models.collapseAll", ( localize(
|
|
760
|
+
const clearSearchAction = this._register(( new Action("workbench.models.clearSearch", ( localize(6425, "Clear Search")), ThemeIcon.asClassName(preferencesClearInputIcon), false, () => this.clearSearch())));
|
|
761
|
+
const collapseAllAction = this._register(( new Action("workbench.models.collapseAll", ( localize(6426, "Collapse All")), ThemeIcon.asClassName(Codicon.collapseAll), false, () => {
|
|
796
762
|
this.viewModel.collapseAll();
|
|
797
763
|
})));
|
|
798
764
|
collapseAllAction.enabled = ( this.viewModel.viewModelEntries.some(e => isLanguageModelGroupEntry(e) || isLanguageModelProviderEntry(e)));
|
|
@@ -825,7 +791,7 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
825
791
|
supportIcons: true
|
|
826
792
|
};
|
|
827
793
|
this.addButton = this._register(( new Button(this.addButtonContainer, buttonOptions)));
|
|
828
|
-
this.addButton.label = `$(${Codicon.add.id}) ${( localize(
|
|
794
|
+
this.addButton.label = `$(${Codicon.add.id}) ${( localize(6427, "Add Models..."))}`;
|
|
829
795
|
this.addButton.element.classList.add("models-add-model-button");
|
|
830
796
|
this.updateAddModelsButton();
|
|
831
797
|
this._register(this.addButton.onDidClick(e => {
|
|
@@ -839,9 +805,10 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
839
805
|
this.tableContainer = append(container, $(".models-table-container"));
|
|
840
806
|
this.createTable();
|
|
841
807
|
this._register(this.viewModel.onDidChangeGrouping(() => this.createTable()));
|
|
842
|
-
this._register(
|
|
843
|
-
this.
|
|
844
|
-
|
|
808
|
+
this._register(this.chatEntitlementService.onDidChangeEntitlement(() => {
|
|
809
|
+
this.updateAddModelsButton();
|
|
810
|
+
this.createTable();
|
|
811
|
+
}));
|
|
845
812
|
this._register(
|
|
846
813
|
this.languageModelsService.onDidChangeLanguageModelVendors(() => this.updateAddModelsButton())
|
|
847
814
|
);
|
|
@@ -856,7 +823,7 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
856
823
|
clearNode(this.tableContainer);
|
|
857
824
|
const gutterColumnRenderer = this.instantiationService.createInstance(GutterColumnRenderer, this.viewModel);
|
|
858
825
|
const modelNameColumnRenderer = this.instantiationService.createInstance(ModelNameColumnRenderer);
|
|
859
|
-
const
|
|
826
|
+
const combinedCostColumnRenderer = this.instantiationService.createInstance(CombinedCostColumnRenderer);
|
|
860
827
|
const tokenLimitsColumnRenderer = this.instantiationService.createInstance(TokenLimitsColumnRenderer);
|
|
861
828
|
const capabilitiesColumnRenderer = this.instantiationService.createInstance(CapabilitiesColumnRenderer);
|
|
862
829
|
const actionsColumnRenderer = this.instantiationService.createInstance(ActionsColumnRenderer, this.viewModel);
|
|
@@ -881,7 +848,7 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
881
848
|
return row;
|
|
882
849
|
}
|
|
883
850
|
}, {
|
|
884
|
-
label: ( localize(
|
|
851
|
+
label: ( localize(6428, "Name")),
|
|
885
852
|
tooltip: "",
|
|
886
853
|
weight: 0.35,
|
|
887
854
|
minimumWidth: 200,
|
|
@@ -890,20 +857,11 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
890
857
|
return row;
|
|
891
858
|
}
|
|
892
859
|
}];
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
|
|
896
|
-
tooltip: "",
|
|
897
|
-
weight: 0.15,
|
|
898
|
-
minimumWidth: 100,
|
|
899
|
-
templateId: ProviderColumnRenderer.TEMPLATE_ID,
|
|
900
|
-
project(row) {
|
|
901
|
-
return row;
|
|
902
|
-
}
|
|
903
|
-
});
|
|
904
|
-
}
|
|
860
|
+
const hasAnyCostFields = ( this.viewModel.viewModelEntries.some(
|
|
861
|
+
e => !isLanguageModelProviderEntry(e) && !isLanguageModelGroupEntry(e) && !isStatusEntry(e) && (e.model.metadata.inputCost !== undefined || e.model.metadata.outputCost !== undefined || e.model.metadata.cacheCost !== undefined)
|
|
862
|
+
));
|
|
905
863
|
columns.push({
|
|
906
|
-
label: ( localize(
|
|
864
|
+
label: ( localize(6429, "Context Size")),
|
|
907
865
|
tooltip: "",
|
|
908
866
|
weight: 0.1,
|
|
909
867
|
minimumWidth: 140,
|
|
@@ -912,20 +870,20 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
912
870
|
return row;
|
|
913
871
|
}
|
|
914
872
|
}, {
|
|
915
|
-
label: ( localize(
|
|
873
|
+
label: ( localize(6430, "Capabilities")),
|
|
916
874
|
tooltip: "",
|
|
917
|
-
weight: 0.
|
|
875
|
+
weight: 0.15,
|
|
918
876
|
minimumWidth: 180,
|
|
919
877
|
templateId: CapabilitiesColumnRenderer.TEMPLATE_ID,
|
|
920
878
|
project(row) {
|
|
921
879
|
return row;
|
|
922
880
|
}
|
|
923
881
|
}, {
|
|
924
|
-
label: ( localize(
|
|
882
|
+
label: hasAnyCostFields ? ( localize(6431, "Cost (Credits per 1M Tokens)")) : ( localize(6432, "Pricing")),
|
|
925
883
|
tooltip: "",
|
|
926
|
-
weight: 0.
|
|
927
|
-
minimumWidth:
|
|
928
|
-
templateId:
|
|
884
|
+
weight: hasAnyCostFields ? 0.24 : 0.15,
|
|
885
|
+
minimumWidth: hasAnyCostFields ? 240 : 200,
|
|
886
|
+
templateId: CombinedCostColumnRenderer.TEMPLATE_ID,
|
|
929
887
|
project(row) {
|
|
930
888
|
return row;
|
|
931
889
|
}
|
|
@@ -944,7 +902,7 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
944
902
|
this.instantiationService.createInstance(WorkbenchTable, "ModelsWidget", this.tableContainer, ( new Delegate()), columns, [
|
|
945
903
|
gutterColumnRenderer,
|
|
946
904
|
modelNameColumnRenderer,
|
|
947
|
-
|
|
905
|
+
combinedCostColumnRenderer,
|
|
948
906
|
tokenLimitsColumnRenderer,
|
|
949
907
|
capabilitiesColumnRenderer,
|
|
950
908
|
actionsColumnRenderer,
|
|
@@ -957,46 +915,50 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
957
915
|
accessibilityProvider: {
|
|
958
916
|
getAriaLabel: e => {
|
|
959
917
|
if (isLanguageModelProviderEntry(e)) {
|
|
960
|
-
return localize(
|
|
918
|
+
return localize(6433, "{0} Models", e.vendorEntry.group.name);
|
|
961
919
|
} else if (isLanguageModelGroupEntry(e)) {
|
|
962
|
-
return e.id === "visible" ? ( localize(
|
|
920
|
+
return e.id === "visible" ? ( localize(6434, "Visible Models")) : ( localize(6435, "Hidden Models"));
|
|
963
921
|
} else if (isStatusEntry(e)) {
|
|
964
|
-
return localize(
|
|
922
|
+
return localize(6436, "Status: {0}", e.message);
|
|
965
923
|
}
|
|
966
924
|
const ariaLabels = [];
|
|
967
925
|
ariaLabels.push(( localize(
|
|
968
|
-
|
|
926
|
+
6437,
|
|
969
927
|
"{0} from {1}",
|
|
970
928
|
e.model.metadata.name,
|
|
971
929
|
e.model.provider.vendor.displayName
|
|
972
930
|
)));
|
|
973
931
|
if (e.model.metadata.maxInputTokens || e.model.metadata.maxOutputTokens) {
|
|
974
932
|
const totalTokens = (e.model.metadata.maxInputTokens ?? 0) + (e.model.metadata.maxOutputTokens ?? 0);
|
|
975
|
-
ariaLabels.push(( localize(
|
|
933
|
+
ariaLabels.push(( localize(6438, "Context size: {0} tokens", formatTokenCount(totalTokens))));
|
|
976
934
|
}
|
|
977
935
|
if (e.model.metadata.capabilities) {
|
|
978
936
|
ariaLabels.push(( localize(
|
|
979
|
-
|
|
937
|
+
6439,
|
|
980
938
|
"Capabilities: {0}",
|
|
981
939
|
( Object.keys(e.model.metadata.capabilities)).join(", ")
|
|
982
940
|
)));
|
|
983
941
|
}
|
|
984
|
-
const
|
|
985
|
-
if (
|
|
986
|
-
ariaLabels.push(( localize(
|
|
987
|
-
|
|
988
|
-
|
|
989
|
-
|
|
942
|
+
const pricingText = e.model.metadata.pricing ?? "-";
|
|
943
|
+
if (pricingText !== "-") {
|
|
944
|
+
ariaLabels.push(( localize(6440, "Pricing: {0}", pricingText)));
|
|
945
|
+
}
|
|
946
|
+
if (e.model.metadata.inputCost !== undefined) {
|
|
947
|
+
ariaLabels.push(e.model.metadata.inputCost === 1 ? ( localize(6441, "Input cost: {0} credit per 1M tokens", e.model.metadata.inputCost)) : ( localize(6442, "Input cost: {0} credits per 1M tokens", e.model.metadata.inputCost)));
|
|
948
|
+
}
|
|
949
|
+
if (e.model.metadata.outputCost !== undefined) {
|
|
950
|
+
ariaLabels.push(e.model.metadata.outputCost === 1 ? ( localize(6443, "Output cost: {0} credit per 1M tokens", e.model.metadata.outputCost)) : ( localize(
|
|
951
|
+
6444,
|
|
952
|
+
"Output cost: {0} credits per 1M tokens",
|
|
953
|
+
e.model.metadata.outputCost
|
|
990
954
|
)));
|
|
991
955
|
}
|
|
992
|
-
if (e.model.
|
|
993
|
-
ariaLabels.push(( localize(
|
|
994
|
-
} else {
|
|
995
|
-
ariaLabels.push(( localize(6210, "This model is hidden in the chat model picker")));
|
|
956
|
+
if (e.model.metadata.cacheCost !== undefined) {
|
|
957
|
+
ariaLabels.push(e.model.metadata.cacheCost === 1 ? ( localize(6445, "Cache cost: {0} credit per 1M tokens", e.model.metadata.cacheCost)) : ( localize(6446, "Cache cost: {0} credits per 1M tokens", e.model.metadata.cacheCost)));
|
|
996
958
|
}
|
|
997
959
|
return ariaLabels.join(". ");
|
|
998
960
|
},
|
|
999
|
-
getWidgetAriaLabel: () => ( localize(
|
|
961
|
+
getWidgetAriaLabel: () => ( localize(6447, "Language Models"))
|
|
1000
962
|
},
|
|
1001
963
|
multipleSelectionSupport: true,
|
|
1002
964
|
setRowLineHeight: false,
|
|
@@ -1017,20 +979,6 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
1017
979
|
let configureGroup;
|
|
1018
980
|
let configureVendor;
|
|
1019
981
|
if (selectedModelEntries.length) {
|
|
1020
|
-
const visibleModels = selectedModelEntries.filter(entry => entry.model.visible);
|
|
1021
|
-
const hiddenModels = selectedModelEntries.filter(entry => !entry.model.visible);
|
|
1022
|
-
actions.push(toAction({
|
|
1023
|
-
id: "hideSelectedModels",
|
|
1024
|
-
label: ( localize(6212, "Hide in the Chat Model Picker")),
|
|
1025
|
-
enabled: visibleModels.length > 0,
|
|
1026
|
-
run: () => this.viewModel.setModelsVisibility(selectedModelEntries, false)
|
|
1027
|
-
}));
|
|
1028
|
-
actions.push(toAction({
|
|
1029
|
-
id: "showSelectedModels",
|
|
1030
|
-
label: ( localize(6213, "Show in the Chat Model Picker")),
|
|
1031
|
-
enabled: hiddenModels.length > 0,
|
|
1032
|
-
run: () => this.viewModel.setModelsVisibility(selectedModelEntries, true)
|
|
1033
|
-
}));
|
|
1034
982
|
if (selectedModelEntries.length === 1) {
|
|
1035
983
|
const configActions = this.languageModelsService.getModelConfigurationActions(selectedModelEntries[0].model.identifier);
|
|
1036
984
|
if (configActions.length) {
|
|
@@ -1049,18 +997,6 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
1049
997
|
} else if (selectedEntries.length === 1) {
|
|
1050
998
|
const entry = e.element;
|
|
1051
999
|
if (isLanguageModelProviderEntry(entry)) {
|
|
1052
|
-
if (!entry.vendorEntry.vendor.isDefault) {
|
|
1053
|
-
actions.push(toAction({
|
|
1054
|
-
id: "hideAllModels",
|
|
1055
|
-
label: ( localize(6214, "Hide in the Chat Model Picker")),
|
|
1056
|
-
run: () => this.viewModel.setGroupVisibility(entry, false)
|
|
1057
|
-
}));
|
|
1058
|
-
actions.push(toAction({
|
|
1059
|
-
id: "showAllModels",
|
|
1060
|
-
label: ( localize(6215, "Show in the Chat Model Picker")),
|
|
1061
|
-
run: () => this.viewModel.setGroupVisibility(entry, true)
|
|
1062
|
-
}));
|
|
1063
|
-
}
|
|
1064
1000
|
configureGroup = entry.vendorEntry.group.name;
|
|
1065
1001
|
configureVendor = entry.vendorEntry.vendor;
|
|
1066
1002
|
}
|
|
@@ -1073,7 +1009,7 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
1073
1009
|
if (configureVendor.managementCommand) {
|
|
1074
1010
|
actions.push(toAction({
|
|
1075
1011
|
id: "configureVendor",
|
|
1076
|
-
label: ( localize(
|
|
1012
|
+
label: ( localize(6448, "Configure")),
|
|
1077
1013
|
run: async () => {
|
|
1078
1014
|
await this.commandService.executeCommand(configureVendor.managementCommand, configureVendor.vendor);
|
|
1079
1015
|
await this.viewModel.refresh();
|
|
@@ -1082,7 +1018,7 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
1082
1018
|
} else {
|
|
1083
1019
|
actions.push(toAction({
|
|
1084
1020
|
id: "configureVendor",
|
|
1085
|
-
label: ( localize(
|
|
1021
|
+
label: ( localize(6448, "Configure")),
|
|
1086
1022
|
run: () => this.languageModelsService.configureLanguageModelsProviderGroup(configureVendor.vendor, configureGroup)
|
|
1087
1023
|
}));
|
|
1088
1024
|
}
|
|
@@ -1126,8 +1062,6 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
1126
1062
|
}
|
|
1127
1063
|
if (isLanguageModelProviderEntry(element) || isLanguageModelGroupEntry(element)) {
|
|
1128
1064
|
this.viewModel.toggleCollapsed(element);
|
|
1129
|
-
} else if (!isMouseEvent(browserEvent) || browserEvent.detail === 2) {
|
|
1130
|
-
this.viewModel.toggleVisibility(element);
|
|
1131
1065
|
}
|
|
1132
1066
|
}));
|
|
1133
1067
|
this.tableDisposables.add(
|
|
@@ -1146,7 +1080,7 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
1146
1080
|
const isManagedEntitlement = entitlement === ChatEntitlement.Business || entitlement === ChatEntitlement.Enterprise;
|
|
1147
1081
|
const supportsAddingModels = this.chatEntitlementService.isInternal || (isManagedEntitlement && this.chatEntitlementService.clientByokEnabled) || (entitlement !== ChatEntitlement.Unknown && entitlement !== ChatEntitlement.Available && !isManagedEntitlement);
|
|
1148
1082
|
this.addButton.enabled = supportsAddingModels && configurableVendors.length > 0;
|
|
1149
|
-
this.addButton.setTitle(!supportsAddingModels && isManagedEntitlement ? ( localize(
|
|
1083
|
+
this.addButton.setTitle(!supportsAddingModels && isManagedEntitlement ? ( localize(6449, "Adding models is managed by your organization")) : "");
|
|
1150
1084
|
this.dropdownActions = ( configurableVendors.map(vendor => toAction({
|
|
1151
1085
|
id: `enable-${vendor.vendor}`,
|
|
1152
1086
|
label: vendor.displayName,
|