Unified command for the AI handoff workflow. Auto-detects role and state, then executes the appropriate action.
Unified command for the AI handoff workflow. Reads your role and current state, then does the right thing.
ai-handoff.yaml → determine your role (lead or reviewer)handoff-state.json → determine current stateIf you receive:
API Error: 400invalid_request_errorOutput blocked by content filtering policyyou must continue automatically instead of stopping.
docs/content-safe-brief.md for article/video drafting; use raw data files only for numeric verification.| Command | Description |
|---|---|
/handoff | Main command — auto-detects role + state, does the right thing |
/handoff start [phase] | Lead starts a plan review cycle for a new phase |
/handoff start [phase] impl | Lead starts an implementation review cycle |
/handoff status | Show current state and orientation for both agents |
/handoff — Main CommandStep 1: Read ai-handoff.yaml (your role), handoff-state.json (state), and the active cycle file docs/handoffs/[phase]_[type]_cycle.md.
Step 2: Check state and act:
/handoff start [phase]."/handoff start [phase] impl." If impl → "Implementation approved! Start next phase."Human Input Needed section, set STATE: in-progress, and set READY_FOR: to the appropriate role."/handoff."## Round [N+1] section to the cycle file with ### Lead (your response) and ### Reviewer (_awaiting response_)READY_FOR: reviewer, increment ROUNDpython -m ai_handoff state set --turn reviewer --status ready --command "Read .claude/skills/handoff/SKILL.md and handoff-state.json, then act on your turn" --phase [phase] --round [N+1] --updated-by [your-agent-name]STATE: approved. Run: python -m ai_handoff state set --status done --result approved --updated-by [your-agent-name]STATE: escalated, run: python -m ai_handoff state set --status escalated --updated-by [your-agent-name]. Otherwise: set READY_FOR: lead, run: python -m ai_handoff state set --turn lead --status ready --command "Read .claude/skills/handoff/SKILL.md and handoff-state.json, then act on your turn" --phase [phase] --round [round] --updated-by [your-agent-name]STATE: escalated. Run: python -m ai_handoff state set --status escalated --updated-by [your-agent-name]### Human Input Needed section with your question. Set STATE: needs-human, READY_FOR: human. Run: python -m ai_handoff state set --status escalated --updated-by [your-agent-name]Step 3 — CRITICAL: You MUST end every /handoff response with this exact box:
┌──────────────────────────────────────────────────┐
│ NEXT: Tell [agent name] to run: /handoff │
└──────────────────────────────────────────────────┘
Replace [agent name] with the next agent's name. For completed/escalated/needs-human states, replace with the appropriate next action.
/handoff start [phase] — Start a New PhaseLead only. Append impl to start an implementation review instead of a plan review.
ai-handoff.yaml to confirm you are the leaddocs/phases/[phase].md (Summary, Scope, Technical Approach, Files, Success Criteria)docs/handoffs/[phase]_[plan|impl]_cycle.md with:
## Round 1 with ### Lead (Action: SUBMIT_FOR_REVIEW, summary) and ### Reviewer (_awaiting response_)READY_FOR: reviewer, ROUND: 1, STATE: in-progresspython -m ai_handoff state set --turn reviewer --status ready --command "Read .claude/skills/handoff/SKILL.md and handoff-state.json, then act on your turn" --phase [phase] --type [plan|impl] --round 1 --updated-by [your-agent-name]/handoff status — Orientation & ResetFor both agents. Re-reads everything and gives a full orientation.
ai-handoff.yaml → show role assignmenthandoff-state.json → show current statePhase: [phase] | Type: [plan/impl] | Round: [N] | Turn: [agent] | Status: [state]