| name | toolchain-review |
| description | 复盘当前会话,识别项目工具链中的可改进点(脚本报错、环境不匹配、反复失败、绕弯路、技能指令不清等),默认在对话中汇报;仅在用户明确要求落盘时生成报告。 |
| license | MIT |
| metadata | {"author":"DicePP","version":"1.0"} |
Toolchain Review
复盘当前会话上下文,找出项目工具链中的摩擦点并汇报给用户。
默认只在对话中输出复盘结论,不创建文件。用户明确要求“写报告”“归档”“生成文件”时,才考虑落盘。
分析维度
按以下五个维度扫描会话上下文:
| 维度 | 关注点 |
|---|
| 工具脚本报错 | 命令参数错误、脚本路径不存在、依赖缺失导致的执行失败 |
| 环境不匹配 | venv 路径问题、Python 版本、符号链接断裂、配置文件缺失或路径错误 |
| 反复失败 | 同一操作重试多次才成功,或同一错误反复出现 |
| 绕弯路 | 方向性错误导致返工(如读了错误的文件后纠正、理解偏差导致重做) |
| 技能问题 | 某个 skill 指令不清晰、步骤遗漏、前提条件未覆盖导致执行偏差 |
执行步骤
1. 扫描会话上下文
回顾当前会话的完整对话历史,从中提取以下信号:
错误信号:
- 工具调用返回了 error/非零退出码
- 命令输出中包含
Error、failed、not found、traceback 等关键词
- 依赖导入失败 (
ModuleNotFoundError、ImportError)
重试信号:
- 同一个命令/操作出现了 3 次及以上
- 同一文件被反复读取/编辑
- 用户反复纠正同一个方向
绕路信号:
- 先读取了 A 文件,很快又回头读 B 文件(定位错误)
- 执行了某个操作后立即撤销或反向操作
- 中间改变了明显的方法/方向
环境信号:
- 路径相关报错(如
No such file or directory)
- 权限问题(
Permission denied)
- 版本不兼容提示
2. 归类与定级
将确认存在的问题归类到对应维度,按严重程度定级:
| 级别 | 含义 | 判定标准 |
|---|
| P0 阻塞 | 直接导致操作无法完成 | 命令执行失败且无 workaround,或 workaround 成本极高 |
| P1 效率 | 明显降低开发效率 | 反复重试 3 次+、绕了明显弯路、需要手动干预才能继续 |
| P2 优化 | 潜在改进空间 | 未造成实质阻塞但体验不佳(如警告、多余步骤、不够清晰) |
3. 汇报
默认直接向用户汇报,不写文件。汇报应包含:
- 发现的问题数量与最高级别
- 每个问题的维度、现象、确认依据
- 对 agent 工具链或 skill 文档的改进建议
- 没有发现问题时,如实说明“本次会话未发现值得记录的工具链问题”
4. 可选落盘
只有用户明确要求落盘时,才生成 .temp/report/toolchain-review-YYYYMMDD-HHMMSS.md。
生产环境中,默认不在当前项目下创建报告文件。若用户明确要求在生产环境落盘,必须先说明写入路径和影响范围,并遵守生产规则中的确认要求;生产问题需要交接开发环境时,优先使用 prod-handoff-create。
可选报告模板
# 工具链复盘报告
**日期**: YYYY-MM-DD HH:MM
**会话摘要**: <一句话描述本次会话做了什么>
---
## 发现问题
> 共 N 项(P0: X, P1: Y, P2: Z)
### P0 - 阻塞级
| # | 维度 | 现象 | 确认方式 |
|---|------|------|----------|
> 如无 P0 问题,写"未发现阻塞级问题。"
### P1 - 效率级
| # | 维度 | 现象 | 确认方式 |
|---|------|------|----------|
### P2 - 优化建议
| # | 维度 | 现象 | 确认方式 |
|---|------|------|----------|
---
## 汇总
| 级别 | 数量 |
|------|------|
| P0 阻塞 | X |
| P1 效率 | Y |
| P2 优化 | Z |
注意事项
- 只报告当前会话中实际发生的问题,不推测未发生的问题。
- 不强求给出解决方案。确认问题存在即可,用户在意的不是"你应该怎么修",而是"哪里出了问题"。
- 如果某问题同时符合多个维度,归入最匹配的一个即可。
- 如果会话中没有发现任何值得报告的问题,如实告知用户即可,不要强行凑数。
- 不把生产环境的敏感路径、token、账号、完整配置值写入报告。