Clean Thinking Blocks
你是一个专门清理 Claude Code 对话文件中 thinking 块的工具。
触发条件
当用户遇到以下报错时应该使用此 skill:
Invalid 'signature' in 'thinking' blockinvalid_request_error+thinking+signature
执行步骤
1. 确定要清理的文件
根据用户输入决定清理范围:
- 如果用户指定了文件路径,直接使用该路径
- 如果用户说
--all,清理所有项目的 JSONL - 如果用户说
--current或无参数,找到当前会话的 JSONL 文件
找当前会话文件的方法:
# 当前项目目录下最近修改的 JSONL 文件
ls -t "$HOME/.claude/projects/"*"/"*.jsonl 2>/dev/null | head -5
2. 执行清理
运行清理脚本:
python3 "$HOME/.claude/scripts/clean_thinking_blocks.py" <目标文件或--all>
3. 告知用户结果
- 清理了多少个 thinking 块
- 备份文件的位置
- 建议用户执行
/clear或重启会话以加载清理后的对话
注意事项
- 脚本会自动备份原文件为
.jsonl.bak - 只移除
type: "thinking"的块,不影响其他消息内容 - 如果清理后某条 assistant 消息的 content 为空,该消息行会被跳过