The invariant appears in the descriptions of both track and update — exactly one task sits in progress, in user review, or needing refinement — which is what stops an agent declaring several things half-done at once. update goes further and requires a review request message to be produced for the user when a task moves to user_review, so the handover is part of the transition rather than something remembered afterwards. plan carries preconditions of its own: understand the requirements, clarify the scope, break the work into PRs and commits, and only then register it. The value here is the constraint, not the storage.
A development-plan tracker with three tools: register the plan for a ticket, read the current state, and move a task's status.
- The plan as a hierarchy: plan registers or updates the whole work plan for the current ticket, organised into PRs and their commit plans with an overall goal and a needsMoreThoughts flag, and its description requires the requirements to be understood and the scope broken down before it is called.
- State you can read back: track returns the current implementation plan, its progress and possible next steps, and states the invariant that exactly one task is in progress, in user review, or needing refinement at any moment.
- Status transitions with an obligation attached: update moves a commit's status by PR index and commit index with a developer note, and requires a review request message to be generated for the user whenever the status becomes user_review.
No credentials are configured on the server.
One command — npx -y @yodakeisuke/mcp-micromanage
