本文へ移動
cccskills
無料GitHub で公開

forge-feature-doc

维护每个功能一份给人看的「需求设计文档」(docs/modules 下,一个功能一份):待拍板置顶,按需写背景、目标、流程、布局、状态、交互细节、业务规则、召回、AI 生成(prompt)、效果、成本、系统,先图后字,只写当前设计,末尾记关键改动,附出图与上线前检查。新建、更新、同步、补充这份文档都用它,别直接手改——它有固定写法和检查。

用户说「出设计文档」「PRD 太长看不懂」「把设计文档同步一下」「重拍截图」「上线前看文档跟上没有」时用;用户抱怨看不到功能现在的设计、不知道最近改了什么时也用;forge 各阶段改了规则、文案、交互、布局、阈值、prompt、模型、架构后收尾也用,哪怕用户没明说。

不处理写给 AI 的 PRD/DESIGN(forge-prd、forge-design)、骨架上定布局(forge-design-lab)、改 prompt 本身(prompt-craft)、进度(forge-status)。

インストール方法を見る

含まれるファイル(17)

  • SKILL.md11.1 KB
  • assets/diagrams/architecture.html960 B
  • assets/diagrams/diagram.css1.9 KB
  • assets/diagrams/flow.html964 B
  • assets/diagrams/funnel.html1010 B
  • assets/diagrams/page-mock.html3.6 KB
  • assets/diagrams/pipeline.html1023 B
  • assets/diagrams/status-quo.html629 B
  • assets/doc-template.md2.9 KB
  • references/example-ai-search.md1.9 KB
  • references/stage-map.md2.9 KB
  • references/visuals.md6.6 KB
  • references/writing-rules.md9.1 KB
  • scripts/annotate.mjs4.3 KB
  • scripts/check.mjs7.0 KB
  • scripts/render-diagrams.mjs1.4 KB
  • scripts/scaffold.mjs3.5 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

forge-feature-doc — 每个功能一份给人看的需求设计文档

交付 docs/modules/<功能>.md 和它的图(docs/assets/visuals/<英文短名>/overview/):开头是待拍板,按需写 12 个部分,先图后字,只写当前设计,末尾记关键改动。配套三个脚本:出示意图、给真实页面截图加标注、上线前检查。

定位与边界

像一个会画图的产品搭档——把「这个功能长什么样、按什么规则跑、效果由哪些数决定、还缺你哪些决定」讲透:先放图,再用一两行字注释,不把 PRD、DESIGN 换个说法再讲一遍。

核心立场:读者是要拍板、注意力有限的人(按 ADHD 友好来写)。forge 产出的 PRD、DESIGN、feature-spec 是写给 AI 执行的,必然很长,读者审不过来,迭代中改了什么也看不到,文档和代码就一路漂移。所以这份文档只写当前设计里决定九成效果的内容,固定顺序、按需取舍,每部分先图或表;历史只留末尾 15 条关键改动;凡是改变效果的改动,都要在这里留下痕迹。

边界之外的交出去:写给 AI 的 PRD、feature-spec 交 forge-prd;DESIGN.md 文字规格和 token 表交 forge-design;在真比例骨架上定布局交 forge-design-lab;写或改 prompt 本身交 prompt-craft;写代码交 forge-eng;进度交 forge-status;复盘交 forge-fupan。对外文章、发布公告不在范围。

一次只处理一个功能。

按需读取

文件什么时候读
references/writing-rules.md新建前;第一次在某个项目里更新前(12 个部分各写什么、怎么展示、ADHD 写法、只写现在)
references/stage-map.md被某个 forge 阶段调用、要判断改哪几部分时
references/visuals.md出图前(示意图模板、截图脚本写法、标注约定、踩坑)
references/example-ai-search.md第一次在新项目里用、想看完整范例时

意图分流

意图信号应答
新建docs/modules/<功能>.md 不存在走「新建」全流程
阶段更新文档已存在;来自某阶段收尾,或用户说「更新」并指出改了什么走「更新」,只动受影响的部分
出图「截图」「示意图」「重拍」「图过期了」只走「出图」
检查「上线前」「检查文档」,或 forge-review / forge-ship 调用只走「检查」
潜在用户抱怨文档太长看不懂、调整看不到,但没要求出文档一句话说明能做什么,问要不要建;不自动开工

工具

{skill} 指本 skill 目录。scaffold 会把另外三个脚本复制到项目的 scripts/design-doc/,项目里没装本 skill 也能跑。

