A canvas for CLI agents · macOS
Your whole workday,
at any altitude.
Terminals, agents, browsers and automations on one infinite canvas. Zoom out to see every agent at once. Zoom in to answer the one that needs you.
01 · One canvas
Everything you run.
One canvas.
Billing v3
- Intents behind a flag
- Webhooks idempotent
- Refunds through intents
- Remove charges API
Edited by you and the agent
Wires mean something: this agent drives that browser, this schedule starts that agent, this note is its plan.
02 · Semantic zoom
One object.
Four altitudes.
The same tile draws differently depending on how many pixels it gets. Not a rendering trick: the feature. Pinch, drag the altimeter, or scroll the stage.
- Liveover ~330 px
The full terminal, typeable, with its scrollback. Browsers are real pages.
- Summary70 – 330 px
Agent, task, state, last line, progress. Enough to know without reading.
- Signalunder ~70 px
A glowing card in its state colour. “Needs you” pulses.
- Everythingwhole canvas
Regions become counts: 12 agents · 8 working · 1 needs you.
03 · At a glance
Twelve agents.
One glance.
States come from the agents’ own hooks, not from guessing at the screen. Working, needs you, done: you see it from across the canvas, and ⌘J walks you to each one that’s waiting.
- Working
- Needs you
- Done
- Idle
04 · The canvas speaks MCP
Agents put things
beside themselves.
Every agent Altifield starts gets the canvas as a tool. It can open the staging dashboard next to itself, pin its plan as a note, or ask for your attention. Writes ask first, and every one is a single undo.
05 · Automations
Automations
you can watch.
Cron, webhooks and file watches live on the canvas, wired to the agents they start. They run in the background daemon, so they fire with the window closed.
06 · iPhone and iPad
Away from the Mac.
Still in charge.
When an agent asks to run a command or edit a file, the question reaches your phone with the diff. Allow once, always, or deny with a reason the agent reads. Answer at the Mac instead and the phone clears at once.
- Paired by QR, end-to-end over TLS 1.3, your Mac’s key pinned
- Face ID before anything is allowed
- The terminal stays in charge: no answer is ever invented
- Read an agent’s conversation, its terminal and its diff; reply by voice
In development · iOS 18
07 · The film
Fifteen seconds,
one canvas.
A Swift app drawn on the GPU at the display’s rate. Not a web view, not Electron.
Shells live in a background daemon. Quit the app, open it tomorrow, everything is where you left it.
Your canvas, your terminals and your keys stay on your Mac. The phone talks to it directly.
Claude Code with hooks and the canvas as a tool, Codex, or anything that runs in a terminal.
Your whole workday, at any altitude.
macOS 15 · Apple silicon · AGENTS · TERMINALS · BROWSERS · AUTOMATIONS