用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/jackwener/exam-system --skill small-diff命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
正在显示 SKILL.md
| name | small-diff |
| description | 最小改动模式。线上修复 / 小 bug / 老项目维护 / 跨多人协作的代码区域改动时强制启用:不重构无关代码、不格式化整文件、每处 diff 都解释必要性。 |
任何时候**用户明确说"最小改动"**也立即启用本 Skill。
让每个 diff 小、明确、可解释。Agent 默认倾向于"既然来了我顺手优化一下"——/small-diff 是对抗 scope creep 的工程手段。
按"完成任务必须改"的角度筛选:
对每一处改动回答:
如果回答不出,删掉这处改动。
| 行为 | 原因 |
|---|---|
| 顺手 rename 变量 | 增加 review 成本 |
| 顺手 format 整个文件 | 把 diff 噪音放大 10 倍 |
| 顺手抽象出 helper 函数 | 任务不需要、引入新决策点 |
| 顺手"现代化"语法(switch → match) | 风险 vs 收益不成比例 |
| 顺手补 type | 除非这处 type 是 bug 的根因 |
| 顺手删 dead code | 留给独立的 cleanup PR |
| 顺手改测试期望值 | 永远不要——这是 reward hacking 红线 |
git diff --stat | wc -l
如果改了超过 5 个文件,或者超过 200 行,停下重新评估:
## 改动范围
- 文件 N 个,行数 M
- 涉及:lib/xxx.ts、app/api/yyy/route.ts
## 每处改动 + 必要性
1. `lib/xxx.ts` line 42-45:添加 fooBar() 调用 → 因为... 不加不能完成任务
2. `app/api/yyy/route.ts` line 10:从 body 取 examId → 因为... 路由本身需要
## 主动放弃的"顺手"
- 看到 lib/xxx.ts 里有未用 import,没动(留给独立 cleanup)
- 看到 app/api/yyy/route.ts 的错误处理可以更优雅,没动(不在任务范围)
扮演方案的"反对方",挑刺、找隐藏问题、戳过度自信的假设。/think 给出 plan 后强烈建议立刻跑一次 /challenge——让方案在落地前先经过一轮自我对抗。
把本次踩到的坑写进 .qoder/business-logic/gotchas.md,每条强制 4 段结构(现象 / 根因 / 正确做法 / 反例)。比 /update-context 更窄、更结构化——只管 gotcha 这一类。
session 结束时总结本次做了什么 / 没做完什么 / 关键决策 / 下一步从哪继续。用于写 commit body、更新 spec progress.md、交接给下一个 session。每个有产出的 session 结束前都该跑一次。