mcpField
C
check

check

github.com/juliusbrussee测试与质量1.2k2.7k 次安装11 周前更新
代码仓库

关于 check

check 是只读技能,用于报告 SPEC.md 与代码之间的偏差。它可检查不变量、接口或任务状态,并提供证据和处理提示,但不会修改文件。

主要功能

  1. 01检查规格不变量
  2. 02比对接口与实现
  3. 03核对任务状态与代码
  4. 04报告文件位置及证据
  5. 05提供处理提示但不执行修改

适用场景

  1. 01构建后检查不变量
  2. 02发现规格未记录的接口变化
  3. 03审计已完成任务的声明
  4. 04发布前检查规格偏差

安装

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

$npx skills add https://github.com/juliusbrussee/cavekit --skill check

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

详细介绍

check — 偏差报告

纯诊断。报告违规项。不写入任何内容。由用户决定如何处理。

规范与代码悄然偏离是 SDD 失败的头号原因。check 是检测器。每次 /build 后、每次发布前都运行它——在这里发现偏差,只是一个 diff;在生产环境中发现偏差,就成了 §B。

LOAD

  1. 读取 SPEC.md。如果缺失 → “没有规范,无需检查。”停止。
  2. 解析调用参数:
    • §V → 仅检查不变量(默认)
    • §I → 检查接口
    • §T → 审计任务状态与代码是否一致
    • --all → 检查以上全部内容

CHECK §V — 不变量

对每个 V:

  1. 将不变量转化为可验证的代码声明。
  2. 搜索 / 读取相关文件。
  3. 分类:HOLD / VIOLATE / UNVERIFIABLE。
  4. 记录地址 + 文件:行号证据。

CHECK §I — 接口

对每个 I 项:

  1. 定位实现。
  2. 分类:
    • MATCH — 代码中的结构 = 规范中的结构。
    • DRIFT — 实现存在,但结构不同。
    • MISSING — 实现不存在。
    • EXTRA — 代码暴露了 §I 中未列出的接口。

CHECK §T — 任务

对每个 T:

  1. 如果是 x:验证所声称的工作已完成。
  2. 如果是 ~:标记为进行中。
  3. 如果是 .:标记为待处理。
  4. 将没有证据的 x 行标记为 STALE。

REPORT

简短直白。按严重程度分组。

## §V drift
V2 VIOLATE: auth/mw.go:47 uses `<` not `≤`. see §B.1.
V5 UNVERIFIABLE: no test covers ∀ req path.

## §I drift
I.api DRIFT: POST /x returns `{result}` not `{id}`. route.go:112.
I.cmd MISSING: `foo bar` absent from cli/*.go.

## §T drift
T3 STALE: status `x`, no middleware file exists.

## summary
2 violate. 1 missing. 1 stale. 1 unverifiable.
next: spec skill with `bug:` or fix code at cited lines.

REMEDY HINTS (not actions)

在报告末尾,为每种类别提供一行提示:

  • VIOLATE / DRIFT → 调用规范技能 bug: <V.n> 或修复代码。
  • MISSING → 如果任务存在,则对 §T.n 调用构建技能;否则调用规范技能 amend §T。
  • STALE → 调用规范技能 amend §T 取消勾选。
  • EXTRA → 调用规范技能 amend §I 进行记录,或删除代码。

绝不调用修复操作。只报告。

NON-GOALS

  • 零写入。不编辑 SPEC.md。不编辑代码。
  • 不使用子 Agent。由主线程读取。
  • 不打分,不评级。每项二元判断:符合或偏离。

评论

支持 Markdown