The app builds itself.
Canopy is made by one person. Not one person typing every line — one person running fleets of AI coding agents across a dozen projects, all day, and needing somewhere to stand while they work.
That somewhere became this. Canopy is written inside Canopy: the threads that shipped the routing box were routed by the routing box, the permission cards that gate a tool call were approved through permission cards, and every release is cut from tabs in the window you just downloaded. It is the shortest feedback loop a tool can have. If something about running agents is annoying, it is annoying to the person who can fix it, that day.
Why this exists
Something changed about how software gets written, and the tools have not caught up to it. The agent CLI won. Anthropic ships Claude Code. OpenAI ships Codex. Google ships Gemini CLI — and then folds it into Antigravity, an editor built around agents instead of files. GitHub ships Copilot CLI. Every one of them is good. Every one of them is also a walled garden with the vendor’s name over the gate.
If you actually work this way, you do not pick one. You use Claude for the thing Claude is good at and Codex for the thing Codex is good at, and by lunchtime you have nine terminal windows, no idea which agent is waiting on you, and no way to hand a colleague a live view of any of it. The vendors have no incentive to fix that; a neutral layer is exactly the thing none of them can build.
Where that actually stands today, plainly: the neutral layer is built — five agent CLIs behind one adapter interface, one place that knows how each resumes a session or spells an approval prompt — but Canopy currently offers Claude Code alone. The rest are written and tested against documentation, and shipping an agent on facts nobody has checked against the real binary is how you get a tool that breaks the first time someone runs it. One of them had a config key silently renamed under us; we found it, and it had been quietly dropping context the whole time. They turn on as they are verified, one flag each.
The unit of work moved
The second half of the thesis is smaller and matters more. Editors — and the agent CLIs that inherited their assumptions — are built around a repository. One folder, one window, one context. But nobody works in one repository anymore. A change to your API touches the client, the schema, the deploy config and the docs, sitting in four directories the agent has never heard of.
That is the bet Canopy is built on, and it is why the index is cross-project, why ⌘K searches everything at once, and why you can describe a task without knowing which folder owns it. Google reaching the same conclusion — pulling a CLI up into a workspace-shaped product — is not competition so much as confirmation that the ground moved.
What this is not, yet
Canopy is early and says so. It is version 0.8.0. There is no team, no funding, and no logo wall of customers. What is on this page is what actually runs today; when something is only partly true, it is written as partly true.
Bug reports, a build for a platform not listed on the download page, or an argument about any of the above — all welcome.