Communicate session and chat model through clear UI structure
@jo-oikawa is already working on this.
Since Jun 26, 2026.
Assessment
This issue has not been assessed yet.
Description
In the June 2026 UX study, participants were familiar with the terms "session" and "chat" from other tools. However they consistently collapsed them into the same concept. 4/5 participants treated session and chat as one-to-one or identical. The product's multi-chat model requires users to understand that one session can hold many chats, but the shared vocabulary hides this gap.
"We call the chat… the session and chat is the same thing, right?" — Research participant
"It's just really like the conversation history, plus basically the actions that it's taken." — Research participant (describing "session" as if it were a single chat)
We know that the concepts are teachable, since participants learned the distinction when shown, but the current UI does not actively teach it.
Proposal
A design exploration to make the session/chat relationship visible through layout and defaults rather than relying on labels alone.
Directions to explore:
- Layout that spatially nests chats inside a session boundary (making the container relationship visible)
- Onboarding moment when a user creates their second chat in a session — explaining what just happened
- Visual language that distinguishes the session level (workspace, config, shared files) from the chat level (conversation, changes, agent)
- Default naming that reinforces the relationship (e.g., session named after the project, chats named after the task)
User evidence
- 4/5 participants collapsed session and chat into one concept
- 1 participant (P03) separated them unprompted but still mapped 1:1
- The distinction was learnable with moderator guidance but not self-evident from the UI
- Familiarity with the words across tools actively works against learning the new meaning
Design constraints
- Cannot rename "session" or "chat" without breaking cross-tool familiarity (P01 explicitly warned against terminology changes)
- Must work for first-time users who have never seen the Agents window
- Should not add friction for users who work with only one chat per session
- Dominant language
- TypeScript
- Stars
- 193k
- Forks
- 42.9k
- PR merge metrics
- PR metrics pending
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from microsoft/vscode
-
testplan-item
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
-
new release
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
-
testplan-item
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
-
testplan-item
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
All issues in microsoft/vscode
Similar issues
-
clawsweeper:fix-shape-clear clawsweeper:queueable-fix clawsweeper:source-repro impact:ux-friction issue-rating: 🦞 diamond lobster no-stale P3
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
community first-timers-only good first issue hacktoberfest help wanted low hanging fruit up-for-grabs
Difficulty 1/5 Under an hour Newbie friendliness 76/100
-
code-quality refactoring
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
github/gh-aw-firewall#8816 ·
-
integration:quickjs org:external priority:backlog topic:code-interpreter topic:middleware type:feature
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
langchain-ai/deepagents#6450 ·
-
Difficulty 1/5 Under an hour Newbie friendliness 88/100
vercel/react-tweet#225 ·