Sophon 2.0 is here
NewFull-screen chat in the terminal

Sophon CLI

Your assistant. Full screen. In the terminal.

A purpose-built terminal client on a custom cell compositor — Sophon owns every cell of the screen. Live transcript, approval cards with countdowns, themes, and dialogs, all without leaving your prompt.

$dotnet tool install -g sophon-cli

The full-screen surface

Built like a real TUI.

Not a prompt with colors on it. Every band on the screen is drawn, diffed, and owned by the client.

Scrollback that belongs to the app

Wheel, PgUp, PgDn scroll an app-managed transcript. Scroll up and a '↓ latest' chip marks where live streaming continues; text selection works with ⇧-drag or F2. Resumed sessions seed the last messages behind a 'resumed ·' divider.

Approvals that can't be missed

Risky actions surface as bottom-stack attention cards: a risk-colored rail, the exact parameters, single-key Approve/Reject, and a live countdown. Cards arm after a beat and never steal keys mid-typing.

Dialogs, not detours

/theme previews the whole frame live before you commit. /resume opens a native session picker. /plan overlays the full plan, windowed around the running step — and a '◆ plan 2/5' row keeps progress visible while it runs.

Fast because it's honest

Repaints only what changed — under 4 KB per frame while streaming, capped at 30 fps, zero idle CPU. Tool output folds at 10 lines so an all-day session stays readable.

In-session commands

One keystroke away.

/theme
/resume
/plan
/tokens
/mode graph
/clear
/provider
@ files
⇧-drag select
⌃Z job control

Beyond the transcript

Fits your terminal. And your scripts.

Four themes, one brand

Indigo Core by default; Deep Void for OLED true black; Graphite for muted neutral; Daylight for light terminals. Switch live with /theme, pin one with SOPHON_THEME or cli.json.

indigo-core
deep-void
graphite
daylight
Theme reference

Degrades gracefully

Full screen needs a 70×18 window; anything less falls back to a pinned input, then a classic prompt — nothing to configure. Opt out any layer with an env var, and sophon doctor --reset-terminal un-sticks a stranded terminal. Exiting prints a resume card so no session is ever lost.

The whole product is a subcommand

Chat is the front door, but every Dashboard surface ships as a sophon subcommand — sessions, agents, models, approvals, workflows, memory, nodes — with --output json for scripting.

Open a terminal. Meet your assistant.

Install the CLI, point it at your Gateway, and type. The full-screen chat is on by default wherever your terminal can carry it.