neuron-explorer
Steering-first neuron explorer for Qwen3.5-4B: push every MLP neuron, keep every rollout, browse the results
翻译准备中
Keep track and understand that AI crazy code with the help of AI
翻译准备中
取自仓库 README
正在加载完整 README。
查看完整 README ↗CodeDiver is a desktop workspace you share with your AI coding agent. Through its built-in MCP server, Claude Code, Cursor, VS Code and other agents see the code you have open and show you what they mean on your screen: guided walkthroughs, animated demos of how a request flows, call graphs and "how does execution get here?" traces, control-flow graphs, and a QA view of what your tests actually cover. Every change the agent wants to make arrives as a proposal you review visually before anything touches disk.
You can explore the same views yourself: dependency maps, type diagrams, and heatmaps of churn, complexity and change.
| Trace to here | Click any function to see every path from entry points (including HTTP handlers registered as values) to it. |
| Function logic | Control-flow graph with branches, loops, early returns, defer/go and panics, plus an inputs → function → outputs card. Agents pin step-by-step narration onto the matching blocks. |
| File summary | One click lists every function (inputs → outputs, complexity, callers/callees), type, variable, constant and import in the open file. |
| Call graphs | Callers, callees or both; interface calls resolved to their concrete implementations. |
| QA view | Line coverage from your own test tooling (Go, LCOV, Cobertura, JaCoCo), every test as a readable behavior with the code it exercises, functions ranked by test risk with the hard-wired dependencies that make them hard to test, and coverage markers in the editor gutter. Agents read it over MCP and post test plans you review. |
| Heatmaps | Treemap of the repo by churn, working-tree diff, pending agent proposals, complexity, agent attention, size or uncovered lines, with per-function drill-down. |
| Visual review | Git diffs (working tree, staged, any two refs) mapped to the functions they touch, plus a blast-radius graph of affected callers. |
| Agent proposals | Agents submit edits; you get side-by-side diffs, a heatmap and an impact graph, then accept or reject per file with feedback. |
| Walkthroughs & diagrams | Agents present guided code tours, including "walk me through this change" tours of a diff, and Mermaid or interactive diagrams whose nodes link to code. |
| Demos & animations | Agents play animated, step-by-step demos: architectures with nested regions, icons and color-coded paths, or execution trees from the real call graph, with packets moving along the routes and values changing as you step. Free-form animations run sandboxed. Export any step as PNG or SVG, or the whole demo as a PDF. |
| Themes | Deep Dive (default), Abyss, Obsidian, Tokyo Night, Nord, Dracula, Gruvbox, Synthwave, Paper and Solarized Light. |
| Level | Languages | What you get |
|---|---|---|
| Precise | Go | Type-checked call graphs with interface dispatch, control-flow graphs, struct fields, implements, variables and constants. |
| Lexical | TypeScript, JavaScript, Python, Rust, Java, Kotlin, C#, C, C++, Ruby, PHP, Swift, Scala, Dart, Lua | Functions, classes, parameters, docs and complexity; name-matched call edges (marked ~); import graphs for most. |
| Everywhere | ~80 languages | Syntax highlighting, search, git history and diffs, heatmaps, proposals, walkthroughs and agent explanations. |
Lexical results are approximate: a ~ call may point at a same-named function, and calls through callbacks or framework wiring are missed. Language support has the full matrix and the known gaps per language.
macOS / Linux
curl -fsSL https://raw.githubusercontent.com/aitakemyjob/codediver/main/scripts/install.sh | sh
Windows (PowerShell)
irm https://raw.githubusercontent.com/aitakemyjob/codediver/main/scripts/install.ps1 | iex
Or grab a file from Releases:
| Platform | Download |
|---|---|
| macOS (Apple Silicon + Intel) | codediver_darwin_universal.zip |
| Windows | codediver_windows_amd64_installer.exe or the portable .zip |
| Linux x64 / ARM64 | .deb, .rpm or .tar.gz |
Headless server (codediver serve, any OS) | codediver-headless_<os>_<arch> |
Linux needs WebKitGTK 4.1 (sudo apt install libwebkit2gtk-4.1-0), and every
platform needs git on PATH for history features. macOS builds are not yet
notarized; the install script clears the quarantine flag for you.
Verifying a download: every file is listed in checksums.txt, and each
release carries signed build provenance, so you can confirm a file was built
by this repository's release workflow:
gh attestation verify codediver_linux_amd64.deb --repo aitakemyjob/codediver
Each release also includes an SPDX SBOM listing every Go and npm dependency.
Launch CodeDiver and Add a repository.
Connect your agent (the MCP pill in the title bar shows these too):
# Claude Code (user scope: available in every project; use --scope project
# to share it with your team through .mcp.json instead)
claude mcp add --transport http --scope user codediver http://127.0.0.1:47474/mcp
// Cursor (~/.cursor/mcp.json)
{ "mcpServers": { "codediver": { "url": "http://127.0.0.1:47474/mcp" } } }
// VS Code (.vscode/mcp.json)
{ "servers": { "codediver": { "type": "http", "url": "http://127.0.0.1:47474/mcp" } } }
// Claude Desktop and other stdio-only clients
{ "mcpServers": { "codediver": { "command": "codediver", "args": ["mcp"] } } }
Ask things like "Using CodeDiver, walk me through how an order request is handled", "explain the function I have open" or "what's the riskiest untested code here? Show me a test plan." With Follow agent on, whatever the agent shows opens in front of you.
Open QA (flask icon) and click Run coverage to add line coverage; CodeDiver detects the command for Go, Vitest/Jest, pytest, Cargo, Maven, Gradle and .NET projects, or imports a report you already have.
Shortcuts: Ctrl/⌘ K palette · Alt+T trace to here · Alt+L logic flow ·
Alt+G call graph · Alt+S file summary · Ctrl/⌘ Shift H heatmap ·
Ctrl/⌘ Shift G review changes · Ctrl/⌘ B sidebar · Ctrl/⌘ I inspector.
codediver launch the desktop app
codediver serve headless; open the same UI in your browser
codediver mcp stdio MCP bridge to the running app
codediver version
-port N MCP/HTTP port (default 47474) -add PATH add a repository first
.. or symlink escapes, .git is
never exposed, and secrets (.env*, *.pem, *.key, id_rsa*, …) plus
your own per-repo globs are invisible.propose_changes stores a proposal; only you can
apply it, and CodeDiver refuses to overwrite a file that changed since.go.mod,
package.json, pyproject.toml, … and editable in the QA view) run only
when you click Run coverage; agents only read the results.127.0.0.1, rejects non-loopback Host headers (DNS
rebinding) and requires a custom header plus same-origin for the UI API.You need Go 1.25+ and Node 22+. The build scripts install the Wails CLI if it's missing.
| Platform | Prerequisites | Build |
|---|---|---|
| Linux | sudo apt install libgtk-3-dev libwebkit2gtk-4.1-dev (Fedora: gtk3-devel webkit2gtk4.1-devel); optional nfpm for .deb/.rpm | scripts/build.sh --package |
| macOS | Xcode command-line tools (xcode-select --install) | scripts/build.sh --package |
| Windows | WebView2 (preinstalled on Windows 11); optional NSIS for the installer (choco install nsis) | scripts\build.ps1 -Package |
Without --package the app lands in build/bin; with it, release artifacts
land in dist/. Other useful commands:
scripts/build.sh --platform linux/arm64 # pick a target (macOS defaults to universal)
scripts/build.sh --headless --package # no-webview binaries for every OS/arch
make test # Go (race) + frontend tests
make dev # hot-reload development
make help # everything else
Releases are cut from version tags. From a clean main:
make release VERSION=v0.2.0
That runs the tests, then creates and pushes an annotated tag. The
Release workflow then verifies the tag,
re-runs the tests, builds every platform with the same scripts as above
(Linux amd64/arm64, macOS universal, Windows, plus headless binaries),
writes checksums.txt, an SPDX SBOM and signed build provenance, and publishes
a GitHub release whose notes are grouped by PR label
(.github/release.yml). Update
CHANGELOG.md before tagging. Tags with a suffix like
v1.0.0-rc.1 become pre-releases. To sign and notarize macOS builds, add the
MACOS_CODESIGN_IDENTITY, APPLE_ID, APPLE_TEAM_ID and
APPLE_APP_PASSWORD repository secrets.
Contributions are welcome! Start with CONTRIBUTING.md, browse good first issues, and please follow the Code of Conduct. Questions go to Discussions; security reports to SECURITY.md.