@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
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@codingame/monaco-vscode-katex-common",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "35.0.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "VSCode public API plugged on the monaco editor - common package depending on katex",
|
|
6
6
|
"keywords": [],
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
},
|
|
16
16
|
"type": "module",
|
|
17
17
|
"dependencies": {
|
|
18
|
-
"@codingame/monaco-vscode-api": "
|
|
18
|
+
"@codingame/monaco-vscode-api": "35.0.0",
|
|
19
19
|
"katex": "0.16.45",
|
|
20
20
|
"marked": "14.0.0"
|
|
21
21
|
},
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
export interface ISynchronizeAnimationsOptions {
|
|
2
|
+
/**
|
|
3
|
+
* Also synchronize animations running on descendant elements (e.g. the dots
|
|
4
|
+
* of a spinner whose animations live on child nodes). Defaults to `false`.
|
|
5
|
+
*/
|
|
6
|
+
readonly subtree?: boolean;
|
|
7
|
+
/**
|
|
8
|
+
* When provided, further narrows synchronization to CSS animations whose
|
|
9
|
+
* `animation-name` is in this set. Non-keyframe animations (e.g. transitions)
|
|
10
|
+
* are always skipped regardless of this option.
|
|
11
|
+
*/
|
|
12
|
+
readonly animationNames?: ReadonlySet<string>;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Phase-aligns looping CSS animations so that every animation of the same
|
|
16
|
+
* duration displays the same frame at the same time, regardless of when each
|
|
17
|
+
* one started.
|
|
18
|
+
*
|
|
19
|
+
* All CSS animations share the document's timeline, so anchoring each
|
|
20
|
+
* animation's `startTime` to the same origin (`0`) forces their `currentTime`
|
|
21
|
+
* to equal the timeline time — making identical animations run in lock-step.
|
|
22
|
+
* Per-element `animation-delay` offsets are preserved (they are part of each
|
|
23
|
+
* animation's own timing), so intentional cascades (e.g. spinner dots) still
|
|
24
|
+
* work while the group as a whole stays globally in phase.
|
|
25
|
+
*
|
|
26
|
+
* Unlike adjusting `animation-delay`, this re-seeks animations that are already
|
|
27
|
+
* running (Chromium does not reliably re-seek a running animation when its
|
|
28
|
+
* `animation-delay` changes). Call it whenever an animation (re)starts or
|
|
29
|
+
* resumes after being paused offscreen — e.g. from an `animationstart` handler
|
|
30
|
+
* or when an element scrolls back into view.
|
|
31
|
+
*
|
|
32
|
+
* @param element The element whose (and optionally whose descendants') CSS
|
|
33
|
+
* animations should be synchronized.
|
|
34
|
+
* @param options See {@link ISynchronizeAnimationsOptions}.
|
|
35
|
+
*/
|
|
36
|
+
export declare function synchronizeCSSAnimations(element: HTMLElement, options?: ISynchronizeAnimationsOptions): void;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
|
|
2
|
+
|
|
3
|
+
function synchronizeCSSAnimations(element, options) {
|
|
4
|
+
if (typeof element.getAnimations !== "function") {
|
|
5
|
+
return;
|
|
6
|
+
}
|
|
7
|
+
for (const animation of element.getAnimations({
|
|
8
|
+
subtree: options?.subtree
|
|
9
|
+
})) {
|
|
10
|
+
const animationName = animation.animationName;
|
|
11
|
+
if (animationName === undefined) {
|
|
12
|
+
continue;
|
|
13
|
+
}
|
|
14
|
+
if (options?.animationNames && !( options.animationNames.has(animationName))) {
|
|
15
|
+
continue;
|
|
16
|
+
}
|
|
17
|
+
try {
|
|
18
|
+
animation.startTime = 0;
|
|
19
|
+
} catch {}
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export { synchronizeCSSAnimations };
|
|
@@ -1,13 +1,18 @@
|
|
|
1
1
|
|
|
2
2
|
import { registerCss } from '@codingame/monaco-vscode-api/css';
|
|
3
3
|
import { h, onDidUnregisterWindow, getWindow } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/dom';
|
|
4
|
+
import { synchronizeCSSAnimations } from '../../animationSync.js';
|
|
4
5
|
import * as pixelSpinner from './pixelSpinner.css';
|
|
5
6
|
|
|
6
7
|
registerCss(pixelSpinner);
|
|
7
8
|
function createPixelSpinner(parent, options) {
|
|
8
|
-
const
|
|
9
|
+
const variant = options?.variant ?? "grid";
|
|
10
|
+
const rootClass = variant === "ring" ? "span.monaco-pixel-spinner.monaco-pixel-spinner-ring" : "span.monaco-pixel-spinner";
|
|
9
11
|
const root = h(rootClass).root;
|
|
10
|
-
{
|
|
12
|
+
if (options?.ariaLabel) {
|
|
13
|
+
root.setAttribute("role", "status");
|
|
14
|
+
root.setAttribute("aria-label", options.ariaLabel);
|
|
15
|
+
} else {
|
|
11
16
|
root.setAttribute("aria-hidden", "true");
|
|
12
17
|
}
|
|
13
18
|
for (let i = 0; i < 6; i++) {
|
|
@@ -18,6 +23,12 @@ function createPixelSpinner(parent, options) {
|
|
|
18
23
|
return root;
|
|
19
24
|
}
|
|
20
25
|
const PAUSED_CLASS = "monaco-pixel-spinner-paused";
|
|
26
|
+
const SPINNER_ANIMATION_NAMES = ( new Set([
|
|
27
|
+
"monaco-pixel-spinner-dot-cycle",
|
|
28
|
+
"monaco-pixel-spinner-dot-cycle-long",
|
|
29
|
+
"monaco-pixel-spinner-dot-cycle-short",
|
|
30
|
+
"monaco-pixel-spinner-ring-pulse"
|
|
31
|
+
]));
|
|
21
32
|
const observersByWindow = ( new Map());
|
|
22
33
|
let unregisterWindowListener;
|
|
23
34
|
function getObserverFor(targetWindow) {
|
|
@@ -27,6 +38,7 @@ function getObserverFor(targetWindow) {
|
|
|
27
38
|
let observer = observersByWindow.get(targetWindow);
|
|
28
39
|
if (!observer) {
|
|
29
40
|
observer = new targetWindow.IntersectionObserver(entries => {
|
|
41
|
+
const toResync = [];
|
|
30
42
|
for (const entry of entries) {
|
|
31
43
|
const target = entry.target;
|
|
32
44
|
if (!target.isConnected) {
|
|
@@ -34,6 +46,15 @@ function getObserverFor(targetWindow) {
|
|
|
34
46
|
continue;
|
|
35
47
|
}
|
|
36
48
|
target.classList.toggle(PAUSED_CLASS, !entry.isIntersecting);
|
|
49
|
+
if (entry.isIntersecting) {
|
|
50
|
+
toResync.push(target);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
for (const target of toResync) {
|
|
54
|
+
synchronizeCSSAnimations(target, {
|
|
55
|
+
subtree: true,
|
|
56
|
+
animationNames: SPINNER_ANIMATION_NAMES
|
|
57
|
+
});
|
|
37
58
|
}
|
|
38
59
|
});
|
|
39
60
|
observersByWindow.set(targetWindow, observer);
|
|
@@ -81,6 +81,7 @@ let WorkbenchButtonBar = class WorkbenchButtonBar extends ButtonBar {
|
|
|
81
81
|
tooltip = action.tooltip || action.label;
|
|
82
82
|
tooltip = this._keybindingService.appendKeybinding(tooltip, action.id);
|
|
83
83
|
btn = this.addButtonWithDropdown({
|
|
84
|
+
addPrimaryActionToDropdown: false,
|
|
84
85
|
secondary: configProvider(action, i)?.isSecondary ?? secondary,
|
|
85
86
|
actionRunner: this._actionRunner,
|
|
86
87
|
actions: rest,
|
|
@@ -168,14 +169,14 @@ let WorkbenchButtonBar = class WorkbenchButtonBar extends ButtonBar {
|
|
|
168
169
|
if (secondary.length > 0) {
|
|
169
170
|
const btn = this.addButton({
|
|
170
171
|
secondary: true,
|
|
171
|
-
ariaLabel: ( localize(
|
|
172
|
+
ariaLabel: ( localize(1816, "More Actions")),
|
|
172
173
|
small: this._options?.small
|
|
173
174
|
});
|
|
174
175
|
btn.icon = Codicon.dropDownButton;
|
|
175
176
|
btn.element.classList.add("default-colors", "monaco-text-button");
|
|
176
177
|
btn.enabled = true;
|
|
177
178
|
this._updateStore.add(
|
|
178
|
-
this._hoverService.setupManagedHover(hoverDelegate, btn.element, ( localize(
|
|
179
|
+
this._hoverService.setupManagedHover(hoverDelegate, btn.element, ( localize(1816, "More Actions")))
|
|
179
180
|
);
|
|
180
181
|
this._updateStore.add(btn.onDidClick(async () => {
|
|
181
182
|
this._contextMenuService.showContextMenu({
|
|
@@ -5,9 +5,10 @@
|
|
|
5
5
|
* Claude collapses the platform's two-axis approval model
|
|
6
6
|
* (`autoApprove` × `mode`) onto a single `permissionMode` axis matching
|
|
7
7
|
* the Claude SDK's native `PermissionMode` (see
|
|
8
|
-
* `@anthropic-ai/claude-agent-sdk` typings). The
|
|
9
|
-
* the SDK
|
|
10
|
-
* `query({ permissionMode })`
|
|
8
|
+
* `@anthropic-ai/claude-agent-sdk` typings, `sdk.d.ts:1560`). The five
|
|
9
|
+
* values mirror the SDK enum values that VS Code exposes, excluding
|
|
10
|
+
* `dontAsk`, so that the value flowing back into `query({ permissionMode })`
|
|
11
|
+
* requires no translation layer.
|
|
11
12
|
*
|
|
12
13
|
* The platform `Permissions` key (allow/deny tool lists) is reused
|
|
13
14
|
* unchanged from `platformSessionSchema` because the Claude SDK accepts
|
|
@@ -19,9 +20,8 @@ export declare enum ClaudeSessionConfigKey {
|
|
|
19
20
|
}
|
|
20
21
|
/**
|
|
21
22
|
* Permission-mode values advertised in the Claude session-config schema.
|
|
22
|
-
* Mirror of the SDK's `PermissionMode` union for protocol-stable strings.
|
|
23
23
|
*/
|
|
24
|
-
export type ClaudePermissionMode = "default" | "acceptEdits" | "bypassPermissions" | "plan" | "
|
|
24
|
+
export type ClaudePermissionMode = "default" | "acceptEdits" | "bypassPermissions" | "plan" | "auto";
|
|
25
25
|
/**
|
|
26
26
|
* Single source of truth for narrowing an arbitrary runtime value to the
|
|
27
27
|
* closed {@link ClaudePermissionMode} union. Returns `undefined` for
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { URI } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri";
|
|
2
|
+
import type { FileEdit } from "@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/protocol/state";
|
|
3
|
+
import { FileEditKind } from "@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/sessionState";
|
|
4
|
+
/**
|
|
5
|
+
* A {@link FileEdit} decoded into parsed URIs and a resolved {@link FileEditKind}.
|
|
6
|
+
*
|
|
7
|
+
* The create/delete/rename/edit detection and the "primary resource" rule
|
|
8
|
+
* (after-URI for create/edit/rename, before-URI for delete) are subtle and
|
|
9
|
+
* were historically duplicated across several adapters. {@link normalizeFileEdit}
|
|
10
|
+
* centralizes them so every consumer derives the same shape from a protocol
|
|
11
|
+
* {@link FileEdit}.
|
|
12
|
+
*/
|
|
13
|
+
export interface INormalizedFileEdit {
|
|
14
|
+
/** The kind of file operation. */
|
|
15
|
+
readonly kind: FileEditKind;
|
|
16
|
+
/** Primary file URI: after-URI for create/edit/rename, before-URI for delete. */
|
|
17
|
+
readonly resource: URI;
|
|
18
|
+
/** The before-state file URI, when present (absent for creates). */
|
|
19
|
+
readonly beforeUri?: URI;
|
|
20
|
+
/** The after-state file URI, when present (absent for deletes). */
|
|
21
|
+
readonly afterUri?: URI;
|
|
22
|
+
/** URI from which the before-content can be read (absent for creates). */
|
|
23
|
+
readonly beforeContentUri?: URI;
|
|
24
|
+
/** URI from which the after-content can be read (absent for deletes). */
|
|
25
|
+
readonly afterContentUri?: URI;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Decodes a protocol {@link FileEdit} into parsed URIs and a resolved
|
|
29
|
+
* {@link FileEditKind}. Returns `undefined` when the edit carries no usable
|
|
30
|
+
* file URI (neither `before` nor `after`).
|
|
31
|
+
*/
|
|
32
|
+
export declare function normalizeFileEdit(edit: FileEdit): INormalizedFileEdit | undefined;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
|
|
2
|
+
import { URI } from '@codingame/monaco-vscode-api/vscode/vs/base/common/uri';
|
|
3
|
+
import { isEqual } from '@codingame/monaco-vscode-api/vscode/vs/base/common/resources';
|
|
4
|
+
import { FileEditKind } from '@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/sessionState';
|
|
5
|
+
|
|
6
|
+
function normalizeFileEdit(edit) {
|
|
7
|
+
const beforeUri = edit.before ? ( URI.parse(edit.before.uri)) : undefined;
|
|
8
|
+
const afterUri = edit.after ? ( URI.parse(edit.after.uri)) : undefined;
|
|
9
|
+
const resource = afterUri ?? beforeUri;
|
|
10
|
+
if (!resource) {
|
|
11
|
+
return undefined;
|
|
12
|
+
}
|
|
13
|
+
let kind;
|
|
14
|
+
if (!beforeUri && afterUri) {
|
|
15
|
+
kind = FileEditKind.Create;
|
|
16
|
+
} else if (beforeUri && !afterUri) {
|
|
17
|
+
kind = FileEditKind.Delete;
|
|
18
|
+
} else if (beforeUri && afterUri && !isEqual(beforeUri, afterUri)) {
|
|
19
|
+
kind = FileEditKind.Rename;
|
|
20
|
+
} else {
|
|
21
|
+
kind = FileEditKind.Edit;
|
|
22
|
+
}
|
|
23
|
+
return {
|
|
24
|
+
kind,
|
|
25
|
+
resource,
|
|
26
|
+
beforeUri,
|
|
27
|
+
afterUri,
|
|
28
|
+
beforeContentUri: edit.before?.content.uri ? ( URI.parse(edit.before.content.uri)) : undefined,
|
|
29
|
+
afterContentUri: edit.after?.content.uri ? ( URI.parse(edit.after.content.uri)) : undefined
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
export { normalizeFileEdit };
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import type { Annotation } from "@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/protocol/state";
|
|
2
|
+
/**
|
|
3
|
+
* Shared convention for carrying agent-feedback semantics inside an
|
|
4
|
+
* {@link Annotation._meta} on the agent host annotations channel.
|
|
5
|
+
*
|
|
6
|
+
* Feedback items round-trip as annotations on `<session>/annotations`; the
|
|
7
|
+
* annotation's own fields cover id / resource / range / resolved, and
|
|
8
|
+
* everything else (lifecycle state, origin kind, code context, PR linkage)
|
|
9
|
+
* lives under {@link FEEDBACK_ANNOTATION_META_KEY}. This module is the single
|
|
10
|
+
* place both the server (agent host, which writes feedback annotations from
|
|
11
|
+
* its server tools) and the client (agents window, which reads them back)
|
|
12
|
+
* agree on the key and shape, so the two sides cannot drift.
|
|
13
|
+
*/
|
|
14
|
+
/** Namespaced key under {@link Annotation._meta} carrying feedback semantics. */
|
|
15
|
+
export declare const FEEDBACK_ANNOTATION_META_KEY = "vscode.agentFeedback";
|
|
16
|
+
/**
|
|
17
|
+
* Name of the agent host server tool that reveals review comments the user has
|
|
18
|
+
* not accepted yet. Shared here (in the layer-neutral `common` module) so the
|
|
19
|
+
* node-side server tool implementation and the browser-side chat adapter that
|
|
20
|
+
* renders its confirmation agree on the name without drifting. The agent sees
|
|
21
|
+
* this name directly (Copilot) or prefixed as `mcp__host__<name>` (Claude).
|
|
22
|
+
*/
|
|
23
|
+
export declare const VIEW_UNREVIEWED_COMMENTS_TOOL_NAME = "viewUnreviewedComments";
|
|
24
|
+
/**
|
|
25
|
+
* Name of the agent host server tool that adds a comment (agent feedback) to a
|
|
26
|
+
* file range. Shared here (in the layer-neutral `common` module) so the
|
|
27
|
+
* node-side server tool implementation and the browser-side chat adapter that
|
|
28
|
+
* renders its tool call agree on the name without drifting. The agent sees this
|
|
29
|
+
* name directly (Copilot) or prefixed as `mcp__host__<name>` (Claude).
|
|
30
|
+
*/
|
|
31
|
+
export declare const ADD_COMMENT_TOOL_NAME = "addComment";
|
|
32
|
+
/**
|
|
33
|
+
* Whether {@link toolName} (a tool name as seen on a tool call) refers to the
|
|
34
|
+
* {@link VIEW_UNREVIEWED_COMMENTS_TOOL_NAME} server tool. Accepts both the bare
|
|
35
|
+
* name and the Claude `mcp__<server>__<name>` prefixed form.
|
|
36
|
+
*/
|
|
37
|
+
export declare function isViewUnreviewedCommentsTool(toolName: string): boolean;
|
|
38
|
+
/**
|
|
39
|
+
* Whether {@link toolName} (a tool name as seen on a tool call) refers to the
|
|
40
|
+
* {@link ADD_COMMENT_TOOL_NAME} server tool. Accepts both the bare name and the
|
|
41
|
+
* Claude `mcp__<server>__<name>` prefixed form.
|
|
42
|
+
*/
|
|
43
|
+
export declare function isAddCommentTool(toolName: string): boolean;
|
|
44
|
+
/**
|
|
45
|
+
* Origin of a feedback item. String values match the client-side
|
|
46
|
+
* `AgentFeedbackKind` enum so a value written by either side decodes on the
|
|
47
|
+
* other without translation.
|
|
48
|
+
*/
|
|
49
|
+
export type AgentFeedbackKindValue = "user" | "codeReview" | "prReview";
|
|
50
|
+
/**
|
|
51
|
+
* Lifecycle state of a feedback item. String values match the client-side
|
|
52
|
+
* `AgentFeedbackState` enum.
|
|
53
|
+
*/
|
|
54
|
+
export type AgentFeedbackStateValue = "created" | "accepted" | "submitted" | "resolved";
|
|
55
|
+
/**
|
|
56
|
+
* Feedback semantics carried in an annotation's {@link Annotation._meta}.
|
|
57
|
+
*
|
|
58
|
+
* The optional client-only fields ({@link suggestion}, {@link codeSelection},
|
|
59
|
+
* {@link diffHunks}, {@link sourcePRReviewCommentId}) are populated when a
|
|
60
|
+
* feedback item is converted from a code- or PR-review comment on the client;
|
|
61
|
+
* server tools only ever write {@link kind} / {@link state} /
|
|
62
|
+
* {@link sessionResource}. {@link suggestion} is typed loosely here because
|
|
63
|
+
* its concrete shape lives in the client (sessions) layer.
|
|
64
|
+
*/
|
|
65
|
+
export interface IFeedbackAnnotationMeta {
|
|
66
|
+
readonly kind: AgentFeedbackKindValue;
|
|
67
|
+
readonly state: AgentFeedbackStateValue;
|
|
68
|
+
readonly sessionResource: string;
|
|
69
|
+
readonly suggestion?: unknown;
|
|
70
|
+
readonly codeSelection?: string;
|
|
71
|
+
readonly diffHunks?: string;
|
|
72
|
+
readonly sourcePRReviewCommentId?: string;
|
|
73
|
+
/**
|
|
74
|
+
* Transient marker set by the client when the user reveals this comment to
|
|
75
|
+
* the agent via the `viewUnreviewedComments` tool. The server tool returns
|
|
76
|
+
* exactly the comments carrying this flag (so the result is scoped to the
|
|
77
|
+
* comments selected for that invocation rather than every accepted review
|
|
78
|
+
* comment) and clears it once they have been delivered, so a later
|
|
79
|
+
* invocation does not re-return them.
|
|
80
|
+
*/
|
|
81
|
+
readonly pendingAgentReveal?: boolean;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Reads the well-known {@link IFeedbackAnnotationMeta} from an annotation's
|
|
85
|
+
* `_meta` bag (under {@link FEEDBACK_ANNOTATION_META_KEY}). The annotations
|
|
86
|
+
* channel is shared, so this validates the required `kind` / `state` /
|
|
87
|
+
* `sessionResource` fields and returns `undefined` for annotations that aren't
|
|
88
|
+
* feedback items. Read through this rather than casting the namespaced slot.
|
|
89
|
+
*/
|
|
90
|
+
export declare function readFeedbackAnnotationMeta(annotation: Annotation): IFeedbackAnnotationMeta | undefined;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { type MessageAnnotationsAttachment, type MessageAttachment, type SimpleMessageAttachment, type TextRange } from "@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/protocol/state";
|
|
2
|
+
export declare const AgentFeedbackAttachmentDisplayKind = "agentFeedback";
|
|
3
|
+
export declare const AgentFeedbackAttachmentMetadataKey = "agentFeedback";
|
|
4
|
+
export interface IAgentFeedbackAttachmentMetadata {
|
|
5
|
+
readonly sessionResource: string;
|
|
6
|
+
readonly feedbackItems: readonly IAgentFeedbackAttachmentItemMetadata[];
|
|
7
|
+
}
|
|
8
|
+
export interface IAgentFeedbackAttachmentItemMetadata {
|
|
9
|
+
readonly id: string;
|
|
10
|
+
readonly text: string;
|
|
11
|
+
readonly resourceUri: string;
|
|
12
|
+
readonly range: TextRange;
|
|
13
|
+
readonly replies?: readonly string[];
|
|
14
|
+
}
|
|
15
|
+
export declare function isAgentFeedbackAttachment(attachment: MessageAttachment): attachment is SimpleMessageAttachment;
|
|
16
|
+
/**
|
|
17
|
+
* Agent feedback is sent to agent-host sessions as one
|
|
18
|
+
* {@link MessageAnnotationsAttachment} per submitted comment, each referencing
|
|
19
|
+
* the specific annotation(s) on the session's annotations channel. The agent
|
|
20
|
+
* reads the comment content via the `listComments` tool and should act on the
|
|
21
|
+
* referenced comments.
|
|
22
|
+
*/
|
|
23
|
+
export declare function isAgentFeedbackAnnotationsAttachment(attachment: MessageAttachment): attachment is MessageAnnotationsAttachment;
|
|
24
|
+
/**
|
|
25
|
+
* Renders an agent-feedback annotations attachment into the textual hint shown
|
|
26
|
+
* to the agent. The hint references the attached comment ids and points the
|
|
27
|
+
* agent at the `listComments` tool to read their content.
|
|
28
|
+
*/
|
|
29
|
+
export declare function renderAgentFeedbackAnnotationsAttachment(attachment: MessageAnnotationsAttachment): string | undefined;
|
|
30
|
+
export declare function getAgentFeedbackAttachmentMetadata(attachment: MessageAttachment): IAgentFeedbackAttachmentMetadata | undefined;
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import type { ToolCallState } from "@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/protocol/state";
|
|
2
|
+
/**
|
|
3
|
+
* Well-known typed view over a tool call's open `_meta` bag (see
|
|
4
|
+
* {@link ToolCallState._meta}). Producers and
|
|
5
|
+
* consumers agree on these keys here so the two sides can't drift; always read
|
|
6
|
+
* the bag through {@link readToolCallMeta}, which validates each field and drops
|
|
7
|
+
* wrong-typed values.
|
|
8
|
+
*/
|
|
9
|
+
export interface IToolCallMeta {
|
|
10
|
+
/**
|
|
11
|
+
* VS Code rendering hint. `terminal` routes the call to the command/output
|
|
12
|
+
* renderer, `subagent` to the subagent UI, `search` to the search renderer;
|
|
13
|
+
* everything else falls through to the generic invocation renderer. Set by
|
|
14
|
+
* the agent adapter, never matched on raw tool name by the renderer.
|
|
15
|
+
*/
|
|
16
|
+
readonly toolKind?: ToolKind;
|
|
17
|
+
/** Shell language for a `terminal` tool call (drives syntax highlighting). */
|
|
18
|
+
readonly language?: string;
|
|
19
|
+
/** Short task description for a `subagent` tool call (e.g. "Find related files"). */
|
|
20
|
+
readonly subagentDescription?: string;
|
|
21
|
+
/** Agent name for a `subagent` tool call (e.g. "explore"). */
|
|
22
|
+
readonly subagentAgentName?: string;
|
|
23
|
+
/** Raw, pre-stringified tool arguments captured for display/debugging. */
|
|
24
|
+
readonly toolArguments?: unknown;
|
|
25
|
+
/** Originating MCP server name, when the call came from an MCP server. */
|
|
26
|
+
readonly mcpServerName?: string;
|
|
27
|
+
/** Originating MCP tool name, when the call came from an MCP server. */
|
|
28
|
+
readonly mcpToolName?: string;
|
|
29
|
+
/** MCP App render data, when the call exposes an interactive App surface. */
|
|
30
|
+
readonly ui?: IToolCallUiMeta;
|
|
31
|
+
/**
|
|
32
|
+
* Set by the host's side-effect layer when the call was auto-approved
|
|
33
|
+
* because of an `autoApprove` session-config setting (rather than an
|
|
34
|
+
* explicit user action), so the client can render it as setting-driven.
|
|
35
|
+
*/
|
|
36
|
+
readonly autoApproveBySetting?: boolean;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* The set of VS Code-recognized tool-call rendering kinds. Add a new value here
|
|
40
|
+
* (and teach the renderer to handle it) rather than matching on tool name.
|
|
41
|
+
*/
|
|
42
|
+
export type ToolKind = "terminal" | "subagent" | "search";
|
|
43
|
+
/**
|
|
44
|
+
* MCP App render data carried under {@link IToolCallMeta.ui}. Clients gate
|
|
45
|
+
* mounting the App webview on both a `resourceUri` and a `channel` being
|
|
46
|
+
* present.
|
|
47
|
+
*/
|
|
48
|
+
export interface IToolCallUiMeta {
|
|
49
|
+
/** The MCP App's UI resource URI (an `ui://` resource the App renders). */
|
|
50
|
+
readonly resourceUri: string;
|
|
51
|
+
/** AHP `mcp://` channel the App's sub-RPCs route back through, when ready. */
|
|
52
|
+
readonly channel?: string;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Reads the well-known {@link IToolCallMeta} keys from a tool call's `_meta`
|
|
56
|
+
* bag, dropping unknown keys and wrong-typed values.
|
|
57
|
+
*/
|
|
58
|
+
export declare function readToolCallMeta(source: ToolCallState): IToolCallMeta;
|
|
59
|
+
/**
|
|
60
|
+
* Serializes a typed {@link IToolCallMeta} into the `_meta` record, dropping
|
|
61
|
+
* `undefined` entries and returning `undefined` when empty. Build a tool call's
|
|
62
|
+
* `_meta` through this so producers stay in lock-step with
|
|
63
|
+
* {@link readToolCallMeta}.
|
|
64
|
+
*/
|
|
65
|
+
export declare function toToolCallMeta(meta: IToolCallMeta): Record<string, unknown> | undefined;
|
|
@@ -19,14 +19,25 @@ export declare enum SessionConfigKey {
|
|
|
19
19
|
Isolation = "isolation",
|
|
20
20
|
/** `'branch'` — base branch to work from. */
|
|
21
21
|
Branch = "branch",
|
|
22
|
-
/** `'mode'` — agent execution mode (interactive / plan). */
|
|
22
|
+
/** `'mode'` — agent execution mode (interactive / plan / autopilot). */
|
|
23
23
|
Mode = "mode"
|
|
24
24
|
}
|
|
25
25
|
/**
|
|
26
|
-
* The set of enum values the unified permission picker
|
|
27
|
-
* {@link SessionConfigKey.AutoApprove} property
|
|
26
|
+
* The set of enum values the unified permission picker *tolerates* for the
|
|
27
|
+
* {@link SessionConfigKey.AutoApprove} property when deciding whether a
|
|
28
|
+
* session's schema is "well-known" (and therefore handled by the dedicated
|
|
29
|
+
* permission picker rather than the generic per-property fallback).
|
|
28
30
|
*
|
|
29
|
-
* `default` is the required baseline level; `autoApprove`
|
|
30
|
-
*
|
|
31
|
+
* `default` is the required baseline level; `autoApprove` is the offered
|
|
32
|
+
* elevated level. `assisted` and `autopilot` are retained here purely for
|
|
33
|
+
* backward/forward compatibility so a session whose schema was resolved by an
|
|
34
|
+
* older or newer agent host (advertising those values) still renders the
|
|
35
|
+
* dedicated picker rather than disappearing. The picker itself only ever
|
|
36
|
+
* *offers* `default` / `autoApprove` (see the delegate's `availableLevels`).
|
|
31
37
|
*/
|
|
32
38
|
export declare const KNOWN_AUTO_APPROVE_VALUES: ReadonlySet<string>;
|
|
39
|
+
/**
|
|
40
|
+
* The set of enum values understood for the {@link SessionConfigKey.Mode}
|
|
41
|
+
* property: the agent execution mode axis.
|
|
42
|
+
*/
|
|
43
|
+
export declare const KNOWN_MODE_VALUES: ReadonlySet<string>;
|
|
@@ -8,6 +8,7 @@ var SessionConfigKey;
|
|
|
8
8
|
SessionConfigKey["Branch"] = "branch";
|
|
9
9
|
SessionConfigKey["Mode"] = "mode";
|
|
10
10
|
})(SessionConfigKey || (SessionConfigKey = {}));
|
|
11
|
-
const KNOWN_AUTO_APPROVE_VALUES = ( new Set(["default", "autoApprove", "autopilot"]));
|
|
11
|
+
const KNOWN_AUTO_APPROVE_VALUES = ( new Set(["default", "assisted", "autoApprove", "autopilot"]));
|
|
12
|
+
const KNOWN_MODE_VALUES = ( new Set(["interactive", "plan", "autopilot"]));
|
|
12
13
|
|
|
13
|
-
export { KNOWN_AUTO_APPROVE_VALUES, SessionConfigKey };
|
|
14
|
+
export { KNOWN_AUTO_APPROVE_VALUES, KNOWN_MODE_VALUES, SessionConfigKey };
|
package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-resource-watch/reducer.d.ts
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { ResourceWatchState } from "@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/protocol/channels-resource-watch/state";
|
|
2
|
+
import type { ResourceWatchAction } from "@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/protocol/action-origin.generated";
|
|
3
|
+
/**
|
|
4
|
+
* Pure reducer for resource-watch state. Handles every
|
|
5
|
+
* {@link ResourceWatchAction} variant.
|
|
6
|
+
*
|
|
7
|
+
* Watches are intentionally event-pass-through: change events are
|
|
8
|
+
* delivered via `resourceWatch/changed` actions but the reducer keeps no
|
|
9
|
+
* history of them. The state therefore tracks only the watch descriptor,
|
|
10
|
+
* which is set at subscription time and never mutates over the life of
|
|
11
|
+
* the watch.
|
|
12
|
+
*
|
|
13
|
+
* The reducer uses an `if`/else shape rather than `switch`/`softAssertNever`
|
|
14
|
+
* because `ResourceWatchAction` currently has a single variant — TypeScript
|
|
15
|
+
* does not narrow single-variant discriminated unions to `never` after the
|
|
16
|
+
* sole case branch, so the usual exhaustiveness pattern would not compile.
|
|
17
|
+
* Unknown action types degrade gracefully (mirroring `softAssertNever`'s
|
|
18
|
+
* runtime behaviour) so a client speaking an older protocol stays correct
|
|
19
|
+
* if the server adds new `resourceWatch/*` actions in a future version.
|
|
20
|
+
*/
|
|
21
|
+
export declare function resourceWatchReducer(state: ResourceWatchState, action: ResourceWatchAction, log?: (msg: string) => void): ResourceWatchState;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export { rootReducer } from "@codingame/monaco-vscode-chat-service-override/vscode/vs/platform/agentHost/common/state/protocol/channels-root/reducer";
|
|
2
|
+
export { sessionReducer } from "@codingame/monaco-vscode-chat-service-override/vscode/vs/platform/agentHost/common/state/protocol/channels-session/reducer";
|
|
3
|
+
export { chatReducer } from "@codingame/monaco-vscode-chat-service-override/vscode/vs/platform/agentHost/common/state/protocol/channels-chat/reducer";
|
|
4
|
+
export { terminalReducer } from "@codingame/monaco-vscode-chat-service-override/vscode/vs/platform/agentHost/common/state/protocol/channels-terminal/reducer";
|
|
5
|
+
export { changesetReducer } from "@codingame/monaco-vscode-chat-service-override/vscode/vs/platform/agentHost/common/state/protocol/channels-changeset/reducer";
|
|
6
|
+
export { annotationsReducer } from "@codingame/monaco-vscode-chat-service-override/vscode/vs/platform/agentHost/common/state/protocol/channels-annotations/reducer";
|
|
7
|
+
export { resourceWatchReducer } from "./channels-resource-watch/reducer.js";
|
|
8
|
+
export { softAssertNever, isClientDispatchable } from "@codingame/monaco-vscode-chat-service-override/vscode/vs/platform/agentHost/common/state/protocol/common/reducer-helpers";
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export { rootReducer, sessionReducer, chatReducer, changesetReducer, annotationsReducer, softAssertNever, isClientDispatchable } from "./protocol/reducers.js";
|
|
2
|
+
import { type ToolKind } from "../meta/agentToolCallMeta.js";
|
|
3
|
+
import type { ICompletedToolCall, ToolCallState } from "@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/sessionState";
|
|
4
|
+
/**
|
|
5
|
+
* Extracts the VS Code-specific `toolKind` hint from a tool call's `_meta`
|
|
6
|
+
* bag. This is not part of the protocol and is injected by the agent adapter
|
|
7
|
+
* (e.g. `copilotEventMapper`).
|
|
8
|
+
*/
|
|
9
|
+
export declare function getToolKind(tc: ToolCallState | ICompletedToolCall): ToolKind | undefined;
|
|
@@ -5,10 +5,10 @@ type Implementation = MCP.Implementation;
|
|
|
5
5
|
type RequestId = MCP.RequestId;
|
|
6
6
|
type Tool = MCP.Tool;
|
|
7
7
|
export declare namespace McpApps {
|
|
8
|
-
type AppRequest = MCP.CallToolRequest | MCP.ReadResourceRequest | MCP.PingRequest | (McpUiOpenLinkRequest & MCP.JSONRPCRequest) | (McpUiDownloadFileRequest & MCP.JSONRPCRequest) | (McpUiUpdateModelContextRequest & MCP.JSONRPCRequest) | (McpUiMessageRequest & MCP.JSONRPCRequest) | (McpUiRequestDisplayModeRequest & MCP.JSONRPCRequest) | (McpApps.McpUiInitializeRequest & MCP.JSONRPCRequest);
|
|
8
|
+
type AppRequest = MCP.CallToolRequest | MCP.ReadResourceRequest | MCP.CreateMessageRequest | MCP.PingRequest | (McpUiOpenLinkRequest & MCP.JSONRPCRequest) | (McpUiDownloadFileRequest & MCP.JSONRPCRequest) | (McpUiUpdateModelContextRequest & MCP.JSONRPCRequest) | (McpUiMessageRequest & MCP.JSONRPCRequest) | (McpUiRequestDisplayModeRequest & MCP.JSONRPCRequest) | (McpApps.McpUiInitializeRequest & MCP.JSONRPCRequest);
|
|
9
9
|
type AppNotification = McpUiInitializedNotification | McpUiSizeChangedNotification | MCP.LoggingMessageNotification | CustomSandboxWheelNotification;
|
|
10
10
|
type AppMessage = AppRequest | AppNotification;
|
|
11
|
-
type HostResult = MCP.CallToolResult | MCP.ReadResourceResult | MCP.EmptyResult | McpApps.McpUiInitializeResult | McpUiMessageResult | McpUiOpenLinkResult | McpUiDownloadFileResult | McpUiRequestDisplayModeResult;
|
|
11
|
+
type HostResult = MCP.CallToolResult | MCP.ReadResourceResult | MCP.CreateMessageResult | MCP.EmptyResult | McpApps.McpUiInitializeResult | McpUiMessageResult | McpUiOpenLinkResult | McpUiDownloadFileResult | McpUiRequestDisplayModeResult;
|
|
12
12
|
type HostNotification = McpUiHostContextChangedNotification | McpUiResourceTeardownRequest | McpUiToolInputNotification | McpUiToolInputPartialNotification | McpUiToolResultNotification | McpUiToolCancelledNotification | McpUiSizeChangedNotification;
|
|
13
13
|
type HostMessage = HostResult | HostNotification;
|
|
14
14
|
/** Custom notification used for bubbling up sandbox wheel events. */
|