diff --git a/extensions/copilot/package.json b/extensions/copilot/package.json index 5039b74b71b..bff54565efc 100644 --- a/extensions/copilot/package.json +++ b/extensions/copilot/package.json @@ -4610,6 +4610,14 @@ "advanced" ] }, + "github.copilot.chat.cli.sessionControllerForSessionsApp.enabled": { + "type": "boolean", + "default": false, + "markdownDescription": "%github.copilot.config.cli.sessionControllerForSessionsApp.enabled%", + "tags": [ + "advanced" + ] + }, "github.copilot.chat.cli.terminalLinks.enabled": { "type": "boolean", "default": true, diff --git a/extensions/copilot/package.nls.json b/extensions/copilot/package.nls.json index 5ed02879b3a..f16d4c849da 100644 --- a/extensions/copilot/package.nls.json +++ b/extensions/copilot/package.nls.json @@ -403,15 +403,16 @@ "github.copilot.config.tools.defaultToolsGrouped": "Group default tools in prompts.", "github.copilot.config.claudeAgent.enabled": "Enable Claude Agent sessions in VS Code. Start and resume agentic coding sessions powered by Anthropic's Claude Agent SDK directly in the editor. Uses your existing Copilot subscription.", "github.copilot.config.claudeAgent.allowDangerouslySkipPermissions": "Allow bypass permissions mode. Recommended only for sandboxes with no internet access.", - "github.copilot.config.cli.mcp.enabled": "Enable Model Context Protocol (MCP) server for Background Agents.", - "github.copilot.config.cli.branchSupport.enabled": "Enable branch support for Background Agents.", + "github.copilot.config.cli.mcp.enabled": "Enable Model Context Protocol (MCP) server for Copilot CLI.", + "github.copilot.config.cli.branchSupport.enabled": "Enable branch support for Copilot CLI.", "github.copilot.config.cli.forkSessions.enabled": "Enable forking sessions in Copilot CLI.", "github.copilot.config.cli.planExitMode.enabled": "Enable Plan Mode exit handling in Copilot CLI.", - "github.copilot.config.cli.isolationOption.enabled": "Enable the isolation mode option for Background Agents. When enabled, users can choose between Worktree and Workspace modes.", - "github.copilot.config.cli.autoCommit.enabled": "Enable automatic commit for Background Agents. When enabled, changes made by Background Agents will be automatically committed to the repository at the end of each turn.", - "github.copilot.config.cli.sessionController.enabled": "Enable the new session controller API for Background Agents. Requires VS Code reload.", + "github.copilot.config.cli.isolationOption.enabled": "Enable the isolation mode option for Copilot CLI. When enabled, users can choose between Worktree and Workspace modes.", + "github.copilot.config.cli.autoCommit.enabled": "Enable automatic commit for Copilot CLI. When enabled, changes made by Copilot CLI will be automatically committed to the repository at the end of each turn.", + "github.copilot.config.cli.sessionController.enabled": "Enable the new session controller API for Copilot CLI. Requires VS Code reload.", + "github.copilot.config.cli.sessionControllerForSessionsApp.enabled": "Enable the new session controller API for Sessions App. Requires VS Code reload.", "github.copilot.config.cli.terminalLinks.enabled": "Enable advanced clickable file links in Copilot CLI terminals. Resolves relative paths against session state directories. Requires VS Code reload.", - "github.copilot.config.backgroundAgent.enabled": "Enable the Background Agent. When disabled, the Background Agent will not be available in 'Continue In' context menus.", + "github.copilot.config.backgroundAgent.enabled": "Enable the Copilot CLI. When disabled, the Copilot CLI will not be available in 'Continue In' context menus.", "github.copilot.config.cloudAgent.enabled": "Enable the Cloud Agent. When disabled, the Cloud Agent will not be available in 'Continue In' context menus.", "github.copilot.config.copilotMemory.enabled": "Enable agentic memory for GitHub Copilot. When enabled, Copilot can store repository-scoped facts about your codebase conventions, structure, and preferences remotely on GitHub, and recall them in future conversations to provide more contextually relevant assistance. [Learn more](https://docs.github.com/en/copilot/how-tos/use-copilot-agents/copilot-memory).", "github.copilot.config.tools.memory.enabled": "Enable the memory tool to let the agent save and recall notes during a conversation. Memories are stored locally in VS Code storage — user-scoped memories persist across workspaces and sessions, while session-scoped memories are cleared when the conversation ends.", diff --git a/extensions/copilot/src/extension/chatSessions/vscode-node/chatSessions.ts b/extensions/copilot/src/extension/chatSessions/vscode-node/chatSessions.ts index 134f249590a..2c32c08802f 100644 --- a/extensions/copilot/src/extension/chatSessions/vscode-node/chatSessions.ts +++ b/extensions/copilot/src/extension/chatSessions/vscode-node/chatSessions.ts @@ -109,7 +109,7 @@ export class ChatSessionsContrib extends Disposable implements IExtensionContrib [IPullRequestFileChangesService, new SyncDescriptor(PullRequestFileChangesService)], )); - const useController = instantiationService.invokeFunction(accessor => accessor.get(IConfigurationService).getConfig(ConfigKey.Advanced.CLISessionController)); + const useController = instantiationService.invokeFunction(accessor => accessor.get(IConfigurationService).getConfig(vscode.workspace.isAgentSessionsWorkspace ? ConfigKey.Advanced.CLISessionControllerForSessionsApp : ConfigKey.Advanced.CLISessionController)); const { sessionMetadata } = useController ? this.registerCopilotCLIServices(instantiationService, delegationSummary, logService) : this.registerCopilotCLIServicesV1(instantiationService, delegationSummary, logService); // #region Claude Code Chat Sessions diff --git a/extensions/copilot/src/platform/configuration/common/configurationService.ts b/extensions/copilot/src/platform/configuration/common/configurationService.ts index e779c3d58d6..c472bec1063 100644 --- a/extensions/copilot/src/platform/configuration/common/configurationService.ts +++ b/extensions/copilot/src/platform/configuration/common/configurationService.ts @@ -616,6 +616,7 @@ export namespace ConfigKey { export const CLIIsolationOption = defineSetting('chat.cli.isolationOption.enabled', ConfigType.Simple, true); export const CLIAutoCommitEnabled = defineSetting('chat.cli.autoCommit.enabled', ConfigType.Simple, true); export const CLISessionController = defineSetting('chat.cli.sessionController.enabled', ConfigType.Simple, false); + export const CLISessionControllerForSessionsApp = defineSetting('chat.cli.sessionControllerForSessionsApp.enabled', ConfigType.Simple, false); export const CLITerminalLinks = defineSetting('chat.cli.terminalLinks.enabled', ConfigType.Simple, true); export const RequestLoggerMaxEntries = defineAndMigrateSetting('chat.advanced.debug.requestLogger.maxEntries', 'chat.debug.requestLogger.maxEntries', 100);