模型 / 数据集
matt1398/claude-devtools avatar
matt1398/claude-devtools

claude-devtools 实测评估:把 Claude Code 隐藏的会话细节翻出来

The missing DevTools for Claude Code — inspect session logs, tool calls, token usage, subagents, and context window in a visual UI. Free, open source.

3,930 个 Star297 个 ForkTypeScriptMIT

秒懂

它是什么?
claude-devtools 是一个开源的桌面调试工具,直接读取 Claude Code 在本机留下的日志与会话记录,还原被折叠的文件路径、工具调用、思考步骤与 token 消耗。本文基于其 README 与仓库信息,评估它解决什么问题、怎么运行、边界在哪里。
适合谁用?
如果你日常重度使用 Claude Code,并且经常因为终端里那句 Read 3 files 而无法判断代理到底改了什么,claude-devtools 值得一试。它适合个人开发者、小团队以及需要审计代理行为的场景,尤其是那些关心 token 消耗去向和子代理执行细节的人。
能商用吗?
可以。MIT 是宽松许可证:你可以使用、修改并销售基于它的软件,只需保留版权和许可证声明。
还在维护吗?
在维护。仓库最近一次提交在 125 天前。
用什么语言写的?
主要是 TypeScript(依据 GitHub 的语言统计)。

以上回答依据项目的 GitHub 数据(最近同步于 2026年9月15日)和我们的分析,不构成法律意见。

开源项目深度解析

终端里看不见的那一层,正是它要还原的

Claude Code 从 v2.1.20 开始把工具调用结果压缩成一行摘要。Read 3 files 后面没有文件路径,Edited 2 files 不告诉你改了哪几行。社区对此有公开抱怨,README 里直接引用了相关讨论。claude-devtools 的定位就是给这个黑箱开一扇窗。它不拦截进程,不注入钩子,而是去读 Claude Code 已经写在磁盘上的会话记录。也就是说,它服务的对象是那些已经觉得终端输出不够用、又不想开 --verbose 去啃原始 JSON 的人。这个工具的假设很明确:你的机器上已经有全部真相,只是缺一个把它们拼起来的界面。

本地日志就是数据源,零配置是它的核心卖点

README 反复强调 zero configuration 和 no API keys。它的数据来源是 ~/.claude/ 目录下的 session transcripts 和日志文件。Claude Code 每次会话都会把完整的工具输入输出、消息内容写到本地,只是终端不展示。claude-devtools 读取这些文件后,在界面里重建出结构化视图。这意味着它不需要网络权限,不需要 Anthropic API 密钥,也不会把数据发到第三方服务器。对隐私敏感的用户来说这是个优点,但也意味着它只能看到本地已有的内容,无法获取云端或远程会话的数据。它本质上是一个日志解析器加可视化外壳,不是实时监控器。

七类 token 归因,把上下文窗口拆开看

上下文窗口的进度条只能告诉你用了多少,不能告诉你被谁占了。claude-devtools 把每一轮的 token 消耗分成七类:CLAUDE.md(全局、项目、目录三层)、skills、@ 提及的文件、工具输入输出、思考内容、团队开销、用户文本。这种分类能直接回答一个实际问题:我的上下文是被项目说明文件撑爆的,还是被某次大工具输出撑爆的。README 提到它有 compaction 可视化,也就是能看出何时触发了上下文压缩,压缩前后哪些内容被丢弃。对于调优 CLAUDE.md 或控制工具调用粒度的用户,这个视图比任何终端输出都有用。

子代理执行树与思考内容,调试多代理协作的关键

Claude Code 支持子代理,但终端只显示最终结果。如果主代理派生了三个子代理,每个子代理又调用了工具,你无法从终端判断哪一步出错。claude-devtools 把每个子代理的执行过程画成树,包含工具调用轨迹、token 数、耗时和成本估算。另一个被隐藏的是 thinking 内容,也就是模型的推理步骤。README 说 extended thinking 内容可以完整显示。这对调试那些回答看似合理但实际走错路的场景很有价值,但也要注意,思考内容可能包含敏感信息,在共享屏幕上展示时需要谨慎。

