Skip to content
Back to writing

OpenPlan, alignment as a system.

A desktop app that puts every agent plan through a defined lifecycle, with alignment required before implementation begins.
October 30, 2026 · 10 min read

Agents are great at building features, fixing bugs, optimizing code, and a myriad of other things. But one thing I’ve repeatedly noticed is how easily they miss the context a team builds up over the years: why the product works the way it does, what customers keep asking for, and which past decisions still matter.

I’ve seen this pattern play out more than once, and it has bitten us back every single time. An agent makes a reasonable assumption, fills in a gap in the requirements, and builds something that technically works but isn’t quite what we needed.

You could argue that this can be solved with good documentation and retrieval mechanisms. And to some extent, it can. But even with all the right documents, agents often miss the bigger picture. Product context changes over time, and documentation inevitably gets out of date.

Generally, an agent works from an initial prompt, context about the repo, and any additional docs it can find. That’s rarely the whole picture.

An agent can be great at executing a task, but it can still:

Failure 1
Misreads the ask
Misread a requirement or fill a gap in the spec with a reasonable but wrong guess.
Failure 2
Misses the bigger picture
Solve the stated problem while missing the wider product vision or overlooking what else the change might affect.

Yeah, agents can write code and solve the problem in front of them. Whether it’s the right problem to solve is a separate question.

Why code review alone doesn’t catch it

Most workflows with coding agents follow roughly the same five steps:

  1. Gap opens
  2. Plan checked
Step 1 of 5 · You
Prompt
What happens

You describe the task in a prompt.

What goes wrong

The prompt carries only what you remembered to write down.

Step 2 of 5 · Agent
Questions
What happens

The agent asks a few clarifying questions.

What goes wrong

A few questions can't carry your team's context, so the agent fills gaps with guesses.

Step 3 of 5 · Agent
Plan
What happens

The agent writes a plan from what it understood.

What goes wrong

A misunderstanding from step 2 turns into a clean plan for the wrong problem.

Step 4 of 5 · You
Review
What happens

You review the plan the agent wrote.

What goes wrong

Review checks the plan as written. It can't see the question nobody asked.

Step 5 of 5 · Agent
Build
What happens

The agent builds it, and code review follows.

What goes wrong

Changing direction now costs the most, because the code already exists.

We do review the code after implementation, but there’s a problem. If the agent or human reviewing the code is working from an already misaligned plan, they might not even know it. It’s easy to approve something that’s technically correct without realizing it solves the wrong problem.

One solution is to introduce a review step at the planning stage. But reviewing long, complex plans can become tedious, especially when there’s a lot to go through.

The real gap is at step 2.

A few quick clarifying questions aren’t enough to transfer the context a team carries in its head. Files like CLAUDE.md help, but they’re better suited to general instructions and conventions than capturing the intent behind a specific piece of work.

Introducing OpenPlan

Alignment shouldn’t depend on how complete the initial prompt was or how many questions the agent happened to ask.

OpenPlan gives every piece of work a defined lifecycle, with explicit states and rules for moving between them.

The plan is the basic unit of work. A single plan can span multiple repositories and multiple agent sessions.

To be honest, OpenPlan is mostly a nice way to manage Markdown files and other metadata. But, that’s the point. The value isn’t in the files themselves, but in the structure around them. It makes alignment a fixed part of every plan rather than something that happens only when someone remembers to do it.

The plan lifecycle

Every plan moves through six states. Alignment is the gate: no code gets written until it’s complete.

State 1 of 6 · You move it on
Draft
What happens

The agent files the first version of the plan. You comment on it until it reads right.

How it moves on

Sending your first review opens alignment.

State 2 of 6 · You move it on
Alignment
What happens

Four personas take turns asking questions. Each answer raises the alignment score.

How it moves on

Build unlocks once every question has an answer and the score reaches your target.

State 3 of 6 · Agent moves it on
In progress
What happens

Agents work through the todo list. A new requirement you raise becomes a new todo.

How it moves on

It moves to review once no todo is open. You can reopen alignment.

State 4 of 6 · You move it on
In review
What happens

The work waits on review: an agent review, a human review on GitHub, or CI checks.

How it moves on

You mark the plan completed once every PR is merged.

State 5 of 6 · You move it on
Completed
What happens

Every PR for the plan is merged, and you've confirmed it.

How it moves on

Only you can complete a plan. Agents stop at in review.

State 6 of 6 · You move it on
Archived
What happens

