mcpField
P
product-audit

product-audit

github.com/gtrabanco测试与质量22105 次安装今天更新
代码仓库

关于 product-audit

product-audit 是用于定期全面检查产品健康状况的 Agent 技能,覆盖代码库及流程文档。它生成附有证据的报告,所有后续行动均由用户决定。

主要功能

  1. 01全面检查代码库
  2. 02按维度评估健康状况
  3. 03按严重性编号列出发现
  4. 04提供四类提案
  5. 05写入并提交审计报告

适用场景

  1. 01在里程碑评估产品就绪度
  2. 02调查全仓库缺陷或安全问题
  3. 03检查质量、技术债、文档和路线图

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/gtrabanco/agentic-workflow --skill product-audit

安装后在 Claude Code 中输入/product-audit确认已加载。

附带文件references/AUDIT_DIMENSIONS.mdreferences/AUDIT_PROCESS.md

详细介绍

产品审计

全面检查产品健康状况。仅写入 docs/audits/<n>-<YYYY-MM-DD>.md;每项拟议操作仍由用户决定。

回合约定 — 结束回合前核实

✓ The full PRODUCT AUDIT report was printed in the fixed output format (health by dimension, F-numbered ranked findings, four proposal streams — the roadmap streams always present, `none — <why>` when empty)
✓ The report was WRITTEN to `docs/audits/<n>-<YYYY-MM-DD>.md` (incremental audit id) and committed — the file is the durable deliverable, the chat print is a copy
✓ Nothing else was fixed, filed, or changed — the report file is the ONLY mutation
✓ The closing `→ Next:` block is printed as the ABSOLUTE last output

准备结束回合时,是否还有任何复选框未勾选?如果有,回合尚未完成——请先完成缺失项(能力较弱的模型容易漏掉文档末尾的任务;因此特意将此列表放在最前面)。

何时使用

  • 定期使用(每完成几项功能后),或在产品达到可发布里程碑时使用。
  • 当你需要全面、坦诚地了解产品状况——包括质量、安全性、技术债务、文档和路线图——而非审查单项变更(review-change)或 PR(audit-pr)时使用。
  • 本技能负责全仓库扫描。 开放式、覆盖整个仓库的漏洞排查、安全研究和损坏版本调查都应由本技能负责——按维度限定范围、抽样并设定预算(说明抽查了什么)。针对单项变更进行同类排查则属于 review-change 的工作:两项技能均不得接管对方的范围。

与差异审查、PR 审查或仅审查文档不同,本技能覆盖整个产品。

范围

整个代码库及其流程产物:源代码、测试、文档目录、路线图、修复索引、未解决的问题,以及每个功能文件夹中的规划文档。可以指定可选路径或区域,将审计聚焦于局部;请说明范围,并且如果某个维度采用抽样而非穷尽检查,请说明抽查了什么——绝不能暗示自己完成了实际上未做的全面检查。

提示(暂定)。 用户可以开启 ultracode(Claude Code 的研究预览版会话设置——任何技能都不能自行声明启用),让本次扫描分派给多个并行子 Agent,而不是在一个上下文窗口中完成;未开启时,请按顺序逐一扫描各维度——改变的只是耗时,不是覆盖范围。

步骤 0 — 发现项目(始终首先执行)

遵循 Agent 指南中的工作流约定和文档地图,然后阅读本技能所需内容:路线图、修复索引、功能文件夹布局和验证门槛。根据文档地图判断产品类型(Web/移动端/控制台/库/后端/基础设施)。在加载 AUDIT_DIMENSIONS.md 前,不要决定适用哪些维度;该资源是权威的适用性矩阵。记下项目安装的任何可选平台审查技能(额外工具,而非必需项——内部技能包已覆盖所有方面)。

渐进式加载 — 审计流程

参考资料的允许列表严格限定为以下两个路径。在步骤 0 后按顺序加载两者;它们属于规范性资料,且与本入口仅隔一跳。

  1. 阅读审计维度,将每个维度标记为适用或 n-a: <reason>,并说明任何抽样情况。
  2. 阅读审计流程,执行全部十个步骤,然后返回下方的固定报告。

