@codingame/monaco-vscode-api 30.0.1 → 31.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/missing-services.js +137 -46
- package/package.json +9 -9
- package/services.d.ts +10 -1
- package/services.js +13 -4
- package/vscode/product.json.js +1 -1
- package/vscode/src/vs/base/browser/domStylesheets.js +2 -11
- package/vscode/src/vs/base/browser/overlayLayoutElement.d.ts +44 -0
- package/vscode/src/vs/base/browser/overlayLayoutElement.js +122 -0
- package/vscode/src/vs/base/browser/performance.d.ts +5 -0
- package/vscode/src/vs/base/browser/performance.js +4 -0
- package/vscode/src/vs/base/browser/ui/findinput/findInput.d.ts +1 -0
- package/vscode/src/vs/base/browser/ui/findinput/findInput.js +17 -1
- package/vscode/src/vs/base/browser/ui/scrollbar/media/scrollbars.css +5 -0
- package/vscode/src/vs/base/browser/ui/tree/abstractTree.d.ts +2 -0
- package/vscode/src/vs/base/browser/ui/tree/abstractTree.js +14 -8
- package/vscode/src/vs/base/common/async.d.ts +1 -0
- package/vscode/src/vs/base/common/defaultAccount.d.ts +1 -0
- package/vscode/src/vs/base/common/event.d.ts +6 -9
- package/vscode/src/vs/base/common/event.js +12 -8
- package/vscode/src/vs/base/common/htmlContent.d.ts +10 -0
- package/vscode/src/vs/base/common/htmlContent.js +8 -1
- package/vscode/src/vs/base/common/labels.d.ts +1 -1
- package/vscode/src/vs/base/common/labels.js +13 -3
- package/vscode/src/vs/base/common/observableInternal/index.d.ts +1 -1
- package/vscode/src/vs/base/common/observableInternal/index.js +1 -1
- package/vscode/src/vs/base/common/observableInternal/utils/utils.d.ts +6 -0
- package/vscode/src/vs/base/common/observableInternal/utils/utils.js +38 -1
- package/vscode/src/vs/base/common/performance.d.ts +3 -2
- package/vscode/src/vs/base/common/performance.js +32 -34
- package/vscode/src/vs/base/common/product.d.ts +31 -0
- package/vscode/src/vs/base/common/types.js +1 -1
- package/vscode/src/vs/base/common/uri.js +1 -1
- package/vscode/src/vs/editor/browser/view.js +2 -1
- package/vscode/src/vs/editor/browser/widget/multiDiffEditor/diffEditorItemTemplate.js +30 -2
- package/vscode/src/vs/editor/browser/widget/multiDiffEditor/workbenchUIElementFactory.d.ts +5 -0
- package/vscode/src/vs/editor/contrib/hover/browser/markerHoverParticipant.js +2 -1
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/controller/commands.js +1 -0
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineSuggestionsView.js +1 -1
- package/vscode/src/vs/editor/contrib/snippet/browser/snippetParser.js +1 -1
- package/vscode/src/vs/editor/standalone/browser/quickInput/standaloneQuickInputService.d.ts +1 -0
- package/vscode/src/vs/editor/standalone/browser/quickInput/standaloneQuickInputService.js +3 -0
- package/vscode/src/vs/editor/standalone/browser/standaloneServices.js +1 -0
- package/vscode/src/vs/platform/accessibility/browser/accessibleView.d.ts +2 -1
- package/vscode/src/vs/platform/accessibility/browser/accessibleView.js +1 -0
- package/vscode/src/vs/platform/actionWidget/browser/actionList.d.ts +4 -6
- package/vscode/src/vs/platform/actionWidget/browser/actionList.js +204 -157
- package/vscode/src/vs/platform/actionWidget/browser/actionWidget.css +25 -0
- package/vscode/src/vs/platform/actionWidget/browser/actionWidget.js +15 -17
- package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.js +3 -3
- package/vscode/src/vs/platform/actions/browser/toolbar.js +2 -2
- package/vscode/src/vs/platform/actions/common/actions.d.ts +1 -0
- package/vscode/src/vs/platform/actions/common/actions.js +3 -0
- package/vscode/src/vs/platform/actions/common/menuResetAction.js +1 -1
- package/vscode/src/vs/platform/actions/common/menuService.js +2 -2
- package/vscode/src/vs/platform/agentHost/browser/nullAgentHostService.d.ts +45 -0
- package/vscode/src/vs/platform/agentHost/browser/nullAgentHostService.js +77 -0
- package/vscode/src/vs/platform/agentHost/browser/nullSshRemoteAgentHostService.d.ts +18 -0
- package/vscode/src/vs/platform/agentHost/browser/nullSshRemoteAgentHostService.js +25 -0
- package/vscode/src/vs/platform/agentHost/common/agentHostUri.d.ts +58 -0
- package/vscode/src/vs/platform/agentHost/common/agentHostUri.js +73 -0
- package/vscode/src/vs/platform/agentHost/common/agentPluginManager.d.ts +11 -0
- package/vscode/src/vs/platform/agentHost/common/agentService.service.d.ts +119 -0
- package/vscode/src/vs/platform/agentHost/common/agentService.service.js +6 -0
- package/vscode/src/vs/platform/agentHost/common/remoteAgentHostService.d.ts +122 -0
- package/vscode/src/vs/platform/agentHost/common/remoteAgentHostService.js +104 -0
- package/vscode/src/vs/platform/agentHost/common/remoteAgentHostService.service.d.ts +54 -0
- package/vscode/src/vs/platform/agentHost/common/remoteAgentHostService.service.js +6 -0
- package/vscode/src/vs/platform/agentHost/common/sshRemoteAgentHost.d.ts +88 -0
- package/vscode/src/vs/platform/agentHost/common/sshRemoteAgentHost.service.d.ts +89 -0
- package/vscode/src/vs/platform/agentHost/common/sshRemoteAgentHost.service.js +6 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/action-origin.generated.d.ts +22 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/messages.d.ts +234 -0
- package/vscode/src/vs/platform/agentHost/common/tunnelAgentHost.d.ts +91 -0
- package/vscode/src/vs/platform/agentHost/common/tunnelAgentHost.js +5 -0
- package/vscode/src/vs/platform/browserView/common/browserView.d.ts +28 -2
- package/vscode/src/vs/platform/browserView/common/browserViewTelemetry.d.ts +34 -0
- package/vscode/src/vs/platform/browserView/common/browserViewTelemetry.js +7 -0
- package/vscode/src/vs/platform/browserView/common/browserViewUri.d.ts +21 -0
- package/vscode/src/vs/platform/browserView/common/browserViewUri.js +34 -0
- package/vscode/src/vs/platform/browserView/common/cdp/types.d.ts +21 -10
- package/vscode/src/vs/platform/browserView/common/playwrightService.d.ts +7 -0
- package/vscode/src/vs/platform/browserView/common/playwrightService.service.d.ts +20 -5
- package/vscode/src/vs/platform/configuration/common/configurationRegistry.js +10 -10
- package/vscode/src/vs/platform/contextkey/browser/contextKeyService.js +1 -4
- package/vscode/src/vs/platform/contextkey/common/contextkey.js +11 -22
- package/vscode/src/vs/platform/contextkey/common/contextkeys.js +9 -9
- package/vscode/src/vs/platform/contextkey/common/scanner.js +5 -5
- package/vscode/src/vs/platform/dataChannel/browser/forwardingTelemetryService.d.ts +1 -0
- package/vscode/src/vs/platform/dataChannel/browser/forwardingTelemetryService.js +3 -0
- package/vscode/src/vs/platform/defaultAccount/common/defaultAccount.d.ts +3 -1
- package/vscode/src/vs/platform/defaultAccount/common/defaultAccount.service.d.ts +3 -1
- package/vscode/src/vs/platform/dialogs/common/dialogs.js +9 -9
- package/vscode/src/vs/platform/dnd/browser/dnd.js +1 -1
- package/vscode/src/vs/platform/editor/common/editor.d.ts +11 -3
- package/vscode/src/vs/platform/environment/common/argv.d.ts +2 -1
- package/vscode/src/vs/platform/environment/common/environment.service.d.ts +1 -0
- package/vscode/src/vs/platform/environment/common/environmentService.d.ts +1 -0
- package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.d.ts +2 -0
- package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +14 -14
- package/vscode/src/vs/platform/extensionManagement/common/extensionNls.js +1 -1
- package/vscode/src/vs/platform/extensionManagement/common/extensionsScannerService.d.ts +1 -0
- package/vscode/src/vs/platform/extensionManagement/common/extensionsScannerService.js +38 -16
- package/vscode/src/vs/platform/extensions/common/extensionValidator.js +21 -21
- package/vscode/src/vs/platform/extensions/common/extensions.d.ts +1 -0
- package/vscode/src/vs/platform/extensions/common/extensionsApiProposals.js +1 -1
- package/vscode/src/vs/platform/files/browser/htmlFileSystemProvider.js +2 -2
- package/vscode/src/vs/platform/files/common/files.js +6 -6
- package/vscode/src/vs/platform/history/browser/contextScopedHistoryWidget.js +1 -1
- package/vscode/src/vs/platform/hover/browser/hoverWidget.js +1 -1
- package/vscode/src/vs/platform/hover/browser/updatableHoverWidget.js +1 -1
- package/vscode/src/vs/platform/keybinding/common/abstractKeybindingService.js +5 -5
- package/vscode/src/vs/platform/keybinding/common/keybindingResolver.js +4 -2
- package/vscode/src/vs/platform/languagePacks/common/languagePacks.js +1 -1
- package/vscode/src/vs/platform/languagePacks/common/localizedStrings.js +3 -3
- package/vscode/src/vs/platform/list/browser/listService.js +25 -25
- package/vscode/src/vs/platform/log/common/log.js +6 -6
- package/vscode/src/vs/platform/markers/common/markerService.js +2 -2
- package/vscode/src/vs/platform/markers/common/markers.js +6 -6
- package/vscode/src/vs/platform/mcp/common/mcpManagementService.js +1 -1
- package/vscode/src/vs/platform/mcp/common/mcpPlatformTypes.d.ts +4 -0
- package/vscode/src/vs/platform/meteredConnection/common/meteredConnection.config.contribution.js +5 -5
- package/vscode/src/vs/platform/native/common/native.d.ts +11 -1
- package/vscode/src/vs/platform/networkFilter/common/networkFilterService.service.d.ts +33 -0
- package/vscode/src/vs/platform/networkFilter/common/networkFilterService.service.js +6 -0
- package/vscode/src/vs/platform/notification/common/notification.js +3 -3
- package/vscode/src/vs/platform/observable/common/platformObservableUtils.js +2 -10
- package/vscode/src/vs/platform/product/common/product.js +3 -3
- package/vscode/src/vs/platform/quickinput/browser/quickInput.js +10 -10
- package/vscode/src/vs/platform/quickinput/browser/quickInputActions.js +5 -5
- package/vscode/src/vs/platform/quickinput/browser/quickInputController.d.ts +4 -1
- package/vscode/src/vs/platform/quickinput/browser/quickInputController.js +39 -16
- package/vscode/src/vs/platform/quickinput/browser/quickInputList.js +1 -1
- package/vscode/src/vs/platform/quickinput/browser/quickInputService.d.ts +4 -1
- package/vscode/src/vs/platform/quickinput/browser/quickInputService.js +8 -0
- package/vscode/src/vs/platform/quickinput/browser/quickInputUtils.js +1 -1
- package/vscode/src/vs/platform/quickinput/browser/quickPickPin.js +2 -2
- package/vscode/src/vs/platform/quickinput/browser/tree/quickInputTreeAccessibilityProvider.js +1 -1
- package/vscode/src/vs/platform/quickinput/browser/tree/quickTree.js +1 -1
- package/vscode/src/vs/platform/quickinput/common/quickInput.d.ts +1 -0
- package/vscode/src/vs/platform/quickinput/common/quickInput.service.d.ts +6 -1
- package/vscode/src/vs/platform/request/common/request.js +20 -20
- package/vscode/src/vs/platform/sandbox/common/settings.d.ts +11 -0
- package/vscode/src/vs/platform/sandbox/common/settings.js +14 -0
- package/vscode/src/vs/{workbench/contrib/terminalContrib/chatAgentTools → platform/sandbox}/common/terminalSandboxService.service.d.ts +6 -6
- package/vscode/src/vs/{workbench/contrib/terminalContrib/chatAgentTools → platform/sandbox}/common/terminalSandboxService.service.js +1 -1
- package/vscode/src/vs/platform/telemetry/common/errorTelemetry.d.ts +82 -0
- package/vscode/src/vs/platform/telemetry/common/errorTelemetry.js +108 -0
- package/vscode/src/vs/platform/telemetry/common/telemetry.service.d.ts +5 -0
- package/vscode/src/vs/platform/telemetry/common/telemetryUtils.d.ts +1 -0
- package/vscode/src/vs/platform/telemetry/common/telemetryUtils.js +2 -1
- package/vscode/src/vs/platform/terminal/common/terminal.d.ts +6 -0
- package/vscode/src/vs/platform/terminal/common/terminal.js +5 -0
- package/vscode/src/vs/platform/terminal/common/terminalPlatformConfiguration.js +31 -31
- package/vscode/src/vs/platform/terminal/common/terminalProfiles.js +1 -1
- package/vscode/src/vs/platform/theme/browser/defaultStyles.js +1 -1
- package/vscode/src/vs/platform/theme/common/colorUtils.js +2 -2
- package/vscode/src/vs/platform/theme/common/colors/baseColors.js +18 -18
- package/vscode/src/vs/platform/theme/common/colors/chartsColors.js +8 -8
- package/vscode/src/vs/platform/theme/common/colors/editorColors.js +97 -97
- package/vscode/src/vs/platform/theme/common/colors/inputColors.js +48 -48
- package/vscode/src/vs/platform/theme/common/colors/listColors.js +36 -36
- package/vscode/src/vs/platform/theme/common/colors/menuColors.js +11 -11
- package/vscode/src/vs/platform/theme/common/colors/minimapColors.js +11 -11
- package/vscode/src/vs/platform/theme/common/colors/miscColors.js +16 -16
- package/vscode/src/vs/platform/theme/common/colors/quickpickColors.js +9 -9
- package/vscode/src/vs/platform/theme/common/colors/searchColors.js +3 -3
- package/vscode/src/vs/platform/theme/common/iconRegistry.js +6 -6
- package/vscode/src/vs/platform/theme/common/sizes/baseSizes.js +11 -11
- package/vscode/src/vs/platform/theme/common/tokenClassificationRegistry.js +42 -42
- package/vscode/src/vs/platform/undoRedo/common/undoRedoService.js +20 -20
- package/vscode/src/vs/platform/update/common/update.d.ts +10 -3
- package/vscode/src/vs/platform/update/common/update.js +3 -1
- package/vscode/src/vs/platform/userDataProfile/common/userDataProfile.js +1 -1
- package/vscode/src/vs/platform/userDataSync/common/abstractSynchronizer.js +2 -2
- package/vscode/src/vs/platform/userDataSync/common/extensionsSync.d.ts +3 -1
- package/vscode/src/vs/platform/userDataSync/common/extensionsSync.js +14 -8
- package/vscode/src/vs/platform/userDataSync/common/keybindingsSync.js +2 -2
- package/vscode/src/vs/platform/userDataSync/common/settingsSync.js +1 -1
- package/vscode/src/vs/platform/userDataSync/common/userDataSync.js +5 -5
- package/vscode/src/vs/platform/userDataSync/common/userDataSyncMachines.js +1 -1
- package/vscode/src/vs/platform/workspace/common/workspace.js +1 -1
- package/vscode/src/vs/workbench/api/browser/statusBarExtensionPoint.js +12 -12
- package/vscode/src/vs/workbench/api/common/extHost.api.impl.js +39 -11
- package/vscode/src/vs/workbench/api/common/extHost.protocol.d.ts +67 -14
- package/vscode/src/vs/workbench/api/common/extHostAuthentication.js +5 -5
- package/vscode/src/vs/workbench/api/common/extHostChatAgents2.d.ts +36 -13
- package/vscode/src/vs/workbench/api/common/extHostChatAgents2.js +164 -26
- package/vscode/src/vs/workbench/api/common/extHostChatDebug.d.ts +4 -0
- package/vscode/src/vs/workbench/api/common/extHostChatDebug.js +7 -0
- package/vscode/src/vs/workbench/api/common/extHostChatSessions.d.ts +22 -5
- package/vscode/src/vs/workbench/api/common/extHostChatSessions.js +278 -42
- package/vscode/src/vs/workbench/api/common/extHostDiagnostics.js +1 -1
- package/vscode/src/vs/workbench/api/common/extHostExtensionService.js +2 -2
- package/vscode/src/vs/workbench/api/common/extHostGitExtensionService.d.ts +2 -2
- package/vscode/src/vs/workbench/api/common/extHostGitExtensionService.js +18 -35
- package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +2 -2
- package/vscode/src/vs/workbench/api/common/extHostLanguageModelTools.js +4 -2
- package/vscode/src/vs/workbench/api/common/extHostLanguageModels.js +1 -1
- package/vscode/src/vs/workbench/api/common/extHostLogService.js +1 -1
- package/vscode/src/vs/workbench/api/common/extHostMcp.d.ts +2 -2
- package/vscode/src/vs/workbench/api/common/extHostMcp.js +6 -4
- package/vscode/src/vs/workbench/api/common/extHostNotebook.js +2 -2
- package/vscode/src/vs/workbench/api/common/extHostStatusBar.js +2 -2
- package/vscode/src/vs/workbench/api/common/extHostTelemetry.js +1 -1
- package/vscode/src/vs/workbench/api/common/extHostTerminalService.js +1 -1
- package/vscode/src/vs/workbench/api/common/extHostTunnelService.js +2 -2
- package/vscode/src/vs/workbench/api/common/extHostTypeConverters.d.ts +3 -2
- package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +16 -3
- package/vscode/src/vs/workbench/api/common/extHostTypes.d.ts +2 -8
- package/vscode/src/vs/workbench/api/common/extHostTypes.js +6 -11
- package/vscode/src/vs/workbench/api/common/extHostWorkspace.js +1 -1
- package/vscode/src/vs/workbench/api/common/jsonValidationExtensionPoint.js +11 -11
- package/vscode/src/vs/workbench/browser/actions/developerActions.js +58 -32
- package/vscode/src/vs/workbench/browser/actions/layoutActions.js +153 -148
- package/vscode/src/vs/workbench/browser/actions/textInputActions.js +6 -6
- package/vscode/src/vs/workbench/browser/actions/windowActions.js +34 -34
- package/vscode/src/vs/workbench/browser/actions/workspaceActions.js +39 -39
- package/vscode/src/vs/workbench/browser/actions/workspaceCommands.js +4 -4
- package/vscode/src/vs/workbench/browser/editor.js +2 -2
- package/vscode/src/vs/workbench/browser/labels.js +4 -4
- package/vscode/src/vs/workbench/browser/media/style.css +1 -0
- package/vscode/src/vs/workbench/browser/parts/activitybar/activitybarPart.js +33 -31
- package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarActions.js +26 -26
- package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarPart.js +5 -5
- package/vscode/src/vs/workbench/browser/parts/compositeBar.js +1 -1
- package/vscode/src/vs/workbench/browser/parts/compositeBarActions.js +9 -9
- package/vscode/src/vs/workbench/browser/parts/compositePart.js +3 -3
- package/vscode/src/vs/workbench/browser/parts/dialogs/dialog.js +1 -1
- package/vscode/src/vs/workbench/browser/parts/editor/auxiliaryEditorPart.js +3 -3
- package/vscode/src/vs/workbench/browser/parts/editor/binaryDiffEditor.js +1 -1
- package/vscode/src/vs/workbench/browser/parts/editor/binaryEditor.js +3 -3
- package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbs.js +37 -37
- package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsControl.js +12 -12
- package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsPicker.js +1 -1
- package/vscode/src/vs/workbench/browser/parts/editor/diffEditorCommands.js +7 -7
- package/vscode/src/vs/workbench/browser/parts/editor/editorActions.js +135 -135
- package/vscode/src/vs/workbench/browser/parts/editor/editorCommands.d.ts +1 -0
- package/vscode/src/vs/workbench/browser/parts/editor/editorCommands.js +47 -26
- package/vscode/src/vs/workbench/browser/parts/editor/editorDropTarget.js +1 -1
- package/vscode/src/vs/workbench/browser/parts/editor/editorGroupView.js +7 -7
- package/vscode/src/vs/workbench/browser/parts/editor/editorGroupWatermark.js +13 -13
- package/vscode/src/vs/workbench/browser/parts/editor/editorPanes.js +2 -2
- package/vscode/src/vs/workbench/browser/parts/editor/editorParts.d.ts +4 -0
- package/vscode/src/vs/workbench/browser/parts/editor/editorParts.js +21 -4
- package/vscode/src/vs/workbench/browser/parts/editor/editorPlaceholder.js +10 -10
- package/vscode/src/vs/workbench/browser/parts/editor/editorQuickAccess.js +11 -12
- package/vscode/src/vs/workbench/browser/parts/editor/editorStatus.js +66 -66
- package/vscode/src/vs/workbench/browser/parts/editor/editorTabsControl.js +2 -2
- package/vscode/src/vs/workbench/browser/parts/editor/media/modalEditorPart.css +14 -5
- package/vscode/src/vs/workbench/browser/parts/editor/modalEditorPart.d.ts +12 -0
- package/vscode/src/vs/workbench/browser/parts/editor/modalEditorPart.js +117 -13
- package/vscode/src/vs/workbench/browser/parts/paneCompositePart.d.ts +1 -3
- package/vscode/src/vs/workbench/browser/parts/paneCompositePart.js +2 -23
- package/vscode/src/vs/workbench/browser/parts/panel/panelPart.js +1 -1
- package/vscode/src/vs/workbench/browser/parts/sidebar/sidebarPart.js +1 -1
- package/vscode/src/vs/workbench/browser/web.api.d.ts +69 -0
- package/vscode/src/vs/workbench/common/contextkeys.d.ts +2 -0
- package/vscode/src/vs/workbench/common/contextkeys.js +41 -39
- package/vscode/src/vs/workbench/common/editor/diffEditorInput.js +1 -1
- package/vscode/src/vs/workbench/common/editor/sideBySideEditorInput.js +1 -1
- package/vscode/src/vs/workbench/common/editor/textEditorModel.js +1 -1
- package/vscode/src/vs/workbench/common/editor.js +4 -4
- package/vscode/src/vs/workbench/common/theme.js +161 -161
- package/vscode/src/vs/workbench/common/views.d.ts +2 -2
- package/vscode/src/vs/workbench/common/views.js +4 -4
- package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +163 -155
- package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleViewActions.js +12 -12
- package/vscode/src/vs/workbench/contrib/browserView/common/browserEditorInput.d.ts +61 -0
- package/vscode/src/vs/workbench/contrib/browserView/common/browserEditorInput.js +267 -0
- package/vscode/src/vs/workbench/contrib/browserView/common/browserView.d.ts +8 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.js +68 -76
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionWorkingDirectoryResolver.service.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionWorkingDirectoryResolver.service.js +6 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsModel.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.d.ts +7 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.js +12 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatScreenshotContext.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chat.d.ts +7 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorContextKeys.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionDescription.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessions.contribution.d.ts +1 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessions.contribution.js +88 -66
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetup.d.ts +65 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetup.js +66 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditorInput.d.ts +7 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditorInput.js +38 -17
- package/vscode/src/vs/workbench/contrib/chat/common/actions/chatContextKeys.d.ts +6 -2
- package/vscode/src/vs/workbench/contrib/chat/common/actions/chatContextKeys.js +92 -85
- package/vscode/src/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService.service.d.ts +5 -1
- package/vscode/src/vs/workbench/contrib/chat/common/attachments/chatVariableEntries.d.ts +7 -3
- package/vscode/src/vs/workbench/contrib/chat/common/attachments/chatVariableEntries.js +18 -4
- package/vscode/src/vs/workbench/contrib/chat/common/chat.js +6 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatDebugService.d.ts +32 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatDebugService.service.d.ts +25 -6
- package/vscode/src/vs/workbench/contrib/chat/common/chatModes.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatModes.js +17 -5
- package/vscode/src/vs/workbench/contrib/chat/common/chatPerf.js +29 -13
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatService.d.ts +98 -8
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatService.js +11 -4
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatService.service.d.ts +6 -5
- package/vscode/src/vs/workbench/contrib/chat/common/chatSessionsService.d.ts +4 -10
- package/vscode/src/vs/workbench/contrib/chat/common/chatSessionsService.js +11 -4
- package/vscode/src/vs/workbench/contrib/chat/common/chatSessionsService.service.d.ts +6 -3
- package/vscode/src/vs/workbench/contrib/chat/common/constants.d.ts +16 -5
- package/vscode/src/vs/workbench/contrib/chat/common/constants.js +16 -14
- package/vscode/src/vs/workbench/contrib/chat/common/customizationHarnessService.d.ts +78 -18
- package/vscode/src/vs/workbench/contrib/chat/common/customizationHarnessService.js +47 -84
- package/vscode/src/vs/workbench/contrib/chat/common/editing/chatEditingService.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/languageModelStats.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/common/languageModels.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/common/languageModels.js +49 -57
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatModel.d.ts +54 -15
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatModel.js +99 -25
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatPlanReviewData.d.ts +26 -0
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatPlanReviewData.js +44 -0
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatQuestionCarouselData.d.ts +7 -1
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatQuestionCarouselData.js +4 -2
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatToolInvocation.d.ts +12 -2
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatToolInvocation.js +16 -1
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatViewModel.d.ts +31 -5
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatViewModel.js +26 -6
- package/vscode/src/vs/workbench/contrib/chat/common/participants/chatAgents.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/chat/common/participants/chatAgents.js +6 -0
- package/vscode/src/vs/workbench/contrib/chat/common/participants/chatAgents.service.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginGitService.service.d.ts +19 -0
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginGitService.service.js +6 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/computeAutomaticInstructions.d.ts +16 -23
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/computeAutomaticInstructions.js +150 -89
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookSchema.d.ts +9 -18
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookSchema.js +22 -21
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookTypes.js +20 -20
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptFileAttributes.js +77 -77
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptFileParser.d.ts +6 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptFileParser.js +9 -2
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptTypes.js +1 -2
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.d.ts +167 -15
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.js +19 -7
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.service.d.ts +18 -20
- package/vscode/src/vs/workbench/contrib/chat/common/requestParser/chatRequestParser.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/common/requestParser/chatRequestParser.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/askQuestionsTool.d.ts +10 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/askQuestionsTool.js +61 -8
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/manageTodoListTool.js +12 -11
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/reviewPlanTool.d.ts +25 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/reviewPlanTool.js +176 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/runSubagentTool.d.ts +18 -6
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/runSubagentTool.js +140 -59
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/setArtifactRulesTool.d.ts +11 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/setArtifactRulesTool.js +90 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/setArtifactsTool.d.ts +4 -1
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/setArtifactsTool.js +34 -7
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/tools.js +12 -2
- package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsConfirmationService.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.js +22 -22
- package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsService.d.ts +9 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsService.js +4 -10
- package/vscode/src/vs/workbench/contrib/chat/common/tools/terminalToolIds.d.ts +20 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/terminalToolIds.js +17 -0
- package/vscode/src/vs/workbench/contrib/chat/common/widget/input/modelPickerWidget.js +1 -1
- package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +11 -11
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/dictation/editorDictation.js +4 -4
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorAccessibilityHelp.js +5 -5
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorHelper.js +3 -3
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/find/simpleFindWidget.js +10 -10
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/inspectEditorTokens/inspectEditorTokens.js +2 -2
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/largeFileOptimizations.js +3 -3
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/quickaccess/gotoSymbolQuickAccess.js +6 -6
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/saveParticipants.js +4 -4
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMinimap.js +2 -2
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier.js +3 -3
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderControlCharacter.js +2 -2
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderWhitespace.js +133 -15
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +5 -5
- package/vscode/src/vs/workbench/contrib/codeEditor/common/languageConfigurationExtensionPoint.js +65 -65
- package/vscode/src/vs/workbench/contrib/comments/browser/commentColors.js +7 -7
- package/vscode/src/vs/workbench/contrib/comments/browser/commentGlyphWidget.js +7 -7
- package/vscode/src/vs/workbench/contrib/comments/browser/commentNode.js +2 -2
- package/vscode/src/vs/workbench/contrib/comments/browser/commentReply.js +3 -3
- package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadBody.js +3 -3
- package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadHeader.js +3 -3
- package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadWidget.js +3 -3
- package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadZoneWidget.js +3 -3
- package/vscode/src/vs/workbench/contrib/comments/browser/commentsAccessibility.js +12 -12
- package/vscode/src/vs/workbench/contrib/comments/browser/commentsController.js +7 -7
- package/vscode/src/vs/workbench/contrib/comments/browser/commentsModel.js +1 -1
- package/vscode/src/vs/workbench/contrib/comments/browser/commentsTreeViewer.d.ts +4 -1
- package/vscode/src/vs/workbench/contrib/comments/browser/commentsTreeViewer.js +17 -14
- package/vscode/src/vs/workbench/contrib/comments/browser/commentsView.js +14 -14
- package/vscode/src/vs/workbench/contrib/comments/browser/commentsViewActions.js +16 -16
- package/vscode/src/vs/workbench/contrib/comments/browser/reactionsAction.js +7 -7
- package/vscode/src/vs/workbench/contrib/comments/common/commentContextKeys.js +12 -12
- package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditorInput.js +3 -3
- package/vscode/src/vs/workbench/contrib/debug/browser/baseDebugView.js +1 -1
- package/vscode/src/vs/workbench/contrib/debug/browser/breakpointEditorContribution.js +36 -31
- package/vscode/src/vs/workbench/contrib/debug/browser/breakpointWidget.js +17 -14
- package/vscode/src/vs/workbench/contrib/debug/browser/breakpointsView.js +75 -75
- package/vscode/src/vs/workbench/contrib/debug/browser/callStackEditorContribution.js +2 -2
- package/vscode/src/vs/workbench/contrib/debug/browser/debugActionViewItems.js +6 -6
- package/vscode/src/vs/workbench/contrib/debug/browser/debugColors.js +12 -12
- package/vscode/src/vs/workbench/contrib/debug/browser/debugCommands.js +38 -38
- package/vscode/src/vs/workbench/contrib/debug/browser/debugEditorContribution.js +2 -2
- package/vscode/src/vs/workbench/contrib/debug/browser/debugHover.js +3 -3
- package/vscode/src/vs/workbench/contrib/debug/browser/debugIcons.js +57 -57
- package/vscode/src/vs/workbench/contrib/debug/browser/debugSessionPicker.js +3 -3
- package/vscode/src/vs/workbench/contrib/debug/browser/exceptionWidget.js +4 -4
- package/vscode/src/vs/workbench/contrib/debug/browser/linkDetector.js +2 -2
- package/vscode/src/vs/workbench/contrib/debug/browser/media/repl.css +2 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/repl.js +18 -18
- package/vscode/src/vs/workbench/contrib/debug/browser/replViewer.js +5 -5
- package/vscode/src/vs/workbench/contrib/debug/browser/variablesView.js +9 -9
- package/vscode/src/vs/workbench/contrib/debug/common/abstractDebugAdapter.js +1 -1
- package/vscode/src/vs/workbench/contrib/debug/common/debug.js +65 -65
- package/vscode/src/vs/workbench/contrib/debug/common/debug.service.d.ts +11 -5
- package/vscode/src/vs/workbench/contrib/debug/common/debugModel.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/debug/common/debugModel.js +16 -8
- package/vscode/src/vs/workbench/contrib/debug/common/debugSource.js +1 -1
- package/vscode/src/vs/workbench/contrib/debug/common/disassemblyViewInput.js +2 -2
- package/vscode/src/vs/workbench/contrib/debug/common/loadedScriptsPicker.js +1 -1
- package/vscode/src/vs/workbench/contrib/debug/common/replModel.js +1 -1
- package/vscode/src/vs/workbench/contrib/dropOrPasteInto/browser/commands.js +2 -2
- package/vscode/src/vs/workbench/contrib/dropOrPasteInto/browser/configurationSchema.js +4 -4
- package/vscode/src/vs/workbench/contrib/extensions/browser/abstractRuntimeExtensionsEditor.js +18 -18
- package/vscode/src/vs/workbench/contrib/extensions/browser/configBasedRecommendations.js +1 -1
- package/vscode/src/vs/workbench/contrib/extensions/browser/exeBasedRecommendations.js +1 -1
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionEditor.js +41 -41
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionEnablementWorkspaceTrustTransitionParticipant.js +1 -1
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionFeaturesTab.js +15 -15
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionRecommendationNotificationService.js +14 -14
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensions.contribution.js +151 -150
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.d.ts +10 -5
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.js +460 -189
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActivationProgress.js +1 -1
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsCompletionItemsProvider.js +1 -1
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsDependencyChecker.js +5 -5
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsIcons.js +25 -25
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsQuickAccess.js +4 -4
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViewer.js +7 -7
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViewlet.js +47 -47
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViews.js +5 -5
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsWidgets.js +32 -32
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.js +120 -102
- package/vscode/src/vs/workbench/contrib/extensions/browser/fileBasedRecommendations.js +2 -2
- package/vscode/src/vs/workbench/contrib/extensions/browser/webRecommendations.js +1 -1
- package/vscode/src/vs/workbench/contrib/extensions/browser/workspaceRecommendations.js +2 -2
- package/vscode/src/vs/workbench/contrib/extensions/common/extensions.js +1 -1
- package/vscode/src/vs/workbench/contrib/extensions/common/extensionsFileTemplate.js +5 -5
- package/vscode/src/vs/workbench/contrib/extensions/common/extensionsInput.js +2 -2
- package/vscode/src/vs/workbench/contrib/extensions/common/extensionsUtils.js +3 -3
- package/vscode/src/vs/workbench/contrib/extensions/common/runtimeExtensionsInput.js +2 -2
- package/vscode/src/vs/workbench/contrib/extensions/common/searchExtensionsTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/externalUriOpener/common/configuration.js +4 -4
- package/vscode/src/vs/workbench/contrib/externalUriOpener/common/externalUriOpenerService.js +3 -3
- package/vscode/src/vs/workbench/contrib/files/browser/editors/binaryFileEditor.js +1 -1
- package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileEditor.js +8 -8
- package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileSaveErrorHandler.js +18 -18
- package/vscode/src/vs/workbench/contrib/files/browser/explorerViewlet.js +14 -14
- package/vscode/src/vs/workbench/contrib/files/browser/fileActions.contribution.js +39 -39
- package/vscode/src/vs/workbench/contrib/files/browser/fileActions.js +84 -84
- package/vscode/src/vs/workbench/contrib/files/browser/fileCommands._save.js +4 -4
- package/vscode/src/vs/workbench/contrib/files/browser/fileCommands.js +2 -2
- package/vscode/src/vs/workbench/contrib/files/browser/fileConstants.js +6 -6
- package/vscode/src/vs/workbench/contrib/files/browser/fileImportExport.js +27 -27
- package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._configuration.js +56 -53
- package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._editorPane.js +2 -2
- package/vscode/src/vs/workbench/contrib/files/browser/views/emptyView.js +1 -1
- package/vscode/src/vs/workbench/contrib/files/browser/views/explorerDecorationsProvider.js +4 -4
- package/vscode/src/vs/workbench/contrib/files/browser/views/explorerView.js +7 -7
- package/vscode/src/vs/workbench/contrib/files/browser/views/explorerViewer.js +17 -17
- package/vscode/src/vs/workbench/contrib/files/browser/views/openEditorsView.js +7 -7
- package/vscode/src/vs/workbench/contrib/files/browser/workspaceWatcher.js +4 -4
- package/vscode/src/vs/workbench/contrib/files/common/dirtyFilesIndicator.js +1 -1
- package/vscode/src/vs/workbench/contrib/files/common/files.js +19 -16
- package/vscode/src/vs/workbench/contrib/folding/browser/folding.contribution.js +3 -3
- package/vscode/src/vs/workbench/contrib/format/browser/formatActionsMultiple.js +20 -20
- package/vscode/src/vs/workbench/contrib/format/browser/formatActionsNone.js +4 -4
- package/vscode/src/vs/workbench/contrib/format/browser/formatModified.js +1 -1
- package/vscode/src/vs/workbench/contrib/inlayHints/browser/inlayHintsAccessibilty.js +7 -4
- package/vscode/src/vs/workbench/contrib/list/browser/listResizeColumnAction.js +2 -2
- package/vscode/src/vs/workbench/contrib/list/browser/tableColumnResizeQuickPick.js +5 -5
- package/vscode/src/vs/workbench/contrib/mcp/browser/mcpCommandsAddConfiguration.js +66 -66
- package/vscode/src/vs/workbench/contrib/mcp/browser/mcpServerActions.js +40 -40
- package/vscode/src/vs/workbench/contrib/mcp/browser/mcpServerEditor.js +34 -34
- package/vscode/src/vs/workbench/contrib/mcp/browser/mcpServerEditorInput.js +2 -2
- package/vscode/src/vs/workbench/contrib/mcp/browser/mcpServerIcons.js +5 -5
- package/vscode/src/vs/workbench/contrib/mcp/browser/mcpServerWidgets.js +5 -5
- package/vscode/src/vs/workbench/contrib/mcp/common/mcpConfiguration.js +53 -40
- package/vscode/src/vs/workbench/contrib/mcp/common/mcpGatewayService.service.d.ts +5 -1
- package/vscode/src/vs/workbench/contrib/mcp/common/mcpServer.js +16 -16
- package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.d.ts +9 -0
- package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.js +5 -4
- package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.service.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInput.js +4 -4
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInputModel.js +23 -23
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/mergeEditorModel.js +2 -2
- package/vscode/src/vs/workbench/contrib/mergeEditor/common/mergeEditor.js +8 -8
- package/vscode/src/vs/workbench/contrib/meteredConnection/browser/meteredConnection.contribution.js +8 -8
- package/vscode/src/vs/workbench/contrib/meteredConnection/browser/meteredConnectionStatus.js +4 -4
- package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/icons.contribution.js +1 -1
- package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditor.js +5 -2
- package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditorInput.js +3 -3
- package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/scmMultiDiffSourceResolver.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindReplaceWidget.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindReplaceWidget.js +22 -17
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOutputActions.js +6 -6
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/coreActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/foldingController.js +3 -3
- package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebook.css +63 -10
- package/vscode/src/vs/workbench/contrib/notebook/browser/notebookAccessibilityProvider.js +3 -3
- package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditor.js +7 -7
- package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.d.ts +4 -4
- package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.js +52 -75
- package/vscode/src/vs/workbench/contrib/notebook/browser/notebookIcons.js +29 -29
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellEditorOptions.js +5 -5
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellOutput.js +7 -7
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCell.js +2 -2
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellExecutionIcon.js +4 -4
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellRunToolbar.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/collapsedCellOutput.js +3 -3
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/foldedCellHint.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/markupCell.js +2 -2
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.js +4 -4
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/cellRenderer.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelQuickPickStrategy.js +14 -14
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelView.js +2 -2
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookViewZones.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorInput.js +2 -2
- package/vscode/src/vs/workbench/contrib/preferences/browser/keybindingWidgets.js +3 -3
- package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesIcons.js +13 -13
- package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesWidgets.js +10 -10
- package/vscode/src/vs/workbench/contrib/preferences/browser/settingsLayout.js +60 -60
- package/vscode/src/vs/workbench/contrib/preferences/common/preferences.js +3 -3
- package/vscode/src/vs/workbench/contrib/preferences/common/settingsEditorColorRegistry.js +21 -21
- package/vscode/src/vs/workbench/contrib/remote/browser/remoteExplorer.js +15 -15
- package/vscode/src/vs/workbench/contrib/remote/browser/remoteIcons.js +17 -17
- package/vscode/src/vs/workbench/contrib/remote/browser/tunnelView.js +59 -59
- package/vscode/src/vs/workbench/contrib/scm/browser/scmHistory.js +11 -11
- package/vscode/src/vs/workbench/contrib/scm/browser/scmHistoryChatContext.js +6 -6
- package/vscode/src/vs/workbench/contrib/scm/common/quickDiff.js +14 -14
- package/vscode/src/vs/workbench/contrib/search/browser/anythingQuickAccess.js +12 -9
- package/vscode/src/vs/workbench/contrib/search/browser/patternInputWidget.js +3 -3
- package/vscode/src/vs/workbench/contrib/search/browser/searchActionsBase.js +1 -1
- package/vscode/src/vs/workbench/contrib/search/browser/searchActionsFind.js +17 -14
- package/vscode/src/vs/workbench/contrib/search/browser/searchActionsTopBar.js +9 -9
- package/vscode/src/vs/workbench/contrib/search/browser/searchChatContext.js +5 -5
- package/vscode/src/vs/workbench/contrib/search/browser/searchFindInput.js +1 -1
- package/vscode/src/vs/workbench/contrib/search/browser/searchIcons.js +20 -20
- package/vscode/src/vs/workbench/contrib/search/browser/searchMessage.js +2 -2
- package/vscode/src/vs/workbench/contrib/search/browser/searchResultsView.js +14 -14
- package/vscode/src/vs/workbench/contrib/search/browser/searchView.js +55 -55
- package/vscode/src/vs/workbench/contrib/search/browser/searchWidget.js +11 -11
- package/vscode/src/vs/workbench/contrib/search/browser/symbolsQuickAccess.js +2 -2
- package/vscode/src/vs/workbench/contrib/searchEditor/browser/searchEditorInput.js +4 -4
- package/vscode/src/vs/workbench/contrib/searchEditor/browser/searchEditorSerialization.js +5 -5
- package/vscode/src/vs/workbench/contrib/snippets/browser/snippetCompletionProvider.js +3 -3
- package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsFile.js +3 -3
- package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsService.js +9 -9
- package/vscode/src/vs/workbench/contrib/speech/common/speechService.js +29 -29
- package/vscode/src/vs/workbench/contrib/tasks/common/constants.js +1 -1
- package/vscode/src/vs/workbench/contrib/tasks/common/taskDefinitionRegistry.js +9 -5
- package/vscode/src/vs/workbench/contrib/tasks/common/taskService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/tasks/common/taskService.js +6 -6
- package/vscode/src/vs/workbench/contrib/tasks/common/tasks.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/tasks/common/tasks.js +4 -4
- package/vscode/src/vs/workbench/contrib/terminal/browser/agentHostTerminalService.service.d.ts +44 -0
- package/vscode/src/vs/workbench/contrib/terminal/browser/agentHostTerminalService.service.js +6 -0
- package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.d.ts +27 -1
- package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.service.d.ts +16 -2
- package/vscode/src/vs/workbench/contrib/terminal/browser/terminalEditorInput.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminal/browser/terminalIcons.js +13 -13
- package/vscode/src/vs/workbench/contrib/terminal/browser/terminalMenus.js +40 -40
- package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/decorationStyles.js +15 -15
- package/vscode/src/vs/workbench/contrib/terminal/common/terminal.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/terminal/common/terminal.js +12 -10
- package/vscode/src/vs/workbench/contrib/terminal/common/terminal.service.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/terminal/common/terminalColorRegistry.js +23 -23
- package/vscode/src/vs/workbench/contrib/terminal/common/terminalContextKey.js +17 -17
- package/vscode/src/vs/workbench/contrib/terminal/common/terminalEnvironment.d.ts +38 -0
- package/vscode/src/vs/workbench/contrib/terminal/common/terminalEnvironment.js +321 -0
- package/vscode/src/vs/workbench/contrib/terminal/common/terminalStrings.js +26 -26
- package/vscode/src/vs/workbench/contrib/terminal/terminalContribExports.d.ts +6 -11
- package/vscode/src/vs/workbench/contrib/terminal/terminalContribExports.js +6 -11
- package/vscode/src/vs/workbench/contrib/terminalContrib/accessibility/common/terminalAccessibilityConfiguration.js +2 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/autoReplies/common/terminalAutoRepliesConfiguration.js +2 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChat.d.ts +78 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChat.js +83 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalChatAgentToolsConfiguration.d.ts +7 -12
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalChatAgentToolsConfiguration.js +137 -151
- package/vscode/src/vs/workbench/contrib/terminalContrib/commandGuide/common/terminalCommandGuideConfiguration.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/history/common/terminal.history.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/inlineHint/common/terminalInitialHintConfiguration.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/inlineHint/common/terminalInitialHintConfiguration.js +16 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/notification/common/terminalNotificationConfiguration.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/stickyScroll/common/terminalStickyScrollConfiguration.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/suggest/common/terminalSuggestConfiguration.js +30 -30
- package/vscode/src/vs/workbench/contrib/terminalContrib/typeAhead/common/terminalTypeAheadConfiguration.js +5 -5
- package/vscode/src/vs/workbench/contrib/terminalContrib/zoom/common/terminal.zoom.js +2 -2
- package/vscode/src/vs/workbench/contrib/testing/common/constants.js +11 -11
- package/vscode/src/vs/workbench/contrib/testing/common/testResult.js +5 -3
- package/vscode/src/vs/workbench/contrib/testing/common/testTypes.js +3 -3
- package/vscode/src/vs/workbench/contrib/testing/common/testingContinuousRunService.service.d.ts +4 -4
- package/vscode/src/vs/workbench/contrib/url/browser/trustedDomains.js +6 -6
- package/vscode/src/vs/workbench/contrib/webview/browser/webview.contribution.js +3 -3
- package/vscode/src/vs/workbench/contrib/webview/browser/webviewFindAccessibilityHelp.js +30 -30
- package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditor.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditor.js +6 -9
- package/vscode/src/vs/workbench/contrib/welcomeOnboarding/common/onboardingService.service.d.ts +13 -0
- package/vscode/src/vs/workbench/contrib/welcomeOnboarding/common/onboardingService.service.js +6 -0
- package/vscode/src/vs/workbench/contrib/welcomeOnboarding/common/onboardingTypes.d.ts +52 -0
- package/vscode/src/vs/workbench/contrib/welcomeOnboarding/common/onboardingTypes.js +74 -0
- package/vscode/src/vs/workbench/contrib/workspace/common/workspace.js +2 -2
- package/vscode/src/vs/workbench/services/accounts/browser/defaultAccount.d.ts +3 -1
- package/vscode/src/vs/workbench/services/accounts/browser/defaultAccount.js +72 -48
- package/vscode/src/vs/workbench/services/agentHost/common/agentHostFileSystemService.service.d.ts +17 -0
- package/vscode/src/vs/workbench/services/agentHost/common/agentHostFileSystemService.service.js +6 -0
- package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.d.ts +1 -1
- package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +13 -13
- package/vscode/src/vs/workbench/services/authentication/common/authentication.d.ts +1 -1
- package/vscode/src/vs/workbench/services/authentication/common/authentication.service.d.ts +1 -1
- package/vscode/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.js +5 -5
- package/vscode/src/vs/workbench/services/chat/common/chatEntitlementService.d.ts +22 -4
- package/vscode/src/vs/workbench/services/chat/common/chatEntitlementService.js +61 -19
- package/vscode/src/vs/workbench/services/chat/common/chatEntitlementService.service.d.ts +1 -0
- package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverSchema.js +16 -16
- package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverUtils.js +1 -1
- package/vscode/src/vs/workbench/services/configurationResolver/common/variableResolver.js +16 -16
- package/vscode/src/vs/workbench/services/editor/common/editorGroupsService.d.ts +16 -0
- package/vscode/src/vs/workbench/services/editor/common/editorResolverService.js +1 -1
- package/vscode/src/vs/workbench/services/extensionManagement/common/extensionsIcons.js +3 -3
- package/vscode/src/vs/workbench/services/extensionRecommendations/common/workspaceExtensionsConfig.js +6 -6
- package/vscode/src/vs/workbench/services/extensions/browser/extensionUrlHandler.js +10 -10
- package/vscode/src/vs/workbench/services/extensions/common/extensionsRegistry.js +88 -88
- package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.d.ts +2 -1
- package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.js +18 -6
- package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.service.d.ts +1 -0
- package/vscode/src/vs/workbench/services/host/browser/host.service.d.ts +6 -0
- package/vscode/src/vs/workbench/services/language/common/languageService.js +24 -24
- package/vscode/src/vs/workbench/services/log/common/logConstants.js +1 -1
- package/vscode/src/vs/workbench/services/preferences/browser/keybindingsEditorInput.js +2 -2
- package/vscode/src/vs/workbench/services/preferences/browser/keybindingsEditorModel.js +7 -7
- package/vscode/src/vs/workbench/services/preferences/common/preferencesEditorInput.js +4 -4
- package/vscode/src/vs/workbench/services/preferences/common/preferencesModels.js +2 -2
- package/vscode/src/vs/workbench/services/preferences/common/preferencesValidation.js +30 -30
- package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.js +8 -8
- package/vscode/src/vs/workbench/services/remote/common/tunnelModel.js +6 -6
- package/vscode/src/vs/workbench/services/search/common/queryBuilder.js +1 -1
- package/vscode/src/vs/workbench/services/textMate/common/TMGrammars.js +10 -10
- package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModel.js +3 -3
- package/vscode/src/vs/workbench/services/themes/common/colorExtensionPoint.js +18 -18
- package/vscode/src/vs/workbench/services/themes/common/colorThemeData.js +8 -8
- package/vscode/src/vs/workbench/services/themes/common/iconExtensionPoint.js +13 -13
- package/vscode/src/vs/workbench/services/themes/common/tokenClassificationExtensionPoint.js +24 -24
- package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfile.js +3 -3
- package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfileIcons.js +1 -1
- package/vscode/src/vs/workbench/services/userDataSync/common/userDataSync.js +13 -13
- package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.js +16 -16
- package/vscode-dts/vscode.proposed.authIssuers.d.ts +12 -0
- package/vscode-dts/vscode.proposed.chatDebug.d.ts +11 -0
- package/vscode-dts/vscode.proposed.chatParticipantPrivate.d.ts +8 -0
- package/vscode-dts/vscode.proposed.chatPromptFiles.d.ts +316 -8
- package/vscode-dts/vscode.proposed.chatSessionCustomizationProvider.d.ts +6 -4
- package/vscode-dts/vscode.proposed.chatSessionsProvider.d.ts +92 -44
- package/vscode-dts/vscode.proposed.mcpServerDefinitions.d.ts +4 -1
- package/vscode-dts/vscode.proposed.toolInvocationApproveCombination.d.ts +13 -4
- package/vscode/src/vs/workbench/services/browserElements/browser/browserElementsService.service.d.ts +0 -12
- package/vscode/src/vs/workbench/services/browserElements/browser/browserElementsService.service.js +0 -6
|
@@ -22,7 +22,7 @@ import { CellUri } from '../../../notebook/common/notebookCommon.js';
|
|
|
22
22
|
import { IChatRequestVariableEntry, isStringVariableEntry, isImplicitVariableEntry, isStringImplicitContextValue } from '../attachments/chatVariableEntries.js';
|
|
23
23
|
import { migrateLegacyTerminalToolSpecificData } from '../chat.js';
|
|
24
24
|
import { markChat, ChatPerfMark } from '../chatPerf.js';
|
|
25
|
-
import { IChatToolInvocation, ChatResponseClearToPreviousToolInvocationReason, ResponseModelState, ElicitationState, isIUsedContext, ChatRequestQueueKind } from '../chatService/chatService.js';
|
|
25
|
+
import { IChatToolInvocation, ChatResponseClearToPreviousToolInvocationReason, ResponseModelState, ElicitationState, ToolConfirmKind, isIUsedContext, ChatRequestQueueKind } from '../chatService/chatService.js';
|
|
26
26
|
import { IChatService } from '../chatService/chatService.service.js';
|
|
27
27
|
import { ChatAgentLocation, ChatModeKind } from '../constants.js';
|
|
28
28
|
import { ChatToolInvocation } from './chatProgressTypes/chatToolInvocation.js';
|
|
@@ -130,6 +130,9 @@ class ChatRequestModel {
|
|
|
130
130
|
this.id = params.restoredId ?? "request_" + generateUuid();
|
|
131
131
|
this._editedFileEvents = params.editedFileEvents;
|
|
132
132
|
this.userSelectedTools = params.userSelectedTools;
|
|
133
|
+
this.isSystemInitiated = params.isSystemInitiated;
|
|
134
|
+
this.systemInitiatedLabel = params.systemInitiatedLabel;
|
|
135
|
+
this.terminalExecutionId = params.terminalExecutionId;
|
|
133
136
|
}
|
|
134
137
|
adoptTo(session) {
|
|
135
138
|
this._session = session;
|
|
@@ -240,6 +243,7 @@ class AbstractResponse {
|
|
|
240
243
|
case "multiDiffData":
|
|
241
244
|
case "mcpServersStarting":
|
|
242
245
|
case "questionCarousel":
|
|
246
|
+
case "planReview":
|
|
243
247
|
case "disabledClaudeHooks":
|
|
244
248
|
continue;
|
|
245
249
|
case "toolInvocation":
|
|
@@ -300,7 +304,7 @@ class AbstractResponse {
|
|
|
300
304
|
blocks.push(currentBlockSegments.join(""));
|
|
301
305
|
}
|
|
302
306
|
if (hasEditGroupsAfterLastClear) {
|
|
303
|
-
blocks.push(( localize(
|
|
307
|
+
blocks.push(( localize(7409, "Made changes.")));
|
|
304
308
|
}
|
|
305
309
|
return blocks.join("\n\n");
|
|
306
310
|
}
|
|
@@ -311,6 +315,7 @@ class AbstractResponse {
|
|
|
311
315
|
return "name" in part.inlineReference ? "`" + part.inlineReference.name + "`" : this.uriToRepr(part.inlineReference);
|
|
312
316
|
}
|
|
313
317
|
getToolInvocationText(toolInvocation) {
|
|
318
|
+
const getTerminalDisplayInput = terminalData => terminalData.presentationOverrides?.commandLine ?? terminalData.commandLine.forDisplay ?? terminalData.commandLine.userEdited ?? terminalData.commandLine.toolEdited ?? terminalData.commandLine.original;
|
|
314
319
|
let message = "";
|
|
315
320
|
let input = "";
|
|
316
321
|
if (toolInvocation.pastTenseMessage) {
|
|
@@ -322,7 +327,7 @@ class AbstractResponse {
|
|
|
322
327
|
if (toolInvocation.toolSpecificData.kind === "terminal") {
|
|
323
328
|
message = "Ran terminal command";
|
|
324
329
|
const terminalData = migrateLegacyTerminalToolSpecificData(toolInvocation.toolSpecificData);
|
|
325
|
-
input = terminalData
|
|
330
|
+
input = getTerminalDisplayInput(terminalData);
|
|
326
331
|
}
|
|
327
332
|
}
|
|
328
333
|
let text = message;
|
|
@@ -333,7 +338,8 @@ class AbstractResponse {
|
|
|
333
338
|
const resultDetails = IChatToolInvocation.resultDetails(toolInvocation);
|
|
334
339
|
if (resultDetails && "input" in resultDetails) {
|
|
335
340
|
const resultPrefix = toolInvocation.kind === "toolInvocationSerialized" || IChatToolInvocation.isComplete(toolInvocation) ? "Completed" : "Errored";
|
|
336
|
-
|
|
341
|
+
const resultInput = toolInvocation.toolSpecificData?.kind === "terminal" ? getTerminalDisplayInput(migrateLegacyTerminalToolSpecificData(toolInvocation.toolSpecificData)) : resultDetails.input;
|
|
342
|
+
text += `\n${resultPrefix} with input: ${resultInput}`;
|
|
337
343
|
}
|
|
338
344
|
}
|
|
339
345
|
return {
|
|
@@ -406,12 +412,12 @@ class Response extends AbstractResponse {
|
|
|
406
412
|
if (progress.kind === "clearToPreviousToolInvocation") {
|
|
407
413
|
if (progress.reason === ChatResponseClearToPreviousToolInvocationReason.CopyrightContentRetry) {
|
|
408
414
|
this.clearToPreviousToolInvocation(( localize(
|
|
409
|
-
|
|
415
|
+
7410,
|
|
410
416
|
"Response cleared due to possible match to public code, retrying with modified prompt."
|
|
411
417
|
)));
|
|
412
418
|
} else if (progress.reason === ChatResponseClearToPreviousToolInvocationReason.FilteredContentRetry) {
|
|
413
419
|
this.clearToPreviousToolInvocation(( localize(
|
|
414
|
-
|
|
420
|
+
7411,
|
|
415
421
|
"Response cleared due to content safety filters, retrying with modified prompt."
|
|
416
422
|
)));
|
|
417
423
|
} else {
|
|
@@ -645,7 +651,19 @@ class ChatResponseModel extends Disposable {
|
|
|
645
651
|
return this._result;
|
|
646
652
|
}
|
|
647
653
|
get usage() {
|
|
648
|
-
return this.
|
|
654
|
+
return this._usageObs.get();
|
|
655
|
+
}
|
|
656
|
+
get usageObs() {
|
|
657
|
+
return this._usageObs;
|
|
658
|
+
}
|
|
659
|
+
get completionTokenCount() {
|
|
660
|
+
return this._completionTokenCountObs.get();
|
|
661
|
+
}
|
|
662
|
+
get completionTokenCountObs() {
|
|
663
|
+
return this._completionTokenCountObs;
|
|
664
|
+
}
|
|
665
|
+
get elapsedMs() {
|
|
666
|
+
return this._elapsedMs;
|
|
649
667
|
}
|
|
650
668
|
get username() {
|
|
651
669
|
return this.session.responderUsername;
|
|
@@ -694,6 +712,8 @@ class ChatResponseModel extends Disposable {
|
|
|
694
712
|
this._modelState = observableValue(this, {
|
|
695
713
|
value: ResponseModelState.Pending
|
|
696
714
|
});
|
|
715
|
+
this._usageObs = observableValue(this, undefined);
|
|
716
|
+
this._completionTokenCountObs = observableValue(this, undefined);
|
|
697
717
|
this._shouldBeBlocked = observableValue(this, false);
|
|
698
718
|
this._contentReferences = [];
|
|
699
719
|
this._codeCitations = [];
|
|
@@ -708,6 +728,7 @@ class ChatResponseModel extends Disposable {
|
|
|
708
728
|
this._modelState.set(params.modelState, undefined);
|
|
709
729
|
}
|
|
710
730
|
this._timeSpentWaitingAccumulator = params.timeSpentWaiting || 0;
|
|
731
|
+
this._elapsedMs = params.elapsedMs;
|
|
711
732
|
this._vote = params.vote;
|
|
712
733
|
this._result = params.result;
|
|
713
734
|
this._followups = params.followups ? [...params.followups] : undefined;
|
|
@@ -728,14 +749,17 @@ class ChatResponseModel extends Disposable {
|
|
|
728
749
|
return title ? (isMarkdownString(title) ? title.value : title) : undefined;
|
|
729
750
|
}
|
|
730
751
|
if (state.type === IChatToolInvocation.StateKind.WaitingForPostApproval) {
|
|
731
|
-
return localize(
|
|
752
|
+
return localize(7412, "Approve tool result?");
|
|
732
753
|
}
|
|
733
754
|
}
|
|
734
755
|
if (part.kind === "confirmation" && !part.isUsed) {
|
|
735
756
|
return part.title;
|
|
736
757
|
}
|
|
737
758
|
if (part.kind === "questionCarousel" && !part.isUsed) {
|
|
738
|
-
return localize(
|
|
759
|
+
return localize(7413, "Answer questions to continue...");
|
|
760
|
+
}
|
|
761
|
+
if (part.kind === "planReview" && !part.isUsed) {
|
|
762
|
+
return localize(7414, "Review the plan to continue...");
|
|
739
763
|
}
|
|
740
764
|
if (part.kind === "elicitation2" && part.state.read(r) === ElicitationState.Pending) {
|
|
741
765
|
const title = part.title;
|
|
@@ -753,6 +777,9 @@ class ChatResponseModel extends Disposable {
|
|
|
753
777
|
signal.read(r);
|
|
754
778
|
return !_pendingInfo.read(r) && !this.shouldBeRemovedOnSend && (this._modelState.read(r).value === ResponseModelState.Pending || this._modelState.read(r).value === ResponseModelState.NeedsInput);
|
|
755
779
|
}));
|
|
780
|
+
this.isIncomplete = ( this._modelState.map(state => {
|
|
781
|
+
return state.value === ResponseModelState.Pending || state.value === ResponseModelState.NeedsInput;
|
|
782
|
+
}));
|
|
756
783
|
this._register(
|
|
757
784
|
this._response.onDidChangeValue(() => this._onDidChange.fire(defaultChatResponseModelChangeReason))
|
|
758
785
|
);
|
|
@@ -822,9 +849,18 @@ class ChatResponseModel extends Disposable {
|
|
|
822
849
|
this._onDidChange.fire(defaultChatResponseModelChangeReason);
|
|
823
850
|
}
|
|
824
851
|
setUsage(usage) {
|
|
825
|
-
this.
|
|
852
|
+
if (this.isSameUsage(usage)) {
|
|
853
|
+
return;
|
|
854
|
+
}
|
|
855
|
+
this._usageObs.set(usage, undefined);
|
|
856
|
+
const previousCompletionTokens = this._completionTokenCountObs.get() ?? 0;
|
|
857
|
+
this._completionTokenCountObs.set(previousCompletionTokens + usage.completionTokens, undefined);
|
|
826
858
|
this._onDidChange.fire(defaultChatResponseModelChangeReason);
|
|
827
859
|
}
|
|
860
|
+
isSameUsage(usage) {
|
|
861
|
+
const currentUsage = this._usageObs.get();
|
|
862
|
+
return !!currentUsage && currentUsage.promptTokens === usage.promptTokens && currentUsage.completionTokens === usage.completionTokens && currentUsage.outputBuffer === usage.outputBuffer && equals(currentUsage.promptTokenDetails, usage.promptTokenDetails);
|
|
863
|
+
}
|
|
828
864
|
complete() {
|
|
829
865
|
if (this.isComplete) {
|
|
830
866
|
return;
|
|
@@ -832,6 +868,7 @@ class ChatResponseModel extends Disposable {
|
|
|
832
868
|
if (this._result?.errorDetails?.responseIsRedacted) {
|
|
833
869
|
this._response.clear();
|
|
834
870
|
}
|
|
871
|
+
this._elapsedMs = Math.max(0, Date.now() - this.confirmationAdjustedTimestamp.get());
|
|
835
872
|
const state = !!this._result?.errorDetails && this._result.errorDetails.code !== "canceled" ? ResponseModelState.Failed : ResponseModelState.Complete;
|
|
836
873
|
this._modelState.set({
|
|
837
874
|
value: state,
|
|
@@ -842,6 +879,11 @@ class ChatResponseModel extends Disposable {
|
|
|
842
879
|
});
|
|
843
880
|
}
|
|
844
881
|
cancel() {
|
|
882
|
+
for (const part of this._response.value) {
|
|
883
|
+
if (part.kind === "toolInvocation" && part instanceof ChatToolInvocation) {
|
|
884
|
+
part.cancelFromStreaming(ToolConfirmKind.Skipped);
|
|
885
|
+
}
|
|
886
|
+
}
|
|
845
887
|
this._modelState.set({
|
|
846
888
|
value: ResponseModelState.Cancelled,
|
|
847
889
|
completedAt: Date.now()
|
|
@@ -878,6 +920,13 @@ class ChatResponseModel extends Disposable {
|
|
|
878
920
|
this._responseView = undefined;
|
|
879
921
|
this._shouldBeRemovedOnSend = undefined;
|
|
880
922
|
}
|
|
923
|
+
dispose() {
|
|
924
|
+
super.dispose();
|
|
925
|
+
this._response.clear();
|
|
926
|
+
if (this._codeBlockInfos) {
|
|
927
|
+
this._codeBlockInfos.length = 0;
|
|
928
|
+
}
|
|
929
|
+
}
|
|
881
930
|
toJSON() {
|
|
882
931
|
const modelState = this._modelState.get();
|
|
883
932
|
const pendingConfirmation = this.isPendingConfirmation.get();
|
|
@@ -898,7 +947,9 @@ class ChatResponseModel extends Disposable {
|
|
|
898
947
|
contentReferences: this.contentReferences,
|
|
899
948
|
codeCitations: this.codeCitations,
|
|
900
949
|
timestamp: this._timestamp,
|
|
901
|
-
timeSpentWaiting: (pendingConfirmation ? Date.now() - pendingConfirmation.startedWaitingAt : 0) + this._timeSpentWaitingAccumulator
|
|
950
|
+
timeSpentWaiting: (pendingConfirmation ? Date.now() - pendingConfirmation.startedWaitingAt : 0) + this._timeSpentWaitingAccumulator,
|
|
951
|
+
completionTokens: this.completionTokenCount,
|
|
952
|
+
elapsedMs: this.elapsedMs ?? (this.completedAt ? Math.max(0, this.completedAt - this.confirmationAdjustedTimestamp.get()) : undefined)
|
|
902
953
|
};
|
|
903
954
|
}
|
|
904
955
|
}
|
|
@@ -1012,12 +1063,6 @@ let ChatModel = ChatModel_1 = class ChatModel extends Disposable {
|
|
|
1012
1063
|
const message = typeof firstRequestMessage === "string" ? firstRequestMessage : firstRequestMessage.text;
|
|
1013
1064
|
return message.split("\n")[0].substring(0, 200);
|
|
1014
1065
|
}
|
|
1015
|
-
get contributedChatSession() {
|
|
1016
|
-
return this._contributedChatSession;
|
|
1017
|
-
}
|
|
1018
|
-
setContributedChatSession(session) {
|
|
1019
|
-
this._contributedChatSession = session;
|
|
1020
|
-
}
|
|
1021
1066
|
get repoData() {
|
|
1022
1067
|
return this._repoData;
|
|
1023
1068
|
}
|
|
@@ -1245,6 +1290,9 @@ let ChatModel = ChatModel_1 = class ChatModel extends Disposable {
|
|
|
1245
1290
|
this.requestInProgress = ( this.lastRequestObs.map((request, r) => {
|
|
1246
1291
|
return request?.response?.isInProgress.read(r) ?? false;
|
|
1247
1292
|
}));
|
|
1293
|
+
this.hasActiveRequest = ( this.lastRequestObs.map((request, r) => {
|
|
1294
|
+
return request?.response?.isIncomplete.read(r) ?? false;
|
|
1295
|
+
}));
|
|
1248
1296
|
this.requestNeedsInput = ( this.lastRequestObs.map((request, r) => {
|
|
1249
1297
|
const pendingInfo = request?.response?.isPendingConfirmation.read(r);
|
|
1250
1298
|
if (!pendingInfo) {
|
|
@@ -1262,7 +1310,7 @@ let ChatModel = ChatModel_1 = class ChatModel extends Disposable {
|
|
|
1262
1310
|
const needsInput = this.requestNeedsInput.read(r);
|
|
1263
1311
|
const shouldStayAlive = inProgress || !!needsInput;
|
|
1264
1312
|
if (shouldStayAlive && !selfRef.value) {
|
|
1265
|
-
selfRef.value = chatService.acquireExistingSession(this._sessionResource);
|
|
1313
|
+
selfRef.value = chatService.acquireExistingSession(this._sessionResource, "ChatModel#requestInProgressKeepAlive");
|
|
1266
1314
|
} else if (!shouldStayAlive && selfRef.value) {
|
|
1267
1315
|
selfRef.clear();
|
|
1268
1316
|
}
|
|
@@ -1278,7 +1326,7 @@ let ChatModel = ChatModel_1 = class ChatModel extends Disposable {
|
|
|
1278
1326
|
this._register(autorun(r => {
|
|
1279
1327
|
const hasModified = ( session.entries.read(r).some(e => e.state.read(r) === ModifiedFileEntryState.Modified));
|
|
1280
1328
|
if (hasModified && !selfRef.value) {
|
|
1281
|
-
selfRef.value = this.chatService.acquireExistingSession(this._sessionResource);
|
|
1329
|
+
selfRef.value = this.chatService.acquireExistingSession(this._sessionResource, "ChatModel#modifiedEditsKeepAlive");
|
|
1282
1330
|
} else if (!hasModified && selfRef.value) {
|
|
1283
1331
|
selfRef.clear();
|
|
1284
1332
|
}
|
|
@@ -1327,7 +1375,10 @@ let ChatModel = ChatModel_1 = class ChatModel extends Disposable {
|
|
|
1327
1375
|
confirmation: raw.confirmation,
|
|
1328
1376
|
editedFileEvents: raw.editedFileEvents,
|
|
1329
1377
|
modelId: raw.modelId,
|
|
1330
|
-
modeInfo: raw.modeInfo
|
|
1378
|
+
modeInfo: raw.modeInfo,
|
|
1379
|
+
isSystemInitiated: raw.isSystemInitiated,
|
|
1380
|
+
systemInitiatedLabel: raw.systemInitiatedLabel,
|
|
1381
|
+
terminalExecutionId: raw.terminalExecutionId
|
|
1331
1382
|
}));
|
|
1332
1383
|
request.shouldBeRemovedOnSend = raw.isHidden ? {
|
|
1333
1384
|
requestId: raw.requestId
|
|
@@ -1353,7 +1404,7 @@ let ChatModel = ChatModel_1 = class ChatModel extends Disposable {
|
|
|
1353
1404
|
for (const part of raw.response) {
|
|
1354
1405
|
if (hasKey(part, {
|
|
1355
1406
|
kind: true
|
|
1356
|
-
}) && (part.kind === "questionCarousel")) {
|
|
1407
|
+
}) && (part.kind === "questionCarousel" || part.kind === "planReview")) {
|
|
1357
1408
|
part.isUsed = true;
|
|
1358
1409
|
}
|
|
1359
1410
|
}
|
|
@@ -1371,6 +1422,7 @@ let ChatModel = ChatModel_1 = class ChatModel extends Disposable {
|
|
|
1371
1422
|
followups: raw.followups,
|
|
1372
1423
|
restoredId: raw.responseId,
|
|
1373
1424
|
timeSpentWaiting: raw.timeSpentWaiting,
|
|
1425
|
+
elapsedMs: raw.elapsedMs,
|
|
1374
1426
|
shouldBeBlocked: request.shouldBeBlocked.get(),
|
|
1375
1427
|
codeBlockInfos: raw.responseMarkdownInfo?.map(info => ({
|
|
1376
1428
|
suggestionId: info.suggestionId
|
|
@@ -1379,6 +1431,13 @@ let ChatModel = ChatModel_1 = class ChatModel extends Disposable {
|
|
|
1379
1431
|
request.response.shouldBeRemovedOnSend = raw.isHidden ? {
|
|
1380
1432
|
requestId: raw.requestId
|
|
1381
1433
|
} : raw.shouldBeRemovedOnSend;
|
|
1434
|
+
if (typeof raw.completionTokens === "number") {
|
|
1435
|
+
request.response.setUsage({
|
|
1436
|
+
kind: "usage",
|
|
1437
|
+
promptTokens: 0,
|
|
1438
|
+
completionTokens: raw.completionTokens
|
|
1439
|
+
});
|
|
1440
|
+
}
|
|
1382
1441
|
if (raw.usedContext) {
|
|
1383
1442
|
request.response.applyReference(revive(raw.usedContext));
|
|
1384
1443
|
}
|
|
@@ -1497,7 +1556,10 @@ let ChatModel = ChatModel_1 = class ChatModel extends Disposable {
|
|
|
1497
1556
|
isCompleteAddedRequest,
|
|
1498
1557
|
modelId,
|
|
1499
1558
|
userSelectedTools,
|
|
1500
|
-
id
|
|
1559
|
+
id,
|
|
1560
|
+
isSystemInitiated,
|
|
1561
|
+
systemInitiatedLabel,
|
|
1562
|
+
terminalExecutionId
|
|
1501
1563
|
) {
|
|
1502
1564
|
const editedFileEvents = [...( this.currentEditedFileEvents.values())];
|
|
1503
1565
|
this.currentEditedFileEvents.clear();
|
|
@@ -1515,7 +1577,10 @@ let ChatModel = ChatModel_1 = class ChatModel extends Disposable {
|
|
|
1515
1577
|
isCompleteAddedRequest,
|
|
1516
1578
|
modelId,
|
|
1517
1579
|
editedFileEvents: editedFileEvents.length ? editedFileEvents : undefined,
|
|
1518
|
-
userSelectedTools
|
|
1580
|
+
userSelectedTools,
|
|
1581
|
+
isSystemInitiated,
|
|
1582
|
+
systemInitiatedLabel,
|
|
1583
|
+
terminalExecutionId
|
|
1519
1584
|
}));
|
|
1520
1585
|
request.response = ( new ChatResponseModel({
|
|
1521
1586
|
responseContent: [],
|
|
@@ -1679,6 +1744,9 @@ let ChatModel = ChatModel_1 = class ChatModel extends Disposable {
|
|
|
1679
1744
|
editedFileEvents: r.editedFileEvents,
|
|
1680
1745
|
modelId: r.modelId,
|
|
1681
1746
|
modeInfo: r.modeInfo,
|
|
1747
|
+
isSystemInitiated: r.isSystemInitiated || undefined,
|
|
1748
|
+
systemInitiatedLabel: r.systemInitiatedLabel,
|
|
1749
|
+
terminalExecutionId: r.terminalExecutionId,
|
|
1682
1750
|
...r.response?.toJSON()
|
|
1683
1751
|
};
|
|
1684
1752
|
}))
|
|
@@ -1698,6 +1766,9 @@ let ChatModel = ChatModel_1 = class ChatModel extends Disposable {
|
|
|
1698
1766
|
this._requests.forEach(r => r.response?.dispose());
|
|
1699
1767
|
this._onDidDispose.fire();
|
|
1700
1768
|
super.dispose();
|
|
1769
|
+
this._requests.length = 0;
|
|
1770
|
+
this.dataSerializer = undefined;
|
|
1771
|
+
this._editingSession = undefined;
|
|
1701
1772
|
}
|
|
1702
1773
|
};
|
|
1703
1774
|
ChatModel = ChatModel_1 = ( __decorate([( __param(2, ILogService)), ( __param(3, IChatAgentService)), ( __param(4, IChatEditingService)), ( __param(5, IChatService))], ChatModel));
|
|
@@ -1738,7 +1809,7 @@ function getCodeCitationsMessage(citations) {
|
|
|
1738
1809
|
return "";
|
|
1739
1810
|
}
|
|
1740
1811
|
const licenseTypes = citations.reduce((set, c) => set.add(c.license), ( new Set()));
|
|
1741
|
-
const label = licenseTypes.size === 1 ? ( localize(
|
|
1812
|
+
const label = licenseTypes.size === 1 ? ( localize(7415, "Similar code found with 1 license type", licenseTypes.size)) : ( localize(7416, "Similar code found with {0} license types", licenseTypes.size));
|
|
1742
1813
|
return label;
|
|
1743
1814
|
}
|
|
1744
1815
|
function serializeSendOptions(options) {
|
|
@@ -1753,7 +1824,10 @@ function serializeSendOptions(options) {
|
|
|
1753
1824
|
agentId: options.agentId,
|
|
1754
1825
|
agentIdSilent: options.agentIdSilent,
|
|
1755
1826
|
slashCommand: options.slashCommand,
|
|
1756
|
-
confirmation: options.confirmation
|
|
1827
|
+
confirmation: options.confirmation,
|
|
1828
|
+
isSystemInitiated: options.isSystemInitiated,
|
|
1829
|
+
systemInitiatedLabel: options.systemInitiatedLabel,
|
|
1830
|
+
terminalExecutionId: options.terminalExecutionId
|
|
1757
1831
|
};
|
|
1758
1832
|
}
|
|
1759
1833
|
var ChatRequestEditedFileEventKind;
|
package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatPlanReviewData.d.ts
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { DeferredPromise } from "../../../../../../base/common/async.js";
|
|
2
|
+
import { UriComponents } from "../../../../../../base/common/uri.js";
|
|
3
|
+
import { IChatPlanApprovalAction, IChatPlanReview, IChatPlanReviewResult } from "../../chatService/chatService.js";
|
|
4
|
+
import { ToolDataSource } from "../../tools/languageModelToolsService.js";
|
|
5
|
+
/**
|
|
6
|
+
* Runtime representation of a plan review widget with a {@link DeferredPromise}
|
|
7
|
+
* that is resolved when the user approves or rejects the plan. {@link toJSON}
|
|
8
|
+
* strips the completion so only serialisable data is persisted.
|
|
9
|
+
*/
|
|
10
|
+
export declare class ChatPlanReviewData implements IChatPlanReview {
|
|
11
|
+
title: string;
|
|
12
|
+
content: string;
|
|
13
|
+
actions: IChatPlanApprovalAction[];
|
|
14
|
+
canProvideFeedback: boolean;
|
|
15
|
+
planUri?: UriComponents | undefined;
|
|
16
|
+
resolveId?: string | undefined;
|
|
17
|
+
data?: IChatPlanReviewResult | undefined;
|
|
18
|
+
isUsed?: boolean | undefined;
|
|
19
|
+
source?: ToolDataSource | undefined;
|
|
20
|
+
readonly kind: "planReview";
|
|
21
|
+
readonly completion: DeferredPromise<IChatPlanReviewResult | undefined>;
|
|
22
|
+
draftFeedback: string | undefined;
|
|
23
|
+
draftCollapsed: boolean | undefined;
|
|
24
|
+
constructor(title: string, content: string, actions: IChatPlanApprovalAction[], canProvideFeedback: boolean, planUri?: UriComponents | undefined, resolveId?: string | undefined, data?: IChatPlanReviewResult | undefined, isUsed?: boolean | undefined, source?: ToolDataSource | undefined);
|
|
25
|
+
toJSON(): IChatPlanReview;
|
|
26
|
+
}
|
package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatPlanReviewData.js
ADDED
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
|
|
2
|
+
import { DeferredPromise } from '../../../../../../base/common/async.js';
|
|
3
|
+
|
|
4
|
+
class ChatPlanReviewData {
|
|
5
|
+
constructor(
|
|
6
|
+
title,
|
|
7
|
+
content,
|
|
8
|
+
actions,
|
|
9
|
+
canProvideFeedback,
|
|
10
|
+
planUri,
|
|
11
|
+
resolveId,
|
|
12
|
+
data,
|
|
13
|
+
isUsed,
|
|
14
|
+
source
|
|
15
|
+
) {
|
|
16
|
+
this.title = title;
|
|
17
|
+
this.content = content;
|
|
18
|
+
this.actions = actions;
|
|
19
|
+
this.canProvideFeedback = canProvideFeedback;
|
|
20
|
+
this.planUri = planUri;
|
|
21
|
+
this.resolveId = resolveId;
|
|
22
|
+
this.data = data;
|
|
23
|
+
this.isUsed = isUsed;
|
|
24
|
+
this.source = source;
|
|
25
|
+
this.kind = "planReview";
|
|
26
|
+
this.completion = ( new DeferredPromise());
|
|
27
|
+
}
|
|
28
|
+
toJSON() {
|
|
29
|
+
return {
|
|
30
|
+
kind: this.kind,
|
|
31
|
+
title: this.title,
|
|
32
|
+
content: this.content,
|
|
33
|
+
actions: this.actions,
|
|
34
|
+
canProvideFeedback: this.canProvideFeedback,
|
|
35
|
+
planUri: this.planUri,
|
|
36
|
+
resolveId: this.resolveId,
|
|
37
|
+
data: this.data,
|
|
38
|
+
isUsed: this.isUsed,
|
|
39
|
+
source: this.source
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
export { ChatPlanReviewData };
|
|
@@ -15,6 +15,7 @@ export declare class ChatQuestionCarouselData implements IChatQuestionCarousel {
|
|
|
15
15
|
isUsed?: boolean | undefined;
|
|
16
16
|
message?: (string | IMarkdownString) | undefined;
|
|
17
17
|
source?: ToolDataSource | undefined;
|
|
18
|
+
terminalId?: string | undefined;
|
|
18
19
|
readonly kind: "questionCarousel";
|
|
19
20
|
readonly completion: DeferredPromise<{
|
|
20
21
|
answers: IChatQuestionAnswers | undefined;
|
|
@@ -22,6 +23,11 @@ export declare class ChatQuestionCarouselData implements IChatQuestionCarousel {
|
|
|
22
23
|
draftAnswers: IChatQuestionAnswers | undefined;
|
|
23
24
|
draftCurrentIndex: number | undefined;
|
|
24
25
|
draftCollapsed: boolean | undefined;
|
|
25
|
-
|
|
26
|
+
/**
|
|
27
|
+
* Set to `true` when the carousel was dismissed because the user typed
|
|
28
|
+
* directly in the associated terminal instead of using the carousel UI.
|
|
29
|
+
*/
|
|
30
|
+
dismissedByTerminalInput?: boolean;
|
|
31
|
+
constructor(questions: IChatQuestion[], allowSkip: boolean, resolveId?: string | undefined, data?: IChatQuestionAnswers | undefined, isUsed?: boolean | undefined, message?: (string | IMarkdownString) | undefined, source?: ToolDataSource | undefined, terminalId?: string | undefined);
|
|
26
32
|
toJSON(): IChatQuestionCarousel;
|
|
27
33
|
}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { DeferredPromise } from '../../../../../../base/common/async.js';
|
|
3
3
|
|
|
4
4
|
class ChatQuestionCarouselData {
|
|
5
|
-
constructor(questions, allowSkip, resolveId, data, isUsed, message, source) {
|
|
5
|
+
constructor(questions, allowSkip, resolveId, data, isUsed, message, source, terminalId) {
|
|
6
6
|
this.questions = questions;
|
|
7
7
|
this.allowSkip = allowSkip;
|
|
8
8
|
this.resolveId = resolveId;
|
|
@@ -10,6 +10,7 @@ class ChatQuestionCarouselData {
|
|
|
10
10
|
this.isUsed = isUsed;
|
|
11
11
|
this.message = message;
|
|
12
12
|
this.source = source;
|
|
13
|
+
this.terminalId = terminalId;
|
|
13
14
|
this.kind = "questionCarousel";
|
|
14
15
|
this.completion = ( new DeferredPromise());
|
|
15
16
|
}
|
|
@@ -22,7 +23,8 @@ class ChatQuestionCarouselData {
|
|
|
22
23
|
data: this.data,
|
|
23
24
|
isUsed: this.isUsed,
|
|
24
25
|
message: this.message,
|
|
25
|
-
source: this.source
|
|
26
|
+
source: this.source,
|
|
27
|
+
terminalId: this.terminalId
|
|
26
28
|
};
|
|
27
29
|
}
|
|
28
30
|
}
|
package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatToolInvocation.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { IMarkdownString } from "../../../../../../base/common/htmlContent.js";
|
|
2
2
|
import { IObservable } from "../../../../../../base/common/observable.js";
|
|
3
3
|
import { ThemeIcon } from "../../../../../../base/common/themables.js";
|
|
4
|
-
import { ConfirmedReason,
|
|
4
|
+
import { ConfirmedReason, IChatToolInvocation, IChatToolInvocationSerialized, ToolConfirmKind } from "../../chatService/chatService.js";
|
|
5
5
|
import { IPreparedToolInvocation, IToolConfirmationMessages, IToolData, IToolProgressStep, IToolResult, ToolDataSource } from "../../tools/languageModelToolsService.js";
|
|
6
6
|
export interface IStreamingToolCallOptions {
|
|
7
7
|
toolCallId: string;
|
|
@@ -26,7 +26,11 @@ export declare class ChatToolInvocation implements IChatToolInvocation {
|
|
|
26
26
|
generatedTitle?: string;
|
|
27
27
|
readonly chatRequestId?: string;
|
|
28
28
|
isAttachedToThinking: boolean;
|
|
29
|
-
|
|
29
|
+
private _toolSpecificData?;
|
|
30
|
+
private readonly _toolSpecificDataKind;
|
|
31
|
+
readonly toolSpecificDataKind: IObservable<string | undefined>;
|
|
32
|
+
get toolSpecificData(): typeof this._toolSpecificData;
|
|
33
|
+
set toolSpecificData(value: typeof this._toolSpecificData);
|
|
30
34
|
private readonly _progress;
|
|
31
35
|
private readonly _state;
|
|
32
36
|
private readonly _partialInput;
|
|
@@ -56,6 +60,12 @@ export declare class ChatToolInvocation implements IChatToolInvocation {
|
|
|
56
60
|
* Update the streaming message (from handleToolStream).
|
|
57
61
|
*/
|
|
58
62
|
updateStreamingMessage(message: string | IMarkdownString): void;
|
|
63
|
+
/**
|
|
64
|
+
* Notifies state observers that `toolSpecificData` has been mutated.
|
|
65
|
+
* Since `toolSpecificData` isn't observable, this re-sets the internal
|
|
66
|
+
* state to trigger autoruns that need to re-read tool metadata.
|
|
67
|
+
*/
|
|
68
|
+
notifyToolSpecificDataChanged(): void;
|
|
59
69
|
/**
|
|
60
70
|
* Cancel a streaming invocation directly (e.g., when preToolUse hook denies).
|
|
61
71
|
* Only works when in Streaming state.
|
package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatToolInvocation.js
CHANGED
|
@@ -8,6 +8,13 @@ import { isToolResultOutputDetails } from '../../tools/languageModelToolsService
|
|
|
8
8
|
import { observableValue } from '../../../../../../base/common/observableInternal/observables/observableValue.js';
|
|
9
9
|
|
|
10
10
|
class ChatToolInvocation {
|
|
11
|
+
get toolSpecificData() {
|
|
12
|
+
return this._toolSpecificData;
|
|
13
|
+
}
|
|
14
|
+
set toolSpecificData(value) {
|
|
15
|
+
this._toolSpecificData = value;
|
|
16
|
+
this._toolSpecificDataKind.set(value?.kind, undefined);
|
|
17
|
+
}
|
|
11
18
|
get state() {
|
|
12
19
|
return this._state;
|
|
13
20
|
}
|
|
@@ -51,6 +58,8 @@ class ChatToolInvocation {
|
|
|
51
58
|
this.toolCallId = toolCallId;
|
|
52
59
|
this.kind = "toolInvocation";
|
|
53
60
|
this.isAttachedToThinking = false;
|
|
61
|
+
this._toolSpecificDataKind = observableValue(this, undefined);
|
|
62
|
+
this.toolSpecificDataKind = this._toolSpecificDataKind;
|
|
54
63
|
this._progress = observableValue(this, {
|
|
55
64
|
progress: 0
|
|
56
65
|
});
|
|
@@ -60,7 +69,7 @@ class ChatToolInvocation {
|
|
|
60
69
|
if (startOptions.startInStreaming) {
|
|
61
70
|
defaultMessage = toolData.displayName;
|
|
62
71
|
} else if (startOptions.startInCancelled) {
|
|
63
|
-
defaultMessage = startOptions.cancelReasonMessage ?? ( localize(
|
|
72
|
+
defaultMessage = startOptions.cancelReasonMessage ?? ( localize(7417, "Tool \"{0}\" was denied", toolData.displayName));
|
|
64
73
|
}
|
|
65
74
|
this.invocationMessage = preparedInvocation?.invocationMessage ?? defaultMessage;
|
|
66
75
|
this.pastTenseMessage = preparedInvocation?.pastTenseMessage;
|
|
@@ -138,6 +147,12 @@ class ChatToolInvocation {
|
|
|
138
147
|
}
|
|
139
148
|
this._streamingMessage.set(message, undefined);
|
|
140
149
|
}
|
|
150
|
+
notifyToolSpecificDataChanged() {
|
|
151
|
+
const current = this._state.get();
|
|
152
|
+
this._state.set({
|
|
153
|
+
...current
|
|
154
|
+
}, undefined);
|
|
155
|
+
}
|
|
141
156
|
cancelFromStreaming(reason, reasonMessage) {
|
|
142
157
|
const currentState = this._state.get();
|
|
143
158
|
if (currentState.type !== IChatToolInvocation.StateKind.Streaming) {
|
|
@@ -6,11 +6,10 @@ import { ThemeIcon } from "../../../../../base/common/themables.js";
|
|
|
6
6
|
import { URI } from "../../../../../base/common/uri.js";
|
|
7
7
|
import { IInstantiationService } from "../../../../../platform/instantiation/common/instantiation.js";
|
|
8
8
|
import { IChatRequestVariableEntry } from "../attachments/chatVariableEntries.js";
|
|
9
|
-
import { ChatAgentVoteDirection, ChatRequestQueueKind, IChatCodeCitation, IChatContentReference, IChatDisabledClaudeHooksPart, IChatFollowup, IChatMcpServersStarting, IChatProgressMessage, IChatQuestionCarousel, IChatResponseErrorDetails, IChatTask, IChatUsedContext } from "../chatService/chatService.js";
|
|
9
|
+
import { ChatAgentVoteDirection, ChatRequestQueueKind, IChatCodeCitation, IChatContentReference, IChatDisabledClaudeHooksPart, IChatFollowup, IChatMcpServersStarting, IChatPlanReview, IChatProgressMessage, IChatQuestionCarousel, IChatResponseErrorDetails, IChatTask, IChatUsage, IChatUsedContext } from "../chatService/chatService.js";
|
|
10
10
|
import { IChatAgentCommand, IChatAgentData, IChatAgentResult } from "../participants/chatAgents.js";
|
|
11
11
|
import { IChatAgentNameService } from "../participants/chatAgents.service.js";
|
|
12
12
|
import { IParsedChatRequest } from "../requestParser/chatParserTypes.js";
|
|
13
|
-
import { CodeBlockModelCollection } from "@codingame/monaco-vscode-katex-common/vscode/vs/workbench/contrib/chat/common/widget/codeBlockModelCollection";
|
|
14
13
|
import { IChatModel, IChatProgressRenderableResponseContent, IChatRequestDisablement, IChatRequestModel, IChatResponseModel, IChatTextEditGroup, IResponse } from "./chatModel.js";
|
|
15
14
|
import { IChatStreamStats } from "./chatStreamStats.js";
|
|
16
15
|
export declare function isRequestVM(item: unknown): item is IChatRequestViewModel;
|
|
@@ -68,6 +67,8 @@ export interface IChatRequestViewModel {
|
|
|
68
67
|
readonly timestamp: number;
|
|
69
68
|
/** The kind of pending request, or undefined if not pending */
|
|
70
69
|
readonly pendingKind?: ChatRequestQueueKind;
|
|
70
|
+
readonly isSystemInitiated?: boolean;
|
|
71
|
+
readonly systemInitiatedLabel?: string;
|
|
71
72
|
}
|
|
72
73
|
export interface IChatResponseMarkdownRenderData {
|
|
73
74
|
renderedWordCount: number;
|
|
@@ -117,6 +118,23 @@ export interface IChatReferences {
|
|
|
117
118
|
*/
|
|
118
119
|
export interface IChatWorkingProgress {
|
|
119
120
|
kind: "working";
|
|
121
|
+
content?: IMarkdownString;
|
|
122
|
+
/**
|
|
123
|
+
* When present, the working progress will show elapsed time and token usage.
|
|
124
|
+
*/
|
|
125
|
+
state?: IChatWorkingProgressState;
|
|
126
|
+
}
|
|
127
|
+
export interface IChatWorkingProgressState {
|
|
128
|
+
/** The confirmation-adjusted timestamp observable for computing elapsed time */
|
|
129
|
+
readonly confirmationAdjustedTimestamp: IObservable<number>;
|
|
130
|
+
/** Observable for tracking completion token count as it arrives */
|
|
131
|
+
readonly completionTokenCountObs: IObservable<number | undefined>;
|
|
132
|
+
/** Whether the response is complete (for past-tense display) */
|
|
133
|
+
readonly isComplete: boolean;
|
|
134
|
+
/** The completedAt timestamp for completed responses */
|
|
135
|
+
readonly completedAt?: number;
|
|
136
|
+
/** Pre-computed elapsed generation time in ms (reliable for restored sessions) */
|
|
137
|
+
readonly elapsedMs?: number;
|
|
120
138
|
}
|
|
121
139
|
/**
|
|
122
140
|
* Content type for citations used during rendering, not in the model
|
|
@@ -138,7 +156,7 @@ export interface IChatChangesSummaryPart {
|
|
|
138
156
|
/**
|
|
139
157
|
* Type for content parts rendered by IChatListRenderer (not necessarily in the model)
|
|
140
158
|
*/
|
|
141
|
-
export type IChatRendererContent = IChatProgressRenderableResponseContent | IChatReferences | IChatCodeCitations | IChatErrorDetailsPart | IChatChangesSummaryPart | IChatWorkingProgress | IChatMcpServersStarting | IChatQuestionCarousel | IChatDisabledClaudeHooksPart;
|
|
159
|
+
export type IChatRendererContent = IChatProgressRenderableResponseContent | IChatReferences | IChatCodeCitations | IChatErrorDetailsPart | IChatChangesSummaryPart | IChatWorkingProgress | IChatMcpServersStarting | IChatQuestionCarousel | IChatPlanReview | IChatDisabledClaudeHooksPart;
|
|
142
160
|
export interface IChatResponseViewModel {
|
|
143
161
|
readonly model: IChatResponseModel;
|
|
144
162
|
readonly id: string;
|
|
@@ -165,6 +183,9 @@ export interface IChatResponseViewModel {
|
|
|
165
183
|
readonly errorDetails?: IChatResponseErrorDetails;
|
|
166
184
|
readonly result?: IChatAgentResult;
|
|
167
185
|
readonly contentUpdateTimings?: IChatStreamStats;
|
|
186
|
+
readonly confirmationAdjustedTimestamp: IObservable<number>;
|
|
187
|
+
readonly usageObs: IObservable<IChatUsage | undefined>;
|
|
188
|
+
readonly completionTokenCountObs: IObservable<number | undefined>;
|
|
168
189
|
readonly shouldBeRemovedOnSend: IChatRequestDisablement | undefined;
|
|
169
190
|
readonly isCompleteAddedRequest: boolean;
|
|
170
191
|
renderData?: IChatResponseRenderData;
|
|
@@ -181,6 +202,7 @@ export interface IChatPendingDividerViewModel {
|
|
|
181
202
|
readonly sessionResource: URI;
|
|
182
203
|
readonly isComplete: true;
|
|
183
204
|
readonly dividerKind: ChatRequestQueueKind;
|
|
205
|
+
readonly isSystemInitiated?: boolean;
|
|
184
206
|
currentRenderedHeight: number | undefined;
|
|
185
207
|
}
|
|
186
208
|
export interface IChatViewModelOptions {
|
|
@@ -192,7 +214,6 @@ export interface IChatViewModelOptions {
|
|
|
192
214
|
}
|
|
193
215
|
export declare class ChatViewModel extends Disposable implements IChatViewModel {
|
|
194
216
|
private readonly _model;
|
|
195
|
-
readonly codeBlockModelCollection: CodeBlockModelCollection;
|
|
196
217
|
private readonly _options;
|
|
197
218
|
private readonly instantiationService;
|
|
198
219
|
private readonly _onDidDisposeModel;
|
|
@@ -206,7 +227,7 @@ export declare class ChatViewModel extends Disposable implements IChatViewModel
|
|
|
206
227
|
setInputPlaceholder(text: string): void;
|
|
207
228
|
resetInputPlaceholder(): void;
|
|
208
229
|
get sessionResource(): URI;
|
|
209
|
-
constructor(_model: IChatModel,
|
|
230
|
+
constructor(_model: IChatModel, _options: IChatViewModelOptions | undefined, instantiationService: IInstantiationService);
|
|
210
231
|
private onAddResponse;
|
|
211
232
|
getItems(): (IChatRequestViewModel | IChatResponseViewModel | IChatPendingDividerViewModel)[];
|
|
212
233
|
private _editing;
|
|
@@ -242,6 +263,8 @@ export declare class ChatRequestViewModel implements IChatRequestViewModel {
|
|
|
242
263
|
get modelId(): string | undefined;
|
|
243
264
|
get timestamp(): number;
|
|
244
265
|
get pendingKind(): ChatRequestQueueKind | undefined;
|
|
266
|
+
get isSystemInitiated(): boolean | undefined;
|
|
267
|
+
get systemInitiatedLabel(): string | undefined;
|
|
245
268
|
constructor(_model: IChatRequestModel, _pendingKind?: ChatRequestQueueKind | undefined);
|
|
246
269
|
}
|
|
247
270
|
export declare class ChatResponseViewModel extends Disposable implements IChatResponseViewModel {
|
|
@@ -287,6 +310,9 @@ export declare class ChatResponseViewModel extends Disposable implements IChatRe
|
|
|
287
310
|
set vulnerabilitiesListExpanded(v: boolean);
|
|
288
311
|
private readonly liveUpdateTracker;
|
|
289
312
|
get contentUpdateTimings(): IChatStreamStats | undefined;
|
|
313
|
+
get confirmationAdjustedTimestamp(): IObservable<number>;
|
|
314
|
+
get usageObs(): IObservable<IChatUsage | undefined>;
|
|
315
|
+
get completionTokenCountObs(): IObservable<number | undefined>;
|
|
290
316
|
constructor(_model: IChatResponseModel, session: IChatViewModel, instantiationService: IInstantiationService, chatAgentNameService: IChatAgentNameService);
|
|
291
317
|
setVote(vote: ChatAgentVoteDirection): void;
|
|
292
318
|
setEditApplied(edit: IChatTextEditGroup, editCount: number): void;
|