@codingame/monaco-vscode-katex-common 30.0.1 → 31.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +3 -3
- package/vscode/src/vs/platform/actions/browser/actionbar.d.ts +16 -0
- package/vscode/src/vs/platform/actions/browser/actionbar.js +22 -0
- package/vscode/src/vs/platform/actions/browser/buttonbar.js +2 -2
- package/vscode/src/vs/platform/networkFilter/common/domainMatcher.d.ts +50 -0
- package/vscode/src/vs/platform/networkFilter/common/domainMatcher.js +138 -0
- package/vscode/src/vs/platform/networkFilter/common/settings.d.ts +12 -0
- package/vscode/src/vs/platform/networkFilter/common/settings.js +14 -0
- package/vscode/src/vs/platform/sandbox/common/sandboxHelperIpc.d.ts +18 -0
- package/vscode/src/vs/platform/sandbox/common/sandboxHelperIpc.js +13 -0
- package/vscode/src/vs/platform/sandbox/common/terminalSandboxService.d.ts +73 -0
- package/vscode/src/vs/platform/sandbox/common/terminalSandboxService.js +10 -0
- 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 +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContinueInAction.js +51 -24
- 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 +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.js +64 -72
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatTitleActions.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +17 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionApprovalModel.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionHoverWidget.js +17 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsControl.js +5 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsFilter.d.ts +5 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsFilter.js +73 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsOpener.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.js +32 -32
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentModel.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentModel.js +20 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.js +73 -49
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/implicitContextAttachment.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingActions.d.ts +0 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingActions.js +41 -99
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js +13 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationWidget.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionPickerActionItem.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +14 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatAgentHover.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatArtifactsWidget.d.ts +11 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatArtifactsWidget.js +339 -161
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentMarkdownRenderer.js +9 -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 +9 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAttachmentsContentPart.js +33 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatChangesSummaryPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCodeCitationContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCollections.d.ts +43 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCollections.js +147 -2
- 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.d.ts +4 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationWidget.js +55 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentCodePools.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentCodePools.js +7 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentParts.d.ts +1 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatDiffBlockPart.js +42 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatDisabledClaudeHooksContentPart.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatExtensionsContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatHookContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/animations/animation.d.ts +18 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/animations/animationRegistry.d.ts +15 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/animations/animationRegistry.js +16 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/animations/blockAnimations.d.ts +13 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/animations/blockAnimations.js +33 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/buffer.d.ts +46 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/bufferRegistry.d.ts +11 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/bufferRegistry.js +12 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/offBuffer.d.ts +9 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/offBuffer.js +12 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/paragraphBuffer.d.ts +23 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/paragraphBuffer.js +37 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/wordBuffer.d.ts +34 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/wordBuffer.js +68 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/chatIncrementalRendering.d.ts +77 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/chatIncrementalRendering.js +170 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/media/chatIncrementalRendering.css +112 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatInlineAnchorWidget.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatInlineAnchorWidget.js +26 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownContentPart.d.ts +24 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownContentPart.js +111 -145
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpServersInteractionContentPart.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMultiDiffContentPart.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatPlanReviewPart.d.ts +58 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatPlanReviewPart.js +425 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatProgressContentPart.d.ts +16 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatProgressContentPart.js +68 -25
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuestionCarouselPart.d.ts +5 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuestionCarouselPart.js +101 -45
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuotaExceededPart.js +4 -4
- 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 +36 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSubagentContentPart.js +217 -25
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSuggestNextWidget.js +6 -6
- 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 +23 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.js +168 -60
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTipContentPart.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTodoListWidget.js +18 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolInputOutputContentPart.d.ts +1 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolInputOutputContentPart.js +7 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolOutputContentSubPart.d.ts +1 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolOutputContentSubPart.js +7 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTreeContentPart.js +1 -1
- 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.d.ts +24 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/codeBlockPart.js +104 -78
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatConfirmationWidget.css +11 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatPlanReview.css +257 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatQuestionCarousel.css +19 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatSubagentContent.css +30 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatTerminalToolProgressPart.css +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatThinkingContent.css +12 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatToolConfirmationCarousel.css +286 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/abstractToolConfirmationSubPart.js +1 -1
- 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.js +1 -1
- 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/chatMissingSandboxDepsConfirmationSubPart.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatModifiedFilesConfirmationSubPart.js +15 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.d.ts +1 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.js +25 -47
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.d.ts +29 -53
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.js +258 -321
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationCarouselPart.d.ts +53 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationCarouselPart.js +392 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.d.ts +1 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.js +24 -30
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolInvocationPart.d.ts +2 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolInvocationPart.js +9 -8
- 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.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/terminalToolAutoExpand.d.ts +6 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/terminalToolAutoExpand.js +2 -3
- 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 +38 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListRenderer.js +577 -113
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListWidget.d.ts +0 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListWidget.js +4 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidget.d.ts +1 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidget.js +58 -75
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatFollowups.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.d.ts +44 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.js +362 -188
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPickerActionItem.d.ts +0 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelPicker.d.ts +4 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelPicker.js +42 -95
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelSelectionLogic.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/delegationSessionPickerActionItem.js +9 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modePickerActionItem.js +57 -38
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPickerActionItem.d.ts +21 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/{modelPickerActionItem2.js → modelPickerActionItem.js} +5 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/permissionPickerActionItem.js +38 -31
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/sessionTargetPickerActionItem.js +4 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/workspacePickerActionItem.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/media/chat.css +94 -40
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageDetails.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageWidget.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/chatArtifactExtraction.d.ts +16 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatArtifactExtraction.js +218 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatImageExtraction.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/common/widget/annotations.js +6 -1
- package/vscode/src/vs/workbench/contrib/chat/common/widget/chatColors.js +15 -15
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAffordance.js +12 -21
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.d.ts +2 -32
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.js +355 -156
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatEditorAffordance.d.ts +2 -13
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatEditorAffordance.js +72 -65
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatOverlayWidget.d.ts +4 -43
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatOverlayWidget.js +238 -204
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.d.ts +4 -19
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.js +128 -115
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.d.ts +6 -9
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.js +152 -49
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/media/inlineChat.css +64 -0
- package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +40 -40
- package/vscode/src/vs/workbench/contrib/interactive/browser/replInputHintContentWidget.js +3 -3
- 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/terminal/terminalContribChatExports.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/alternativeRecommendation.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/alternativeRecommendation.js +41 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers/commandFileWriteParser.d.ts +24 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers/sedFileWriteParser.d.ts +26 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers/sedFileWriteParser.js +142 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.d.ts +45 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.js +165 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.d.ts +53 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.js +163 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.d.ts +27 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.js +142 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.d.ts +29 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.js +144 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/strategyHelpers.d.ts +40 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/strategyHelpers.js +174 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/outputHelpers.d.ts +7 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/outputHelpers.js +43 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.d.ts +42 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +256 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.d.ts +42 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.js +94 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.d.ts +42 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.js +221 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/commandLineAutoApprover.d.ts +31 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/commandLineAutoApprover.js +392 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/npmScriptAutoApprover.d.ts +45 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/npmScriptAutoApprover.js +243 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAnalyzer.d.ts +52 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAnalyzer.js +10 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.d.ts +20 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.js +310 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.d.ts +19 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.js +168 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineSandboxAnalyzer.d.ts +11 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineSandboxAnalyzer.js +33 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/commandLinePresenter.d.ts +41 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/nodeCommandLinePresenter.d.ts +19 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/nodeCommandLinePresenter.js +37 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/pythonCommandLinePresenter.d.ts +19 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/pythonCommandLinePresenter.js +37 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/rubyCommandLinePresenter.d.ts +19 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/rubyCommandLinePresenter.js +44 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/sandboxedCommandLinePresenter.d.ts +13 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/sandboxedCommandLinePresenter.js +22 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineBackgroundDetachRewriter.d.ts +22 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineBackgroundDetachRewriter.js +47 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineCdPrefixRewriter.d.ts +5 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineCdPrefixRewriter.js +27 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePreventHistoryRewriter.d.ts +14 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePreventHistoryRewriter.js +29 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePwshChainOperatorRewriter.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePwshChainOperatorRewriter.js +33 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineRewriter.d.ts +24 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineSandboxRewriter.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineSandboxRewriter.js +32 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.d.ts +108 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +412 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/types.d.ts +42 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/types.js +23 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/outputAnalyzer.d.ts +9 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.d.ts +192 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +2258 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.d.ts +22 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.js +43 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalCommandArtifactCollector.d.ts +17 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalCommandArtifactCollector.js +118 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalToolAutoApprove.d.ts +22 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalToolAutoApprove.js +44 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/toolIds.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.d.ts +25 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.js +141 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.d.ts +85 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.js +608 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/searchableOptionPickerActionItem.d.ts +0 -40
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/searchableOptionPickerActionItem.js +0 -196
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPickerActionItem2.d.ts +0 -29
- package/vscode/src/vs/workbench/contrib/chat/common/widget/codeBlockModelCollection.d.ts +0 -46
- package/vscode/src/vs/workbench/contrib/chat/common/widget/codeBlockModelCollection.js +0 -215
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatGutterAffordance.d.ts +0 -18
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatGutterAffordance.js +0 -107
|
@@ -15,7 +15,6 @@ import { IChatService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/c
|
|
|
15
15
|
import { ChatAgentLocation, ChatModeKind } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants";
|
|
16
16
|
import { IChatRequestModeInfo } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/model/chatModel";
|
|
17
17
|
import { IChatRequestViewModel, IChatResponseViewModel, IChatViewModel } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/model/chatViewModel";
|
|
18
|
-
import { CodeBlockModelCollection } from "../../common/widget/codeBlockModelCollection.js";
|
|
19
18
|
import { ChatTreeItem, IChatCodeBlockInfo, IChatFileTreeInfo, IChatListItemRendererOptions } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat";
|
|
20
19
|
import { IChatAccessibilityService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat.service";
|
|
21
20
|
import { CodeBlockPart } from "./chatContentParts/codeBlockPart.js";
|
|
@@ -62,11 +61,6 @@ export interface IChatListWidgetOptions {
|
|
|
62
61
|
* Optional filter for the tree.
|
|
63
62
|
*/
|
|
64
63
|
readonly filter?: ITreeFilter<ChatTreeItem, FuzzyScore>;
|
|
65
|
-
/**
|
|
66
|
-
* Optional code block model collection to use.
|
|
67
|
-
* If not provided, one will be created.
|
|
68
|
-
*/
|
|
69
|
-
readonly codeBlockModelCollection?: CodeBlockModelCollection;
|
|
70
64
|
/**
|
|
71
65
|
* Initial view model.
|
|
72
66
|
*/
|
|
@@ -138,7 +132,6 @@ export declare class ChatListWidget extends Disposable {
|
|
|
138
132
|
get onDidFocusOutside(): Event<void>;
|
|
139
133
|
private readonly _tree;
|
|
140
134
|
private readonly _renderer;
|
|
141
|
-
private readonly _codeBlockModelCollection;
|
|
142
135
|
private _viewModel;
|
|
143
136
|
private _visible;
|
|
144
137
|
private _lastItem;
|
|
@@ -29,7 +29,6 @@ import { ChatContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbenc
|
|
|
29
29
|
import { IChatService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService/chatService.service';
|
|
30
30
|
import { ChatConfiguration, ChatModeKind } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
|
|
31
31
|
import { isRequestVM, isResponseVM } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/model/chatViewModel';
|
|
32
|
-
import { CodeBlockModelCollection } from '../../common/widget/codeBlockModelCollection.js';
|
|
33
32
|
import { ChatAccessibilityProvider } from '../accessibility/chatAccessibilityProvider.js';
|
|
34
33
|
import { IChatAccessibilityService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat.service';
|
|
35
34
|
import { ChatListDelegate, ChatListItemRenderer } from './chatListRenderer.js';
|
|
@@ -111,9 +110,6 @@ let ChatListWidget = class ChatListWidget extends Disposable {
|
|
|
111
110
|
this._bodyDimension = null;
|
|
112
111
|
this._previousLastItemMinHeight = null;
|
|
113
112
|
this._viewModel = options.viewModel;
|
|
114
|
-
this._codeBlockModelCollection = options.codeBlockModelCollection ?? this._register(
|
|
115
|
-
this.instantiationService.createInstance(CodeBlockModelCollection, "chatListWidget")
|
|
116
|
-
);
|
|
117
113
|
this._location = options.location;
|
|
118
114
|
this._getCurrentLanguageModelId = options.getCurrentLanguageModelId;
|
|
119
115
|
this._getCurrentModeInfo = options.getCurrentModeInfo;
|
|
@@ -156,7 +152,6 @@ let ChatListWidget = class ChatListWidget extends Disposable {
|
|
|
156
152
|
editorOptions,
|
|
157
153
|
options.rendererOptions ?? {},
|
|
158
154
|
rendererDelegate,
|
|
159
|
-
this._codeBlockModelCollection,
|
|
160
155
|
overflowWidgetsContainer,
|
|
161
156
|
this._viewModel
|
|
162
157
|
));
|
|
@@ -267,6 +262,7 @@ let ChatListWidget = class ChatListWidget extends Disposable {
|
|
|
267
262
|
this._onDidScroll.fire(e);
|
|
268
263
|
this.updateScrollDownButtonVisibility();
|
|
269
264
|
}));
|
|
265
|
+
this.updateScrollDownButtonVisibility();
|
|
270
266
|
this._register(this._tree.onContextMenu(e => {
|
|
271
267
|
this.handleContextMenu(e);
|
|
272
268
|
}));
|
|
@@ -278,8 +274,9 @@ let ChatListWidget = class ChatListWidget extends Disposable {
|
|
|
278
274
|
}));
|
|
279
275
|
}
|
|
280
276
|
updateScrollDownButtonVisibility() {
|
|
281
|
-
const
|
|
282
|
-
this._scrollDownButton.element.style.display =
|
|
277
|
+
const atBottom = this.isScrolledToBottom || this._scrollLock;
|
|
278
|
+
this._scrollDownButton.element.style.display = atBottom ? "none" : "";
|
|
279
|
+
this._container.classList.toggle("chat-list-at-bottom", atBottom);
|
|
283
280
|
}
|
|
284
281
|
handleContextMenu(e) {
|
|
285
282
|
e.browserEvent.preventDefault();
|
|
@@ -133,7 +133,6 @@ export declare class ChatWidget extends Disposable implements IChatWidget {
|
|
|
133
133
|
private container;
|
|
134
134
|
get domNode(): HTMLElement;
|
|
135
135
|
private listWidget;
|
|
136
|
-
private readonly _codeBlockModelCollection;
|
|
137
136
|
private inputPartMaxHeightOverride;
|
|
138
137
|
private readonly visibilityTimeoutDisposable;
|
|
139
138
|
private readonly visibilityAnimationFrameDisposable;
|
|
@@ -151,6 +150,7 @@ export declare class ChatWidget extends Disposable implements IChatWidget {
|
|
|
151
150
|
private bodyDimension;
|
|
152
151
|
private visibleChangeCount;
|
|
153
152
|
private requestInProgress;
|
|
153
|
+
private hasActiveRequest;
|
|
154
154
|
private agentInInput;
|
|
155
155
|
private _visible;
|
|
156
156
|
get visible(): boolean;
|
|
@@ -304,12 +304,5 @@ export declare class ChatWidget extends Disposable implements IChatWidget {
|
|
|
304
304
|
private updateChatInputContext;
|
|
305
305
|
private _switchToAgentByName;
|
|
306
306
|
private _applyPromptMetadata;
|
|
307
|
-
/**
|
|
308
|
-
* Adds additional instructions to the context
|
|
309
|
-
* - instructions that have a 'applyTo' pattern that matches the current input
|
|
310
|
-
* - instructions referenced in the copilot settings 'copilot-instructions'
|
|
311
|
-
* - instructions referenced in an already included instruction file
|
|
312
|
-
*/
|
|
313
|
-
private _autoAttachInstructions;
|
|
314
307
|
delegateScrollFromMouseWheelEvent(browserEvent: IMouseWheelEvent): void;
|
|
315
308
|
}
|
|
@@ -60,12 +60,9 @@ import { IChatSlashCommandService } from '@codingame/monaco-vscode-api/vscode/vs
|
|
|
60
60
|
import { IChatTodoListService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/tools/chatTodoListService.service';
|
|
61
61
|
import { isWorkspaceVariableEntry, isPromptFileVariableEntry, isPromptTextVariableEntry, toPromptFileVariableEntry, PromptFileVariableKind } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/attachments/chatVariableEntries';
|
|
62
62
|
import { isResponseVM, isRequestVM, ChatViewModel } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/model/chatViewModel';
|
|
63
|
-
import { CodeBlockModelCollection } from '../../common/widget/codeBlockModelCollection.js';
|
|
64
63
|
import { ChatModeKind, ChatPermissionLevel, ChatConfiguration, ThinkingDisplayMode, ChatAgentLocation } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
|
|
65
64
|
import { isToolSet } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/tools/languageModelToolsService';
|
|
66
65
|
import { ILanguageModelToolsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/tools/languageModelToolsService.service';
|
|
67
|
-
import { ComputeAutomaticInstructions } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/computeAutomaticInstructions';
|
|
68
|
-
import { PromptsStorage } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService';
|
|
69
66
|
import { IPromptsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.service';
|
|
70
67
|
import { GENERATE_AGENT_INSTRUCTIONS_COMMAND_ID, handleModeSwitch } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/actions/chatActions';
|
|
71
68
|
import { isIChatResourceViewContext, isIChatViewViewContext } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat';
|
|
@@ -110,9 +107,10 @@ const supportsAllAttachments = {
|
|
|
110
107
|
supportsSymbolAttachments: true,
|
|
111
108
|
supportsTerminalAttachments: true,
|
|
112
109
|
supportsPromptAttachments: true,
|
|
113
|
-
supportsHandOffs: true
|
|
110
|
+
supportsHandOffs: true,
|
|
111
|
+
supportsCheckpoints: true
|
|
114
112
|
};
|
|
115
|
-
const DISCLAIMER = ( localize(
|
|
113
|
+
const DISCLAIMER = ( localize(7140, "AI responses may be inaccurate"));
|
|
116
114
|
let ChatWidget = class ChatWidget extends Disposable {
|
|
117
115
|
static {
|
|
118
116
|
ChatWidget_1 = this;
|
|
@@ -316,6 +314,7 @@ let ChatWidget = class ChatWidget extends Disposable {
|
|
|
316
314
|
ChatContextKeys.inQuickChat.bindTo(contextKeyService).set(isQuickChat(this));
|
|
317
315
|
this.agentInInput = ChatContextKeys.inputHasAgent.bindTo(contextKeyService);
|
|
318
316
|
this.requestInProgress = ChatContextKeys.requestInProgress.bindTo(contextKeyService);
|
|
317
|
+
this.hasActiveRequest = ChatContextKeys.hasActiveRequest.bindTo(contextKeyService);
|
|
319
318
|
this._register(
|
|
320
319
|
this.chatEntitlementService.onDidChangeAnonymous(() => this.renderWelcomeViewContentIfNeeded())
|
|
321
320
|
);
|
|
@@ -393,7 +392,6 @@ let ChatWidget = class ChatWidget extends Disposable {
|
|
|
393
392
|
return lastResponse?.result?.errorDetails && !lastResponse?.result?.errorDetails.responseIsIncomplete;
|
|
394
393
|
})
|
|
395
394
|
);
|
|
396
|
-
this._codeBlockModelCollection = this._register(instantiationService.createInstance(CodeBlockModelCollection, undefined));
|
|
397
395
|
this.chatSuggestNextWidget = this._register(this.instantiationService.createInstance(ChatSuggestNextWidget));
|
|
398
396
|
this._register(autorun(r => {
|
|
399
397
|
const viewModel = viewModelObs.read(r);
|
|
@@ -798,7 +796,7 @@ let ChatWidget = class ChatWidget extends Disposable {
|
|
|
798
796
|
}
|
|
799
797
|
this.container.classList.toggle(
|
|
800
798
|
"chat-view-getting-started-disabled",
|
|
801
|
-
this.chatEntitlementService.sentiment.
|
|
799
|
+
this.chatEntitlementService.sentiment.completed
|
|
802
800
|
);
|
|
803
801
|
this._onDidChangeEmptyState.fire();
|
|
804
802
|
}
|
|
@@ -809,6 +807,9 @@ let ChatWidget = class ChatWidget extends Disposable {
|
|
|
809
807
|
if (this._isRenderingWelcome) {
|
|
810
808
|
return;
|
|
811
809
|
}
|
|
810
|
+
if (!this.inputPartDisposable.value) {
|
|
811
|
+
return;
|
|
812
|
+
}
|
|
812
813
|
this._isRenderingWelcome = true;
|
|
813
814
|
try {
|
|
814
815
|
if (this.viewOptions.renderStyle === "compact" || this.viewOptions.renderStyle === "minimal" || this.lifecycleService.willShutdown) {
|
|
@@ -818,10 +819,10 @@ let ChatWidget = class ChatWidget extends Disposable {
|
|
|
818
819
|
if (!numItems) {
|
|
819
820
|
const defaultAgent = this.chatAgentService.getDefaultAgent(this.location, this.input.currentModeKind);
|
|
820
821
|
let additionalMessage;
|
|
821
|
-
if (this.chatEntitlementService.anonymous && !this.chatEntitlementService.sentiment.
|
|
822
|
+
if (this.chatEntitlementService.anonymous && !this.chatEntitlementService.sentiment.completed) {
|
|
822
823
|
const providers = product.defaultChatAgent.provider;
|
|
823
824
|
additionalMessage = ( new MarkdownString(( localize(
|
|
824
|
-
|
|
825
|
+
7141,
|
|
825
826
|
"By continuing with {0} Copilot, you agree to {1}'s [Terms]({2}) and [Privacy Statement]({3}).",
|
|
826
827
|
providers.default.name,
|
|
827
828
|
providers.default.name,
|
|
@@ -903,7 +904,7 @@ let ChatWidget = class ChatWidget extends Disposable {
|
|
|
903
904
|
return ( new MarkdownString(""));
|
|
904
905
|
} else if (this._instructionFilesExist === false) {
|
|
905
906
|
return (new MarkdownString(localize(
|
|
906
|
-
|
|
907
|
+
7142,
|
|
907
908
|
"[Generate Agent Instructions]({0}) to onboard AI onto your codebase.",
|
|
908
909
|
`command:${GENERATE_AGENT_INSTRUCTIONS_COMMAND_ID}`
|
|
909
910
|
), {
|
|
@@ -929,19 +930,19 @@ let ChatWidget = class ChatWidget extends Disposable {
|
|
|
929
930
|
const providerTitle = contribution?.welcomeTitle;
|
|
930
931
|
const providerMessage = contribution?.welcomeMessage;
|
|
931
932
|
const message = providerMessage ? ( new MarkdownString(providerMessage)) : (this._lockedAgent?.prefix === "@copilot " ? ( new MarkdownString(( localize(
|
|
932
|
-
|
|
933
|
+
7143,
|
|
933
934
|
"This chat session will be forwarded to the {0} [coding agent]({1}) where work is completed in the background. ",
|
|
934
935
|
this._lockedAgent.prefix,
|
|
935
936
|
"https://aka.ms/coding-agent-docs"
|
|
936
937
|
)) + DISCLAIMER, {
|
|
937
938
|
isTrusted: true
|
|
938
939
|
})) : ( new MarkdownString(( localize(
|
|
939
|
-
|
|
940
|
+
7144,
|
|
940
941
|
"This chat session will be forwarded to the {0} coding agent where work is completed in the background. ",
|
|
941
942
|
this._lockedAgent?.prefix
|
|
942
943
|
)) + DISCLAIMER)));
|
|
943
944
|
return {
|
|
944
|
-
title: providerTitle ?? ( localize(
|
|
945
|
+
title: providerTitle ?? ( localize(7145, "Delegate to {0}", this._lockedAgent?.prefix)),
|
|
945
946
|
message,
|
|
946
947
|
icon: providerIcon ?? Codicon.sendToRemoteAgent,
|
|
947
948
|
additionalMessage,
|
|
@@ -950,11 +951,11 @@ let ChatWidget = class ChatWidget extends Disposable {
|
|
|
950
951
|
}
|
|
951
952
|
let title;
|
|
952
953
|
if (this.input.currentModeKind === ChatModeKind.Ask) {
|
|
953
|
-
title = ( localize(
|
|
954
|
+
title = ( localize(7146, "Ask about your code"));
|
|
954
955
|
} else if (this.input.currentModeKind === ChatModeKind.Edit) {
|
|
955
|
-
title = ( localize(
|
|
956
|
+
title = ( localize(7147, "Edit in context"));
|
|
956
957
|
} else {
|
|
957
|
-
title = ( localize(
|
|
958
|
+
title = ( localize(7148, "Build with Agent"));
|
|
958
959
|
}
|
|
959
960
|
return {
|
|
960
961
|
title,
|
|
@@ -1229,7 +1230,6 @@ let ChatWidget = class ChatWidget extends Disposable {
|
|
|
1229
1230
|
filter: this.viewOptions.filter ? {
|
|
1230
1231
|
filter: this.viewOptions.filter.bind(this.viewOptions)
|
|
1231
1232
|
} : undefined,
|
|
1232
|
-
codeBlockModelCollection: this._codeBlockModelCollection,
|
|
1233
1233
|
viewModel: this.viewModel,
|
|
1234
1234
|
editorOptions: this.editorOptions,
|
|
1235
1235
|
location: this.location,
|
|
@@ -1615,15 +1615,14 @@ let ChatWidget = class ChatWidget extends Disposable {
|
|
|
1615
1615
|
const tipContainer = this.inputPart.gettingStartedTipContainerElement;
|
|
1616
1616
|
clearNode(tipContainer);
|
|
1617
1617
|
setVisibility(false, tipContainer);
|
|
1618
|
-
this._codeBlockModelCollection.clear();
|
|
1619
1618
|
this.inputPart.setInputModel(model.inputModel, model.getRequests().length === 0);
|
|
1620
|
-
this.viewModel = this.instantiationService.createInstance(ChatViewModel, model,
|
|
1619
|
+
this.viewModel = this.instantiationService.createInstance(ChatViewModel, model, undefined);
|
|
1621
1620
|
this.listWidget.setViewModel(this.viewModel);
|
|
1622
1621
|
if (this._lockedAgent) {
|
|
1623
1622
|
let placeholder = this.chatSessionsService.getChatSessionContribution(this._lockedAgent.id)?.inputPlaceholder;
|
|
1624
1623
|
if (!placeholder) {
|
|
1625
1624
|
placeholder = ( localize(
|
|
1626
|
-
|
|
1625
|
+
7149,
|
|
1627
1626
|
"Chat with {0}",
|
|
1628
1627
|
this._lockedAgent.displayName || this._lockedAgent.name
|
|
1629
1628
|
));
|
|
@@ -1645,6 +1644,7 @@ let ChatWidget = class ChatWidget extends Disposable {
|
|
|
1645
1644
|
return;
|
|
1646
1645
|
}
|
|
1647
1646
|
this.requestInProgress.set(this.viewModel.model.requestInProgress.get());
|
|
1647
|
+
this.hasActiveRequest.set(this.viewModel.model.hasActiveRequest.get());
|
|
1648
1648
|
if (events?.some(e => e?.kind === "changePlaceholder")) {
|
|
1649
1649
|
this.inputEditor.updateOptions({
|
|
1650
1650
|
placeholder: this.viewModel.inputPlaceholder
|
|
@@ -1677,7 +1677,7 @@ let ChatWidget = class ChatWidget extends Disposable {
|
|
|
1677
1677
|
this._hasPendingRequestsContextKey.set(pendingCount > 0);
|
|
1678
1678
|
const steeringCount = pendingRequests.filter(pending => pending.kind === ChatRequestQueueKind.Steering).length;
|
|
1679
1679
|
if (announceSteering && steeringCount > 0 && lastSteeringCount === 0) {
|
|
1680
|
-
status(( localize(
|
|
1680
|
+
status(( localize(7150, "Steering")));
|
|
1681
1681
|
}
|
|
1682
1682
|
lastSteeringCount = steeringCount;
|
|
1683
1683
|
};
|
|
@@ -1763,10 +1763,11 @@ let ChatWidget = class ChatWidget extends Disposable {
|
|
|
1763
1763
|
this.renderWelcomeViewContentIfNeeded();
|
|
1764
1764
|
const agent = this.chatAgentService.getAgent(agentId);
|
|
1765
1765
|
this._updateAgentCapabilitiesContextKeys(agent);
|
|
1766
|
+
const supportsCheckpoints = this._attachmentCapabilities.supportsCheckpoints ?? false;
|
|
1766
1767
|
this.listWidget?.updateRendererOptions({
|
|
1767
|
-
restorable:
|
|
1768
|
-
editable:
|
|
1769
|
-
noFooter:
|
|
1768
|
+
restorable: supportsCheckpoints,
|
|
1769
|
+
editable: supportsCheckpoints,
|
|
1770
|
+
noFooter: false,
|
|
1770
1771
|
progressMessageAtBottomOfResponse: true
|
|
1771
1772
|
});
|
|
1772
1773
|
if (this.visible) {
|
|
@@ -1789,7 +1790,6 @@ let ChatWidget = class ChatWidget extends Disposable {
|
|
|
1789
1790
|
this.listWidget?.updateRendererOptions({
|
|
1790
1791
|
restorable: true,
|
|
1791
1792
|
editable: true,
|
|
1792
|
-
noFooter: false,
|
|
1793
1793
|
progressMessageAtBottomOfResponse: mode => mode !== ChatModeKind.Ask
|
|
1794
1794
|
});
|
|
1795
1795
|
if (this.visible) {
|
|
@@ -1864,11 +1864,12 @@ let ChatWidget = class ChatWidget extends Disposable {
|
|
|
1864
1864
|
const refs = parseResult.body?.variableReferences.map((
|
|
1865
1865
|
{
|
|
1866
1866
|
name,
|
|
1867
|
-
offset
|
|
1867
|
+
offset,
|
|
1868
|
+
fullLength
|
|
1868
1869
|
}
|
|
1869
1870
|
) => ({
|
|
1870
1871
|
name,
|
|
1871
|
-
range: ( new OffsetRange(offset, offset +
|
|
1872
|
+
range: ( new OffsetRange(offset, offset + fullLength))
|
|
1872
1873
|
})) ?? [];
|
|
1873
1874
|
const toolReferences = this.toolsService.toToolReferences(refs);
|
|
1874
1875
|
requestInput.attachedContext.insertFirst(toPromptFileVariableEntry(
|
|
@@ -1878,12 +1879,11 @@ let ChatWidget = class ChatWidget extends Disposable {
|
|
|
1878
1879
|
true,
|
|
1879
1880
|
toolReferences
|
|
1880
1881
|
));
|
|
1881
|
-
const promptPath = slashCommand.promptPath;
|
|
1882
1882
|
const promptRunEvent = {
|
|
1883
|
-
storage:
|
|
1883
|
+
storage: slashCommand.storage
|
|
1884
1884
|
};
|
|
1885
|
-
if (
|
|
1886
|
-
promptRunEvent.extensionId =
|
|
1885
|
+
if (slashCommand.extension) {
|
|
1886
|
+
promptRunEvent.extensionId = slashCommand.extension.identifier.value;
|
|
1887
1887
|
promptRunEvent.promptName = slashCommand.name;
|
|
1888
1888
|
} else {
|
|
1889
1889
|
promptRunEvent.promptNameHash = ( hash(slashCommand.name).toString(16));
|
|
@@ -1927,6 +1927,7 @@ let ChatWidget = class ChatWidget extends Disposable {
|
|
|
1927
1927
|
const isUserQuery = !query;
|
|
1928
1928
|
const isEditing = this.viewModel?.editing;
|
|
1929
1929
|
if (isEditing) {
|
|
1930
|
+
this.inputPart?.clearToolConfirmationCarousel();
|
|
1930
1931
|
const editingPendingRequest = this.viewModel.editing.pendingKind;
|
|
1931
1932
|
if (editingPendingRequest !== undefined) {
|
|
1932
1933
|
const editingRequestId = this.viewModel.editing.id;
|
|
@@ -1936,8 +1937,14 @@ let ChatWidget = class ChatWidget extends Disposable {
|
|
|
1936
1937
|
await this.chatService.cancelCurrentRequestForSession(this.viewModel.sessionResource, "acceptInput-editing");
|
|
1937
1938
|
options.queue = undefined;
|
|
1938
1939
|
}
|
|
1940
|
+
const preserveCheckpoint = this._lockedAgent && !!this._attachmentCapabilities.supportsCheckpoints;
|
|
1941
|
+
if (preserveCheckpoint) {
|
|
1942
|
+
this.recentlyRestoredCheckpoint = true;
|
|
1943
|
+
}
|
|
1939
1944
|
this.finishedEditing(true);
|
|
1940
|
-
|
|
1945
|
+
if (!preserveCheckpoint) {
|
|
1946
|
+
this.viewModel.model?.setCheckpoint(undefined);
|
|
1947
|
+
}
|
|
1941
1948
|
}
|
|
1942
1949
|
const model = this.viewModel.model;
|
|
1943
1950
|
const requestInProgress = model.requestInProgress.get();
|
|
@@ -1952,9 +1959,6 @@ let ChatWidget = class ChatWidget extends Disposable {
|
|
|
1952
1959
|
return;
|
|
1953
1960
|
}
|
|
1954
1961
|
await this._applyPromptFileIfSet(requestInputs);
|
|
1955
|
-
markChat(this.viewModel.sessionResource, ChatPerfMark.WillCollectInstructions);
|
|
1956
|
-
await this._autoAttachInstructions(requestInputs);
|
|
1957
|
-
markChat(this.viewModel.sessionResource, ChatPerfMark.DidCollectInstructions);
|
|
1958
1962
|
if (this.viewOptions.enableWorkingSet !== undefined && this.input.currentModeKind === ChatModeKind.Edit) {
|
|
1959
1963
|
const uniqueWorkingSetEntries = ( new ResourceSet());
|
|
1960
1964
|
const editingSessionAttachedContext = requestInputs.attachedContext;
|
|
@@ -1981,13 +1985,18 @@ let ChatWidget = class ChatWidget extends Disposable {
|
|
|
1981
1985
|
const requests = this.viewModel.model.getRequests();
|
|
1982
1986
|
for (let i = requests.length - 1; i >= 0; i -= 1) {
|
|
1983
1987
|
const request = requests[i];
|
|
1984
|
-
if (request.shouldBeBlocked) {
|
|
1988
|
+
if (request.shouldBeBlocked.get() || request === this.viewModel.model.checkpoint) {
|
|
1985
1989
|
this.chatService.removeRequest(this.viewModel.sessionResource, request.id);
|
|
1986
1990
|
}
|
|
1987
1991
|
}
|
|
1992
|
+
this.viewModel.model.setCheckpoint(undefined);
|
|
1988
1993
|
}
|
|
1994
|
+
const enabledTools = this.input.currentModeKind === ChatModeKind.Agent ? this.input.selectedToolsModel.userSelectedTools.get() : undefined;
|
|
1995
|
+
const enabledSubAgents = this.input.currentModeKind === ChatModeKind.Agent ? this.input.currentModeObs.get().agents?.get() : undefined;
|
|
1989
1996
|
const resolvedImageVariables = await this._resolveDirectoryImageAttachments(requestInputs.attachedContext.asArray());
|
|
1990
1997
|
const submittedSessionResource = this.viewModel.sessionResource;
|
|
1998
|
+
const contribution = this._lockedAgent ? this.chatSessionsService.getChatSessionContribution(this._lockedAgent.id) : undefined;
|
|
1999
|
+
const autoAttachEnabled = contribution ? contribution.autoAttachReferences === true : true;
|
|
1991
2000
|
const result = await this.chatService.sendRequest(this.viewModel.sessionResource, requestInputs.input, {
|
|
1992
2001
|
userSelectedModelId: this.input.currentLanguageModel,
|
|
1993
2002
|
location: this.location,
|
|
@@ -2003,7 +2012,12 @@ let ChatWidget = class ChatWidget extends Disposable {
|
|
|
2003
2012
|
...this.getModeRequestOptions(),
|
|
2004
2013
|
modeInfo: this.input.currentModeInfo,
|
|
2005
2014
|
agentIdSilent: this._lockedAgent?.id,
|
|
2006
|
-
queue: options?.queue
|
|
2015
|
+
queue: options?.queue,
|
|
2016
|
+
instructionContext: autoAttachEnabled ? {
|
|
2017
|
+
modeKind: this.input.currentModeKind,
|
|
2018
|
+
enabledTools,
|
|
2019
|
+
enabledSubAgents
|
|
2020
|
+
} : undefined
|
|
2007
2021
|
});
|
|
2008
2022
|
if (ChatSendResult.isRejected(result)) {
|
|
2009
2023
|
return;
|
|
@@ -2076,16 +2090,16 @@ let ChatWidget = class ChatWidget extends Disposable {
|
|
|
2076
2090
|
}
|
|
2077
2091
|
const promptResult = await this.dialogService.prompt({
|
|
2078
2092
|
type: "question",
|
|
2079
|
-
message: ( localize(
|
|
2093
|
+
message: ( localize(7151, "You already have pending requests.")),
|
|
2080
2094
|
detail: ( localize(
|
|
2081
|
-
|
|
2095
|
+
7152,
|
|
2082
2096
|
"Do you want to keep them in the queue or remove them before sending this message?"
|
|
2083
2097
|
)),
|
|
2084
2098
|
buttons: [{
|
|
2085
|
-
label: ( localize(
|
|
2099
|
+
label: ( localize(7153, "Keep Pending Requests")),
|
|
2086
2100
|
run: () => "keep"
|
|
2087
2101
|
}, {
|
|
2088
|
-
label: ( localize(
|
|
2102
|
+
label: ( localize(7154, "Remove Pending Requests")),
|
|
2089
2103
|
run: () => "remove"
|
|
2090
2104
|
}],
|
|
2091
2105
|
cancelButton: true
|
|
@@ -2106,6 +2120,9 @@ let ChatWidget = class ChatWidget extends Disposable {
|
|
|
2106
2120
|
const userSelectedTools = this.input.selectedToolsModel.userSelectedTools;
|
|
2107
2121
|
let lastToolsSnapshot = userSelectedTools.get();
|
|
2108
2122
|
const scopedTools = derived(reader => {
|
|
2123
|
+
if (this._store.isDisposed) {
|
|
2124
|
+
return lastToolsSnapshot;
|
|
2125
|
+
}
|
|
2109
2126
|
const activeSession = this._viewModelObs.read(reader)?.sessionResource;
|
|
2110
2127
|
const currentModeId = this.input.currentModeObs.read(reader).id;
|
|
2111
2128
|
if (isEqual(activeSession, sessionResource) && currentModeId === capturedModeId) {
|
|
@@ -2316,40 +2333,6 @@ let ChatWidget = class ChatWidget extends Disposable {
|
|
|
2316
2333
|
this.input.switchModelByQualifiedName(model);
|
|
2317
2334
|
}
|
|
2318
2335
|
}
|
|
2319
|
-
async _autoAttachInstructions(
|
|
2320
|
-
{
|
|
2321
|
-
attachedContext
|
|
2322
|
-
}
|
|
2323
|
-
) {
|
|
2324
|
-
const contribution = this._lockedAgent ? this.chatSessionsService.getChatSessionContribution(this._lockedAgent.id) : undefined;
|
|
2325
|
-
const isContributedSession = !!contribution;
|
|
2326
|
-
const autoAttachEnabled = isContributedSession ? contribution.autoAttachReferences === true : true;
|
|
2327
|
-
if (!autoAttachEnabled) {
|
|
2328
|
-
this.logService.debug(
|
|
2329
|
-
`ChatWidget#_autoAttachInstructions: skipped, autoAttachReferences is disabled`
|
|
2330
|
-
);
|
|
2331
|
-
return;
|
|
2332
|
-
}
|
|
2333
|
-
try {
|
|
2334
|
-
this.logService.debug(`ChatWidget#_autoAttachInstructions: prompt files are enabled`);
|
|
2335
|
-
const enabledTools = this.input.currentModeKind === ChatModeKind.Agent ? this.input.selectedToolsModel.userSelectedTools.get() : undefined;
|
|
2336
|
-
const enabledSubAgents = this.input.currentModeKind === ChatModeKind.Agent ? this.input.currentModeObs.get().agents?.get() : undefined;
|
|
2337
|
-
const sessionResource = this._viewModel?.model.sessionResource;
|
|
2338
|
-
const computer = this.instantiationService.createInstance(
|
|
2339
|
-
ComputeAutomaticInstructions,
|
|
2340
|
-
this.input.currentModeKind,
|
|
2341
|
-
enabledTools,
|
|
2342
|
-
enabledSubAgents,
|
|
2343
|
-
sessionResource
|
|
2344
|
-
);
|
|
2345
|
-
await computer.collect(attachedContext, CancellationToken.None);
|
|
2346
|
-
} catch (err) {
|
|
2347
|
-
this.logService.error(
|
|
2348
|
-
`ChatWidget#_autoAttachInstructions: failed to compute automatic instructions`,
|
|
2349
|
-
err
|
|
2350
|
-
);
|
|
2351
|
-
}
|
|
2352
|
-
}
|
|
2353
2336
|
delegateScrollFromMouseWheelEvent(browserEvent) {
|
|
2354
2337
|
this.listWidget.delegateScrollFromMouseWheelEvent(browserEvent);
|
|
2355
2338
|
}
|
|
@@ -45,7 +45,7 @@ let ChatFollowups = class ChatFollowups extends Disposable {
|
|
|
45
45
|
} else if (followup.kind === "command") {
|
|
46
46
|
button.element.classList.add("interactive-followup-command");
|
|
47
47
|
}
|
|
48
|
-
button.element.ariaLabel = ( localize(
|
|
48
|
+
button.element.ariaLabel = ( localize(7155, "Follow up question: {0}", baseTitle));
|
|
49
49
|
button.label = ( new MarkdownString(baseTitle));
|
|
50
50
|
this._register(button.onDidClick(() => this.clickHandler(followup)));
|
|
51
51
|
}
|
|
@@ -18,17 +18,16 @@ import { IStorageService } from "@codingame/monaco-vscode-api/vscode/vs/platform
|
|
|
18
18
|
import { IThemeService } from "@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/themeService.service";
|
|
19
19
|
import { ISharedWebContentExtractorService } from "@codingame/monaco-vscode-api/vscode/vs/platform/webContentExtractor/common/webContentExtractor.service";
|
|
20
20
|
import { IWorkspaceContextService } from "@codingame/monaco-vscode-api/vscode/vs/platform/workspace/common/workspace.service";
|
|
21
|
+
import { ISCMService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/scm/common/scm.service";
|
|
21
22
|
import { IWorkbenchLayoutService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/layout/browser/layoutService.service";
|
|
22
23
|
import { IViewDescriptorService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/common/views.service";
|
|
23
|
-
import { IWorkbenchAssignmentService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/assignment/common/assignmentService.service";
|
|
24
24
|
import { IChatEntitlementService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/chat/common/chatEntitlementService.service";
|
|
25
25
|
import { IEditorService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service";
|
|
26
26
|
import { ChatContextKeys } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/actions/chatContextKeys";
|
|
27
27
|
import { ChatRequestVariableSet, IChatRequestVariableEntry } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/attachments/chatVariableEntries";
|
|
28
28
|
import { IChatMode } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatModes";
|
|
29
29
|
import { IChatModeService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatModes.service";
|
|
30
|
-
import { IChatFollowup, IChatQuestionCarousel } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService/chatService";
|
|
31
|
-
import { IChatService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService/chatService.service";
|
|
30
|
+
import { IChatFollowup, IChatPlanReview, IChatQuestionCarousel, IChatToolInvocation } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService/chatService";
|
|
32
31
|
import { IChatSessionsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatSessionsService.service";
|
|
33
32
|
import { ChatAgentLocation, ChatModeKind, ChatPermissionLevel } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants";
|
|
34
33
|
import { IChatEditingSession } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/editing/chatEditingService";
|
|
@@ -45,7 +44,10 @@ import { IChatAttachmentWidgetRegistry } from "@codingame/monaco-vscode-api/vsco
|
|
|
45
44
|
import { ChatImplicitContexts } from "../../attachments/chatImplicitContext.js";
|
|
46
45
|
import { IChatWidget, ISessionTypePickerDelegate, IWorkspacePickerDelegate } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat";
|
|
47
46
|
import { IChatContextService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/contextContrib/chatContextService.service";
|
|
47
|
+
import { ChatPlanReviewPart, IChatPlanReviewPartOptions } from "../chatContentParts/chatPlanReviewPart.js";
|
|
48
48
|
import { ChatQuestionCarouselPart, IChatQuestionCarouselOptions } from "../chatContentParts/chatQuestionCarouselPart.js";
|
|
49
|
+
import { ChatToolConfirmationCarouselPart, ToolInvocationPartFactory, ScrollToSubagentCallback } from "../chatContentParts/toolInvocationParts/chatToolConfirmationCarouselPart.js";
|
|
50
|
+
import { ChatToolInvocationPart } from "../chatContentParts/toolInvocationParts/chatToolInvocationPart.js";
|
|
49
51
|
import { IChatContentPartRenderContext } from "../chatContentParts/chatContentParts.js";
|
|
50
52
|
import { ChatDragAndDrop } from "../chatDragAndDrop.js";
|
|
51
53
|
import { ChatSelectedTools } from "./chatSelectedTools.js";
|
|
@@ -120,15 +122,14 @@ export declare class ChatInputPart extends Disposable implements IHistoryNavigat
|
|
|
120
122
|
private readonly storageService;
|
|
121
123
|
private readonly agentService;
|
|
122
124
|
private readonly sharedWebExtracterService;
|
|
123
|
-
private readonly experimentService;
|
|
124
125
|
private readonly entitlementService;
|
|
125
126
|
private readonly chatModeService;
|
|
126
127
|
private readonly toolService;
|
|
127
|
-
private readonly chatService;
|
|
128
128
|
private readonly chatSessionsService;
|
|
129
129
|
private readonly chatContextService;
|
|
130
130
|
private readonly agentSessionsService;
|
|
131
131
|
private readonly workspaceContextService;
|
|
132
|
+
private readonly scmService;
|
|
132
133
|
private readonly layoutService;
|
|
133
134
|
private readonly viewDescriptorService;
|
|
134
135
|
private readonly _chatAttachmentWidgetRegistry;
|
|
@@ -141,6 +142,10 @@ export declare class ChatInputPart extends Disposable implements IHistoryNavigat
|
|
|
141
142
|
private readonly _questionCarouselResponseIds;
|
|
142
143
|
private readonly _questionCarouselSessionResources;
|
|
143
144
|
private _hasQuestionCarouselContextKey;
|
|
145
|
+
private readonly _chatPlanReviewWidgets;
|
|
146
|
+
private readonly _planReviewResponseIds;
|
|
147
|
+
private readonly _planReviewSessionResources;
|
|
148
|
+
private readonly _chatToolConfirmationCarousels;
|
|
144
149
|
private readonly _chatEditingTodosDisposables;
|
|
145
150
|
private _lastEditingSessionResource;
|
|
146
151
|
private _onDidLoadInputState;
|
|
@@ -195,6 +200,8 @@ export declare class ChatInputPart extends Disposable implements IHistoryNavigat
|
|
|
195
200
|
private chatArtifactsWidgetContainer;
|
|
196
201
|
private chatGettingStartedTipContainer;
|
|
197
202
|
private chatQuestionCarouselContainer;
|
|
203
|
+
private chatPlanReviewContainer;
|
|
204
|
+
private chatToolConfirmationCarouselContainer;
|
|
198
205
|
private chatInputWidgetsContainer;
|
|
199
206
|
private inputContainer;
|
|
200
207
|
private readonly _widgetController;
|
|
@@ -300,7 +307,7 @@ export declare class ChatInputPart extends Disposable implements IHistoryNavigat
|
|
|
300
307
|
private _chatSessionIsEmpty;
|
|
301
308
|
private _pendingDelegationTarget;
|
|
302
309
|
private _currentSessionType;
|
|
303
|
-
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,
|
|
310
|
+
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);
|
|
304
311
|
private setImplicitContextEnablement;
|
|
305
312
|
setIsWithinEditSession(inInsideDiff: boolean, isFilePartOfEditSession: boolean): void;
|
|
306
313
|
private getSelectedModelStorageKey;
|
|
@@ -314,6 +321,8 @@ export declare class ChatInputPart extends Disposable implements IHistoryNavigat
|
|
|
314
321
|
openModePicker(): void;
|
|
315
322
|
openPermissionPicker(): void;
|
|
316
323
|
setPermissionLevel(level: ChatPermissionLevel): void;
|
|
324
|
+
private getDefaultPermissionLevel;
|
|
325
|
+
private getPermittedPermissionLevel;
|
|
317
326
|
openSessionTargetPicker(): void;
|
|
318
327
|
openDelegationPicker(): void;
|
|
319
328
|
openChatSessionPicker(): void;
|
|
@@ -350,7 +359,6 @@ export declare class ChatInputPart extends Disposable implements IHistoryNavigat
|
|
|
350
359
|
private getModels;
|
|
351
360
|
/**
|
|
352
361
|
* Get the chat session type for the current session, if any.
|
|
353
|
-
* Uses the delegate or `getChatSessionFromInternalUri` to determine the session type.
|
|
354
362
|
*/
|
|
355
363
|
private getCurrentSessionType;
|
|
356
364
|
/**
|
|
@@ -364,6 +372,10 @@ export declare class ChatInputPart extends Disposable implements IHistoryNavigat
|
|
|
364
372
|
* Called when switching sessions to prevent cross-contamination.
|
|
365
373
|
*/
|
|
366
374
|
private checkModelInSessionPool;
|
|
375
|
+
/**
|
|
376
|
+
* Reset the current mode when it is not valid for the current session type.
|
|
377
|
+
*/
|
|
378
|
+
private checkModeInSessionPool;
|
|
367
379
|
/**
|
|
368
380
|
* Pre-select the model in the model picker based on the `modelId` from the
|
|
369
381
|
* last request in the current session's history. This ensures that when a
|
|
@@ -378,7 +390,6 @@ export declare class ChatInputPart extends Disposable implements IHistoryNavigat
|
|
|
378
390
|
getCurrentInputState(): IChatModelInputState;
|
|
379
391
|
private _getAriaLabel;
|
|
380
392
|
private validateCurrentChatMode;
|
|
381
|
-
private getDefaultModeExperimentStorageKey;
|
|
382
393
|
logInputHistory(): void;
|
|
383
394
|
setVisible(visible: boolean): void;
|
|
384
395
|
/** If consumers are busy generating the chat input, returns the promise resolved when they finish */
|
|
@@ -434,11 +445,12 @@ export declare class ChatInputPart extends Disposable implements IHistoryNavigat
|
|
|
434
445
|
*
|
|
435
446
|
* This method also updates the `chatSessionHasOptions` context key, which controls
|
|
436
447
|
* whether the picker action is shown in the toolbar via its `when` clause.
|
|
437
|
-
*
|
|
438
|
-
* @returns The result containing visible group IDs and related context, or undefined
|
|
439
|
-
* if there are no visible option groups
|
|
440
448
|
*/
|
|
441
|
-
private
|
|
449
|
+
private getVisibleOptionGroupsModeAndUpdateContextKeys;
|
|
450
|
+
private getCurrentSessionResource;
|
|
451
|
+
private areAllOptionsValid;
|
|
452
|
+
private getAllOptionsGroups;
|
|
453
|
+
private getVisibleOptionGroups;
|
|
442
454
|
/**
|
|
443
455
|
* Refresh all registered option groups for the current chat session.
|
|
444
456
|
* Fires events for each option group with their current selection.
|
|
@@ -450,6 +462,7 @@ export declare class ChatInputPart extends Disposable implements IHistoryNavigat
|
|
|
450
462
|
* Returns undefined if the session doesn't have this option configured.
|
|
451
463
|
*/
|
|
452
464
|
private getCurrentOptionForGroup;
|
|
465
|
+
private hasWorkspaceScmRepository;
|
|
453
466
|
private getEffectiveSessionType;
|
|
454
467
|
/**
|
|
455
468
|
* Updates the agentSessionType context key based on delegate or actual session.
|
|
@@ -490,6 +503,24 @@ export declare class ChatInputPart extends Disposable implements IHistoryNavigat
|
|
|
490
503
|
isQuestionCarouselFocused(): boolean;
|
|
491
504
|
navigateToPreviousQuestion(): boolean;
|
|
492
505
|
navigateToNextQuestion(): boolean;
|
|
506
|
+
renderPlanReview(review: IChatPlanReview, context: IChatContentPartRenderContext, options: IChatPlanReviewPartOptions): ChatPlanReviewPart;
|
|
507
|
+
clearPlanReview(responseId?: string, resolveId?: string): void;
|
|
508
|
+
get planReview(): ChatPlanReviewPart | undefined;
|
|
509
|
+
private get _currentSessionKey();
|
|
510
|
+
private get _currentToolConfirmationCarousel();
|
|
511
|
+
renderToolConfirmationCarousel(tool: IChatToolInvocation, factory: ToolInvocationPartFactory, subAgentInvocationId?: string, agentName?: string, scrollToSubagent?: ScrollToSubagentCallback, toolPart?: ChatToolInvocationPart): ChatToolConfirmationCarouselPart;
|
|
512
|
+
addToolToConfirmationCarousel(tool: IChatToolInvocation, factory: ToolInvocationPartFactory, subAgentInvocationId?: string, agentName?: string, scrollToSubagent?: ScrollToSubagentCallback, toolPart?: ChatToolInvocationPart): void;
|
|
513
|
+
/**
|
|
514
|
+
* Navigates the carousel to the first pending tool from the given subagent.
|
|
515
|
+
*/
|
|
516
|
+
activateCarouselForSubagent(subAgentInvocationId: string): void;
|
|
517
|
+
hasToolInConfirmationCarousel(toolCallId: string): boolean;
|
|
518
|
+
get hasActiveToolConfirmationCarousel(): boolean;
|
|
519
|
+
clearToolConfirmationCarousel(): void;
|
|
520
|
+
/**
|
|
521
|
+
* Swaps the visible tool confirmation carousel when switching sessions.
|
|
522
|
+
*/
|
|
523
|
+
private _syncToolConfirmationCarouselForSession;
|
|
493
524
|
setWorkingSetCollapsed(collapsed: boolean): void;
|
|
494
525
|
renderChatEditingSessionState(chatEditingSession: IChatEditingSession | null): void;
|
|
495
526
|
private renderChatEditingSessionWithEntries;
|
|
@@ -500,6 +531,7 @@ export declare class ChatInputPart extends Disposable implements IHistoryNavigat
|
|
|
500
531
|
* for non-editor chrome such as attachments, toolbars, and widgets.
|
|
501
532
|
*/
|
|
502
533
|
setMaxHeight(maxHeight: number | undefined): void;
|
|
534
|
+
private updateToolConfirmationCarouselMaxHeight;
|
|
503
535
|
/**
|
|
504
536
|
* Layout the input part with the given width. Height is intrinsic - determined by content
|
|
505
537
|
* and detected via ResizeObserver, which updates `inputPartHeight` for the parent to observe.
|