pm-skills /document-app实战:逆向工程代码库生成系统文档的完整演示
【免费下载链接】pm-skillsPM Skills Marketplace: 100+ agentic skills, commands, and plugins — from discovery to strategy, execution, launch, and growth.项目地址: https://gitcode.com/GitHub_Trending/pm/pm-skills
pm-skills 是一个开源 AI 技能市场,汇集 100+ 智能体技能与斜杠命令。其 AI Shipping Kit 插件提供的/document-app命令可对 AI 生成的代码库(vibe-coded app)做逆向工程:以代码为唯一事实来源,自动产出架构、权限、流程等系统文档,让项目变得可评审、可审计。本文通过一次完整演示,带你从零跑通这个文档生成流程。
一、为什么 AI 生成的项目更需要系统文档?
AI 代理写代码很快,但它从不留下意图记录:
- 系统应该做什么?
- 谁被允许做什么(角色与权限)?
- 密钥和敏感配置放在哪里?
- 哪些规则真的被测试验证过?
没有这份记录,无论是人类评审员还是审计代理,都无法判断代码能否安全上线。通用扫描器(linter)只能检查代码内部是否自洽,无法回答"代码是否做了你想做的事"——因为它们没有意图模型。
/document-app正是为此而生:它把代码当作唯一事实来源(source of truth),逆向生成一份诚实的系统地图,描述这个系统本身,而不是抄一份通用模板。整个插件的定位和设计细节见 pm-ai-shipping/README.md。
💡 记住一句话:这些文档是后续每一次安全/性能审计的"意图基线"——没有基线,审计无从谈起。
二、/document-app 来自哪里:AI Shipping Kit 插件
pm-skills 包含 9 个插件,覆盖产品发现、策略、执行、调研、分析、GTM、营销增长、工具包与 AI 交付。/document-app属于其中的pm-ai-shipping(AI Shipping Kit),专为对 AI 所写代码负责的 PM 和创始人设计:
| 类型 | 名称 | 作用 |
|---|---|---|
| 技能 | shipping-artifacts | 定义可评审文档集:核心文档 + 条件文档,规定每份文档必须捕获什么 |
| 技能 | intended-vs-implemented | 找出"文档声称"与"代码实际"之间的差距的方法 |
| 命令 | /document-app | 逆向工程代码库,生成系统文档(本文主角) |
| 命令 | /derive-tests | 把文档规则转化为测试覆盖地图 |
| 命令 | /security-audit-static | 基于信任边界的静态安全审计 |
| 命令 | /performance-audit-static | 发现过度取数、缺失索引、缓存机会 |
| 命令 | /ship-check | 串联以上所有步骤,产出交付包(shipping packet) |
三、安装步骤:两种入口任选其一
入口 A:Claude Cowork(适合非开发者)
- 打开左下角Customize
- 进入Browse plugins→Personal→ 点+
- 选择Add marketplace from GitHub
- 输入
phuryn/pm-skills,9 个插件一次性装好
入口 B:Claude Code(CLI)
# 第一步:添加市场 claude plugin marketplace add phuryn/pm-skills # 第二步:只装本文用到的插件 claude plugin install pm-ai-shipping@pm-skills建议整包安装插件而不是单挑技能——一个工作流通常依赖多个一起发布的技能。
四、/document-app 完整实战演示
4.1 调用方式:指定范围,越精准越好
/document-app # 不给参数 → 文档化整个仓库 /document-app supabase/functions # 指定目录 /document-app the backend # 甚至可以用自然语言指定区域不指定范围时,命令会优先审计后端代码、认证、数据访问、后台任务和一切发送/调度/暴露数据的部分。
4.2 第 1 步:确定范围(Scope)
命令解析你的参数后,把目标区域的代码当作唯一事实来源开始阅读——不是问你的记忆,而是读代码本身。
4.3 第 2 步:逆向工程,生成文档到 /documentation/
这一步应用shipping-artifacts技能(完整规范见 pm-ai-shipping/skills/shipping-artifacts/SKILL.md),产出分两类:
核心文档(每个应用必有,4 份)
| 文档 | 捕获内容 | 评审员怎么用 |
|---|---|---|
architecture.md | 系统概览、技术栈、认证流、信任边界、已知风险索引 | 根文档,其余文档都从这里交叉引用 |
flows.md | 每个受保护步骤的授权检查、信任边界穿越、副作用 | 静态权限矩阵看不到的"运行时视图" |
permissions.md | 角色、scope 推导、资源×操作×角色矩阵、RLS 与代码强制的分工 | 访问控制审计的对照基线 |
variables.md | 配置与密钥映射到风险等级和轮换计划 | 事故响应时的密钥泄露面清单 |
条件文档(有该能力才写,没有就一行带过)
| 文档 | 触发条件 |
|---|---|
emails.md | 应用会发交易/自动邮件 |
cron.md | 存在定时或后台任务 |
seo.md | 存在公开/可被爬虫索引的路由 |
automation.md | 内嵌 AI 代理、LLM 工作流或 Webhook |
⚠️ 反 PRD 规则:不触碰权限、数据完整性、资金、隐私的普通功能流程不写进
flows.md——这是安全/运维地图,不是功能说明书。另外注意:测试覆盖地图
tests.md不在此处生成,它由/derive-tests从其他文档推导而来。
4.4 第 3 步:汇报(Report)
命令会总结:
- 创建/更新了哪些文档
- 跳过了哪些条件文档、为什么
- 哪些地方代码模糊到无法自信地写文档——这些缺口本身就是第一优先级修复项
4.5 第 4 步:给出下一步建议
演示结束时,命令会主动提出后续动作,按需执行即可:
- 🧪 需要我推导测试覆盖地图(
/derive-tests),给每条已记录规则配一份验证计划吗? - 🔒 意图已记录,是否立即运行安全审计?
- ⚡ 要不要检查性能问题(过度取数、缺索引、缓存)?
- 📦 是否运行
/ship-check串联全部流程,产出完整的交付包?
完整工作流定义可查阅 pm-ai-shipping/commands/document-app.md。
五、生成的文档写给谁看?
文档刻意写给两类读者:人类评审员,以及下一个接手代码的 AI 编码代理。因此它"粗暴地诚实"——目标是准确的地图,而不是一张健康证明书。
文档齐备后,intended-vs-implemented技能就能发挥作用:文档说"admin only",代码里真的处处强制了吗?注释写着 "validated elsewhere",能拿出文件与行号证据吗?这正是通用扫描器发现不了的那一类缺陷,方法细节见 pm-ai-shipping/skills/intended-vs-implemented/SKILL.md ——正确路径为 pm-ai-shipping/skills/intended-vs-implemented/SKILL.md。
六、实战技巧与常见误区
- ✅从子目录开始:大型仓库先用
/document-app supabase/functions验证效果,再对整个仓库运行 - ✅让缺口暴露出来:代码写得太乱、无法文档化的部分,恰恰是最该先修的地方
- ❌不要伪造内容:某能力不存在时,命令只会写一行"无此能力",而不是发明一份空文档——评审可信度来自诚实的地图
- ❌不要把文档当 PRD:这些是系统地图,描述现状而非愿景,通用理论一概不进
跑完/document-app后,建议接着执行/ship-check(定义见 pm-ai-shipping/commands/ship-check.md):文档 → 安全审计 → 性能审计 → 测试地图 → 一份可供人类签核的 Shipping Packet。市场整体结构与更多命令示例见根目录 README.md。
总结:/document-app的价值不止是"生成文档"——它把 AI 写代码时丢失的意图记录补了回来,让/security-audit-static、/derive-tests、/ship-check这条交付链路有了可对照的基线。装好 pm-ai-shipping 插件,对着你的仓库敲下/document-app,十分钟后你就拥有一套评审员和下一位 AI 代理都能读懂的系统文档。
【免费下载链接】pm-skillsPM Skills Marketplace: 100+ agentic skills, commands, and plugins — from discovery to strategy, execution, launch, and growth.项目地址: https://gitcode.com/GitHub_Trending/pm/pm-skills
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考