The rebuilt Claude desktop app lets one Claude Code session look after all your others. You can ask it what is finished, what is stuck on an approval, and what is still running, then have it pass messages along for you.
Lots of people online call this update “Claude 2.0”. Anthropic has not used that name, so in this guide I stick to the names in the official docs and app.
Below you get the full setup for a “control chat”, the exact menu names, ready-to-paste prompts, split view, Remote Control, keep-awake settings, /goal, limits and fixes.
- What it is: any session in the desktop app’s Code tab can list your other Code sessions, read what they did, message them, rename them and archive them. Anthropic calls this “Work across sessions”.
- Control chat: not a button. You start one more session, pin it, and tell it to watch the others.
- Organise: right-click a session, Move to section, then New section. Pinned sessions sit in a Pinned group at the top.
- Limits: it sees the 20 most recently active sessions by default, and only sessions the desktop app runs (local, SSH, WSL). Cloud, terminal CLI and VS Code sessions are invisible to it.
- Side by side: Option-click (Alt-click on Windows) a session, or right-click, Open in, Split view.
- Away from your desk: turn on Connect new sessions to Remote Control and Keep computer awake while Claude works in Settings.
- Finish lines:
/goalkeeps Claude working until a checkable condition is met.
What Changed in the Claude Desktop App
The Claude desktop app has been reshaped over several releases since April 2026, when Anthropic redesigned Claude Code on desktop for parallel sessions. The October builds added sections, the session rail and nested sessions.
The app now has two main areas. Chat (with Cowork for longer agent tasks) sits on one side, and Code is the tab where Claude Code sessions live. The layout and labels can differ a little while features roll out.
| Feature | Where you find it | Added (app changelog) |
|---|---|---|
| Work across sessions (Claude reads and messages your other sessions) | Just ask in any Code session | Documented in the Code tab reference |
| Nested sessions (Claude starts a task in a new session that reports back) | Appears under the original session in the sidebar | v3.1623.0, 20 Oct 2026 |
| Sidebar sections (custom groups were renamed “sections”) | Session menu: Move to section | v2.42304.0, 15 Oct 2026 |
| Session rail (cards for environment, context, changes, background tasks) | Right of the conversation | v2.42304.0, 15 Oct 2026 |
| Split View submenu and pop-out panes | View menu, or right-click Open in | v1.44121.1, 2 Sep 2026 |
| Keep computer awake while Claude works | Settings, Claude Code | v1.46388.1, 4 Sep 2026 |
/goal finish-line command |
Type it in any session | Claude Code CLI feature, works in the desktop app |
Note: versions and dates come from Anthropic’s desktop changelog. If a menu item is missing for you, update the app first (see Troubleshooting).
What You Need
| Requirement | Details |
|---|---|
| Plan | A paid plan: Pro, Max, Ultra, Team or Enterprise. The free plan does not get the Code tab. Prices are in my Claude Code pricing guide. |
| App | Claude desktop for macOS (Intel and Apple Silicon), Windows (x64 and ARM64) or Linux (beta, apt or .deb for Ubuntu and Debian). |
| Current layout | Desktop v2.37337.0 or later for the new session screen and session rail. Sections need v2.42304.0 or later. |
| Git | Only needed if you want each session in its own worktree. Plain local sessions no longer need Git. |
| Phone (optional) | Claude app for iOS or Android, signed in to the same account, for Remote Control. |
Tip: to check your version, click Claude then About Claude on Mac, or Help then About Claude on Windows. Use Check for Updates… in the same menu to update.
How a Control Chat Works
Every Code session can now reach the other Code sessions on your computer. You ask in plain language, and Claude looks them up, reads their recent activity, and reports back.
A “control chat” is just a session whose only job is doing this for you. There is no special control-chat button. It works because of the Work across sessions feature.
What the control chat can and can’t do
| Can do | Can’t do |
|---|---|
| List your other Code tab sessions and say which are done, waiting on you, or working | See cloud sessions |
| Read what each session has been doing (“what did the pricing session conclude?”) | See sessions started in the terminal CLI or the VS Code extension |
| Send a message to another session, which shows up there as a labelled card | Deliver a message to an archived session |
| Rename sessions | Approve another session’s permission prompts for you |
| Archive sessions (with an approval card in Manual mode) | See itself in the list (it never lists the session you ask from) |
| Start new nested sessions that report back to it | See more than the 20 most recent sessions unless you ask it to look further |
What happens when it messages another session
- Labelled: the message appears as a card with the sending session’s title and a link back, so you always know where it came from.
- Queued if busy: if the other session is mid-task, the message waits and is read when the current work finishes.
- Replies come back: the receiving session can answer, and the reply arrives in your control chat.
- Same permissions: the receiving session still follows its own permission mode and rules.
Set Up a Control Chat in 6 Steps
I will use a simple example: a blog launch with three jobs. One session writes the landing page, one drafts the welcome email, and one builds the FAQ.
- Open the Code tab and start one session per job. Click + New in the sidebar or press Cmd+N (Ctrl+N on Windows). Pick the project folder and permission mode in the row under the prompt box, then give the session its task.
- Name each session after its job. Open the session and click its title in the title bar to rename it, for example “Landing page”, “Welcome email” and “FAQ”. Clear names make the control chat’s reports easy to read.
- Group them into a section. Right-click a session (or open its menu), choose Move to section, then New section, and name it “Launch”. Move the other two sessions into the same section.
- Start one more session and pin it. This is your control chat. Name it “Control” and pin it from its menu so it stays in the Pinned group at the top of the sidebar.
- Give it a clear brief. Paste the brief below so it knows its job, its scope, and what not to do.
- Ask for a status check. Type “What’s waiting on me?” whenever you sit down. You get a fresh list each time.
Copy-paste brief for your control chat
You are my control chat for the "Launch" section.
Your job:
1. When I ask for status, check every session in the Launch section and
group them as: Needs my approval / Waiting for my answer / Finished / Still working.
2. For each one give the session name, one line on what it did last, and
what it needs from me.
3. Pass messages between sessions only when I ask, and tell me what you sent.
Rules:
- Do not archive anything without asking me first.
- Do not ask another session to do anything I have not approved.
- Keep each report under 15 lines.
Note: a section with no sessions can’t be created from the sidebar yet. Move an existing session in with New section, which creates it, then move more in.
Tip: pinning a session moves it out of its custom section into the global Pinned group. That is handy for a control chat, because it stays on top no matter how the other sessions shuffle.
12 Prompts to Use in Your Control Chat
Plain language works. These are the ones I find most useful, grouped by job.
Status checks
- Morning check: “What’s waiting on me? Approvals first, then questions.”
- Finished work: “Which sessions finished since my last check, and what did each produce?”
- Find old work: “Which session touched the pricing table?”
- Look further back: “Include sessions beyond the 20 most recent and archived ones, and find the email draft from last week.”
Passing messages
- Hand over a decision: “Tell the Landing page session that the price is now $19, not $29.”
- Ask for an update: “Ask the FAQ session how many questions it has drafted and wait for the reply.”
- Change direction: “Tell the Welcome email session to make the subject line shorter and add one line about the free trial.”
- Share a finding: “Summarise what the Landing page session decided about the hero text and send it to the Welcome email session.”
Housekeeping
- Rename: “Rename the untitled sessions after what each one is working on.”
- Tidy up: “List sessions that are finished and whose PRs merged. Ask me before archiving them.”
- Start work: “Start a new session to write the launch tweet thread and report back here when it’s done.”
- End of day: “Give me a 5-line summary of today across all Launch sessions and what I need to do first tomorrow.”
Warning: in Auto or Bypass permissions mode, Claude can archive a session without an approval card. If you want to be asked first, keep the control chat in Manual mode.
Split View, New Windows and Shortcuts
The control chat tells you which sessions need you. Split view lets you deal with two of them at once without jumping around the sidebar.
- Side by side: hold Option (Alt on Windows) and click a session, or right-click it and choose Open in, then Split view.
- Own window: hold Cmd (Ctrl on Windows) and click, or choose Open in, then New window.
- Change a pane: click inside the pane to focus it, then click another session in the sidebar. The unfocused pane is dimmed.
- View menu: the Split View submenu opens a new session beside or below the current one.
| Action | Mac | Windows |
|---|---|---|
| Show all shortcuts | Cmd+/ | Ctrl+/ |
| New session | Cmd+N | Ctrl+N |
| Switch sessions | Ctrl+Tab / Ctrl+Shift+Tab | Ctrl+Tab / Ctrl+Shift+Tab |
| Next or previous session | Cmd+Shift+] / Cmd+Shift+[ | Ctrl+Shift+] / Ctrl+Shift+[ |
| Take focused session out of split view | Cmd+Ctrl+W | Ctrl+Alt+W |
Open side chat (/btw) |
Cmd+; | Ctrl+; |
| Close focused pane | Cmd+\ | Ctrl+\ |
| Stop Claude’s response | Esc | Esc |
Tip: start with two sessions side by side. More panes fit on a big monitor, but each one gets narrow fast on a laptop.
Remote Control and Keep Awake
Your control chat and its sessions run on your computer. To check on them from your phone, connect them to Remote Control, and stop the computer from sleeping while Claude works.
| Setting | Where | What it does |
|---|---|---|
| Connect new sessions to Remote Control | Settings, Code (or Claude Code) | Every new session shows up at claude.ai/code and in the Claude phone app. |
| Remote Control switch | Environment card in the session rail | Turns it on or off for one session. Typing /remote-control also works. |
| Keep computer awake while Claude works | Settings, Claude Code | Stops idle sleep while a Code session is working. A Keep awake on battery power option sits with it. |
| Keep computer awake for this session | Session menu | Same idea for one session only. |
| Keep this computer awake for Remote Control | Settings, Code (or Claude Code) | Keeps the machine reachable for Remote Control and project threads. |
Warning: closing a laptop lid still puts it to sleep, and local sessions pause until it wakes. For work that must carry on while your computer is off, use a cloud session instead (see my Claude Code on the web guide).
For every Remote Control detail, including QR codes, push notifications and error messages, read my full Claude Code Remote Control guide. To stop all sessions on a computer from connecting, set "disableRemoteControl": true in ~/.claude/settings.json.
Use /goal to Set a Finish Line
/goal gives a session a condition to reach. After each turn, a small, fast model checks whether the condition holds. If not, Claude keeps going without waiting for you.
It works in the desktop app, the CLI and through Remote Control. Only one goal can be active per session.
| Command | What it does |
|---|---|
/goal <condition> |
Sets the goal and starts working on it straight away. A new goal replaces the old one. |
/goal |
Shows status: the condition, time running, turns checked, tokens spent and the checker’s latest reason. |
/goal clear |
Removes the goal. stop, off, reset, none and cancel also work. |
Good goals vs vague goals
The checker only reads the conversation. It does not open files or run commands, so the goal must be something Claude can prove in its own output.
| Vague (avoid) | Checkable (use) |
|---|---|
| Make the landing page great | The landing page builds with no errors, every link returns 200, and the hero text is under 12 words |
| Fix the tests | npm test exits 0 and no test file is changed |
| Write a good FAQ | faq.md has 8 questions, each answer under 60 words, or stop after 15 turns |
- One end state: a test result, a file count, an empty list.
- A stated check: say how Claude should prove it, for example “
git statusis clean”. - A stop clause: add “or stop after 20 turns” so it can’t run forever. Conditions can be up to 4,000 characters.
Tip: a goal does not change your permission mode. In Manual mode Claude still stops to ask before tools you have not allowed. Pair /goal with Auto mode if you want it to run unattended, and read my plan mode guide for planning the work first.
Control Chat vs Projects vs Dispatch vs Subagents
Anthropic has several ways to run work in parallel. The control chat is the simplest, but it is not always the best fit.
| Option | Runs where | Who starts the sessions | Best for |
|---|---|---|---|
| Control chat (Work across sessions) | Your computer (local, SSH, WSL) | You, or the control chat via nested sessions | Keeping an eye on a handful of local sessions |
| Projects (beta) | Mostly cloud threads, optional threads on your computer | Claude, from one coordinating conversation | Ongoing work that keeps producing tasks; keeps going with your laptop closed |
| Dispatch | Cowork, can spawn Code sessions | Claude, from a message on your phone | Sending one task from your phone |
| Subagents | Inside one session | Claude | Side tasks that return a summary to the same session |
Note: Projects are in public beta on Pro, Max and Ultra and rolling out gradually. Dispatch needs Pro, Max or Ultra and is not on Team or Enterprise plans.
Real Ways to Use It
- Bloggers: one session per article, a “Publishing” section, and a control chat that tells you which drafts are ready to review.
- Developers: a session per feature in separate worktrees; the control chat tells the API session when the schema session changes something.
- Shop owners: product listings, the sale email and the FAQ in one section before a big sale.
- Freelancers: a section per client, and one control chat per client for quick status updates.
- Month-end reports: ask which report sessions finished and which are waiting on a number from you.
Tip: you can run one control chat per section, plus one that covers everything. Just tell each one which section it is responsible for.
Usage Limits and Cost Tips
A control chat is not free. Every status check reads other sessions, and every message it delivers counts toward your usage like a prompt you typed.
- Ask less often: one status check when you sit down beats asking every five minutes.
- Keep reports short: the “under 15 lines” rule in the brief saves tokens on every check.
- Archive finished sessions: fewer active sessions means less to read.
- Watch the context card: the Context card in the session rail shows how full the control chat is. Type
/compactwhen it gets high. - Watch your plan meter: click the usage ring under the prompt box. Plan usage is shared across all Claude Code surfaces.
Warning: /goal runs many turns on its own, so it can burn through a Pro plan’s 5-hour window fast. Always add a turn limit to the condition.
Limits to Know
- 20 most recent: by default it sees the 20 most recently active sessions and skips archived ones, unless you ask it to look further.
- Desktop sessions only: local, SSH and WSL sessions in the Code tab. Not cloud sessions, the terminal CLI or the VS Code extension, even in the same project.
- No self-listing: it never lists the session you are asking from.
- Your computer must be awake: local sessions pause while it sleeps.
- Rolling out: layouts and menu names can differ between accounts and versions.
- Sections are one level: no nested sections yet, and sessions inside a section are sorted by activity.
Troubleshooting
The control chat says a session doesn’t exist
Check where that session runs. Cloud sessions and sessions started in a terminal or VS Code are not visible. If it is an old or archived desktop session, ask it to “include archived sessions and look beyond the 20 most recent”.
“Message not delivered” or no reply
The target may be archived; unarchive it from View all, Archived. If the target is busy, the message waits until its current work ends. If the target has crossSessionInbound set to refuse in its settings, messages are dropped on purpose.
It archived a session without asking
The control chat was in Auto or Bypass permissions mode. Switch it to Manual with the mode menu (Cmd+Shift+M or Ctrl+Shift+M) and restore the session from the Archived tab.
No “Move to section” option
You are on an older build or the earlier layout. If the environment picker shows above the prompt box, you have the earlier layout. Update to v2.42304.0 or later and restart the app.
Split view doesn’t open
Make sure you Option-click (Alt-click) the session in the sidebar, not the title bar. Or use right-click, Open in, Split view, or the View menu’s Split View submenu.
Sessions don’t show on my phone
Check the Remote Control switch in the session’s Environment card. Remote Control needs a claude.ai login, not an API key, and stays off if disableRemoteControl is set. My Remote Control guide covers each error message.
/goal is unavailable or looks stuck
/goal is part of the hooks system, so it is off in untrusted folders or when disableAllHooks is true. If it looks stuck, run /goal to see the latest reason. A “Goal paused” notice usually means a rate or usage limit.
Work stopped while I was away
The computer probably slept. Turn on Keep computer awake while Claude works, leave the lid open, and keep the app running. For overnight jobs, move the work to the cloud.
My Take
This is the most useful change to the Claude desktop app this year for anyone running more than three sessions. The big win is not magic automation; it is no longer opening every session to find the one stuck on an approval.
Keep it simple: one section per project, one pinned control chat with a strict brief, and Manual mode for anything that archives. If you are new to Claude Code, start with my install guide and the commands cheat sheet.
FAQ
Is “Claude 2.0” an official Anthropic release?
No. It is a nickname used online for the rebuilt desktop app. Anthropic ships these changes as normal desktop app updates with version numbers.
Is there a control center button in the Claude app?
No. Any Code session can check and message your other sessions, so a control chat is simply a session you pin and brief for that job.
How many sessions can the control chat see?
The 20 most recently active by default, not counting archived ones. Ask it to look further back when you need older sessions.
Can the control chat see my cloud sessions?
No. It only sees local, SSH and WSL sessions run by the desktop app. For cloud work coordinated from one chat, use Projects.
Does the control chat use more of my usage limit?
Yes. Each check and each delivered message counts toward usage like a normal prompt, so keep checks short and occasional.
Do I need to know how to code?
No. You talk to Code sessions in plain English, and they can write emails, pages and FAQs as well as code.
Can I steer my sessions from my phone?
Yes. Turn on Connect new sessions to Remote Control, then open the sessions in the Claude app. Keep the computer awake and the app running.
What is the difference between /goal and /loop?
/goal keeps working until a condition is met. /loop repeats a prompt on a time interval.
Sources
- Claude Code docs: Desktop application (Work across sessions, split view, Remote Control)
- Claude Code docs: Keep Claude working toward a goal (/goal)
- Claude Code docs: Message your other Claude Code sessions
- Claude Code docs: Projects
- Claude desktop changelog
- Anthropic: Redesigning Claude Code on desktop for parallel agents




