not_started, in_progress, blocked, and passing. Prefer lifecycle commands for updates instead of editing states and claims directly.
Create
new-feature options →
The input file must be inside the repository and cannot preset a claim, evidence, workspace, or completed state. Before creation, the command validates the ID, milestone, dependencies, verification, and source references. A failure does not modify the state file.
Start
feature start options →
Before starting, the command checks that the feature is ready based on its status and dependencies, then checks the owner WIP limit. On success, it atomically creates the claim and lease and transitions the feature to in_progress; it does not require a claim in advance.
Verify and review
verify executes automated verifications; use evidence manual for manual verifications. The review must pass, occur after the latest verification, and be recorded by a reviewer other than the claim owner.
Complete
feature complete options →
The command requires a valid claim, passing dependencies, passing results for every verification at the current commit, and a later independent review. Only then does it atomically transition the feature to passing.
Block and reopen
block writes a blocker, releases the claim, and transitions the feature to blocked. reopen clears the blocker and returns it to not_started, after which it must be started again.
Release
release options →
Use release to abandon work that is still in progress. It clears the claim and returns in_progress to not_started. It is not a feature-completion step.