Any plan can be archived. It sits behind a collapsed toggle on the board and table views.

How it moves on

Only you can archive a plan, from any state.

Read the six states as a list
  1. Draft. The agent writes the first version of the plan. I review it and give feedback until it reads right.
  2. Alignment. The agent asks me questions until we agree on what to build, why it matters, and how we’ll approach it. The outcome is a todo list for the plan. More on this below.
  3. In progress. Agents work through the todo list. If I introduce a new requirement along the way, it’s automatically added to the todo list.
  4. In review. Once the implementation is completed and waiting for review. This could be an agent review, a human review on GitHub or a similar platform, or CI checks.
  5. Completed. All PRs associated with the plan have been merged.
  6. Archived. Any plan can be archived. Archived plans sit behind a collapsed toggle in the board or table view.

Alignment: the step that matters most

This is where OpenPlan gets opinionated. Before any code is written, the agent and I need to agree on what we’re building, why it’s worth building, and how we’ll build it (it’s okay even if I’m not sure how.)

How it works

The agent drafts questions, each with a few options (always with free text option). Intentionally, the agent never makes any decision. The goal is to help develop product and engineering taste, not to take decisions off my plate.

The agent owns alignment
It’s the agent’s job to identify gaps between how I think about the work and how it understands it. I shouldn’t have to know what to ask.
Easy questions first
Questions start simple and gradually get harder. The harder ones might require me to explain my reasoning, which is often where the real gaps show up.
"Let the agent figure it out" is a valid answer
I won’t always know the answer. Every question has an option to hand that decision back to the agent.
Short and direct
Questions are written plainly. The entire process should take around 10–15 minutes.
The output is a todo list
Once we’re aligned, the plan gets a todo list. Every agent working on that plan uses it as the source of truth.

As we work through the questions and agree on the requirements and approach, the alignment score increases. This score determines whether an agent can start implementing the plan.

Add CSV export to the orders table
Everyone
0 Alignment Below your 80% target
Round 1 · after your first review
Mila Product owner Scope

Who needs this export first?

Iris Designer Edge cases

What should Export do when the filters match no orders?

Theo Tech lead Error handling

What happens if an export fails halfway?

Kai On-call Scale

What happens when an export has 500,000 rows?

Pick an answer for each question. Build opens at 80%.
An example plan in OpenPlan's Alignment tab. Pick answers to see the score and Build respond.

Why an app and not just a skill?

A skill would get me most of the way there. Something like Matt Pocock’s /grill-me already makes an agent question you before it starts building, and it works well.

I built an app anyway, for three reasons.

Good tools build good habits

I enjoy using well-designed interfaces, and I tend to come back to tools I enjoy. If the alignment process feels good to go through, I’m more likely to do it every time.

Some people might see this as bloat. For me, it helps make the habit stick.

I want to practise product taste

OpenPlan is a low-stakes place to experiment with different flows and interactions. At work, I build for enterprise B2B customers, where the stakes are too high to experiment as freely.

Right now, agents can build and iterate quickly, but they’re not particularly good at knowing what feels great to use. They can learn from existing interfaces and past design research, but tools for working with agents are still relatively new.

I think their design should come from how people actually work with agents today, rather than from patterns built for a different time.

Borrowing from products I admire

For the design, I learned a lot from Linear, which has one of the friendliest interfaces I’ve used. I also drew inspiration from Arc browser (they have some of the cleanest UX, especially onboarding), xAI’s approach to bots, Notion, OpenAI, and Anthropic.

I respect the care these teams put into their products, and I wanted to bring some of that thinking into OpenPlan.

Making plans easier to understand

Long plans are slow to read, and it’s easy to miss a misunderstanding buried somewhere in the middle.

To address this, OpenPlan can generate short explainer videos of a plan using Remotion. A video can communicate the main flows much faster than pages of text.

It costs more tokens, but I think that’s worth it.

Trade-offs I’m willing to make

OpenPlan comes with a few trade-offs that I’m happy to accept:

More friction
Every plan takes longer to start. I’m trading some speed upfront for fewer problems later.
Opinionated by design
Fixed states and fixed personas won’t suit every team or every task.
Extra token cost
The explainer videos aren’t free.
Still Markdown underneath
There’s no fancy new file format or technology here. The value is in how the system structures the work and changes how I approach it.

What’s next

OpenPlan is still changing. I’ll share more as I make progress. Cheers!

Comments