Get the FREE Ultimate OpenClaw Setup Guide →

interview

npx machina-cli add skill skullninja/coco-workflow/interview --openclaw
Files (1)
SKILL.md
5.9 KB

Coco Interview Skill

Conduct a structured pre-design interview to gather deep user intent, constraints, and context before generating a feature design. Produces a discovery brief that feeds directly into the design skill.

When to Use

  • Pre-design discovery for Standard-tier features (before invoking the design skill)
  • Deep-dive during any planning session (strategic, tactical, operational, triage)
  • Natural language requests ("interview me about this feature", "let's discuss requirements")
  • When /coco:phase or /coco:planning-session tactical routes to Standard tier

Do NOT use for:

  • Trivial-tier features (use hotfix skill directly)
  • Light-tier features (skip interview, use design in light mode)
  • Features where the user has already provided exhaustive requirements

Setup

  1. Read .coco/config.yaml for project.specs_dir (default: specs).
  2. Determine the feature from conversation context:
    • If a feature name or description was provided, use it
    • If on a feature/* git branch, extract the feature name
    • If none of the above, ask the user what feature to discuss
  3. Determine the feature directory: {specs_dir}/{feature-name}/
  4. Load the discovery template from .coco/templates/discovery-template.md if it exists, otherwise use ${CLAUDE_PLUGIN_ROOT}/templates/discovery-template.md.
  5. Check if {specs_dir}/{feature-name}/discovery.md already exists:
    • If yes, enter refinement mode (see below)
    • If no, proceed with fresh interview

Execution

Category Progression

The interview covers these categories in order, adapting based on what the user has already provided:

  1. Problem & Motivation -- What problem does this solve? Who feels the pain? Why now?
  2. Users & Personas -- Who are the target users? What are their goals and skill levels?
  3. Scope & Boundaries -- What's explicitly in scope? What's out of scope? MVP vs future?
  4. Functional Requirements -- What are the core behaviors? What are the key user flows?
  5. Technical Context -- What existing systems does this interact with? Any constraints?
  6. UX & Interaction -- What does the user experience look like? Key screens/flows?
  7. Non-Functional Requirements -- Performance, security, accessibility, scalability?

Question Strategy

Before asking any questions, analyze the user's initial feature description and any context from the current conversation. Determine which categories already have sufficient detail.

Rules:

  • Use AskUserQuestion with recommended answers where possible (concrete options help users think faster)
  • Skip categories where the initial description already provides sufficient detail
  • Maximum 10 questions total across all categories
  • Accept "done" or "skip" from the user to terminate early
  • After each answer, reassess remaining coverage gaps
  • Stop when all critical categories (Problem, Scope, Functional) are covered, even if other categories have gaps
  • Prioritize questions by: scope-defining > ambiguity-resolving > nice-to-have
  • Ask 1-3 questions at a time (not all 10 upfront)

Question format guidelines:

  • Multiple-choice: Provide 2-4 concrete options with a recommended choice. Include descriptions explaining tradeoffs.
  • Open-ended: Only when the space of answers is too broad for options. Keep the question specific and bounded.
  • Never ask obvious questions -- demonstrate understanding of the domain by making informed assumptions and asking about the non-obvious aspects.

Output

After the interview completes (all critical categories covered, user says "done", or 10 questions reached):

  1. Create the feature directory if it doesn't exist:

    mkdir -p {specs_dir}/{feature-name}
    
  2. Fill the discovery template with structured findings from the interview.

  3. Write to {specs_dir}/{feature-name}/discovery.md.

  4. Report:

    • Discovery file path
    • Categories covered vs skipped
    • Key decisions captured
    • Open questions remaining (if any)
    • Suggested next step: tell the user to ask Claude to "design this feature" (this triggers the design skill automatically -- skills are NOT slash commands, so never suggest /coco:design)

Planning Session Context

When invoked during a planning session (strategic, operational, triage) rather than the standard pre-design flow:

  • Output the discovery brief inline into session notes instead of (or in addition to) writing discovery.md
  • Adapt category progression to the session context:
    • Strategic: Focus on Problem & Motivation, Scope & Boundaries, Technical Context
    • Operational: Focus on the specific blocker -- narrow to relevant categories only
    • Triage: Focus on Problem & Motivation, Scope & Boundaries (enough to score)

Refinement Mode

When discovery.md already exists:

  1. Load and display a summary of the existing discovery brief
  2. Ask the user what has changed or what gaps they want to address
  3. Focus questions on:
    • Categories marked with open questions in the existing brief
    • New information or changed requirements
    • Areas the user specifically wants to revisit
  4. Update discovery.md in place (preserve existing content, add/modify sections)
  5. Append to the Change Log at the bottom: {date} | Refinement | {summary of changes}

Guidelines

  • Keep the interview conversational but structured -- don't make it feel like a form
  • Make informed assumptions based on context and industry standards; verify only non-obvious choices
  • Every answer should move the understanding forward -- don't ask for information you can infer
  • The discovery brief is a living document -- it can be refined as understanding deepens
  • Do NOT generate design.md -- that is the design skill
  • Do NOT generate tasks.md -- that is the tasks skill
  • Never modify files outside the feature's spec directory

Source

git clone https://github.com/skullninja/coco-workflow/blob/main/skills/interview/SKILL.mdView on GitHub

Overview

An AI-driven pre-design discovery interview that gathers deep user intent, constraints, and context before feature design. It produces a discovery brief (discovery.md) consumed by the design skill to ensure alignment and smoother handoffs. This approach helps validate requirements early and reduce downstream rework.

How This Skill Works

The skill analyzes the initial feature description to identify relevant categories, then guides the user through targeted questions across seven categories. It limits the conversation to 10 questions, collecting responses that populate a discovery.md via a discovery template. If discovery.md already exists, the skill switches to refinement mode to update the brief.

When to Use It

  • Pre-design discovery for Standard-tier features (before invoking the design skill)
  • Deep-dive during planning sessions (strategic, tactical, operational, triage)
  • Natural language requests like 'interview me about this feature' or 'let's discuss requirements'
  • When /coco:phase or /coco:planning-session tactical routes to Standard tier
  • When exhaustive requirements are not yet provided and discovery is needed

Quick Start

  1. Step 1: Read the config.yaml to locate specs_dir and determine the feature context
  2. Step 2: Load or create the discovery template and feature directory
  3. Step 3: Run the interview, then save responses to discovery.md (refine if it already exists)

Best Practices

  • Analyze the initial feature description before asking questions to target gaps
  • Provide 2-4 concrete option choices where possible to sharpen thinking
  • Respect the 10-question limit and allow 'done' or 'skip' to terminate early
  • Prioritize critical categories first: Problem, Scope, and Functional
  • Use the discovery template and create or refine discovery.md for seamless handoff

Example Use Cases

  • Interview a Standard-tier feature to define MVP scope and success metrics
  • Run a planning-session discovery to align stakeholders on constraints
  • Handle a natural language feature request by extracting intent and requirements
  • Operate when requirements are incomplete by eliciting missing details through structured questions
  • Engage via a planning-route (e.g., /coco:planning-session tactical) to standardize discovery

Frequently Asked Questions

Add this skill to your agents
Sponsor this space

Reach thousands of developers