Planning Work for AI Agents That Forget
A coding agent does an hour of great work, the session ends, and the context is gone. OpenPlanr fixes that by turning a feature spec into a durable plan the agent re-reads every session, from codebase analysis to shipped tasks.
Asem Abdo
A coding agent can do an hour of genuinely good work. Then the session ends, the context window resets, and the next morning it has no idea what it was building or why. People reach for a bigger context window. That is the wrong fix. A context window is working memory, not a record. The fix is to put the record somewhere the agent can always re-read it.
That is the whole idea behind OpenPlanr: a CLI and a Claude Code plugin that turn a feature spec into a structured plan an agent can follow across sessions. The plan is the source of truth. The agent is just the thing that executes it.
The plan lives in files, not in the chat
Every artifact is plain Markdown under .planr/: epics break down into features,
features into user stories, stories into tasks. Each task carries acceptance
criteria in Gherkin, so "done" is defined before a line of code is written.
---
id: T-014
type: Tech
story: US-003
estimate: 3
---
# 301-redirect retired post slugs
## Acceptance
Scenario: a reader hits an old slug
Given a post was published at /blog/old-name
And its slug later changed to /blog/new-name
When a request arrives for /blog/old-name
Then the server responds 301 to /blog/new-nameBecause the plan is files, it is also a diff. It reviews like code, it survives a restart, and two agents a week apart read exactly the same instructions.
Phases, not vibes
A single mega-prompt asking an agent to "build the feature" produces confident mush. OpenPlanr runs a pipeline of narrow agents instead, each with one job and a tight contract:
- Analyze the codebase on init, so the plan is grounded in what already exists.
- Turn designs into a design spec.
- Decompose the spec into stories and tasks.
- Implement, with a frontend agent and a backend agent taking one task at a time.
- QA against each task's acceptance criteria.
- Generate infrastructure config and documentation.
A narrow agent is easier to steer, easier to verify, and far less likely to wander than one prompt trying to hold the whole feature in its head.
Tasks that fit the system you already have
Task generation is ADR-aware. It reads the architecture decisions already recorded in the repo, so new work continues the existing system instead of quietly reinventing it. This is the difference between an agent that adds a second auth pattern and one that uses yours.
Two surfaces, one engine
OpenPlanr ships as both a command-line tool and an in-editor plugin. They share
one deterministic engine, so the CLI and the editor can never drift into two
different answers for the same project. status with no arguments, for example,
emits the same whole-project delivery report either way: every spec, backlog
item, and quick task by state, cross-referenced against GitHub and Linear.
Meeting the team where it already works
The plan does not stay trapped in a folder. Tasks sync two ways with GitHub
Issues, and provider routing lets the same pipeline run against different model
backends. The agent plans in .planr/; the team sees the work in the tracker
they already use.
The lesson
Agents do not need more memory. They need a plan they can re-read, written down where a restart cannot erase it. Make the plan a first-class, version-controlled artifact and the agent stops being a clever improviser and starts being a reliable collaborator that picks up exactly where it left off.
Design That Ships: Design as a Contract, Not a Deliverable
Most AI design tools end the moment the picture looks good. I built OpenPlanr's design phase on the opposite stance: a design is only valuable if it survives to production. So design is the first governed phase of a pipeline, and its real output is a machine-readable contract the planner, the build, and QA are all held to.
7 min readA Design Loop for AI Agents
Most AI design is one shot and converges on the same safe look. I built a loop instead: taste-aware concepts, a spend gate, parallel variants on a live board you pin-comment, and a $0 path that needs no image API at all.
4 min readA Design System an Agent Cannot Skip
Without a project design system, an AI agent quietly falls back to a generic look. So I gave OpenPlanr a system it cannot skip: a hard gate before any design runs, and a linter that fails the build on sub-AA contrast.
3 min read