缺少任何资源都应停止审计;绝不能凭记忆重建。可选的平台审查技能始终只是额外工具,不能替代内部技能包。

输出格式

此固定结构同时用于持久化文件(docs/audits/<id>-<YYYY-MM-DD>.md)和聊天输出——内容必须完全一致,每次运行都不得自由变换。以下每个部分都必须出现在每份审计中;没有内容可报告的部分应写明 none — <why>,而不是省略(尤其是路线图各部分:“始终梳理路线图全貌”,绝不能悄悄跳过)。

# PRODUCT AUDIT <id> — <product> — <YYYY-MM-DD>
Scope: <whole product | area>
Coverage: <dimensions run | sampled vs. exhaustive>
Verdict: <one-line honest health verdict>

## Health by dimension
  <dimension> .......... ✓ healthy | ⚠ concerns | ✗ at risk | n-a (why)
  ...
  Installed tooling ....... ✓ | ⚠ | ✗ | n-a

## Findings (severity-ranked, one F-sequence for the whole audit)
  F1 [SEV] <dimension> — <finding> — evidence: <file:line | metric | doc> — class: <fix-now|replan-in-unit|decision-required|proposal|ignore>
  F2 [SEV] ...
  [example — scope-export recurrence] F<k> [med] Workflow discipline — <N>
    consecutive units exported scope via `## Amendments`/descope issues —
    features are being cut too big for real capacity — evidence: <unit list +
    amendments/issues> — class: proposal — route: #64 (atomicity/split rules)

## Delta vs audit <prior-id>
  New: F<k>
  Unchanged: F<k> <- audit <prior-id> F<j>
  Resolved: <prior-id> F<j>
  (none — <why no equivalent-scope prior exists>)

## Proposals — the user decides which to act on

### Issues to open
  - <title> [sev] — from: F<k>[, F<j>] — <why> — route: /triage-issue <id> F<k> — evidence: <…>
  (none — <why>)

### Roadmap — add
  - <feature> — from: F<k> — <rationale & opportunity> — route: /unit-lane --from-issue <n>
  (none — <why>)

### Roadmap — remove / revise
  - <feature> — from: F<k> — <why it no longer fits> — route: triage-issue / roadmap edit
  (none — <why>)

### Tooling — register / re-design
  - <skill|MCP> — register in AGENTS.md (Optional review extras): <why> — route: user edits AGENTS.md
  - <skill|MCP> — would change <feature> scope: <why> — route: /unit-lane <slug>
  (none — <why>)

## Manual-verification checklist (what automation can't confirm)
  - <item> …

Finding set: F<k> + F<j> + F<m> (print every proposed finding; one finding → F<k>)
→ Next: /triage-issue <id> F<k> F<j> F<m> — classify the complete finding set in one batch (opens the ones that warrant it)
  · accepted bug/debt → /unit-lane --fix <n>   · accepted capability → /unit-lane --from-issue <n>
  · nothing to act on → the persisted report is the record; move on

打印前,将每个问题占位符替换为完整的实际问题清单;在实时交接中,绝不能打印 … 或只列出第一个问题。

<id> 是审计的递增编号(流程步骤 9)。问题可永久通过 <audit-id> F<k> 定位,例如 triage-issue 3 F2 会读取 docs/audits/3-*.md,找到 F2,并在适当时创建/归类问题。 建议采用这种转交方式;此处绝不能执行分诊或创建问题。

开头应先给出坦诚的一句话健康状况结论(例如:“可发布,但有 2 项高严重性安全问题需要优先跟进”)。

