
unterm
by zhitongblog
Unterm
The terminal AI agents can drive.

Cross-platform terminal (macOS / Linux / Windows) built on Unterm's native
next-core terminal engine, with one design bet: the terminal itself is
controllable from the outside by any AI agent over MCP. Claude Code, Codex,
Gemini CLI, Cursor, Aider, your own scripts — they all get the same JSON-RPC
surface (103 authenticated methods plus auth.login) to spawn shells, run
commands, read pane state, capture screenshots, change settings, and record
sessions.
Since v0.55 the relationship runs both ways: agents drive the terminal from outside, and the terminal is an Agent Cockpit for the agents running inside it — live per-pane agent state, a waiting-first Inbox, fleets of N agents on one task in N isolated git worktrees, and a Review page to diff / merge / roll back what they produced.
The other 2026 terminals each pick a different side: Warp embeds AI inside a closed cloud (Oz), Ghostty stays out of your way and lets you bring your own tools, iTerm2 is Mac-only. Unterm picks the third side — terminal as MCP-controllable surface, deliberately keep AI generation out of the terminal, let external agents grip it through the API, and give the human one cockpit to run them all from.
Practical implications:
- Every Unterm window starts a local MCP server (line-delimited JSON-RPC over TCP) and a local HTTP settings server (Web Settings page) on auto-allocated ports. Both are auth-token gated, both are 127.0.0.1-only, no cloud round trip.
- Settings live in the browser, not the terminal. Cell-grid TUIs can't deliver modern form UX (no proper text inputs, no live preview, no color picker). The in-terminal
▼menu holds quick actions and links out to the Web Settings page — configuration itself happens in the browser. - 9 languages out of the box: en / 简体中文 / 繁體中文 / 日本語 / 한국어 / Deutsch / Français / Italiano / हिन्दी. Auto-detects from system locale, can be overridden in Web Settings or via
unterm-cli lang set <code>. - Multi-instance discovery: every running Unterm process owns one NATO-named instance (alpha, bravo, charlie…) and writes its ports + auth token to
~/.unterm/instances/<name>.json. Agents that drive several windows at once enumerate that directory. - Cross-platform parity is a correctness property: if a feature works on Windows but bails on macOS or Linux, that's a bug, not "not supported yet."
- Subtraction over decoration: no AI chat overlay inside the terminal and no cloud dependency for core operation. Proxy settings auto-detect the system by default and also support explicit HTTP/SOCKS overrides, node pools, rotation, and Clash/mihomo controllers. Finder integration on macOS uses the native Finder right-click extension and Services.
The GUI and terminal runtime now use Unterm's native next-core engine. The
repository still carries selected upstream components and attribution where
they remain dependencies, but WezTerm mux/window state is no longer the
product kernel.
Agent Cockpit
Run Claude Code, Codex, Gemini CLI, or Aider in any pane and Unterm sees them — no configuration, no wrapper. Five pillars, all local:
- Agent state engine — every pane's agent and its state (working / waiting-for-you / idle / done), read from OSC progress + title signals, process fingerprints, and optional official hooks. Tab badges + a cross-window tally chip in the top bar.
- Inbox (
Ctrl+Shift+A) — every agent that's waiting for you in one queue, longest-waiting first. Enter jumps to the pane; one keystroke later you've answered its prompt. - Fleet — one task × N agents × N isolated git worktrees (
../<repo>.fleet/), one tab each. Same agent ×3 for throughput, orclaude,codex,geminifor a bake-off. - Review — agents get checkpointed before they touch a repo (dangling-commit
Related servers

n8n
by n8n-io
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.

@modelcontextprotocol/server-everything
OfficialMCP server that exercises all the features of the MCP protocol

@modelcontextprotocol/server-filesystem
OfficialMCP server for filesystem access