| name | octocheck |
| license | MIT |
| description | 对一个成熟软件项目做端到端的产品级全景审视:结构与用户旅程文档化 → 多轮证伪核验(静态/打包/运行时/真机四类证据)→ 三问专项(阻断、冗余、激进精简)→ 带排序原则的执行路线图 → 实施级 spec → 双轨对抗审查 → 新会话实施交接 prompt。当用户要求"完整审视/体检我的项目"、"检查产品结构和用户流程"、"找出所有阻断/占位/宣称没做的"、"哪些功能该砍"、"给我一份带顺序的改进路线图"、"生成可实施的整改方案",或要求对整个产品做覆盖广、可核验、可实施的大检查时使用。不适用于:单点 bug 排查、单个 PR review(用 code-review)、纯技术安全审计(用 deep-audit)。 |
OctoCheck · 产品级全景审视与实施交接
把"审视一个项目"做成七阶段流水线。每阶段有明确产出物与完成标准;所有事实断言必须可核验;最终交付一份新会话可直接执行的实施包。你(执行本 skill 的模型)全程扮演三个角色的循环:探索者 → 证伪者 → 裁决者,任何单一角色的结论都不是终稿。
铁律(全程生效,违反任何一条即返工)
- 诚实与证据:每个事实断言带
file:line 或命令输出;未核实的显式标 ⚠️未核实;没做的说没做。绝不编造工具输出、坐标、结论。
- 四类证据缺一不可靠:静态代码 → 静态证伪 → 产物/运行时 → 组织决策记录(memory/PR/裁决文档)。只有前三类时,"这看起来是事故"的判断可能推翻 owner 的有意决策——判"事故"前必查决策记录。
- "机制存在 ≠ 通道现成":任何方案里写"现成/复用 X",必须给出 X 的生产者与消费者两端的实证坐标,否则按"需新建"写。
- 多 agent 结论互相矛盾时,必须亲手裁决到代码级,不允许择一采信。重大裁决(改判/反转/推翻某方结论)警惕自己的叙事惯性:长会话里你早先形成的判断会让后续推理不自觉地为它找证据——此时开一个干净上下文的 subagent(只带双方证据与裁决问题,不带你先前的结论与过程)做独立判断,再综合定稿。
- 边写边落盘:所有交付物分节写入文件(防上下文压缩丢失);聊天回复只给摘要。
- 隐私与只读:真实环境走查用独立数据目录;含用户真实数据的截图只进临时目录分析、正式文档只写脱敏结论;全程不发外发请求、不写业务数据、不触发计费调用。
- 文档体系自洽:修正任何结论时,同步修正所有引用它的文档(用统一编号体系回链,见下)。
编号体系(贯穿全程的追溯骨架)
J-xx:用户旅程摩擦点(阶段 1 产出,后续所有评估回链它)
S/H/M-xx:阻断分级(S=数据丢失/完全不可用,H=高频断头/占位陷阱,M=边角)
RD-xx:运行时/真机走查新发现
D0/D1/D2/D3:精简裁决分级(砍/并/降/留)
G-xx:核心能力缺失
- 每处证伪修正就地标
【Vx 修正】,对抗审查修正标 【审查来源-N】
七阶段总控
按序执行;每阶段结束更新 00-PLAN.md(进度+中途反思,它是全程反思锚点)。产出目录建议:docs/review/<date>-<project>-panorama/(含 modules/、appendix/)。
阶段 1 · 侦察与并行探索 → 读 references/01-recon-and-fanout.md
自己先侦察骨架(模块注册表/入口/路由),采集宣称层(PRD/README/营销/能力矩阵)与客观信号(各模块代码行数、近 60 天 git 热力),写 00-PLAN.md 落盘方法论。然后按模块分组并行派探索 agent(统一七节模板、真实界面文案、三类门槛标注),每路产出一份模块档案。你自己写汇总(产品结构 + 用户旅程 + J 编号摩擦点清单 + 官方场景对账),不外包判断件。
产出:00-PLAN.md、01-structure.md、02-journeys.md、modules/*.md。
阶段 2 · 证伪对账 → 读 references/02-falsification.md
派证伪 agent(3-4 路,覆盖全部档案)以"推翻断言"立场复核:优先攻击跨档案矛盾、🔴 级断言、"死代码/幽灵/断头"类绝对断言。你裁决矛盾、逐条回写修正、档案标"已核验"。
产出:03-verification-log.md(含矛盾裁决表与方法论沉淀)。
阶段 3 · 换证据类型交叉验证 → 读 references/03-runtime-verification.md
元反思六维找缺失(证据类型/覆盖面/分析深度/结论稳健性/持久化/与进行中工作对齐),然后:打包产物验证(若存在构建)、浏览器/运行时 UI 走查、真机走查(桌面真实主进程 + 移动端 CLI 等价 computer-use)、规模度量(把点状发现变成数字,防夸大与防缩小同样重要)。明确声明每种手段的边界(如 stub 环境 flag 面不可信)。
产出:03b/03c 补充核验文档 + RD 发现回灌。
阶段 4 · 三问专项(阻断/冗余/精简)→ 读 references/04-three-questions.md
- 阻断猎手 agent:占位/stub 矩阵、硬失败无兜底(首启/升级/迁移路径重点)、数据丢失类、"跑起来会断"。区分"诚实占位"与"陷阱占位"。
- 冗余清点 agent:先对账既有冗余审计基线(只报增量),孤儿 i18n 全量脚本、零引用文件、死 flag、孤儿依赖、重复系统清单,分 🟢免裁决/🔴需裁决两桶并给规模数字。
- 激进精简(你自己写,判断件不外包):三问框架(核心场景内吗/产品矩阵有更好归属吗/是资产还是负债),D0-D3 分级,每项给方案+反方论点,判断权留给 owner。
产出:
07-blockers-and-debt.md(事实件)+ 08-simplification.md(判断件)。
阶段 5 · 路线图与实施 spec → 读 references/05-roadmap-and-specs.md
排序原则先行(不伤人优先/裁决先于投入/裁决不阻塞止血/流程修复最早/高杠杆先于长坑),Stage 化路线图 + 覆盖对账表(所有编号闭合回链)+ 红队自辩(对自己的排序做反方检验)。然后把路线图补成实施级 spec(每项:文件坐标/改法/边界/测试点),owner 待裁项直接给建议裁决并标注可否决。
产出:09-roadmap.md + 10/11/12-impl-spec-*.md。
阶段 6 · 双轨对抗审查 → 读 references/06-adversarial-review.md
Claude 对抗审查(机制假前提强项)+ codex 串行有界审查(执行流追踪与既有决策冲突强项),两轨互补都不可省。codex 任务必须有界:单文档、聚焦 4 维、命令数上限——无界任务会数小时停滞。findings 全部逐条处置回写(含"过"的正面确认也记录)。
产出:审查报告归档 appendix/ + 四份 spec 修订。
阶段 7 · 实施交接 → 读 references/07-impl-handoff.md
生成自足的 IMPL-PROMPT:坐标核验先行(基线 commit/迁移版本/关键路径的当前实测值写死进 prompt)、必读清单、红线(提炼"最容易违反的"写成可判定断言)、竖切 phase、检查点(唯一计划内不可逆点必设)、诚实汇报模板(readback 文件供事后对账)。owner 的工作循环要求原文逐字嵌入。
产出:IMPL-PROMPT.md + 一句话启动命令。
关键操作纪律速查
- 探索 agent 最典型失效:从 i18n/类型注释反推 UI 而不回查 JSX 挂载——证伪轮优先攻击此类断言。
- "死代码/零调用"判定前必须穷尽反证路径:主进程隐藏写入、组件自加载、上传/同步钩子、协议 handler、别名 re-export、服务端发射点、动态 key 访问。
- 大规模并行 agent(10+ 路):统一输出模板、统一证据纪律、让 agent 直接落盘各自文件避免冲突、final message 只要 ≤10 行摘要。
- agent 因 API 错误中断:优先用宿主的恢复机制(SendMessage / resume 类)唤醒原 agent(上下文仍在),指令"基于已完成调查直接写盘收尾,未收尾线索限 2-3 个工具调用或标 ⚠️";宿主不支持恢复时才重派,且新 prompt 附上已落盘的部分产出。
- 后台等待外部任务:轮询匹配终态白名单(done/failed/cancelled),不要用"不含 running"(会被 starting 误触发)、不要 grep 进度日志("Command completed"会误触发)。
- 全部踩坑清单(25 条,含环境类)→ 读
references/pitfalls.md(动手做阶段 3/6/7 前必读)。
规模弹性
- 完整版(成熟产品、开源前/上线前/接手评估):七阶段全跑,10-14 路探索 + 4 路证伪 + 真机 + 双轨审查。
- 精简版(小项目/快速体检):阶段 1(3-5 路探索)→ 阶段 2(1-2 路证伪)→ 阶段 4 三问 → 阶段 5 路线图;跳过真机与对抗审查,但铁律与编号体系不减。
- 判断标准:模块数 >8 或代码 >5 万行走完整版。
- 开工预告:完整版是数小时级、重 token 的工程。启动前用一段话向 owner 预告选定的版本、预计 agent 路数与大致时长,给出降级选项;owner 未回应时按判断标准执行并把该预告留在
00-PLAN.md。
- 无并行 subagent 的宿主:探索/证伪改为你自己串行执行——按同一模板一个模块一个模块写档案,证伪轮换一个干净上下文(新会话或清空思路的独立 pass)以"推翻断言"立场复核;串行成本高,默认走精简版并在
00-PLAN.md 声明该降级。