约束

  • 绝不自动修复、绝不创建议题、绝不编辑路线图。 输出的是报告和提案;所有操作均由用户决定。 此技能唯一会写入的文件是 docs/audits/ 下的报告(以及 mkdir -p docs/audits)——不会触碰仓库中的其他内容。
  • 发现项 ID 只能是 F1, F2, …——每次审计使用同一组编号,按严重程度排序,绝不能针对不同问题类型使用不同字母。ID 一经保存即固定:后续审计使用新的审计 ID,绝不重新编号旧文件;跨审计关联只通过 Delta 映射中的 <audit-id> F<k> 表示,绝不使用全局 slug 或替换 ID。用户接受后,按以下方式处理:triage-issue 负责建档和分类,/unit-lane 负责添加路线图工作或界定具体修复范围。
  • 绝不注册工具或编辑 AGENTS.md。 工具排查会提出应注册的技能/MCP,但由用户(或通过 /unit-lane <slug> 运行)执行编辑;影响范围的发现项应转交给 /unit-lane <slug>,并由用户批准。
  • 根据平台调整:只运行适用的维度;始终列出跳过了哪些维度及原因。
  • 不得静默限制范围。 如果某个维度采用了抽样、优先级排序或时间限制,必须说明——绝不能把不完整的覆盖范围说成全面审查。
  • 按严重程度排序并去重:将通过多个维度或多份功能文档发现的同一问题归并为一项提案。
  • 遵循项目的工作流约定(文档语言、证据):每项发现/提案都引用 file:line/指标/文档/议题来源;不确定之处标记为 verify。
  • 证据还必须通过 references/AUDIT_PROCESS.md 中固定的证据来源门槛;不确定之处仍标记为 verify。

可移植性(Claude Code 以外的 Agent)

工作流是约定;Claude Code 功能只是便利工具。如果 Agent 不具备某项功能,请使用备用方案——绝不能跳过该功能所支持的步骤:

  • 没有斜杠命令菜单——本技能提到 /<skill> 时,打开该技能的 SKILL.md(位于 Agent 安装技能的目录中),并在新的对话中逐字遵循:交接假定上下文是干净的。
  • 没有按技能设置 model:/effort:——这是工作流中范围最广、影响最大的排查:使用你最强大的模型及其最深入的设置运行,并作为单独的专用任务执行——绝不能塞进其他任务的上下文中。
  • 没有 ultracode/子 Agent——按顺序排查各个维度(见上方提示);无论如何,都要如实说明覆盖范围。

与其他技能的关系

product-audit (whole product, all axes, periodic)
   ├─ composes review-change axes (codebase-wide) + audit-docs (doc coherence)
   ├─ mines feature docs (decisions / known-issues / architecture-notes)
   ├─ sweeps installed skills / connected MCP servers (product-wide, periodic)
   └─ proposes ─┬─ Issues to open ........ ▶ triage-issue / unit-lane --fix
                ├─ Roadmap: add .......... ▶ unit-lane --from-issue
                ├─ Roadmap: remove/revise  ▶ triage-issue / roadmap edit   (user decides)
                └─ Tooling: register/re-design ▶ user edits AGENTS.md / unit-lane
  • 范围比 review-change(一项变更)和 audit-pr(一个 PR)更广;并将 audit-docs 的一致性检查作为其中一个维度。
  • 不会自动移交任何事项——它只提出建议;仅当用户选择执行时,规划/修复/分流技能才会采取行动。

完成条件

  • 每个适用维度都有基于所引用证据的健康状况结论,并说明跳过或抽样的维度。
  • 存在按严重程度排序的 F 编号发现列表,以及四类提案(待创建的议题、待添加的路线图项目、待移除/修订的路线图项目、待注册/重新设计的工具);每类都必须列出内容(为空时写明 none — <why>),完成去重、为每项提案指定处理路径,并引用其来源发现项。
  • 报告已保存并提交至 docs/audits/<id>-<YYYY-MM-DD>.md,使用下一个递增的审计 ID,并在聊天中打印。
  • 没有修复、提交或更改其他任何内容——由用户决定采取何种行动。
  • 必须打印结尾的 → Next: 块——通常先批量执行 /triage-issue <id> F<k> … 处理建议创建的议题,然后对已接受的工作执行 /unit-lane。

评论

支持 Markdown