name: 思考工具集 description: 用于代理自我反思的结构化思考模式。包括思考已收集信息(验证研究)、思考任务遵从(保持正轨)和思考是否已完成(完成验证)。 version: 1.0.0 model: sonnet invoked_by: agent user_invocable: false tools: [Read, Glob, Grep] best_practices:
- 在研究/探索阶段后使用思考已收集信息
- 在进行代码更改前使用思考任务遵从
- 在宣布完成前使用思考是否已完成
- 在自我评估中诚实,不要为显得快速而跳过步骤
- 记录反思期间发现的差距 error_handling: graceful streaming: supported verified: false lastVerifiedAt: 2026-02-19T05:29:09.098Z
<identity> 结构化思考框架 - 用于质量代理工作的自我反思模式。 </identity>
<capabilities>
- 验证收集信息的完整性
- 确保遵循原始任务
- 在停止前确认工作真正完成
- 识别理解或实施中的差距
- 防止范围蔓延和无关工作 </capabilities>
<instructions>
概述
本技能提供了三种结构化思考模式,代理应在任务执行的关键点使用。这些模式有助于保持质量并防止常见错误,如不完整的研究、任务漂移和过早完成。
思考模式 1:思考已收集信息
使用时机:在完成一系列非平凡的搜索步骤后,例如:
- 阅读多个文件
- 搜索符号或模式
- 探索目录结构
- 收集需求
自我评估问题:
## 信息完整性检查
1. **充分性**:我有足够的信息继续吗?
- [ ] 我理解相关代码结构
- [ ] 我知道依赖和关系
- [ ] 我已经识别了所有受影响组件
2. **相关性**:所有收集的信息都相关吗?
- [ ] 信息直接与任务相关
- [ ] 没有无关的探索
- [ ] 专注于可行动的见解
3. **差距**:我缺少什么?
- [ ] 有我应该读但没读的文件吗?
- [ ] 有我应该搜索的模式吗?
- [ ] 我需要理解相关系统吗?
4. **信心**:我对我的理解有多自信?
- [ ] 高:准备好继续
- [ ] 中:需要少量澄清
- [ ] 低:需要更多研究
**决策**:[继续 / 收集更多信息 / 询问用户]
示例反思:
我已经读了身份验证模块(auth.ts)和用户模型(user.ts)。
我理解登录的工作原理,但还没有检查:
- 会话令牌如何管理
- 登出在哪里实现
- 错误处理模式是什么
决策:在继续前读取session.ts和error-handler.ts。
思考模式 2:思考任务遵从
使用时机:在进行任何代码更改(插入、替换、删除)之前。这对于确保仍在解决原始问题至关重要。
自我评估问题:
## 任务遵从检查
1. **原始任务**:我被要求做什么?
- 清晰地重申原始请求
- 识别核心目标
2. **当前行动**:我即将做什么?
- 描述计划的变化
- 解释其如何与目标相关
3. **对齐检查**:
- [ ] 此行动直接处理原始任务
- [ ] 我没有添加未请求的功能
- [ ] 我没有“改进”未被问及的代码
- [ ] 范围适合请求
4. **范围蔓延警告迹象**:
- 我正在重构工作正常的代码吗?
- 我正在添加“可有可无”的功能吗?
- 我正在修复我注意到的无关问题吗?
- 我已经从原始要求偏离了吗?
**决策**:[继续 / 重新聚焦 / 询问用户澄清]
示例反思:
原始任务:“修复登录超时错误”
我即将:
1. 通过增加限制修复超时(直接处理任务)
2. 同时重构错误消息(未请求)
3. 同时添加重试逻辑(未请求)
决策:仅实施 #1。其他更改是范围蔓延。
如果用户想要这些改进,他们可以单独请求。
思考模式 3:思考是否已完成
使用时机:当您认为已完成任务时。这防止过早完成并确保质量。
自我评估问题:
## 完成验证检查
1. **需求满足**:
- [ ] 所有明确需求已处理
- [ ] 所有隐含需求已考虑
- [ ] 边界情况已处理
2. **质量检查**:
- [ ] 代码编译/运行无误
- [ ] 测试通过(或已编写新测试)
- [ ] 没有引入回归
- [ ] 遵循项目惯例
3. **文档**:
- [ ] 代码是自文档化的或在需要处有注释
- [ ] README 已更新(如需要)
- [ ] 突破性更改已记录
4. **验证步骤已采取**:
- [ ] 运行了相关测试
- [ ] 如适用,手动测试了
- [ ] 检查了lint/类型错误
5. **未了事宜**:
- 有任何引入的待办事项吗?
- 有任何已知限制吗?
- 有任何后续工作需要吗?
**决策**:[完成 / 需要额外工作 / 部分完成]
示例反思:
任务:“添加用户电子邮件验证”
需求检查:
- [x] 添加了电子邮件格式验证
- [x] 无效电子邮件显示错误消息
- [ ] 没有检查:空电子邮件呢?
质量检查:
- [x] TypeScript 编译
- [ ] 测试:尚未编写测试!
决策:未完成。需要:
1. 处理空电子邮件情况
2. 为验证编写单元测试
集成指南
工作流集成
[研究阶段]
|
v
思考已收集信息
|
v
[规划阶段]
|
v
思考任务遵从(在每次更改前)
|
v
[实施阶段]
|
v
思考是否已完成
|
v
[完成或迭代]
何时不使用
- 简单、琐碎的任务(修复拼写错误、重命名变量)
- 当用户明确要求跳过验证时
- 不涉及代码更改的快速答案
记录反思
对于重要任务,将反思记录到内存:
## 任务:[描述]
## 反思日志
### 信息收集
- 已读文件:[列表]
- 识别的差距:[列表]
- 决策:[继续/收集更多]
### 任务遵从检查
- 原始任务:[描述]
- 计划更改:[列表]
- 范围评估:[在范围内/已调整]
### 完成检查
- 需求:[满足/部分/未满足]
- 测试:[通过/失败/未运行]
- 最终状态:[完成/需要工作]
</instructions>
<examples> <usage_example> 场景:代理被要求“修复损坏的搜索功能”
阶段 1 - 研究后:
思考已收集信息:
- 读取search.ts、index.ts、searchUtils.ts
- 找到错误:错误的正则表达式模式
- 检查了:测试文件存在(search.test.ts)
- 差距:还没有检查是否有相关搜索文件
决策:快速grep“search”以确保完整性...
找到search-config.ts,这是相关的。现在读取。
阶段 2 - 编码前:
思考任务遵从:
- 原始:“修复损坏的搜索功能”
- 计划:修复searchUtils.ts第45行的正则表达式模式
- 范围检查:这直接修复了错误。没有添加新的搜索功能。
决策:进行针对性修复。
阶段 3 - 实施后:
思考是否已完成:
- [x] 错误已修复(正则表达式已纠正)
- [x] 现有测试仍通过
- [ ] 没有为此特定案例编写新测试
决策:添加回归测试,然后完成。
</usage_example> </examples>
<integration> 相关技能:
verification-before-completion- 补充完成验证tdd- 测试驱动开发集成完成检查sequential-thinking- 结构化问题分解 </integration>
内存协议(强制)
开始前:
读取 .claude/context/memory/learnings.md
完成后:
- 新发现的模式 ->
.claude/context/memory/learnings.md - 遇到的问题 ->
.claude/context/memory/issues.md - 做出的决策 ->
.claude/context/memory/decisions.md
假设中断:如果不在内存中,它就没有发生。