Keel Planning And Verification
Keel is opinionated about planning because it wants execution to be fast. Tight plans reduce improvisation later. It is opinionated about verification because "looks done to me" is not a durable collaboration protocol.
Plan First
Voyages define the delivery contract
SRS and SDD documents exist to reduce ambiguity before the delivery lane begins consuming stories.
Verify Continuously
Evidence is attached at story level
Acceptance criteria are backed by commands, files, or manual proof recorded on the story bundle.
Gate Closure
Acceptance requires an explicit role
Keel does not treat submission and acceptance as the same thing. Review authority stays visible.
The planning chain
The planning path flows downward:
- A mission declares the long-running objective.
- An epic defines the problem statement in a PRD.
- A voyage captures requirements in
SRS.mdand design decisions inSDD.md. - Stories inherit that context and turn it into executable slices.
Typical planning commands:
keel mission new "Launch public docs"
keel epic new --problem "Readers cannot orient quickly." "Teach the first-use path"
keel voyage new --epic EPIC-ID --goal "Ship guided onboarding." "Narrative onboarding"
keel voyage plan VOYAGE-ID
The goal is not paperwork for its own sake. The goal is to make later execution more exact.
The verification chain
The verification loop flows upward:
- Record proof against acceptance criteria.
- Submit the story for acceptance.
- Accept it with an explicit role.
- Let the parent voyage and epic inherit a trustworthy closure signal.
Typical proof and acceptance commands:
keel story record STORY-ID --ac 1 --cmd "cargo test"
keel story record STORY-ID --ac 2 --msg "Manual UX review completed."
keel story submit STORY-ID
keel story accept --role manager STORY-ID
Use command proof when the criterion is executable. Use manual proof when the judgment is inherently human.
Diagnostics are part of the loop
Two surfaces matter constantly:
keel doctor
keel doctor --json
keel verify recommend
keel doctortells you whether the board has drifted structurally- in a Mission Stack repo,
keel doctorshould also report stack violations such as wrong branch, unauthorized active member, missing checkpoint acknowledgment, or unsupported foreign execution state keel doctor --jsonshould expose those same violations as structured diagnostics instead of prose onlykeel verify recommendshows which verification techniques are active or detected for the current context
The important part is not any one subcommand. It is the habit of making verification visible before work is declared complete.
Why this matters for human/AI teams
Human and AI collaborators can move fast together, but only if the boundary between "planned," "implemented," and "verified" is explicit.
Keel makes that boundary hard to ignore:
- planning artifacts constrain execution
- stories carry acceptance criteria
- evidence attaches to those criteria
- acceptance remains an explicit act
That is the difference between an operating model and a chat transcript.