@codingame/monaco-vscode-chat-service-override 33.0.9 → 34.0.1
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 +19 -5
- package/package.json +5 -5
- package/vscode/src/vs/platform/agentHost/browser/agentHostIpcChannelTransport.d.ts +32 -0
- package/vscode/src/vs/platform/agentHost/browser/agentHostIpcChannelTransport.js +77 -0
- package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostProtocolClient.d.ts +84 -17
- package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostProtocolClient.js +235 -190
- package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostServiceImpl.d.ts +3 -2
- package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostServiceImpl.js +23 -4
- package/vscode/src/vs/platform/agentHost/common/agentHost.config.contribution.d.ts +1 -0
- package/vscode/src/vs/platform/agentHost/common/agentHost.config.contribution.js +22 -0
- package/vscode/src/vs/platform/agentHost/common/agentHostFileSystemProvider.d.ts +107 -8
- package/vscode/src/vs/platform/agentHost/common/agentHostFileSystemProvider.js +272 -49
- package/vscode/src/vs/platform/agentHost/common/agentHostFileSystemService.js +2 -2
- package/vscode/src/vs/platform/agentHost/common/{agentHostPermissionService.d.ts → agentHostResourceService.d.ts} +26 -0
- package/vscode/src/vs/platform/agentHost/common/{agentHostPermissionService.js → agentHostResourceService.js} +11 -1
- package/vscode/src/vs/platform/agentHost/common/agentHostSchema.d.ts +13 -0
- package/vscode/src/vs/platform/agentHost/common/agentHostSchema.js +26 -18
- package/vscode/src/vs/platform/agentHost/common/agentHostStarter.config.contribution.d.ts +1 -0
- package/vscode/src/vs/platform/agentHost/common/agentHostStarter.config.contribution.js +119 -0
- package/vscode/src/vs/platform/agentHost/common/agentService.d.ts +135 -19
- package/vscode/src/vs/platform/agentHost/common/agentService.js +8 -2
- package/vscode/src/vs/platform/agentHost/common/ahpJsonlLogger.d.ts +5 -1
- package/vscode/src/vs/platform/agentHost/common/ahpJsonlLogger.js +85 -22
- package/vscode/src/vs/platform/agentHost/common/customAgents.d.ts +36 -0
- package/vscode/src/vs/platform/agentHost/common/customAgents.js +12 -0
- package/vscode/src/vs/platform/agentHost/common/sandboxConfigSchema.d.ts +81 -0
- package/vscode/src/vs/platform/agentHost/common/sandboxConfigSchema.js +103 -0
- package/vscode/src/vs/platform/agentHost/common/state/agentSubscription.d.ts +86 -10
- package/vscode/src/vs/platform/agentHost/common/state/agentSubscription.js +129 -37
- package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-changeset/reducer.d.ts +12 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-changeset/reducer.js +72 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-root/reducer.d.ts +6 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-root/reducer.js +30 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-session/reducer.d.ts +6 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/{reducers.js → channels-session/reducer.js} +99 -168
- package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-terminal/reducer.d.ts +6 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-terminal/reducer.js +110 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/{errors.d.ts → common/errors.d.ts} +13 -2
- package/vscode/src/vs/platform/agentHost/common/state/protocol/{errors.js → common/errors.js} +1 -2
- package/vscode/src/vs/platform/agentHost/common/state/protocol/common/reducer-helpers.d.ts +17 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/common/reducer-helpers.js +9 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/version/registry.d.ts +33 -8
- package/vscode/src/vs/platform/agentHost/common/state/protocol/version/registry.js +2 -3
- package/vscode/src/vs/platform/agentHost/common/state/sessionActions.d.ts +36 -5
- package/vscode/src/vs/platform/agentHost/common/state/sessionActions.js +6 -3
- package/vscode/src/vs/platform/networkFilter/common/domainMatcher.d.ts +50 -0
- package/vscode/src/vs/platform/networkFilter/common/domainMatcher.js +138 -0
- package/vscode/src/vs/platform/networkFilter/common/networkFilterService.js +3 -3
- package/vscode/src/vs/platform/networkFilter/common/settings.d.ts +12 -0
- package/vscode/src/vs/platform/networkFilter/common/settings.js +14 -0
- package/vscode/src/vs/platform/sandbox/browser/sandboxHelperService.d.ts +4 -1
- package/vscode/src/vs/platform/sandbox/browser/sandboxHelperService.js +9 -0
- package/vscode/src/vs/platform/sandbox/common/sandboxHelperIpc.d.ts +21 -0
- package/vscode/src/vs/platform/sandbox/common/sandboxHelperIpc.js +28 -0
- package/vscode/src/vs/platform/sandbox/common/terminalSandboxCommandRules.d.ts +31 -0
- package/vscode/src/vs/platform/sandbox/common/terminalSandboxCommandRules.js +49 -0
- package/vscode/src/vs/platform/sandbox/common/terminalSandboxEngine.d.ts +182 -0
- package/vscode/src/vs/platform/sandbox/common/terminalSandboxEngine.js +784 -0
- package/vscode/src/vs/platform/sandbox/common/terminalSandboxReadAllowList.d.ts +18 -0
- package/vscode/src/vs/platform/sandbox/common/terminalSandboxReadAllowList.js +305 -0
- package/vscode/src/vs/platform/sandbox/common/terminalSandboxRuntimeConfigurationPerOperation.d.ts +7 -0
- package/vscode/src/vs/platform/sandbox/common/terminalSandboxRuntimeConfigurationPerOperation.js +120 -0
- package/vscode/src/vs/platform/sandbox/common/terminalSandboxService.d.ts +100 -0
- package/vscode/src/vs/platform/sandbox/common/terminalSandboxService.js +10 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityService.js +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 +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +60 -60
- 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 +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +106 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatForkActions.js +22 -36
- 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 +21 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatOpenAgentDebugPanelAction.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPluginActions.js +38 -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 +18 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/createPluginAction.js +20 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/exportAgentHostDebugLogsAction.d.ts +3 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/exportAgentHostDebugLogsAction.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/openCopilotCliStateFileAction.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginActions.d.ts +10 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginActions.js +40 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditor.js +15 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditorInput.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.d.ts +0 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.js +23 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentCustomizationSyncProvider.d.ts +24 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentCustomizationSyncProvider.js +55 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostActiveClientService.d.ts +30 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostActiveClientService.js +119 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostCustomizationService.d.ts +13 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostCustomizationService.js +32 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostLocalCustomizations.d.ts +55 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostLocalCustomizations.js +104 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostModeSynchronizer.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostModeSynchronizer.js +177 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostPermissionUiContribution.d.ts +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostPermissionUiContribution.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostToolUtils.d.ts +6 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostToolUtils.js +14 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostUntitledProvisionalSessionService.d.ts +3 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostUntitledProvisionalSessionService.js +44 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/syncedCustomizationBundler.d.ts +60 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/syncedCustomizationBundler.js +103 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.js +4 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.js +70 -62
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.js +9 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsQuickAccess.js +1 -1
- 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 +6 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.js +38 -28
- 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/aiCustomization/aiCustomizationDebugPanel.d.ts +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.js +22 -31
- 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 +15 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemsModel.d.ts +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemsModel.js +8 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.js +112 -113
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.contribution.js +62 -68
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.d.ts +3 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.js +149 -145
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.js +6 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePagePromptLaunchers.js +25 -25
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCreatorService.js +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.js +5 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedAgentPluginDetail.d.ts +8 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedAgentPluginDetail.js +13 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedMcpServerDetail.d.ts +8 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedMcpServerDetail.js +15 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.js +78 -55
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationManagement.css +140 -67
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationWelcomePromptLaunchers.css +11 -21
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.js +59 -57
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chat.shared.contribution.js +440 -357
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatCustomizationDiscoveryRenderer.js +32 -32
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCacheExplorerView.js +99 -99
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugDetailPanel.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditorInput.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventDetailRenderer.js +20 -20
- 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 +22 -22
- 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 +24 -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.js +33 -33
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugToolCallContentRenderer.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorAccessibility.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationWidget.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatGoalSummaryService.d.ts +21 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatGoalSummaryService.js +115 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatImageCarouselService.js +5 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.js +8 -8
- 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 +6 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.js +28 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.js +187 -106
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/media/chatModelsWidget.css +41 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +30 -30
- package/vscode/src/vs/workbench/contrib/chat/browser/chatQuotaNotification.d.ts +66 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatQuotaNotification.js +346 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatRepoInfo.js +3 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.d.ts +0 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.js +72 -29
- 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 +26 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.d.ts +5 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.js +144 -67
- 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 +126 -80
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.js +32 -31
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/media/chatStatus.css +4 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipCatalog.d.ts +11 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipCatalog.js +40 -33
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.d.ts +5 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.js +25 -24
- 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/contextContrib/chatContext.contribution.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/defaultModelContribution.js +5 -5
- 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.js +1 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/hasByokModelsContribution.d.ts +12 -22
- package/vscode/src/vs/workbench/contrib/chat/browser/hasByokModelsContribution.js +14 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelsConfigurationService.d.ts +6 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelsConfigurationService.js +56 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackEditorActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackEditorContribution.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginAutoUpdate.d.ts +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginAutoUpdate.js +5 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginGitCommandService.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.js +33 -36
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.d.ts +3 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.js +31 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginUrlHandler.d.ts +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginUrlHandler.js +16 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.js +27 -27
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.d.ts +1 -1
- 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 +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.js +24 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/renameTool.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolHelpers.d.ts +18 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolHelpers.js +23 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/usagesTool.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/utilityModelContribution.js +5 -2
- 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/editor/chatInputCompletions.js +22 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorContrib.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorHover.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/chatQuick.js +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 +14 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.js +55 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewTitleControl.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/chatSelectedModel.d.ts +38 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatSelectedModel.js +47 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.js +54 -12
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionOperationLog.js +1 -0
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/common/model/objectMutationLog.d.ts +39 -0
- package/vscode/src/vs/workbench/contrib/chat/common/model/objectMutationLog.js +40 -4
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.d.ts +30 -8
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.js +205 -46
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/fileBackedInstalledPluginsStore.d.ts +4 -3
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/fileBackedInstalledPluginsStore.js +8 -3
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/marketplaceReference.d.ts +57 -0
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/marketplaceReference.js +153 -38
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.d.ts +12 -7
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.js +70 -37
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/workspacePluginSettingsService.js +6 -28
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +18 -18
- 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.js +150 -150
- package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +1 -1
- package/vscode/src/vs/workbench/contrib/imageCarousel/browser/imageCarousel.contribution.js +10 -10
- package/vscode/src/vs/workbench/contrib/imageCarousel/browser/imageCarouselEditor.js +10 -10
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +15 -15
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatDefaultModel.js +2 -2
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +4 -4
- 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 +7 -7
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +17 -17
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibleView.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +21 -21
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatEnabler.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatService.d.ts +4 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatService.js +21 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +2 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/agentHostSandboxForwarder.d.ts +55 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/agentHostSandboxForwarder.js +122 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/alternativeRecommendation.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/alternativeRecommendation.js +41 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers/commandFileWriteParser.d.ts +24 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers/sedFileWriteParser.d.ts +26 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers/sedFileWriteParser.js +142 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.d.ts +52 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.js +232 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.d.ts +65 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.js +225 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.d.ts +27 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.js +143 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.d.ts +37 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.js +205 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/strategyHelpers.d.ts +40 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/strategyHelpers.js +174 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/outputHelpers.d.ts +7 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/outputHelpers.js +43 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.d.ts +52 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +260 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.d.ts +44 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.js +98 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +14 -7
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.d.ts +42 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.js +226 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/commandLineAutoApprover.d.ts +31 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/commandLineAutoApprover.js +392 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/npmScriptAutoApprover.d.ts +45 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/npmScriptAutoApprover.js +243 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAnalyzer.d.ts +54 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAnalyzer.js +10 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.d.ts +20 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.js +310 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.d.ts +27 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.js +177 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineSandboxAnalyzer.d.ts +11 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineSandboxAnalyzer.js +33 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/commandLinePresenter.d.ts +41 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/nodeCommandLinePresenter.d.ts +19 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/nodeCommandLinePresenter.js +37 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/pythonCommandLinePresenter.d.ts +19 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/pythonCommandLinePresenter.js +37 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/rubyCommandLinePresenter.d.ts +19 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/rubyCommandLinePresenter.js +44 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/sandboxedCommandLinePresenter.d.ts +13 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/sandboxedCommandLinePresenter.js +22 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineBackgroundDetachRewriter.d.ts +42 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineBackgroundDetachRewriter.js +102 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineCdPrefixRewriter.d.ts +5 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineCdPrefixRewriter.js +27 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePreventHistoryRewriter.d.ts +14 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePreventHistoryRewriter.js +29 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePwshChainOperatorRewriter.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePwshChainOperatorRewriter.js +33 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineRewriter.d.ts +28 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineSandboxRewriter.d.ts +15 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineSandboxRewriter.js +55 -0
- 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 +3 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.js +31 -9
- 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/monitoring/outputMonitor.d.ts +177 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +518 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/types.d.ts +42 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/types.js +23 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/outputAnalyzer.d.ts +9 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.d.ts +297 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +2961 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.d.ts +29 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.js +63 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sendToTerminalTool.js +14 -14
- 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.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.js +2 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalCommandArtifactCollector.d.ts +17 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalCommandArtifactCollector.js +118 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalToolAutoApprove.d.ts +22 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalToolAutoApprove.js +44 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.d.ts +58 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.js +223 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/sandboxSettingsReader.d.ts +20 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/sandboxSettingsReader.js +81 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.d.ts +63 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.js +349 -0
- package/vscode/src/vs/workbench/services/agentHost/browser/editorRemoteAgentHostServiceClient.d.ts +75 -0
- package/vscode/src/vs/workbench/services/agentHost/browser/editorRemoteAgentHostServiceClient.js +192 -0
- package/vscode/src/vs/workbench/services/agentHost/common/agentHostResourceService.d.ts +89 -0
- package/vscode/src/vs/workbench/services/agentHost/common/{agentHostPermissionService.js → agentHostResourceService.js} +226 -9
- package/vscode/src/vs/platform/agentHost/common/state/protocol/reducers.d.ts +0 -30
- package/vscode/src/vs/platform/agentPlugins/common/pluginParsers.d.ts +0 -119
- package/vscode/src/vs/platform/agentPlugins/common/pluginParsers.js +0 -552
- package/vscode/src/vs/workbench/services/agentHost/common/agentHostPermissionService.d.ts +0 -83
|
@@ -38,6 +38,7 @@ import { IContextKeyService } from '@codingame/monaco-vscode-api/vscode/vs/platf
|
|
|
38
38
|
import { CONTEXT_MODELS_SEARCH_FOCUS } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
|
|
39
39
|
import { IDialogService } from '@codingame/monaco-vscode-api/vscode/vs/platform/dialogs/common/dialogs.service';
|
|
40
40
|
import Severity from '@codingame/monaco-vscode-api/vscode/vs/base/common/severity';
|
|
41
|
+
import { formatTokenCount } from '@codingame/monaco-vscode-katex-common/vscode/vs/workbench/contrib/chat/browser/widget/input/chatModelPicker';
|
|
41
42
|
import { AnchorAlignment } from '@codingame/monaco-vscode-api/vscode/vs/base/common/layout';
|
|
42
43
|
|
|
43
44
|
var ModelNameColumnRenderer_1, CombinedCostColumnRenderer_1, TokenLimitsColumnRenderer_1, ActionsColumnRenderer_1, ChatModelsWidget_1;
|
|
@@ -48,7 +49,7 @@ const VENDOR_ROW_HEIGHT = 30;
|
|
|
48
49
|
const MODEL_ROW_HEIGHT = 26;
|
|
49
50
|
class ModelsFilterAction extends Action {
|
|
50
51
|
constructor() {
|
|
51
|
-
super("workbench.models.filter", ( localize(
|
|
52
|
+
super("workbench.models.filter", ( localize(6549, "Filter")), ThemeIcon.asClassName(Codicon.filter));
|
|
52
53
|
}
|
|
53
54
|
async run() {}
|
|
54
55
|
}
|
|
@@ -99,7 +100,7 @@ let ModelsSearchFilterDropdownMenuActionViewItem = class ModelsSearchFilterDropd
|
|
|
99
100
|
return {
|
|
100
101
|
id: `provider-${vendor}`,
|
|
101
102
|
label: displayName,
|
|
102
|
-
tooltip: ( localize(
|
|
103
|
+
tooltip: ( localize(6550, "Filter by {0}", displayName)),
|
|
103
104
|
class: undefined,
|
|
104
105
|
enabled: true,
|
|
105
106
|
checked: isChecked,
|
|
@@ -116,7 +117,7 @@ let ModelsSearchFilterDropdownMenuActionViewItem = class ModelsSearchFilterDropd
|
|
|
116
117
|
return {
|
|
117
118
|
id: `capability-${capability}`,
|
|
118
119
|
label,
|
|
119
|
-
tooltip: ( localize(
|
|
120
|
+
tooltip: ( localize(6551, "Filter by {0}", label)),
|
|
120
121
|
class: undefined,
|
|
121
122
|
enabled: true,
|
|
122
123
|
checked: isChecked,
|
|
@@ -132,7 +133,7 @@ let ModelsSearchFilterDropdownMenuActionViewItem = class ModelsSearchFilterDropd
|
|
|
132
133
|
}
|
|
133
134
|
getActions() {
|
|
134
135
|
const actions = [];
|
|
135
|
-
actions.push(this.createCapabilityAction("tools", ( localize(
|
|
136
|
+
actions.push(this.createCapabilityAction("tools", ( localize(6552, "Tools"))), this.createCapabilityAction("vision", ( localize(6553, "Vision"))), this.createCapabilityAction("agent", ( localize(6554, "Agent Mode"))));
|
|
136
137
|
const configuredVendors = this.viewModel.getConfiguredVendors();
|
|
137
138
|
if (configuredVendors.length > 1) {
|
|
138
139
|
actions.push(( new Separator()));
|
|
@@ -159,9 +160,12 @@ class ModelsTableColumnRenderer {
|
|
|
159
160
|
const isGroup = isLanguageModelGroupEntry(element);
|
|
160
161
|
const isStatus = isStatusEntry(element);
|
|
161
162
|
templateData.container.classList.add("models-table-column");
|
|
162
|
-
templateData.container.parentElement
|
|
163
|
-
|
|
164
|
-
|
|
163
|
+
const row = templateData.container.parentElement;
|
|
164
|
+
row.classList.toggle("models-vendor-row", isVendor || isGroup);
|
|
165
|
+
row.classList.toggle("models-model-row", !isVendor && !isGroup);
|
|
166
|
+
row.classList.toggle("models-status-row", isStatus);
|
|
167
|
+
const isHidden = (isVendor && element.hidden) || (!isVendor && !isGroup && !isStatus && element.model?.hidden);
|
|
168
|
+
row.classList.toggle("models-row-hidden", !!isHidden);
|
|
165
169
|
if (isVendor) {
|
|
166
170
|
this.renderVendorElement(element, index, templateData);
|
|
167
171
|
} else if (isGroup) {
|
|
@@ -206,6 +210,7 @@ class GutterColumnRenderer extends ModelsTableColumnRenderer {
|
|
|
206
210
|
}
|
|
207
211
|
renderVendorElement(entry, index, templateData) {
|
|
208
212
|
this.renderCollapsableElement(entry, templateData);
|
|
213
|
+
this.renderGroupVisibilityElement(entry, templateData);
|
|
209
214
|
}
|
|
210
215
|
renderGroupElement(entry, index, templateData) {
|
|
211
216
|
this.renderCollapsableElement(entry, templateData);
|
|
@@ -214,7 +219,7 @@ class GutterColumnRenderer extends ModelsTableColumnRenderer {
|
|
|
214
219
|
if (templateData.listRowElement) {
|
|
215
220
|
templateData.listRowElement.setAttribute("aria-expanded", entry.collapsed ? "false" : "true");
|
|
216
221
|
}
|
|
217
|
-
const label = entry.collapsed ? ( localize(
|
|
222
|
+
const label = entry.collapsed ? ( localize(6555, "Expand")) : ( localize(6556, "Collapse"));
|
|
218
223
|
const toggleCollapseAction = {
|
|
219
224
|
id: "toggleCollapse",
|
|
220
225
|
label,
|
|
@@ -228,7 +233,37 @@ class GutterColumnRenderer extends ModelsTableColumnRenderer {
|
|
|
228
233
|
label: false
|
|
229
234
|
});
|
|
230
235
|
}
|
|
231
|
-
renderModelElement(entry, index, templateData) {
|
|
236
|
+
renderModelElement(entry, index, templateData) {
|
|
237
|
+
this.renderModelVisibilityElement(entry, templateData);
|
|
238
|
+
}
|
|
239
|
+
renderGroupVisibilityElement(entry, templateData) {
|
|
240
|
+
const hidden = entry.hidden;
|
|
241
|
+
templateData.actionBar.push({
|
|
242
|
+
id: hidden ? "showGroup" : "hideGroup",
|
|
243
|
+
label: hidden ? ( localize(6557, "Show All Models")) : ( localize(6558, "Hide All Models")),
|
|
244
|
+
tooltip: hidden ? ( localize(6557, "Show All Models")) : ( localize(6558, "Hide All Models")),
|
|
245
|
+
class: `model-visibility-toggle ${ThemeIcon.asClassName(hidden ? Codicon.eyeClosed : Codicon.eye)}`,
|
|
246
|
+
enabled: true,
|
|
247
|
+
run: () => this.viewModel.toggleGroupHidden(entry)
|
|
248
|
+
}, {
|
|
249
|
+
icon: true,
|
|
250
|
+
label: false
|
|
251
|
+
});
|
|
252
|
+
}
|
|
253
|
+
renderModelVisibilityElement(entry, templateData) {
|
|
254
|
+
const hidden = entry.model.hidden;
|
|
255
|
+
templateData.actionBar.push({
|
|
256
|
+
id: hidden ? "showModel" : "hideModel",
|
|
257
|
+
label: hidden ? ( localize(6559, "Show Model")) : ( localize(6560, "Hide Model")),
|
|
258
|
+
tooltip: hidden ? ( localize(6559, "Show Model")) : ( localize(6560, "Hide Model")),
|
|
259
|
+
class: `model-visibility-toggle ${ThemeIcon.asClassName(hidden ? Codicon.eyeClosed : Codicon.eye)}`,
|
|
260
|
+
enabled: true,
|
|
261
|
+
run: () => this.viewModel.toggleModelHidden(entry)
|
|
262
|
+
}, {
|
|
263
|
+
icon: true,
|
|
264
|
+
label: false
|
|
265
|
+
});
|
|
266
|
+
}
|
|
232
267
|
}
|
|
233
268
|
let ModelNameColumnRenderer = class ModelNameColumnRenderer extends ModelsTableColumnRenderer {
|
|
234
269
|
static {
|
|
@@ -249,20 +284,17 @@ let ModelNameColumnRenderer = class ModelNameColumnRenderer extends ModelsTableC
|
|
|
249
284
|
const statusIcon = append(nameContainer, $(".status-icon"));
|
|
250
285
|
const nameLabel = disposables.add(( new HighlightedLabel(append(nameContainer, $(".model-name")))));
|
|
251
286
|
const modelStatusIcon = append(nameContainer, $(".model-status-icon"));
|
|
252
|
-
const actionBar = disposables.add(( new ActionBar(append(nameContainer, $(".model-name-actions")))));
|
|
253
287
|
return {
|
|
254
288
|
container,
|
|
255
289
|
statusIcon,
|
|
256
290
|
nameLabel,
|
|
257
291
|
modelStatusIcon,
|
|
258
|
-
actionBar,
|
|
259
292
|
disposables,
|
|
260
293
|
elementDisposables
|
|
261
294
|
};
|
|
262
295
|
}
|
|
263
296
|
renderElement(entry, index, templateData) {
|
|
264
297
|
clearNode(templateData.modelStatusIcon);
|
|
265
|
-
templateData.actionBar.clear();
|
|
266
298
|
templateData.nameLabel.element.classList.remove("error-status", "warning-status", "info-status");
|
|
267
299
|
super.renderElement(entry, index, templateData);
|
|
268
300
|
}
|
|
@@ -293,7 +325,7 @@ let ModelNameColumnRenderer = class ModelNameColumnRenderer extends ModelsTableC
|
|
|
293
325
|
markdown.appendMarkdown(`**${entry.model.metadata.name}**`);
|
|
294
326
|
if (entry.model.metadata.id !== entry.model.metadata.version) {
|
|
295
327
|
markdown.appendMarkdown(
|
|
296
|
-
` <span style="background-color:#8080802B;"> _${entry.model.metadata.id}
|
|
328
|
+
` <span style="background-color:#8080802B;"> _${entry.model.metadata.id}@${entry.model.metadata.version}_ </span>`
|
|
297
329
|
);
|
|
298
330
|
} else {
|
|
299
331
|
markdown.appendMarkdown(
|
|
@@ -356,8 +388,8 @@ let CombinedCostColumnRenderer = class CombinedCostColumnRenderer extends Models
|
|
|
356
388
|
const elementDisposables = ( new DisposableStore());
|
|
357
389
|
const grid = append(container, $(".model-cost-grid"));
|
|
358
390
|
const inputCell = append(grid, $("span.model-cost-cell"));
|
|
359
|
-
const outputCell = append(grid, $("span.model-cost-cell"));
|
|
360
391
|
const cacheCell = append(grid, $("span.model-cost-cell"));
|
|
392
|
+
const outputCell = append(grid, $("span.model-cost-cell"));
|
|
361
393
|
return {
|
|
362
394
|
container,
|
|
363
395
|
inputCell,
|
|
@@ -369,8 +401,8 @@ let CombinedCostColumnRenderer = class CombinedCostColumnRenderer extends Models
|
|
|
369
401
|
}
|
|
370
402
|
renderElement(entry, index, templateData) {
|
|
371
403
|
templateData.inputCell.textContent = "";
|
|
372
|
-
templateData.outputCell.textContent = "";
|
|
373
404
|
templateData.cacheCell.textContent = "";
|
|
405
|
+
templateData.outputCell.textContent = "";
|
|
374
406
|
super.renderElement(entry, index, templateData);
|
|
375
407
|
}
|
|
376
408
|
renderGroupElement(_element, _index, _templateData) {}
|
|
@@ -383,18 +415,18 @@ let CombinedCostColumnRenderer = class CombinedCostColumnRenderer extends Models
|
|
|
383
415
|
} = entry.model.metadata;
|
|
384
416
|
const hasCost = inputCost !== undefined || outputCost !== undefined || cacheCost !== undefined;
|
|
385
417
|
if (hasCost) {
|
|
386
|
-
templateData.inputCell.textContent = inputCost !== undefined ? ( localize(
|
|
387
|
-
templateData.
|
|
388
|
-
templateData.
|
|
418
|
+
templateData.inputCell.textContent = inputCost !== undefined ? ( localize(6561, "In: {0}", inputCost)) : "";
|
|
419
|
+
templateData.cacheCell.textContent = cacheCost !== undefined ? ( localize(6562, "Cache: {0}", cacheCost)) : "";
|
|
420
|
+
templateData.outputCell.textContent = outputCost !== undefined ? ( localize(6563, "Out: {0}", outputCost)) : "";
|
|
389
421
|
const parts = [];
|
|
390
422
|
if (inputCost !== undefined) {
|
|
391
|
-
parts.push(inputCost === 1 ? ( localize(
|
|
392
|
-
}
|
|
393
|
-
if (outputCost !== undefined) {
|
|
394
|
-
parts.push(outputCost === 1 ? ( localize(6482, "Output: {0} credit per 1M tokens", outputCost)) : ( localize(6483, "Output: {0} credits per 1M tokens", outputCost)));
|
|
423
|
+
parts.push(inputCost === 1 ? ( localize(6564, "Input: {0} credit per 1M tokens", inputCost)) : ( localize(6565, "Input: {0} credits per 1M tokens", inputCost)));
|
|
395
424
|
}
|
|
396
425
|
if (cacheCost !== undefined) {
|
|
397
|
-
parts.push(cacheCost === 1 ? ( localize(
|
|
426
|
+
parts.push(cacheCost === 1 ? ( localize(6566, "Cache: {0} credit per 1M tokens", cacheCost)) : ( localize(6567, "Cache: {0} credits per 1M tokens", cacheCost)));
|
|
427
|
+
}
|
|
428
|
+
if (outputCost !== undefined) {
|
|
429
|
+
parts.push(outputCost === 1 ? ( localize(6568, "Output: {0} credit per 1M tokens", outputCost)) : ( localize(6569, "Output: {0} credits per 1M tokens", outputCost)));
|
|
398
430
|
}
|
|
399
431
|
templateData.elementDisposables.add(
|
|
400
432
|
this.hoverService.setupDelayedHoverAtMouse(templateData.container, () => ({
|
|
@@ -411,7 +443,7 @@ let CombinedCostColumnRenderer = class CombinedCostColumnRenderer extends Models
|
|
|
411
443
|
templateData.inputCell.textContent = pricingText;
|
|
412
444
|
templateData.elementDisposables.add(
|
|
413
445
|
this.hoverService.setupDelayedHoverAtMouse(templateData.container, () => ({
|
|
414
|
-
content: ( localize(
|
|
446
|
+
content: ( localize(6570, "Pricing: {0}", pricingText)),
|
|
415
447
|
appearance: {
|
|
416
448
|
compact: true,
|
|
417
449
|
skipFadeInAnimation: true
|
|
@@ -465,7 +497,7 @@ let TokenLimitsColumnRenderer = class TokenLimitsColumnRenderer extends ModelsTa
|
|
|
465
497
|
const tokenDiv = append(templateData.tokenLimitsElement, $(".token-limit-item"));
|
|
466
498
|
const tokenText = append(tokenDiv, $("span"));
|
|
467
499
|
tokenText.textContent = formatTokenCount(totalTokens);
|
|
468
|
-
markdown.appendMarkdown(`${( localize(
|
|
500
|
+
markdown.appendMarkdown(`${( localize(6571, "Context Size"))}: `);
|
|
469
501
|
markdown.appendMarkdown(`${formatTokenCount(totalTokens)}`);
|
|
470
502
|
}
|
|
471
503
|
templateData.elementDisposables.add(
|
|
@@ -520,7 +552,7 @@ class CapabilitiesColumnRenderer extends ModelsTableColumnRenderer {
|
|
|
520
552
|
templateData.elementDisposables.add(this.createCapabilityButton(
|
|
521
553
|
templateData.metadataRow,
|
|
522
554
|
capabilityMatches?.includes("toolCalling") || false,
|
|
523
|
-
( localize(
|
|
555
|
+
( localize(6572, "Tools")),
|
|
524
556
|
"tools"
|
|
525
557
|
));
|
|
526
558
|
}
|
|
@@ -528,7 +560,7 @@ class CapabilitiesColumnRenderer extends ModelsTableColumnRenderer {
|
|
|
528
560
|
templateData.elementDisposables.add(this.createCapabilityButton(
|
|
529
561
|
templateData.metadataRow,
|
|
530
562
|
capabilityMatches?.includes("vision") || false,
|
|
531
|
-
( localize(
|
|
563
|
+
( localize(6573, "Vision")),
|
|
532
564
|
"vision"
|
|
533
565
|
));
|
|
534
566
|
}
|
|
@@ -546,6 +578,57 @@ class CapabilitiesColumnRenderer extends ModelsTableColumnRenderer {
|
|
|
546
578
|
return disposables;
|
|
547
579
|
}
|
|
548
580
|
}
|
|
581
|
+
function createProviderGroupActions(viewModel, vendor, groupName, languageModelsService, dialogService) {
|
|
582
|
+
const configuration = vendor.configuration;
|
|
583
|
+
if (!configuration) {
|
|
584
|
+
return [];
|
|
585
|
+
}
|
|
586
|
+
const actions = [];
|
|
587
|
+
const configurationProperties = configuration.properties;
|
|
588
|
+
actions.push(toAction({
|
|
589
|
+
id: "goToSettingsAction",
|
|
590
|
+
label: ( localize(6574, "Open in Language Models (JSON)")),
|
|
591
|
+
run: () => languageModelsService.openLanguageModelsProviderGroupSettings(vendor.vendor, groupName)
|
|
592
|
+
}));
|
|
593
|
+
actions.push(( new Separator()));
|
|
594
|
+
actions.push(toAction({
|
|
595
|
+
id: "renameGroupAction",
|
|
596
|
+
label: ( localize(6575, "Rename Group")),
|
|
597
|
+
run: () => languageModelsService.renameLanguageModelsProviderGroup(vendor.vendor, groupName)
|
|
598
|
+
}));
|
|
599
|
+
if (configurationProperties?.apiKey) {
|
|
600
|
+
actions.push(toAction({
|
|
601
|
+
id: "updateApiKeyAction",
|
|
602
|
+
label: ( localize(6576, "Update API Key")),
|
|
603
|
+
run: () => languageModelsService.updateLanguageModelsProviderGroupApiKey(vendor.vendor, groupName)
|
|
604
|
+
}));
|
|
605
|
+
}
|
|
606
|
+
if (configurationProperties?.models?.defaultSnippets?.[0]) {
|
|
607
|
+
actions.push(toAction({
|
|
608
|
+
id: "addModelAction",
|
|
609
|
+
label: ( localize(6577, "Add Model")),
|
|
610
|
+
run: () => languageModelsService.addLanguageModelsProviderGroupModel(vendor.vendor, groupName)
|
|
611
|
+
}));
|
|
612
|
+
}
|
|
613
|
+
actions.push(( new Separator()));
|
|
614
|
+
actions.push(toAction({
|
|
615
|
+
id: "deleteAction",
|
|
616
|
+
label: ( localize(6578, "Delete")),
|
|
617
|
+
class: ThemeIcon.asClassName(Codicon.trash),
|
|
618
|
+
run: async () => {
|
|
619
|
+
const result = await dialogService.confirm({
|
|
620
|
+
type: "info",
|
|
621
|
+
message: ( localize(6579, "Would you like to delete {0}?", groupName))
|
|
622
|
+
});
|
|
623
|
+
if (!result.confirmed) {
|
|
624
|
+
return;
|
|
625
|
+
}
|
|
626
|
+
await languageModelsService.removeLanguageModelsProviderGroup(vendor.vendor, groupName);
|
|
627
|
+
viewModel.refresh();
|
|
628
|
+
}
|
|
629
|
+
}));
|
|
630
|
+
return actions;
|
|
631
|
+
}
|
|
549
632
|
let ActionsColumnRenderer = class ActionsColumnRenderer extends ModelsTableColumnRenderer {
|
|
550
633
|
static {
|
|
551
634
|
ActionsColumnRenderer_1 = this;
|
|
@@ -601,31 +684,17 @@ let ActionsColumnRenderer = class ActionsColumnRenderer extends ModelsTableColum
|
|
|
601
684
|
const primaryActions = [];
|
|
602
685
|
const secondaryActions = [];
|
|
603
686
|
if (vendorEntry.vendor.configuration) {
|
|
604
|
-
secondaryActions.push(
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
label: ( localize(6491, "Delete")),
|
|
612
|
-
class: ThemeIcon.asClassName(Codicon.trash),
|
|
613
|
-
run: async () => {
|
|
614
|
-
const result = await this.dialogService.confirm({
|
|
615
|
-
type: "info",
|
|
616
|
-
message: ( localize(6492, "Would you like to delete {0}?", vendorEntry.group.name))
|
|
617
|
-
});
|
|
618
|
-
if (!result.confirmed) {
|
|
619
|
-
return;
|
|
620
|
-
}
|
|
621
|
-
await this.languageModelsService.removeLanguageModelsProviderGroup(vendorEntry.vendor.vendor, vendorEntry.group.name);
|
|
622
|
-
this.viewModel.refresh();
|
|
623
|
-
}
|
|
624
|
-
}));
|
|
687
|
+
secondaryActions.push(...createProviderGroupActions(
|
|
688
|
+
this.viewModel,
|
|
689
|
+
vendorEntry.vendor,
|
|
690
|
+
vendorEntry.group.name,
|
|
691
|
+
this.languageModelsService,
|
|
692
|
+
this.dialogService
|
|
693
|
+
));
|
|
625
694
|
} else if (vendorEntry.vendor.managementCommand) {
|
|
626
695
|
primaryActions.push(toAction({
|
|
627
696
|
id: "manageVendor",
|
|
628
|
-
label: ( localize(
|
|
697
|
+
label: ( localize(6580, "Manage {0}...", vendorEntry.group.name)),
|
|
629
698
|
class: ThemeIcon.asClassName(Codicon.gear),
|
|
630
699
|
run: async () => {
|
|
631
700
|
await this.commandService.executeCommand(vendorEntry.vendor.managementCommand, vendorEntry.vendor.vendor);
|
|
@@ -643,10 +712,11 @@ let ActionsColumnRenderer = class ActionsColumnRenderer extends ModelsTableColum
|
|
|
643
712
|
}
|
|
644
713
|
const configActions = this.languageModelsService.getModelConfigurationActions(entry.model.identifier);
|
|
645
714
|
const secondaryActions = [...configActions];
|
|
646
|
-
|
|
715
|
+
const vendor = entry.model.provider.vendor;
|
|
716
|
+
if (!vendor.isDefault && !vendor.managementCommand && (configActions.length > 0 || entry.model.metadata.configurationSchema)) {
|
|
647
717
|
secondaryActions.push(toAction({
|
|
648
718
|
id: "configureModel",
|
|
649
|
-
label: ( localize(
|
|
719
|
+
label: ( localize(6581, "Configure...")),
|
|
650
720
|
run: () => this.languageModelsService.configureModel(entry.model.identifier)
|
|
651
721
|
}));
|
|
652
722
|
}
|
|
@@ -656,7 +726,7 @@ let ActionsColumnRenderer = class ActionsColumnRenderer extends ModelsTableColum
|
|
|
656
726
|
const isPinned = this.languageModelsService.isModelPinned(modelIdentifier);
|
|
657
727
|
return toAction({
|
|
658
728
|
id: isPinned ? `unpin.${modelIdentifier}` : `pin.${modelIdentifier}`,
|
|
659
|
-
label: isPinned ? ( localize(
|
|
729
|
+
label: isPinned ? ( localize(6582, "Unpin Model")) : ( localize(6583, "Pin Model")),
|
|
660
730
|
class: ThemeIcon.asClassName(isPinned ? Codicon.pinned : Codicon.pin),
|
|
661
731
|
run: () => {
|
|
662
732
|
if (isPinned) {
|
|
@@ -699,14 +769,6 @@ class ProviderColumnRenderer extends ModelsTableColumnRenderer {
|
|
|
699
769
|
templateData.providerElement.textContent = entry.model.provider.vendor.displayName;
|
|
700
770
|
}
|
|
701
771
|
}
|
|
702
|
-
function formatTokenCount(count) {
|
|
703
|
-
if (count >= 1000000) {
|
|
704
|
-
return `${(count / 1000000).toFixed(1)}M`;
|
|
705
|
-
} else if (count >= 1000) {
|
|
706
|
-
return `${(count / 1000).toFixed(0)}K`;
|
|
707
|
-
}
|
|
708
|
-
return ( count.toString());
|
|
709
|
-
}
|
|
710
772
|
let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
711
773
|
static {
|
|
712
774
|
ChatModelsWidget_1 = this;
|
|
@@ -722,7 +784,8 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
722
784
|
chatEntitlementService,
|
|
723
785
|
editorProgressService,
|
|
724
786
|
commandService,
|
|
725
|
-
contextKeyService
|
|
787
|
+
contextKeyService,
|
|
788
|
+
dialogService
|
|
726
789
|
) {
|
|
727
790
|
super();
|
|
728
791
|
this.languageModelsService = languageModelsService;
|
|
@@ -733,6 +796,7 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
733
796
|
this.editorProgressService = editorProgressService;
|
|
734
797
|
this.commandService = commandService;
|
|
735
798
|
this.contextKeyService = contextKeyService;
|
|
799
|
+
this.dialogService = dialogService;
|
|
736
800
|
this._onDidChangeItemCount = this._register(( new Emitter()));
|
|
737
801
|
this.onDidChangeItemCount = this._onDidChangeItemCount.event;
|
|
738
802
|
this.tableMinWidth = 0;
|
|
@@ -748,7 +812,7 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
748
812
|
}
|
|
749
813
|
create(container) {
|
|
750
814
|
const searchAndButtonContainer = append(container, $(".models-search-and-button-container"));
|
|
751
|
-
const placeholder = ( localize(
|
|
815
|
+
const placeholder = ( localize(6584, "Type to search..."));
|
|
752
816
|
const searchContainer = append(searchAndButtonContainer, $(".models-search-container"));
|
|
753
817
|
this.searchWidget = this._register(
|
|
754
818
|
this.instantiationService.createInstance(SuggestEnabledInput, "chatModelsWidget.searchbox", searchContainer, {
|
|
@@ -779,8 +843,8 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
779
843
|
})
|
|
780
844
|
);
|
|
781
845
|
const filterAction = this._register(( new ModelsFilterAction()));
|
|
782
|
-
const clearSearchAction = this._register(( new Action("workbench.models.clearSearch", ( localize(
|
|
783
|
-
const collapseAllAction = this._register(( new Action("workbench.models.collapseAll", ( localize(
|
|
846
|
+
const clearSearchAction = this._register(( new Action("workbench.models.clearSearch", ( localize(6585, "Clear Search")), ThemeIcon.asClassName(preferencesClearInputIcon), false, () => this.clearSearch())));
|
|
847
|
+
const collapseAllAction = this._register(( new Action("workbench.models.collapseAll", ( localize(6586, "Collapse All")), ThemeIcon.asClassName(Codicon.collapseAll), false, () => {
|
|
784
848
|
this.viewModel.collapseAll();
|
|
785
849
|
})));
|
|
786
850
|
collapseAllAction.enabled = ( this.viewModel.viewModelEntries.some(e => isLanguageModelGroupEntry(e) || isLanguageModelProviderEntry(e)));
|
|
@@ -813,7 +877,7 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
813
877
|
supportIcons: true
|
|
814
878
|
};
|
|
815
879
|
this.addButton = this._register(( new Button(this.addButtonContainer, buttonOptions)));
|
|
816
|
-
this.addButton.label = `$(${Codicon.add.id}) ${( localize(
|
|
880
|
+
this.addButton.label = `$(${Codicon.add.id}) ${( localize(6587, "Add Models..."))}`;
|
|
817
881
|
this.addButton.element.classList.add("models-add-model-button");
|
|
818
882
|
this.updateAddModelsButton();
|
|
819
883
|
this._register(this.addButton.onDidClick(e => {
|
|
@@ -878,14 +942,14 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
878
942
|
label: "",
|
|
879
943
|
tooltip: "",
|
|
880
944
|
weight: 0.05,
|
|
881
|
-
minimumWidth:
|
|
882
|
-
maximumWidth:
|
|
945
|
+
minimumWidth: 64,
|
|
946
|
+
maximumWidth: 64,
|
|
883
947
|
templateId: GutterColumnRenderer.TEMPLATE_ID,
|
|
884
948
|
project(row) {
|
|
885
949
|
return row;
|
|
886
950
|
}
|
|
887
951
|
}, {
|
|
888
|
-
label: ( localize(
|
|
952
|
+
label: ( localize(6588, "Name")),
|
|
889
953
|
tooltip: "",
|
|
890
954
|
weight: 0.35,
|
|
891
955
|
minimumWidth: 200,
|
|
@@ -896,7 +960,7 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
896
960
|
}];
|
|
897
961
|
const isUBB = this.chatEntitlementService.quotas.usageBasedBilling === true;
|
|
898
962
|
columns.push({
|
|
899
|
-
label: ( localize(
|
|
963
|
+
label: ( localize(6589, "Context Size")),
|
|
900
964
|
tooltip: "",
|
|
901
965
|
weight: 0.1,
|
|
902
966
|
minimumWidth: 140,
|
|
@@ -905,7 +969,7 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
905
969
|
return row;
|
|
906
970
|
}
|
|
907
971
|
}, {
|
|
908
|
-
label: ( localize(
|
|
972
|
+
label: ( localize(6590, "Capabilities")),
|
|
909
973
|
tooltip: "",
|
|
910
974
|
weight: 0.15,
|
|
911
975
|
minimumWidth: 180,
|
|
@@ -914,7 +978,7 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
914
978
|
return row;
|
|
915
979
|
}
|
|
916
980
|
}, {
|
|
917
|
-
label: isUBB ? ( localize(
|
|
981
|
+
label: isUBB ? ( localize(6591, "Cost (Credits per 1M Tokens)")) : ( localize(6592, "Pricing")),
|
|
918
982
|
tooltip: "",
|
|
919
983
|
weight: isUBB ? 0.24 : 0.15,
|
|
920
984
|
minimumWidth: isUBB ? 240 : 200,
|
|
@@ -952,50 +1016,55 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
952
1016
|
accessibilityProvider: {
|
|
953
1017
|
getAriaLabel: e => {
|
|
954
1018
|
if (isLanguageModelProviderEntry(e)) {
|
|
955
|
-
return localize(
|
|
1019
|
+
return e.hidden ? ( localize(6593, "{0} Models (hidden)", e.vendorEntry.group.name)) : ( localize(6594, "{0} Models", e.vendorEntry.group.name));
|
|
956
1020
|
} else if (isLanguageModelGroupEntry(e)) {
|
|
957
|
-
return e.id === "visible" ? ( localize(
|
|
1021
|
+
return e.id === "visible" ? ( localize(6595, "Visible Models")) : ( localize(6596, "Hidden Models"));
|
|
958
1022
|
} else if (isStatusEntry(e)) {
|
|
959
|
-
return localize(
|
|
1023
|
+
return localize(6597, "Status: {0}", e.message);
|
|
960
1024
|
}
|
|
961
1025
|
const ariaLabels = [];
|
|
962
|
-
ariaLabels.push(( localize(
|
|
963
|
-
|
|
1026
|
+
ariaLabels.push(e.model.hidden ? ( localize(
|
|
1027
|
+
6598,
|
|
1028
|
+
"{0} from {1} (hidden)",
|
|
1029
|
+
e.model.metadata.name,
|
|
1030
|
+
e.model.provider.vendor.displayName
|
|
1031
|
+
)) : ( localize(
|
|
1032
|
+
6599,
|
|
964
1033
|
"{0} from {1}",
|
|
965
1034
|
e.model.metadata.name,
|
|
966
1035
|
e.model.provider.vendor.displayName
|
|
967
1036
|
)));
|
|
968
1037
|
if (e.model.metadata.maxInputTokens || e.model.metadata.maxOutputTokens) {
|
|
969
1038
|
const totalTokens = (e.model.metadata.maxInputTokens ?? 0) + (e.model.metadata.maxOutputTokens ?? 0);
|
|
970
|
-
ariaLabels.push(( localize(
|
|
1039
|
+
ariaLabels.push(( localize(6600, "Context size: {0} tokens", formatTokenCount(totalTokens))));
|
|
971
1040
|
}
|
|
972
1041
|
if (e.model.metadata.capabilities) {
|
|
973
1042
|
ariaLabels.push(( localize(
|
|
974
|
-
|
|
1043
|
+
6601,
|
|
975
1044
|
"Capabilities: {0}",
|
|
976
1045
|
( Object.keys(e.model.metadata.capabilities)).join(", ")
|
|
977
1046
|
)));
|
|
978
1047
|
}
|
|
979
1048
|
const pricingText = e.model.metadata.pricing ?? "-";
|
|
980
1049
|
if (pricingText !== "-") {
|
|
981
|
-
ariaLabels.push(( localize(
|
|
1050
|
+
ariaLabels.push(( localize(6602, "Pricing: {0}", pricingText)));
|
|
982
1051
|
}
|
|
983
1052
|
if (e.model.metadata.inputCost !== undefined) {
|
|
984
|
-
ariaLabels.push(e.model.metadata.inputCost === 1 ? ( localize(
|
|
1053
|
+
ariaLabels.push(e.model.metadata.inputCost === 1 ? ( localize(6603, "Input cost: {0} credit per 1M tokens", e.model.metadata.inputCost)) : ( localize(6604, "Input cost: {0} credits per 1M tokens", e.model.metadata.inputCost)));
|
|
1054
|
+
}
|
|
1055
|
+
if (e.model.metadata.cacheCost !== undefined) {
|
|
1056
|
+
ariaLabels.push(e.model.metadata.cacheCost === 1 ? ( localize(6605, "Cache cost: {0} credit per 1M tokens", e.model.metadata.cacheCost)) : ( localize(6606, "Cache cost: {0} credits per 1M tokens", e.model.metadata.cacheCost)));
|
|
985
1057
|
}
|
|
986
1058
|
if (e.model.metadata.outputCost !== undefined) {
|
|
987
|
-
ariaLabels.push(e.model.metadata.outputCost === 1 ? ( localize(
|
|
988
|
-
|
|
1059
|
+
ariaLabels.push(e.model.metadata.outputCost === 1 ? ( localize(6607, "Output cost: {0} credit per 1M tokens", e.model.metadata.outputCost)) : ( localize(
|
|
1060
|
+
6608,
|
|
989
1061
|
"Output cost: {0} credits per 1M tokens",
|
|
990
1062
|
e.model.metadata.outputCost
|
|
991
1063
|
)));
|
|
992
1064
|
}
|
|
993
|
-
if (e.model.metadata.cacheCost !== undefined) {
|
|
994
|
-
ariaLabels.push(e.model.metadata.cacheCost === 1 ? ( localize(6518, "Cache cost: {0} credit per 1M tokens", e.model.metadata.cacheCost)) : ( localize(6519, "Cache cost: {0} credits per 1M tokens", e.model.metadata.cacheCost)));
|
|
995
|
-
}
|
|
996
1065
|
return ariaLabels.join(". ");
|
|
997
1066
|
},
|
|
998
|
-
getWidgetAriaLabel: () => ( localize(
|
|
1067
|
+
getWidgetAriaLabel: () => ( localize(6609, "Language Models"))
|
|
999
1068
|
},
|
|
1000
1069
|
multipleSelectionSupport: true,
|
|
1001
1070
|
setRowLineHeight: false,
|
|
@@ -1021,7 +1090,7 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
1021
1090
|
const allPinned = pinnableEntries.every(e => this.languageModelsService.isModelPinned(e.model.identifier));
|
|
1022
1091
|
actions.push(toAction({
|
|
1023
1092
|
id: allPinned ? "unpinModels" : "pinModels",
|
|
1024
|
-
label: allPinned ? ( localize(
|
|
1093
|
+
label: allPinned ? ( localize(6582, "Unpin Model")) : ( localize(6583, "Pin Model")),
|
|
1025
1094
|
class: ThemeIcon.asClassName(allPinned ? Codicon.pinned : Codicon.pin),
|
|
1026
1095
|
run: () => {
|
|
1027
1096
|
for (const entry of pinnableEntries) {
|
|
@@ -1034,6 +1103,13 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
1034
1103
|
}
|
|
1035
1104
|
}));
|
|
1036
1105
|
}
|
|
1106
|
+
const allHidden = selectedModelEntries.every(e => e.model.hidden);
|
|
1107
|
+
actions.push(toAction({
|
|
1108
|
+
id: allHidden ? "showModels" : "hideModels",
|
|
1109
|
+
label: allHidden ? (selectedModelEntries.length === 1 ? ( localize(6559, "Show Model")) : ( localize(6610, "Show Models"))) : (selectedModelEntries.length === 1 ? ( localize(6560, "Hide Model")) : ( localize(6611, "Hide Models"))),
|
|
1110
|
+
class: ThemeIcon.asClassName(allHidden ? Codicon.eyeClosed : Codicon.eye),
|
|
1111
|
+
run: () => this.viewModel.setModelsHidden(selectedModelEntries, !allHidden)
|
|
1112
|
+
}));
|
|
1037
1113
|
if (selectedModelEntries.length === 1) {
|
|
1038
1114
|
const configActions = this.languageModelsService.getModelConfigurationActions(selectedModelEntries[0].model.identifier);
|
|
1039
1115
|
if (configActions.length) {
|
|
@@ -1054,29 +1130,34 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
1054
1130
|
if (isLanguageModelProviderEntry(entry)) {
|
|
1055
1131
|
configureGroup = entry.vendorEntry.group.name;
|
|
1056
1132
|
configureVendor = entry.vendorEntry.vendor;
|
|
1133
|
+
actions.push(toAction({
|
|
1134
|
+
id: entry.hidden ? "showGroup" : "hideGroup",
|
|
1135
|
+
label: entry.hidden ? ( localize(6557, "Show All Models")) : ( localize(6558, "Hide All Models")),
|
|
1136
|
+
class: ThemeIcon.asClassName(entry.hidden ? Codicon.eyeClosed : Codicon.eye),
|
|
1137
|
+
run: () => this.viewModel.toggleGroupHidden(entry)
|
|
1138
|
+
}));
|
|
1057
1139
|
}
|
|
1058
1140
|
}
|
|
1059
1141
|
if (configureGroup && configureVendor) {
|
|
1060
|
-
|
|
1142
|
+
const groupActions = configureVendor.managementCommand ? [toAction({
|
|
1143
|
+
id: "manageVendor",
|
|
1144
|
+
label: ( localize(6580, "Manage {0}...", configureGroup)),
|
|
1145
|
+
run: async () => {
|
|
1146
|
+
await this.commandService.executeCommand(configureVendor.managementCommand, configureVendor.vendor);
|
|
1147
|
+
await this.viewModel.refresh();
|
|
1148
|
+
}
|
|
1149
|
+
})] : createProviderGroupActions(
|
|
1150
|
+
this.viewModel,
|
|
1151
|
+
configureVendor,
|
|
1152
|
+
configureGroup,
|
|
1153
|
+
this.languageModelsService,
|
|
1154
|
+
this.dialogService
|
|
1155
|
+
);
|
|
1156
|
+
if (groupActions.length) {
|
|
1061
1157
|
if (actions.length) {
|
|
1062
1158
|
actions.push(( new Separator()));
|
|
1063
1159
|
}
|
|
1064
|
-
|
|
1065
|
-
actions.push(toAction({
|
|
1066
|
-
id: "configureVendor",
|
|
1067
|
-
label: ( localize(6521, "Configure")),
|
|
1068
|
-
run: async () => {
|
|
1069
|
-
await this.commandService.executeCommand(configureVendor.managementCommand, configureVendor.vendor);
|
|
1070
|
-
await this.viewModel.refresh();
|
|
1071
|
-
}
|
|
1072
|
-
}));
|
|
1073
|
-
} else {
|
|
1074
|
-
actions.push(toAction({
|
|
1075
|
-
id: "configureVendor",
|
|
1076
|
-
label: ( localize(6521, "Configure")),
|
|
1077
|
-
run: () => this.languageModelsService.configureLanguageModelsProviderGroup(configureVendor.vendor, configureGroup)
|
|
1078
|
-
}));
|
|
1079
|
-
}
|
|
1160
|
+
actions.push(...groupActions);
|
|
1080
1161
|
}
|
|
1081
1162
|
}
|
|
1082
1163
|
if (actions.length > 0) {
|
|
@@ -1135,7 +1216,7 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
1135
1216
|
const isManagedEntitlement = entitlement === ChatEntitlement.Business || entitlement === ChatEntitlement.Enterprise;
|
|
1136
1217
|
const supportsAddingModels = this.chatEntitlementService.isInternal || this.chatEntitlementService.clientByokEnabled || (entitlement !== ChatEntitlement.Unknown && entitlement !== ChatEntitlement.Available && !isManagedEntitlement);
|
|
1137
1218
|
this.addButton.enabled = supportsAddingModels && configurableVendors.length > 0;
|
|
1138
|
-
this.addButton.setTitle(!supportsAddingModels && isManagedEntitlement ? ( localize(
|
|
1219
|
+
this.addButton.setTitle(!supportsAddingModels && isManagedEntitlement ? ( localize(6612, "Adding models is managed by your organization")) : "");
|
|
1139
1220
|
const customEndpointVendor = configurableVendors.find(v => v.vendor === "customendpoint");
|
|
1140
1221
|
const customOaiVendor = configurableVendors.find(v => v.vendor === "customoai");
|
|
1141
1222
|
const sortedVendors = configurableVendors.filter(v => v.vendor !== "customendpoint" && v.vendor !== "customoai").sort((a, b) => a.displayName.localeCompare(b.displayName));
|
|
@@ -1204,6 +1285,6 @@ let ChatModelsWidget = class ChatModelsWidget extends Disposable {
|
|
|
1204
1285
|
this._onDidChangeItemCount.fire(this.itemCount);
|
|
1205
1286
|
}
|
|
1206
1287
|
};
|
|
1207
|
-
ChatModelsWidget = ChatModelsWidget_1 = ( __decorate([( __param(0, ILanguageModelsService)), ( __param(1, IInstantiationService)), ( __param(2, IExtensionService)), ( __param(3, IContextMenuService)), ( __param(4, IChatEntitlementService)), ( __param(5, IEditorProgressService)), ( __param(6, ICommandService)), ( __param(7, IContextKeyService))], ChatModelsWidget));
|
|
1288
|
+
ChatModelsWidget = ChatModelsWidget_1 = ( __decorate([( __param(0, ILanguageModelsService)), ( __param(1, IInstantiationService)), ( __param(2, IExtensionService)), ( __param(3, IContextMenuService)), ( __param(4, IChatEntitlementService)), ( __param(5, IEditorProgressService)), ( __param(6, ICommandService)), ( __param(7, IContextKeyService)), ( __param(8, IDialogService))], ChatModelsWidget));
|
|
1208
1289
|
|
|
1209
1290
|
export { ChatModelsWidget };
|