用途
consistency-check 用于检测游戏设计文档(GDD)之间的跨文档不一致。它将所有 GDD 与实体注册表(design/registry/entities.yaml)进行比对,找出同一命名实体、物品、公式或常量在不同文档中取值不同的情况。该技能定位为写入时的安全网,可捕捉 /design-system 逐段检查可能遗漏的问题,以及 /review-all-gdds 整体审查发现过晚的问题。
主要能力
- 从注册表构建四张查找表:entity_map、item_map、formula_map、constant_map。
- 采用 grep 优先的冲突扫描:读取注册表一次,然后只针对提及已注册名称的 GDD 段落进行定向搜索(-C 3 行上下文),不全文读取,除非需要调查冲突。
- 支持多种检查范围:无参数/full 检查全部;since-last-review 只检查上次审查报告后修改过的 GDD;entity:<name> 或 item:<name> 检查单个条目。
- 按 GDD 的有效层级(full / standard / minimal)决定比对范围。standard 层级只比对必需章节(Overview、Detailed Rules / Detailed Design、Formulas、Edge Cases、Dependencies、Acceptance Criteria,以及当 project.yaml 设置 workflow_overrides.tuning_knobs: true 时的 Tuning Knobs)。
- 冲突分类:🔴 CONFLICT(同名条目取值不同)、⚠️ STALE REGISTRY(源 GDD 已改但注册表未更新)、ℹ️ UNVERIFIABLE(提及但无可比对属性)。
- 输出冲突报告,并可对注册表进行修正(更新陈旧条目、添加跨系统新条目),但从不删除条目,移除时改为 status: deprecated。
- 可将冲突追加到 docs/consistency-failures.md 反思日志。
使用方式
在 Claude Code 环境中以技能命令方式调用:
- /consistency-check — 检查全部已注册条目与全部 GDD。
- /consistency-check since-last-review — 只检查上次审查报告后修改过的 GDD。
- /consistency-check entity:[name] — 检查单个实体。
- /consistency-check item:[name] — 检查单个物品。
建议运行时机:每写完一份新 GDD 后(进入下一个系统前)、运行 /review-all-gdds 前(让该技能从干净基线开始)、运行 /create-architecture 前(不一致会污染下游 ADR),以及按需检查单个实体。
技能执行分为多个阶段:解析参数并加载注册表、定位范围内的 GDD、grep 优先冲突扫描、仅对冲突做深度调查、输出报告、注册表修正、会话状态与收尾。
适用场景
- 游戏设计文档数量较多、存在跨系统共享实体/物品/公式/常量时。
- 需要在架构设计开始前确保设计文档一致。
- 需要追踪注册表与源 GDD 之间是否同步。
- 需要为后续会话留下冲突历史记录。
限制
- 若实体注册表为空,判定为 NOT ASSESSED,不给出 PASS。
- 若指定名称不在注册表中,判定为 NOT ASSESSED 并列出最接近的已注册名称。
- 若范围内没有 GDD,判定为 NOT ASSESSED。
- minimal 层级无意义(没有 GDD 可检查)。
- 只添加出现在多于一份 GDD 中的条目(真正的跨系统事实)。
- 从不删除注册表条目。
- 自动化模式行为遵循 .claude/docs/automation-modes.md 与 .claude/docs/workflow-modes.md。
- 具体收费、价格、平台等信息暂未提供。