用Claude Code的CLI写代码,感觉像是在和一个拒绝共享屏幕的初级开发者结对编程。
它到底改了哪个文件?为什么这个操作消耗了5000个token?依赖项是不是幻觉出来的?你不知道。官方CLI只给你一个进度条,剩下的全靠猜。
现有的解决方案都不够好。其他GUI工具只是包装了Claude Code,只能显示通过它们界面运行的命令日志。如果你喜欢用原生终端,那些历史记录就全丢了。至于`--verbose`模式,它会把终端淹没在文本洪流里,事后回溯调试简直是噩梦。
一个叫matt1398的开发者上周末憋不住了,花了两天时间做了个工具。他本来只是想自己用,结果发到Reddit小组后,这个项目直接冲到Hacker News第三名,GitHub星标700+,几天内下载量超过3700次。
这个工具叫`claude-devtools`,它不是包装器,而是本地桌面应用。它监控你`~/.claude/`目录下的会话日志,把执行轨迹重建出来。你继续用你的终端工作流,它只是被动地把数据可视化。任何过去或当前的会话,都能回溯查看。
最受欢迎的功能是“Token法医”——CLI只给你一个笼统的进度条,这个工具能按回合拆解token消耗:文件内容占多少、工具输出占多少、思考过程占多少、CLAUDE.md占多少。一个巨大的.tsx文件或MCP输出是不是在悄悄掏空你的上下文窗口,一目了然。
当Claude生成子代理或运行并行Teams时,CLI日志会变成一团乱麻。这个工具把它们理清,显示成可读的执行树——回顾过去的并行会话特别有用。
还能设置自定义触发器。你不用整天盯着日志,可以设置条件:比如Claude尝试读取`.env`文件,或者单个文件读取超过4000 token,系统就会发送通知。你收到提醒,打开应用,回溯调试到底哪里出了问题。
更重要的是,它显示真正的内联差异对比。不再是“已编辑2个文件”这种含糊说法,你能看到确切的增删内容(红色/绿色标注)。
这个工具完全本地运行,免费,MIT许可。作者在用它的过程中,发现了四个token优化技巧:
重量级MCP和大文件会让上下文崩溃。`typescript-lsp-mcp`这类工具有时单次调用就返回10k+ token,Claude基本上会“变傻”。看到这种上下文膨胀后,他重构了代码库,把文件拆得更小,还把意外的大文件加进`.claudeignore`。
懒得﹫提及文件的隐性成本很高。不明确指定文件,会强制Claude使用Grep和Read工具去搜索正确的上下文,浪费大量token。直接指定文件会自动加载到上下文,不需要工具调用,任务完成率更高。
“自动”技能是个陷阱。让代理动态找到并调用正确的自定义技能,成功率很不稳定。从一开始就明确指示使用特定技能,token效率高得多。
分层的CLAUDE.md架构。一个巨大的CLAUDE.md会在每个回合都消耗上下文。改用分层系统(比如目录特定指令),能让上下文保持局部化。
这些技巧本身不新鲜,都是已知的最佳实践。问题在于读到这些建议是一回事,亲眼看着自己会话里的token流失,收到系统通知提醒它又陷入循环,感受完全不同。
观察系统不会改变被观察的对象,这条原则在软件开发里很重要。但有时候,观察本身就是改变的起点。你不是在优化代码,你是在优化你对代码的理解。
当工具的需求如此明显,以至于一个周末项目能在几天内获得数千次下载,这说明的不是工具有多好,而是原本的体验有多糟。黑箱不应该是AI辅助编程的默认状态。
点评: 真正的生产力工具不是让AI更聪明,而是让人能看懂AI在干什么。可视化不是锦上添花的功能,而是信任的前提。
GitHub:github.com/matt1398/claude-devtools
reddit.com/r/ClaudeAI/comments/1r90pol/claude_codes_cli_feels_like_a_black_box_i_built_a