claude-devtools

matt1398MIT活跃维护

给 Claude Code 补上的可视化调试面板,能直观查看会话日志、工具调用、token 消耗、子代理和上下文窗口占用,方便排查 AI 编码代理的运行问题。

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

v0.5.0发布于 2026-05-13 09:10 UTC4,032star +11 / 7 天308fork同步于 2026-11-10 11:39 UTC

怎么上手

由 README 提炼,执行前请确认
brew install --cask claude-devtools
docker compose up
硬件要求按 README 说明

README 未说明显存或 GPU 要求;提供 macOS、Linux、Windows 桌面安装包,也可用 Docker 或 Node.js 20+ 独立运行

支持 Apple Silicon有 Docker 镜像
下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

由 README 自动翻译提炼

可视化查看 Claude Code 会话日志、工具调用与 token 用量的调试工具

给 Claude Code 补上的可视化调试面板,能直观查看会话日志、工具调用、token 消耗、子代理和上下文窗口占用,方便排查 AI 编码代理的运行问题。

核心能力

  • 读取 ~/.claude 日志重建完整会话,无需 API key
  • 按 7 类来源逐轮归因上下文窗口 token 消耗
  • 展开工具调用,显示文件路径、语法高亮与内联 diff
  • 按 agent 渲染子代理执行树,含 token、耗时与成本
  • 可视化上下文压缩过程,并支持 SSH 远程会话检查

容易踩的坑

macOS 首次启动需右键选择「打开」;Windows 安装包可能触发 SmartScreen,需点「更多信息」再「仍要运行」;Docker 部署需把 ~/.claude 挂载到 /data/.claude 并访问 3456 端口

内容由模型根据 README 生成,可能不完整或不准确,以官方文档为准。看原文 README

最近发版

