flow-next-epic-review
npx machina-cli add skill gmickel/gmickel-claude-marketplace/flow-next-epic-review --openclawEpic Completion Review Mode
Read workflow.md for detailed phases and anti-patterns.
Verify that the combined implementation of all epic tasks satisfies the spec requirements. This is NOT a code quality review (that's impl-review's job) — this confirms spec compliance only.
Role: Epic Review Coordinator (NOT the reviewer) Backends: RepoPrompt (rp) or Codex CLI (codex)
CRITICAL: flowctl is BUNDLED — NOT installed globally. which flowctl will fail (expected). Always use:
FLOWCTL="${DROID_PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT}}/scripts/flowctl"
Backend Selection
Priority (first match wins):
--review=rp|codex|noneargumentFLOW_REVIEW_BACKENDenv var (rp,codex,none).flow/config.json→review.backend- Error - no auto-detection
Parse from arguments first
Check $ARGUMENTS for:
--review=rpor--review rp→ use rp--review=codexor--review codex→ use codex--review=noneor--review none→ skip review
If found, use that backend and skip all other detection.
Otherwise read from config
BACKEND=$($FLOWCTL review-backend)
if [[ "$BACKEND" == "ASK" ]]; then
echo "Error: No review backend configured."
echo "Run /flow-next:setup to configure, or pass --review=rp|codex|none"
exit 1
fi
echo "Review backend: $BACKEND (override: --review=rp|codex|none)"
Critical Rules
For rp backend:
- DO NOT REVIEW CODE YOURSELF - you coordinate, RepoPrompt reviews
- MUST WAIT for actual RP response - never simulate/skip the review
- MUST use
setup-review- handles window selection + builder atomically - DO NOT add --json flag to chat-send - it suppresses the review response
- Re-reviews MUST stay in SAME chat - omit
--new-chatafter first review
For codex backend:
- Use
$FLOWCTL codex completion-reviewexclusively - Pass
--receiptfor session continuity on re-reviews - Parse verdict from command output
For all backends:
- If
REVIEW_RECEIPT_PATHset: write receipt after SHIP verdict (RP writes manually after fix loop; codex writes automatically via--receipt) - Any failure → output
<promise>RETRY</promise>and stop
FORBIDDEN:
- Self-declaring SHIP without actual backend verdict
- Mixing backends mid-review (stick to one)
- Skipping review silently (must inform user and exit cleanly when backend is "none")
Input
Arguments: $ARGUMENTS
Format: <epic-id> [--review=rp|codex|none]
- Epic ID - Required, e.g.
fn-1orfn-22-53k --review- Optional backend override
Workflow
See workflow.md for full details on each backend.
FLOWCTL="${DROID_PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT}}/scripts/flowctl"
REPO_ROOT="$(git rev-parse --show-toplevel 2>/dev/null || pwd)"
Step 0: Parse Arguments
Parse $ARGUMENTS for:
- First positional arg matching
fn-*→EPIC_ID --review=<backend>→ backend override- Remaining args → focus areas
Step 1: Detect Backend
Run backend detection from SKILL.md above. Then branch:
Codex Backend
RECEIPT_PATH="${REVIEW_RECEIPT_PATH:-/tmp/completion-review-receipt.json}"
$FLOWCTL codex completion-review "$EPIC_ID" --receipt "$RECEIPT_PATH"
# Output includes VERDICT=SHIP|NEEDS_WORK
On NEEDS_WORK: fix code, commit, re-run (receipt enables session continuity).
RepoPrompt Backend
⚠️ STOP: You MUST read and execute workflow.md now.
Go to the "RepoPrompt Backend Workflow" section in workflow.md and execute those steps. Do not proceed here until workflow.md phases are complete.
The workflow covers:
- Gather context (epic spec, tasks, changed files)
- Atomic setup (setup-review) → sets
$Wand$T - Augment selection and build review prompt
- Send review and parse verdict
Return here only after workflow.md execution is complete.
Fix Loop (INTERNAL - do not exit to Ralph)
CRITICAL: Do NOT ask user for confirmation. Automatically fix ALL valid issues and re-review — our goal is complete spec compliance. Never use AskUserQuestion in this loop.
If verdict is NEEDS_WORK, loop internally until SHIP:
- Parse issues from reviewer feedback (missing requirements, incomplete implementations)
- Fix code and run tests/lints
- Commit fixes (mandatory before re-review)
- Re-review:
- Codex: Re-run
flowctl codex completion-review(receipt enables context) - RP:
$FLOWCTL rp chat-send --window "$W" --tab "$T" --message-file /tmp/re-review.md(NO--new-chat)
- Codex: Re-run
- Repeat until
<verdict>SHIP</verdict>
CRITICAL: For RP, re-reviews must stay in the SAME chat so reviewer has context. Only use --new-chat on the FIRST review.
Source
git clone https://github.com/gmickel/gmickel-claude-marketplace/blob/main/plugins/flow-next/skills/flow-next-epic-review/SKILL.mdView on GitHub Overview
Epic Completion Review Mode verifies that the combined implementation of all epic tasks satisfies the spec requirements. This is not a code quality review; the Epic Review Coordinator coordinates the process while backends like RepoPrompt or Codex CLI perform the actual verdict. It triggers on /flow-next:epic-review.
How This Skill Works
As the Epic Review Coordinator, you supply the epic ID and optional backend via ARGUMENTS. The system selects a backend by priority (argument, env var, then config) and runs the appropriate workflow: Codex uses FLOWCTL codex completion-review with an optional receipt; RepoPrompt requires following the workflow.md-driven steps including setup-review. The backend returns a verdict (SHIP or NEEDS_WORK) which guides subsequent actions.
When to Use It
- To confirm that the combined epic tasks implement the spec requirements before shipping
- When using the Codex CLI for review and needing session continuity with receipts
- When using the RepoPrompt workflow (RP) and following the RP-backed review path
- After fixes are made, to re-run the review while preserving the same session or chat
- To enforce a single backend for the entire review and avoid mid-review backend switching
Quick Start
- Step 1: Parse ARGUMENTS to extract EPIC_ID and optional --review backend
- Step 2: Detect BACKEND by priority: arg > FLOW_REVIEW_BACKEND > config > error
- Step 3: Run the review with Codex or RP flow and inspect the VERDICT
Best Practices
- Keep the epic spec and all tasks aligned and up-to-date
- Prefer the explicitly provided --review override and stick to a single backend per epic
- For RP reviews, run setup-review to lock window selection and builder atomically
- Do not add --json to chat-send; rely on the backend verdict instead
- If a REVIEW_RECEIPT_PATH is set, preserve receipts and use them for session continuity
Example Use Cases
- Review epic fn-1 with RP to verify that all tasks collectively satisfy the spec before release
- Run epic fn-22-53k with Codex CLI and use --receipt to maintain session across retries
- Follow the RepoPrompt Backend Workflow from workflow.md to complete the review
- Encounter NEEDS_WORK, fix the epic, commit changes, and re-run using the same backend
- Never mix backends mid-review; ensure the entire epic uses a single backend from start to finish