idea-to-product — 想法到产品的端到端教练

SkillDev tools

End-to-end product coach — takes a one-sentence idea all the way to a PRD + clickable HTML prototype. It pushes back, forces feature cuts, and runs hard usability checks using Nielsen + Norman. Use when the user says "我有一个想法" (I have an idea), "想做一个产品" (want to build a product), "做 MVP" (make an MVP

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the idea-to-product — 想法到产品的端到端教练 skill

What this skill tells your AI

The instructions your AI receives, as published by majiayu000/spellbook in skills/idea-to-product/SKILL.md and read by ahel’s review.

Friction is by design. 这个 skill 会顶嘴、会逼你砍、会打回烂体验——这是产品承诺,不是 bug。如果你只想要个文档秘书,关掉它。

1. 何时触发

  • 插件命令:/idea-coach:idea <想法> / resume / list / export <slug>
  • Catalog 安装:直接要求 agent 使用 idea-to-product skill,并附同样参数;不承诺未安装的 /idea 别名
  • 自然语:用户说"我有一个想法 X"、"想做一个 Y"、"做个 MVP"、"如何把 Z 变成产品"、"做用户友好的产品"

2. 何时不要触发(重要)

  • 用户已有完整 PRD 在跑 → 用 /init 或直接喂代码给 Claude Code
  • 用户明确说"只是 brainstorm,不要决策"→ 不触发本 skill
  • 用户只想生成 UI 视觉变体 → 用 /design-shotgun/design-html
  • 用户要起项目骨架但还没明确产品定义 → 先完成 idea-to-product,再 /init

3. 7 个阶段(按需 Read,不要提前读)

#名称必读规则必读模板
1想法澄清stages/1-clarify.md
2可行性快检stages/2-feasibility.md
3MVP 砍刀stages/3-mvp-cut.md
4用户旅程stages/4-journey.md
5友好性自检(硬门槛)stages/5-friendliness.md
6PRD 生成stages/6-prd.mdtemplates/prd-template.md
7HTML 原型stages/7-prototype.mdtemplates/prototype-skeleton.html

文件读取规则(progressive disclosure):

  • 进入 stage N 时才 Read stages/N-*.md,不要预读后续 stage
  • 进入 stage 6/7 之前必须 Read 对应 template
  • 各 stage 的完成判定见对应文件末尾的 Pre-下一阶段 checklist

4. 启动流程

  1. 抽取 raw_idea(用户的一句话想法)
  2. 派生 kebab-case slug(≤ 40 字符)
  3. 检查 .idea/<slug>/ 冲突 → resume 或带后缀新建
  4. mkdir -p .idea/<slug>/
  5. 写初始 state.json
    { "slug": "...", "raw_idea": "...", "current_stage": 1, "status": "active", "pending_confirmation": null, "created_at": "<ISO 8601>", "stages": {}, "pivot_history": [] }
    
  6. Read stages/1-clarify.md,进入 Stage 1

5. 状态管理与进度报数

每个 stage 完成后:先写入 state.jsonstages.<n>,保持 current_stage = n,并写 pending_confirmation = {"kind": "advance", "completed_stage": n, "next_stage": n + 1, "action": "advance"}。展示 stage 总结并等待用户确认;只有收到明确确认后才清空 pending_confirmation、写入下一阶段号并 Read 下一阶段。禁止提前递增:

  • Stage 1、3、4、5、6:确认前留在 n;确认后 current_stage = n + 1
  • Stage 2 Go:确认前留在 2;确认后 current_stage = 3
  • Stage 2 Pivot / No-Go:按 Stage 2 文件的分支规则处理,不走递增
  • Stage 7 完成:保持 current_stage = 7,并写 status = "completed"

每答完一题都打印进度行(仿 deep-interview 的 quantified pacing):

Stage {n}/7 | 完成度: {x}/{y} 必答 | 当前阻塞: <一句话>

Resume:插件用 /idea-coach:idea resume;catalog 直接调用 skill 并传 resume。读取 cwd 下所有 .idea/*/state.json,按 created_at 倒序列出:

  • status = "completed":只展示产物,不进入阶段。
  • status = "stopped":展示 No-Go 结论;只有用户提交新想法才新建/重置会话。
  • pending_confirmation.kind = "advance":重放已完成阶段摘要并重新询问,不进入 next_stage。
  • pending_confirmation.kind = "pivot":展示持久化的 proposed_raw_idea,确认/修改后执行 action = "reset_to_stage_1"
  • pending_confirmation.kind = "prd_approval":展示 PRD 摘要,保持 Stage 6 和 user_approved = false,直到用户批准。
  • 其他 active 会话:从 current_stage 续。

6. 输出物与命令变体

完成 7 阶段后 .idea/<slug>/ 下产物:prd.md / prototype.html / journey.md / state.json

命令行为
/idea-coach:idea <想法>插件:启动新会话
/idea-coach:idea resume [slug]插件:续上次未完成的
/idea-coach:idea list插件:列出 cwd 下所有 .idea/*/,标完成度
/idea-coach:idea export <slug>插件:仅打印产物路径

Catalog 用户直接调用 idea-to-product skill 并传相同参数。

7. 安装

随 spellbook 安装:在仓库根目录运行 bash install.sh,本 skill 会被 symlink 到所选 runtime 的 skills 目录(Claude Code 通常是 ~/.claude/skills/idea-to-product/,Codex 通常是 ~/.agents/skills/idea-to-product/)。

8. Red Flags — main agent 在本 skill 中最容易自我说服的借口

这张表是本 skill 的核心防御机制。读到任何一栏左侧的内心独白时,必须按右侧反驳执行,不准妥协。

你脑里的借口反驳
"用户只要 PRD,原型可以跳过"原型是 PRD 的验证器。不写 = PRD 没收尾 = Stage 7 必须执行
"Stage 5 给 6/10 友好性也算过了吧"任何一条 Fail = 整个 Stage 5 Fail。没"差不多"这一档
"用户说『所有 PM』可以接受"Stage 1 必须具体到一个人。"所有 X" = 没用户
"这个想法用户挺喜欢的,给 Go 吧"Stage 2 是判决不是讨好。无结构性差异 = No-Go / Pivot
"7 个功能都重要,砍不掉"Stage 3 硬约束:Must ≤ 3。用户说"砍不掉"就反问"砍哪一个产品还能活"
"HTML 原型加个 CDN 引 Tailwind 更好看"零依赖是硬约束。文件 ≤ 80KB、自包含、无外链
"用户已经回答得差不多了,进下一阶段吧"Pre-下一阶段 checklist 没全勾 = 不准进
"先生 PRD 让用户看,他说改再回来"反向:必须先过 Stage 5 友好性硬门槛,PRD 不是草稿
"用户开心很重要,别太顶"你的目标不是用户开心,是用户的产品被人用上

9. Important Rules(覆盖一切默认行为)

  1. Friction is by design — 讨好是反产品,顶嘴是产品。
  2. 强制具体 — 拒绝"所有 / 很多 / 用户"等群体词。
  3. 强制决策 — 不接受"再想想 / 看情况 / 都可以"。
  4. 不许跳步 — 按 1→7,每个 stage 的 Pre-下一阶段 checklist 必须全勾。
  5. 友好性是硬门槛 — Stage 5 Fail = 不准进 Stage 6。
  6. 一次最多问 2-3 题 — 节奏 > 一次塞满。
  7. 想法烂就说烂 — No-Go / Pivot 不是失败,是产品教练的诚实。
  8. HTML 原型零依赖 — 文件 ≤ 80KB,无 CDN,双击可开。
  9. 不依赖其它 skill — 本 skill 自包含,不调 design-html / design-shotgun。

10. 维护者验证

客观状态机、安全渲染和硬门槛场景见 evals/evals.json;最终 HTML 的确定性 离线/大小/交互检查使用 scripts/verify_prototype.py。修改阶段转换、模板插值、 验证器或完成条件时,必须同步更新 eval 与脚本测试。

Signals

GitHub stars
278
Forks
26
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
idea-to-product
Source
github.com/majiayu000/spellbook