Interview user in-depth about an epic, task, or spec file to extract complete implementation details. Use when user wants to flesh out a spec, refine requirements, or clarify a feature before building. Triggers on /flow-next:interview with Flow IDs (fn-1-add-oauth, fn-1-add-oauth.2, or legacy fn-1, fn-1.2, fn-1-xxx, fn-1-xxx.2) or file paths.
Interviews users to extract complete implementation details from epics, tasks, or spec files for thorough requirement refinement.
/plugin marketplace add gmickel/gmickel-claude-marketplace/plugin install flow-next@gmickel-claude-marketplaceThis skill inherits all available tools. When active, it can use any tool Claude has access to.
questions.mdConduct an extremely thorough interview about a task/spec and write refined details back.
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="${DROID_PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT}}/scripts/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="${DROID_PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT}}/.claude-plugin/plugin.json"
[[ -f "$PLUGIN_JSON" ]] || PLUGIN_JSON="${DROID_PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT}}/.factory-plugin/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-next:setup to refresh local scripts (current: v${SETUP_VER})."
fi
Continue regardless (non-blocking).
Role: technical interviewer, spec refiner Goal: extract complete implementation details through deep questioning (40+ questions typical)
Full request: $ARGUMENTS
Accepts:
fn-N-slug (e.g., fn-1-add-oauth) or legacy fn-N/fn-N-xxx: Fetch with flowctl show, write back with flowctl epic set-planfn-N-slug.M (e.g., fn-1-add-oauth.2) or legacy fn-N.M/fn-N-xxx.M: Fetch with flowctl show, write back with flowctl task set-description/set-acceptancedocs/spec.md): Read file, interview, rewrite fileExamples:
/flow-next:interview fn-1-add-oauth/flow-next:interview fn-1-add-oauth.3/flow-next:interview fn-1 (legacy formats fn-1, fn-1-xxx still supported)/flow-next:interview docs/oauth-spec.mdIf empty, ask: "What should I interview you about? Give me a Flow ID (e.g., fn-1-add-oauth) or file path (e.g., docs/spec.md)"
FLOWCTL="${DROID_PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT}}/scripts/flowctl"
Flow epic ID pattern: matches fn-\d+(-[a-z0-9-]+)? (e.g., fn-1-add-oauth, fn-12, fn-2-fix-login-bug)
$FLOWCTL show <id> --json$FLOWCTL cat <id>Flow task ID pattern: matches fn-\d+(-[a-z0-9-]+)?\.\d+ (e.g., fn-1-add-oauth.3, fn-12.5)
$FLOWCTL show <id> --json$FLOWCTL cat <id>$FLOWCTL cat <epic-id>File path: anything else with a path-like structure or .md extension
CRITICAL REQUIREMENT: You MUST use the AskUserQuestion tool for every question.
Anti-pattern (WRONG):
Question 1: What database should we use?
Options: a) PostgreSQL b) SQLite c) MongoDB
Correct pattern: Call AskUserQuestion tool with question and options.
Read questions.md for all question categories and interview guidelines.
After interview complete, write everything back — scope depends on input type.
Create epic with interview output. DO NOT create tasks — that's /flow-next:plan's job.
$FLOWCTL epic create --title "..." --json
$FLOWCTL epic set-plan <id> --file - --json <<'EOF'
# Epic Title
## Problem
Clear problem statement
## Key Decisions
Decisions made during interview (e.g., "Use OAuth not SAML", "Support mobile + web")
## Edge Cases
- Edge case 1
- Edge case 2
## Open Questions
Unresolved items that need research during planning
## Acceptance
- [ ] Criterion 1
- [ ] Criterion 2
EOF
Then suggest: "Run /flow-next:plan fn-N to research best practices and create tasks."
First check if tasks exist:
$FLOWCTL tasks --epic <id> --json
If tasks exist: Only update the epic spec (add edge cases, clarify requirements). Do NOT touch task specs — plan already created them.
If no tasks: Update epic spec, then suggest /flow-next:plan.
$FLOWCTL epic set-plan <id> --file - --json <<'EOF'
# Epic Title
## Problem
Clear problem statement
## Key Decisions
Decisions made during interview
## Edge Cases
- Edge case 1
- Edge case 2
## Open Questions
Unresolved items
## Acceptance
- [ ] Criterion 1
- [ ] Criterion 2
EOF
First check if task has existing spec from planning:
$FLOWCTL cat <id>
If task has substantial planning content (description with file refs, sizing, approach):
# Read existing acceptance, append new criteria
$FLOWCTL task set-acceptance <id> --file /tmp/acc.md --json
/flow-next:interview <epic-id>If task is minimal (just title, empty or stub description):
$FLOWCTL task set-spec <id> --description /tmp/desc.md --acceptance /tmp/acc.md --json
Description should capture:
Do NOT add: file/line refs, sizing, implementation approach — that's plan's job.
Rewrite the file with refined spec:
This is typically a pre-epic doc. After interview, suggest /flow-next:plan <file> to create epic + tasks.
Show summary:
Suggest next step based on input type:
/flow-next:plan fn-N/flow-next:work fn-N (or more interview on specific tasks)/flow-next:work fn-N.M/flow-next:plan <file>Creating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems. Create original algorithmic art rather than copying existing artists' work to avoid copyright violations.
Applies Anthropic's official brand colors and typography to any sort of artifact that may benefit from having Anthropic's look-and-feel. Use it when brand colors or style guidelines, visual formatting, or company design standards apply.
Create beautiful visual art in .png and .pdf documents using design philosophy. You should use this skill when the user asks to create a poster, piece of art, design, or other static piece. Create original visual designs, never copying existing artists' work to avoid copyright violations.