Skip to content

[cherry-pick] sessions: gate Copilot CLI/Claude agent-host preferences on chat.agentHost.enabled#323571

Merged
sandy081 merged 1 commit into
release/1.127from
cherry-pick/323567
Jun 29, 2026
Merged

[cherry-pick] sessions: gate Copilot CLI/Claude agent-host preferences on chat.agentHost.enabled#323571
sandy081 merged 1 commit into
release/1.127from
cherry-pick/323567

Conversation

@vs-code-engineering

Copy link
Copy Markdown
Contributor

Cherry-pick of #323567 from main.

What

Make chat.agentHost.enabled the master gate for two agent-host preference settings consumed by the Copilot Chat sessions provider in the Agents window:

  • chat.agents.copilotCli.hideExtensionHost
  • chat.agents.claude.preferAgentHost

When chat.agentHost.enabled is off, these two settings are no longer respected (treated as false).

Why

Both settings tell the Copilot Chat sessions provider to step aside so the agent host can surface its own entry in its place:

  • hideExtensionHost hides the Extension Host Copilot CLI so only the Agent Host Copilot CLI shows.
  • preferAgentHost (Claude) makes this provider yield so the agent host's Claude registration shows instead.

But when the agent host is disabled it never registers those replacement entries. Honoring the preferences in that state would make the Copilot CLI / Claude entries disappear entirely from the picker. Gating them on chat.agentHost.enabled keeps the entries visible until the agent host is actually enabled to take over.

Changes

  • copilotChatSessionsProvider.ts: _isClaudeAvailable() and _isCopilotCliAvailable() now also check chat.agentHost.enabled (via a small shared _isAgentHostEnabled() helper). Availability is computed live from configuration; the cached fields were removed and the config-change handler simply re-collects/re-sorts session types when any relevant setting changes.
  • agentHost.config.contribution.ts / chat.shared.contribution.ts: updated the two setting descriptions to note they require #chat.agentHost.enabled#.
  • Added unit tests covering that each preference is ignored while the agent host is disabled, and that toggling chat.agentHost.enabled live-applies the gate.

Notes for reviewers

  • This is a read-time override: the user's stored values are untouched, just ignored while the master is off.
  • chat.agentHost.defaultSessionsProvider was already gated on chat.agentHost.enabled (the local agent host provider only registers when enabled), so no change was needed there.

Co-authored-by: Copilot 223556219+Copilot@users.noreply.github.com

Copilot AI review requested due to automatic review settings June 29, 2026 18:12
@vs-code-engineering vs-code-engineering Bot added the cherry-pick-artifact Auto-generated cherry-pick PR label Jun 29, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot can't review bot-authored pull requests automatically. A user with Copilot access can request a review manually.

@sandy081 sandy081 enabled auto-merge (squash) June 29, 2026 18:19
@sandy081 sandy081 merged commit 6649520 into release/1.127 Jun 29, 2026
46 of 47 checks passed
@sandy081 sandy081 deleted the cherry-pick/323567 branch June 29, 2026 19:49
@vs-code-engineering vs-code-engineering Bot added this to the 1.127.0 milestone Jun 29, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cherry-pick-artifact Auto-generated cherry-pick PR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants