Claude Code  ·  Codex  ·  Gemini CLI

Generative UI for the coding agent
you already trust.

Your coding agent works in the terminal, but its answers do not have to look like terminal output.


Mirafold turns dense scrollback into a clear, readable interface in the browser, as your agent runs.

And when the work calls for it, Mirafold can generate live cards, tables, charts, and other interactive views.

Pin the ones worth keeping; they stay live as the work moves on.

npm i -g mirafold
cd ~/your/project
mirafold

Free and open source — MIT. Requires Node 22+.

# what it is

01

faithful, per agent

A Codex user gets Codex in the browser — never “Claude things.” Each agent drives its own engine and inherits your own settings, memory, and permission rules, exactly as in the terminal. Switching in and out costs nothing.

02

the agent paints UI

Output is treated as a UI-instruction stream: markdown streams in, and when a component says it better than prose, the agent mounts one — cards, tables, charts, task lists. When nothing fits, it ships arbitrary UI into a locked-down sandbox.

03

your sessions, on any screen

Run as many sessions as you want — each with its own directory and agent — and open as many live viewports onto any one of them as you like: a second tab, a third, a paired phone (Pro, over an end-to-end-encrypted relay). Every viewport stays in step mid-turn, and any of them can steer.

04

never less than the terminal

A strict superset: thinking, full tool detail and diffs, subagent progress, the live task list, token and cost usage — all streamed live, then folded to dim one-liners so the transcript stays clean.

05

a shell the agent can’t touch

The agent paints the output zone and nothing else. The prompt box, the socket, and your credentials live in a trusted shell it can’t render into — and agent-authored HTML executes only inside a no-network, opaque-origin iframe.

06

your machine, your key

The daemon runs locally, like the terminal agent does. API keys never reach the browser. Or skip keys entirely and point your agent at a local model — Ollama, LM Studio, vLLM.

mission control across all your sessions a real-PTY ! passthrough — sudo and ssh prompts actually work pin any rendered block — the agent updates it in place across turns

# pricing

free

$0 open source, MIT

  • The full local product — nothing held back
  • Claude Code, Codex, and Gemini CLI
  • Generative UI, pinned live widgets, sandboxed artifacts
  • Mission control across unlimited sessions
  • Your API key or a local model
get the source
7-day free trial

pro

$12/mo · $99/yr

The same generative-UI sessions, from any device.

  • Pair a phone, tablet, or any browser with a QR code
  • Sessions travel with you — pinned widgets and all
  • End-to-end encrypted relay: it sees ciphertext and bare connection metadata — never your key, your code, or your content
  • Your API key or a local model, same as free
start free trial

# faq

Is this a web UI for Claude Code, Codex, and Gemini CLI?

Yes — a browser interface for the terminal coding agent you already use, rendered faithfully: same engine, same settings, memory, and permission rules as your terminal. Install with npm i -g mirafold, run mirafold in a project directory, and your agent opens in the browser with generative UI on top — live cards, tables, charts, and dashboards instead of a wall of scrollback.

Does it work with local models?

Yes. A session is fully local when the agent behind it points at a local inference server — Claude Code against Ollama’s Anthropic-style endpoint, or Codex against Ollama, LM Studio, or vLLM. Then nothing — code, key, or tokens — leaves your machine. The repo documents the exact recipe and an honest model/hardware table.

Where does my API key live?

In your local daemon’s environment, exactly as in a terminal — ANTHROPIC_API_KEY and friends. It is never serialized to the browser, and on Pro the relay carries end-to-end-encrypted frames plus the connection metadata any forwarder handles (IPs, timing, byte counts) — never the key or the conversation.

Can I use my Claude / ChatGPT / Gemini subscription?

Claude and Gemini: no — their terms prohibit driving a subscription login from a third-party app, so Mirafold refuses those and takes an API key instead, enforced in code, not fine print. A Codex/ChatGPT sign-in works locally, with the honest caveat shown at sign-in: OpenAI hasn’t clearly permitted third-party use in writing, but visibly tolerates it — your account, your call. No subscription of any kind runs over the relay. Local and open models have no restriction at all.

The agent generates UI — how is that safe?

Two zones, hard boundary. The agent’s output renders only into an output zone: streamed markdown (no raw HTML), schema-validated registry components, and — for arbitrary UI — a sandboxed iframe with an opaque origin and a CSP that cuts every network path. The prompt box, socket, and credentials live in a trusted shell the agent cannot render into, and anything a component does back is validated server-side against an allowlist.

Which agents — and can you add mine?

Claude Code, Codex, and Gemini CLI ship today, each behind its own adapter — none privileged. A new agent is one adapter behind a small interface, not a rewrite; the adapter spec in the repo documents exactly what an engine needs to qualify.

Can I run several sessions and see them all at once?

Yes — run as many sessions as you want, each with its own directory and agent. Mission control shows every session in one grid, at a glance, and you can act on any of them straight from the grid — no hunting through terminal tabs or tmux panes.

Do sudo and ssh work, or do I switch back to a terminal?

They work, in the same page. Type ! before any command and it runs in a real PTY on your machine, so interactive prompts behave: sudo’s password prompt appears in the shell’s own masked input — the agent never sees what you type — and afterward the agent reads the command’s output and picks up from there.

Can I use it from my phone?

Yes — that’s Pro: pair a phone, tablet, or any browser with a QR code, and the same generative-UI session travels with you, pinned widgets and all. The relay in between is end-to-end encrypted — it sees ciphertext and bare connection metadata, never your key, your code, or your content. The relay’s code is open source (MIT) like everything else; the hosted relay is the convenience Pro pays for.

What’s open source, and what am I paying for?

The whole product is MIT — shell, daemon, all three adapters, and the relay code itself, so you can read exactly what the piece you’d be trusting can and cannot see. Pro is convenience infrastructure: the hosted relay that lets your devices reach your sessions from anywhere, end-to-end encrypted. If you’d rather self-host the relay, you run the same code we do.

Your agent, your key, your machine — a far better view.

npm i -g mirafold