ワンクリックで
flow-code-plan
Use when planning features or designing implementation. Triggers on /flow-code:plan with text descriptions or Flow IDs.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Use when planning features or designing implementation. Triggers on /flow-code:plan with text descriptions or Flow IDs.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Internal pipeline engine. Manages the entire pipeline (brainstorm, plan, plan-review, work, impl-review, close) via flowctl phase commands. Invoked by /flow-code:go.
Use when exploring requirements before planning. Pressure-tests ideas, generates approaches, and outputs a requirements doc for /flow-code:plan. Supports --auto mode for AI self-interview (no human input needed).
Use when exploring requirements before planning. Pressure-tests ideas, generates approaches, and outputs a requirements doc for /flow-code:plan.
Use when reviewing code changes — self-review in Worker Phase 6, impl-review, or PR review. Applies five-axis scoring with severity labels.
Use when implementing a plan or working through a spec. Triggers on /flow-code:work with Flow IDs.
Use when implementing authentication, authorization, OAuth, JWT, RBAC, or session management. Covers token lifecycle, permission models, and secure session handling.
| name | flow-code-plan |
| description | Use when planning features or designing implementation. Triggers on /flow-code:plan with text descriptions or Flow IDs. |
| tier | 3 |
| user-invocable | false |
Turn a rough idea into an epic with tasks in .flow/. This skill does not write code.
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:
FLOWCTL="$HOME/.flow/bin/flowctl"
$FLOWCTL <command>
If .flow/meta.json exists and has setup_version, compare to plugin version:
SETUP_VER=$(jq -r '.setup_version // empty' .flow/meta.json 2>/dev/null)
# Portable: Claude Code uses .claude-plugin, Factory Droid uses .factory-plugin
PLUGIN_JSON="$HOME/.codex/plugin.json"
PLUGIN_VER=$(jq -r '.version' "$PLUGIN_JSON" 2>/dev/null || echo "unknown")
if [[ -n "$SETUP_VER" && "$PLUGIN_VER" != "unknown" ]]; then
[[ "$SETUP_VER" = "$PLUGIN_VER" ]] || echo "Plugin updated to v${PLUGIN_VER}. Run /flow-code:setup to refresh local scripts (current: v${SETUP_VER})."
fi
Continue regardless (non-blocking).
Role: product-minded planner with strong repo awareness.
Goal: produce an epic with tasks that match existing conventions and reuse points.
Task size: every task must fit one /flow-code:work iteration (~100k tokens max). If it won't, split it.
Plans are specs, not implementations. Do NOT write the code that will be implemented.
function validate(input: string): Resultsrc/auth.ts:42"useOptimistic instead"cleanup() or memory leaks"Why: Implementation happens in /flow-code:work with fresh context. Writing it here wastes tokens in planning, review, AND implementation — then causes drift when the implementer does it differently anyway.
Full request: $ARGUMENTS
Accepts:
fn-N-slug (e.g., fn-1-add-oauth) or legacy fn-N/fn-N-xxx to refine existing epicfn-N-slug.M (e.g., fn-1-add-oauth.2) or legacy fn-N.M/fn-N-xxx.M to refine specific taskExamples:
/flow-code:plan Add OAuth login for users/flow-code:plan fn-1-add-oauth/flow-code:plan fn-1 (legacy formats fn-1, fn-1-xxx still supported)/flow-code:plan fn-1-add-oauth then review via /flow-code:plan-reviewIf empty and invoked standalone: ask "What should I plan? Give me the feature or bug in 1-5 sentences."
If empty and invoked from /flow-code:go pipeline: this should never happen (go always provides input). If it does, derive the plan target from the epic title or requirements doc — never block on user input.
Analyze the request and context — no questions asked:
REVIEW_BACKEND=$($FLOWCTL review-backend)
Based on the request text, decide:
repo-scout. For deep context, detect RP availability:
rp(mcp)which rp-cli succeeds → rp(cli)rp(scout-fallback) (uses context-scout subagent)short. needs design decisions → standard. architecture change → deep.$REVIEW_BACKEND:
rp → verify which rp-cli succeeds. If available → use RP. If NOT available → degrade to codex (RP is macOS-only). If codex also unavailable → skip.codex → use Codex for plan reviewnone → skip plan reviewASK → auto-detect available tools:
which rp-cli succeeds → use RPwhich codex succeeds → use CodexOutput one line:
Research: repo-scout + rp(<mcp|cli|scout-fallback>) | Depth: <short|standard|deep> | Review: <rp|codex|none> (auto-detected)
These flags override the corresponding AI decision without entering the analysis flow:
--research=rp|grep, --depth=short|standard|deep, --review=rp|codex|export|none, --plan-only, --no-capability-scan (skip capability-scout in Step 4)--interactive — opt-in interview refinement. Before Context Analysis, invoke /flow-code:interview with the raw request text. The interview returns refined-spec markdown (Problem / Scope / Acceptance / Open Questions). Use that refined text as the effective request for Context Analysis and Step 4. When this flag is NOT passed, the plan flow is unchanged and the zero-interaction default (AGENTS.md:99) is preserved. There is intentionally no auto-trigger heuristic and no --no-interview flag — interview is opt-in only.Proceed to Step 4 immediately.
Execute steps from steps/ directory one at a time (JIT loading — only read the current step):
steps/step-01-init.md and executesteps/step-02-research.md and executesteps/step-03-gap-analysis.md and executesteps/step-04-task-breakdown.md and executesteps/step-05-output.md and executeAll plans go into .flow/:
.flow/epics/fn-N-slug.json + .flow/specs/fn-N-slug.md.flow/tasks/fn-N-slug.M.json + .flow/tasks/fn-N-slug.M.mdNever write plan files outside .flow/. Never use TodoWrite for task tracking.
.flow/Steps.md Step 15 handles auto-execution. After steps complete:
/flow-code:work <epic-id> --no-review invoked automatically (Step 15)--plan-only: shows plan summary and stops (Step 15)After work completes (if auto-executed):