Complexity: 4
Authors: @sandy081
Create Issue
An Agent Host Copilot CLI session in the Agents window can now hold multiple chats ("peer" chats) side‑by‑side, each with its own conversation, title and status. Peer chats are now persisted and restored across a window reload, and deleting a chat asks for confirmation first.
This test covers creating, switching, renaming, deleting and restoring multiple chats within a single Copilot CLI session.
Set up
- Open the Agents window
- This test is specifically about a Copilot CLI session created from the Local Agent Host (the built‑in, locally‑running Copilot CLI agent host — not a Copilot Chat session, and not a remote/tunnel agent host). Make sure you are signed in to Copilot and the local Copilot CLI agent host is available.
- Start a new session and, in the session‑type picker, choose Copilot CLI (the entry provided by the Local Agent Host). Multi‑chat is only enabled for these Copilot CLI sessions — other session types intentionally show a single chat.
- Send a first message so the session is created (no longer "untitled").
Test steps
1. Create additional (peer) chats
- With the Local Agent Host Copilot CLI session active, click the New Chat (
+) button in the session toolbar.
- ✅ A new chat tab appears in the chat bar next to the existing one and becomes active, showing an empty/new‑chat input.
- Send a message in the new chat and confirm it gets its own response, independent of the first chat.
- Add a second peer chat the same way.
- ✅ The session now shows 3 tabs, each with independent conversations.
2. Switch between chats
- Click each tab in turn.
- ✅ Switching shows that chat's own request/response history immediately (no perpetual loading spinner), and the input/scroll position is per‑chat.
- ✅ The in‑progress spinner / unread indicator on a tab reflects only that chat's state (e.g. start a long request in one chat, switch away — only that tab shows the spinner).
3. Rename a chat tab (independent of the session)
- Double‑click a chat tab (or right‑click the tab → Rename), type a new name, press Enter.
- ✅ Only that tab's title changes. The session title (in the sessions list / header) is unchanged.
- Press Escape while editing → rename is cancelled, the old title stays.
4. Rename the session does NOT rename the chats
- Rename the session (double‑click the session title in the header / sessions list), give it a new name.
- ✅ The session title updates.
- ✅ Any chat tab you renamed in step 3 keeps its own name.
- ✅ The default (first) chat tab — if you never renamed it — follows the session title; if you did rename it, it keeps its independent name.
5. Delete a chat asks for confirmation
- Hover a peer chat tab and click its ✕ (Close) button.
- ✅ A confirmation dialog appears: "Are you sure you want to delete this chat?" with detail "This action cannot be undone." and a Delete primary button.
- Click Cancel → ✅ the chat is not deleted, the tab stays.
- Click the ✕ again → Delete → ✅ the chat tab is removed and the remaining chats are unaffected.
- Note: the default (first) chat has no close button — it lives and dies with the session.
6. Persistence across reload (the main fix)
- In the session, make sure you have the default chat plus at least one peer chat, each with some conversation history.
- Run Developer: Reload Window.
- After reload, re‑open the same Copilot CLI session.
- ✅ All chats are restored — the peer chat tabs are still present (not just the default chat).
- Click into the restored peer chat.
- ✅ Each one loads its own history reliably.
Complexity: 4
Authors: @sandy081
Create Issue
An Agent Host Copilot CLI session in the Agents window can now hold multiple chats ("peer" chats) side‑by‑side, each with its own conversation, title and status. Peer chats are now persisted and restored across a window reload, and deleting a chat asks for confirmation first.
This test covers creating, switching, renaming, deleting and restoring multiple chats within a single Copilot CLI session.
Set up
Test steps
1. Create additional (peer) chats
+) button in the session toolbar.2. Switch between chats
3. Rename a chat tab (independent of the session)
4. Rename the session does NOT rename the chats
5. Delete a chat asks for confirmation
6. Persistence across reload (the main fix)