用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/jackwener/exam-system --skill challenge命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
正在显示 SKILL.md
| name | challenge |
| description | 扮演方案的"反对方",挑刺、找隐藏问题、戳过度自信的假设。/think 给出 plan 后强烈建议立刻跑一次 /challenge——让方案在落地前先经过一轮自我对抗。 |
紧跟 /think 之后用:
/think 已经给出 plan / 候选方案也可以在以下场景用:
扮演反对方——不是为了否定方案,而是把所有"乐观假设"翻出来。Agent 默认会"顺着用户/前置 plan 走",/challenge 是对抗这种倾向的工程手段。
一个好的 challenge 不在于找出多少问题,而在于问题是否致命——让你(或用户)能决定"知道这些问题后,还要不要这样走"。
一两句话概括"我们要 challenge 的是什么"——确保你理解的方案和 plan 一致。
按下面 4 个角度各出至少 1 条:
| 角度 | 问什么 |
|---|---|
| 🎯 目标 | 用户真的需要这个吗?还是只是"想到了"?砍掉这个功能用户会怎样? |
| 🌪 边界 / 异常路径 | 失败 / 超时 / 空数据 / 重复请求 / 并发 / 用户中途关闭 时会怎样? |
| 🔗 依赖 | 依赖的服务 / 库 / API 挂掉会怎样?依赖会不会变?谁来维护? |
| 🏚 维护成本 | 半年后接手的人能看懂吗?要不要写文档?要不要写测试?运行时怎么发现问题? |
❌ "如果用户输入异常呢?" —— 太泛
✅ "用户在 1 秒内连点 3 次提交按钮——POST /api/admin/regrade 现在没幂等保护,会触发 3 次并发重评,对 LLM 配额是浪费,对评分结果可能产生竞争"
不要只批评——总结:如果不改方案,必须知道哪些代价。这样用户能做知情决定。
## 被 challenge 的方案
(一两句话说明)
## 质疑清单
### 🔴 致命
1. **场景**:当 X 发生时
**后果**:会触发 Y
**建议**:必须先解决 Z
### 🟡 严重
2. ...
### 🟢 次要
3. ...
## 如果不改方案,你必须接受
- 接受 1:...
- 接受 2:...
## 总结
(一句话:方案可走 / 必须修 / 该重做)
/think 后立即跑——形成"我想 → 我挑自己刺 → 修正"的小循环/small-diff 控制改动/check 阶段必须验证已经处理/record-gotcha 写进 wiki把本次踩到的坑写进 .qoder/business-logic/gotchas.md,每条强制 4 段结构(现象 / 根因 / 正确做法 / 反例)。比 /update-context 更窄、更结构化——只管 gotcha 这一类。
session 结束时总结本次做了什么 / 没做完什么 / 关键决策 / 下一步从哪继续。用于写 commit body、更新 spec progress.md、交接给下一个 session。每个有产出的 session 结束前都该跑一次。
任务完成后的 diff 审查。完成代码改动后必须执行:看 git diff、对照原始目标、跑验证命令、输出审查报告。不允许"看起来 OK"就宣称完成。