Prototo runs across two Terminal windows and the iOS Simulator. Once you understand this, the whole product makes sense.
You
│
├── proto CLI ← scaffolds, starts, manages everything hidden
│
└── Claude Code CLI ← the design tool
iOS Simulator ← the canvasWindow 1 — Prototo
npx proto startThis starts Prototo and opens the iOS Simulator. Leave this window running. You never type in it again.
Window 2 — Claude Code
cd myapp
claudeThis is the design tool. Everything you describe here appears in the Simulator.
Claude Code reads DESIGN.md before every generation — so it already knows your colours, typography, spacing, and component library. You never repeat context.
The Simulator
This is the canvas. The only thing you look at.
Tap to test interactions. Watch it update after every prompt. When it looks right, run proto share to get a live-preview link anyone can open in their browser. See Share a live preview.
The complete workflow
npx proto start → Simulator opens (Window 1, leave it)
cd myapp && claude → Claude Code opens (Window 2, stay here)
describe a screen → Simulator updates (look here)
describe a change → Simulator updates (look here)
proto share → send a live link (see Share a live preview)Five lines. No more complexity than this.
One prompt tool. One output surface. The paradigm stays clean — you never context-switch between design surfaces.