Get the FREE Ultimate OpenClaw Setup Guide →

flow-interview

Scanned
npx machina-cli add skill gmickel/gmickel-claude-marketplace/flow-interview --openclaw
Files (1)
SKILL.md
3.6 KB

Flow interview

Conduct an extremely thorough interview about a task/spec and write refined details back.

Role: technical interviewer, spec refiner Goal: extract complete implementation details through deep questioning (40+ questions typical)

Input

Full request: #$ARGUMENTS

Accepts:

  • Beads ID (e.g., gno-42, bd-123, app-12): Fetch with bd show, write back with bd update
  • File path (e.g., docs/spec.md, SPEC.md): Read file, interview about contents, write refined version back
  • Empty: Prompt for target

Examples:

  • /flow:interview gno-42
  • /flow:interview docs/oauth-spec.md
  • /flow:interview SPEC.md

If empty, ask: "What should I interview you about? Give me a bead ID (e.g., gno-42) or file path (e.g., docs/spec.md)"

Detect Input Type

  1. Beads ID pattern: matches [a-z]+-\d+ (e.g., gno-42, bd-123, app-7)

    • Fetch: bd show <id> --json
    • If type is "epic", also: bd list --parent=<id> --json to get subtasks
  2. File path: anything else with a path-like structure or .md extension

    • Read file contents
    • If file doesn't exist, ask user to provide valid path

Interview Process

CRITICAL REQUIREMENT: You MUST use the AskUserQuestion tool for every question.

  • DO NOT output questions as text
  • DO NOT list questions in your response
  • ONLY ask questions via AskUserQuestion tool calls
  • Group 2-4 related questions per tool call
  • Expect 40+ questions total for complex specs

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.

Question Categories

Read questions.md for all question categories and interview guidelines.

Write Refined Spec

After interview complete, write everything back.

For Beads ID

Single task:

echo "<refined description>" | bd update <id> --body-file -
bd update <id> --acceptance="<acceptance criteria>"

Epic:

  1. Update epic description: echo "<summary>" | bd update <id> --body-file -
  2. Create/update subtasks:
    • New: bd create --title="..." --description="..." --parent=<id>
    • Existing: echo "<details>" | bd update <subtask-id> --body-file -
  3. Add dependencies if discovered: bd dep add <task> <depends-on>

Include in description:

  • Clear problem statement
  • Technical approach with specifics
  • Key decisions made during interview
  • Edge cases to handle
  • Dependencies/blockers discovered

For File Path

Rewrite the file with refined spec:

  • Preserve any existing structure/format
  • Add sections for areas covered in interview
  • Include technical details, edge cases, acceptance criteria
  • Keep it actionable and specific

Completion

Show summary:

  • Number of questions asked
  • Key decisions captured
  • What was written (bead updated / file rewritten)
  • Suggest next step: /flow:plan or /flow:work

Notes

  • Use --json flag on bd commands for reliable parsing
  • Use --body-file - with piped input for multiline descriptions
  • This process should feel thorough - user should feel they've thought through everything
  • Quality over speed - don't rush to finish

Source

git clone https://github.com/gmickel/gmickel-claude-marketplace/blob/main/plugins/flow/skills/flow-interview/SKILL.mdView on GitHub

Overview

Flow-interview conducts a thorough interview about a task/spec to extract complete implementation details. It helps flesh out a spec, refine requirements, discuss technical details, and clarify a feature before building. Typical flow aims to generate a refined description and acceptance criteria.

How This Skill Works

Starts by identifying the input type (bead ID or file path). It runs an interview loop aimed at surface details through 40+ questions, grouping 2 to 4 related questions per AskUserQuestion call. After the interview, it writes back a refined spec to the bead or rewrites the target file with the captured details and acceptance criteria.

When to Use It

  • You want to flesh out a spec or bead to full implementation detail
  • You need to refine requirements or clarify acceptance criteria
  • You want to discuss technical details before building a feature
  • You are interviewed about your idea to surface gaps and decisions
  • You want to transform an existing doc or epic into a refined spec

Quick Start

  1. Step 1: Trigger the interview with a bead ID or file path (eg. /flow:interview gno-42 or docs/spec.md)
  2. Step 2: Answer the interviewer questions as they are posed (grouped in 2-4 per call)
  3. Step 3: When done, the refined spec is written back to the bead or file with a structured summary

Best Practices

  • Prepare target input before starting (bead ID or file path)
  • Group related questions into 2-4 per AskUserQuestion call
  • Document key decisions, edge cases, and dependencies during the interview
  • Aim for clear acceptance criteria and concrete next steps
  • Preserve structure and readability when rewriting the file or bead description

Example Use Cases

  • Interview a gno-42 bead to flesh out an API endpoint spec
  • Refine a docs/oauth-spec.md by clarifying requirements
  • Capture edge cases for a user authentication flow before implementation
  • Clarify a UI feature bead to align with a design token
  • Interview a project epic to surface subtasks and blocking dependencies

Frequently Asked Questions

Add this skill to your agents
Sponsor this space

Reach thousands of developers