SuperAPI AI Directory

interview-plan

Office & productivity

View repository

Updated 10-15 20:05

About this skill

Interview-based Planning

Transform vague requirements into clear engineering specifications through Socratic interviews, then invoke Plan mode to generate an executable implementation plan.

Brainstorming Integration

Read resources/BRAINSTORMING_INTEGRATION.md to understand the brainstorming protocol. If the user says "skip brainstorming" or "skip brainstorming", skip the branches marked as [可选] in steps 3, 7, and 8.

Steps

Preparation Phase

  1. Confirm input source: if $ARGUMENTS is empty, prompt the user to provide the requirements document path (by default, look for plan.md). If the file does not exist, report an error and exit.
  2. Analyze the requirements document: read the target file, and analyze the core business objectives, solution completeness, ambiguous/contradictory/missing points, and potential risks.
  3. [Optional] Scope decomposition check: if 3+ independent subsystems are detected or the requirements document exceeds 500 lines, propose a split according to the brainstorming protocol.

Interview Phase

  1. Load interview principles: read resources/INTERVIEW_PRINCIPLES.md, and conduct the Socratic interview according to its questioning principles.
  2. Ask questions according to the dimension framework: read resources/INTERVIEW_DIMENSIONS.md, and ask the user questions item by item according to the A-G dimension framework:
    • A (engineering principles review) must be covered, and the rest should be selectively covered according to the project type.
    • The AskUserQuestion tool must be usedto present each round of questions, mapping 2-3 convergent options into clickable interactive tabs (options); outputting them in plain-text A/B/C form is prohibited.
    • Each AskUserQuestion call contains 1-4 questions (questions), each question has 2-4 options (options), and the user can select directly through the UI.
    • Mutually independent questions should be merged into the same AskUserQuestion call to reduce the number of interaction rounds.
  3. [Optional · UI project] Visual companion proposal: if the project involves UI/front-end development, propose enabling the browser visual companion according to resources/VISUAL_COMPANION.md .
    • Start the server only after the user explicitly accepts.
    • Default to binding 127.0.0.1 / localhost; when there is no explicit remote access requirement, do not relax the listening scope.

Convergence Phase

  1. [Optional] Solution proposal: after the dimension questions are completed, propose 2-3 implementation solutions with trade-off analysis according to the brainstorming protocol, and let the user choose through AskUserQuestion .
  2. Risk assessment: if high-risk operations are involved, read resources/RISK_PROTECTION.md and issue a warning, then wait for explicit user authorization.
  3. Organize the interview conclusions: internally organize a summary of the interview conclusions (business objectives, architectural decisions, selected solution and reasons for rejected solutions, technical constraints, risk assessment, etc.).

Output Phase

  1. Plan generation (dual-track mode): a. Check the list of available skills in the system context to determine whether planning-with-files exists. b. If planning-with-files is available (preferred path):
    • Output prompt:📋 检测到 planning-with-files,使用文件计划模式

    • First write the interview conclusions in the notes.md template format to the working directory's notes.md

    • Call Skill(skill="planning-with-files:plan", args="基于访谈结论创建实施计划,访谈结论已写入 notes.md")

    • Generate task_plan.md according to the following template structure:

      # Implementation Plan
      
      ## Goal
      <从访谈提取的核心业务目标>
      
      ## Phases
      - [ ] Phase 1: <阶段名> — <关键交付物>
      - [ ] Phase 2: ...
      
      ## Key Questions Resolved
      | 问题 | 决策 | 理由 |
      |------|------|------|
      | ... | ... | ... |
      
      ## Decisions Made
      - **选定方案**: <方案名> — <一句话理由>
      - **被拒方案**: <方案名> — <为什么不选>
      
      ## Risks
      - [ ] <风险描述> → 缓解措施: <措施>
      
      ## Status
      - 当前阶段: Phase 1
      - 创建时间: YYYY-MM-DD
      
    • After completion, inform the user of the plan file location; the process ends c. If planning-with-files is unavailable (degraded path):

    • Output prompt:📋 planning-with-files 不可用,使用平台原生 Plan 模式

    • Call EnterPlanMode to enter native Plan mode

    • Write the interview conclusions and implementation plan into the plan file (task breakdown, dependencies, acceptance criteria, risk mitigation)

  2. [Degraded path only] Approval execution: After the user approves the plan, call ExitPlanMode to enter the execution phase.

Technical constraints

  • Paths are wrapped in double quotes, with forward slashes / as separators
  • Prefer using rg instead of grep
  • Do not automatically execute commit、push and other Git write operations
  • Follow the Read-before-Write principle
  • Do not generate a separate spec.md file, and integrate the specification content into task_plan.md(file mode) or native Plan (degraded mode)
  • In planning-with-files mode,task_plan.md and notes.md are created in the root path of the working directory, without creating subdirectories