neuron-explorer
Qwen3.5‑4B 전용 조향형 뉴런 탐색기, 모든 MLP 뉴런을 밀어 결과를 보관·탐색
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
Dependency and call graph generation, complexity metrics, and interactive
visualization for verified codebases. Graphs come from multiple probes:
• probe-lean — Lean 4 declarations (atom JSON), with sorry detection
• probe-verus / probe-rust — Rust and Verus projects via SCIP indices
• probe-aeneas — cross-language Rust↔Lean mapping links, merged graphs
The web viewer's primary input is probe atom JSON (probe-lean, probe-verus);
SCIP is one probe among several. This workspace also computes Halstead
complexity metrics for Verus specifications and proofs.README 전문 보기 ↗Dependency and call graph generation, complexity metrics, and interactive visualization for verified codebases. Graphs come from multiple probes:
sorry detectionThe web viewer's primary input is probe atom JSON (probe-lean, probe-verus); SCIP is one probe among several. This workspace also computes Halstead complexity metrics for Verus specifications and proofs.
Live demo: https://beneficial-ai-foundation.github.io/probegraph/
probegraph/
├── crates/
│ ├── scip-core/ # SCIP parsing, call graph construction, D3 export
│ ├── verus-metrics/ # Halstead metrics for Verus specs/proofs
│ └── metrics-cli/ # Command-line tools (37 binaries, including pipeline)
├── external/
│ └── verus_lemma_finder/ # Similar lemma search (git submodule)
├── web/ # Interactive viewer (see web/README.md)
├── scripts/ # Python enrichment and plotting scripts
├── examples/ # detect_unused_specs example script
└── docs/
├── guides/ # Using probegraph: CI, viewer, metrics
├── technical/ # Internals: scip-core, spec/proof metrics, CLI tools
├── plans/ # Work in progress
└── archive/ # Historical design docs and analyses
The pipeline binary produces an enriched graph in one step (Rust/Verus
projects):
git clone --recurse-submodules https://github.com/Beneficial-AI-Foundation/probegraph.git
cd probegraph
cargo build --release --workspace
# Optional, for the similar-lemmas feature:
uv sync --extra enrich
(cd external/verus_lemma_finder && uv tool run maturin develop --release)
cargo run --release --bin pipeline -- /path/to/verus-project
cd web && npm install && npm run dev
The pipeline generates a SCIP index, exports the call graph to
web/public/graph.json (change with -o), runs verification to attach
statuses, and adds similar lemmas. Useful flags:
| Flag | Effect |
|---|---|
--skip-verification | Faster; no Verus needed |
--skip-similar-lemmas | No Python needed |
--use-cached-scip | Reuse <project>/index.scip.json if it exists |
--github-url <url> | Source links in the viewer |
-p <crate> | Select a package in a workspace |
--use-rust-analyzer | Plain Rust projects (combine with --skip-verification) |
The viewer guide covers the views, filters and queries.
Install rust-analyzer (or verus-analyzer) and scip, then, in the project directory:
rust-analyzer scip .
scip print --json index.scip > index.scip.json
Reusable workflows build the graph in your repo's CI and deploy the viewer to GitHub Pages. Minimal setup for a Verus project:
permissions:
contents: read
pages: write
id-token: write
jobs:
callgraph:
uses: Beneficial-AI-Foundation/probegraph/.github/workflows/generate-callgraph.yml@main
Lean 4 projects use generate-lean-callgraph.yml the same way. Inputs, plain
Rust projects and subpath deployment are covered in the
CI integration guide.
Computes Halstead metrics for requires/ensures/decreases clauses and
proof { } blocks (with transitive lemma analysis), and merges
implementation-complexity metrics from rust-code-analysis:
cargo run -p metrics-cli --bin run_full_pipeline -- \
--scip index.scip.json --csv functions_to_track.csv \
--rca-dir rca_jsons/ --proof-csv proofs.csv --output-dir out/
See the metrics pipeline guide for the inputs and steps.
MIT; see LICENSE.