The terminals list
The Terminals list answers the morning question at a glance: which agent finished, which one needs you and which is still working, across every project on your Compute. Every row is live, with the last line on the agent's screen and when it was last active. Rows stay where you put them while agents change state, so a number key always reaches the same row.

Read a row
Open Terminals from the sidebar, or press G then T. Each row shows:
- the agent's icon, the project and the name you gave the terminal
- how long ago it was last active
- its state, with the time it resumes or resets when it waits on a limit
- the account it runs on, with a rotate mark when its launch rotates subscriptions
- the last line on its screen
A small marker on a row means the project's Sallyport agent has no services yet. Pick a row to open that terminal.
What each state means
| State | Meaning |
|---|---|
| Starting… | The terminal is being set up |
| Did not start | The start failed; open it for Start again |
| Needs you | The agent asks a question or waits for your permission |
| Working | The agent is busy |
| Done, ready for the next task | The agent finished and waits for a new task |
| Idle | Nothing runs |
| Stopped on the limit | The subscription ran out |
| Stopped to keep your reserve | The agent stopped at the reserve you set on the account |
| Reserve held | The account keeps your reserve, so the agent has no access until it comes back |
| Stopped: out of memory | Your Compute ran out of memory and the agent was stopped |
| Out of processes | Nothing new can start in the terminal |
| Exited | The agent or the shell in the terminal quit |
| State unknown | detachbox could not read the terminal |
A row waiting on a limit carries a time: resumes 03:10 when detachbox will type "continue" for you, back 03:10 when a held reserve ends, resets 03:10 when the limit resets and nothing is planned.
Filter by state
The counts bar on top reads like "1 needs you · 2 working · 3 done". Pick a count to show only those terminals, and pick it again to show all. The filter clears itself when no terminal has that state.
Search terminals
With 6 or more terminals, a search field sits above the list. Press / to reach it and type any part of a project, an agent, an account, a name or a state. Enter opens the first match, ↓ moves into the list, and Esc clears the search. Words typed with the wrong keyboard layout, Russian for English or the other way round, find their match too.
Set your order
Drag the dotted handle at the left of a row with a mouse or finger. Aim at the top half of another row to put it before that terminal, or the bottom half to put it after. A line marks where it will land. Release to save the order on the server; the same order follows you to other devices. The terminal you have open stays open.
With the handle focused, press Space or Enter to pick up the row. Use ↑ or ↓ to choose its place, then Space or Enter to save. Esc cancels the move.
Search and state filters let you move a terminal relative to the rows you can see. Hidden terminals keep their order relative to each other. Alt+1 to Alt+9 follow the new order. An agent changing state never sorts the list for you.
Jump with the keyboard
Alt+1toAlt+9(Option on a Mac), or⌘1to⌘9andCtrl+1toCtrl+9, open the terminal in that row. Each of the first nine rows shows its key.Alt+↑andAlt+↓open the previous and the next terminal, even while you type in one.- With the list focused,
↑and↓move between rows.
How detachbox knows what an agent does
While your Compute runs, the server checks every terminal every 15 seconds, and each row says where its state came from. Reported by the agent means Claude Code, Codex or OpenCode told it through the hooks we set up for you. Read from the screen covers anything else: the server reads the terminal, and output in the last 5 seconds counts as working.
See who waits from any tab
- The browser tab's title counts the agents that need you, such as "(2) detachbox", even while the tab is in the background.
- Terminals in the sidebar carries the same count, and so does the top bar on a phone.
- The installed app's icon shows it as a badge, as Phone explains.
- The bell at the top of the list, Notify me when an agent needs me, sends a browser alert when an agent needs you or finishes while the dashboard tab is hidden.
Pings that reach you with the dashboard closed are set up on Notifications.