Astria について
Astria は Rust と tree-sitter による決定的な抽出で、ローカルの SQLite コードグラフを構築します。実装箇所や関係を調べ、ソースに結び付いた根拠で変更を評価したい開発者やコーディングエージェント向けで、構造分析に API キーは不要です。
主な機能
- 01ローカル SQLite コードグラフ
- 02Rust と tree-sitter による決定的な抽出
- 03シンボルと関係の検索
- 04変更影響の分析
- 05根拠の分類とソース位置
- 06任意のローカル埋め込みと意味的な補完
活用シーン
- 01機能の実装箇所を特定
- 02コードシンボル間の関係を追跡
- 03編集前にグラフ上の影響範囲を確認
MCP 対応
Astria は CLI と同じ検索エンジンを使って MCP クエリを提供します。README にはエージェント連携の記載がありますが、MCP ツールやトランスポートの詳細は示されていません。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
astria
コードベース向けナレッジグラフビルダー
ドキュメント | はじめに | CLI リファレンス | アーキテクチャ | 実例 | 変更履歴 | リリースノート | セキュリティ
Nodesify が開発
実装を見つけ、その関係を調べ、編集前に変更の影響を評価できます。Astria は、決定論的な Rust/tree-sitter 抽出を用いてローカルの SQLite ナレッジグラフを構築します。CLI と MCP のクエリは同じ検索エンジンを使用し、ソースの位置と根拠の分類によって結果を検証できます。構造分析に API キーは不要です。ローカルの埋め込みとリモートのセマンティックエンリッチメントはオプションです。
インストール
npm install -g @nodesify/astria
Node.js >= 22 が必要です。パッケージにはビルド済みのネイティブバイナリが含まれているため、インストールに Rust ツールチェーンは不要です。macOS/Linux では brew install nodesify/tap/astria(tap)も使用できます。
Intel Mac(darwin-x64)、musl Linux、windows-arm64 のビルドでは、ONNX Runtime に利用可能なビルド済みランタイムがないため、ローカルの埋め込み機能は含まれません。構造分析は動作しますが、run --embed は埋め込みがサポートされていないことを報告します。astria stats --json で 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
グラフが返すノード ID を使用してください。重要な結果は、リンク先のソースで確認してください。名前から導出された呼び出し/インポートのバインディングは RESOLVED となり、曖昧な対象は INFERRED のままです。--detail high を指定すると、探索対象は EXTRACTED/DECLARED の事実に限定されます。affected はグラフ上の到達可能性を報告するものであり、実行時の動作を証明することはできません。
.astriaignore(gitignore 構文)でファイルを除外できます。グラフとレポートは .astria/ の下に保存されます。全体像を把握するには graph_report.md を参照してください。変更されていないソースでは抽出キャッシュが再利用され、更新時には現在のコーパス全体で参照が調整されます。アップグレード後、修飾された呼び出し先の抽出キャッシュを更新するには astria update . を実行してください。
ガイドとエビデンス
- インストールと最初のグラフ
- エージェント統合、MCP、スキル、フック
- Wiki とエクスポート、セマンティックエンリッチメント、メモリと学習
- CLI リファレンス、グラフモデル、トラブルシューティング
- 実践例と検索検証。既知の制限も含みます
評価ハーネスでは、ファイルと宣言の検索、提供トークン数、検索/読み取りコスト、グラフ構築時間を個別に評価します。過去の比較では、小規模で実際に使用された外部セットと、単一パス検索の下限値を使用しました。新しい Requests と Commander の質問は、ソースに基づいてエージェントが作成したもので、初回の明示的な評価までは留保され、評価されていません。いずれの結果も、エージェントタスク全体における幅広い優位性やコスト削減を示すものではありません。
アーキテクチャと言語
Rust ワークスペースと Node.js CLI で構成されています。42 の言語設定を登録しています。パーサーの正確な対応範囲とオプションの lang-* ビルド機能については、言語サポートで説明しています。パイプライン、キャッシュ、エビデンス契約については、ARCHITECTURE.mdを参照してください。
Astria はGraphifyに着想を得た独立した実装であり、同プロジェクトとは提携しておらず、同プロジェクトから推奨も受けていません。
ソースからビルドする
# 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
macOS および Windows のネイティブ成果物のパスについては、貢献ガイドを参照してください。
Rust 1.88 以降(ワークスペースの rust-version で宣言)と Node.js >= 22 が必要です。
ライセンス
MIT — LICENSEを参照してください。
貢献を歓迎します。貢献はコントリビューターライセンス契約に基づいて受け付けています。開始方法については、CONTRIBUTING.mdを参照してください。
インストールの既定のスコープはプロジェクトです:astria install --platform codex --scope project。ユーザー全体に適用する統合には、明示的に --scope user を指定してください。セットアップ後やアップグレード後に astria doctor を実行してください。対応プラットフォーム、アップグレード、バックアップ/復元、完全な削除については、インストールライフサイクルガイドを参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。