The Interface
The screen is a chat (two thirds) next to a stack of dashboard panels (one third), with a title bar above and a status bar below showing hints, flash messages, agent status and tokens per second.
Dashboards
Focus the dashboard area with tab (or click a panel). The settings panel is editable in place — model picker, permission mode, max tokens, temperature, thinking, budget, tools, verbose, dashboard side — and every change is applied live and written back to the config file.
The dashboard can dock right, left, top or bottom (position in config or the "dash side" setting). Panels are reordered with left/right inside the panel picker (p).
Available panels: agents, tokens, todos, git, changes, tools, mcp, session, settings.
Git panels
The git panel shows branch, ahead/behind, last commit and change counts. The changes panel is an IntelliJ/VSCode-style file list with staged/unstaged/untracked coloring. Both refresh automatically and after every agent turn; /diff shows the full diff.
Context & cost
The tokens panel shows a context-fill gauge (window size per provider, context_window to override) and an estimated session cost from a configurable [costs] price table. /compact summarizes the conversation to free context.
Scrolling & reading
pgup/pgdown and the mouse wheel scroll the transcript whatever has focus, so you can read back while a prompt is half-typed.
Thoughts collapse to › thought (210 tok) — click that line to expand just that one, click again to fold it back. ctrl+o expands everything at once (verbose mode).
In chat focus: j/k scroll, u/d page, g/G top/bottom, y/Y copy last response/transcript. Clicking a pane focuses it (the chat drops you into write mode); clicking a dashboard panel selects it, and enter on the settings panel edits its rows.
Copy & selection
Marking text in the chat copies it automatically — drag with the mouse, and the moment you let go it is on the clipboard (wl-copy/xclip/pbcopy, OSC 52 fallback). The mark stays highlighted until the next click. f3 releases the mouse entirely for native terminal selection.
Edits show as diffs
When the agent writes or edits a file, the chat shows updated main.go (+1 -1) and the changed lines, coloured, with a little context. The model still gets the terse result, so the diff costs no context.
Themes & glyphs
/theme picks a palette:
taro— the defaultcontrast— colorblind-safe Okabe-Itomono— no color at all
/glyphs picks the character set:
unicode— the defaultascii— renders in any terminal or font, borders includednerd— icons, needs a patched font
Both switch live and are saved. Every color is overridable with a hex code under [colors], per background if you want ("#light/#dark") — see the Configuration reference.
Vim everywhere
ctrl+e edits the prompt and ctrl+g the system prompt in $EDITOR/nvim/vim. /settings opens the config file in your editor and hot-reloads it on save. Verbose vs compact transcripts toggle on ctrl+o.