agterm organizes AI coding sessions into named workspaces instead of scattering them across tabs — so a screen full of concurrent agents stays legible, and it's obvious which one needs you. And when there's no agent in sight, it's simply a fast, modern terminal for everyday work.
Apple Silicon · macOS 14+ · signed & notarized · embeds Ghostty's engine
Two-level sidebar: workspaces grouping their sessions — with agent-status glyphs on the rows that need you.
Running several coding agents means many long-lived sessions, each progressing on its own. A tabbed terminal loses track of them quickly. agterm doesn't.
A vertical, two-level sidebar groups sessions under named workspaces like "work" and "personal". Drag between them, split into two shells, and reach any session by name, recency, or keyboard.
A bundled CLI, agtermctl, drives almost everything over a local socket: create sessions, type into them, run overlays, move windows, or post a notification tied to a specific session.
Each agent reports its state onto its sidebar row as a tinted glyph — active, blocked, or completed — so a screen of concurrent agents shows which one needs you. Wiring is automatic for Claude Code and Codex.
Split a session, drop a scratch terminal over it, or run a program in a floating overlay without disturbing the session beneath. Jump anywhere with a fuzzy palette; flip through recents with Ctrl-Tab.
An installable agent skill teaches Claude Code or Codex the control model and the full agtermctl command set — so an agent running inside agterm builds its own layout, runs overlays, and manages windows without you explaining the API.
Everything works as a capable general-purpose terminal for everyday multi-project work — 512 bundled themes, live-preview theme picker, custom key mappings, and full session persistence across launches.
A session is never just one shell. Split it, drop a terminal over it, or float a program on top — every extra surface is always a keystroke away and stays alive when hidden, so nothing you started ever gets lost.
Two shells side by side in one session — run the agent left, watch logs right. The inactive pane dims toward the background so the focused one is always obvious.
A per-session third shell that covers the session full-screen. Opens in its directory, always available, and just hidden — toggle it back and the same shell is waiting.
One window-wide scratch, overlaid at 90% and shared across the window. It opens in the active session's directory for a fast aside — dismiss it with the same key or a click on the margin.
Run any program full-screen or in a centered floating panel over a session, without disturbing the shell beneath. When it exits, the overlay vanishes and the session is exactly as you left it.
A window is a top-level bundle of workspaces and sessions, each in its own on-screen macOS window. Keep a library of them — "work" on one screen, "personal" on another — and open one per display. The set open at quit reopens next launch, frames restored.
None of this is limited to agents. agterm is built on Ghostty's engine — the same fast, GPU-accelerated rendering and VT parsing — and works as a capable general-purpose terminal for everyday multi-project work. The workspaces, palettes, and keyboard-first navigation help just as much whether you're running coding agents or just juggling a dozen shells.
A live-preview picker applies each theme as you browse — Enter commits, Esc reverts.
Every action has a shortcut, and a kitty-flavored keymap.conf rebinds any of them.
Tree, names, directories, splits, and windows all restore on the next launch.
Two shells side by side, in-terminal find, and a scratch overlay on any session.
Almost everything you can do in agterm by hand, agtermctl can do over a local socket — no hidden UI-only actions. That turns the terminal into something you program around your own flow: a script or an agent builds and steers its own layout, and you extend the app's behavior without ever touching its source.
Bind any of it to a key or the action palette through keymap.conf — with the focused session's directory and selection passed in as tokens. Between the socket and custom commands, you shape the terminal around your workflow instead of adapting to the app's.
full agtermctl reference →The cask also installs the agtermctl CLI, so cask users shouldn't run the in-app installer too.
Grab the latest .dmg from releases, open it, and drag agterm.app into /Applications.
releases page →Requires macOS 14+, Xcode 26 with xcodegen, and Homebrew.
Signed and notarized for Apple Silicon (arm64) Macs on macOS 14+ — opens without any Gatekeeper workaround.
Open source. Native. Built on Ghostty's terminal engine.