@codingame/monaco-vscode-chat-service-override 36.2.7 → 37.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.d.ts +1 -0
- package/index.js +92 -10
- package/package.json +5 -5
- package/vscode/src/vs/platform/agentHost/browser/agentHostConnectionsService.d.ts +10 -3
- package/vscode/src/vs/platform/agentHost/browser/agentHostConnectionsService.js +54 -17
- package/vscode/src/vs/platform/agentHost/browser/agentHostEnablementService.d.ts +14 -0
- package/vscode/src/vs/platform/agentHost/browser/agentHostEnablementService.js +46 -0
- package/vscode/src/vs/platform/agentHost/browser/agentHostIpcChannelTransport.d.ts +7 -2
- package/vscode/src/vs/platform/agentHost/browser/agentHostIpcChannelTransport.js +34 -2
- package/vscode/src/vs/platform/agentHost/browser/{remoteAgentHostProtocolClient.d.ts → agentHostProtocolClient.d.ts} +240 -60
- package/vscode/src/vs/platform/agentHost/browser/agentHostProtocolClient.js +1911 -0
- package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostServiceImpl.d.ts +30 -33
- package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostServiceImpl.js +381 -315
- package/vscode/src/vs/platform/agentHost/browser/webSocketClientTransport.d.ts +3 -1
- package/vscode/src/vs/platform/agentHost/browser/webSocketClientTransport.js +2 -0
- package/vscode/src/vs/platform/agentHost/common/agentHostClientInfo.d.ts +9 -0
- package/vscode/src/vs/platform/agentHost/common/agentHostClientInfo.js +20 -0
- package/vscode/src/vs/platform/agentHost/common/agentHostExtensionProtocol.d.ts +144 -0
- package/vscode/src/vs/platform/agentHost/common/agentHostExtensionProtocol.js +20 -0
- package/vscode/src/vs/platform/agentHost/common/agentHostFileSystemProvider.d.ts +14 -6
- package/vscode/src/vs/platform/agentHost/common/agentHostFileSystemProvider.js +14 -10
- package/vscode/src/vs/platform/agentHost/common/agentHostFileSystemService.js +1 -1
- package/vscode/src/vs/platform/agentHost/common/agentHostManagedRules.d.ts +47 -0
- package/vscode/src/vs/platform/agentHost/common/agentHostManagedRules.js +75 -0
- package/vscode/src/vs/platform/agentHost/common/agentHostManagedSettings.d.ts +68 -0
- package/vscode/src/vs/platform/agentHost/common/agentHostManagedSettings.js +161 -0
- package/vscode/src/vs/platform/agentHost/common/agentHostStarter.config.contribution.js +288 -45
- package/vscode/src/vs/platform/agentHost/common/agentMerge.d.ts +261 -0
- package/vscode/src/vs/platform/agentHost/common/agentMerge.js +67 -0
- package/vscode/src/vs/platform/agentHost/common/agentSdkSetup.d.ts +53 -0
- package/vscode/src/vs/platform/agentHost/common/agentSdkSetup.js +45 -0
- package/vscode/src/vs/platform/agentHost/common/changesetUri.d.ts +130 -0
- package/vscode/src/vs/platform/agentHost/common/changesetUri.js +27 -0
- package/vscode/src/vs/platform/agentHost/common/customAgents.d.ts +8 -2
- package/vscode/src/vs/platform/agentHost/common/customAgents.js +7 -0
- package/vscode/src/vs/platform/agentHost/common/meta/agentChatSurfaceMeta.d.ts +39 -0
- package/vscode/src/vs/platform/agentHost/common/meta/agentChatSurfaceMeta.js +25 -0
- package/vscode/src/vs/platform/agentHost/common/meta/agentCompletionAttachmentMeta.d.ts +110 -0
- package/vscode/src/vs/platform/agentHost/common/meta/agentCompletionAttachmentMeta.js +38 -0
- package/vscode/src/vs/platform/agentHost/common/meta/agentHostArtifactRemovalMeta.d.ts +4 -0
- package/vscode/src/vs/platform/agentHost/common/meta/clientPluginCustomizationMeta.d.ts +7 -0
- package/vscode/src/vs/platform/agentHost/common/meta/clientPluginCustomizationMeta.js +14 -0
- package/vscode/src/vs/platform/agentHost/common/sandboxConfigSchema.d.ts +3 -3
- package/vscode/src/vs/platform/agentHost/common/sandboxConfigSchema.js +16 -24
- package/vscode/src/vs/platform/agentHost/common/semanticSearchConstants.d.ts +8 -0
- package/vscode/src/vs/platform/agentHost/common/semanticSearchConstants.js +8 -0
- package/vscode/src/vs/platform/agentHost/common/sessionArtifacts.d.ts +75 -0
- package/vscode/src/vs/platform/agentHost/common/sessionArtifacts.js +84 -0
- package/vscode/src/vs/platform/agentHost/common/shellInitScript.d.ts +24 -0
- package/vscode/src/vs/platform/agentHost/common/shellInitScript.js +63 -0
- package/vscode/src/vs/platform/agentHost/common/state/agentSubscription.d.ts +71 -20
- package/vscode/src/vs/platform/agentHost/common/state/agentSubscription.js +187 -26
- package/vscode/src/vs/platform/agentHost/common/state/legacyProtocolCompatibility.d.ts +30 -0
- package/vscode/src/vs/platform/agentHost/common/state/legacyProtocolCompatibility.js +87 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-annotations/reducer.js +2 -2
- package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-automation/reducer.d.ts +4 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-automation/reducer.js +37 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-automation-run/reducer.d.ts +4 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-automation-run/reducer.js +45 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-changeset/reducer.d.ts +5 -4
- package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-changeset/reducer.js +100 -35
- package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-chat/reducer.js +193 -49
- package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-session/reducer.js +161 -40
- package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-terminal/reducer.d.ts +1 -1
- package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-terminal/reducer.js +5 -1
- package/vscode/src/vs/platform/agentHost/common/state/protocol/common/reducer-helpers.d.ts +2 -2
- package/vscode/src/vs/platform/agentHost/common/state/protocol/common/timestamps.d.ts +1 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/common/timestamps.js +7 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/version/registry.d.ts +1 -1
- package/vscode/src/vs/platform/agentHost/common/state/protocol/version/registry.js +114 -3
- package/vscode/src/vs/platform/agentHost/common/state/sessionActions.d.ts +28 -5
- package/vscode/src/vs/platform/agentHost/common/state/sessionActions.js +4 -2
- package/vscode/src/vs/platform/agentHost/common/state/sessionWorkingDirectories.d.ts +34 -0
- package/vscode/src/vs/platform/agentHost/common/state/sessionWorkingDirectories.js +28 -0
- package/vscode/src/vs/platform/agentHost/common/worktreePaths.d.ts +24 -0
- package/vscode/src/vs/platform/agentHost/common/worktreePaths.js +15 -0
- package/vscode/src/vs/platform/browserView/common/browserChatToolReferenceNames.d.ts +1 -1
- package/vscode/src/vs/platform/chat/common/aiAgentEnv.d.ts +18 -0
- package/vscode/src/vs/platform/chat/common/aiAgentEnv.js +6 -0
- package/vscode/src/vs/platform/networkFilter/common/domainMatcher.d.ts +5 -1
- package/vscode/src/vs/platform/networkFilter/common/domainMatcher.js +77 -5
- package/vscode/src/vs/platform/networkFilter/common/networkFilterService.d.ts +1 -1
- package/vscode/src/vs/platform/networkFilter/common/networkFilterService.js +9 -5
- package/vscode/src/vs/platform/networkFilter/common/settings.d.ts +1 -5
- package/vscode/src/vs/platform/networkFilter/common/settings.js +0 -4
- package/vscode/src/vs/platform/sandbox/common/terminalSandboxEngine.d.ts +19 -7
- package/vscode/src/vs/platform/sandbox/common/terminalSandboxEngine.js +49 -37
- package/vscode/src/vs/platform/sandbox/common/terminalSandboxReadAllowList.d.ts +2 -1
- package/vscode/src/vs/platform/sandbox/common/terminalSandboxReadAllowList.js +12 -0
- package/vscode/src/vs/platform/sandbox/common/terminalSandboxRuntimeConfigurationPerOperation.js +1 -2
- package/vscode/src/vs/platform/sandbox/common/terminalSandboxService.d.ts +1 -0
- package/vscode/src/vs/platform/terminal/common/autoApprove/autoApproveParseSafety.d.ts +5 -0
- package/vscode/src/vs/platform/terminal/common/autoApprove/autoApproveParseSafety.js +7 -0
- package/vscode/src/vs/platform/terminal/common/autoApprove/cmdDelayedExpansion.d.ts +5 -0
- package/vscode/src/vs/platform/terminal/common/autoApprove/cmdDelayedExpansion.js +8 -0
- package/vscode/src/vs/{workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers → platform/terminal/common/autoApprove}/sedFileWriteParser.d.ts +1 -2
- package/vscode/src/vs/workbench/browser/chatChangesPill.d.ts +29 -0
- package/vscode/src/vs/workbench/browser/chatChangesPill.js +84 -0
- package/vscode/src/vs/workbench/common/chatPullRequest.d.ts +19 -0
- package/vscode/src/vs/workbench/common/chatPullRequest.js +53 -0
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/agentsVoice.contribution.js +342 -155
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/agentsVoiceSessionsPicker.js +2 -2
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/agentsVoiceWidget.d.ts +25 -2
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/agentsVoiceWidget.js +150 -67
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/agentsVoiceWidgetBinding.js +5 -3
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/agentsVoiceWindowService.d.ts +5 -1
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/agentsVoiceWindowService.js +39 -9
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/confirmationComponent.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/confirmationComponent.js +3 -3
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/feedbackDialog.js +6 -6
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/headerComponent.d.ts +4 -2
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/headerComponent.js +54 -17
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/onboardingComponent.js +11 -11
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/sessionListComponent.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/sessionListComponent.js +9 -9
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/statusRowsComponent.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/statusRowsComponent.js +5 -5
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/tokens.d.ts +6 -0
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/tokens.js +5 -1
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/transcriptComponent.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/voiceBarComponent.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/voiceBarComponent.js +2 -2
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/media/voiceModeOnboarding.css +252 -0
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/transcriptsView/voiceTranscripts.contribution.js +13 -13
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/transcriptsView/voiceTranscriptsView.js +7 -7
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/voiceModeOnboarding.d.ts +146 -0
- package/vscode/src/vs/workbench/contrib/agentsVoice/browser/voiceModeOnboarding.js +889 -0
- package/vscode/src/vs/workbench/contrib/agentsVoice/common/voiceTranscriptStore.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityService.d.ts +2 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityService.js +3 -54
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.d.ts +32 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.js +214 -161
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.js +10 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +256 -72
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAgentRecommendationActions.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatClear.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatClear.js +11 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.js +19 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.js +30 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +19 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFindActions.d.ts +6 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFindActions.js +237 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +7 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatNewActions.d.ts +6 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatNewActions.js +68 -61
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatOpenAgentDebugPanelAction.js +17 -21
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPluginActions.js +17 -21
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQueueActions.d.ts +5 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQueueActions.js +68 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +21 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/createPluginAction.d.ts +7 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/createPluginAction.js +222 -72
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/exportAgentHostDebugLogsAction.d.ts +64 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/exportAgentHostDebugLogsAction.js +530 -305
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/openAgentHostStateFileAction.d.ts +25 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/openAgentHostStateFileAction.js +63 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentHostCompletionAction.d.ts +30 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentHostCompletionAction.js +37 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginCommands.d.ts +6 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginCommands.js +95 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditor.js +10 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditorInput.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginItems.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.d.ts +18 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.js +86 -47
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.js +61 -47
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostActiveClientService.d.ts +43 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostActiveClientService.js +326 -76
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostCustomizationService.d.ts +112 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostCustomizationService.js +33 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostImportConversationStore.d.ts +20 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostImportConversationStore.js +26 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostLocalCustomizations.d.ts +28 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostLocalCustomizations.js +110 -126
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostMcpServerSupport.d.ts +131 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostMcpServerSupport.js +638 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostMcpServerSupportScope.d.ts +41 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostMcpServerSupportScope.js +202 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostModeSynchronizer.d.ts +24 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostModeSynchronizer.js +26 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostPermissionUiContribution.js +10 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostProtectedResourcesService.d.ts +20 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostProtectedResourcesService.js +55 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostResponseFileChanges.d.ts +62 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostResponseFileChanges.js +40 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionInputPills.d.ts +59 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionInputPills.js +624 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionWorkingDirectorySynchronizer.d.ts +90 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionWorkingDirectorySynchronizer.js +207 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostShellInitSynchronizer.d.ts +31 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostShellInitSynchronizer.js +140 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostToolSetEnablementService.d.ts +4 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostToolSetEnablementService.js +5 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostToolUtils.js +5 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostUntitledProvisionalSessionService.d.ts +74 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostUntitledProvisionalSessionService.js +511 -171
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/applyAgentHostSessionConfig.d.ts +32 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/applyAgentHostSessionConfig.js +48 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/syncedCustomizationBundler.d.ts +55 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/syncedCustomizationBundler.js +210 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.js +43 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.d.ts +46 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.js +216 -110
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.d.ts +9 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.js +26 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjection.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionsExperiments.contribution.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.js +30 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/media/agenttitlebarstatuswidget.css +5 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/media/unifiedQuickAccess.css +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccess.js +17 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccessActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/externalSessionsFilterMenu.d.ts +3 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/externalSessionsFilterMenu.js +62 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/media/sessionSummaryHover.css +104 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/sessionSummaryHover.d.ts +115 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/sessionSummaryHover.js +168 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/sessionSummaryHoverService.d.ts +24 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/sessionSummaryHoverService.js +32 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessionsConfiguration.js +56 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.d.ts +0 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.js +16 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemSource.d.ts +7 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemSource.js +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemsModel.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemsModel.js +10 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.d.ts +48 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.js +913 -220
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.contribution.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.contribution.js +148 -84
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.d.ts +161 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.js +2367 -247
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.d.ts +5 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.js +21 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementSectionRegistry.d.ts +26 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementSectionRegistry.js +34 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationPresentation.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationPresentation.js +23 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePage.d.ts +15 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePage.js +3 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePagePromptLaunchers.d.ts +10 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePagePromptLaunchers.js +143 -68
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWorkspaceService.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWorkspaceService.js +10 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCardList.d.ts +40 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCardList.js +302 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCreatorService.d.ts +1 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCreatorService.js +49 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationGroupHeaderRenderer.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigration.d.ts +38 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigration.js +240 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigrationAccessibility.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigrationAccessibility.js +53 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigrationCategories.d.ts +82 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigrationCategories.js +762 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigrationDashboard.d.ts +80 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigrationDashboard.js +279 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigrationServiceImpl.d.ts +44 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigrationServiceImpl.js +437 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedAgentPluginDetail.d.ts +85 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedAgentPluginDetail.js +697 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedExtensionToolsDetail.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedMcpServerDetail.d.ts +40 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedMcpServerDetail.js +164 -42
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/galleryItemRenderer.js +6 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.d.ts +260 -31
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.js +2097 -589
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpServerCustomizationMigration.d.ts +32 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpServerCustomizationMigration.js +860 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationManagement.css +2229 -1338
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationWelcomePromptLaunchers.css +79 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/customizationMigrationDashboard.css +354 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.d.ts +85 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.js +1550 -357
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/promptsServiceCustomizationItemProvider.d.ts +2 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/promptsServiceCustomizationItemProvider.js +13 -27
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/toolsListWidget.d.ts +38 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/toolsListWidget.js +637 -319
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.js +28 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatPasteTargetService.d.ts +10 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatPasteTargetService.js +22 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatReferenceAttachmentWidget.contribution.d.ts +15 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatReferenceAttachmentWidget.contribution.js +38 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/transcriptContextAttachmentWidget.contribution.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/transcriptContextAttachmentWidget.contribution.js +38 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +4 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chat.shared.contribution.js +1675 -633
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/agentHostChatDebugProvider.d.ts +93 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/agentHostChatDebugProvider.js +823 -52
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/agentHostLogSources.d.ts +132 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/agentHostLogSources.js +446 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/agentHostUsageSidecar.d.ts +183 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/agentHostUsageSidecar.js +218 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatCustomizationDiscoveryRenderer.js +45 -42
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCacheExplorerView.d.ts +11 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCacheExplorerView.js +163 -136
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCacheInsights.js +72 -72
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugDetailPanel.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditor.d.ts +22 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditor.js +105 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditorInput.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEnablement.d.ts +32 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEnablement.js +49 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventDetailRenderer.js +20 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventList.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFilters.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowChartView.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowGraph.js +27 -22
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHomeView.d.ts +6 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHomeView.js +22 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHookContentRenderer.js +17 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.js +25 -25
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugMessageContentRenderer.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugModelTurnContentRenderer.js +23 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugOverviewView.d.ts +7 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugOverviewView.js +76 -43
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugToolCallContentRenderer.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugTypes.d.ts +3 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugTypes.js +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugWireLogView.d.ts +145 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugWireLogView.js +839 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/media/chatDebug.css +277 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.d.ts +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationWidget.js +16 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.d.ts +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +8 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.d.ts +6 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +35 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +16 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSessionStorage.js +4 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelChangeService.d.ts +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/media/chatEditingEditorOverlay.css +4 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/media/chatEditingExplanationWidget.css +7 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/notebookCellChanges.d.ts +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/chatImageCarouselService.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatInputPills.d.ts +86 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatInputPills.js +282 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.js +14 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.d.ts +5 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.js +37 -25
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.d.ts +7 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.js +135 -82
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/media/chatModelsWidget.css +22 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatOutlineCreator.d.ts +17 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatOutlineCreator.js +28 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +32 -32
- package/vscode/src/vs/workbench/contrib/chat/browser/chatPetAchievementPreview.d.ts +7 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatPetAchievementPreview.js +114 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatPetAchievements.contribution.d.ts +45 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatPetAchievements.contribution.js +326 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatPetAchievementsEditor.d.ts +33 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatPetAchievementsEditor.js +99 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatPetAchievementsEditorInput.d.ts +17 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatPetAchievementsEditorInput.js +46 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatPetAchievementsWidget.d.ts +27 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatPetAchievementsWidget.js +301 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatPromoNotification.d.ts +22 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatPromoNotification.js +103 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatQuotaNotification.d.ts +9 -36
- package/vscode/src/vs/workbench/contrib/chat/browser/chatQuotaNotification.js +103 -196
- package/vscode/src/vs/workbench/contrib/chat/browser/chatRepoInfo.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.js +36 -30
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.js +51 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupGrowthSession.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.js +31 -27
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.d.ts +65 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.js +291 -138
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/media/chatSetup.css +9 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/media/microsoft-dark.svg +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/media/microsoft-light.svg +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSideChat.d.ts +9 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSideChat.js +24 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.js +59 -35
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.d.ts +7 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.js +221 -145
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.js +15 -29
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/media/chatStatus.css +21 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSubmitRequestHandlerService.d.ts +22 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSubmitRequestHandlerService.js +27 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipCatalog.d.ts +9 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipCatalog.js +23 -21
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.d.ts +6 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.js +62 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.d.ts +15 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.js +97 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/claudePluginRecommendations.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/contextContrib/chatContext.contribution.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/contextContrib/chatContextService.d.ts +11 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/contextContrib/chatContextService.js +24 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/defaultModelContribution.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/enablementStatusWidget.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/expNotification/chatExpNotificationConfig.d.ts +44 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/expNotification/chatExpNotificationConfig.js +232 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/expNotification/chatExpNotificationContribution.d.ts +36 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/expNotification/chatExpNotificationContribution.js +127 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/exploreAgentDefaultModel.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/feedbackSurvey/chatModelFeedbackSurveyPromptContribution.d.ts +18 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/feedbackSurvey/chatModelFeedbackSurveyPromptContribution.js +55 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/hasByokModelsContribution.js +4 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelsConfigurationService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/media/chatPetAchievements.css +236 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/planAgentDefaultModel.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackEditorOverlay.d.ts +9 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackEditorOverlay.js +260 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackService.d.ts +39 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackService.js +155 -56
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginAutoUpdate.d.ts +10 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginAutoUpdate.js +29 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginGitCommandService.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginGitCommandService.js +76 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.js +53 -32
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.js +17 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginUrlHandler.js +8 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +29 -71
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.d.ts +3 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.js +36 -40
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.d.ts +3 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolSetsCodeLensProvider.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.js +9 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/skillActions.js +5 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/media/promptTimeline.css +820 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptBucketing.d.ts +38 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptBucketing.js +100 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptTimeline.contribution.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptTimeline.contribution.js +51 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptTimelineCard.d.ts +30 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptTimelineCard.js +113 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptTimelineGutterRail.d.ts +146 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptTimelineGutterRail.js +440 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptTimelineLayout.d.ts +16 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptTimelineLayout.js +5 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptTimelineModel.d.ts +194 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptTimelineModel.js +525 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptTimelineRail.d.ts +33 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptTimelineRulerRail.d.ts +128 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptTimelineRulerRail.js +460 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptTimelineStickyHeader.d.ts +38 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptTimelineStickyHeader.js +120 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptTimelineWidgetContrib.d.ts +53 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptTimelineWidgetContrib.js +160 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptsDebugContribution.js +25 -22
- package/vscode/src/vs/workbench/contrib/chat/browser/sessionChatPillOptions.d.ts +13 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/sessionChatPillOptions.js +52 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/sessionPullRequestPill.d.ts +22 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/sessionPullRequestPill.js +58 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/voiceCodeTranscriptionClient.d.ts +63 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/speechToText/voiceCodeTranscriptionClient.js +361 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/telemetry/chatEditorTopologyTelemetry.d.ts +35 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/telemetry/chatEditorTopologyTelemetry.js +90 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/clientToolSetsContribution.js +25 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.js +77 -41
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.js +60 -43
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/renameTool.d.ts +4 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/renameTool.js +60 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolHelpers.d.ts +10 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolHelpers.js +13 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/usagesTool.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/usagesTool.js +44 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/utilityModelContribution.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceClientService.d.ts +52 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceClientService.js +446 -79
- package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceInputUtils.d.ts +11 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceInputUtils.js +13 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/voiceInputMode/voiceInputMode.d.ts +66 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/voiceInputMode/voiceInputMode.js +297 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSubagentOpenChat.d.ts +137 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSubagentOpenChat.js +714 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatSubagentOpenChat.css +379 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatFind/chatFindAccessibilityHelp.d.ts +10 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatFind/chatFindAccessibilityHelp.js +78 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatPetWidgetService.d.ts +36 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatPetWidgetService.js +172 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidgetService.d.ts +5 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidgetService.js +8 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNoticeHub.d.ts +15 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNoticeHub.js +30 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatQueuePickerActionItem.d.ts +11 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatQueuePickerActionItem.js +41 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/agentHostInputCompletions.d.ts +5 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/agentHostInputCompletions.js +133 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/agentHostInputCompletionsBase.d.ts +3 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/agentHostInputCompletionsBase.js +11 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatEditorInputContentProvider.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCommandArgumentHint.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCommandArgumentHint.js +96 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletionUtils.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletionUtils.js +36 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.js +67 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorContrib.js +23 -37
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorHover.d.ts +18 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorHover.js +72 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputPlaceholderDecoration.d.ts +11 -0
- package/vscode/src/vs/workbench/contrib/{agentsVoice/common/agentsVoiceColors.js → chat/browser/widget/input/editor/chatInputPlaceholderDecoration.js} +17 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputReferenceDecorations.d.ts +3 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputReferenceDecorations.js +16 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/chatQuick.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditor.d.ts +6 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditor.js +21 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.d.ts +48 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.js +457 -142
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewTitleControl.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewTitleControl.js +22 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/media/chatViewPane.css +6 -22
- package/vscode/src/vs/workbench/contrib/chat/common/automations/automationBlueprint.d.ts +22 -0
- package/vscode/src/vs/workbench/contrib/chat/common/automations/automationBlueprint.js +163 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.d.ts +27 -5
- package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.js +79 -32
- package/vscode/src/vs/workbench/contrib/chat/common/chatNotification.d.ts +6 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatNotification.js +12 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.d.ts +44 -11
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.js +404 -51
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceTelemetry.d.ts +64 -4
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceTelemetry.js +33 -2
- package/vscode/src/vs/workbench/contrib/chat/common/chatSideChatService.d.ts +68 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatSideChatService.js +70 -0
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatModelStore.d.ts +5 -2
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionOperationLog.js +18 -5
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.js +43 -14
- package/vscode/src/vs/workbench/contrib/chat/common/participants/chatSlashCommands.d.ts +4 -0
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.d.ts +4 -9
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.js +164 -71
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/workspacePluginSettingsService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/workspacePluginSettingsService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +18 -18
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptLinkProvider.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptLinkProvider.js +19 -10
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.js +172 -159
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/customizationMigrationService.d.ts +115 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/customizationMigrationService.js +69 -0
- package/vscode/src/vs/workbench/contrib/chat/common/sessionChatPills.d.ts +60 -0
- package/vscode/src/vs/workbench/contrib/chat/common/sessionChatPills.js +139 -0
- package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/voicePlaybackService.d.ts +5 -0
- package/vscode/src/vs/workbench/contrib/chat/common/voicePlaybackService.js +21 -1
- package/vscode/src/vs/workbench/contrib/chat/common/widget/chatResponseResourceFileSystemProvider.d.ts +25 -2
- package/vscode/src/vs/workbench/contrib/chat/common/widget/chatResponseResourceFileSystemProvider.js +55 -18
- package/vscode/src/vs/workbench/contrib/imageCarousel/browser/imageCarousel.contribution.js +10 -10
- package/vscode/src/vs/workbench/contrib/imageCarousel/browser/imageCarouselEditor.js +10 -10
- package/vscode/src/vs/workbench/contrib/imageCarousel/browser/imageCarouselEditorInput.js +1 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.js +1 -0
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +15 -15
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatDefaultModel.js +2 -2
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatEditReviewSession.d.ts +59 -0
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatEditReviewSession.js +323 -0
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionResolver.d.ts +30 -0
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionResolver.js +79 -0
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.d.ts +6 -2
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +118 -13
- package/vscode/src/vs/workbench/contrib/mcp/browser/mcpPromptArgumentPick.js +14 -14
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chat/notebookChatUtils.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/cellChatActions.js +10 -10
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebook.chat.contribution.js +5 -5
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +1 -1
- package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.js +8 -8
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminal.chat.contribution.js +1 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChat.d.ts +81 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChat.js +85 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +17 -17
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibleView.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +23 -23
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatEnabler.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatService.d.ts +17 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatService.js +81 -7
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatSessionResolver.d.ts +30 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatSessionResolver.js +86 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.d.ts +10 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +97 -18
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/agentHostSandboxForwarder.d.ts +2 -22
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/agentHostSandboxForwarder.js +10 -8
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/largeOutputFileWriter.js +2 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +42 -36
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.js +10 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +4 -4
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.js +2 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/npmScriptAutoApprover.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.js +25 -16
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.js +4 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/consoleCompactor/consoleCompactor.d.ts +70 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/consoleCompactor/consoleCompactor.js +4316 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalLastCommandTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/killTerminalTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.d.ts +4 -4
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.js +4 -4
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.d.ts +6 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +188 -148
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sendToTerminalTool.js +10 -10
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/createAndRunTaskTool.js +14 -14
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/getTaskOutputTool.js +7 -7
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/runTaskTool.js +14 -14
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.d.ts +7 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.js +82 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/sandboxSettingsReader.d.ts +5 -6
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/sandboxSettingsReader.js +5 -42
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalOutput.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalOutput.js +8 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.js +27 -8
- package/vscode/src/vs/workbench/services/accounts/browser/defaultAccount.d.ts +205 -0
- package/vscode/src/vs/workbench/services/accounts/browser/defaultAccount.js +1580 -0
- package/vscode/src/vs/workbench/services/agentEditorComments/browser/agentEditorCommentsOverlayWidget.d.ts +30 -0
- package/vscode/src/vs/workbench/services/agentEditorComments/browser/agentEditorCommentsOverlayWidget.js +175 -0
- package/vscode/src/vs/workbench/services/agentEditorComments/browser/media/agentEditorCommentsOverlayWidget.css +65 -0
- package/vscode/src/vs/workbench/services/agentHost/browser/agentSdkSetupService.d.ts +47 -0
- package/vscode/src/vs/workbench/services/agentHost/browser/agentSdkSetupService.js +129 -0
- package/vscode/src/vs/workbench/services/agentHost/browser/editorRemoteAgentHostServiceClient.d.ts +26 -8
- package/vscode/src/vs/workbench/services/agentHost/browser/editorRemoteAgentHostServiceClient.js +89 -27
- package/vscode/src/vs/workbench/services/agentHost/browser/webAgentHostEnablementService.d.ts +8 -0
- package/vscode/src/vs/workbench/services/agentHost/browser/webAgentHostEnablementService.js +28 -0
- package/vscode/src/vs/workbench/services/agentHost/common/agentHostFileSystemService.js +5 -1
- package/vscode/src/vs/workbench/services/agentHost/common/agentHostResourceService.d.ts +18 -18
- package/vscode/src/vs/workbench/services/agentHost/common/agentHostResourceService.js +159 -60
- package/vscode/src/vs/workbench/services/agentHost/common/editorRemoteAgentHostTransport.d.ts +47 -0
- package/vscode/src/vs/workbench/services/agentHost/common/editorRemoteAgentHostTransport.js +362 -0
- package/vscode/src/vs/platform/agentHost/browser/agentHost.config.contribution.d.ts +0 -1
- package/vscode/src/vs/platform/agentHost/browser/agentHost.config.contribution.js +0 -40
- package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostProtocolClient.js +0 -1110
- package/vscode/src/vs/platform/agentHost/common/agentHost.config.contribution.js +0 -76
- package/vscode/src/vs/platform/agentHost/common/agentHostResourceService.d.ts +0 -63
- package/vscode/src/vs/platform/agentHost/common/agentHostResourceService.js +0 -25
- package/vscode/src/vs/platform/agentHost/common/agentHostSchema.d.ts +0 -254
- package/vscode/src/vs/platform/agentHost/common/agentHostSchema.js +0 -451
- package/vscode/src/vs/platform/agentHost/common/agentService.d.ts +0 -1294
- package/vscode/src/vs/platform/agentHost/common/agentService.js +0 -92
- package/vscode/src/vs/platform/agentHost/common/state/protocol/common/errors.d.ts +0 -186
- package/vscode/src/vs/platform/agentHost/common/state/protocol/common/errors.js +0 -10
- package/vscode/src/vs/platform/agentHost/common/state/sessionTransport.d.ts +0 -42
- package/vscode/src/vs/platform/agentHost/common/state/sessionTransport.js +0 -7
- package/vscode/src/vs/workbench/contrib/agentsVoice/common/agentsVoice.d.ts +0 -15
- package/vscode/src/vs/workbench/contrib/agentsVoice/common/agentsVoice.js +0 -15
- package/vscode/src/vs/workbench/contrib/agentsVoice/common/agentsVoiceColors.d.ts +0 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatForkActions.d.ts +0 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatForkActions.js +0 -243
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/openCopilotCliStateFileAction.d.ts +0 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/openCopilotCliStateFileAction.js +0 -77
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginActions.d.ts +0 -92
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginActions.js +0 -224
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostNewSessionFolderService.d.ts +0 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostNewSessionFolderService.js +0 -52
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsQuickAccess.d.ts +0 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsQuickAccess.js +0 -96
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/localAgentDisabledInputTipContribution.d.ts +0 -27
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/localAgentDisabledInputTipContribution.js +0 -152
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/automationsListWidget.d.ts +0 -87
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/automationsListWidget.js +0 -772
- package/vscode/src/vs/workbench/contrib/chat/browser/chatResponseFileChangesService.d.ts +0 -30
- package/vscode/src/vs/workbench/contrib/chat/browser/chatResponseFileChangesService.js +0 -29
- package/vscode/src/vs/workbench/contrib/chat/browser/enablementActions.d.ts +0 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/enablementActions.js +0 -40
- package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/media/planReviewFeedback.css +0 -160
- package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackEditorActions.d.ts +0 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackEditorActions.js +0 -123
- package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackEditorContribution.d.ts +0 -37
- package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackEditorContribution.js +0 -572
- package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/micCaptureService.d.ts +0 -125
- package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/micCaptureService.js +0 -399
- package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceSessionController.d.ts +0 -321
- package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceSessionController.js +0 -2117
- package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceToolDispatchService.d.ts +0 -57
- package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceToolDispatchService.js +0 -367
- package/vscode/src/vs/workbench/contrib/chat/common/automations/automation.d.ts +0 -78
- package/vscode/src/vs/workbench/contrib/chat/common/automations/automationDialogService.d.ts +0 -13
- package/vscode/src/vs/workbench/contrib/chat/common/automations/automationDialogService.service.d.ts +0 -11
- package/vscode/src/vs/workbench/contrib/chat/common/automations/automationDialogService.service.js +0 -6
- package/vscode/src/vs/workbench/contrib/chat/common/automations/automationRunner.service.d.ts +0 -16
- package/vscode/src/vs/workbench/contrib/chat/common/automations/automationRunner.service.js +0 -6
- package/vscode/src/vs/workbench/contrib/chat/common/automations/automationService.d.ts +0 -46
- package/vscode/src/vs/workbench/contrib/chat/common/automations/automationService.service.d.ts +0 -36
- package/vscode/src/vs/workbench/contrib/chat/common/automations/automationService.service.js +0 -6
- package/vscode/src/vs/workbench/contrib/chat/common/automations/automationsEnabled.d.ts +0 -12
- package/vscode/src/vs/workbench/contrib/chat/common/automations/automationsEnabled.js +0 -6
- package/vscode/src/vs/workbench/contrib/chat/common/automations/schedule.d.ts +0 -9
- package/vscode/src/vs/workbench/contrib/chat/common/automations/schedule.js +0 -6
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginEnablement.d.ts +0 -15
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginEnablement.js +0 -177
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/fileBackedInstalledPluginsStore.d.ts +0 -67
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/fileBackedInstalledPluginsStore.js +0 -195
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/marketplaceReference.d.ts +0 -65
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/marketplaceReference.js +0 -264
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.d.ts +0 -190
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.js +0 -865
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/strictKnownMarketplaces.d.ts +0 -31
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/strictKnownMarketplaces.js +0 -122
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers/commandFileWriteParser.d.ts +0 -24
- /package/vscode/src/vs/{workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers → platform/terminal/common/autoApprove}/sedFileWriteParser.js +0 -0
- /package/vscode/src/vs/{platform/agentHost/common/agentHost.config.contribution.d.ts → workbench/contrib/chat/browser/agentSessionsConfiguration.d.ts} +0 -0
|
@@ -1,15 +1,17 @@
|
|
|
1
1
|
|
|
2
2
|
import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
|
|
3
|
-
import { DeferredPromise, raceTimeout } from '@codingame/monaco-vscode-api/vscode/vs/base/common/async';
|
|
3
|
+
import { raceCancellationError, DeferredPromise, raceTimeout } from '@codingame/monaco-vscode-api/vscode/vs/base/common/async';
|
|
4
4
|
import { CancellationTokenSource, CancellationToken } from '@codingame/monaco-vscode-api/vscode/vs/base/common/cancellation';
|
|
5
5
|
import { toErrorMessage } from '@codingame/monaco-vscode-api/vscode/vs/base/common/errorMessage';
|
|
6
|
-
import {
|
|
6
|
+
import { BugIndicatingError, ErrorNoTelemetry } from '@codingame/monaco-vscode-api/vscode/vs/base/common/errors';
|
|
7
7
|
import { Emitter } from '@codingame/monaco-vscode-api/vscode/vs/base/common/event';
|
|
8
|
-
import {
|
|
8
|
+
import { Codicon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/codicons';
|
|
9
|
+
import { MarkdownString, createMarkdownCommandLink } from '@codingame/monaco-vscode-api/vscode/vs/base/common/htmlContent';
|
|
9
10
|
import { Iterable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/iterator';
|
|
10
|
-
import { Disposable, DisposableResourceMap, DisposableStore, MutableDisposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
|
|
11
|
+
import { Disposable, toDisposable, DisposableResourceMap, DisposableStore, MutableDisposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
|
|
11
12
|
import { ResourceMap } from '@codingame/monaco-vscode-api/vscode/vs/base/common/map';
|
|
12
13
|
import { revive } from '@codingame/monaco-vscode-api/vscode/vs/base/common/marshalling';
|
|
14
|
+
import { equals } from '@codingame/monaco-vscode-api/vscode/vs/base/common/objects';
|
|
13
15
|
import '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/index';
|
|
14
16
|
import { isEqual } from '@codingame/monaco-vscode-api/vscode/vs/base/common/resources';
|
|
15
17
|
import { StopWatch } from '@codingame/monaco-vscode-api/vscode/vs/base/common/stopwatch';
|
|
@@ -26,6 +28,7 @@ import { StorageScope, StorageTarget } from '@codingame/monaco-vscode-api/vscode
|
|
|
26
28
|
import { IStorageService } from '@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage.service';
|
|
27
29
|
import { ITelemetryService } from '@codingame/monaco-vscode-api/vscode/vs/platform/telemetry/common/telemetry.service';
|
|
28
30
|
import { IWorkspaceContextService } from '@codingame/monaco-vscode-api/vscode/vs/platform/workspace/common/workspace.service';
|
|
31
|
+
import { isVirtualWorkspace } from '@codingame/monaco-vscode-api/vscode/vs/platform/workspace/common/virtualWorkspace';
|
|
29
32
|
import { IExtensionService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensions/common/extensions.service';
|
|
30
33
|
import { IChatEntitlementService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/chat/common/chatEntitlementService.service';
|
|
31
34
|
import { IChatDebugService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatDebugService.service';
|
|
@@ -34,22 +37,23 @@ import { awaitStatsForSession } from '@codingame/monaco-vscode-api/vscode/vs/wor
|
|
|
34
37
|
import { clearChatMarks, markChat, ChatPerfMark } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatPerf';
|
|
35
38
|
import { IChatAgentService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/participants/chatAgents.service';
|
|
36
39
|
import { chatEditingSessionIsReady } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/editing/chatEditingService';
|
|
37
|
-
import { logChangesToStateModel, normalizeSerializableChatData, ChatModel,
|
|
40
|
+
import { logChangesToStateModel, normalizeSerializableChatData, ChatModel, getRestoredChatRequestSource, ChatRequestModel, ChatRequestRemovalReason, updateRanges, toChatHistoryContent } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/model/chatModel';
|
|
38
41
|
import { ChatModelStore } from '../model/chatModelStore.js';
|
|
39
42
|
import { ChatRequestTextPart, ChatRequestAgentPart, ChatRequestAgentSubcommandPart, ChatRequestSlashCommandPart, getPromptText, chatSubcommandLeader, chatAgentLeader } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/requestParser/chatParserTypes';
|
|
40
43
|
import { ChatRequestParser } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/requestParser/chatRequestParser';
|
|
41
44
|
import { ChatPendingRequestChangeEventName, ChatRequestQueueKind, ChatMcpServersStarting, ChatStopCancellationNoopEventName, ResponseModelState } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService/chatService';
|
|
42
45
|
import { ChatServiceTelemetry, ChatRequestTelemetry } from './chatServiceTelemetry.js';
|
|
43
|
-
import { isAgentHostTarget, localChatSessionType } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatSessionsService';
|
|
46
|
+
import { isAgentHostTarget, localChatSessionType, isTerminalCommandPrompt } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatSessionsService';
|
|
44
47
|
import { IChatSessionsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatSessionsService.service';
|
|
45
48
|
import { ChatSessionStore } from '../model/chatSessionStore.js';
|
|
46
49
|
import { IChatSlashCommandService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/participants/chatSlashCommands.service';
|
|
47
50
|
import { IChatTransferService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/model/chatTransferService.service';
|
|
48
51
|
import { LocalChatSessionUri, getChatSessionType, chatSessionResourceToId, isUntitledChatSession } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/model/chatUri';
|
|
49
52
|
import { isExplicitFileOrImageVariableEntry, IChatRequestVariableEntry, ChatRequestVariableSet, isPromptTextVariableEntry } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/attachments/chatVariableEntries';
|
|
50
|
-
import { ChatAgentLocation, ChatModeKind, ChatConfiguration } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
|
|
53
|
+
import { ChatAgentLocation, ChatModeKind, ChatConfiguration, CustomizationMigrationHintMode } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
|
|
51
54
|
import { ChatMessageRole } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/languageModels';
|
|
52
55
|
import { ILanguageModelsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/languageModels.service';
|
|
56
|
+
import { ModelSelectionReason } from '@codingame/monaco-vscode-katex-common/vscode/vs/workbench/contrib/chat/common/modelSelection';
|
|
53
57
|
import { ToolAndToolSetEnablementMap } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/tools/languageModelToolsService';
|
|
54
58
|
import { ILanguageModelToolsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/tools/languageModelToolsService.service';
|
|
55
59
|
import { ChatSessionOperationLog } from '../model/chatSessionOperationLog.js';
|
|
@@ -57,13 +61,16 @@ import { IPromptsService } from '@codingame/monaco-vscode-api/vscode/vs/workbenc
|
|
|
57
61
|
import { AGENT_DEBUG_LOG_FILE_LOGGING_ENABLED_SETTING, TROUBLESHOOT_COMMAND_NAME, COPILOT_SKILL_URI_SCHEME, TROUBLESHOOT_SKILL_PATH } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/promptTypes';
|
|
58
62
|
import { mergeHooks } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/hookSchema';
|
|
59
63
|
import { ComputeAutomaticInstructions } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/computeAutomaticInstructions';
|
|
64
|
+
import { CustomizationMigrationHintTarget } from '../promptSyntax/service/customizationMigrationService.js';
|
|
60
65
|
import { findLast } from '@codingame/monaco-vscode-api/vscode/vs/base/common/arraysFind';
|
|
61
66
|
import { ChatMode } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatModes';
|
|
67
|
+
import { getCustomizationMigrationHintDismissedStorageKey, AICustomizationManagementSection, AICustomizationManagementCommands } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService';
|
|
62
68
|
import { derived } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/derived';
|
|
63
69
|
import { autorun } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/reactions/autorun';
|
|
64
70
|
import { observableValue } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/observableValue';
|
|
65
71
|
|
|
66
72
|
const serializedChatKey = "interactive.sessions";
|
|
73
|
+
const customizationMigrationHintShownStateKey = "customizationMigrationHintShown";
|
|
67
74
|
function hasDraftInput(model) {
|
|
68
75
|
const state = model.inputModel.state.get();
|
|
69
76
|
if (!state) {
|
|
@@ -114,6 +121,28 @@ let CancellableRequest = class CancellableRequest {
|
|
|
114
121
|
CancellableRequest = ( __decorate([( __param(4, ILanguageModelToolsService))], CancellableRequest));
|
|
115
122
|
const EMPTY_REFERENCES = ( Object.freeze([]));
|
|
116
123
|
const EMPTY_TOOL_ENABLEMENT_MAP = ToolAndToolSetEnablementMap.fromEntries([]);
|
|
124
|
+
function backfillRestoredPickerState(stateToApply, savedState, defaultAgentModeId) {
|
|
125
|
+
if (!stateToApply || !savedState) {
|
|
126
|
+
return stateToApply;
|
|
127
|
+
}
|
|
128
|
+
const mode = (stateToApply.mode.id === defaultAgentModeId && savedState.mode.id !== defaultAgentModeId) ? savedState.mode : stateToApply.mode;
|
|
129
|
+
if (mode === stateToApply.mode) {
|
|
130
|
+
return stateToApply;
|
|
131
|
+
}
|
|
132
|
+
return {
|
|
133
|
+
...stateToApply,
|
|
134
|
+
mode
|
|
135
|
+
};
|
|
136
|
+
}
|
|
137
|
+
function backfillTransferredModel(transferredState, historyModel) {
|
|
138
|
+
if (!transferredState || transferredState.selectedModel || !historyModel) {
|
|
139
|
+
return transferredState;
|
|
140
|
+
}
|
|
141
|
+
return {
|
|
142
|
+
...transferredState,
|
|
143
|
+
selectedModel: historyModel
|
|
144
|
+
};
|
|
145
|
+
}
|
|
117
146
|
let ChatService = class ChatService extends Disposable {
|
|
118
147
|
get transferredSessionResource() {
|
|
119
148
|
return this._transferredSessionResource;
|
|
@@ -127,6 +156,17 @@ let ChatService = class ChatService extends Disposable {
|
|
|
127
156
|
waitForModelDisposals() {
|
|
128
157
|
return this._sessionModels.waitForModelDisposals();
|
|
129
158
|
}
|
|
159
|
+
registerCustomizationMigrationHintProvider(provider) {
|
|
160
|
+
if (this._customizationMigrationHintProvider) {
|
|
161
|
+
throw ( new BugIndicatingError("A customization migration hint provider is already registered"));
|
|
162
|
+
}
|
|
163
|
+
this._customizationMigrationHintProvider = provider;
|
|
164
|
+
return toDisposable(() => {
|
|
165
|
+
if (this._customizationMigrationHintProvider === provider) {
|
|
166
|
+
this._customizationMigrationHintProvider = undefined;
|
|
167
|
+
}
|
|
168
|
+
});
|
|
169
|
+
}
|
|
130
170
|
get isEmptyWindow() {
|
|
131
171
|
const workspace = this.workspaceContextService.getWorkspace();
|
|
132
172
|
return !workspace.configuration && workspace.folders.length === 0;
|
|
@@ -168,6 +208,7 @@ let ChatService = class ChatService extends Disposable {
|
|
|
168
208
|
this.chatDebugService = chatDebugService;
|
|
169
209
|
this._pendingRequests = this._register(( new DisposableResourceMap()));
|
|
170
210
|
this._queuedRequestDeferreds = ( new Map());
|
|
211
|
+
this._syntheticPendingRequests = ( new WeakSet());
|
|
171
212
|
this._inFlightUntitledMaterializations = ( new ResourceMap());
|
|
172
213
|
this._saveModelsEnabled = true;
|
|
173
214
|
this._onDidSubmitRequest = this._register(( new Emitter()));
|
|
@@ -203,7 +244,7 @@ let ChatService = class ChatService extends Disposable {
|
|
|
203
244
|
);
|
|
204
245
|
await this._chatSessionStore.storeSessions([model]);
|
|
205
246
|
}
|
|
206
|
-
} else if (!localSessionId && (model.getRequests().length > 0 || hasDraftInput(model))) {
|
|
247
|
+
} else if (!localSessionId && this.shouldStoreExternalSession(model) && (model.getRequests().length > 0 || hasDraftInput(model))) {
|
|
207
248
|
logChangesToStateModel(
|
|
208
249
|
model.inputModel,
|
|
209
250
|
`disposing external session ${model.sessionResource} with requests or draft input, storing metadata to storage`,
|
|
@@ -218,6 +259,8 @@ let ChatService = class ChatService extends Disposable {
|
|
|
218
259
|
this._register(this._sessionModels.onDidDisposeModel(model => {
|
|
219
260
|
clearChatMarks(model.sessionResource);
|
|
220
261
|
this.chatDebugService.endSession(model.sessionResource);
|
|
262
|
+
this._sessionFollowupCancelTokens.get(model.sessionResource)?.cancel();
|
|
263
|
+
this._sessionFollowupCancelTokens.deleteAndDispose(model.sessionResource);
|
|
221
264
|
this.chatSessionService.clearMaterializedSessionResource(model.sessionResource);
|
|
222
265
|
this._onDidDisposeSession.fire({
|
|
223
266
|
sessionResources: [model.sessionResource],
|
|
@@ -242,6 +285,15 @@ let ChatService = class ChatService extends Disposable {
|
|
|
242
285
|
get editingSessions() {
|
|
243
286
|
return ( [...( this._sessionModels.values())].map(v => v.editingSession)).filter(isDefined);
|
|
244
287
|
}
|
|
288
|
+
getPendingRequestSessionTypes() {
|
|
289
|
+
const sessionTypes = ( new Set(Array.from(( this._inFlightUntitledMaterializations.keys()), getChatSessionType)));
|
|
290
|
+
for (const model of ( this._sessionModels.values())) {
|
|
291
|
+
if (model.requestInProgress.get()) {
|
|
292
|
+
sessionTypes.add(getChatSessionType(model.sessionResource));
|
|
293
|
+
}
|
|
294
|
+
}
|
|
295
|
+
return Array.from(sessionTypes);
|
|
296
|
+
}
|
|
245
297
|
isEnabled(location) {
|
|
246
298
|
return this.chatAgentService.getContributedDefaultAgent(location) !== undefined;
|
|
247
299
|
}
|
|
@@ -266,9 +318,7 @@ let ChatService = class ChatService extends Disposable {
|
|
|
266
318
|
return;
|
|
267
319
|
}
|
|
268
320
|
const liveLocalChats = Array.from(( this._sessionModels.values())).filter(session => this.shouldStoreSession(session));
|
|
269
|
-
const liveNonLocalChats = Array.from(( this._sessionModels.values())).filter(
|
|
270
|
-
session => !LocalChatSessionUri.parseLocalSessionId(session.sessionResource)
|
|
271
|
-
);
|
|
321
|
+
const liveNonLocalChats = Array.from(( this._sessionModels.values())).filter(session => this.shouldStoreExternalSession(session));
|
|
272
322
|
this._chatSessionStore.updateAndFlushIndexSync(liveLocalChats, liveNonLocalChats);
|
|
273
323
|
this._chatSessionStore.storeSessions(liveLocalChats);
|
|
274
324
|
this._chatSessionStore.storeSessionsMetadataOnly(liveNonLocalChats);
|
|
@@ -282,6 +332,12 @@ let ChatService = class ChatService extends Disposable {
|
|
|
282
332
|
}
|
|
283
333
|
return session.initialLocation === ChatAgentLocation.Chat && !session.isImported;
|
|
284
334
|
}
|
|
335
|
+
shouldStoreExternalSession(session) {
|
|
336
|
+
if (LocalChatSessionUri.parseLocalSessionId(session.sessionResource)) {
|
|
337
|
+
return false;
|
|
338
|
+
}
|
|
339
|
+
return session.initialLocation === ChatAgentLocation.Chat;
|
|
340
|
+
}
|
|
285
341
|
notifyUserAction(action) {
|
|
286
342
|
this._chatServiceTelemetry.notifyUserAction(action);
|
|
287
343
|
this._onDidPerformUserAction.fire(action);
|
|
@@ -424,7 +480,8 @@ let ChatService = class ChatService extends Disposable {
|
|
|
424
480
|
location,
|
|
425
481
|
sessionResource,
|
|
426
482
|
canUseTools: options?.canUseTools ?? true,
|
|
427
|
-
disableBackgroundKeepAlive: options?.disableBackgroundKeepAlive
|
|
483
|
+
disableBackgroundKeepAlive: options?.disableBackgroundKeepAlive,
|
|
484
|
+
sessionTypeSelectionReason: options?.sessionTypeSelectionReason
|
|
428
485
|
}, options?.debugOwner ?? "ChatService#startNewLocalSession");
|
|
429
486
|
}
|
|
430
487
|
_startSession(props) {
|
|
@@ -435,14 +492,18 @@ let ChatService = class ChatService extends Disposable {
|
|
|
435
492
|
canUseTools,
|
|
436
493
|
transferEditingSession,
|
|
437
494
|
disableBackgroundKeepAlive,
|
|
438
|
-
inputState
|
|
495
|
+
inputState,
|
|
496
|
+
isReadOnly,
|
|
497
|
+
sessionTypeSelectionReason
|
|
439
498
|
} = props;
|
|
440
499
|
const model = this.instantiationService.createInstance(ChatModel, initialData, {
|
|
441
500
|
initialLocation: location,
|
|
442
501
|
canUseTools,
|
|
443
502
|
resource: sessionResource,
|
|
444
503
|
disableBackgroundKeepAlive,
|
|
445
|
-
inputState
|
|
504
|
+
inputState,
|
|
505
|
+
isReadOnly,
|
|
506
|
+
sessionTypeSelectionReason
|
|
446
507
|
});
|
|
447
508
|
if (location === ChatAgentLocation.Chat) {
|
|
448
509
|
model.startEditingSession(true, transferEditingSession);
|
|
@@ -515,7 +576,7 @@ let ChatService = class ChatService extends Disposable {
|
|
|
515
576
|
}
|
|
516
577
|
return this._sessionModels.get(sessionResource)?.title ?? this._chatSessionStore.getMetadataForSessionSync(sessionResource)?.title;
|
|
517
578
|
}
|
|
518
|
-
loadSessionFromData(data, debugOwner) {
|
|
579
|
+
loadSessionFromData(data, debugOwner, sessionTypeSelectionReason) {
|
|
519
580
|
const sessionId = data.sessionId ?? generateUuid();
|
|
520
581
|
const sessionResource = LocalChatSessionUri.forSession(sessionId);
|
|
521
582
|
return this._sessionModels.acquireOrCreate({
|
|
@@ -525,27 +586,34 @@ let ChatService = class ChatService extends Disposable {
|
|
|
525
586
|
},
|
|
526
587
|
location: data.initialLocation ?? ChatAgentLocation.Chat,
|
|
527
588
|
sessionResource,
|
|
528
|
-
canUseTools: true
|
|
589
|
+
canUseTools: true,
|
|
590
|
+
sessionTypeSelectionReason
|
|
529
591
|
}, debugOwner ?? "ChatService#loadSessionFromData");
|
|
530
592
|
}
|
|
531
|
-
async acquireOrLoadSession(sessionResource, location, token, debugOwner) {
|
|
593
|
+
async acquireOrLoadSession(sessionResource, location, token, debugOwner, sessionTypeSelectionReason) {
|
|
532
594
|
if (LocalChatSessionUri.isLocalSession(sessionResource)) {
|
|
533
595
|
return this.acquireOrRestoreLocalSession(sessionResource, debugOwner);
|
|
534
596
|
} else {
|
|
535
|
-
return this.loadRemoteSession(sessionResource, location, token, debugOwner);
|
|
597
|
+
return this.loadRemoteSession(sessionResource, location, token, debugOwner, sessionTypeSelectionReason);
|
|
536
598
|
}
|
|
537
599
|
}
|
|
538
|
-
async loadRemoteSession(sessionResource, location, token, debugOwner) {
|
|
600
|
+
async loadRemoteSession(sessionResource, location, token, debugOwner, sessionTypeSelectionReason) {
|
|
601
|
+
this.trace("loadRemoteSession", `start ${( sessionResource.toString())}`);
|
|
539
602
|
{
|
|
540
603
|
const existingRef = this.acquireExistingSession(sessionResource, debugOwner);
|
|
541
604
|
if (existingRef) {
|
|
605
|
+
this.trace("loadRemoteSession", `reused existing model for ${( sessionResource.toString())}`);
|
|
542
606
|
return existingRef;
|
|
543
607
|
}
|
|
544
608
|
}
|
|
545
|
-
if (!(await
|
|
609
|
+
if (!(await raceCancellationError(
|
|
610
|
+
this.chatSessionService.canResolveChatSession(getChatSessionType(sessionResource)),
|
|
611
|
+
token
|
|
612
|
+
))) {
|
|
546
613
|
return undefined;
|
|
547
614
|
}
|
|
548
615
|
const providedSession = await this.chatSessionService.getOrCreateChatSession(sessionResource, token);
|
|
616
|
+
this.trace("loadRemoteSession", `session content resolved for ${( sessionResource.toString())} with ${providedSession.history.length} history item(s)`);
|
|
549
617
|
{
|
|
550
618
|
const existingRef = this.acquireExistingSession(sessionResource, debugOwner);
|
|
551
619
|
if (existingRef) {
|
|
@@ -578,11 +646,15 @@ let ChatService = class ChatService extends Disposable {
|
|
|
578
646
|
const modelMetadata = modelId ? this.languageModelsService.lookupLanguageModel(modelId) : undefined;
|
|
579
647
|
const storedModelConfiguration = storedInputState?.selectedModel?.modelConfiguration ?? storedInputState?.modelConfiguration;
|
|
580
648
|
const modelConfiguration = storedInputState?.selectedModel?.identifier === modelId ? storedModelConfiguration : undefined;
|
|
649
|
+
const storedSelectedModel = storedInputState?.selectedModel;
|
|
581
650
|
const selectedModel = modelId && modelMetadata ? {
|
|
582
651
|
identifier: modelId,
|
|
583
652
|
metadata: modelMetadata,
|
|
584
653
|
modelConfiguration
|
|
585
|
-
} :
|
|
654
|
+
} : (modelId && storedSelectedModel && storedSelectedModel.identifier === modelId ? {
|
|
655
|
+
...storedSelectedModel,
|
|
656
|
+
modelConfiguration
|
|
657
|
+
} : undefined);
|
|
586
658
|
historySelectedModel = selectedModel?.identifier;
|
|
587
659
|
historyDerivedModel = selectedModel;
|
|
588
660
|
initialData = {
|
|
@@ -613,14 +685,25 @@ let ChatService = class ChatService extends Disposable {
|
|
|
613
685
|
...storedInputState,
|
|
614
686
|
selectedModel: historyDerivedModel
|
|
615
687
|
} : undefined;
|
|
688
|
+
const transferredInputState = providedSession.transferredState?.inputState;
|
|
689
|
+
const stateToApply = transferredInputState ? backfillTransferredModel(transferredInputState, historyDerivedModel) : restoredDraft;
|
|
690
|
+
const inputState = backfillRestoredPickerState(stateToApply, storedInputState, ChatMode.Agent.id);
|
|
616
691
|
const modelRef = this._sessionModels.acquireOrCreate({
|
|
617
692
|
initialData,
|
|
618
693
|
location,
|
|
619
694
|
sessionResource: sessionResource,
|
|
620
695
|
canUseTools: false,
|
|
621
696
|
transferEditingSession: providedSession.transferredState?.editingSession,
|
|
622
|
-
inputState
|
|
697
|
+
inputState,
|
|
698
|
+
isReadOnly: providedSession.isReadOnly,
|
|
699
|
+
sessionTypeSelectionReason
|
|
623
700
|
}, debugOwner ?? "ChatService#loadRemoteSession");
|
|
701
|
+
if (modelId && !historySelectedModel) {
|
|
702
|
+
modelRef.object.inputModel.setIntendedModel({
|
|
703
|
+
modelId,
|
|
704
|
+
reason: ModelSelectionReason.SessionRestore
|
|
705
|
+
});
|
|
706
|
+
}
|
|
624
707
|
logChangesToStateModel(
|
|
625
708
|
modelRef.object.inputModel,
|
|
626
709
|
`loadRemoteSession inputState source: session=${( sessionResource.toString())}, chatSessionType=${chatSessionType}, historyModelId=${modelId}, agentUri=${agentUri?.toString()}, historySelectedModel=${historySelectedModel}, transferredSelectedModel=${providedSession.transferredState?.inputState?.selectedModel?.identifier}, storedSelectedModel=${storedInputState?.selectedModel?.identifier}, finalSelectedModel=${modelRef.object.inputModel.state.get()?.selectedModel?.identifier}, hasTransferredInputState=${!!providedSession.transferredState?.inputState}, hasStoredInputState=${!!storedInputState}, hasInitialData=${!!initialData}`,
|
|
@@ -674,10 +757,21 @@ let ChatService = class ChatService extends Disposable {
|
|
|
674
757
|
};
|
|
675
758
|
};
|
|
676
759
|
let lastRequest;
|
|
760
|
+
let lastResponseCompletedAt;
|
|
761
|
+
const completeLastResponse = (finishedNow = false) => {
|
|
762
|
+
if (Number.isFinite(lastResponseCompletedAt)) {
|
|
763
|
+
lastRequest?.response?.complete(lastResponseCompletedAt);
|
|
764
|
+
} else if (finishedNow) {
|
|
765
|
+
lastRequest?.response?.complete();
|
|
766
|
+
} else {
|
|
767
|
+
lastRequest?.response?.completeWithoutTimestamp();
|
|
768
|
+
}
|
|
769
|
+
lastResponseCompletedAt = undefined;
|
|
770
|
+
};
|
|
677
771
|
for (const message of providedSession.history) {
|
|
678
772
|
if (message.type === "request") {
|
|
679
773
|
if (lastRequest) {
|
|
680
|
-
|
|
774
|
+
completeLastResponse();
|
|
681
775
|
}
|
|
682
776
|
const requestText = message.prompt;
|
|
683
777
|
const agent = message.participant ?
|
|
@@ -698,7 +792,8 @@ let ChatService = class ChatService extends Disposable {
|
|
|
698
792
|
undefined,
|
|
699
793
|
undefined,
|
|
700
794
|
false,
|
|
701
|
-
message.modelId, undefined, message.id, message.isSystemInitiated, message.systemInitiatedLabel
|
|
795
|
+
message.modelId, undefined, message.id, message.isSystemInitiated, message.systemInitiatedLabel, undefined,
|
|
796
|
+
message.isTerminalRequest, message.timestamp ?? null, message.isHidden, message.origin, message.isRequestHidden, getRestoredChatRequestSource(message, requestText));
|
|
702
797
|
} else {
|
|
703
798
|
if (lastRequest) {
|
|
704
799
|
for (const part of message.parts) {
|
|
@@ -714,12 +809,18 @@ let ChatService = class ChatService extends Disposable {
|
|
|
714
809
|
} : {})
|
|
715
810
|
});
|
|
716
811
|
}
|
|
812
|
+
if (lastRequest.response && typeof message.elapsedMs === "number") {
|
|
813
|
+
lastRequest.response.setElapsedMs(message.elapsedMs);
|
|
814
|
+
}
|
|
815
|
+
lastResponseCompletedAt = message.completedAt;
|
|
717
816
|
}
|
|
718
817
|
}
|
|
719
818
|
}
|
|
819
|
+
this.trace("loadRemoteSession", `history applied to model for ${( sessionResource.toString())}: ${model.getRequests().length} request(s)`);
|
|
720
820
|
const hasProgressStreaming = providedSession.progressObs && providedSession.interruptActiveResponseCallback;
|
|
721
821
|
if (hasProgressStreaming) {
|
|
722
822
|
let lastProgressLength = 0;
|
|
823
|
+
let wasComplete;
|
|
723
824
|
const cancellationListener = disposables.add(( new MutableDisposable()));
|
|
724
825
|
const createCancellationListener = token => {
|
|
725
826
|
return token.onCancellationRequested(() => {
|
|
@@ -732,6 +833,7 @@ let ChatService = class ChatService extends Disposable {
|
|
|
732
833
|
};
|
|
733
834
|
const trackNewCancellableRequest = () => {
|
|
734
835
|
const cancellableRequest = this.instantiationService.createInstance(CancellableRequest, ( new CancellationTokenSource()), undefined, undefined, undefined);
|
|
836
|
+
this._syntheticPendingRequests.add(cancellableRequest);
|
|
735
837
|
this._pendingRequests.set(model.sessionResource, cancellableRequest);
|
|
736
838
|
this.telemetryService.publicLog2(ChatPendingRequestChangeEventName, {
|
|
737
839
|
action: "add",
|
|
@@ -751,14 +853,33 @@ let ChatService = class ChatService extends Disposable {
|
|
|
751
853
|
if (providedSession.onDidStartServerRequest) {
|
|
752
854
|
disposables.add(providedSession.onDidStartServerRequest((
|
|
753
855
|
{
|
|
856
|
+
id,
|
|
754
857
|
prompt,
|
|
755
858
|
variableData,
|
|
859
|
+
timestamp,
|
|
756
860
|
isSystemInitiated,
|
|
757
|
-
|
|
861
|
+
requestSource,
|
|
862
|
+
isHidden,
|
|
863
|
+
isRequestHidden,
|
|
864
|
+
systemInitiatedLabel,
|
|
865
|
+
isTerminalRequest,
|
|
866
|
+
resume,
|
|
867
|
+
origin
|
|
758
868
|
}
|
|
759
869
|
) => {
|
|
870
|
+
if (resume) {
|
|
871
|
+
const request = model.getRequests().find(request => request.id === id);
|
|
872
|
+
if (!request?.response) {
|
|
873
|
+
throw ( new Error(`Cannot resume missing chat request: ${id}`));
|
|
874
|
+
}
|
|
875
|
+
request.response.reopen();
|
|
876
|
+
lastRequest = request;
|
|
877
|
+
lastProgressLength = 0;
|
|
878
|
+
ensureCancellationTracking();
|
|
879
|
+
return;
|
|
880
|
+
}
|
|
760
881
|
if (lastRequest?.response && !lastRequest.response.isComplete) {
|
|
761
|
-
|
|
882
|
+
completeLastResponse(true);
|
|
762
883
|
}
|
|
763
884
|
const agent = this.chatAgentService.getAgent(chatSessionType);
|
|
764
885
|
const parsedRequest = parseAgentHostHistoryPrompt(prompt, agent);
|
|
@@ -773,15 +894,51 @@ let ChatService = class ChatService extends Disposable {
|
|
|
773
894
|
undefined,
|
|
774
895
|
undefined,
|
|
775
896
|
undefined,
|
|
776
|
-
undefined,
|
|
777
|
-
|
|
897
|
+
id, isSystemInitiated, systemInitiatedLabel, undefined,
|
|
898
|
+
isTerminalRequest, timestamp, isHidden, origin, isRequestHidden, requestSource);
|
|
778
899
|
lastProgressLength = 0;
|
|
779
900
|
ensureCancellationTracking();
|
|
780
901
|
}));
|
|
781
902
|
}
|
|
903
|
+
if (!this._isServerManagedQueue(model.sessionResource)) {
|
|
904
|
+
let dispatchingImmediateSteer = false;
|
|
905
|
+
const canImmediatelyDispatch = () => {
|
|
906
|
+
if (!( model.getPendingRequests().some(r => r.kind === ChatRequestQueueKind.Steering))) {
|
|
907
|
+
return false;
|
|
908
|
+
}
|
|
909
|
+
const pending = this._pendingRequests.get(model.sessionResource);
|
|
910
|
+
return !pending || ( this._syntheticPendingRequests.has(pending));
|
|
911
|
+
};
|
|
912
|
+
disposables.add(model.onDidChangePendingRequests(() => {
|
|
913
|
+
if (dispatchingImmediateSteer || !canImmediatelyDispatch()) {
|
|
914
|
+
return;
|
|
915
|
+
}
|
|
916
|
+
dispatchingImmediateSteer = true;
|
|
917
|
+
queueMicrotask(() => {
|
|
918
|
+
dispatchingImmediateSteer = false;
|
|
919
|
+
if (this._sessionModels.get(model.sessionResource) !== model || !canImmediatelyDispatch()) {
|
|
920
|
+
return;
|
|
921
|
+
}
|
|
922
|
+
if (( this._pendingRequests.has(model.sessionResource))) {
|
|
923
|
+
this._pendingRequests.deleteAndDispose(model.sessionResource);
|
|
924
|
+
}
|
|
925
|
+
this.processNextPendingRequest(model);
|
|
926
|
+
this._pendingRequests.get(model.sessionResource)?.responseCompletePromise?.finally(() => {
|
|
927
|
+
if (this._sessionModels.get(model.sessionResource) === model && !(providedSession.isCompleteObs?.get() ?? false)) {
|
|
928
|
+
ensureCancellationTracking();
|
|
929
|
+
}
|
|
930
|
+
});
|
|
931
|
+
});
|
|
932
|
+
}));
|
|
933
|
+
}
|
|
782
934
|
disposables.add(autorun(reader => {
|
|
783
935
|
const progressArray = providedSession.progressObs?.read(reader) ?? [];
|
|
784
936
|
const isComplete = providedSession.isCompleteObs?.read(reader) ?? false;
|
|
937
|
+
const justCompleted = wasComplete === false && isComplete;
|
|
938
|
+
wasComplete = isComplete;
|
|
939
|
+
if (!isComplete) {
|
|
940
|
+
ensureCancellationTracking();
|
|
941
|
+
}
|
|
785
942
|
if (lastRequest && progressArray.length > lastProgressLength) {
|
|
786
943
|
const newProgress = progressArray.slice(lastProgressLength);
|
|
787
944
|
for (const progress of newProgress) {
|
|
@@ -792,12 +949,13 @@ let ChatService = class ChatService extends Disposable {
|
|
|
792
949
|
if (isComplete && lastRequest) {
|
|
793
950
|
this._pendingRequests.deleteAndDispose(model.sessionResource);
|
|
794
951
|
cancellationListener.clear();
|
|
795
|
-
|
|
952
|
+
completeLastResponse(justCompleted);
|
|
953
|
+
this.processPendingRequests(model.sessionResource);
|
|
796
954
|
}
|
|
797
955
|
}));
|
|
798
956
|
} else {
|
|
799
957
|
if (providedSession.isCompleteObs?.get()) {
|
|
800
|
-
|
|
958
|
+
completeLastResponse();
|
|
801
959
|
}
|
|
802
960
|
this.telemetryService.publicLog2(ChatPendingRequestChangeEventName, {
|
|
803
961
|
action: "notCancelable",
|
|
@@ -806,16 +964,19 @@ let ChatService = class ChatService extends Disposable {
|
|
|
806
964
|
});
|
|
807
965
|
if (lastRequest && model.editingSession) {
|
|
808
966
|
await chatEditingSessionIsReady(model.editingSession);
|
|
809
|
-
|
|
967
|
+
completeLastResponse();
|
|
810
968
|
}
|
|
811
969
|
}
|
|
812
970
|
return modelRef;
|
|
813
971
|
}
|
|
814
|
-
async resendRequest(request, options) {
|
|
972
|
+
async resendRequest(request, options, preserveRequestId = false) {
|
|
815
973
|
const model = this._sessionModels.get(request.session.sessionResource);
|
|
816
974
|
if (!model && model !== request.session) {
|
|
817
975
|
throw ( new Error(`Unknown session: ${request.session.sessionResource}`));
|
|
818
976
|
}
|
|
977
|
+
if (model.isReadOnly.get()) {
|
|
978
|
+
return;
|
|
979
|
+
}
|
|
819
980
|
const cts = this._pendingRequests.get(request.session.sessionResource);
|
|
820
981
|
if (cts) {
|
|
821
982
|
this.trace(
|
|
@@ -827,8 +988,16 @@ let ChatService = class ChatService extends Disposable {
|
|
|
827
988
|
const location = options?.location ?? model.initialLocation;
|
|
828
989
|
const attempt = options?.attempt ?? 0;
|
|
829
990
|
const enableCommandDetection = !options?.noCommandDetection;
|
|
830
|
-
const
|
|
831
|
-
|
|
991
|
+
const requestedAgentId = options?.agentId ?? options?.agentIdSilent;
|
|
992
|
+
const requestedAgent = requestedAgentId ? this.chatAgentService.getAgent(requestedAgentId) : undefined;
|
|
993
|
+
if (requestedAgentId && !requestedAgent) {
|
|
994
|
+
throw ( new Error("Unknown agent: " + requestedAgentId));
|
|
995
|
+
}
|
|
996
|
+
const defaultAgent = requestedAgent ?? this.chatAgentService.getDefaultAgent(location, options?.modeInfo?.kind);
|
|
997
|
+
const preservedRequest = preserveRequestId && request instanceof ChatRequestModel ? request : undefined;
|
|
998
|
+
if (!preservedRequest) {
|
|
999
|
+
model.removeRequest(request.id, ChatRequestRemovalReason.Resend);
|
|
1000
|
+
}
|
|
832
1001
|
const resendOptions = {
|
|
833
1002
|
...options,
|
|
834
1003
|
locationData: request.locationData,
|
|
@@ -842,7 +1011,9 @@ let ChatService = class ChatService extends Disposable {
|
|
|
842
1011
|
enableCommandDetection,
|
|
843
1012
|
defaultAgent,
|
|
844
1013
|
location,
|
|
845
|
-
resendOptions
|
|
1014
|
+
resendOptions,
|
|
1015
|
+
preservedRequest,
|
|
1016
|
+
preserveRequestId ? request.id : undefined
|
|
846
1017
|
).responseCompletePromise;
|
|
847
1018
|
}
|
|
848
1019
|
queuePendingRequest(model, sessionResource, request, options) {
|
|
@@ -861,6 +1032,7 @@ let ChatService = class ChatService extends Disposable {
|
|
|
861
1032
|
modelId: options.userSelectedModelId,
|
|
862
1033
|
userSelectedTools: options.userSelectedTools?.get(),
|
|
863
1034
|
isSystemInitiated: options.isSystemInitiated,
|
|
1035
|
+
isHiddenFromTranscript: options.hideFromTranscript,
|
|
864
1036
|
systemInitiatedLabel: options.systemInitiatedLabel,
|
|
865
1037
|
terminalExecutionId: options.terminalExecutionId
|
|
866
1038
|
}));
|
|
@@ -899,6 +1071,15 @@ let ChatService = class ChatService extends Disposable {
|
|
|
899
1071
|
if (!model) {
|
|
900
1072
|
throw ( new Error(`Unknown session: ${sessionResource}`));
|
|
901
1073
|
}
|
|
1074
|
+
if (model.isReadOnly.get()) {
|
|
1075
|
+
return {
|
|
1076
|
+
kind: "rejected",
|
|
1077
|
+
reason: "Session is read-only",
|
|
1078
|
+
...(newSessionResource ? {
|
|
1079
|
+
newSessionResource
|
|
1080
|
+
} : {})
|
|
1081
|
+
};
|
|
1082
|
+
}
|
|
902
1083
|
if (!model.hasRequests && isUntitledChatSession(sessionResource) && getChatSessionType(sessionResource) !== localChatSessionType) {
|
|
903
1084
|
const materialized = await this._materializeUntitledSession(sessionResource, request, options, model);
|
|
904
1085
|
if (materialized) {
|
|
@@ -907,6 +1088,13 @@ let ChatService = class ChatService extends Disposable {
|
|
|
907
1088
|
newSessionResource = materialized.newSessionResource;
|
|
908
1089
|
}
|
|
909
1090
|
}
|
|
1091
|
+
if (model.isReadOnly.get()) {
|
|
1092
|
+
return {
|
|
1093
|
+
kind: "rejected",
|
|
1094
|
+
reason: "Session is read-only",
|
|
1095
|
+
newSessionResource
|
|
1096
|
+
};
|
|
1097
|
+
}
|
|
910
1098
|
const hasPendingRequest = ( this._pendingRequests.has(sessionResource));
|
|
911
1099
|
if (options?.queue) {
|
|
912
1100
|
const queued = this.queuePendingRequest(model, sessionResource, request, options);
|
|
@@ -1017,7 +1205,13 @@ let ChatService = class ChatService extends Disposable {
|
|
|
1017
1205
|
return undefined;
|
|
1018
1206
|
}
|
|
1019
1207
|
this.chatSessionService.registerSessionResourceAlias(untitledResource, newItem.resource);
|
|
1020
|
-
const tempRef = await this.loadRemoteSession(
|
|
1208
|
+
const tempRef = await this.loadRemoteSession(
|
|
1209
|
+
newItem.resource,
|
|
1210
|
+
untitledModel.initialLocation,
|
|
1211
|
+
CancellationToken.None,
|
|
1212
|
+
undefined,
|
|
1213
|
+
untitledModel.sessionTypeSelectionReason
|
|
1214
|
+
);
|
|
1021
1215
|
const realModel = tempRef?.object;
|
|
1022
1216
|
if (!realModel) {
|
|
1023
1217
|
throw ( new Error(`Failed to load session for resource: ${newItem.resource}`));
|
|
@@ -1025,6 +1219,7 @@ let ChatService = class ChatService extends Disposable {
|
|
|
1025
1219
|
if (initialSessionOptions) {
|
|
1026
1220
|
this.chatSessionService.updateSessionOptions(realModel.sessionResource, initialSessionOptions);
|
|
1027
1221
|
}
|
|
1222
|
+
realModel.inputModel.setIntendedModel(untitledModel.inputModel.intendedModel);
|
|
1028
1223
|
this.chatSessionService.setMaterializedSessionResource(untitledResource, newItem.resource);
|
|
1029
1224
|
materialized.complete(newItem.resource);
|
|
1030
1225
|
this.info(
|
|
@@ -1098,22 +1293,34 @@ let ChatService = class ChatService extends Disposable {
|
|
|
1098
1293
|
enableCommandDetection,
|
|
1099
1294
|
defaultAgent,
|
|
1100
1295
|
location,
|
|
1101
|
-
options
|
|
1296
|
+
options,
|
|
1297
|
+
preservedRequest,
|
|
1298
|
+
requestId
|
|
1102
1299
|
) {
|
|
1103
1300
|
const followupsCancelToken = this.refreshFollowupsCancellationToken(sessionResource);
|
|
1104
1301
|
let request;
|
|
1105
1302
|
const agentPart = parsedRequest.parts.find(r => r instanceof ChatRequestAgentPart);
|
|
1106
1303
|
const agentSlashCommandPart = parsedRequest.parts.find(r => r instanceof ChatRequestAgentSubcommandPart);
|
|
1107
1304
|
const commandPart = parsedRequest.parts.find(r => r instanceof ChatRequestSlashCommandPart);
|
|
1108
|
-
const requests =
|
|
1305
|
+
const requests = model.getRequests().filter(request => request !== preservedRequest);
|
|
1306
|
+
const isTerminalCommand = isTerminalCommandPrompt(
|
|
1307
|
+
parsedRequest.text,
|
|
1308
|
+
this.chatSessionService.getCapabilitiesForSessionType(getChatSessionType(sessionResource))?.terminalCommandPrefix
|
|
1309
|
+
);
|
|
1109
1310
|
const requestTelemetry = this.instantiationService.createInstance(ChatRequestTelemetry, {
|
|
1110
1311
|
agent: agentPart?.agent ?? defaultAgent,
|
|
1111
1312
|
agentSlashCommandPart,
|
|
1112
1313
|
commandPart,
|
|
1113
1314
|
sessionResource: model.sessionResource,
|
|
1315
|
+
requestIndex: requests.length,
|
|
1316
|
+
sessionTypeSelectionReason: model.sessionTypeSelectionReason,
|
|
1114
1317
|
location: model.initialLocation,
|
|
1115
1318
|
options,
|
|
1116
|
-
enableCommandDetection
|
|
1319
|
+
enableCommandDetection,
|
|
1320
|
+
isVirtualWorkspace: isVirtualWorkspace(this.workspaceContextService.getWorkspace()),
|
|
1321
|
+
settingDefaultToCopilotHarness: this.configurationService.getValue(ChatConfiguration.DefaultToCopilotHarness) ?? false,
|
|
1322
|
+
settingPreferCopilotHarness: this.configurationService.getValue(ChatConfiguration.EditorPreferCopilotHarness) ?? false,
|
|
1323
|
+
settingLocalAgentEnabled: this.configurationService.getValue(ChatConfiguration.EditorLocalAgentEnabled) ?? true
|
|
1117
1324
|
});
|
|
1118
1325
|
let gotProgress = false;
|
|
1119
1326
|
const requestType = commandPart ? "slashCommand" : "string";
|
|
@@ -1176,7 +1383,7 @@ let ChatService = class ChatService extends Disposable {
|
|
|
1176
1383
|
model.acceptResponseProgress(request, {
|
|
1177
1384
|
kind: "markdownContent",
|
|
1178
1385
|
content: ( new MarkdownString(( localize(
|
|
1179
|
-
|
|
1386
|
+
10242,
|
|
1180
1387
|
"The `{0}` skill requires `{1}` to be enabled. After enabling, reload the window to apply. [Enable in Settings](command:workbench.action.openSettings?{2})",
|
|
1181
1388
|
TROUBLESHOOT_COMMAND_NAME,
|
|
1182
1389
|
AGENT_DEBUG_LOG_FILE_LOGGING_ENABLED_SETTING,
|
|
@@ -1223,6 +1430,37 @@ let ChatService = class ChatService extends Disposable {
|
|
|
1223
1430
|
hasDisabledClaudeHooks
|
|
1224
1431
|
};
|
|
1225
1432
|
};
|
|
1433
|
+
const collectCustomizationMigrationHint = async () => {
|
|
1434
|
+
const sessionType = getChatSessionType(sessionResource);
|
|
1435
|
+
const hintMode = this.configurationService.getValue(ChatConfiguration.ChatCustomizationsMigrationHint);
|
|
1436
|
+
const hintAlreadyShown = model.inputModel.state.get()?.contrib[customizationMigrationHintShownStateKey] === true;
|
|
1437
|
+
const showOnce = hintMode === CustomizationMigrationHintMode.Once;
|
|
1438
|
+
if (!isAgentHostTarget(sessionType) || (!showOnce && hintMode !== CustomizationMigrationHintMode.Always) || this.storageService.getBoolean(
|
|
1439
|
+
getCustomizationMigrationHintDismissedStorageKey(sessionType),
|
|
1440
|
+
StorageScope.WORKSPACE
|
|
1441
|
+
) || (showOnce && hintAlreadyShown) || !this._customizationMigrationHintProvider) {
|
|
1442
|
+
return undefined;
|
|
1443
|
+
}
|
|
1444
|
+
try {
|
|
1445
|
+
const hint = await this._customizationMigrationHintProvider(sessionResource, token);
|
|
1446
|
+
if (hint && !token.isCancellationRequested) {
|
|
1447
|
+
for (const {
|
|
1448
|
+
type,
|
|
1449
|
+
count
|
|
1450
|
+
} of hint.counts) {
|
|
1451
|
+
this.telemetryService.publicLog2("chat.customizationMigrationAssessment", {
|
|
1452
|
+
category: type,
|
|
1453
|
+
count
|
|
1454
|
+
});
|
|
1455
|
+
}
|
|
1456
|
+
return hint;
|
|
1457
|
+
}
|
|
1458
|
+
return undefined;
|
|
1459
|
+
} catch (error) {
|
|
1460
|
+
this.logService.warn("[ChatService] Failed to compute customization migration hint:", error);
|
|
1461
|
+
return undefined;
|
|
1462
|
+
}
|
|
1463
|
+
};
|
|
1226
1464
|
const collectInstructions = async () => {
|
|
1227
1465
|
const ctx = options?.instructionContext;
|
|
1228
1466
|
if (!ctx) {
|
|
@@ -1279,7 +1517,7 @@ let ChatService = class ChatService extends Disposable {
|
|
|
1279
1517
|
const initVariableData = {
|
|
1280
1518
|
variables: []
|
|
1281
1519
|
};
|
|
1282
|
-
request = model.addRequest(
|
|
1520
|
+
request = preservedRequest ?? model.addRequest(
|
|
1283
1521
|
parsedRequest,
|
|
1284
1522
|
initVariableData,
|
|
1285
1523
|
attempt,
|
|
@@ -1292,14 +1530,20 @@ let ChatService = class ChatService extends Disposable {
|
|
|
1292
1530
|
undefined,
|
|
1293
1531
|
options?.userSelectedModelId,
|
|
1294
1532
|
options?.userSelectedTools?.get(),
|
|
1295
|
-
|
|
1533
|
+
requestId,
|
|
1296
1534
|
options?.isSystemInitiated,
|
|
1297
1535
|
options?.systemInitiatedLabel,
|
|
1298
|
-
options?.terminalExecutionId
|
|
1536
|
+
options?.terminalExecutionId,
|
|
1537
|
+
isTerminalCommand,
|
|
1538
|
+
undefined,
|
|
1539
|
+
options?.hideFromTranscript
|
|
1299
1540
|
);
|
|
1541
|
+
preservedRequest?.response?.reopen();
|
|
1300
1542
|
const thisRequest = request;
|
|
1301
1543
|
completeResponseCreated();
|
|
1302
|
-
const [hooksResult, instructionEntries] = await Promise.all(
|
|
1544
|
+
const [hooksResult, instructionEntries, customizationMigrationHint] = await Promise.all(
|
|
1545
|
+
[collectHooks(), collectInstructions(), collectCustomizationMigrationHint()]
|
|
1546
|
+
);
|
|
1303
1547
|
const collectedHooks = hooksResult.hooks;
|
|
1304
1548
|
const hasDisabledClaudeHooks = hooksResult.hasDisabledClaudeHooks;
|
|
1305
1549
|
const allContext = this.prepareContext(request.attachedContext);
|
|
@@ -1337,6 +1581,7 @@ let ChatService = class ChatService extends Disposable {
|
|
|
1337
1581
|
acceptedConfirmationData: options?.acceptedConfirmationData,
|
|
1338
1582
|
rejectedConfirmationData: options?.rejectedConfirmationData,
|
|
1339
1583
|
agentHostSessionConfig: options?.agentHostSessionConfig,
|
|
1584
|
+
metadata: options?.metadata,
|
|
1340
1585
|
userSelectedModelId: options?.userSelectedModelId,
|
|
1341
1586
|
modelConfiguration: options?.userSelectedModelConfiguration ?? (options?.userSelectedModelId ? this.languageModelsService.getModelConfiguration(options.userSelectedModelId) : undefined),
|
|
1342
1587
|
userSelectedTools: options?.userSelectedTools?.get(),
|
|
@@ -1345,7 +1590,9 @@ let ChatService = class ChatService extends Disposable {
|
|
|
1345
1590
|
editedFileEvents: thisRequest.editedFileEvents,
|
|
1346
1591
|
hooks: collectedHooks,
|
|
1347
1592
|
hasHooksEnabled: !!collectedHooks && ( ( Object.values(collectedHooks)).some(arr => arr.length > 0)),
|
|
1593
|
+
isVoiceModeInput: options?.isVoiceModeInput,
|
|
1348
1594
|
isSystemInitiated: options?.isSystemInitiated,
|
|
1595
|
+
hideFromTranscript: options?.hideFromTranscript,
|
|
1349
1596
|
workingDirectory: model.workingDirectory
|
|
1350
1597
|
};
|
|
1351
1598
|
let isInitialTools = true;
|
|
@@ -1362,7 +1609,7 @@ let ChatService = class ChatService extends Disposable {
|
|
|
1362
1609
|
}));
|
|
1363
1610
|
return agentRequest;
|
|
1364
1611
|
};
|
|
1365
|
-
if (this.configurationService.getValue("chat.detectParticipant.enabled") !== false && this.chatAgentService.hasChatParticipantDetectionProviders() && !agentPart && !commandPart && !agentSlashCommandPart && enableCommandDetection && location !== ChatAgentLocation.EditorInline && options?.modeInfo?.kind !== ChatModeKind.Agent && options?.modeInfo?.kind !== ChatModeKind.Edit && !options?.agentIdSilent) {
|
|
1612
|
+
if (this.configurationService.getValue("chat.detectParticipant.enabled") !== false && this.chatAgentService.hasChatParticipantDetectionProviders() && !agentPart && !commandPart && !agentSlashCommandPart && enableCommandDetection && location !== ChatAgentLocation.EditorInline && options?.modeInfo?.kind !== ChatModeKind.Agent && options?.modeInfo?.kind !== ChatModeKind.Edit && !options?.agentId && !options?.agentIdSilent) {
|
|
1366
1613
|
const defaultAgentHistory = this.getHistoryEntriesFromModel(requests, location, defaultAgent.id);
|
|
1367
1614
|
const chatAgentRequest = buildAgentRequest(defaultAgent, undefined, enableCommandDetection, false);
|
|
1368
1615
|
const result = await this.chatAgentService.detectAgentOrCommand(chatAgentRequest, defaultAgentHistory, {
|
|
@@ -1398,6 +1645,51 @@ let ChatService = class ChatService extends Disposable {
|
|
|
1398
1645
|
});
|
|
1399
1646
|
}
|
|
1400
1647
|
}
|
|
1648
|
+
const showCustomizationMigrationHint = hint => {
|
|
1649
|
+
const hintAlreadyShown = model.inputModel.state.get()?.contrib[customizationMigrationHintShownStateKey] === true;
|
|
1650
|
+
const hintMode = this.configurationService.getValue(ChatConfiguration.ChatCustomizationsMigrationHint);
|
|
1651
|
+
const showOnce = hintMode === CustomizationMigrationHintMode.Once;
|
|
1652
|
+
if (!hint || token.isCancellationRequested || (showOnce && hintAlreadyShown)) {
|
|
1653
|
+
return;
|
|
1654
|
+
}
|
|
1655
|
+
if (showOnce) {
|
|
1656
|
+
model.inputModel.setState({
|
|
1657
|
+
contrib: {
|
|
1658
|
+
...model.inputModel.state.get()?.contrib,
|
|
1659
|
+
[customizationMigrationHintShownStateKey]: true
|
|
1660
|
+
}
|
|
1661
|
+
});
|
|
1662
|
+
}
|
|
1663
|
+
const reviewArguments = hint.target === CustomizationMigrationHintTarget.FileMigrations ? [{
|
|
1664
|
+
migration: true
|
|
1665
|
+
}] : hint.target === CustomizationMigrationHintTarget.McpServers ? [{
|
|
1666
|
+
section: AICustomizationManagementSection.McpServers
|
|
1667
|
+
}] : undefined;
|
|
1668
|
+
const reviewLink = createMarkdownCommandLink({
|
|
1669
|
+
id: AICustomizationManagementCommands.OpenEditor,
|
|
1670
|
+
text: ( localize(10243, "Review customizations")),
|
|
1671
|
+
tooltip: ( localize(10244, "Open Chat Customizations")),
|
|
1672
|
+
arguments: reviewArguments
|
|
1673
|
+
});
|
|
1674
|
+
const dismissLink = createMarkdownCommandLink({
|
|
1675
|
+
id: AICustomizationManagementCommands.DismissMigrationHint,
|
|
1676
|
+
text: ( localize(10245, "Hide for this workspace")),
|
|
1677
|
+
tooltip: ( localize(10246, "Stop Showing Migration Hints for This Harness"))
|
|
1678
|
+
});
|
|
1679
|
+
progressCallback([{
|
|
1680
|
+
kind: "systemNotification",
|
|
1681
|
+
content: ( new MarkdownString(( localize(10247, "*{0} {1} | {2}*", hint.message, reviewLink, dismissLink)), {
|
|
1682
|
+
isTrusted: {
|
|
1683
|
+
enabledCommands: [
|
|
1684
|
+
AICustomizationManagementCommands.OpenEditor,
|
|
1685
|
+
AICustomizationManagementCommands.DismissMigrationHint
|
|
1686
|
+
]
|
|
1687
|
+
}
|
|
1688
|
+
})),
|
|
1689
|
+
icon: Codicon.info
|
|
1690
|
+
}]);
|
|
1691
|
+
};
|
|
1692
|
+
showCustomizationMigrationHint(customizationMigrationHint);
|
|
1401
1693
|
const disabledClaudeHooksDismissedKey = "chat.disabledClaudeHooks.notification";
|
|
1402
1694
|
if (hasDisabledClaudeHooks && !this.storageService.getBoolean(disabledClaudeHooksDismissedKey, StorageScope.WORKSPACE)) {
|
|
1403
1695
|
this.storageService.store(
|
|
@@ -1481,7 +1773,7 @@ let ChatService = class ChatService extends Disposable {
|
|
|
1481
1773
|
);
|
|
1482
1774
|
rawResult = {
|
|
1483
1775
|
errorDetails: {
|
|
1484
|
-
message: ( localize(
|
|
1776
|
+
message: ( localize(10248, "Provider returned null response"))
|
|
1485
1777
|
}
|
|
1486
1778
|
};
|
|
1487
1779
|
}
|
|
@@ -1510,7 +1802,12 @@ let ChatService = class ChatService extends Disposable {
|
|
|
1510
1802
|
agentOrCommandFollowups.then(followups => {
|
|
1511
1803
|
model.setFollowups(completedRequest, followups);
|
|
1512
1804
|
const commandForTelemetry = agentSlashCommandPart ? agentSlashCommandPart.command.name : commandPart?.slashCommand.command;
|
|
1513
|
-
this._chatServiceTelemetry.retrievedFollowups(
|
|
1805
|
+
this._chatServiceTelemetry.retrievedFollowups(
|
|
1806
|
+
model.sessionResource,
|
|
1807
|
+
agentPart?.agent.id ?? "",
|
|
1808
|
+
commandForTelemetry,
|
|
1809
|
+
followups?.length ?? 0
|
|
1810
|
+
);
|
|
1514
1811
|
});
|
|
1515
1812
|
}
|
|
1516
1813
|
}
|
|
@@ -1568,7 +1865,8 @@ let ChatService = class ChatService extends Disposable {
|
|
|
1568
1865
|
}
|
|
1569
1866
|
this._onDidSubmitRequest.fire({
|
|
1570
1867
|
chatSessionResource: model.sessionResource,
|
|
1571
|
-
message: parsedRequest
|
|
1868
|
+
message: parsedRequest,
|
|
1869
|
+
attachedContext: options?.attachedContext
|
|
1572
1870
|
});
|
|
1573
1871
|
return {
|
|
1574
1872
|
responseCreatedPromise: responseCreated.p,
|
|
@@ -1582,7 +1880,7 @@ let ChatService = class ChatService extends Disposable {
|
|
|
1582
1880
|
}
|
|
1583
1881
|
}
|
|
1584
1882
|
_isServerManagedQueue(sessionResource) {
|
|
1585
|
-
return getChatSessionType(sessionResource)
|
|
1883
|
+
return this.chatSessionService.getChatSessionContribution(getChatSessionType(sessionResource))?.agentHostProviderId !== undefined;
|
|
1586
1884
|
}
|
|
1587
1885
|
processNextPendingRequest(model) {
|
|
1588
1886
|
if (this._isServerManagedQueue(model.sessionResource)) {
|
|
@@ -1908,6 +2206,61 @@ let ChatService = class ChatService extends Disposable {
|
|
|
1908
2206
|
model.setPendingRequests(requests);
|
|
1909
2207
|
}
|
|
1910
2208
|
}
|
|
2209
|
+
syncPendingRequestsFromRemote(sessionResource, requests) {
|
|
2210
|
+
const model = this._sessionModels.get(sessionResource);
|
|
2211
|
+
if (!model) {
|
|
2212
|
+
return;
|
|
2213
|
+
}
|
|
2214
|
+
const existing = model.getPendingRequests();
|
|
2215
|
+
const existingById = ( new Map(( existing.map(request => [request.request.id, request]))));
|
|
2216
|
+
const reconciled = ( requests.map(remote => {
|
|
2217
|
+
const variableData = remote.variableData ?? {
|
|
2218
|
+
variables: []
|
|
2219
|
+
};
|
|
2220
|
+
const local = existingById.get(remote.id);
|
|
2221
|
+
if (local && local.request.message.text === remote.message && equals(local.request.variableData, variableData)) {
|
|
2222
|
+
return local.kind === remote.kind ? local : {
|
|
2223
|
+
...local,
|
|
2224
|
+
kind: remote.kind
|
|
2225
|
+
};
|
|
2226
|
+
}
|
|
2227
|
+
const parsedRequest = this.parseChatRequest(sessionResource, remote.message, model.initialLocation, undefined);
|
|
2228
|
+
const requestModel = ( new ChatRequestModel({
|
|
2229
|
+
session: model,
|
|
2230
|
+
message: parsedRequest,
|
|
2231
|
+
variableData,
|
|
2232
|
+
timestamp: remote.timestamp,
|
|
2233
|
+
attachedContext: variableData.variables.slice(),
|
|
2234
|
+
restoredId: remote.id
|
|
2235
|
+
}));
|
|
2236
|
+
return {
|
|
2237
|
+
request: requestModel,
|
|
2238
|
+
kind: remote.kind,
|
|
2239
|
+
sendOptions: local?.sendOptions ?? {}
|
|
2240
|
+
};
|
|
2241
|
+
}));
|
|
2242
|
+
if (existing.length === reconciled.length && reconciled.every((request, index) => existing[index] === request)) {
|
|
2243
|
+
return;
|
|
2244
|
+
}
|
|
2245
|
+
const reconciledIds = ( new Set(( reconciled.map(request => request.request.id))));
|
|
2246
|
+
model.replacePendingRequests(reconciled);
|
|
2247
|
+
for (const local of existing) {
|
|
2248
|
+
if (( reconciledIds.has(local.request.id))) {
|
|
2249
|
+
continue;
|
|
2250
|
+
}
|
|
2251
|
+
const deferred = this._queuedRequestDeferreds.get(local.request.id);
|
|
2252
|
+
if (deferred) {
|
|
2253
|
+
deferred.complete({
|
|
2254
|
+
kind: "rejected",
|
|
2255
|
+
reason: "Request was removed from queue"
|
|
2256
|
+
});
|
|
2257
|
+
this._queuedRequestDeferreds.delete(local.request.id);
|
|
2258
|
+
}
|
|
2259
|
+
}
|
|
2260
|
+
if (!( reconciled.some(request => request.kind === ChatRequestQueueKind.Steering))) {
|
|
2261
|
+
this._pendingRequests.get(sessionResource)?.resetYieldRequested();
|
|
2262
|
+
}
|
|
2263
|
+
}
|
|
1911
2264
|
async sendPendingRequestImmediately(sessionResource, requestId) {
|
|
1912
2265
|
const model = this._sessionModels.get(sessionResource);
|
|
1913
2266
|
if (!model) {
|
|
@@ -2015,7 +2368,7 @@ let ChatService = class ChatService extends Disposable {
|
|
|
2015
2368
|
};
|
|
2016
2369
|
ChatService = ( __decorate([( __param(0, IStorageService)), ( __param(1, ILogService)), ( __param(2, ITelemetryService)), ( __param(3, IExtensionService)), ( __param(4, IInstantiationService)), ( __param(5, IWorkspaceContextService)), ( __param(6, IChatSlashCommandService)), ( __param(7, IChatAgentService)), ( __param(8, IConfigurationService)), ( __param(9, IChatTransferService)), ( __param(10, IChatSessionsService)), ( __param(11, IMcpService)), ( __param(12, IPromptsService)), ( __param(13, IChatEntitlementService)), ( __param(14, ILanguageModelsService)), ( __param(15, IChatDebugService))], ChatService));
|
|
2017
2370
|
async function chatModelToChatDetail(model) {
|
|
2018
|
-
const title = model.title || ( localize(
|
|
2371
|
+
const title = model.title || ( localize(10249, "New Chat"));
|
|
2019
2372
|
return {
|
|
2020
2373
|
sessionResource: model.sessionResource,
|
|
2021
2374
|
title,
|
|
@@ -2028,4 +2381,4 @@ async function chatModelToChatDetail(model) {
|
|
|
2028
2381
|
};
|
|
2029
2382
|
}
|
|
2030
2383
|
|
|
2031
|
-
export { ChatService, chatModelToChatDetail };
|
|
2384
|
+
export { ChatService, backfillRestoredPickerState, backfillTransferredModel, chatModelToChatDetail };
|