feat: add session controller configuration for Sessions App (#4876)

This commit is contained in:
Don Jayamanne
2026-03-31 20:31:50 +00:00
committed by GitHub
parent d2d017cbea
commit 6d37f8d8f0
4 changed files with 17 additions and 7 deletions
+8
View File
@@ -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,
+7 -6
View File
@@ -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.",
@@ -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
@@ -616,6 +616,7 @@ export namespace ConfigKey {
export const CLIIsolationOption = defineSetting<boolean>('chat.cli.isolationOption.enabled', ConfigType.Simple, true);
export const CLIAutoCommitEnabled = defineSetting<boolean>('chat.cli.autoCommit.enabled', ConfigType.Simple, true);
export const CLISessionController = defineSetting<boolean>('chat.cli.sessionController.enabled', ConfigType.Simple, false);
export const CLISessionControllerForSessionsApp = defineSetting<boolean>('chat.cli.sessionControllerForSessionsApp.enabled', ConfigType.Simple, false);
export const CLITerminalLinks = defineSetting<boolean>('chat.cli.terminalLinks.enabled', ConfigType.Simple, true);
export const RequestLoggerMaxEntries = defineAndMigrateSetting<number>('chat.advanced.debug.requestLogger.maxEntries', 'chat.debug.requestLogger.maxEntries', 100);