Activity sidebar
A unified view of every agent in the project.
The activity sidebar is atrium's "what is happening right now" surface. It shows every running agent across the project with status, last event, and quick actions — expanded into cards or collapsed to a strip of status dots.
Toggle it with Cmd+Shift+A. The same sidebar is what the menu-bar popover renders, so you get the identical cards without bringing the window forward.
Layout
The sidebar groups cards by project into collapsible sections, each with a count chip and the project's icon. Project order matches the Home sidebar; section names truncate at the chevron rather than wrapping. Within each project group, rows appear top to bottom in this order:
- Live terminal rows — foreground processes currently running in terminal panes, ringed with the adapter accent so they pop while running. Click a row to jump to the pane. Hover for stop (SIGTERM) and close pane actions.
- Stopped-process rows — when you stop a foreground process or it crashes, its command stays in the sidebar with a play button to re-run it, a stop/play toggle if it's running again, and a remove-from-sidebar button to hide it without closing the pane. Commands that exit cleanly on their own (
clear,ls, a successful build) do not surface — only non-clean exits and user stops. - Pinned cards — agents you marked Later; stay visible even when idle.
- Background cards — see Background agents.
- Active cards — agents that are working, waiting for input, or were recently stopped.
- Dismissed cards — kept in a collapsed region so you can undo a dismissal.
Background agents
An agent does not need a mosaic tile to keep working. Send to background detaches its pane from the room while the process keeps running headless; the card moves into its own Background section, badged, with live status. Bring it back and it returns to a fresh room, focused.
Send an agent to the background from the card's context menu, its hover actions, or the close dialog — closing an agent pane offers backgrounding as an alternative to killing it. A launch profile can also set its launch target to background, so a launch never takes a tile in the first place.
Background agents that need attention still bubble up and still fire OS notifications.
atrium agent list # foreground panes + background runs
atrium agent background <ref> # detach from the room, keep running
atrium agent foreground <ref> # re-attach to a fresh room and focus
atrium agent dismiss <ref> # soft: kill the process, keep the session resumable
atrium agent resume <ref> # re-spawn a dismissed run in place
atrium agent stop <ref> # hard: kill and mark the run cancelled
atrium agent launch <slug> --background
Stop is not dismiss. dismiss is soft and resumable — the session is preserved and the card stays put. stop is terminal — the run is cancelled and leaves the Background section.
Status states
Each agent card shows a status badge. States (driven by hook events from the adapter):
idle— waiting for input.working— processing; a tool call is in flight.waiting-for-input— blocked on a user prompt.needs-permission— a tool permission is pending.stopped— killed by signal or exited.crashed— unexpected exit.rate-limited/auth-failed/billing-exceeded— special stop reasons surfaced when the adapter reports them.
Permission prompts and questions get distinct badges — "needs permission" and "waiting on an answer" are different problems — and a permission prompt can be resolved from the card itself.
The adapter's accent color appears on the card's border so you can tell Claude, Codex, and the rest apart at a glance.
Per-card actions
- Click — jump to the agent's pane.
- Message — an inline reply field.
Cmd+EnterorCtrl+Entersends the text to the agent. - Popout — pop the card's pane out into its own room without taking your eyes off the sidebar.
- Right-click — a full context menu on the card, mirroring the kebab.
- Kebab menu — Dismiss, Later (pin), Send to background, Close pane, View details.
- Undo (on dismissed cards) — restore to active. Resume is also available on dismissed and idle cards directly from the card and the collapsed-sidebar tooltip.
- Nudge (on stopped or resume-failed panes) — ask the adapter to pick back up where it left off.
When an agent goes idle, the pane dims to an idle backdrop with a full-resolution screenshot of its last visible state (an active wallpaper shows through), a Resume button in the foreground, and the same dismiss/later affordances as the sidebar card. Resuming brings the pane back live without restarting the adapter session.
Omni Chat
Any agent card can expand into an Omni Chat dock — a scrollable chat right in the sidebar, so you can follow and reply to an agent without leaving the pane you're working in. From the dock you can:
- Send prompts and attach files to the agent.
- Interrupt it mid-turn.
- See its pending question surfaced directly on the card when it's blocked on input.
Runs
Per-project run commands — dev servers, watchers, builds started from the project sidebar — surface in a Runs section that spans every room, so a server started in one room stays visible no matter where you are. Each run row carries stop, clear, edit, and open-in-room controls, and a live scrollback preview on hover. While any terminal or run command is still active, the sidebar won't claim "All quiet."
Working vs. waiting
A card flips from working to waiting-for-input only when the adapter and all of its subagents have nothing in flight. If a primary turn finishes but a spawned subagent is still running, the sidebar keeps the card in working instead of falsely flashing waiting. The same logic drives the dock badge and OS notifications.
Density
Four densities, toggleable per project:
- Full — status, last event, progress details, tool call summary, permission preview.
- Semi — status badge with the last event time.
- Compact — a status dot and the adapter's accent color, with hover actions.
- Ultra-compact — the tightest rows, centering the project glyph and fitting the most agents on screen at once. Unfocused cards go transparent so the focused one reads immediately.
Collapsed mode
Clicking the sidebar's collapse chevron shrinks it to a rail. The rail keeps real sections rather than one undifferentiated strip: each dot represents one agent with its status color, grouped as in the expanded view. The focused pane's dot gets a focus ring so the spatial cue isn't lost when the sidebar is narrow. Hover to preview the full card; click to expand back.
Notifications
- OS notifications — a native macOS notification fires for status transitions you care about (for example,
working → waiting-for-input). Enable under Settings → Activity → Notifications. Clicking one jumps directly to the pane that posted it, even when atrium isn't the focused app. - Sound — a configurable notification sound (Settings → Notifications), defaulting to Glass, plus per-agent sound configuration.
- Toasts — in-app popovers for cross-room events. Useful when you are in another room and an agent needs attention.
- Dock badge — the app icon shows a count of agents needing input.
- The menu bar — see The daemon → The menu bar for the tray's working/waiting fleet counts.
Adapter color scheme
Per the current design, the focused pane's card gets an accent wash across the whole card. Unfocused cards share a neutral resting border; per-adapter accent color shows up as a side ring rather than a full card tint.