Execute a Flow epic or task systematically with git setup, task tracking, quality checks, and commit workflow. Use when implementing a plan or working through a spec. Triggers on /flow-next:work with Flow IDs (fn-1, fn-1.2).
Execute a plan systematically. Focus on finishing.
Follow this skill and linked workflows exactly. Deviations cause drift, bad gates, retries, and user frustration.
IMPORTANT: This plugin uses .flow/ for ALL task tracking. Do NOT use markdown TODOs, plan files, TodoWrite, or other tracking methods. All task state must be read and written via flowctl.
CRITICAL: flowctl is BUNDLED — NOT installed globally. which flowctl will fail (expected). Always use:
ROOT="$(git rev-parse --show-toplevel)"
OPENCODE_DIR="$ROOT/.opencode"
FLOWCTL="$OPENCODE_DIR/bin/flowctl"
$FLOWCTL <command>
Hard requirements (non-negotiable):
flowctl done for each completed task and verify the task status is done.git add -A (never list files). This ensures .flow/ and scripts/ralph/ (if present) are included.flowctl show <task> reports status: done./flow-next:impl-review until tests/Quick commands are green.Role: execution lead, plan fidelity first. Goal: complete every task in order with tests.
If REVIEW_RECEIPT_PATH is set or FLOW_RALPH=1:
flowctl done and verify task status is done before committing.git add -A (never list files).Full request: $ARGUMENTS
Accepts:
fn-N to work through all tasksfn-N.M to work on single taskExamples:
/flow-next:work fn-1/flow-next:work fn-1.3/flow-next:work docs/my-feature-spec.md/flow-next:work Add rate limiting/flow-next:work fn-1 then review via /flow-next:impl-reviewIf no input provided, ask for it.
Check available backends and configured preference:
HAVE_RP=0;
if command -v rp-cli >/dev/null 2>&1; then
HAVE_RP=1;
elif [[ -x /opt/homebrew/bin/rp-cli || -x /usr/local/bin/rp-cli ]]; then
HAVE_RP=1;
fi;
# Check configured backend (priority: env > config)
CONFIGURED_BACKEND="${FLOW_REVIEW_BACKEND:-}";
if [[ -z "$CONFIGURED_BACKEND" ]]; then
CONFIGURED_BACKEND="$($FLOWCTL config get review.backend --json 2>/dev/null | jq -r '.value // empty')";
fi
MUST RUN the detection command above and use its result. Do not assume rp-cli is missing without running it.
Parse the arguments for these patterns. If found, use them and skip corresponding questions:
Branch mode:
--branch=current or --current or "current branch" or "stay on this branch" → current branch--branch=new or --new-branch or "new branch" or "create branch" → new branch--branch=worktree or --worktree or "isolated worktree" or "worktree" → isolated worktreeReview mode:
--review=opencode or "opencode review" or "use opencode" → OpenCode review (GPT-5.2, reasoning high)--review=rp or "review with rp" or "rp chat" or "repoprompt review" → RepoPrompt chat (via flowctl rp chat-send)--review=export or "export review" or "external llm" → export for external LLM--review=none or --no-review or "no review" or "skip review" → no reviewIMPORTANT: Ask setup questions in plain text only. Do NOT use the question tool. This is required for voice dictation (e.g., "1a 2b").
Skip review question if: Ralph mode (FLOW_RALPH=1) OR backend already configured (CONFIGURED_BACKEND not empty). In these cases, only ask branch question:
Quick setup: Where to work?
a) Current branch b) New branch c) Isolated worktree
(Reply: "a", "current", or just tell me)
Otherwise, output questions based on available backends:
If rp-cli available:
Quick setup before starting:
1. **Branch** — Where to work?
a) Current branch
b) New branch
c) Isolated worktree
2. **Review** — Run Carmack-level review after?
a) Yes, OpenCode review (GPT-5.2, reasoning high)
b) Yes, RepoPrompt chat (macOS, visual builder)
c) Yes, export for external LLM (ChatGPT, Claude web)
d) No
(Reply: "1a 2a", "current branch, opencode review", or just tell me naturally)
If rp-cli not available:
Quick setup before starting:
1. **Branch** — Where to work?
a) Current branch
b) New branch
c) Isolated worktree
2. **Review** — Run Carmack-level review after?
a) Yes, OpenCode review (GPT-5.2, reasoning high)
b) Yes, export for external LLM
c) No
(Reply: "1a 2a", "current branch, opencode", or just tell me naturally)
Wait for response. Parse naturally — user may reply terse or ramble via voice.
Defaults when empty/ambiguous:
newopencode, else rp if available, else noneDefaults when no review backend available:
newnoneDo NOT read files or write code until user responds.
After setup questions answered, read .opencode/skill/flow-next-opencode-work/phases.md and execute each phase in order.
If user chose review:
/flow-next:impl-review after Phase 6, fix issues until it passes/flow-next:impl-review with export mode after Phase 6.flow/npx skills add gmickel/flow-next-opencode-work下载完整 Skill 目录,包含 SKILL.md 及所有相关文件
Search for places (restaurants, cafes, etc.) via Google Places API proxy on localhost.
Interact with GitHub using the `gh` CLI. Use `gh issue`, `gh pr`, `gh run`, and `gh api` for issues, PRs, CI runs, and advanced queries.
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Start voice calls via the OpenClaw voice-call plugin.
Notion API for creating and managing pages, databases, and blocks.
Gemini CLI for one-shot Q&A, summaries, and generation.
Category:developer