Three open-source products as product plans

Ghost, Plausible and Immich, each reconstructed as a full plan: the goals, the user needs under them, the approaches the team is betting on, and the jobs that check whether a bet paid off. Built by a coding agent from the public repository. Read them with your eyes or point your own agent at them.

Ghost

github.com/TryGhost/Ghost

A publishing platform's plan, from independent-publisher revenue to the live bet on an ActivityPub presence.

Read the Ghost plan → How it was built (the transcript)

Plausible

github.com/plausible/analytics

A privacy-first analytics product, with the tracker-script and NPM-module work in flight and a measurable success condition on it.

Read the Plausible plan → How it was built (the transcript)

Immich

github.com/immich-app/immich

A self-hosted photo platform's plan, including the wager on a WASM plugin platform toward an extensible product.

Read the Immich plan → How it was built (the transcript)

What you are looking at

Every plan has the same four layers. A goal is an outcome with a measure. A need is a user problem under it. An approach is a bet on how to meet the need, with a status (in development, in validation, resolved, retired). A job is an observable checkpoint that says whether the bet is working, assigned to a phase. Read top-down and the plan explains why the work exists; read bottom-up and every job has a reason.

These are reconstructions. The agent read the repository and what the project publishes about itself, then wrote the plan that evidence supports. The projects' own teams did not write or endorse them; treat the plans as an outside reading, not the roadmap.

How they were built

One prompt, the public agent guide, a clone of the repository, and the API. No human edited the result. The full transcripts are on the evidence page: the prompt, every tool call, the mistakes and the recoveries, and the node count at the end.

Read them with an agent

Each plan page is plain HTML underneath the interactive canvas, so an assistant that fetches the URL gets the whole tree as text. The same plans are available as JSON, as an OKF markdown bundle, and over MCP once you have your own account (the free tier includes the API). Nothing here is locked in.