@codingame/monaco-vscode-chat-service-override 33.0.8 → 34.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.js +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
package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatQueuePickerActionItem.js
CHANGED
|
@@ -41,7 +41,7 @@ let ChatQueuePickerActionItem = class ChatQueuePickerActionItem extends BaseActi
|
|
|
41
41
|
this.contextKeyService = contextKeyService;
|
|
42
42
|
this._altKeyPressed = false;
|
|
43
43
|
const isSteerDefault = this._isSteerDefault();
|
|
44
|
-
this._primaryActionAction = this._register(( new Action("chat.queuePickerPrimary", isSteerDefault ? ( localize(
|
|
44
|
+
this._primaryActionAction = this._register(( new Action("chat.queuePickerPrimary", isSteerDefault ? ( localize(7737, "Steer with Message")) : ( localize(7738, "Add to Queue")), ThemeIcon.asClassName(isSteerDefault ? Codicon.arrowUp : Codicon.add), !!this.contextKeyService.getContextKeyValue(ChatContextKeys.inputHasText.key), () => this._runDefaultAction())));
|
|
45
45
|
this._primaryAction = this._register(( new ActionViewItem(undefined, this._primaryActionAction, {
|
|
46
46
|
icon: true,
|
|
47
47
|
label: false
|
|
@@ -49,7 +49,7 @@ let ChatQueuePickerActionItem = class ChatQueuePickerActionItem extends BaseActi
|
|
|
49
49
|
this._register(this.contextKeyService.onDidChangeContext(e => {
|
|
50
50
|
this._primaryActionAction.enabled = !!this.contextKeyService.getContextKeyValue(ChatContextKeys.inputHasText.key);
|
|
51
51
|
}));
|
|
52
|
-
const dropdownAction = this._register(( new Action("chat.queuePickerDropdown", ( localize(
|
|
52
|
+
const dropdownAction = this._register(( new Action("chat.queuePickerDropdown", ( localize(7739, "More Actions...")))));
|
|
53
53
|
this._dropdown = this._register(( new ChevronActionWidgetDropdown(dropdownAction, {
|
|
54
54
|
actionProvider: {
|
|
55
55
|
getActions: () => this._getDropdownActions()
|
|
@@ -77,7 +77,7 @@ let ChatQueuePickerActionItem = class ChatQueuePickerActionItem extends BaseActi
|
|
|
77
77
|
}
|
|
78
78
|
_updatePrimaryAction() {
|
|
79
79
|
const isSteer = this._isEffectiveSteer();
|
|
80
|
-
this._primaryActionAction.label = isSteer ? ( localize(
|
|
80
|
+
this._primaryActionAction.label = isSteer ? ( localize(7737, "Steer with Message")) : ( localize(7738, "Add to Queue"));
|
|
81
81
|
this._primaryActionAction.class = ThemeIcon.asClassName(isSteer ? Codicon.arrowUp : Codicon.add);
|
|
82
82
|
}
|
|
83
83
|
_runDefaultAction() {
|
|
@@ -134,7 +134,7 @@ let ChatQueuePickerActionItem = class ChatQueuePickerActionItem extends BaseActi
|
|
|
134
134
|
const steerKeybinding = this.keybindingService.lookupKeybinding(ChatSteerWithMessageAction.ID, lookupContext, true);
|
|
135
135
|
const queueAction = {
|
|
136
136
|
id: ChatQueueMessageAction.ID,
|
|
137
|
-
label: ( localize(
|
|
137
|
+
label: ( localize(7738, "Add to Queue")),
|
|
138
138
|
tooltip: "",
|
|
139
139
|
enabled: true,
|
|
140
140
|
checked: !isSteerDefault,
|
|
@@ -143,7 +143,7 @@ let ChatQueuePickerActionItem = class ChatQueuePickerActionItem extends BaseActi
|
|
|
143
143
|
keybinding: queueKeybinding,
|
|
144
144
|
hover: {
|
|
145
145
|
content: ( localize(
|
|
146
|
-
|
|
146
|
+
7740,
|
|
147
147
|
"Queue this message to send after the current request completes. The current response will finish uninterrupted before the queued message is sent."
|
|
148
148
|
))
|
|
149
149
|
},
|
|
@@ -153,7 +153,7 @@ let ChatQueuePickerActionItem = class ChatQueuePickerActionItem extends BaseActi
|
|
|
153
153
|
};
|
|
154
154
|
const steerAction = {
|
|
155
155
|
id: ChatSteerWithMessageAction.ID,
|
|
156
|
-
label: ( localize(
|
|
156
|
+
label: ( localize(7737, "Steer with Message")),
|
|
157
157
|
tooltip: "",
|
|
158
158
|
enabled: true,
|
|
159
159
|
checked: isSteerDefault,
|
|
@@ -162,7 +162,7 @@ let ChatQueuePickerActionItem = class ChatQueuePickerActionItem extends BaseActi
|
|
|
162
162
|
keybinding: steerKeybinding,
|
|
163
163
|
hover: {
|
|
164
164
|
content: ( localize(
|
|
165
|
-
|
|
165
|
+
7741,
|
|
166
166
|
"Send this message at the next opportunity, signaling the current request to yield. The current response will stop and the new message will be sent immediately."
|
|
167
167
|
))
|
|
168
168
|
},
|
|
@@ -172,13 +172,13 @@ let ChatQueuePickerActionItem = class ChatQueuePickerActionItem extends BaseActi
|
|
|
172
172
|
};
|
|
173
173
|
const sendAction = {
|
|
174
174
|
id: "_" + ChatSubmitAction.ID,
|
|
175
|
-
label: ( localize(
|
|
175
|
+
label: ( localize(7742, "Stop and Send")),
|
|
176
176
|
tooltip: "",
|
|
177
177
|
enabled: true,
|
|
178
178
|
icon: Codicon.arrowRight,
|
|
179
179
|
class: undefined,
|
|
180
180
|
hover: {
|
|
181
|
-
content: ( localize(
|
|
181
|
+
content: ( localize(7743, "Cancel the current request and send this message immediately."))
|
|
182
182
|
},
|
|
183
183
|
run: () => {
|
|
184
184
|
this.commandService.executeCommand(ChatSubmitAction.ID);
|
package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.js
CHANGED
|
@@ -217,6 +217,9 @@ let SlashCommandCompletions = class SlashCommandCompletions extends Disposable {
|
|
|
217
217
|
if (!widget || !widget.viewModel) {
|
|
218
218
|
return null;
|
|
219
219
|
}
|
|
220
|
+
if (isAgentHostBackedWidget(widget)) {
|
|
221
|
+
return;
|
|
222
|
+
}
|
|
220
223
|
const range = computeCompletionRanges(model, position, SlashCommandWord);
|
|
221
224
|
if (!range) {
|
|
222
225
|
return null;
|
|
@@ -230,7 +233,7 @@ let SlashCommandCompletions = class SlashCommandCompletions extends Disposable {
|
|
|
230
233
|
return;
|
|
231
234
|
}
|
|
232
235
|
const currentSessionType = getChatSessionType(widget.viewModel.model.sessionResource);
|
|
233
|
-
const promptCommands = await this.harnessService.getSlashCommands(
|
|
236
|
+
const promptCommands = await this.harnessService.getSlashCommands(widget.viewModel.model.sessionResource, token);
|
|
234
237
|
if (promptCommands.length === 0) {
|
|
235
238
|
return null;
|
|
236
239
|
}
|
|
@@ -243,16 +246,19 @@ let SlashCommandCompletions = class SlashCommandCompletions extends Disposable {
|
|
|
243
246
|
}
|
|
244
247
|
return {
|
|
245
248
|
suggestions: ( userInvocableCommands.map((c, i) => {
|
|
246
|
-
const
|
|
249
|
+
const colonLabel = `/${c.name}`;
|
|
250
|
+
const hasSubcommand = c.name.includes(":");
|
|
251
|
+
const displayLabel = hasSubcommand ? `/${c.name.replace(/:/g, " ")}` : colonLabel;
|
|
247
252
|
const description = c.description;
|
|
248
253
|
return {
|
|
249
254
|
label: {
|
|
250
|
-
label,
|
|
255
|
+
label: displayLabel,
|
|
251
256
|
description
|
|
252
257
|
},
|
|
253
|
-
insertText: `${
|
|
258
|
+
insertText: `${displayLabel} `,
|
|
254
259
|
documentation: c.description,
|
|
255
260
|
range,
|
|
261
|
+
filterText: hasSubcommand ? `${colonLabel} ${displayLabel}` : undefined,
|
|
256
262
|
sortText: "a".repeat(i + 1),
|
|
257
263
|
kind: CompletionItemKind.Text
|
|
258
264
|
};
|
|
@@ -271,6 +277,9 @@ let SlashCommandCompletions = class SlashCommandCompletions extends Disposable {
|
|
|
271
277
|
if (!widget || !widget.viewModel) {
|
|
272
278
|
return null;
|
|
273
279
|
}
|
|
280
|
+
if (isAgentHostBackedWidget(widget)) {
|
|
281
|
+
return;
|
|
282
|
+
}
|
|
274
283
|
const range = computeCompletionRanges(model, position, /\/[\p{L}0-9_.-]*/gu);
|
|
275
284
|
if (!range) {
|
|
276
285
|
return null;
|
|
@@ -561,7 +570,7 @@ let AgentCompletions = class AgentCompletions extends Disposable {
|
|
|
561
570
|
if (!isEmptyUpToCompletionWord(model, range)) {
|
|
562
571
|
return;
|
|
563
572
|
}
|
|
564
|
-
const label = ( localize(
|
|
573
|
+
const label = ( localize(7749, "Install Chat Extensions..."));
|
|
565
574
|
const item = {
|
|
566
575
|
label,
|
|
567
576
|
insertText: "",
|
|
@@ -709,7 +718,7 @@ class StartParameterizedPromptAction extends Action2 {
|
|
|
709
718
|
messages = await prompt.resolve(args, cts.token);
|
|
710
719
|
} catch (e) {
|
|
711
720
|
if (!cts.token.isCancellationRequested) {
|
|
712
|
-
notificationService.error(( localize(
|
|
721
|
+
notificationService.error(( localize(7750, "Error resolving prompt: {0}", String(e))));
|
|
713
722
|
}
|
|
714
723
|
replaceTextWith("");
|
|
715
724
|
return;
|
|
@@ -737,15 +746,15 @@ class StartParameterizedPromptAction extends Action2 {
|
|
|
737
746
|
id: generateUuid(),
|
|
738
747
|
kind: "generic",
|
|
739
748
|
value: contents,
|
|
740
|
-
name: ( localize(
|
|
749
|
+
name: ( localize(7751, "Prompt Resource"))
|
|
741
750
|
});
|
|
742
751
|
}
|
|
743
752
|
} else if (mimeType && getAttachableImageExtension(mimeType)) {
|
|
744
753
|
const resized = await resizeImage(contents).catch(() => decodeBase64(contents).buffer);
|
|
745
754
|
chatWidget.attachmentModel.addContext({
|
|
746
755
|
id: generateUuid(),
|
|
747
|
-
name: ( localize(
|
|
748
|
-
fullName: ( localize(
|
|
756
|
+
name: ( localize(7752, "Prompt Image")),
|
|
757
|
+
fullName: ( localize(7752, "Prompt Image")),
|
|
749
758
|
value: resized,
|
|
750
759
|
kind: "image",
|
|
751
760
|
references: validURI && [{
|
|
@@ -1042,7 +1051,7 @@ let BuiltinDynamicCompletions = class BuiltinDynamicCompletions extends Disposab
|
|
|
1042
1051
|
result.suggestions.push({
|
|
1043
1052
|
label: {
|
|
1044
1053
|
label: sessionPrefix,
|
|
1045
|
-
description: ( localize(
|
|
1054
|
+
description: ( localize(7753, "Attach a chat session"))
|
|
1046
1055
|
},
|
|
1047
1056
|
filterText: sessionPrefix,
|
|
1048
1057
|
insertText: `${sessionPrefix}:`,
|
|
@@ -1128,7 +1137,7 @@ let BuiltinDynamicCompletions = class BuiltinDynamicCompletions extends Disposab
|
|
|
1128
1137
|
const uriLabel = this.labelService.getUriLabel(resource, {
|
|
1129
1138
|
relative: true
|
|
1130
1139
|
});
|
|
1131
|
-
const labelDescription = description ? ( localize(
|
|
1140
|
+
const labelDescription = description ? ( localize(7754, "{0} ({1})", uriLabel, description)) : uriLabel;
|
|
1132
1141
|
const sortText = boostPriority ? " " : "!";
|
|
1133
1142
|
return {
|
|
1134
1143
|
label: {
|
|
@@ -1180,7 +1189,7 @@ let BuiltinDynamicCompletions = class BuiltinDynamicCompletions extends Disposab
|
|
|
1180
1189
|
}
|
|
1181
1190
|
}
|
|
1182
1191
|
seen.add(resource);
|
|
1183
|
-
const newLen = result.suggestions.push(makeCompletionItem(resource, FileKind.FILE, i === 0 ? ( localize(
|
|
1192
|
+
const newLen = result.suggestions.push(makeCompletionItem(resource, FileKind.FILE, i === 0 ? ( localize(7755, "Active file")) : undefined, i === 0));
|
|
1184
1193
|
if (newLen - len >= 5) {
|
|
1185
1194
|
break;
|
|
1186
1195
|
}
|
|
@@ -1369,7 +1378,7 @@ let ToolCompletions = class ToolCompletions extends Disposable {
|
|
|
1369
1378
|
name = item.referenceName;
|
|
1370
1379
|
} else {
|
|
1371
1380
|
const source = item.source;
|
|
1372
|
-
detail = ( localize(
|
|
1381
|
+
detail = ( localize(7756, "{0}: {1}", source.label, item.displayName));
|
|
1373
1382
|
name = item.toolReferenceName ?? item.displayName;
|
|
1374
1383
|
documentation = item.userDescription ?? item.modelDescription;
|
|
1375
1384
|
}
|
package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorContrib.js
CHANGED
|
@@ -316,7 +316,7 @@ let InputEditorDecorations = class InputEditorDecorations extends Disposable {
|
|
|
316
316
|
const agentSubcommandPart = parsedRequest.find(p => p instanceof ChatRequestAgentSubcommandPart);
|
|
317
317
|
const slashCommandPart = parsedRequest.find(p => p instanceof ChatRequestSlashCommandPart);
|
|
318
318
|
const slashPromptPart = parsedRequest.find(p => p instanceof ChatRequestSlashPromptPart);
|
|
319
|
-
const promptSlashCommand = slashPromptPart ? await this.customizationHarnessService.resolvePromptSlashCommand(slashPromptPart.name,
|
|
319
|
+
const promptSlashCommand = slashPromptPart ? await this.customizationHarnessService.resolvePromptSlashCommand(slashPromptPart.name, viewModel.sessionResource, token) : undefined;
|
|
320
320
|
if (token.isCancellationRequested) {
|
|
321
321
|
return;
|
|
322
322
|
}
|
|
@@ -366,7 +366,7 @@ let InputEditorDecorations = class InputEditorDecorations extends Disposable {
|
|
|
366
366
|
promptHoverMessage.appendText("\n");
|
|
367
367
|
}
|
|
368
368
|
promptHoverMessage.appendText(( localize(
|
|
369
|
-
|
|
369
|
+
7757,
|
|
370
370
|
"Click to open {0}",
|
|
371
371
|
this.labelService.getUriLabel(promptSlashCommand.uri, {
|
|
372
372
|
relative: true
|
package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorHover.js
CHANGED
|
@@ -62,7 +62,7 @@ let ChatAgentHoverParticipant = class ChatAgentHoverParticipant {
|
|
|
62
62
|
return ( new RenderedHoverParts([renderedHoverPart]));
|
|
63
63
|
}
|
|
64
64
|
getAccessibleContent(hoverPart) {
|
|
65
|
-
return localize(
|
|
65
|
+
return localize(7758, "There is a chat agent hover part here.");
|
|
66
66
|
}
|
|
67
67
|
};
|
|
68
68
|
ChatAgentHoverParticipant = ( __decorate([( __param(1, IInstantiationService)), ( __param(2, IChatWidgetService)), ( __param(3, ICommandService))], ChatAgentHoverParticipant));
|
|
@@ -253,7 +253,7 @@ let QuickChat = class QuickChat extends Disposable {
|
|
|
253
253
|
disclaimerElement.classList.toggle("hidden", !showDisclaimer);
|
|
254
254
|
if (showDisclaimer) {
|
|
255
255
|
const renderedMarkdown = disposables.add(this.markdownRendererService.render(( new MarkdownString(( localize(
|
|
256
|
-
|
|
256
|
+
7802,
|
|
257
257
|
"By continuing with {0} Copilot, you agree to {1}'s [Terms]({2}) and [Privacy Statement]({3})",
|
|
258
258
|
product.defaultChatAgent?.provider?.default?.name ?? "",
|
|
259
259
|
product.defaultChatAgent?.provider?.default?.name ?? "",
|
|
@@ -182,7 +182,7 @@ let ChatEditor = class ChatEditor extends AbstractEditorWithViewState {
|
|
|
182
182
|
let isContributedChatSession = false;
|
|
183
183
|
const chatSessionType = input.getSessionType();
|
|
184
184
|
if (chatSessionType !== localChatSessionType) {
|
|
185
|
-
const loadingMessage = ( localize(
|
|
185
|
+
const loadingMessage = ( localize(7803, "Loading..."));
|
|
186
186
|
this.showLoadingInChatWidget(loadingMessage);
|
|
187
187
|
}
|
|
188
188
|
await super.setInput(input, options, context, token);
|
|
@@ -31,7 +31,6 @@ import { IActivityService } from "@codingame/monaco-vscode-api/vscode/vs/workben
|
|
|
31
31
|
import { IAgentSessionsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsService.service";
|
|
32
32
|
import { IAgentSession } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsModel";
|
|
33
33
|
import { IChatEntitlementService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/chat/common/chatEntitlementService.service";
|
|
34
|
-
import { IWorkbenchEnvironmentService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/environment/common/environmentService.service";
|
|
35
34
|
import { IHostService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/host/browser/host.service";
|
|
36
35
|
export declare class ChatViewPane extends ViewPane implements IViewWelcomeDelegate {
|
|
37
36
|
private readonly storageService;
|
|
@@ -47,7 +46,6 @@ export declare class ChatViewPane extends ViewPane implements IViewWelcomeDelega
|
|
|
47
46
|
private readonly chatEntitlementService;
|
|
48
47
|
private readonly commandService;
|
|
49
48
|
private readonly activityService;
|
|
50
|
-
private readonly workbenchEnvironmentService;
|
|
51
49
|
private readonly hostService;
|
|
52
50
|
private readonly memento;
|
|
53
51
|
private readonly viewState;
|
|
@@ -60,7 +58,7 @@ export declare class ChatViewPane extends ViewPane implements IViewWelcomeDelega
|
|
|
60
58
|
private readonly loadSessionCts;
|
|
61
59
|
private readonly modelRef;
|
|
62
60
|
private readonly activityBadge;
|
|
63
|
-
constructor(options: IViewPaneOptions, keybindingService: IKeybindingService, contextMenuService: IContextMenuService, configurationService: IConfigurationService, contextKeyService: IContextKeyService, viewDescriptorService: IViewDescriptorService, instantiationService: IInstantiationService, openerService: IOpenerService, themeService: IThemeService, hoverService: IHoverService, storageService: IStorageService, chatService: IChatService, chatAgentService: IChatAgentService, logService: ILogService, notificationService: INotificationService, layoutService: IWorkbenchLayoutService, chatSessionsService: IChatSessionsService, telemetryService: ITelemetryService, lifecycleService: ILifecycleService, progressService: IProgressService, agentSessionsService: IAgentSessionsService, chatEntitlementService: IChatEntitlementService, commandService: ICommandService, activityService: IActivityService,
|
|
61
|
+
constructor(options: IViewPaneOptions, keybindingService: IKeybindingService, contextMenuService: IContextMenuService, configurationService: IConfigurationService, contextKeyService: IContextKeyService, viewDescriptorService: IViewDescriptorService, instantiationService: IInstantiationService, openerService: IOpenerService, themeService: IThemeService, hoverService: IHoverService, storageService: IStorageService, chatService: IChatService, chatAgentService: IChatAgentService, logService: ILogService, notificationService: INotificationService, layoutService: IWorkbenchLayoutService, chatSessionsService: IChatSessionsService, telemetryService: ITelemetryService, lifecycleService: ILifecycleService, progressService: IProgressService, agentSessionsService: IAgentSessionsService, chatEntitlementService: IChatEntitlementService, commandService: ICommandService, activityService: IActivityService, hostService: IHostService);
|
|
64
62
|
private updateContextKeys;
|
|
65
63
|
private getViewPositionAndLocation;
|
|
66
64
|
private getSessionHoverPosition;
|
|
@@ -107,6 +105,19 @@ export declare class ChatViewPane extends ViewPane implements IViewWelcomeDelega
|
|
|
107
105
|
private setupContextMenu;
|
|
108
106
|
private applyModel;
|
|
109
107
|
private _applyModel;
|
|
108
|
+
/**
|
|
109
|
+
* Force-start a new local chat session in the view, bypassing the
|
|
110
|
+
* default-provider override applied by `showModel()`. Used by the
|
|
111
|
+
* picker when the user explicitly selects "Local".
|
|
112
|
+
*/
|
|
113
|
+
startNewLocalSession(): Promise<IChatModel | undefined>;
|
|
114
|
+
/**
|
|
115
|
+
* When the experimental `chat.agentHost.defaultChatProvider` setting is
|
|
116
|
+
* enabled and an agent-host contribution is registered, return a new
|
|
117
|
+
* session reference for the agent host instead of the built-in local
|
|
118
|
+
* provider. Returns `undefined` to fall back to `startNewLocalSession`.
|
|
119
|
+
*/
|
|
120
|
+
private acquireDefaultNewSession;
|
|
110
121
|
private showModel;
|
|
111
122
|
private updateWidgetLockState;
|
|
112
123
|
private clear;
|
|
@@ -7,11 +7,13 @@ import { StandardMouseEvent } from '@codingame/monaco-vscode-api/vscode/vs/base/
|
|
|
7
7
|
import { Button } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/button/button';
|
|
8
8
|
import { Sash, Orientation } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/sash/sash';
|
|
9
9
|
import { CancellationToken, CancellationTokenSource } from '@codingame/monaco-vscode-api/vscode/vs/base/common/cancellation';
|
|
10
|
+
import { generateUuid } from '@codingame/monaco-vscode-api/vscode/vs/base/common/uuid';
|
|
10
11
|
import { Event } from '@codingame/monaco-vscode-api/vscode/vs/base/common/event';
|
|
11
12
|
import { MutableDisposable, toDisposable, DisposableStore } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
|
|
12
13
|
import { MarshalledId } from '@codingame/monaco-vscode-api/vscode/vs/base/common/marshallingIds';
|
|
13
14
|
import '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/index';
|
|
14
15
|
import { isEqual } from '@codingame/monaco-vscode-api/vscode/vs/base/common/resources';
|
|
16
|
+
import { URI } from '@codingame/monaco-vscode-api/vscode/vs/base/common/uri';
|
|
15
17
|
import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
16
18
|
import { MenuWorkbenchToolBar } from '@codingame/monaco-vscode-api/vscode/vs/platform/actions/browser/toolbar';
|
|
17
19
|
import { MenuId } from '@codingame/monaco-vscode-api/vscode/vs/platform/actions/common/actions';
|
|
@@ -57,7 +59,7 @@ import { IChatService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/c
|
|
|
57
59
|
import { localChatSessionType } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatSessionsService';
|
|
58
60
|
import { IChatSessionsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatSessionsService.service';
|
|
59
61
|
import { LocalChatSessionUri, getChatSessionType } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/model/chatUri';
|
|
60
|
-
import { ChatConfiguration, ChatAgentLocation, ChatModeKind } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
|
|
62
|
+
import { ChatConfiguration, ChatAgentLocation, ChatModeKind, getDefaultNewChatSessionType } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
|
|
61
63
|
import { AgentSessionsControl } from '@codingame/monaco-vscode-katex-common/vscode/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsControl';
|
|
62
64
|
import { ACTION_ID_NEW_CHAT } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/actions/chatActions';
|
|
63
65
|
import { ChatWidget } from '@codingame/monaco-vscode-katex-common/vscode/vs/workbench/contrib/chat/browser/widget/chatWidget';
|
|
@@ -76,7 +78,6 @@ import { HoverPosition } from '@codingame/monaco-vscode-api/vscode/vs/base/brows
|
|
|
76
78
|
import { ChatEntitlementContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/chat/common/chatEntitlementService';
|
|
77
79
|
import { IChatEntitlementService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/chat/common/chatEntitlementService.service';
|
|
78
80
|
import { toErrorMessage } from '@codingame/monaco-vscode-api/vscode/vs/base/common/errorMessage';
|
|
79
|
-
import { IWorkbenchEnvironmentService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/environment/common/environmentService.service';
|
|
80
81
|
import { IHostService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/host/browser/host.service';
|
|
81
82
|
import { autorun } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/reactions/autorun';
|
|
82
83
|
|
|
@@ -111,7 +112,6 @@ let ChatViewPane = class ChatViewPane extends ViewPane {
|
|
|
111
112
|
chatEntitlementService,
|
|
112
113
|
commandService,
|
|
113
114
|
activityService,
|
|
114
|
-
workbenchEnvironmentService,
|
|
115
115
|
hostService
|
|
116
116
|
) {
|
|
117
117
|
super(
|
|
@@ -139,7 +139,6 @@ let ChatViewPane = class ChatViewPane extends ViewPane {
|
|
|
139
139
|
this.chatEntitlementService = chatEntitlementService;
|
|
140
140
|
this.commandService = commandService;
|
|
141
141
|
this.activityService = activityService;
|
|
142
|
-
this.workbenchEnvironmentService = workbenchEnvironmentService;
|
|
143
142
|
this.hostService = hostService;
|
|
144
143
|
this.lastDimensionsPerOrientation = ( new Map());
|
|
145
144
|
this.loadSessionCts = this._register(( new MutableDisposable()));
|
|
@@ -339,7 +338,7 @@ let ChatViewPane = class ChatViewPane extends ViewPane {
|
|
|
339
338
|
const sessionsContainer = this.sessionsContainer = parent.appendChild($(".agent-sessions-container"));
|
|
340
339
|
const sessionsTitleContainer = this.sessionsTitleContainer = append(sessionsContainer, $(".agent-sessions-title-container"));
|
|
341
340
|
const sessionsTitle = this.sessionsTitle = append(sessionsTitleContainer, $("span.agent-sessions-title"));
|
|
342
|
-
sessionsTitle.textContent = ( localize(
|
|
341
|
+
sessionsTitle.textContent = ( localize(7822, "Sessions"));
|
|
343
342
|
this._register(addDisposableListener(sessionsTitle, EventType.CLICK, () => {
|
|
344
343
|
this.sessionsControl?.scrollToTop();
|
|
345
344
|
this.sessionsControl?.focus();
|
|
@@ -367,7 +366,7 @@ let ChatViewPane = class ChatViewPane extends ViewPane {
|
|
|
367
366
|
...defaultButtonStyles,
|
|
368
367
|
secondary: true
|
|
369
368
|
})));
|
|
370
|
-
newSessionButton.label = ( localize(
|
|
369
|
+
newSessionButton.label = ( localize(7823, "New Session"));
|
|
371
370
|
this._register(
|
|
372
371
|
newSessionButton.onDidClick(() => this.commandService.executeCommand(ACTION_ID_NEW_CHAT))
|
|
373
372
|
);
|
|
@@ -488,9 +487,7 @@ let ChatViewPane = class ChatViewPane extends ViewPane {
|
|
|
488
487
|
const locationBasedColors = this.getLocationBasedColors();
|
|
489
488
|
const editorOverflowWidgetsDomNode = this.layoutService.getContainer(getWindow(chatControlsContainer)).appendChild($(".chat-editor-overflow.monaco-editor"));
|
|
490
489
|
this._register(toDisposable(() => editorOverflowWidgetsDomNode.remove()));
|
|
491
|
-
|
|
492
|
-
this.createChatTitleControl(chatControlsContainer);
|
|
493
|
-
}
|
|
490
|
+
this.createChatTitleControl(chatControlsContainer);
|
|
494
491
|
const scopedInstantiationService = this._register(this.instantiationService.createChild(( new ServiceCollection([IContextKeyService, this.scopedContextKeyService]))));
|
|
495
492
|
this._widget = this._register(
|
|
496
493
|
scopedInstantiationService.createInstance(ChatWidget, ChatAgentLocation.Chat, {
|
|
@@ -509,11 +506,9 @@ let ChatViewPane = class ChatViewPane extends ViewPane {
|
|
|
509
506
|
},
|
|
510
507
|
editorOverflowWidgetsDomNode,
|
|
511
508
|
enableImplicitContext: true,
|
|
512
|
-
enableWorkingSet:
|
|
509
|
+
enableWorkingSet: "explicit",
|
|
513
510
|
supportsChangingModes: true,
|
|
514
|
-
dndContainer: parent
|
|
515
|
-
inputEditorMinLines: this.workbenchEnvironmentService.isSessionsWindow ? 2 : undefined,
|
|
516
|
-
isSessionsWindow: this.workbenchEnvironmentService.isSessionsWindow
|
|
511
|
+
dndContainer: parent
|
|
517
512
|
}, {
|
|
518
513
|
listForeground: SIDE_BAR_FOREGROUND,
|
|
519
514
|
listBackground: locationBasedColors.background,
|
|
@@ -614,7 +609,7 @@ let ChatViewPane = class ChatViewPane extends ViewPane {
|
|
|
614
609
|
progressBadgeDisposables.value.add(autorun(reader => {
|
|
615
610
|
if (model.requestInProgress.read(reader)) {
|
|
616
611
|
this.activityBadge.value = this.activityService.showViewActivity(this.id, {
|
|
617
|
-
badge: ( new ProgressBadge(() => ( localize(
|
|
612
|
+
badge: ( new ProgressBadge(() => ( localize(7824, "Agent Session in Progress"))))
|
|
618
613
|
});
|
|
619
614
|
} else {
|
|
620
615
|
this.activityBadge.clear();
|
|
@@ -655,19 +650,55 @@ let ChatViewPane = class ChatViewPane extends ViewPane {
|
|
|
655
650
|
) : undefined;
|
|
656
651
|
await this.showModel(CancellationToken.None, modelRef);
|
|
657
652
|
}
|
|
653
|
+
async startNewLocalSession() {
|
|
654
|
+
const ref = this.chatService.startNewLocalSession(ChatAgentLocation.Chat, {
|
|
655
|
+
debugOwner: "ChatViewPane#startNewLocalSession"
|
|
656
|
+
});
|
|
657
|
+
return this.showModel(CancellationToken.None, ref);
|
|
658
|
+
}
|
|
659
|
+
async acquireDefaultNewSession(token) {
|
|
660
|
+
const defaultType = getDefaultNewChatSessionType(this.configurationService, this.chatSessionsService);
|
|
661
|
+
if (defaultType === localChatSessionType) {
|
|
662
|
+
return undefined;
|
|
663
|
+
}
|
|
664
|
+
const resource = ( URI.from({
|
|
665
|
+
scheme: defaultType,
|
|
666
|
+
path: `/untitled-${generateUuid()}`
|
|
667
|
+
}));
|
|
668
|
+
try {
|
|
669
|
+
return await this.chatService.acquireOrLoadSession(
|
|
670
|
+
resource,
|
|
671
|
+
ChatAgentLocation.Chat,
|
|
672
|
+
token,
|
|
673
|
+
"ChatViewPane#acquireDefaultNewSession"
|
|
674
|
+
);
|
|
675
|
+
} catch (error) {
|
|
676
|
+
this.logService.warn(
|
|
677
|
+
`[ChatViewPane] Failed to acquire default agent-host session, falling back to local`,
|
|
678
|
+
error
|
|
679
|
+
);
|
|
680
|
+
return undefined;
|
|
681
|
+
}
|
|
682
|
+
}
|
|
658
683
|
async showModel(token, modelRef, startNewSession = true) {
|
|
659
684
|
const oldModelResource = this.modelRef.value?.object.sessionResource;
|
|
660
685
|
this.modelRef.value = undefined;
|
|
661
686
|
let ref;
|
|
662
687
|
if (startNewSession) {
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
688
|
+
if (modelRef) {
|
|
689
|
+
ref = modelRef;
|
|
690
|
+
} else if (this.chatService.transferredSessionResource) {
|
|
691
|
+
ref = await this.chatService.acquireOrLoadSession(
|
|
692
|
+
this.chatService.transferredSessionResource,
|
|
693
|
+
ChatAgentLocation.Chat,
|
|
694
|
+
token,
|
|
695
|
+
"ChatViewPane#showModel"
|
|
696
|
+
);
|
|
697
|
+
} else {
|
|
698
|
+
ref = (await this.acquireDefaultNewSession(token)) ?? this.chatService.startNewLocalSession(ChatAgentLocation.Chat, {
|
|
699
|
+
debugOwner: "ChatViewPane#showModel"
|
|
700
|
+
});
|
|
701
|
+
}
|
|
671
702
|
if (!ref) {
|
|
672
703
|
throw ( new Error("Could not start chat session"));
|
|
673
704
|
}
|
|
@@ -781,7 +812,7 @@ let ChatViewPane = class ChatViewPane extends ViewPane {
|
|
|
781
812
|
return undefined;
|
|
782
813
|
}
|
|
783
814
|
this.logService.error(`Failed to load chat session '${( sessionResource.toString())}'`, err);
|
|
784
|
-
this.notificationService.error(( localize(
|
|
815
|
+
this.notificationService.error(( localize(7825, "Failed to open chat session: {0}", toErrorMessage(err))));
|
|
785
816
|
const result = await this.showModel(token, undefined);
|
|
786
817
|
this.logService.trace(
|
|
787
818
|
`[ChatViewPane] loadSession done total=${Date.now() - t0}ms uri=${( sessionResource.toString())} error=true`
|
|
@@ -1021,6 +1052,6 @@ let ChatViewPane = class ChatViewPane extends ViewPane {
|
|
|
1021
1052
|
} : undefined;
|
|
1022
1053
|
}
|
|
1023
1054
|
};
|
|
1024
|
-
ChatViewPane = ChatViewPane_1 = ( __decorate([( __param(1, IKeybindingService)), ( __param(2, IContextMenuService)), ( __param(3, IConfigurationService)), ( __param(4, IContextKeyService)), ( __param(5, IViewDescriptorService)), ( __param(6, IInstantiationService)), ( __param(7, IOpenerService)), ( __param(8, IThemeService)), ( __param(9, IHoverService)), ( __param(10, IStorageService)), ( __param(11, IChatService)), ( __param(12, IChatAgentService)), ( __param(13, ILogService)), ( __param(14, INotificationService)), ( __param(15, IWorkbenchLayoutService)), ( __param(16, IChatSessionsService)), ( __param(17, ITelemetryService)), ( __param(18, ILifecycleService)), ( __param(19, IProgressService)), ( __param(20, IAgentSessionsService)), ( __param(21, IChatEntitlementService)), ( __param(22, ICommandService)), ( __param(23, IActivityService)), ( __param(24,
|
|
1055
|
+
ChatViewPane = ChatViewPane_1 = ( __decorate([( __param(1, IKeybindingService)), ( __param(2, IContextMenuService)), ( __param(3, IConfigurationService)), ( __param(4, IContextKeyService)), ( __param(5, IViewDescriptorService)), ( __param(6, IInstantiationService)), ( __param(7, IOpenerService)), ( __param(8, IThemeService)), ( __param(9, IHoverService)), ( __param(10, IStorageService)), ( __param(11, IChatService)), ( __param(12, IChatAgentService)), ( __param(13, ILogService)), ( __param(14, INotificationService)), ( __param(15, IWorkbenchLayoutService)), ( __param(16, IChatSessionsService)), ( __param(17, ITelemetryService)), ( __param(18, ILifecycleService)), ( __param(19, IProgressService)), ( __param(20, IAgentSessionsService)), ( __param(21, IChatEntitlementService)), ( __param(22, ICommandService)), ( __param(23, IActivityService)), ( __param(24, IHostService))], ChatViewPane));
|
|
1025
1056
|
|
|
1026
1057
|
export { ChatViewPane };
|
package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewTitleControl.js
CHANGED
|
@@ -23,7 +23,7 @@ let ChatViewTitleControl = class ChatViewTitleControl extends Disposable {
|
|
|
23
23
|
ChatViewTitleControl_1 = this;
|
|
24
24
|
}
|
|
25
25
|
static {
|
|
26
|
-
this.DEFAULT_TITLE = ( localize(
|
|
26
|
+
this.DEFAULT_TITLE = ( localize(7826, "Chat"));
|
|
27
27
|
}
|
|
28
28
|
static {
|
|
29
29
|
this.PICK_AGENT_SESSION_ACTION_ID = "workbench.action.chat.pickAgentSession";
|
|
@@ -48,7 +48,7 @@ let ChatViewTitleControl = class ChatViewTitleControl extends Disposable {
|
|
|
48
48
|
constructor() {
|
|
49
49
|
super({
|
|
50
50
|
id: ChatViewTitleControl_1.PICK_AGENT_SESSION_ACTION_ID,
|
|
51
|
-
title: ( localize(
|
|
51
|
+
title: ( localize(7827, "Pick Agent Session")),
|
|
52
52
|
f1: false,
|
|
53
53
|
menu: [{
|
|
54
54
|
id: MenuId.ChatViewSessionTitleNavigationToolbar,
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { IContextKeyService } from "@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey.service";
|
|
2
|
+
import { IStorageService } from "@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage.service";
|
|
3
|
+
import { ILanguageModelsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/languageModels.service";
|
|
4
|
+
/**
|
|
5
|
+
* Storage key prefix for persisted model selections.
|
|
6
|
+
* Full key format: `chat.currentLanguageModel.{location}[.{sessionType}]`
|
|
7
|
+
*/
|
|
8
|
+
export declare const SELECTED_MODEL_STORAGE_KEY_PREFIX = "chat.currentLanguageModel.";
|
|
9
|
+
/**
|
|
10
|
+
* Builds the storage key used to persist the selected language model for a
|
|
11
|
+
* given chat location and optional session type.
|
|
12
|
+
*
|
|
13
|
+
* Matches the keys written by `chatInputPart.ts` so that other consumers
|
|
14
|
+
* can read the persisted model selection without depending on widget internals.
|
|
15
|
+
*/
|
|
16
|
+
export declare function getSelectedModelStorageKey(location: string, sessionType?: string): string;
|
|
17
|
+
/**
|
|
18
|
+
* Resolves the currently selected chat model identifier using a two-step
|
|
19
|
+
* strategy:
|
|
20
|
+
*
|
|
21
|
+
* 1. Read the `chatModelId` context key (set when a chat widget is active).
|
|
22
|
+
* 2. Fall back to the persisted storage value written by `chatInputPart`.
|
|
23
|
+
*
|
|
24
|
+
* Returns the raw model identifier string (may include a vendor prefix like
|
|
25
|
+
* `"copilot/gpt-4.1"` from storage, or a short id like `"gpt-4.1"` from
|
|
26
|
+
* the context key), or `undefined` if no selection is available.
|
|
27
|
+
*/
|
|
28
|
+
export declare function getSelectedModelIdentifier(contextKeyService: IContextKeyService, storageService: IStorageService): string | undefined;
|
|
29
|
+
/**
|
|
30
|
+
* Resolves the vendor of the currently selected chat model.
|
|
31
|
+
*
|
|
32
|
+
* Tries the language model registry first (authoritative when models are
|
|
33
|
+
* registered), then falls back to extracting the vendor prefix from the
|
|
34
|
+
* persisted model identifier (e.g. `"copilot/gpt-4.1"` → `"copilot"`).
|
|
35
|
+
*
|
|
36
|
+
* Returns `undefined` if no model selection is available.
|
|
37
|
+
*/
|
|
38
|
+
export declare function getSelectedModelVendor(contextKeyService: IContextKeyService, storageService: IStorageService, languageModelsService: ILanguageModelsService): string | undefined;
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
|
|
2
|
+
import { StorageScope } from '@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage';
|
|
3
|
+
import { ChatContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/actions/chatContextKeys';
|
|
4
|
+
|
|
5
|
+
const SELECTED_MODEL_STORAGE_KEY_PREFIX = 'chat.currentLanguageModel.';
|
|
6
|
+
function getSelectedModelStorageKey(location, sessionType) {
|
|
7
|
+
if (sessionType) {
|
|
8
|
+
return `${SELECTED_MODEL_STORAGE_KEY_PREFIX}${location}.${sessionType}`;
|
|
9
|
+
}
|
|
10
|
+
return `${SELECTED_MODEL_STORAGE_KEY_PREFIX}${location}`;
|
|
11
|
+
}
|
|
12
|
+
function getSelectedModelIdentifier(contextKeyService, storageService) {
|
|
13
|
+
const contextKeyModelId = contextKeyService.getContextKeyValue(ChatContextKeys.chatModelId.key);
|
|
14
|
+
if (contextKeyModelId) {
|
|
15
|
+
return contextKeyModelId;
|
|
16
|
+
}
|
|
17
|
+
const location = contextKeyService.getContextKeyValue(ChatContextKeys.location.key) ?? 'panel';
|
|
18
|
+
const sessionType = contextKeyService.getContextKeyValue(ChatContextKeys.chatSessionType.key) ?? '';
|
|
19
|
+
const candidateKeys = sessionType
|
|
20
|
+
? [getSelectedModelStorageKey(location, sessionType), getSelectedModelStorageKey(location)]
|
|
21
|
+
: [getSelectedModelStorageKey(location)];
|
|
22
|
+
for (const key of candidateKeys) {
|
|
23
|
+
const persisted = storageService.get(key, StorageScope.APPLICATION);
|
|
24
|
+
if (persisted) {
|
|
25
|
+
return persisted;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
return undefined;
|
|
29
|
+
}
|
|
30
|
+
function getSelectedModelVendor(contextKeyService, storageService, languageModelsService) {
|
|
31
|
+
const modelId = getSelectedModelIdentifier(contextKeyService, storageService);
|
|
32
|
+
if (!modelId) {
|
|
33
|
+
return undefined;
|
|
34
|
+
}
|
|
35
|
+
const shortId = modelId.includes('/') ? modelId.split('/').pop() : modelId;
|
|
36
|
+
const metadata = languageModelsService.lookupLanguageModel(shortId)
|
|
37
|
+
?? languageModelsService.lookupLanguageModel(modelId);
|
|
38
|
+
if (metadata) {
|
|
39
|
+
return metadata.vendor;
|
|
40
|
+
}
|
|
41
|
+
if (modelId.includes('/')) {
|
|
42
|
+
return modelId.split('/')[0];
|
|
43
|
+
}
|
|
44
|
+
return undefined;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
export { SELECTED_MODEL_STORAGE_KEY_PREFIX, getSelectedModelIdentifier, getSelectedModelStorageKey, getSelectedModelVendor };
|