Agent view, explained by monkey
(plus the cheat sheet)
claude agents puts every background Claude Code session on one screen. Here's how to filter to the ones waiting on you, answer without leaving the list, keep the important ones awake, and not delete your work by accident.
Once you run more than two or three Claude Code sessions at a time, you lose track of which one is waiting on you. Agent view fixes that. Type claude agents and your terminal turns into one list of every background session on your machine, across all your projects: what's working, what needs you, and what's done. You answer them, jump into them and start new ones from the same screen.
Open it
claude agents # every background session, every project
claude agents --cwd ~/projects/my-app # only this project
Want plain claude to open agent view every time? Run this inside Claude Code. claude "fix the login test" still starts a normal session.
/config defaultToAgentsView=true
Read the list
Sessions are grouped so the ones that need you are on top:
- Pinned: the ones you pinned with Ctrl+T.
- Ready for review: the session has an open pull request that needs review or has failing checks.
- Needs input: Claude is waiting on something only you can give it. Its icon is yellow.
- Working: running right now. Its icon is animated.
- Completed: done, and also failed and stopped sessions.
Each row shows an icon, a name, a one-line summary, a PR label and an age. The icon shape tells you whether the process is alive:
- ✻ or ✽: the process is running.
- ∙: the process has exited, but you can still reply. Claude restarts it from the saved conversation.
- ✢: a /loop session sleeping between runs, with a countdown.
- A PR number turns green when checks pass and no review is blocking. That's your cue to review and merge.
- Ctrl+S groups the list by folder instead, and remembers that.
- Your terminal tab shows the count, like 2 awaiting input · claude agents.
Filter to what needs you
Type these in the box at the bottom:
s:blocked everything waiting on you
s:ready Ready for review
n:login name or first prompt contains "login"
o:merged result says "merged"
a:reviewer sessions running that agent
s:blocked a:reviewer combine them
Ctrl+F finds a session by name.
Peek, attach, detach
- Space peeks. You see the session's exact question or its result, and you can reply right there without leaving the list. ↑ and ↓ peek at the next row.
- Start a peek reply with ! to send a shell command. A reply that is exactly /stop stops the session at once.
- Enter or → attaches to the full session. Claude posts a short recap of what happened while you were away.
- ← on an empty prompt, or /exit, detaches. Detaching never stops the session.
- Alt+1 to Alt+9 attaches to session 1 to 9 in the focused session's folder.
- If you got here by pressing ← from a session, the last Esc takes you back to that conversation instead of quitting.
Start sessions from the box
Type a prompt at the bottom and press Enter. A small model names it, and Ctrl+R renames it.
fix the flaky checkout test a normal session
@code-reviewer look at PR 12 one of your subagents runs as the main agent
! pytest -x a plain shell job, no model
#1234 jumps to the session already on that PR
/model opus on its own line: the model for every session you start next
Or set defaults for everything you start in this run:
claude agents --permission-mode plan --model opus --effort high
Or start them from your shell
claude --bg "investigate the flaky test" --name flaky-fix
claude --bg --agent code-reviewer "review my last commit"
claude --resume <id> --bg "finish the migration" # continue an old chat in the background
claude --bg --exec 'pytest -x' # a shell job
claude attach flaky # attach by part of the name (v2.1.290+)
claude logs flaky
claude stop 7c5dcf5d # stop takes the short ID it printed
Keep the list tidy
- Ctrl+T pins a session to the top and keeps its process running. Shift+↑ and Shift+↓ reorder.
- Ctrl+X stops a session. A second Ctrl+X within two seconds deletes it. Ctrl+X on a group header deletes the whole group, after asking.
- A bare /resume in the box brings back a session you deleted.
The copy-paste setup
Open agent view whenever you type claude, start new sessions in plan mode so nothing runs before you've read the plan, and keep the one that matters warm:
claude update # agent view needs v2.1.139 or later
claude # then, inside Claude Code:
/config defaultToAgentsView=true
claude agents --permission-mode plan # new sessions start in plan mode
# in the box: s:blocked → only what's waiting on you
# Space → peek and answer
# Ctrl+T → pin the one you'll come back to
Gotchas
- Idle sessions get stopped. A finished or waiting session with nobody attached for about an hour has its process stopped. It isn't lost: it resumes when you reply or attach. Pin it with Ctrl+T to keep it running.
- Deleting can delete code. Deleting a session can delete its worktree, uncommitted changes included. The transcript stays, through claude --resume, but the changes don't. Commit before you Ctrl+X twice.
- Shell-job output isn't saved. The output of a ! or --exec job lives in memory only, and the row disappears about five minutes after the command exits. Read it before then.
- Closing the terminal is fine, shutting down isn't. A separate supervisor process runs the sessions, so they keep going without a terminal and survive sleep. But it's all local: they stop if the computer shuts down. For sessions that run in the cloud, see claude --cloud.
- Not everything shows up. Sessions open in other terminals don't appear until you background them, and subagents and teammates don't get their own rows.
- It costs what it runs. Every background session uses your plan the same as a normal one: "running ten agents in parallel uses quota roughly ten times as fast as running one." Each row's summary is also one short Haiku-class request at the end of every turn.
- The docs don't give a maximum number of background sessions.
Monkey believe in you. Now go build.
follow @nocodemonkey
More guides
Shortcuts most people missplus a cheat sheetMonkey only ever pressed Enter and Esc. Claude Code has way more keys hiding in it
Pluginsplus a plugin setupMonkey turn on one plugin. Now it eat tokens in every session
Permission rulesplus a safe rules setupMonkey wrote "never push" in CLAUDE.md. Claude Code doesn't enforce that. It enforces permission rules