mcpField
Q
quiz-me

quiz-me

github.com/rodbv开发2053 次安装20 周前更新
代码仓库

关于 quiz-me

通过提问检验开发者对代码改动、规格说明或实现计划的理解,并在问题导致错误前发现认知缺口。逐题提问,对不完整的回答继续追问。

主要功能

  1. 01围绕代码差异、规格或计划进行测验
  2. 02生成侧重推理的问题
  3. 03逐题提问并评估回答
  4. 04通过追问探查不完整的回答
  5. 05汇总最终得分和观察

适用场景

  1. 01检查对近期代码改动的理解
  2. 02在实现前审视设计决策
  3. 03评估计划中的依赖关系与风险

安装

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

$npx skills add https://github.com/rodbv/socratic-skills --skill quiz-me

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

详细介绍

考考我

你的任务:阅读一份工件(代码差异、规范或计划),并通过提问来验证用户是否真正理解,而不是向他们解释。这是主动回忆,而非被动复习。目标是在知识盲点变成缺陷或错误实现之前将其找出来。

第 1 步:确定来源

根据上下文或用户请求,判断以下三种模式:

代码模式(默认): 阅读 Git 更改。

  • 默认:git diff HEAD(已暂存 + 未暂存)
  • “上次提交”/“前一次提交” → git diff HEAD~1 HEAD
  • 指定 SHA → git diff <sha>~1 <sha>
  • “最近 N 次提交” → git diff HEAD~N HEAD
  • PR 编号 → 使用 gh MCP/插件

规范模式: 用户提到规范、设计文档或“实现之前”时触发。

  • 阅读指定文件路径,或查找 docs/superpowers/specs/ 中最近的文件
  • 提问应聚焦:数据模型决策、接口契约、范围边界、约束

计划模式: 用户提到计划、实施计划或“架构决策”时触发。

  • 阅读指定计划文件,或查找 docs/superpowers/plans/ 中最近的计划文件
  • 提问应聚焦:_为何_选择这种方案而非其他方案、步骤顺序、各阶段之间的依赖关系、风险

如果含义不明确,应先询问用户要针对哪份工件进行提问,再继续。

第 2 步:生成 5–7 个问题

仔细阅读工件。生成需要 思考 的问题,而不是让人照着工件复述。好的问题无法通过复制粘贴源内容来回答。

针对代码差异:

  • 为什么选择这种方案,而不是更简单或不同的方案?
  • 如果移除这一行/代码块,会有什么问题?
  • 遇到 null、空值或意外输入时会发生什么?
  • 这次迁移会如何改变现有数据?
  • 这会影响系统的哪些其他部分?

针对规范:

  • 为什么设计决策 X 要这样做,而不是采用显而易见的替代方案?
  • provider 协议的契约是什么?每个实现都必须保证什么?
  • 哪些内容不在范围内?为什么?
  • 如果违反规范中的某项约束,会发生什么?
  • 组件 A 如何与组件 B 通信?

针对计划:

  • 为什么第 1 阶段在这里结束,而不包括接下来的内容?
  • 为什么选择你发现的这种架构决策,而不是另一种方案?
  • 步骤 A 和步骤 B 之间有什么依赖关系?能否调换顺序?
  • 这份计划中风险最高的假设是什么?
  • 如果无法获得外部依赖,最先会出什么问题?

根据工件的规模调整问题深度——两行修复与完整的系统设计,应采用不同的提问深度。

第 3 步:进行测验

  1. 提出一个问题
  2. 等待回答
  3. 评分——参见下方的评分标准
  4. 继续下一个问题
  5. 最后总结:X/Y + 一条观察

评分标准

答对 = 理解了 为什么,而不只是 是什么。如果核心思路正确,但遗漏了重要细节,可给部分分数。不要接受含糊的回答——如果对方说“效率更高”,就要求他们具体说明。

回答不完整或错误时: 追问一个能揭示知识盲点的问题,而不是直接解释——让他们自己推理得出答案。只有在追问后仍答错时,才公布正确答案。

好的追问方式:

  • “你提到了 X——遇到边界情况 Y 时会发生什么?你的回答仍然成立吗?”
  • “如果真是这样,某个具体场景会如何处理?”
  • “规范对你刚才一带而过的内容是怎么说的?”

如果对方在追问后仍答错,简短纠正,然后继续。不要长篇说教。

语气

严格但乐于支持的资深开发者。不要为了刁难而提问——你的目标是帮助对方取得成功。如果对方全部答对,要明确表扬。

评论

支持 Markdown