Plans and the Roadmap
Every agent has a plan: a few numbers it is judged on and a list of steps. The Roadmap draws that plan as one rail, top to bottom, with a sentence at the top that says how far along it is.
Example screen with made-up data.
Where you see it
On the Office, each agent's row shows its first number as a bar, like "Came to the workshop, 9 of 15." If there are more numbers, a small +1 more opens them all. Each number says As of: (where it came from and when) and How we count: (how it is counted).
The Roadmap opens when you tap an agent on the Your agents tab. From the top:
- A sentence: "Spring baking workshop is 3 of 7 steps in. Waiting on the cafe." It says what the plan is stuck on, waiting on, or doing next.
- Approve the plan when there are steps nobody has approved yet.
- A bar with one block per step, colored by state, and a small legend.
- The rail: one row per step, with its date or what it waits on, and who approved it.
- The numbers again at the bottom, every one of them.
What happens, step by step
- Each step has one of five states. See the table below. There is no "doing" state on purpose.
- Each step can have a time. A due date, or a place relative to the event date ("2 days after the event"). A step whose time has not come is not ready yet.
- Each step can have a note. It shows as one quiet line under the step. Tap the pencil to write one. The agent reads it on its next wake. This is how the owner talks back to a step.
- A waiting step can carry a nudge date. The rail says "Nudges them Mar 30 if nothing lands."
- A step checked against a quality bar (a written list of what good looks like) shows a row of small boxes and how many bars it passed.
- "Next up" skips blocked steps. The sentence names the first step that can actually start, not one still waiting on something else.
- Numbers change only with a source. An agent cannot change a count without writing the "As of" line that says where it came from.
| State | Shown as | What it means |
|---|---|---|
next | up next | Not started or in progress. |
waiting | waiting | On hold for a person or the world, with who it waits on. |
done | done | Finished, approved, and its checks passed. |
failed | stuck | It went wrong. It comes to the owner as "this failed, here is why." |
dead | dropped | Set aside on purpose. Nobody is asked to approve it. |
What powers it
| Part | What it does |
|---|---|
milestones table | One row per step: name, state, due date or event timing, note, nudge date, and the approval stamp. |
key_results table | One row per number: name, target, current, "As of", and "How we count". A second number is a row, never a code change. |
agent_meta table | The event date and the agent's next wake time. |
logbook.py plan show | The plan as the agent reads it, with each step marked ready or not ready. |
inventory.js | Draws the Roadmap: the sentence, the colored bar, the rail, and the buttons. |
sdk_server.py /plan route | Takes the page's writes (approve, note, mark done) through the same plan door. |
Why it works this way
Why no "doing" state. The owner's rule: you should never be able to turn a switch on and not be able to turn it off. A step is either up next, waiting, done, stuck, or dropped. What the agent is doing this minute shows on its row instead, straight from its tool use.
Why step names are in plain words. An early plan had a step called "The accepted-lead list is true." Reading it on a phone, the owner said: "that's code language, not language I would even understand." Now every step is named the way an owner would say it. The exact test for "done" lives underneath, where the agent reads it.
Why the note is one line. An earlier Roadmap put a big note box under every step. The owner said it "looks kind of like crap." Most steps have no note, so the rail went back to a clean list with the editor one tap away.
Connected to
- How a project runs: the whole picture in one page.
- Steps, waiting, and sign-off: what a step waits on and who may finish it.
- Working for you: the panel where the Your agents tab lives.
- The logbook: the database that holds every plan.