skills/rtf/SKILL.md
问题驱动的审查-测试-修复闭环。用户要求"审查并修复/审查修复"时触发,对代码变更或功能模块执行「审查 → 测试复现 → 自动修复 → 回归验证」循环。
npx skillsauth add ava-grace-zoe/kairos rtfInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
目标:通过「审查发现问题 → 测试确认问题 → 自动修复 → 回归验证」闭环,确保每个修复都有测试证据支撑,避免误修和引入新问题。
设计文档:docs/rtf/design.md
| 模式 | 触发方式 | 输入 |
| ------------ | -------------------------------- | ----------------------------------- |
| 代码变更 | 用户提供 PR / diff / commit 范围 | git diff 输出、PR URL、commit SHA |
| 功能模块 | 用户指定文件或目录 | 文件路径、目录路径、glob 模式 |
用户未明确指定时,默认使用 git diff HEAD 获取未提交的变更。无变更则要求用户指定范围。
代码变更模式:
git diff(未提交)、git diff <base>...<head>(commit 范围)、gh pr diff(PR)功能模块模式:
产出:reviewScope——文件列表 + 每个文件的变更/关注行范围。
检测项目的测试能力:
package.json(vitest / jest)、pyproject.toml(pytest)、Cargo.toml(cargo test)等scripts 字段或配置文件推导__tests__/、*.test.*、*.spec.*、tests/)产出:testInfra——框架名称、测试命令、已有相关测试文件列表。无测试框架时标记 framework: null。
对 reviewScope 内的代码进行审查,发现潜在问题。
每个发现的问题产出:
id: issue-NN
severity: critical | warning | info
file: <文件路径>
line: <行号或行范围>
description: <问题描述>
evidence: <代码证据——引用具体代码片段>
reproduction_hint: <复现思路——供测试设计使用>
info 级别只记录,不进入测试-修复循环critical 和 warning 进入第三阶段审查未发现 critical/warning 级别问题 → 直接输出审查通过报告(含 info 级别的观察),流程结束。
对每个 critical/warning 级别的问题,按优先级依次执行以下子循环。
根据问题的 description 和 reproduction_hint,设计最小化测试用例:
testInfra.framework != null):生成可执行的测试代码文件
rtf-issue-NN 前缀,便于识别测试目标:在当前代码下应当失败(确认问题真实存在)。
运行测试,判断结果:
| 测试结果 | 含义 | 动作 |
| ------------ | -------------- | ----------------------------------------------------------------- |
| 失败 | 问题已复现 | 进入 3.3 修复 |
| 通过 | 问题未复现 | 标记 false_positive,跳到下一个问题 |
| 执行错误 | 测试本身有问题 | 修正测试代码,重试一次;仍失败则标记 test_error,跳到下一个问题 |
执行最小化修复:
fix_failed,跳到下一个问题回滚方式:git checkout -- <modified_files>(仅回滚本问题修改的文件)。
修复测试通过后,验证不引入新问题:
testInfra 中识别的相关已有测试fixed| 回归结果 | 动作 |
| -------- | --------------------------------------------------- |
| 通过 | 标记 fixed,进入下一个问题 |
| 失败 | 回滚修复,标记 regression,记录回归失败的测试名称 |
false_positive所有 critical/warning 问题处理完毕后,在对话中输出综合报告:
每个问题的最终状态:
| 状态 | 含义 |
| ---------------- | ------------------------ |
| fixed | 已修复且回归通过 |
| false_positive | 测试未复现,非真实问题 |
| fix_failed | 修复尝试失败,需人工处理 |
| regression | 修复导致回归,已回滚 |
| test_error | 无法构造有效测试 |
| info_only | 仅供参考的观察 |
fixed 问题产生的代码变更 difffix_failed 和 regression 的问题:附带失败原因和建议的修复方向test_error 的问题:附带测试设计的困难点tools
在会话结束或用户要求"反思/总结会话/更新画像/session reflect"时,基于当前会话中的用户交互证据,提取偏好与认知双轨证据,更新用户画像并输出元认知反馈。
tools
保存、更新或恢复项目工作进度。用于“保存进度/记录进度/更新进度/恢复进度/继续上次工作/从断点继续”等场景,帮助跨会话复用代码认知资产和执行计划。
tools
对当前工作区的变更进行原子化的多次 git commit,遵循 Conventional Commits 规范。
tools
对技术方案或代码进行跨模型交叉评审。用户要求"交叉评审/cross review/多视角评审/让其他 agent 看看"时触发,通过 CLI 调用外部 code agent 独立评审同一方案,汇总共识与分歧。