从 Homebrew 到 Docker,安装路径很多但各有前提

macOS 用户可以直接用 brew install --cask claude-devtools。其他平台需要从 GitHub Releases 下载对应安装包:macOS 分 arm64 和 x64 两种 dmg,Linux 提供 AppImage、deb、rpm 和 pacman 格式,Windows 是 exe。Docker 部署则用 docker compose up,之后访问 http://localhost:3456。需要注意几点:macOS 首次启动可能要右键打开,Windows 可能触发 SmartScreen,这些是未签名应用的常见现象。Docker 方式适合不想装桌面应用的人,但你需要自己处理日志目录的挂载,README 没有详细说明这一步。如果你之前从没手动查看过 ~/.claude/ 目录,建议先确认日志确实存在。

它不替代 --verbose,而是给你一个中间选项

README 明确说 --verbose 会输出原始 JSON、系统提示词和大量噪音,没有中间地带。claude-devtools 想填的就是这个空档。它把原始日志变成可筛选、可导航的界面,而不是让用户在一堆转义字符里找信息。但这里有个明显的边界:它只能展示日志里已有的内容,如果 Claude Code 未来改变了日志格式或减少记录细节,这个工具的能力就会缩水。另外,它是个事后查看工具,不能在你运行 Claude Code 的同时实时弹出警告。如果你需要的是在代理运行过程中拦截或修改行为,这个工具不适合。

维护状态与许可证:MIT 下的年轻项目

仓库最后推送是 2026 年 5 月 13 日,最近一次发布 v0.5.0 也在同一天。版本号还在 0.x 阶段,说明 API 和功能可能随时变化。许可证是 MIT,意味着你可以自由使用、修改甚至商用,只要保留版权声明。没有看到贡献指南或详细的开发文档,README 主要面向最终用户。升级成本方面,桌面应用一般通过自动更新或手动下载新版,但 0.x 版本之间可能存在破坏性变更,比如配置格式或日志解析逻辑。如果你打算把它集成到团队工作流里,建议锁定一个具体版本,而不是追最新版。

与同类工具相比,它押注在本地日志的完整性上

市面上也有一些 Claude Code 的辅助工具,比如直接包装 CLI 或提供实时仪表盘的。但 claude-devtools 的路线不同:它不碰运行中的进程,只做日志的离线解析。这意味着它的实现更简单,不依赖 Claude Code 的内部接口,也不容易被版本更新打断(除非日志格式本身变了)。缺点是它无法捕获那些没有写入磁盘的瞬时状态,比如内存中的上下文变化。另一个实际差异是它支持团队协作相关的消息,比如 teammate messages 和任务委派,这些在终端里通常被埋得更深。如果你需要审计团队里多个开发者与 Claude Code 的交互,这个工具能提供一个统一的查看入口。

编辑结论

如果你日常重度使用 Claude Code,并且经常因为终端里那句 Read 3 files 而无法判断代理到底改了什么,claude-devtools 值得一试。它适合个人开发者、小团队以及需要审计代理行为的场景,尤其是那些关心 token 消耗去向和子代理执行细节的人。不适合的人群包括:只用 Claude Code 跑一次性简单任务、对本地日志隐私敏感、或者期待它提供实时拦截能力的用户,因为它只读历史日志,不干预会话。安装前请先确认你的 Claude Code 版本在 v2.1.20 之后,因为该工具正是针对这个版本开始隐藏详细输出而设计的。首次使用前,建议手动打开一次 ~/.claude/projects 目录,确认日志文件确实存在且格式未被未来更新改变。这个工具的价值完全建立在 Anthropic 不改动日志结构的前提上,如果上游调整了存储格式,它可能就需要一次大版本跟进。

官方来源

  1. License: MIT
  2. matt1398/claude-devtools on GitHub
  3. Project website
  4. README
  5. Releases
社区笔记

社区笔记