Turn any codebase into a queryable knowledge graph — offline-first, zero API keys.
Runs on your machine from its package; the steps are below.
At most: creates or changes data: records, files, settings.
Odel charges nothing per call. The publisher may charge for its own service.
Runs locally over stdio
This server isn't hosted — your MCP client launches it from a package registry. Use one of the commands below, or drop the config into your client (e.g. Claude Desktop).
Run
npx -y @nodesify/astria
MCP client config
{
"mcpServers": {
"astria": {
"command": "npx",
"args": [
"-y",
"@nodesify/astria"
]
}
}
}Knowledge graph builder for codebases
Docs | Getting started | CLI Reference | Architecture | Worked examples | Changelog | Release notes | Security
Built by Nodesify
Find an implementation, inspect its relationships, and assess a change before editing. Astria builds a local SQLite knowledge graph with deterministic Rust/tree-sitter extraction. CLI and MCP queries use the same retrieval engine; source locations and evidence classes make results inspectable. Structural analysis needs no API key. Local embeddings and remote semantic enrichment are optional.
npm install -g @nodesify/astria
Node.js >= 22 is required. Prebuilt native binaries ship with the package; installation needs no Rust toolchain. macOS/Linux can also use brew install nodesify/tap/astria (tap).
Intel Mac (darwin-x64), musl Linux and windows-arm64 builds omit local embeddings because ONNX Runtime has no prebuilt runtime there. Structural analysis works; run --embed reports that embeddings are unsupported. Check astria stats --json for embeddingsSupported.
astria run . # build .astria/
astria map # orient by source modules
astria query "where is request authentication implemented"
astria explain <node-id> # inspect a returned symbol
astria path <caller-id> <callee-id> # follow relationships
astria affected <node-id> # assess a proposed change
astria update . # refresh after editing
Use node IDs returned by the graph. Confirm important results against the linked source: name-derived call/import bindings are RESOLVED, and ambiguous targets remain INFERRED. --detail high restricts traversal to EXTRACTED/DECLARED facts. affected reports graph reachability; it cannot prove runtime behavior.
Exclude files with .astriaignore (gitignore syntax). Graphs and reports live under .astria/; read graph_report.md for orientation. Unchanged source reuses extraction caches, while updates reconcile references across the current corpus. After upgrading, run astria update . to refresh cached extraction for qualified call targets.
The evaluation harness separates file and declaration retrieval, delivered tokens, search/read cost and graph build time. Historical comparisons used tiny, exercised external sets and a single-pass search floor. New Requests and Commander questions are source-grounded, agent-authored, reserved and unexercised until their first explicit evaluation. No result establishes broad superiority or savings over a complete agent task.
Rust workspace with 20 crates plus a Node.js CLI. Uses 42 registered language configurations; exact parser coverage and optional lang-* build features are described in language support. See ARCHITECTURE.md for pipeline, caching and evidence contracts.
Astria is an independent implementation inspired by Graphify, and is not affiliated with or endorsed by that project.
# Build Rust core
cargo build --release
# Copy the native library for the source CLI (Linux)
mkdir -p packages/astria-cli/dist
cp target/release/libastria_napi.so packages/astria-cli/dist/astria.node
# Build Node.js CLI
cd packages/astria-cli && npm ci && npm run build
See Contributing for macOS and Windows native artifact paths.
Requires Rust 1.88+ (declared as rust-version in the workspace) and Node.js >= 22.
MIT — see LICENSE.
Contributions are welcome and accepted under the Contributor License Agreement — see CONTRIBUTING.md to get started.
Installation defaults to project scope: astria install --platform codex --scope project. Use --scope user explicitly for user-wide integrations. Run astria doctor after setup or upgrades. See the installation lifecycle guide for supported platforms, upgrade, backup/restore and complete removal.