
flow-next-opencode-work
by gmickel
OpenCode port of Flow-Next: plan-first workflows, Ralph autonomous mode (overnight coding with fresh context), multi-model review gates via Codex, re-anchoring to prevent drift, receipt-based gating.
SKILL.md
name: flow-next-opencode-work description: 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).
Flow work
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):
- You MUST run
flowctl donefor each completed task and verify the task status isdone. - You MUST stage with
git add -A(never list files). This ensures.flow/andscripts/ralph/(if present) are included. - Do NOT claim completion until
flowctl show <task>reportsstatus: done. - Do NOT invoke
/flow-next:impl-reviewuntil tests/Quick commands are green.
Role: execution lead, plan fidelity first. Goal: complete every task in order with tests.
Ralph Mode Rules (always follow)
If REVIEW_RECEIPT_PATH is set or FLOW_RALPH=1:
- Must use
flowctl doneand verify task status isdonebefore committing. - Must stage with
git add -A(never list files). - Do NOT use TodoWrite for tracking.
Input
Full request: $ARGUMENTS
Accepts:
- Flow epic ID
fn-Nto work through all tasks - Flow task ID
fn-N.Mto work on single task - Markdown spec file path (creates epic from file, then executes)
- Idea text (creates minimal epic + single task, then executes)
- Chained instructions like "then review with /flow-next:impl-review"
Examples:
/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-review
If no input provided, ask for it.
FIRST: Parse Options or Ask Questions
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.
Option Parsing (skip questions if found in arguments)
Parse the arguments for these patterns. If found, use them and skip corresponding questions:
Branch mode:
--branch=currentor--currentor "current branch" or "stay on this branch" → current branch--branch=newor--new-branchor "new branch" or "create branch" → new branch--branch=worktreeor--worktreeor "isolated worktree" or "worktree" → isolated worktree
Review mode:
--review=opencodeor "opencode review" or "use opencode" → OpenCode review (GPT-5.2, reasoning high)--review=rpor "review with rp" or "rp chat" or "repoprompt review" → RepoPrompt chat (viaflowctl rp chat-send)--review=exportor "export review" or "external llm" → export for external LLM--review=noneor--no-reviewor "no review" or "skip review" → no review
If options NOT found in arguments
IMPORTANT: 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:
- Branch =
new - Review = configured backend if set, else
opencode, elserpif available, elsenone
Defaults when no review backend available:
- Branch =
new - Review =
none
Do NOT read files or write code until user responds.
Workflow
After setup questions answered, read .opencode/skill/flow-next-opencode-work/phases.md and execute each phase in order.
If user chose review:
- Option 2a: run
/flow-next:impl-reviewafter Phase 6, fix issues until it passes - Option 2b: run
/flow-next:impl-reviewwith export mode after Phase 6
Guardrails
- Don't start without asking branch question (unless FLOW_RALPH=1)
- Don't start without plan/epic
- Don't skip tests
- Don't leave tasks half-done
- Never use TodoWrite for task tracking
- Never create plan files outside
.flow/
スコア
総合スコア
リポジトリの品質指標に基づく評価
SKILL.mdファイルが含まれている
ライセンスが設定されている
100文字以上の説明がある
GitHub Stars 100以上
1ヶ月以内に更新
10回以上フォークされている
オープンIssueが50未満
プログラミング言語が設定されている
1つ以上のタグが設定されている
レビュー
レビュー機能は近日公開予定です

