Debugium
概览
作者提供的说明(英文原文)
AI-driven live debugger with MCP bridge for Python, JS, TS, Rust, Java, C/C++
它能帮你做什么
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
- 连接方式: 在你的电脑上运行
- 传输方式: stdio
- 分类: 开发者工具
安装
选择你使用的 AI 应用,然后复制设置。
通过 1/3 项检查 · 在你的电脑上运行
第一步:你用哪个 AI?
选择你用的应用,步骤会显示在下方。
可连接 Claude,但需要先准备
需要先在电脑上安装 Node.js(只需一次) · 仅限电脑上的 Claude 应用(Windows 或 Mac),网页和手机不可用
打开电脑版 Claude 应用的设置文件
SettingsDeveloperEdit Config
粘贴这些设置并保存文件
{ "mcpServers": { "debugium": { "command": "npx", "args": [ "-y", "@algiras/debugium" ] } } }退出 Claude 再重新打开
试一试
用 Debugium 告诉我你能帮我做什么,然后做一件给我看✓ 如果 Claude 说正在使用 Debugium,或回答中出现 Debugium 的工具名称,就表示连接成功
菜单名称已于 2026年11月11日 对照 Anthropic 帮助页面核实 · 你的界面可能因版本略有不同
ChatGPT 暂时无法连接 Debugium
Debugium 需要安装在你的电脑上,而 ChatGPT 只能连接在网上运行的服务器
你可以改用这些方式
A · 使用能连接 Debugium 的应用
- 需要先在电脑上安装 Node.js(只需一次) · 仅限电脑上的 Claude 应用(Windows 或 Mac),网页和手机不可用
- 需要先在电脑上安装 Node.js(只需一次)
- 需要先在电脑上安装 Node.js(只需一次)
- 需要先在电脑上安装 Node.js(只需一次)
B · 开发者工具 类中能连接 ChatGPT 的其他服务器
从同类中使用较多的里挑选,仅限用地址即可连接、无需密钥的
- Sentry✓ ChatGPT
- Front-End Checklist✓ ChatGPT
- Compiler Explorer✓ ChatGPT
可连接 Claude Code,但需要先准备
需要先在电脑上安装 Node.js(只需一次)
打开终端
Mac:按 Command+空格,输入 Terminal · Windows:打开 PowerShell
粘贴这条命令并按 Enter
claude mcp add debugium -- npx -y @algiras/debugium在 Claude Code 中输入 /mcp
应能看到 Debugium 在列表中并显示已连接
试一试
用 Debugium 告诉我你能帮我做什么,然后做一件给我看✓ 如果 Claude Code 说正在使用 Debugium,或回答中出现 Debugium 的工具名称,就表示连接成功
菜单名称已于 2026年11月11日 对照 Anthropic 帮助页面核实 · 你的界面可能因版本略有不同
可连接 Cursor,但需要先准备
需要先在电脑上安装 Node.js(只需一次)
在 Cursor 中以 Agent 模式打开 AI 聊天
试一试
用 Debugium 告诉我你能帮我做什么,然后做一件给我看✓ 如果 Cursor 说正在使用 Debugium,或回答中出现 Debugium 的工具名称,就表示连接成功
菜单名称已于 2026年11月11日 对照 Cursor 帮助页面核实 · 你的界面可能因版本略有不同
可连接 VS Code,但需要先准备
需要先在电脑上安装 Node.js(只需一次)
在 VS Code 中以 Agent 模式打开 AI 聊天
试一试
用 Debugium 告诉我你能帮我做什么,然后做一件给我看✓ 如果 VS Code 说正在使用 Debugium,或回答中出现 Debugium 的工具名称,就表示连接成功
菜单名称已于 2026年11月11日 对照 VS Code 帮助页面核实 · 你的界面可能因版本略有不同
开发者专用:终端命令和 JSON 设置
安装在电脑上
Claude Code
claude mcp add debugium -- npx -y @algiras/debugiumClaude Desktop (claude_desktop_config.json)
{
"mcpServers": {
"debugium": {
"command": "npx",
"args": [
"-y",
"@algiras/debugium"
]
}
}
}Cursor (~/.cursor/mcp.json)
{
"mcpServers": {
"debugium": {
"command": "npx",
"args": [
"-y",
"@algiras/debugium"
]
}
}
}VS Code (mcp.json)
{
"servers": {
"debugium": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@algiras/debugium"
]
}
}
}这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
一览
哪些应用可以使用它
依据这个服务器的连接方式和各应用自己的文档,检查于 2026年11月10日。
在你的电脑上运行,适用于
ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast
它能做什么
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
基础检查i
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月11日
- ✓ 通过
作者与仓库一致
注册名称已通过 GitHub 账户 Algiras 验证,该账户拥有此仓库
- ! 注意
仍在维护
代码最后更新于8个月前,已超过 6 个月
- ✕ 未通过
有许可证
仓库中没有找到许可证文件
- – 不适用
端点有响应
它在你的电脑上运行,没有互联网端点
- – 不适用
使用 OAuth 登录
在你的电脑上运行,改用本地设置
- … 尚未检查
工具描述中没有隐藏指令
它在你的电脑上运行;我们只能读取互联网端点的工具列表
讨论
提问、分享技巧或报告无法使用。按“有帮助”数量排序。
用户评价
还没有评价
与“开发者工具”中的其他服务器比较i
- 星标数多于此分类中其他 5773 个服务器的 83%
- 发布到注册中心的时间比此分类中其他 5773 个服务器的 5% 更新
- 基础检查结果等于或优于此分类中其他 5773 个服务器的 6%
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
常见问题
Debugium 安全吗?
它在 3 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
它需要哪些密钥或代码?
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
它在我的电脑上运行还是在云端?
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
它还在维护吗?
GitHub 仓库最后更新于8个月前,最新版本(1.0.0)于8个月前进入注册中心。
哪些应用可以使用它?
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Node.js。
有什么可以替代它?
同一分类中有:REA, Netdata, Front-End Checklist
替代选择
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:↓ 每周下载量i★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
Netdata
Real-time infrastructure monitoring with metrics, logs, alerts, and ML-based anomaly detection.
Front-End Checklist
Review frontend code and live pages against 386 quality-gated web development rules.
作者的 README
打开 README
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
Debugium
A multi-language debugger with a real-time web UI and LLM integration via MCP.
Debug Python, JavaScript, TypeScript, C, C++, Rust, Java, Scala, and WebAssembly programs from your browser — with AI-driven analysis through the Model Context Protocol.
Features
Web UI
- Real-time web UI — source viewer, breakpoints, variables (recursive expansion), call stack, console, timeline, watch expressions, findings — all updated live via WebSocket
- Multi-tab source viewer — open multiple files, click stack frames to navigate
- Variable search — filter variables by name with recursive expansion
- Changed-variable highlighting — variables that changed since last stop shown in orange
- Thread selector — switch between threads in multi-threaded programs
- Panel collapse & resize — drag to resize, toggle to collapse; Slim / Standard / Full layout presets
- Dark / light mode toggle
- Auto-reconnect — UI reconnects after a dropped WebSocket, with visual status indicator
- Keyboard shortcuts — F5 continue, F10 step over, F11 step in, Shift+F11 step out, Ctrl/Cmd+D dark mode
- Button animations — in-flight spinner and completion flash for debug commands
Debugging
- Multi-language — Python (debugpy), Node.js/TypeScript (js-debug), C/C++/Rust (lldb-dap), Java (java-debug), Scala (Metals), WebAssembly (lldb-dap), or any DAP adapter via
dap.json - Comprehensive DAP coverage — 35+ DAP requests: breakpoints, stepping, goto, memory read/write, disassembly, and more
- Breakpoints — conditional, logpoints, hit-count, function, data (watchpoints), exception, run-to-cursor (
continue_until) - Multi-session — debug multiple programs simultaneously, with child session routing (js-debug)
- Remote debugging — attach to debugpy, JDWP, or Node inspector running on another machine or container
LLM / MCP Integration
- 64 MCP tools — the full debug session exposed to Claude or any LLM
- Capability-gated tools — tools automatically shown/hidden based on adapter capabilities
- Compound tools —
get_debug_context(orient in one call),step_until,step_until_change,run_until_exception,explain_exception,get_call_tree,compare_snapshots,find_first_change - Execution timeline — every stop recorded with changed variables and stack summary
- Watch expressions — evaluated automatically at every breakpoint, manageable by LLM or UI
- Annotations & findings — pin notes to source lines, record conclusions visible in the UI
- Session export/import — save and restore debugging knowledge across sessions
CLI Control
- Full CLI — 13 subcommands to drive sessions from a second terminal without the web UI
- Auto-discovery — port file at
~/.debugium/port, session logs in~/.debugium/sessions/
Install
Claude Code Plugin (recommended)
/plugin marketplace add Algiras/debugium
/plugin install debugium@debugium
Then add to your project's .mcp.json (see MCP Tools below).
macOS / Linux binary
curl -fsSL https://raw.githubusercontent.com/Algiras/debugium/main/install.sh | bash
From source
# Prerequisites: Rust stable + wasm-pack
cargo install wasm-pack
Build UI
wasm-pack build crates/debugium-ui --target web --out-dir pkg cp crates/debugium-ui/pkg/cm_init.js crates/debugium-ui/dist/pkg/ cp crates/debugium-ui/pkg/debugium_ui.js crates/debugium-ui/dist/pkg/ cp crates/debugium-ui/pkg/debugium_ui_bg.wasm crates/debugium-ui/dist/pkg/
Build & install server
cargo install --path crates/debugium-server
Usage
Debug a Python file
debugium launch my_script.py --adapter python
Debug a Node.js / TypeScript file
debugium launch app.js --adapter node
debugium launch app.ts --adapter typescript
Debug C / C++ / Rust
# C or C++ (compile with -g for debug info)
cc -g -O0 main.c -o main && debugium launch ./main --adapter lldb c++ -g -O0 main.cpp -o main && debugium launch ./main --adapter lldb
Rust
cargo build && debugium launch target/debug/my_binary --adapter lldb
Debug Java / Scala
# Java (requires microsoft/java-debug adapter)
debugium launch MainClass --adapter java
Scala (connect to a running Metals DAP server)
debugium launch build-target --adapter metals debugium launch build-target --adapter metals:5005 # custom port
Attach to a running process (remote debugging)
# Python (debugpy listening on port 5678)
debugium attach --port 5678 --adapter python
Java (JDWP on port 5005)
debugium attach --port 5005 --adapter java
Node.js (inspector on port 9229)
debugium attach --port 9229 --adapter node
Or via MCP: attach_session(port=5678, adapter="python", breakpoints=["/path/app.py:42"])
Use a custom adapter via dap.json
# Create a dap.json (see dap.json.example) then:
debugium launch my_program --config ./dap.json
Or place dap.json in cwd / .debugium/ for auto-discovery:
debugium launch my_program # finds ./dap.json automatically
Set initial breakpoints
debugium launch my_script.py --adapter python \
--breakpoint /abs/path/my_script.py:42 \ --breakpoint /abs/path/helpers.py:15
Enable LLM / MCP integration
Add a .mcp.json to your project root (Claude Code picks this up automatically):
{
"mcpServers": { "debugium": { "command": "debugium", "args": ["mcp"] } } }
Then launch the session normally — the MCP server connects to whichever port is active:
debugium launch my_script.py --adapter python --breakpoint /abs/path/my_script.py:42
Claude Code will now have access to all Debugium MCP tools. See CLAUDE.md for the recommended workflow and SKILL.md for the full tool reference.
CLI Control Commands
Once a session is running (debugium launch …), you can drive it from a second terminal — or from an LLM agent — without touching the web UI.
Port is auto-discovered from ~/.debugium/port; override with --port.
Global flags (all subcommands)
| Flag | Default | Description |
|---|---|---|
--port PORT | ~/.debugium/port | Server port to connect to |
--session ID | default | Session to target |
--json | off | Print raw JSON instead of human-readable output |
Inspection
debugium sessions # list active sessions
debugium threads # list threads debugium stack # show call stack debugium vars # show local variables (auto-resolves top frame) debugium vars --frame-id 2 # show variables for a specific frame debugium eval "len(fibs)" # evaluate expression in top frame debugium eval "x + 1" --frame-id 2 debugium source path/to/file.py # print full source file debugium source path/to/file.py --line 43 # windowed ±10 lines with → marker debugium context # full snapshot: paused-at, stack, locals, source, breakpoints debugium context --compact # same but truncated (3 frames, 10 vars)
Breakpoints
debugium bp set FILE:LINE [FILE:LINE …] # set breakpoints (replaces existing in that file)
debugium bp list # list all breakpoints debugium bp clear # clear all breakpoints
Execution control
debugium continue # resume execution
debugium step over # step over (next line) debugium step in # step into a function call debugium step out # step out of current function
UI annotations (visible in the web UI)
debugium annotate FILE:LINE "message" [--color info|warning|error]
debugium finding "message" [--level info|warning|error]
Example workflow
# Terminal A — start the session
debugium launch tests/target_python.py --adapter python \ --breakpoint "$(pwd)/tests/target_python.py:43"
Terminal B (or LLM agent) — inspect and drive it
debugium sessions debugium stack debugium vars debugium eval "len(fibs)" debugium bp set tests/target_python.py:49 debugium continue # runs to line 49 debugium vars debugium step over debugium context --json # machine-readable snapshot debugium annotate tests/target_python.py:43 "called here" --color info debugium finding "fibs has 10 elements" --level info debugium bp clear
MCP Tools
When connected via MCP, 64 tools are available. Key ones:
| Category | Tools |
|---|---|
| Orient | get_debug_context ★ (paused location + locals + stack + source in one call) |
| Breakpoints | set_breakpoint, set_breakpoints, set_logpoint, list_breakpoints, clear_breakpoints, set_function_breakpoints, set_exception_breakpoints, set_data_breakpoint, list_data_breakpoints, clear_data_breakpoints, breakpoint_locations |
| Execution | continue_execution, step_over, step_in, step_out, pause, goto, disconnect, terminate, restart |
| Inspection | get_stack_trace, get_scopes, get_variables, evaluate, get_threads, get_source, get_capabilities, loaded_sources, source_by_reference, step_in_targets |
| Mutation | set_variable, set_expression |
| Output | get_console_output, wait_for_output (with from_line to avoid stale matches) |
| Memory | read_memory, write_memory, disassemble (native debugging) |
| History | get_timeline, get_variable_history, compare_snapshots, find_first_change |
| Annotations | annotate, get_annotations, add_finding, get_findings |
| Watches | add_watch, remove_watch, get_watches |
| Compound | step_until, step_until_change, continue_until, run_until_exception, explain_exception, get_call_tree, restart_frame |
| Session | get_sessions, list_sessions, launch_session, attach_session, stop_session, export_session, import_session |
| Control | goto_targets, cancel_request |
Note:
step_over,step_in, andstep_outare blocking — they wait for the
adapter to pause before returning. Safe to chain back-to-back without sleeps.
continue_executionreturnsconsole_line_countfor use withwait_for_output.
Tools like
read_memory,goto, andrestart_frameonly appear when the adapter supports them.
See SKILL.md for the full reference with input schemas.
Keyboard Shortcuts
| Key | Action |
|---|---|
F5 | Continue |
F10 | Step Over |
F11 | Step Into |
Shift+F11 | Step Out |
Ctrl/⌘+D | Toggle dark/light mode |
Architecture
debugium-server (Rust + Axum)
├── DAP proxy — spawns / attaches to debug adapters (debugpy, js-debug, lldb-dap, java-debug, Metals, custom) ├── HTTP API — /state, /sessions, /annotations, /findings, /watches, /timeline ├── WebSocket — broadcasts DAP events + enriched stop data (changed vars, timeline) to UI ├── MCP stdio — JSON-RPC 2.0 server exposing 64 tools for LLM integration ├── CLI control — 13 subcommands to drive sessions from a second terminal └── ~/.debugium/ — port file, session logs (events.ndjson), debug log
debugium-ui (Leptos + WASM) ├── CodeMirror 6 — source viewer with breakpoint gutters, exec arrow, LLM annotations, multi-tab ├── Reactive panels — Variables, Stack, Breakpoints, Finding