Three steps. Under 30 seconds. Zero config.
From GitHub App install to your first blast-radius report in under a minute. No YAML. No CI changes. No secrets to manage.
Webhook to PR comment in 6 steps
Install in 30 seconds
One click. Zero configuration. Immediate monitoring.
Click Install on GitHub, pick your repositories, and Arbor immediately begins monitoring. No YAML config files, no CI pipeline changes, no environment variables to set on your side.
Arbor uses a GitHub App (not a personal access token), which means permissions are scoped and auditable. You can remove it anytime from GitHub's app settings.
- Works on public and private repos
- Org-level install covers all repos
- Permissions are minimal and read-only except PR comments
Graph built automatically on every PR
Shallow clone → Tree-sitter parse → petgraph BFS. Sub-30 seconds.
When a PR is opened (or updated), GitHub sends a webhook event to Arbor. The server does a shallow git clone of just that commit — no full history needed — and identifies exactly which files changed using git diff.
Each changed file is parsed with Tree-sitter to produce a concrete syntax tree. Arbor extracts function definitions, call sites, imports, and class relationships, then wires them into a directed graph using petgraph (Rust).
Finally, BFS traversal walks the graph upward from each changed symbol, collecting every transitive caller. This is provably complete — there are no heuristics or approximations.
- Tree-sitter grammars for 14+ languages
- Cross-file edge resolution (imports ↔ exports)
- BFS terminates in O(nodes + edges) — scales to any codebase
Blast radius posted to your PR
Structured report. Specific actions. Under 30 seconds.
The analysis report is posted as a GitHub PR comment within 30 seconds of the PR being opened. It includes: a normalized risk score (0–100%), a summary table with per-file risk and caller counts, a list of high-centrality nodes, and — critically — a specific "Before You Merge" checklist.
The checklist isn't generic boilerplate. It's computed from the blast radius data: if 20+ callers are affected, it suggests splitting the PR. If a high-centrality node changed, it names that specific function and recommends test coverage. If overall risk is HIGH, it requests a senior review.
- Comment posted in < 30s on every PR open/update
- Commit status check blocks merge on HIGH (configurable)
- Dashboard stores all analyses — searchable history
What changes when Arbor is in your review process
Common questions
See it on your first PR
30 seconds to install. Your next PR will have a full blast-radius report.