Support selecting different harnesses per multi-chat in the Agents window
- Dominant language
- TypeScript
- Stars
- 193k
- Forks
- 42.4k
- PR merge metrics
- PR metrics pending
Description
Summary
Multi-chat currently doesn't allow choosing a different harness per chat tab. Multi-chat is a feature of the Agents window that creates a chat based on the same workspace as the one you're currently working out of and displays it as a new tab. We should allow each multi-chat tab to select and run with a different harness (for example: have a Copilot multi-chat next to a Claude chat).
Problem
- The current implementation is mostly orchestrated by the agent host and forces a single harness selection for multi-chats.
- This leads to awkward workarounds in the agent host and couples session/chats concerns into places where the IAgent SDK only understands sessions.
Proposed solution
- Allow multi-chat tabs to select their harness independently of the originating chat. Add UI affordance in the Agents window to pick the harness for a new multi-chat tab.
- Keep session isolation semantics: each multi-chat tab should get its own session context and harness configuration so different LLM providers/agents (Copilot, Claude, etc.) can be used side-by-side.
- Minimize required changes to IAgent surface area by treating multi-chat as an agent-host implementation detail that selects which harness/session to create for a chat, rather than forcing agents to know about multi-chat internals.
Acceptance criteria
- User can create a multi-chat tab and select a different harness than the source chat.
- The chosen harness is used for all interactions in that multi-chat tab and does not affect the source chat.
- Existing IAgent implementations do not require breaking API changes; any orchestration should be handled in the agent host where possible.
- UI/UX for selecting harness is discoverable from the Agents window when creating a multi-chat.
Notes / Implementation considerations
- Investigate whether the agent host already has the required data to create an independent session per multi-chat; if not, extend the host's orchestration logic.
- Consider adding a small extension point in the agent host to configure harness selection at multi-chat creation time.
- Ensure telemetry and permission flows (if any) for different harnesses are handled correctly when multiple provider types are open simultaneously.
Context
From Slack: "I want to have a Copilot multi-chat next to my Claude chat." There are some gaps in the current implementation that need to be addressed in the agent host to make this work smoothly.
[View original Slack conversation](https://vscodeteam.slack.com/archives/C09MVCZKLP4/p1784040635684689?thread_ts=1784040635.684689&cid=C09MVCZKLP4)
Contributor guide
Assessment
This issue has not been assessed yet.