@codingame/monaco-vscode-katex-common 34.1.3 → 35.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/package.json +2 -2
- package/vscode/src/vs/base/browser/animationSync.d.ts +36 -0
- package/vscode/src/vs/base/browser/animationSync.js +23 -0
- package/vscode/src/vs/base/browser/ui/pixelSpinner/pixelSpinner.js +23 -2
- package/vscode/src/vs/platform/actions/browser/buttonbar.js +3 -2
- package/vscode/src/vs/platform/agentHost/common/claudeSessionConfigKeys.d.ts +5 -5
- package/vscode/src/vs/platform/agentHost/common/fileEditDiff.d.ts +32 -0
- package/vscode/src/vs/platform/agentHost/common/fileEditDiff.js +33 -0
- package/vscode/src/vs/platform/agentHost/common/meta/agentFeedbackAnnotations.d.ts +90 -0
- package/vscode/src/vs/platform/agentHost/common/meta/agentFeedbackAttachments.d.ts +30 -0
- package/vscode/src/vs/platform/agentHost/common/meta/agentToolCallMeta.d.ts +65 -0
- package/vscode/src/vs/platform/agentHost/common/sessionConfigKeys.d.ts +16 -5
- package/vscode/src/vs/platform/agentHost/common/sessionConfigKeys.js +3 -2
- package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-resource-watch/reducer.d.ts +21 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/reducers.d.ts +8 -0
- package/vscode/src/vs/platform/agentHost/common/state/sessionReducers.d.ts +9 -0
- package/vscode/src/vs/platform/mcp/common/modelContextProtocolApps.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityProvider.js +16 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContinueInAction.d.ts +29 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContinueInAction.js +105 -28
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatElicitationActions.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.d.ts +15 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.js +74 -44
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatTitleActions.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +98 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostChatInputPicker.contribution.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostChatInputPicker.contribution.js +31 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostChatInputPicker.d.ts +45 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostChatInputPicker.js +163 -37
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostFolderPickerActionItem.d.ts +47 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostFolderPickerActionItem.js +172 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostGenericConfigChips.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostGenericConfigChips.js +7 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionReferenceAttachment.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSnapshotController.d.ts +116 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSnapshotController.js +348 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/media/agentHostChatInputPicker.css +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/stateToProgressAdapter.d.ts +211 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/stateToProgressAdapter.js +64 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionApprovalModel.d.ts +18 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionApprovalModel.js +13 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionHoverWidget.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionHoverWidget.js +30 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsControl.d.ts +4 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsControl.js +29 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsFilter.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsOpener.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.d.ts +24 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.js +119 -41
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/media/agentsessionsviewer.css +27 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/sessionTypeAvailability.d.ts +63 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/sessionTypeAvailability.js +97 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.d.ts +5 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.js +105 -88
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/implicitContextAttachment.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingActions.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingActions.js +46 -48
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelContentProviders.d.ts +28 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelContentProviders.js +98 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionPickerActionItem.d.ts +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionPickerActionItem.js +9 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/media/chatTurnPills.css +162 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/chatToolRiskAssessmentService.d.ts +9 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/chatToolRiskAssessmentService.js +95 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.d.ts +22 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +151 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatAgentHover.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatArtifactsWidget.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentMarkdownRenderer.js +20 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAgentCommandContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAnonymousRateLimitedPart.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAttachmentsContentPart.d.ts +5 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAttachmentsContentPart.js +61 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAutoModeResolutionContentPart.d.ts +20 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAutoModeResolutionContentPart.js +55 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatChangesSummaryPart.d.ts +6 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatChangesSummaryPart.js +81 -30
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCodeCitationContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCommandContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationContentPart.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationWidget.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatDisabledClaudeHooksContentPart.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatEditPillElement.d.ts +11 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatEditPillElement.js +13 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatElicitationContentPart.js +9 -33
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatExtensionsContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatExternalEditContentPart.d.ts +6 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatExternalEditContentPart.js +21 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatHookContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatInlineAnchorWidget.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownContentPart.d.ts +6 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownContentPart.js +40 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpAuthenticationContentPart.d.ts +35 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpAuthenticationContentPart.js +140 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpServersInteractionContentPart.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpServersStartingContentPart.d.ts +24 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpServersStartingContentPart.js +58 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMultiDiffContentPart.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMultiDiffContentPart.js +29 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatPlanReviewPart.js +30 -30
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatProgressContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuestionCarouselPart.js +44 -44
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuotaExceededPart.d.ts +1 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuotaExceededPart.js +12 -66
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatReferencesContentPart.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatResourceGroupWidget.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSubagentContentPart.d.ts +39 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSubagentContentPart.js +167 -43
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSuggestNextWidget.d.ts +1 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSuggestNextWidget.js +9 -86
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSystemNotificationContentPart.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSystemNotificationContentPart.js +23 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTextEditContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.d.ts +9 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.js +141 -72
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTipContentPart.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTodoListWidget.js +17 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolInputOutputContentPart.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolInputOutputContentPart.js +17 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTreeContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTurnPillsPart.d.ts +29 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTurnPillsPart.js +110 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatWorkspaceEditContentPart.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/codeBlockPart.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatAgentFeedbackReviewConfirmation.css +133 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatAutoModeResolution.css +30 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatCodeBlockPill.css +4 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatConfirmationWidget.css +18 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatPlanReview.css +23 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatQuestionCarousel.css +33 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatSubagentContent.css +23 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatTerminalToolProgressPart.css +44 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatThinkingContent.css +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatToolConfirmationCarousel.css +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/abstractToolConfirmationSubPart.d.ts +9 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/abstractToolConfirmationSubPart.js +21 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatAgentFeedbackReviewConfirmationSubPart.d.ts +48 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatAgentFeedbackReviewConfirmationSubPart.js +279 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatExtensionsInstallToolSubPart.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppModel.d.ts +43 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppModel.js +53 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppSubPart.d.ts +7 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppSubPart.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatModifiedFilesConfirmationSubPart.d.ts +4 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatModifiedFilesConfirmationSubPart.js +24 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/{chatMissingSandboxDepsConfirmationSubPart.d.ts → chatSandboxPrerequisiteConfirmationSubPart.d.ts} +3 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/{chatMissingSandboxDepsConfirmationSubPart.js → chatSandboxPrerequisiteConfirmationSubPart.js} +14 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.d.ts +0 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.js +30 -59
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.js +41 -29
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationCarouselPart.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.js +12 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolInvocationPart.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolInvocationPart.js +43 -35
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolOutputPart.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPartUtilities.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPostExecuteConfirmationPart.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPostExecuteConfirmationPart.js +11 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/toolRiskBadgeHelper.d.ts +18 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/toolRiskBadgeHelper.js +51 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/toolRiskBadgeWidget.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatDragAndDrop.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListRenderer.d.ts +18 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListRenderer.js +266 -98
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListWidget.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListWidget.js +8 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatRestoreCheckpointActionViewItem.d.ts +32 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatRestoreCheckpointActionViewItem.js +135 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatTurnPills.d.ts +85 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatTurnPills.js +275 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidget.d.ts +18 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidget.js +84 -37
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatFollowups.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatGoalBannerWidget.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationService.d.ts +14 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationWidget.d.ts +6 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationWidget.js +52 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.d.ts +187 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.js +435 -139
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputStatePersistence.d.ts +6 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputStatePersistence.js +21 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelConfigurationLogic.d.ts +50 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelConfigurationLogic.js +49 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelConfigurationStore.d.ts +79 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelConfigurationStore.js +127 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelPicker.d.ts +84 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelPicker.js +658 -430
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelSelectionLogic.d.ts +72 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelSelectionLogic.js +82 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatPhoneInputPresenter.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatSelectedTools.d.ts +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatSelectedTools.js +6 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/delegationSessionPickerActionItem.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/delegationSessionPickerActionItem.js +23 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/media/chatGoalBannerWidget.css +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/media/chatInputNotificationWidget.css +28 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modePickerActionItem.d.ts +3 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modePickerActionItem.js +15 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPickerActionItem.d.ts +60 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPickerActionItem.js +18 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/permissionPickerActionItem.d.ts +49 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/permissionPickerActionItem.js +141 -81
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/sessionTargetPickerActionItem.d.ts +7 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/sessionTargetPickerActionItem.js +30 -47
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/workspacePickerActionItem.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/workspacePickerInputActionItem.d.ts +20 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/workspacePickerInputActionItem.js +18 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/media/chat.css +469 -148
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageDetails.d.ts +11 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageDetails.js +79 -28
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageWidget.d.ts +71 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageWidget.js +107 -45
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/media/chatContextUsageDetails.css +20 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatErrorMessages.d.ts +110 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatErrorMessages.js +37 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatImageExtraction.d.ts +4 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatImageExtraction.js +13 -11
- package/vscode/src/vs/workbench/contrib/chat/common/chatPermissionWarnings.d.ts +8 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatPermissionWarnings.js +57 -21
- package/vscode/src/vs/workbench/contrib/chat/common/widget/chatColors.js +18 -18
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.js +4 -4
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.js +5 -5
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.js +1 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +30 -30
- package/vscode/src/vs/workbench/contrib/interactive/browser/replInputHintContentWidget.js +3 -3
- package/vscode/src/vs/workbench/contrib/mcp/browser/mcpToolCallUI.d.ts +39 -8
- package/vscode/src/vs/workbench/contrib/mcp/browser/mcpToolCallUI.js +168 -72
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/executionStatusBarItemController.js +7 -7
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindWidget.js +2 -2
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOperations.js +2 -2
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/insertCellActions.js +24 -24
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffComponents.js +3 -3
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementOutputs.js +7 -7
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditor.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditorBrowser.js +5 -5
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffList.js +1 -1
- package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditor.js +1 -1
- package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditorInput.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputStatusActionViewItem.d.ts +0 -30
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputStatusActionViewItem.js +0 -147
|
@@ -1,4 +1,8 @@
|
|
|
1
1
|
import { IHistoryNavigationWidget } from "@codingame/monaco-vscode-api/vscode/vs/base/browser/history";
|
|
2
|
+
import { IActionViewItem } from "@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/actionbar/actionbar";
|
|
3
|
+
import { IActionViewItemOptions } from "@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/actionbar/actionViewItems";
|
|
4
|
+
import { IAction } from "@codingame/monaco-vscode-api/vscode/vs/base/common/actions";
|
|
5
|
+
import { IStringDictionary } from "@codingame/monaco-vscode-api/vscode/vs/base/common/collections";
|
|
2
6
|
import { Event } from "@codingame/monaco-vscode-api/vscode/vs/base/common/event";
|
|
3
7
|
import { Disposable, IDisposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
|
|
4
8
|
import { IObservable, ISettableObservable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/observable";
|
|
@@ -14,6 +18,7 @@ import { IFileService } from "@codingame/monaco-vscode-api/vscode/vs/platform/fi
|
|
|
14
18
|
import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation";
|
|
15
19
|
import { IKeybindingService } from "@codingame/monaco-vscode-api/vscode/vs/platform/keybinding/common/keybinding.service";
|
|
16
20
|
import { ILogService } from "@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service";
|
|
21
|
+
import { IProductService } from "@codingame/monaco-vscode-api/vscode/vs/platform/product/common/productService.service";
|
|
17
22
|
import { IStorageService } from "@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage.service";
|
|
18
23
|
import { IThemeService } from "@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/themeService.service";
|
|
19
24
|
import { ISharedWebContentExtractorService } from "@codingame/monaco-vscode-api/vscode/vs/platform/webContentExtractor/common/webContentExtractor.service";
|
|
@@ -37,12 +42,12 @@ import { IChatModelInputState, IChatRequestModeInfo, IInputModel } from "@coding
|
|
|
37
42
|
import { IChatResponseViewModel } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/model/chatViewModel";
|
|
38
43
|
import { IChatAgentService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/participants/chatAgents.service";
|
|
39
44
|
import { ILanguageModelToolsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/tools/languageModelToolsService.service";
|
|
40
|
-
import {
|
|
45
|
+
import { AgentSessionTarget } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/agentSessions/agentSessions";
|
|
41
46
|
import { IAgentSessionsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsService.service";
|
|
42
47
|
import { ChatAttachmentModel } from "../../attachments/chatAttachmentModel.js";
|
|
43
48
|
import { IChatAttachmentWidgetRegistry } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgetRegistry.service";
|
|
44
49
|
import { ChatImplicitContexts } from "../../attachments/chatImplicitContext.js";
|
|
45
|
-
import { IChatWidget, ISessionTypePickerDelegate, IWorkspacePickerDelegate } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat";
|
|
50
|
+
import { IChatWidget, ISessionTypePickerDelegate, IWorkspacePickerDelegate, IChatInputWorkspacePicker } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat";
|
|
46
51
|
import { IChatPhoneInputPresenter } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/widget/input/chatPhoneInputPresenter.service";
|
|
47
52
|
import { IChatContextService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/contextContrib/chatContextService.service";
|
|
48
53
|
import { ChatPlanReviewPart, IChatPlanReviewPartOptions } from "../chatContentParts/chatPlanReviewPart.js";
|
|
@@ -86,11 +91,62 @@ export interface IChatInputPartOptions {
|
|
|
86
91
|
* for their chat request. This is useful for empty window contexts.
|
|
87
92
|
*/
|
|
88
93
|
workspacePickerDelegate?: IWorkspacePickerDelegate;
|
|
94
|
+
/**
|
|
95
|
+
* Optional workspace picker rendered as a chip in the PRIMARY toolbar
|
|
96
|
+
* (between the mode picker and the model picker). Used by the automations
|
|
97
|
+
* dialog so its existing `WorkspacePicker` instance can drive both the
|
|
98
|
+
* form-row trigger and a toolbar chip from a single source of truth.
|
|
99
|
+
* Gated by {@link ChatContextKeys.inAutomationsDialog} on the menu side
|
|
100
|
+
* and a defensive null-check in `actionViewItemProvider`.
|
|
101
|
+
*/
|
|
102
|
+
workspacePickerInput?: IChatInputWorkspacePicker;
|
|
103
|
+
/**
|
|
104
|
+
* Optional action view item provider for host-owned secondary toolbar
|
|
105
|
+
* chips registered on {@link MenuId.ChatInputSecondary}. Used by the
|
|
106
|
+
* automations dialog so per-instance state can stay outside the shared
|
|
107
|
+
* chat input part while still using menu-driven rendering.
|
|
108
|
+
*/
|
|
109
|
+
secondaryToolbarActionViewItemProvider?: (action: IAction, options?: IActionViewItemOptions) => IActionViewItem | undefined;
|
|
110
|
+
/**
|
|
111
|
+
* When true, the mode picker hides custom agents and only offers the
|
|
112
|
+
* built-in modes (Agent / Ask / Edit / Plan, gated by their normal
|
|
113
|
+
* visibility rules). Custom-agent discovery is workspace-scoped and
|
|
114
|
+
* doesn't follow the dialog's folder selection, so surfacing custom
|
|
115
|
+
* agents tied to the workbench's open folders would mislead the user
|
|
116
|
+
* when scheduling against a different folder.
|
|
117
|
+
*/
|
|
118
|
+
hideCustomChatModes?: boolean;
|
|
119
|
+
/**
|
|
120
|
+
* When true, suppress the autorun that switches the current language
|
|
121
|
+
* model to a mode's declared preferred model (`IChatMode.model`).
|
|
122
|
+
* Used by the automations dialog so opening "New Automation" always
|
|
123
|
+
* defaults to the picker's default (auto) regardless of which mode
|
|
124
|
+
* the dialog opens with, and so the dialog never overwrites the
|
|
125
|
+
* regular chat input's persisted model selection via the shared
|
|
126
|
+
* APPLICATION-scope storage key.
|
|
127
|
+
*
|
|
128
|
+
* User-initiated model picks (clicking the model picker, cycle
|
|
129
|
+
* keybindings, etc.) are unaffected.
|
|
130
|
+
*/
|
|
131
|
+
suppressModePreferredModel?: boolean;
|
|
132
|
+
/**
|
|
133
|
+
* When true, model picks via the picker do not write to global storage.
|
|
134
|
+
* Note: `switchToNextModel` keybindings still persist globally.
|
|
135
|
+
*/
|
|
136
|
+
suppressModelPersistence?: boolean;
|
|
89
137
|
/**
|
|
90
138
|
* Whether we are running in the sessions window.
|
|
91
139
|
* When true, the secondary toolbar (permissions picker) is hidden.
|
|
92
140
|
*/
|
|
93
141
|
isSessionsWindow?: boolean;
|
|
142
|
+
/**
|
|
143
|
+
* Total horizontal gutter (in pixels) reserved outside the input box when
|
|
144
|
+
* computing the editor width. Defaults account for the `.interactive-input-part`
|
|
145
|
+
* margin used by the panel/sessions chat. Hosts that override that margin (e.g.
|
|
146
|
+
* the automations dialog, which renders the composer flush with its form column)
|
|
147
|
+
* can pass `0` so the editor fills the box and its scrollbar sits at the edge.
|
|
148
|
+
*/
|
|
149
|
+
inputPartHorizontalPadding?: number;
|
|
94
150
|
}
|
|
95
151
|
export interface IWorkingSetEntry {
|
|
96
152
|
uri: URI;
|
|
@@ -137,6 +193,7 @@ export declare class ChatInputPart extends Disposable implements IHistoryNavigat
|
|
|
137
193
|
private readonly _chatAttachmentWidgetRegistry;
|
|
138
194
|
private readonly chatInputNotificationService;
|
|
139
195
|
private readonly chatPhoneInputPresenter;
|
|
196
|
+
private readonly productService;
|
|
140
197
|
private static _counter;
|
|
141
198
|
private _workingSetCollapsed;
|
|
142
199
|
private _stableInputPartWidth;
|
|
@@ -186,6 +243,7 @@ export declare class ChatInputPart extends Disposable implements IHistoryNavigat
|
|
|
186
243
|
private readonly _contextResourceLabels;
|
|
187
244
|
private readonly inputEditorMaxHeight;
|
|
188
245
|
private readonly inputEditorMinHeight;
|
|
246
|
+
private readonly singleLineInputEditorHeight;
|
|
189
247
|
private inputEditorHeight;
|
|
190
248
|
private _maxHeight;
|
|
191
249
|
private container;
|
|
@@ -255,6 +313,7 @@ export declare class ChatInputPart extends Disposable implements IHistoryNavigat
|
|
|
255
313
|
private chatSessionOptionsValid;
|
|
256
314
|
private agentSessionTypeKey;
|
|
257
315
|
private chatSessionSupportsDelegationKey;
|
|
316
|
+
private chatHasPendingDelegationTargetKey;
|
|
258
317
|
private chatSessionHasCustomAgentTarget;
|
|
259
318
|
private chatSessionHasTargetedModels;
|
|
260
319
|
private modelWidget;
|
|
@@ -281,6 +340,13 @@ export declare class ChatInputPart extends Disposable implements IHistoryNavigat
|
|
|
281
340
|
*/
|
|
282
341
|
private readonly _optionContextKeys;
|
|
283
342
|
private _currentLanguageModel;
|
|
343
|
+
/**
|
|
344
|
+
* Per-editor store of each model's configuration (e.g. context size, thinking
|
|
345
|
+
* effort), persisted to a `(location, sessionType)`-scoped storage bucket.
|
|
346
|
+
* Cleared on session-type change so the next read re-seeds from the new
|
|
347
|
+
* bucket. See issue #320393.
|
|
348
|
+
*/
|
|
349
|
+
private readonly _modelConfigStore;
|
|
284
350
|
get currentLanguageModel(): string | undefined;
|
|
285
351
|
get selectedLanguageModel(): IObservable<ILanguageModelChatMetadataAndIdentifier | undefined>;
|
|
286
352
|
private _onDidChangeCurrentChatMode;
|
|
@@ -317,28 +383,52 @@ export declare class ChatInputPart extends Disposable implements IHistoryNavigat
|
|
|
317
383
|
* This is used when the user changes the session target picker to a different provider
|
|
318
384
|
* but hasn't submitted yet, so the delegation will happen on submit.
|
|
319
385
|
*/
|
|
320
|
-
get pendingDelegationTarget():
|
|
386
|
+
get pendingDelegationTarget(): AgentSessionTarget | undefined;
|
|
321
387
|
/**
|
|
322
388
|
* Number consumers holding the 'generating' lock.
|
|
323
389
|
*/
|
|
324
390
|
private _generating?;
|
|
325
391
|
private _emptyInputState;
|
|
392
|
+
private _emptyInputAttachments;
|
|
326
393
|
private _chatSessionIsEmpty;
|
|
394
|
+
/**
|
|
395
|
+
* Whether the user has explicitly picked a model for the current session
|
|
396
|
+
* (via the model picker or a model-cycling command). When `true`, the
|
|
397
|
+
* configured default model (e.g. enterprise policy
|
|
398
|
+
* {@link ChatConfiguration.DefaultModel}) must not override
|
|
399
|
+
* the in-conversation selection. Reset whenever a new session is bound in
|
|
400
|
+
* {@link setInputModel}. This is distinct from `model.state.selectedModel`,
|
|
401
|
+
* which is also written by automatic selections (init/persisted restore) and
|
|
402
|
+
* therefore cannot tell an explicit pick from a restored default.
|
|
403
|
+
*/
|
|
404
|
+
private _userExplicitlySelectedModel;
|
|
327
405
|
private _pendingDelegationTarget;
|
|
328
406
|
private _currentSessionType;
|
|
329
|
-
constructor(location: ChatAgentLocation, options: IChatInputPartOptions, styles: IChatInputStyles, inline: boolean, modelService: IModelService, instantiationService: IInstantiationService, contextKeyService: IContextKeyService, configurationService: IConfigurationService, keybindingService: IKeybindingService, accessibilityService: IAccessibilityService, languageModelsService: ILanguageModelsService, logService: ILogService, fileService: IFileService, editorService: IEditorService, themeService: IThemeService, textModelResolverService: ITextModelService, storageService: IStorageService, agentService: IChatAgentService, sharedWebExtracterService: ISharedWebContentExtractorService, entitlementService: IChatEntitlementService, chatModeService: IChatModeService, toolService: ILanguageModelToolsService, chatSessionsService: IChatSessionsService, chatContextService: IChatContextService, agentSessionsService: IAgentSessionsService, workspaceContextService: IWorkspaceContextService, scmService: ISCMService, layoutService: IWorkbenchLayoutService, viewDescriptorService: IViewDescriptorService, _chatAttachmentWidgetRegistry: IChatAttachmentWidgetRegistry, chatInputNotificationService: IChatInputNotificationService, chatPhoneInputPresenter: IChatPhoneInputPresenter);
|
|
407
|
+
constructor(location: ChatAgentLocation, options: IChatInputPartOptions, styles: IChatInputStyles, inline: boolean, modelService: IModelService, instantiationService: IInstantiationService, contextKeyService: IContextKeyService, configurationService: IConfigurationService, keybindingService: IKeybindingService, accessibilityService: IAccessibilityService, languageModelsService: ILanguageModelsService, logService: ILogService, fileService: IFileService, editorService: IEditorService, themeService: IThemeService, textModelResolverService: ITextModelService, storageService: IStorageService, agentService: IChatAgentService, sharedWebExtracterService: ISharedWebContentExtractorService, entitlementService: IChatEntitlementService, chatModeService: IChatModeService, toolService: ILanguageModelToolsService, chatSessionsService: IChatSessionsService, chatContextService: IChatContextService, agentSessionsService: IAgentSessionsService, workspaceContextService: IWorkspaceContextService, scmService: ISCMService, layoutService: IWorkbenchLayoutService, viewDescriptorService: IViewDescriptorService, _chatAttachmentWidgetRegistry: IChatAttachmentWidgetRegistry, chatInputNotificationService: IChatInputNotificationService, chatPhoneInputPresenter: IChatPhoneInputPresenter, productService: IProductService);
|
|
330
408
|
private setImplicitContextEnablement;
|
|
331
409
|
setIsWithinEditSession(inInsideDiff: boolean, isFilePartOfEditSession: boolean): void;
|
|
332
410
|
private getSelectedModelStorageKey;
|
|
333
411
|
private getSelectedModelIsDefaultStorageKey;
|
|
412
|
+
/**
|
|
413
|
+
* True when the session type owns its own model pool (either declared via `requiresCustomModels`,
|
|
414
|
+
* or some registered model already targets it). Keeps storage keys stable before targeted models are published.
|
|
415
|
+
*/
|
|
416
|
+
private sessionTypeHasOwnModelPool;
|
|
334
417
|
private initSelectedModel;
|
|
335
418
|
setEditing(enabled: boolean, editingSentRequest: ChatContextKeys.EditingRequestType | undefined): void;
|
|
336
419
|
switchModel(modelMetadata: Pick<ILanguageModelChatMetadata, "vendor" | "id" | "family">): void;
|
|
337
420
|
/**
|
|
338
421
|
* Switch to a model by its identifier. Returns true if a matching model
|
|
339
422
|
* was found and applied.
|
|
340
|
-
|
|
341
|
-
|
|
423
|
+
*
|
|
424
|
+
* `storeSelection` mirrors the same opt-out on {@link setChatMode}: when
|
|
425
|
+
* `false`, the choice is applied to the input only and is NOT persisted
|
|
426
|
+
* to the workbench-global "last used model" key. Surfaces that pre-seed
|
|
427
|
+
* a model on behalf of the user (e.g. the automations dialog opening an
|
|
428
|
+
* existing automation) pass `false` so they don't pollute the regular
|
|
429
|
+
* chat input's persisted selection.
|
|
430
|
+
*/
|
|
431
|
+
switchModelByIdentifier(identifier: string, storeSelection?: boolean): boolean;
|
|
342
432
|
switchModelByQualifiedName(qualifiedModelNames: readonly string[]): boolean;
|
|
343
433
|
switchToNextModel(): void;
|
|
344
434
|
switchToNextPinnedModel(): void;
|
|
@@ -346,6 +436,21 @@ export declare class ChatInputPart extends Disposable implements IHistoryNavigat
|
|
|
346
436
|
openModePicker(): void;
|
|
347
437
|
private _showCombinedPhonePickerSheet;
|
|
348
438
|
private _createModelPickerDelegate;
|
|
439
|
+
/**
|
|
440
|
+
* Returns this editor's snapshot of the given model's configuration (e.g.
|
|
441
|
+
* context size, thinking effort), scoped to this editor rather than the
|
|
442
|
+
* profile-global value. Delegates to {@link ChatModelConfigurationStore}.
|
|
443
|
+
* See issue #320393.
|
|
444
|
+
*/
|
|
445
|
+
getModelConfiguration(modelId: string): IStringDictionary<unknown> | undefined;
|
|
446
|
+
/**
|
|
447
|
+
* Restores a model's configuration captured in a session's persisted input
|
|
448
|
+
* state. Called when the selected model is restored from session history so
|
|
449
|
+
* the configuration follows the model through the same resolution hierarchy.
|
|
450
|
+
* No-op for sessions that pre-date configuration capture (no value stored).
|
|
451
|
+
*/
|
|
452
|
+
private restoreModelConfiguration;
|
|
453
|
+
private getModelConfigurationStorageKey;
|
|
349
454
|
private _createModePickerDelegate;
|
|
350
455
|
openPermissionPicker(): void;
|
|
351
456
|
setPermissionLevel(level: ChatPermissionLevel): void;
|
|
@@ -369,6 +474,7 @@ export declare class ChatInputPart extends Disposable implements IHistoryNavigat
|
|
|
369
474
|
* Solution is to pass the SessionResource as an argument to this method.
|
|
370
475
|
*/
|
|
371
476
|
setInputModel(model: IInputModel, chatSessionIsEmpty: boolean, forSessionResource: URI): void;
|
|
477
|
+
private _getPersistedEmptyInputState;
|
|
372
478
|
private _setEmptyModelState;
|
|
373
479
|
/**
|
|
374
480
|
* Sync from model to view (when model state changes)
|
|
@@ -384,7 +490,7 @@ export declare class ChatInputPart extends Disposable implements IHistoryNavigat
|
|
|
384
490
|
* an unsent draft is captured by `willDisposeModel` persistence.
|
|
385
491
|
*/
|
|
386
492
|
flushInputStateToModel(): void;
|
|
387
|
-
setCurrentLanguageModel(model: ILanguageModelChatMetadataAndIdentifier): void;
|
|
493
|
+
setCurrentLanguageModel(model: ILanguageModelChatMetadataAndIdentifier, isUserAction?: boolean, storeSelection?: boolean): void;
|
|
388
494
|
private checkModelSupported;
|
|
389
495
|
/**
|
|
390
496
|
* By ID- prefer this method
|
|
@@ -399,20 +505,43 @@ export declare class ChatInputPart extends Disposable implements IHistoryNavigat
|
|
|
399
505
|
private getAllMergedModels;
|
|
400
506
|
private getModels;
|
|
401
507
|
/**
|
|
402
|
-
*
|
|
508
|
+
* True when the current session type can fall back to the synthetic "Auto"
|
|
509
|
+
* model. Defaults to `true` when no session type is set. See
|
|
510
|
+
* {@link hasNoAvailableModel} for the "nothing to send with" state, which
|
|
511
|
+
* additionally requires an empty model list.
|
|
403
512
|
*/
|
|
404
|
-
private
|
|
513
|
+
private _showAutoModel;
|
|
405
514
|
/**
|
|
406
|
-
*
|
|
407
|
-
*
|
|
515
|
+
* True when the current session type cannot fall back to the Auto model
|
|
516
|
+
* and no models are available to it — e.g. the Claude agent host for a
|
|
517
|
+
* Copilot Free / Student user. In this state there is no model to send a
|
|
518
|
+
* request with, so sending is blocked.
|
|
519
|
+
*/
|
|
520
|
+
private hasNoAvailableModel;
|
|
521
|
+
private getModelsForSessionType;
|
|
522
|
+
/**
|
|
523
|
+
* Get the chat session type for the current session, if any.
|
|
524
|
+
*
|
|
525
|
+
* Once a real session exists, the session resource is the authoritative
|
|
526
|
+
* source for which models are valid. The picker delegate only describes the
|
|
527
|
+
* welcome/new-session selection, which may not match the session that was
|
|
528
|
+
* ultimately created (e.g. an agent-host pick that fell back to an
|
|
529
|
+
* in-process `local` session). Preferring the delegate in that case lets an
|
|
530
|
+
* agent-host model leak into a local session's pool, so we only consult the
|
|
531
|
+
* delegate when there is no session yet (the welcome view has no view model).
|
|
408
532
|
*/
|
|
409
|
-
private
|
|
533
|
+
private getCurrentSessionType;
|
|
534
|
+
private getNotificationSessionType;
|
|
410
535
|
private isModelValidForCurrentSession;
|
|
411
536
|
/**
|
|
412
537
|
* Validate that the current model belongs to the current session's pool.
|
|
413
538
|
* Called when switching sessions to prevent cross-contamination.
|
|
414
539
|
*/
|
|
415
540
|
private checkModelInSessionPool;
|
|
541
|
+
/**
|
|
542
|
+
* Reconcile the current model after an explicit session-type pick: restore persisted → best-match previous → default.
|
|
543
|
+
*/
|
|
544
|
+
private revalidateModelForSessionType;
|
|
416
545
|
/**
|
|
417
546
|
* Reset the current mode when it is not valid for the current session type.
|
|
418
547
|
*/
|
|
@@ -425,6 +554,39 @@ export declare class ChatInputPart extends Disposable implements IHistoryNavigat
|
|
|
425
554
|
*/
|
|
426
555
|
private preselectModelFromSessionHistory;
|
|
427
556
|
private setCurrentLanguageModelToDefault;
|
|
557
|
+
/**
|
|
558
|
+
* Resolve the configured default chat model (from the
|
|
559
|
+
* {@link ChatConfiguration.DefaultModel} setting, which may be
|
|
560
|
+
* forced by enterprise policy) against the given model pool. Returns `undefined`
|
|
561
|
+
* when nothing is configured or no model matches, letting callers fall back to
|
|
562
|
+
* the location default.
|
|
563
|
+
*/
|
|
564
|
+
private getConfiguredDefaultModel;
|
|
565
|
+
/**
|
|
566
|
+
* The raw configured default-model value from the
|
|
567
|
+
* {@link ChatConfiguration.DefaultModel} setting (which may
|
|
568
|
+
* be forced by enterprise policy). Returns `undefined` when nothing is
|
|
569
|
+
* configured.
|
|
570
|
+
*/
|
|
571
|
+
private getConfiguredModelValue;
|
|
572
|
+
/**
|
|
573
|
+
* Apply the configured default model (e.g. enterprise policy
|
|
574
|
+
* {@link ChatConfiguration.DefaultModel}) to a fresh, untouched
|
|
575
|
+
* empty session once its model becomes resolvable. Returns `true` when it
|
|
576
|
+
* applied the configured default.
|
|
577
|
+
*
|
|
578
|
+
* Only fires while the session is empty and the user has not explicitly picked
|
|
579
|
+
* a model in this conversation ({@link _userExplicitlySelectedModel}), so it
|
|
580
|
+
* never overrides a model the user picked. A reopened conversation's saved
|
|
581
|
+
* model is protected by the empty-session check. Being driven by
|
|
582
|
+
* `onDidChangeLanguageModels` makes it robust to the configured model loading
|
|
583
|
+
* after `initSelectedModel` has already run — including when `initSelectedModel`
|
|
584
|
+
* already applied a persisted selection into the session state before the
|
|
585
|
+
* configured default (delivered asynchronously by policy) arrived.
|
|
586
|
+
*/
|
|
587
|
+
private _applyConfiguredDefaultForEmptySession;
|
|
588
|
+
/** Resets the language model to the location default and cancels any pending persisted-model waiter. */
|
|
589
|
+
resetLanguageModelToDefault(storeSelection?: boolean): void;
|
|
428
590
|
/**
|
|
429
591
|
* Get the current input state for history
|
|
430
592
|
*/
|
|
@@ -455,7 +617,7 @@ export declare class ChatInputPart extends Disposable implements IHistoryNavigat
|
|
|
455
617
|
* Reset the input and update history.
|
|
456
618
|
* @param userQuery If provided, this will be added to the history. Followups and programmatic queries should not be passed.
|
|
457
619
|
*/
|
|
458
|
-
acceptInput(isUserQuery?: boolean): Promise<void>;
|
|
620
|
+
acceptInput(isUserQuery?: boolean, preserveFocus?: boolean): Promise<void>;
|
|
459
621
|
validateAgentMode(): void;
|
|
460
622
|
private _getFilteredEntry;
|
|
461
623
|
private _acceptInputForVoiceover;
|
|
@@ -525,6 +687,18 @@ export declare class ChatInputPart extends Disposable implements IHistoryNavigat
|
|
|
525
687
|
* Local sessions unlock from coding agent mode, while remote/cloud sessions lock to coding agent mode.
|
|
526
688
|
*/
|
|
527
689
|
private updateWidgetLockStateFromSessionType;
|
|
690
|
+
/**
|
|
691
|
+
* Resolves the session type of the active chat session for the delegation picker.
|
|
692
|
+
*/
|
|
693
|
+
private getActiveSessionTypeForDelegation;
|
|
694
|
+
/**
|
|
695
|
+
* Selects (or clears) the pending delegation target. While a target is pending, the widget
|
|
696
|
+
* locks to the target agent and the `hasPendingDelegationTarget` context key hides the
|
|
697
|
+
* agent and model pickers. Re-selecting the active session clears the pending target and
|
|
698
|
+
* restores the pickers.
|
|
699
|
+
*/
|
|
700
|
+
continueInSession(provider: AgentSessionTarget): void;
|
|
701
|
+
private setPendingDelegationTarget;
|
|
528
702
|
/**
|
|
529
703
|
* Ensures the notification widget is instantiated and appended to the notification container.
|
|
530
704
|
*/
|