脚本什么时候用法失败降级
scaffold.mjs新建node {skill}/scripts/scaffold.mjs --repo <仓库> --feature <功能名> --slug <英文短名> --types ui,backend,ai—
render-diagrams.mjs改了 overview/src/*.htmlNODE_PATH="$(npm root -g)" node scripts/design-doc/render-diagrams.mjs <overview 目录>没有 Playwright:只交 HTML 源文件,说明图待补
annotate.mjs写项目截图脚本时引用见 references/visuals.md本地服务没起:用设计骨架页面截图
check.mjs每次改完;review / ship 门禁node scripts/design-doc/check.mjs [基准分支]报错先在已知健康的文档上验证脚本,再信结果

新建

  1. 读资料:项目 docs/README.md 的文档规则(没有就跳过),再读 PRD、feature-spec、讨论稿、已有的长文档。只取决定效果的事实;数值以代码和配置为准,文档和代码对不上时以代码为准并记下。
  2. 判类型:有没有界面、有没有后端、有没有 AI 或算法,决定写哪几部分(对照表在 writing-rules.md)。判断不了就问一句。
  3. 建骨架:跑 scaffold.mjs。
  4. 填内容:照 writing-rules.md 写。还没定的进「待你拍板」并标 ⚠️;定了还没做的标 ⏳。关键改动从 git log 和 CHANGELOG 里挑影响效果的补齐(最多 15 条),理由查不到就写「理由未记录」。
  5. 出图:现状和流程两张示意图必出。有界面的:设计阶段用 forge-design-lab 骨架截图,实现后用真实页面截图加标注;两者都截不到时画页面示意(page-mock.html),不画只有方框的线框。
  6. 检查、打开、汇报:跑 check.mjs,用 open -a "Visual Studio Code" <文档> 打开(无界面运行时跳过),在对话里按下面的格式汇报。

更新

  1. 定位受影响的部分:对照 stage-map.md(规则、文案、交互、布局、阈值、prompt、模型、架构各对应哪几部分)。
  2. 原位改成新的当前值:正文不写「改为」,旧值只进关键改动。
  3. 重出受影响的图。
  4. 关键改动加一行:| MM-DD | 部分 | 旧 → 新 | 为什么 |,最新在上;超过 15 条删最早的,更早的历史在 git 里。
  5. 检查、汇报。

文档更新和功能改动放进同一个提交。分开提交,文档就会落后,这正是漂移的来源。

出图

  • 示意图(现状、流程、漏斗、管道、架构):改 overview/src/*.html,模板来自 {skill}/assets/diagrams/,然后跑 render-diagrams.mjs。
  • 页面图(布局标注、状态缩略图、交互细节放大):用项目的截图脚本,没有就照 visuals.md 新写一个,引用 annotate.mjs。登录态、额度、失败这类状态用拦截返回的假数据造出来。
  • 出完逐张看一遍:标签有没有被截断、有没有压住正文、数字和代码是否一致。

检查

跑 check.mjs。它报四类问题:watch 覆盖的代码改了但文档没改,或 watch 写了不存在的路径;正文和示意图源文件里出现讲历史的词;关键改动超过 15 条;图片或链接指向不存在的文件、用了绝对路径,文件引用没写成链接。watch 只能按文件盯,大文件里只有一部分和设计有关也照写;改动确实不影响设计时,在提交说明里写「设计文档无需更新:<文档名>」,检查放行并把它列出来,留个记录。被 forge-review / forge-ship 调用时,没通过就拦下;用户明确说跳过才放行,并在汇报里写明跳过了什么。

输出

文档骨架(顺序锁死;不适用的部分整节删掉,不写「不涉及」):

# <功能名>
> 写给人看的需求设计文档:先看图,字只做注释。⚠️ = 待你拍板 ⏳ = 已定未做完。末尾「关键改动」记最近的重要调整。
**一句话**:…  **阶段**:…
## 待你拍板          必有;每条带建议
## 1. 需求背景        必有;现状失败的例子(图或数字)+ 不超过 3 行
## 2. 目标与成功标准   必有;标准 / 怎么算达到 / 现在;「不做」一行
## 3. 用户流程        必有;流程图
## 4. 页面布局        有界面;标注图
## 5. 状态一览        有界面;状态缩略图 + 文案表
## 6. 交互与细节      有界面;局部标注图,一图一句
## 7. 业务规则        有后端;规则表,数值写死
## 8. 召回 / 数据逻辑  有 AI 或算法;漏斗图
## 9. AI 生成(prompt)有 AI;管道图 + 关键规则
## 10. 效果样例与评估  有 AI;真实输出 + 评估方法
## 11. 成本与速度      有 AI 或重计算;小表
## 12. 系统怎么搭      有后端;架构图
## 细节在哪          必有;链接表
## 关键改动          必有;最多 15 条

每次运行后的对话汇报(三行,待拍板有变化再加一行):

设计文档 <路径>
- 改了:<部分>(<一句话>)
- 关键改动:+1「<那一行>」
- 检查:通过 / 未通过(<原因>)

红线

  1. 截图只读。所有非 GET 请求一律拦下,状态用假数据造。项目的本地服务可能连着生产库、带着付费模型的 key,一次误提交就写了生产数据、花了真钱,而且收不回来。
  2. 图和数值不编。页面图来自真实页面或设计骨架,数值取自代码和配置,示意图里的数也一样。读者拿这份文档拍板,一张错的图比没有图更糟。
  3. 不写凭证和内部地址。文档、图和 skill 都会被提交、同步出去。

边界与失败处理

情况处理
项目没有 docs/modules/ 或 docs/README.md照常新建;有 README 就在它的文档地图里加一行入口,没有就在汇报里提一句,不为此新建 README
资料不全(只有一句需求)只写背景、目标、流程和待拍板,其余整节先不建
本地服务没起、改不了后端页面图用设计骨架或页面示意;状态用拦截假数据
同一功能已有长文档(模块附录、旧总览)不删不并:留作「细节在哪」的链接目标,在它开头加一行指向本文档。「一个功能一份」指的是带 watch 的这一份
数值只在生产环境变量里,代码没有默认值取 .env.example 或配置说明里的值,标「未核对生产」;不读生产 .env(里面有密钥),要核对请用户确认。「没配也不报错」本身考虑进待拍板
没有 Playwright只交示意图的 HTML 源文件和截图清单,说明图待补
文档和代码对不上以代码为准改文档;拿不准的进待拍板
用户要改的是 PRD / DESIGN 本身交给对应 skill;它们改完,再由本 skill 同步这份文档

各阶段怎么接

谁什么时候调用本 skill主要动哪几部分
forge-prdPRD / feature-spec 定稿后新建;背景、目标、流程、规则、待拍板
forge-design、forge-design-lab设计定稿后布局、状态、细节(骨架截图)
prompt-craftprompt 改完后AI 生成、效果样例
forge-eng实现完成后召回、成本、系统;页面图换成真实截图;去掉 ⏳
forge-bugfix修复改变了设计时对应部分 + 关键改动
forge-review、forge-ship上线前跑检查,不过就拦

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

forge

無料

Forge 工作流总入口。只读检测项目状态,推荐下一步该用哪个 skill,自己不干活。触发方式:用户说"forge"、"下一步"、"接下来做什么"。

日本語の概要は準備中です。原文の説明を表示しています。

yike-gunshi/forge-skills132026年10月11日 更新

通用头脑风暴:4 种模式(产品/内容/构建/探索)× 6 阶段,强制前提挑战和 2-3 方案,产出可跨会话续聊的思考文档;支持 Mermaid/图辅助判断。 触发方式:用户说"头脑风暴"、"brainstorm"、"讨论一下"、"我有个想法"、"帮我想想"、"画图梳理想法"。

日本語の概要は準備中です。原文の説明を表示しています。

yike-gunshi/forge-skills132026年10月11日 更新

系统性 Bug 修复流水线(P0-P8):一次修一个,强制根因分析、独立 worktree、TDD、双层验收报告、forge-qa 回归;多会话经 .forge/active.md 防撞车。 铁律:不做根因分析不写代码;新发现禁止顺手修;没有用户最终结论不合并。 触发方式:用户说"bugfix"、"反馈个问题"、"修这个 bug"、"这里有问题"、"为什么不对"、"排查一下"、"investigate"、"forge-bugfix",或报告错误、异常行为、功能失效时。

日本語の概要は準備中です。原文の説明を表示しています。

yike-gunshi/forge-skills132026年10月11日 更新

端到端交付纯编排层:调用 forge-* 子 skill 从需求一路编排到发布和文档,.deliver/state.json 检查点,支持 --auto / --resume。 触发方式:用户说"forge-deliver"、"端到端交付"、"全自动交付"。

日本語の概要は準備中です。原文の説明を表示しています。

yike-gunshi/forge-skills132026年10月11日 更新

全栈设计规划:分级门控管理 DESIGN.md 与 DESIGN-CHANGELOG,内置可检索设计规则库(UX 规则/配色/字体),三层 Token、forge-design-lab 工作台门禁(布局/比例/密度在真 token 骨架上定,Image 2 退为气质稿)、反 AI 模板检测。 触发方式:用户说"设计"、"forge-design"、"先看效果图",或 forge-dev 调度、需要创建/更新设计文档时。

日本語の概要は準備中です。原文の説明を表示しています。

yike-gunshi/forge-skills132026年10月11日 更新

设计实现:把 DESIGN.md 转成代码,只改样式不改逻辑;CSS 优先、Token 驱动、反 AI 模板、原子提交,以真实截图和 CSS 断言验证。 触发方式:用户说"实现设计"、"forge-design-impl"、设计文档确认后需要写代码时。

日本語の概要は準備中です。原文の説明を表示しています。

yike-gunshi/forge-skills132026年10月11日 更新

yike-gunshi のスキルをすべて見る

このスキルの問題を報告する