5 个版本v0.5.0
  1. v0.5.00.5.0最新正式版2026-05-13 · 2026-05-13 09:10 UTC

    What's Changed

    Full Changelog: https://github.com/matt1398/claude-devtools/compare/v0.4.16...v0.5.0

  2. v0.4.160.4.162026-05-06 · 2026-05-06 11:41 UTC
    查看更新说明

    What's Changed

    New Contributors

    Full Changelog: https://github.com/matt1398/claude-devtools/compare/v0.4.15...v0.4.16

  3. v0.4.150.4.152026-04-30 · 2026-04-30 14:51 UTC
    查看更新说明

    What's Changed

    Full Changelog: https://github.com/matt1398/claude-devtools/compare/v0.4.14...v0.4.15

  4. v0.4.130.4.13pre-release2026-04-27 · 2026-04-27 11:45 UTC
    查看更新说明

    What's Changed

    New Contributors

    Full Changelog: https://github.com/matt1398/claude-devtools/compare/v0.4.11...v0.4.13

  5. v0.4.100.4.102026-04-05 · 2026-04-05 10:08 UTC
    查看更新说明

    What's Changed

    New Contributors

    Full Changelog: https://github.com/matt1398/claude-devtools/compare/v0.4.9...v0.4.10

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    The Problem

    Claude Code started hiding what it does.

    Since v2.1.20, Claude Code replaced detailed output with opaque summaries. Read 3 files. Searched for 1 pattern. Edited 2 files. No file paths. No content. No line numbers. The community backlash was immediate.

    But the problem goes deeper than collapsed file paths:

    • Thinking steps — Claude's chain-of-thought reasoning is completely invisible in the terminal
    • Tool call details — you see a one-line summary, not the actual input/output
    • Subagent activity — agents spawn agents, but you only see the final result
    • Context window — a three-segment progress bar with no breakdown of what's consuming your tokens
    • Team coordination — teammate messages, task delegation, shutdown requests — all buried

    The only workaround is --verbose, which dumps raw JSON, internal system prompts, and thousands of lines of noise. There is no middle ground.

    The Solution

    claude-devtools is the debugging tool for Claude Code. It reads the Claude Code logs and session transcripts already saved to ~/.claude/ on your machine, and reconstructs everything.

    What the terminal hidesWhat claude-devtools shows
    Read 3 filesExact file paths, syntax-highlighted content with line numbers
    Searched for 1 patternThe regex pattern, every matching file, matched lines
    Edited 2 filesInline diffs with added/removed highlighting
    Three-segment context barPer-turn token attribution across 7 categories with compaction visualization
    Collapsed subagent outputFull execution trees per agent with tool traces, tokens, duration, cost
    Nothing about thinkingExtended thinking content, fully visible
    --verbose JSON dumpStructured, filterable, navigable interface — no noise
    Per-project Claude memory hidden in ~/.claude/projects/.../memory/MEMORY.md rendered as a clickable index of layers; open any layer in your editor
    Copy from terminal = wrapped lines, ANSI codes, broken MarkdownReal selectable text, one-click copy on every message and code block

    Zero configuration. No API keys. No wrappers. Works with every session you've ever run.

    [!TIP] If claude-devtools saves you time debugging Claude Code, leaving a ⭐ on the repo is the single best way to support the project — it helps other developers find it.


    Installation

    Homebrew (macOS)

    brew install --cask claude-devtools
    

    Direct Download

    PlatformDownloadNotes
    macOS (Apple Silicon).dmgDownload the arm64 asset. Drag to Applications. On first launch: right-click → Open
    macOS (Intel).dmgDownload the x64 asset. Drag to Applications. On first launch: right-click → Open
    Linux.AppImage / .deb / .rpm / .pacmanChoose the package format for your distro
    Windows.exeStandard installer. May trigger SmartScreen — click "More info" → "Run anyway"
    Dockerdocker compose upOpen http://localhost:3456. See Docker deployment

    Key Features

    Context Reconstruction

    Per-turn token attribution across 7 categories — CLAUDE.md (global, project, directory), skills, @-mentioned files, tool I/O, thinking, team overhead, user text. See exactly what's in the context window at any point.

    Terminal-Friendly Copy & Paste

    Copying Claude Code output from the terminal mangles it — selection wraps at the terminal width, ANSI color codes leak into the clipboard, and code blocks lose their Markdown formatting. claude-devtools renders every message, tool call, and output as real selectable text with one-click copy on every code block, plus full-session export to Markdown / JSON / plain text.

    Project Memory

    Claude Code stores per-project memory at ~/.claude/projects/<project>/memory/ — a MEMORY.md index plus one .md file per layer (working style, architecture notes, etc.). claude-devtools surfaces this as a sidebar entry that opens a dedicated pane: layer list on the left, full markdown rendering on the right with frontmatter shown as a metadata card, Obsidian-style [[wikilinks]] for cross-layer navigation, and an icon-driven "Open in…" launcher that hands any layer (or the whole memory folder) off to Finder/Explorer, Cursor, VS Code, Zed, Xcode, iTerm, Ghostty, Terminal — or copies the absolute path.

    Team & Subagent Trees

    Isolated execution trees per agent with tool traces, token metrics, duration, and cost. Nested agents render recursively.

    Tool Call Inspector

    Every tool call expanded with specialized viewers — syntax-highlighted Read calls, inline Edit diffs, Bash output, and full subagent trees.

    SSH Remote Sessions

    Inspect sessions on any remote machine over SSH. Reads ~/.ssh/config, supports agent forwarding and key auth.

    Compaction Visualization

    See the moment your context hits the limit. Visualizes how context fills, compresses, and refills — so you know exactly what was lost. (Why did Claude forget? — debugging walkthrough)

    Notification Triggers

    System notifications for .env access, tool errors, high token usage, and custom regex patterns on any field.

    Command Palette & Multi-Pane Layout

    Cmd+K for cross-session search. Open multiple sessions side-by-side with drag-and-drop tabs.

    📖 Full documentation: claude-dev.tools/docs · Copy from Claude Code: claude-dev.tools/docs/copy-paste · JSONL format reference: claude-dev.tools/docs/jsonl-format · claude --verbose comparison: claude-dev.tools/docs/verbose-vs-devtools


    Not a Wrapper

    claude-devtools does not wrap, modify, or interfere with Claude Code. It reads session logs that already exist on your machine. Works with sessions from the terminal, IDEs, or any tool that uses Claude Code.


    Docker / Standalone Deployment

    Run without Electron — in Docker, on a remote server, or anywhere Node.js runs.

    docker compose up
    # Open http://localhost:3456
    

    Or manually:

    docker build -t claude-devtools .
    docker run -p 3456:3456 -v ~/.claude:/data/.claude:ro claude-devtools
    
    VariableDefaultDescription
    CLAUDE_ROOT~/.claudePath to the .claude data directory
    HOST0.0.0.0Bind address
    PORT3456Listen port

    The standalone server has zero outbound network calls. For maximum isolation: docker run --network none -p 3456:3456 -v ~/.claude:/data/.claude:ro claude-devtools. See SECURITY.md.


    Development

    Prerequisites: Node.js 20+, pnpm 10+

    git clone https://github.com/matt1398/claude-devtools.git
    cd claude-devtools
    pnpm install
    pnpm dev
    
    CommandDescription
    pnpm devDevelopment with hot reload
    pnpm buildProduction build
    pnpm typecheckTypeScript type checking
    pnpm testRun all tests
    pnpm checkFull quality gate (types + lint + test + build)

    Community

    Contributing

    See CONTRIBUTING.md for guidelines. Please read our Code of Conduct.

    Security

    IPC handlers validate all inputs with strict path containment checks. File reads are constrained to the project root and ~/.claude. See SECURITY.md.

    License

    MIT


    Star History