关于 overthink
overthink 是用于复杂任务的结构化思考技能,面向需要分析不确定性、诊断问题或权衡选项的 Agent。它通过选择并串联不同思考模式,整理证据、假设和待办步骤。
主要功能
- 01识别目标、约束与证据
- 02按任务选择思考模式
- 03按顺序读取模式参考文件
- 04维护私有待办清单
- 05呈现假设与不确定性
适用场景
- 01诊断复杂问题并核验原因
- 02设计方案并系统评估选项
- 03在不确定条件下形成建议
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ s0md3v/ overthink --skill overthink安装后在 Claude Code 中输入/overthink确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/create.mddecide.mddiagnose.mdevaluate.mdmodel.mdsynthesize.mdtaste.mdverify.md详细介绍
按照以下结构化流程,深入思考复杂任务。
明确方向
确定任务的关键要素:
- 目标:用户想要完成什么。
- 失败:如果不经过深思熟虑就作答,可能会出什么问题。
- 约束:硬性要求、软性偏好和未知因素。
- 证据:事实、文件、工具、示例、测试或测量结果是否会影响答案。
- 输出:最终答案需要是什么:成品、诊断、建议、说明、评议、计划还是直接回答。
如果缺失的信息会实质性改变目标、硬性约束、领域、可接受的风险或输出,请基于合理假设作答,并说明你的假设。
不要把满足用户预期的表述方式与实现用户目标混为一谈。
构建思考流程
为任务选择并串联以下思考模式。
不要预先读取文件,只需决定需要哪些模式以及顺序:
references/model.md:揭示隐藏假设,并在尝试解决问题前梳理系统边界。references/create.md:通过生成结构不同的分支和横向思路来扩展选项,而不只是提出表面上的变体。references/diagnose.md:将症状转化为相互竞争的假设,利用能区分这些假设的证据找出故障根因。references/verify.md:依据外部证据核实关键论断,避免产生幻觉或轻信缺乏依据的答案。references/evaluate.md:系统地权衡各项标准,严格评估想法、成品或选项。references/decide.md:在约束下消除歧义,选定唯一建议、选项或下一步行动。references/taste.md:将模糊的审美观点转化为对形式、感受、媒介和约束适配度的严谨判断。references/synthesize.md:整合多种模式的观点,协调矛盾,发现新见解,并形成连贯的最终答案。
示例
- 修复棘手的 Bug:
diagnose->verify - 设计新功能:
model->create->evaluate->taste->synthesize - 审查复杂代码:
model->evaluate->verify - 解决开放式问题:
model->create->evaluate->decide - 评议想法或成品:
model->evaluate - 在不确定情况下做出艰难抉择:
model->evaluate->decide
使用待办清单
创建一份仅包含所选模式名称的私有待办清单。
示例:
[ ] model
[ ] decide
[ ] verify
阅读第一个模式的参考文件。根据其中的内容,更新待办清单,为需要回答的每个问题、需要执行的每个步骤或需要收集的信息添加子项。
示例:
[ ] model
[ ] model: What is being treated as fixed, impossible, or irrelevant?
[ ] model: Replace a proxy metric with the underlying goal.
[ ] decide
[ ] verify
只有在某个模式的所有子项都已完成,或无法可靠完成时,才将其标记为完成。然后继续下一个模式。
切换到下一个模式时,利用前一模式的洞见、待解问题和未解决的不确定性来决定如何继续。
如果某个模式的参考文件要求转到你已完成的另一模式,应使用此前运行该模式时获得的洞见,而不是重新运行,除非情况发生了实质性变化(例如,创意操作者重新定义了问题)。
子 Agent
如果可以使用子 Agent,在以下情况下使用:
- 任务需要外部观察(最新事件、人类情绪、特定文档或大量阅读)。委派信息收集可以让你集中精力推理。
- 有多个实质上不同的角度可以独立探索。
如果需要用户明确许可才能启动子 Agent,请暂停并询问:“你希望我使用子 Agent 并行探索不同方向后再做决定吗?”
在适当情况下,子 Agent 运行期间继续推进本地关键路径工作。
输出
- 明确指出会影响用户行动或理解的证据、标准、假设和不确定性。省略其他所有内容。
- 将注意事项放在其所限制的说法附近。
- 保留细微差别,避免因简化而造成误导。
- 不要让最终答案显得比证据所能支持的更确定。措辞精炼的解释可能会让薄弱的依据显得更有说服力。
- 当约束相互冲突时,指出冲突,或根据优先级和任务目标作出选择。不要悄悄假装所有约束都能满足。
- 忽略泛泛的赞扬、鼓舞人心的填充语和夸大的重要性。
重要提示
请:
- 忠实遵循待办事项流程,即使看起来缓慢或冗长。
- 将自我评估作为筛选手段,而非证明。条件允许时,优先参考外部信号:测试、日志、计算、代码执行、来源、引文、示例、测量结果、提示中的约束,或用户提供的证据。
请勿:
- 请勿一次读取多个模式文件。
- 请勿为了更快给出最终答案而进行优化。
- 除非用户或系统指令另有要求,否则请勿忽略此技能文件中的明确指令。
评论
支持 Markdown