@codingame/monaco-vscode-chat-service-override 33.0.9 → 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
|
@@ -12,8 +12,8 @@ const configurationRegistry = ( Registry.as(Extensions.Configuration));
|
|
|
12
12
|
function createDefaultModelArrays(defaultEntryLabel, defaultEntryDescription) {
|
|
13
13
|
return {
|
|
14
14
|
modelIds: [""],
|
|
15
|
-
modelLabels: [defaultEntryLabel ?? ( localize(
|
|
16
|
-
modelDescriptions: [defaultEntryDescription ?? ( localize(
|
|
15
|
+
modelLabels: [defaultEntryLabel ?? ( localize(6910, "Auto (Vendor Default)"))],
|
|
16
|
+
modelDescriptions: [defaultEntryDescription ?? ( localize(6911, "Use the vendor's default model"))]
|
|
17
17
|
};
|
|
18
18
|
}
|
|
19
19
|
let DefaultModelContribution = class DefaultModelContribution extends Disposable {
|
|
@@ -48,8 +48,8 @@ let DefaultModelContribution = class DefaultModelContribution extends Disposable
|
|
|
48
48
|
modelLabels.length = 0;
|
|
49
49
|
modelDescriptions.length = 0;
|
|
50
50
|
modelIds.push("");
|
|
51
|
-
modelLabels.push(defaultEntryLabel ?? ( localize(
|
|
52
|
-
modelDescriptions.push(defaultEntryDescription ?? ( localize(
|
|
51
|
+
modelLabels.push(defaultEntryLabel ?? ( localize(6910, "Auto (Vendor Default)")));
|
|
52
|
+
modelDescriptions.push(defaultEntryDescription ?? ( localize(6911, "Use the vendor's default model")));
|
|
53
53
|
const models = [];
|
|
54
54
|
const allModelIds = this._languageModelsService.getLanguageModelIds();
|
|
55
55
|
for (const modelId of allModelIds) {
|
|
@@ -119,7 +119,7 @@ let DefaultModelContribution = class DefaultModelContribution extends Disposable
|
|
|
119
119
|
}
|
|
120
120
|
modelIds.push(storedId);
|
|
121
121
|
modelLabels.push(( localize(
|
|
122
|
-
|
|
122
|
+
6912,
|
|
123
123
|
"{0} ({1})",
|
|
124
124
|
model.metadata.name,
|
|
125
125
|
vendorDisplayName ?? model.metadata.vendor
|
|
@@ -5,16 +5,16 @@ import { WorkbenchState } from '@codingame/monaco-vscode-api/vscode/vs/platform/
|
|
|
5
5
|
import { ContributionEnablementState, isContributionDisabled } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/enablement';
|
|
6
6
|
|
|
7
7
|
function createEnablementActions(key, enablementModel, idPrefix) {
|
|
8
|
-
return [( new Action(`${idPrefix}.enable`, ( localize(
|
|
8
|
+
return [( new Action(`${idPrefix}.enable`, ( localize(6913, "Enable")), undefined, true, () => {
|
|
9
9
|
enablementModel.setEnabled(key, ContributionEnablementState.EnabledProfile);
|
|
10
10
|
return Promise.resolve();
|
|
11
|
-
})), ( new Action(`${idPrefix}.enableForWorkspace`, ( localize(
|
|
11
|
+
})), ( new Action(`${idPrefix}.enableForWorkspace`, ( localize(6914, "Enable (Workspace)")), undefined, true, () => {
|
|
12
12
|
enablementModel.setEnabled(key, ContributionEnablementState.EnabledWorkspace);
|
|
13
13
|
return Promise.resolve();
|
|
14
|
-
})), ( new Action(`${idPrefix}.disable`, ( localize(
|
|
14
|
+
})), ( new Action(`${idPrefix}.disable`, ( localize(6915, "Disable")), undefined, true, () => {
|
|
15
15
|
enablementModel.setEnabled(key, ContributionEnablementState.DisabledProfile);
|
|
16
16
|
return Promise.resolve();
|
|
17
|
-
})), ( new Action(`${idPrefix}.disableForWorkspace`, ( localize(
|
|
17
|
+
})), ( new Action(`${idPrefix}.disableForWorkspace`, ( localize(6916, "Disable (Workspace)")), undefined, true, () => {
|
|
18
18
|
enablementModel.setEnabled(key, ContributionEnablementState.DisabledWorkspace);
|
|
19
19
|
return Promise.resolve();
|
|
20
20
|
}))];
|
|
@@ -46,8 +46,8 @@ let EnablementStatusWidget = class EnablementStatusWidget extends Disposable {
|
|
|
46
46
|
};
|
|
47
47
|
EnablementStatusWidget = ( __decorate([( __param(3, IMarkdownRendererService))], EnablementStatusWidget));
|
|
48
48
|
const pluginEnablementLabels = {
|
|
49
|
-
disabledProfile: ( localize(
|
|
50
|
-
disabledWorkspace: ( localize(
|
|
49
|
+
disabledProfile: ( localize(6917, "This plugin is disabled.")),
|
|
50
|
+
disabledWorkspace: ( localize(6918, "This plugin is disabled for this workspace."))
|
|
51
51
|
};
|
|
52
52
|
|
|
53
53
|
export { EnablementStatusWidget, pluginEnablementLabels };
|
|
@@ -4,7 +4,7 @@ import { decodeBase64 } from '@codingame/monaco-vscode-api/vscode/vs/base/common
|
|
|
4
4
|
import { CancellationError } from '@codingame/monaco-vscode-api/vscode/vs/base/common/errors';
|
|
5
5
|
import { joinPath, dirname, isEqualOrParent } from '@codingame/monaco-vscode-api/vscode/vs/base/common/resources';
|
|
6
6
|
import { generateUuid } from '@codingame/monaco-vscode-api/vscode/vs/base/common/uuid';
|
|
7
|
-
import { isSuccess, isClientError, asJson } from '@codingame/monaco-vscode-api/vscode/vs/platform/request/common/request';
|
|
7
|
+
import { retryAfterFromHeaders, isSuccess, isClientError, asJson, readHeader } from '@codingame/monaco-vscode-api/vscode/vs/platform/request/common/request';
|
|
8
8
|
|
|
9
9
|
const GITHUB_HOSTS = ( new Set(["github.com", "www.github.com"]));
|
|
10
10
|
function parseGitHubCloneUrl(cloneUrl) {
|
|
@@ -115,24 +115,6 @@ function isRateLimited(headers) {
|
|
|
115
115
|
}
|
|
116
116
|
return readHeader(headers, "retry-after") !== undefined;
|
|
117
117
|
}
|
|
118
|
-
function retryAfterFromHeaders(headers) {
|
|
119
|
-
if (!headers) {
|
|
120
|
-
return undefined;
|
|
121
|
-
}
|
|
122
|
-
const value = readHeader(headers, "retry-after");
|
|
123
|
-
if (!value) {
|
|
124
|
-
return undefined;
|
|
125
|
-
}
|
|
126
|
-
const parsed = parseInt(value, 10);
|
|
127
|
-
return Number.isFinite(parsed) ? parsed : undefined;
|
|
128
|
-
}
|
|
129
|
-
function readHeader(headers, name) {
|
|
130
|
-
const value = headers[name] ?? headers[name.toLowerCase()];
|
|
131
|
-
if (Array.isArray(value)) {
|
|
132
|
-
return value[0];
|
|
133
|
-
}
|
|
134
|
-
return value;
|
|
135
|
-
}
|
|
136
118
|
async function fetchAndExtractGitHubRepo(
|
|
137
119
|
requestService,
|
|
138
120
|
fileService,
|
|
@@ -8,30 +8,19 @@ import { ILanguageModelsConfigurationService } from "@codingame/monaco-vscode-ap
|
|
|
8
8
|
/**
|
|
9
9
|
* Owns the `github.copilot.hasByokModels` context key. The key is true iff:
|
|
10
10
|
* - `github.copilot.clientByokEnabled` is true (set by `ChatEntitlementService` + Copilot extension),
|
|
11
|
-
* - `chat.
|
|
12
|
-
* - the
|
|
13
|
-
*
|
|
11
|
+
* - `chat.aiDisabled` is off, and
|
|
12
|
+
* - the language-models configuration has at least one non-Copilot vendor group (at any time),
|
|
13
|
+
* or — pre extension scan — the `chatNonCopilotModelsAreUserSelectable` signal is on.
|
|
14
14
|
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
15
|
+
* Strategy (avoids activating BYOK extensions just to gate UI):
|
|
16
|
+
* 1. Restore the last persisted answer for correct warm-reload UI.
|
|
17
|
+
* 2. Configured non-Copilot vendor groups are a positive signal at any time.
|
|
18
|
+
* 3. Pre-registration only, also trust the `chatNonCopilotModelsAreUserSelectable` signal
|
|
19
|
+
* (post-registration it can be stale — model cache lags behind group removal).
|
|
20
|
+
* 4. Only persist `false` after both extension scan and first config load complete, so startup
|
|
21
|
+
* latency doesn't clobber a previously-true answer.
|
|
18
22
|
*
|
|
19
|
-
*
|
|
20
|
-
* `chat.hasByokModels.lastKnown` so UI surfaces gated by this key are correct on warm
|
|
21
|
-
* reload before anything else runs.
|
|
22
|
-
* 2. Whenever the `chatNonCopilotModelsAreUserSelectable` signal flips on — which happens
|
|
23
|
-
* naturally when something else resolves a BYOK vendor (notably `ChatInputPart`, which
|
|
24
|
-
* activates the previously selected model's vendor when restoring its persisted selection) —
|
|
25
|
-
* record `true` and persist it.
|
|
26
|
-
* 3. Once extensions are fully scanned, if there are no configured non-Copilot vendors in the
|
|
27
|
-
* language-models configuration, override a stale optimistic `true` with `false`. Same on
|
|
28
|
-
* runtime removal of all groups, and when the feature flag flips off.
|
|
29
|
-
*
|
|
30
|
-
* The trade-off is the first-time experience: a brand-new user must pick a BYOK model once
|
|
31
|
-
* before this contribution observes the signal and persists the answer. From then on, the
|
|
32
|
-
* answer survives reloads without any activation cost — users without BYOK pay nothing.
|
|
33
|
-
*
|
|
34
|
-
* Eager so the key is bound at workbench startup before any sign-in UI surfaces render.
|
|
23
|
+
* Eager so the key is bound before any sign-in UI renders.
|
|
35
24
|
*/
|
|
36
25
|
export declare class HasByokModelsContribution extends Disposable implements IWorkbenchContribution {
|
|
37
26
|
private readonly _languageModelsConfigurationService;
|
|
@@ -43,6 +32,7 @@ export declare class HasByokModelsContribution extends Disposable implements IWo
|
|
|
43
32
|
private static readonly TRACKED_KEYS;
|
|
44
33
|
private readonly _hasByokModels;
|
|
45
34
|
private _extensionsRegistered;
|
|
35
|
+
private _configurationLoaded;
|
|
46
36
|
constructor(_languageModelsConfigurationService: ILanguageModelsConfigurationService, _contextKeyService: IContextKeyService, _configurationService: IConfigurationService, _storageService: IStorageService, extensionService: IExtensionService);
|
|
47
37
|
private _isFeatureEnabled;
|
|
48
38
|
private _restore;
|
|
@@ -43,6 +43,7 @@ let HasByokModelsContribution = class HasByokModelsContribution extends Disposab
|
|
|
43
43
|
this._configurationService = _configurationService;
|
|
44
44
|
this._storageService = _storageService;
|
|
45
45
|
this._extensionsRegistered = false;
|
|
46
|
+
this._configurationLoaded = false;
|
|
46
47
|
this._hasByokModels = ChatEntitlementContextKeys.hasByokModels.bindTo(this._contextKeyService);
|
|
47
48
|
this._restore();
|
|
48
49
|
this._update();
|
|
@@ -52,16 +53,22 @@ let HasByokModelsContribution = class HasByokModelsContribution extends Disposab
|
|
|
52
53
|
this._update();
|
|
53
54
|
}
|
|
54
55
|
});
|
|
56
|
+
this._languageModelsConfigurationService.whenReady.then(() => {
|
|
57
|
+
if (!this._store.isDisposed) {
|
|
58
|
+
this._configurationLoaded = true;
|
|
59
|
+
this._update();
|
|
60
|
+
}
|
|
61
|
+
});
|
|
55
62
|
this._register(Event.any(Event.filter(
|
|
56
63
|
this._configurationService.onDidChangeConfiguration,
|
|
57
|
-
e => e.affectsConfiguration(ChatConfiguration.
|
|
64
|
+
e => e.affectsConfiguration(ChatConfiguration.AIDisabled)
|
|
58
65
|
), Event.filter(
|
|
59
66
|
this._contextKeyService.onDidChangeContext,
|
|
60
67
|
e => e.affectsSome(HasByokModelsContribution_1.TRACKED_KEYS)
|
|
61
68
|
), this._languageModelsConfigurationService.onDidChangeLanguageModelGroups)(() => this._update()));
|
|
62
69
|
}
|
|
63
70
|
_isFeatureEnabled() {
|
|
64
|
-
return !this._configurationService.getValue(ChatConfiguration.AIDisabled) && !!this.
|
|
71
|
+
return !this._configurationService.getValue(ChatConfiguration.AIDisabled) && !!this._contextKeyService.getContextKeyValue(ChatEntitlementContextKeys.clientByokEnabled.key);
|
|
65
72
|
}
|
|
66
73
|
_restore() {
|
|
67
74
|
if (!this._isFeatureEnabled()) {
|
|
@@ -88,15 +95,16 @@ let HasByokModelsContribution = class HasByokModelsContribution extends Disposab
|
|
|
88
95
|
this._setResult(false);
|
|
89
96
|
return;
|
|
90
97
|
}
|
|
91
|
-
|
|
98
|
+
const hasByokVendor = ( this._languageModelsConfigurationService.getLanguageModelsProviderGroups().some(g => g.vendor !== COPILOT_VENDOR_ID));
|
|
99
|
+
if (hasByokVendor) {
|
|
92
100
|
this._setResult(true);
|
|
93
101
|
return;
|
|
94
102
|
}
|
|
95
|
-
if (!this._extensionsRegistered) {
|
|
103
|
+
if (!this._extensionsRegistered && this._contextKeyService.getContextKeyValue(ChatContextKeys.nonCopilotLanguageModelsAreUserSelectable.key)) {
|
|
104
|
+
this._setResult(true);
|
|
96
105
|
return;
|
|
97
106
|
}
|
|
98
|
-
|
|
99
|
-
if (!hasByokVendor) {
|
|
107
|
+
if (this._extensionsRegistered && this._configurationLoaded) {
|
|
100
108
|
this._setResult(false);
|
|
101
109
|
}
|
|
102
110
|
}
|
package/vscode/src/vs/workbench/contrib/chat/browser/languageModelsConfigurationService.d.ts
CHANGED
|
@@ -4,8 +4,8 @@ import { Mutable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/type
|
|
|
4
4
|
import { URI } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri";
|
|
5
5
|
import { IFileService } from "@codingame/monaco-vscode-api/vscode/vs/platform/files/common/files.service";
|
|
6
6
|
import { IUriIdentityService } from "@codingame/monaco-vscode-api/vscode/vs/platform/uriIdentity/common/uriIdentity.service";
|
|
7
|
+
import { IEditorGroupsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorGroupsService.service";
|
|
7
8
|
import { IEditorService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service";
|
|
8
|
-
import { ITextEditorService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/textfile/common/textEditorService.service";
|
|
9
9
|
import { IUserDataProfileService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/userDataProfile/common/userDataProfile.service";
|
|
10
10
|
import { ITextModel } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/model";
|
|
11
11
|
import { ITextModelService } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/services/resolverService.service";
|
|
@@ -20,14 +20,17 @@ export declare class LanguageModelsConfigurationService extends Disposable imple
|
|
|
20
20
|
private readonly textFileService;
|
|
21
21
|
private readonly textModelService;
|
|
22
22
|
private readonly editorService;
|
|
23
|
-
private readonly
|
|
23
|
+
private readonly editorGroupsService;
|
|
24
24
|
_serviceBrand: undefined;
|
|
25
25
|
private readonly modelsConfigurationFile;
|
|
26
26
|
get configurationFile(): URI;
|
|
27
27
|
private readonly _onDidChangeLanguageModelGroups;
|
|
28
28
|
readonly onDidChangeLanguageModelGroups: Event<readonly ILanguageModelsProviderGroup[]>;
|
|
29
29
|
private languageModelsProviderGroups;
|
|
30
|
-
|
|
30
|
+
/** Resolved once the first config-file load attempt completes; assigned exactly once in the ctor. Rejections are swallowed so consumers can treat readiness as "first load attempted". */
|
|
31
|
+
private readonly _whenReady;
|
|
32
|
+
get whenReady(): Promise<void>;
|
|
33
|
+
constructor(fileService: IFileService, textFileService: ITextFileService, textModelService: ITextModelService, editorService: IEditorService, editorGroupsService: IEditorGroupsService, userDataProfileService: IUserDataProfileService, uriIdentityService: IUriIdentityService);
|
|
31
34
|
private setLanguageModelsConfiguration;
|
|
32
35
|
private updateLanguageModelsConfiguration;
|
|
33
36
|
getLanguageModelsProviderGroups(): readonly ILanguageModelsProviderGroup[];
|
|
@@ -6,8 +6,9 @@ import { Disposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/l
|
|
|
6
6
|
import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
7
7
|
import { IFileService } from '@codingame/monaco-vscode-api/vscode/vs/platform/files/common/files.service';
|
|
8
8
|
import { IUriIdentityService } from '@codingame/monaco-vscode-api/vscode/vs/platform/uriIdentity/common/uriIdentity.service';
|
|
9
|
+
import { IEditorGroupsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorGroupsService.service';
|
|
10
|
+
import { MODAL_GROUP } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService';
|
|
9
11
|
import { IEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service';
|
|
10
|
-
import { ITextEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/textfile/common/textEditorService.service';
|
|
11
12
|
import { IUserDataProfileService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/userDataProfile/common/userDataProfile.service';
|
|
12
13
|
import { equals } from '@codingame/monaco-vscode-api/vscode/vs/base/common/objects';
|
|
13
14
|
import { visit } from '@codingame/monaco-vscode-api/vscode/vs/base/common/json';
|
|
@@ -19,17 +20,21 @@ import { ILanguageModelsConfigurationService } from '@codingame/monaco-vscode-ap
|
|
|
19
20
|
import { Extensions } from '@codingame/monaco-vscode-api/vscode/vs/platform/jsonschemas/common/jsonContributionRegistry';
|
|
20
21
|
import { Registry } from '@codingame/monaco-vscode-api/vscode/vs/platform/registry/common/platform';
|
|
21
22
|
import { ILanguageModelsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/languageModels.service';
|
|
23
|
+
import { DEFAULT_EDITOR_ASSOCIATION } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/editor';
|
|
22
24
|
|
|
23
25
|
let LanguageModelsConfigurationService = class LanguageModelsConfigurationService extends Disposable {
|
|
24
26
|
get configurationFile() {
|
|
25
27
|
return this.modelsConfigurationFile;
|
|
26
28
|
}
|
|
29
|
+
get whenReady() {
|
|
30
|
+
return this._whenReady;
|
|
31
|
+
}
|
|
27
32
|
constructor(
|
|
28
33
|
fileService,
|
|
29
34
|
textFileService,
|
|
30
35
|
textModelService,
|
|
31
36
|
editorService,
|
|
32
|
-
|
|
37
|
+
editorGroupsService,
|
|
33
38
|
userDataProfileService,
|
|
34
39
|
uriIdentityService
|
|
35
40
|
) {
|
|
@@ -38,12 +43,12 @@ let LanguageModelsConfigurationService = class LanguageModelsConfigurationServic
|
|
|
38
43
|
this.textFileService = textFileService;
|
|
39
44
|
this.textModelService = textModelService;
|
|
40
45
|
this.editorService = editorService;
|
|
41
|
-
this.
|
|
46
|
+
this.editorGroupsService = editorGroupsService;
|
|
42
47
|
this._onDidChangeLanguageModelGroups = this._register(( new Emitter()));
|
|
43
48
|
this.onDidChangeLanguageModelGroups = this._onDidChangeLanguageModelGroups.event;
|
|
44
49
|
this.languageModelsProviderGroups = [];
|
|
45
|
-
this.modelsConfigurationFile =
|
|
46
|
-
this.updateLanguageModelsConfiguration();
|
|
50
|
+
this.modelsConfigurationFile = userDataProfileService.currentProfile.languageModelsResource;
|
|
51
|
+
this._whenReady = this.updateLanguageModelsConfiguration().catch(() => {});
|
|
47
52
|
this._register(
|
|
48
53
|
fileService.watch(uriIdentityService.extUri.dirname(this.modelsConfigurationFile))
|
|
49
54
|
);
|
|
@@ -139,9 +144,13 @@ let LanguageModelsConfigurationService = class LanguageModelsConfigurationServic
|
|
|
139
144
|
await this.updateLanguageModelsConfiguration();
|
|
140
145
|
}
|
|
141
146
|
async configureLanguageModels(options) {
|
|
142
|
-
const
|
|
143
|
-
|
|
144
|
-
|
|
147
|
+
const preferredGroup = this.editorGroupsService.getPart(this.editorGroupsService.activeGroup) === this.editorGroupsService.activeModalEditorPart ? MODAL_GROUP : undefined;
|
|
148
|
+
const editor = await this.editorService.openEditor({
|
|
149
|
+
resource: this.modelsConfigurationFile,
|
|
150
|
+
options: {
|
|
151
|
+
override: DEFAULT_EDITOR_ASSOCIATION.id
|
|
152
|
+
}
|
|
153
|
+
}, preferredGroup);
|
|
145
154
|
if (!editor || !options?.group) {
|
|
146
155
|
return;
|
|
147
156
|
}
|
|
@@ -149,25 +158,35 @@ let LanguageModelsConfigurationService = class LanguageModelsConfigurationServic
|
|
|
149
158
|
if (!codeEditor) {
|
|
150
159
|
return;
|
|
151
160
|
}
|
|
152
|
-
if (!options.group.range) {
|
|
153
|
-
return;
|
|
154
|
-
}
|
|
155
161
|
if (options.snippet) {
|
|
156
162
|
const model = codeEditor.getModel();
|
|
157
163
|
if (!model) {
|
|
158
164
|
return;
|
|
159
165
|
}
|
|
160
|
-
const
|
|
161
|
-
|
|
162
|
-
|
|
166
|
+
const targetRange = options.snippetTarget === "models" ? options.group.modelsRange : options.group.range;
|
|
167
|
+
if (!targetRange) {
|
|
168
|
+
return;
|
|
169
|
+
}
|
|
170
|
+
const models = options.group.models;
|
|
171
|
+
const isModelsArray = options.snippetTarget === "models" && Array.isArray(models);
|
|
172
|
+
const emptyModelsArray = isModelsArray && models.length === 0;
|
|
173
|
+
const insertBeforeModelsArrayEnd = emptyModelsArray || (isModelsArray && targetRange.startLineNumber === targetRange.endLineNumber);
|
|
174
|
+
const lastPropertyLine = targetRange.endLineNumber - 1;
|
|
175
|
+
const insertPosition = insertBeforeModelsArrayEnd ? {
|
|
176
|
+
lineNumber: targetRange.endLineNumber,
|
|
177
|
+
column: targetRange.endColumn - 1
|
|
178
|
+
} : {
|
|
163
179
|
lineNumber: lastPropertyLine,
|
|
164
|
-
column:
|
|
180
|
+
column: model.getLineLength(lastPropertyLine) + 1
|
|
165
181
|
};
|
|
166
182
|
codeEditor.setPosition(insertPosition);
|
|
167
183
|
codeEditor.revealPositionNearTop(insertPosition);
|
|
168
184
|
codeEditor.focus();
|
|
169
|
-
SnippetController2.get(codeEditor)?.insert(",\n" + options.snippet);
|
|
185
|
+
SnippetController2.get(codeEditor)?.insert(emptyModelsArray ? options.snippet : ",\n" + options.snippet);
|
|
170
186
|
} else {
|
|
187
|
+
if (!options.group.range) {
|
|
188
|
+
return;
|
|
189
|
+
}
|
|
171
190
|
const position = {
|
|
172
191
|
lineNumber: options.group.range.startLineNumber,
|
|
173
192
|
column: options.group.range.startColumn
|
|
@@ -195,6 +214,7 @@ let LanguageModelsConfigurationService = class LanguageModelsConfigurationServic
|
|
|
195
214
|
const updatedLanguageModelsProviderGroups = await update(languageModelsProviderGroups);
|
|
196
215
|
for (const group of updatedLanguageModelsProviderGroups) {
|
|
197
216
|
delete group.range;
|
|
217
|
+
delete group.modelsRange;
|
|
198
218
|
}
|
|
199
219
|
model.setValue(JSON.stringify(updatedLanguageModelsProviderGroups, undefined, "\t"));
|
|
200
220
|
await this.textFileService.save(this.modelsConfigurationFile);
|
|
@@ -204,7 +224,7 @@ let LanguageModelsConfigurationService = class LanguageModelsConfigurationServic
|
|
|
204
224
|
}
|
|
205
225
|
}
|
|
206
226
|
};
|
|
207
|
-
LanguageModelsConfigurationService = ( __decorate([( __param(0, IFileService)), ( __param(1, ITextFileService)), ( __param(2, ITextModelService)), ( __param(3, IEditorService)), ( __param(4,
|
|
227
|
+
LanguageModelsConfigurationService = ( __decorate([( __param(0, IFileService)), ( __param(1, ITextFileService)), ( __param(2, ITextModelService)), ( __param(3, IEditorService)), ( __param(4, IEditorGroupsService)), ( __param(5, IUserDataProfileService)), ( __param(6, IUriIdentityService))], LanguageModelsConfigurationService));
|
|
208
228
|
function parseLanguageModelsProviderGroups(model) {
|
|
209
229
|
const configuration = [];
|
|
210
230
|
let currentProperty = null;
|
|
@@ -264,6 +284,18 @@ function parseLanguageModelsProviderGroups(model) {
|
|
|
264
284
|
return;
|
|
265
285
|
}
|
|
266
286
|
const array = [];
|
|
287
|
+
const parent = currentParent;
|
|
288
|
+
if (currentProperty === "models" && parent.range) {
|
|
289
|
+
const start = model.getPositionAt(offset);
|
|
290
|
+
const end = model.getPositionAt(offset + length);
|
|
291
|
+
parent.modelsRange = {
|
|
292
|
+
startLineNumber: start.lineNumber,
|
|
293
|
+
startColumn: start.column,
|
|
294
|
+
endLineNumber: end.lineNumber,
|
|
295
|
+
endColumn: end.column
|
|
296
|
+
};
|
|
297
|
+
array._parentModelsRange = parent.modelsRange;
|
|
298
|
+
}
|
|
267
299
|
onValue(array);
|
|
268
300
|
previousParents.push(currentParent);
|
|
269
301
|
currentParent = array;
|
|
@@ -277,6 +309,12 @@ function parseLanguageModelsProviderGroups(model) {
|
|
|
277
309
|
parent._parentConfigurationRange.endColumn = end.column;
|
|
278
310
|
delete parent._parentConfigurationRange;
|
|
279
311
|
}
|
|
312
|
+
if (parent._parentModelsRange) {
|
|
313
|
+
const end = model.getPositionAt(offset + length);
|
|
314
|
+
parent._parentModelsRange.endLineNumber = end.lineNumber;
|
|
315
|
+
parent._parentModelsRange.endColumn = end.column;
|
|
316
|
+
delete parent._parentModelsRange;
|
|
317
|
+
}
|
|
280
318
|
currentParent = previousParents.pop();
|
|
281
319
|
},
|
|
282
320
|
onLiteralValue: (value, offset, length) => {
|
|
@@ -342,7 +380,7 @@ let ChatLanguageModelsDataContribution = class ChatLanguageModelsDataContributio
|
|
|
342
380
|
},
|
|
343
381
|
settings: {
|
|
344
382
|
type: "object",
|
|
345
|
-
description: ( localize(
|
|
383
|
+
description: ( localize(6919, "Per-model settings"))
|
|
346
384
|
}
|
|
347
385
|
},
|
|
348
386
|
allOf: [...( vendors.map(vendor => ({
|
|
@@ -34,7 +34,7 @@ class NavigatePlanReviewFeedbackAction extends Action2 {
|
|
|
34
34
|
constructor(_next) {
|
|
35
35
|
super({
|
|
36
36
|
id: _next ? navigateNextPlanReviewFeedbackActionId : navigatePreviousPlanReviewFeedbackActionId,
|
|
37
|
-
title: _next ? ( localize2(
|
|
37
|
+
title: _next ? ( localize2(6920, "Go to Next Feedback Comment")) : ( localize2(6921, "Go to Previous Feedback Comment")),
|
|
38
38
|
icon: _next ? Codicon.arrowDown : Codicon.arrowUp,
|
|
39
39
|
category: CHAT_CATEGORY,
|
|
40
40
|
f1: true,
|
|
@@ -73,8 +73,8 @@ class ClearAllPlanReviewFeedbackAction extends Action2 {
|
|
|
73
73
|
constructor() {
|
|
74
74
|
super({
|
|
75
75
|
id: clearAllPlanReviewFeedbackActionId,
|
|
76
|
-
title: ( localize2(
|
|
77
|
-
tooltip: ( localize2(
|
|
76
|
+
title: ( localize2(6922, "Clear")),
|
|
77
|
+
tooltip: ( localize2(6923, "Clear All Feedback")),
|
|
78
78
|
icon: Codicon.clearAll,
|
|
79
79
|
category: CHAT_CATEGORY,
|
|
80
80
|
f1: true,
|
|
@@ -111,7 +111,7 @@ function registerPlanReviewFeedbackEditorActions() {
|
|
|
111
111
|
MenuRegistry.appendMenuItem(PlanReviewFeedbackMenuId, {
|
|
112
112
|
command: {
|
|
113
113
|
id: navigationBearingFakeActionId,
|
|
114
|
-
title: ( localize(
|
|
114
|
+
title: ( localize(6924, "Navigation Status")),
|
|
115
115
|
precondition: ( ContextKeyExpr.false())
|
|
116
116
|
},
|
|
117
117
|
group: "navigate",
|
|
@@ -52,7 +52,7 @@ class PlanReviewFeedbackInputWidget {
|
|
|
52
52
|
this._domNode.style.display = "none";
|
|
53
53
|
this._inputElement = createElement("textarea");
|
|
54
54
|
this._inputElement.rows = 1;
|
|
55
|
-
this._inputElement.placeholder = ( localize(
|
|
55
|
+
this._inputElement.placeholder = ( localize(6925, "Add Feedback"));
|
|
56
56
|
this._domNode.appendChild(this._inputElement);
|
|
57
57
|
this._measureElement = createElement("span");
|
|
58
58
|
this._measureElement.classList.add("plan-review-feedback-input-measure");
|
|
@@ -60,7 +60,7 @@ class PlanReviewFeedbackInputWidget {
|
|
|
60
60
|
const actionsContainer = createElement("div");
|
|
61
61
|
actionsContainer.classList.add("plan-review-feedback-input-actions");
|
|
62
62
|
this._domNode.appendChild(actionsContainer);
|
|
63
|
-
this._addAction = ( new Action("planReviewFeedback.add", ( localize(
|
|
63
|
+
this._addAction = ( new Action("planReviewFeedback.add", ( localize(6926, "Add Feedback (Enter)")), ThemeIcon.asClassName(Codicon.plus), false, () => {
|
|
64
64
|
this._onDidTriggerAdd.fire();
|
|
65
65
|
return Promise.resolve();
|
|
66
66
|
}));
|
|
@@ -68,7 +68,7 @@ class PlanReviewFeedbackInputWidget {
|
|
|
68
68
|
this._actionBar.push(this._addAction, {
|
|
69
69
|
icon: true,
|
|
70
70
|
label: false,
|
|
71
|
-
keybinding: ( localize(
|
|
71
|
+
keybinding: ( localize(6927, "Enter"))
|
|
72
72
|
});
|
|
73
73
|
this._inputElement.style.lineHeight = `${this._lineHeight}px`;
|
|
74
74
|
}
|
|
@@ -197,9 +197,9 @@ class PlanReviewFeedbackOverlayWidget {
|
|
|
197
197
|
} = that._navigationBearings.read(r);
|
|
198
198
|
if (totalCount > 0) {
|
|
199
199
|
const current = activeIdx === -1 ? 1 : activeIdx + 1;
|
|
200
|
-
this.label.innerText = ( localize(
|
|
200
|
+
this.label.innerText = ( localize(6928, "{0}/{1}", current, totalCount));
|
|
201
201
|
} else {
|
|
202
|
-
this.label.innerText = ( localize(
|
|
202
|
+
this.label.innerText = ( localize(6929, "0/0"));
|
|
203
203
|
}
|
|
204
204
|
}));
|
|
205
205
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
|
|
2
|
-
import { IConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service";
|
|
3
2
|
import { ILogService } from "@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service";
|
|
4
3
|
import { IWorkbenchContribution } from "@codingame/monaco-vscode-api/vscode/vs/workbench/common/contributions";
|
|
4
|
+
import { IExtensionsWorkbenchService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/extensions/common/extensions.service";
|
|
5
5
|
import { IPluginInstallService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/plugins/pluginInstallService.service";
|
|
6
6
|
import { IPluginMarketplaceService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.service";
|
|
7
7
|
/**
|
|
@@ -29,10 +29,10 @@ import { IPluginMarketplaceService } from "@codingame/monaco-vscode-api/vscode/v
|
|
|
29
29
|
export declare class PluginAutoUpdate extends Disposable implements IWorkbenchContribution {
|
|
30
30
|
private readonly _pluginMarketplaceService;
|
|
31
31
|
private readonly _pluginInstallService;
|
|
32
|
-
private readonly
|
|
32
|
+
private readonly _extensionsWorkbenchService;
|
|
33
33
|
private readonly _logService;
|
|
34
34
|
static readonly ID = "workbench.contrib.pluginAutoUpdate";
|
|
35
35
|
private _updateInFlight;
|
|
36
|
-
constructor(_pluginMarketplaceService: IPluginMarketplaceService, _pluginInstallService: IPluginInstallService,
|
|
36
|
+
constructor(_pluginMarketplaceService: IPluginMarketplaceService, _pluginInstallService: IPluginInstallService, _extensionsWorkbenchService: IExtensionsWorkbenchService, _logService: ILogService);
|
|
37
37
|
private _triggerAutoUpdate;
|
|
38
38
|
}
|
|
@@ -3,9 +3,8 @@ import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib
|
|
|
3
3
|
import { CancellationToken } from '@codingame/monaco-vscode-api/vscode/vs/base/common/cancellation';
|
|
4
4
|
import { Disposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
|
|
5
5
|
import '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/index';
|
|
6
|
-
import { IConfigurationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service';
|
|
7
6
|
import { ILogService } from '@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service';
|
|
8
|
-
import {
|
|
7
|
+
import { IExtensionsWorkbenchService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/extensions/common/extensions.service';
|
|
9
8
|
import { IPluginInstallService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/plugins/pluginInstallService.service';
|
|
10
9
|
import { IPluginMarketplaceService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.service';
|
|
11
10
|
import { autorun } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/reactions/autorun';
|
|
@@ -17,13 +16,13 @@ let PluginAutoUpdate = class PluginAutoUpdate extends Disposable {
|
|
|
17
16
|
constructor(
|
|
18
17
|
_pluginMarketplaceService,
|
|
19
18
|
_pluginInstallService,
|
|
20
|
-
|
|
19
|
+
_extensionsWorkbenchService,
|
|
21
20
|
_logService
|
|
22
21
|
) {
|
|
23
22
|
super();
|
|
24
23
|
this._pluginMarketplaceService = _pluginMarketplaceService;
|
|
25
24
|
this._pluginInstallService = _pluginInstallService;
|
|
26
|
-
this.
|
|
25
|
+
this._extensionsWorkbenchService = _extensionsWorkbenchService;
|
|
27
26
|
this._logService = _logService;
|
|
28
27
|
this._updateInFlight = false;
|
|
29
28
|
this._register(autorun(reader => {
|
|
@@ -37,7 +36,7 @@ let PluginAutoUpdate = class PluginAutoUpdate extends Disposable {
|
|
|
37
36
|
if (this._updateInFlight) {
|
|
38
37
|
return;
|
|
39
38
|
}
|
|
40
|
-
const autoUpdate = this.
|
|
39
|
+
const autoUpdate = this._extensionsWorkbenchService.getAutoUpdateValue();
|
|
41
40
|
if (autoUpdate !== true) {
|
|
42
41
|
return;
|
|
43
42
|
}
|
|
@@ -54,6 +53,6 @@ let PluginAutoUpdate = class PluginAutoUpdate extends Disposable {
|
|
|
54
53
|
}
|
|
55
54
|
}
|
|
56
55
|
};
|
|
57
|
-
PluginAutoUpdate = ( __decorate([( __param(0, IPluginMarketplaceService)), ( __param(1, IPluginInstallService)), ( __param(2,
|
|
56
|
+
PluginAutoUpdate = ( __decorate([( __param(0, IPluginMarketplaceService)), ( __param(1, IPluginInstallService)), ( __param(2, IExtensionsWorkbenchService)), ( __param(3, ILogService))], PluginAutoUpdate));
|
|
58
57
|
|
|
59
58
|
export { PluginAutoUpdate };
|
|
@@ -75,7 +75,7 @@ let BrowserPluginGitCommandService = class BrowserPluginGitCommandService {
|
|
|
75
75
|
}
|
|
76
76
|
if (lastErr instanceof GitHubAuthRequiredError) {
|
|
77
77
|
throw ( new Error(( localize(
|
|
78
|
-
|
|
78
|
+
6930,
|
|
79
79
|
"GitHub authentication is required to install '{0}'. Sign in with an account that has access to this repository, then try again.",
|
|
80
80
|
`${repo.owner}/${repo.repo}`
|
|
81
81
|
))));
|
|
@@ -181,7 +181,7 @@ let BrowserPluginGitCommandService = class BrowserPluginGitCommandService {
|
|
|
181
181
|
const parsed = parseGitHubCloneUrl(cloneUrl);
|
|
182
182
|
if (!parsed) {
|
|
183
183
|
throw ( new Error(( localize(
|
|
184
|
-
|
|
184
|
+
6931,
|
|
185
185
|
"Agent plugins in the browser can only be installed from GitHub HTTPS URLs. To install '{0}', use the desktop application or connect to a remote agent host.",
|
|
186
186
|
cloneUrl
|
|
187
187
|
))));
|
|
@@ -232,7 +232,7 @@ let BrowserPluginGitCommandService = class BrowserPluginGitCommandService {
|
|
|
232
232
|
} catch (err) {
|
|
233
233
|
this._logService.trace("[BrowserPluginGitCommandService] GitHub session request failed:", err);
|
|
234
234
|
throw ( new Error(( localize(
|
|
235
|
-
|
|
235
|
+
6932,
|
|
236
236
|
"Sign in to GitHub with an account that has access to '{0}' to install this plugin.",
|
|
237
237
|
`${repo.owner}/${repo.repo}`
|
|
238
238
|
))));
|