Skip to content
プロジェクト

ashfordeOU/grasp has 33 GitHub stars and 3 forks. GitHot measured 0 stars in 24 hours and +2 in 7 days. Last checked 2026-11-14 21:12 UTC. Last push 2026-11-02.

この数値の測り方

計測したスター増加

24時間
0
7日間
+2
15日間
履歴を収集中
1か月
履歴を収集中

期間ごとの純増数です。期間は重複しており、日別の値ではありません。未計測の値は空欄です。スター数は注目度の指標であり、品質の保証ではありません。

概要

GRASP — Code architecture visualizer + 150-tool MCP server. Dependency graphs, security scanning, multimodal knowledge graph, ORM tracking, git change impact, graph schema v3. Works with GitHub, GitLab & local dirs. 35 languages. Zero data collection.

開発ツール

README.ja.md

オリジナル
Grasp — Code Architecture Suite

English · हिन्दी · 日本語 · 한국어 · 简体中文



CI npm License GitHub Pages


130 個の MCP ツール + 8 個のリソース + 2 個のプロンプト · 35 言語 · 11 AI プロバイダー + OpenRouter 経由で 200+ モデル · 10 種類のグラフビュー · データ収集ゼロ


Browser App   VS Code   MCP Server   JetBrains   Firefox (.xpi)   Chrome Web Store


🌐 ブラウザアプリ  ·  📦 MCP サーバー  ·  🐛 バグ報告  ·  ✨ 機能リクエスト  ·  🔒 プライバシー


v3.18.0 の新機能

カテゴリ 追加内容
グラフ解析 grasp_hub_nodes, grasp_bridge_nodes, grasp_surprising_connections, grasp_knowledge_gaps, grasp_suggested_questions — 次数中心性、Brandes 媒介中心性、稀なクロスレイヤーエッジ検出、孤立/未テストホットスポット発見、自動生成レビュー質問
LLM コンテキストツール grasp_minimal_context(サブ 100 トークンのオリエンテーション)、grasp_traverse(トークンバジェット BFS)、grasp_semantic_search(関数シグネチャ上のコサイン類似度)、grasp_apply_refactor(dry-run プレビュー付きリネーム実行)
アーキテクチャインテリジェンス grasp_architecture_overview — コミュニティ + ハブ + 質問の統合レポート
グラフエクスポート grasp_export_graphml, grasp_export_cypher, grasp_export_obsidian — yEd/Gephi GraphML、Neo4j CREATE 文、Obsidian Canvas
インポートリゾルバー TS-config パスエイリアス解決 (@/components → src/components)、Jedi スタイルの Python 相対インポート + __init__.py
ワークフロー Claude Code スラッシュコマンド (/grasp:build-graph, /grasp:review-delta, /grasp:review-pr)、トークン削減評価ハーネス (scripts/eval-token-reduction.mjs)
ブラウザ UX お試しチップ、トークンインジケーター、スナップショット URL、2 リポジトリ比較モーダル、解析中のレート制限リカバリ、モバイルグラフタッチジェスチャー、フローティングキーボードショートカットポップオーバー、リポジトリ別永続化、拡張エクスポートメニュー
i18n 多言語 READMEs — हिन्दी · 日本語 · 한국어 · 简体中文

合計: 130 個の MCP ツール(旧 121)、13 個の新ツール、10 個の新ブラウザ UX、22 個の新ユニットテスト。


Grasp とは?

Grasp は、任意の GitHub または GitLab リポジトリ — クラウドまたはセルフホスト — あるいはローカルコードベースを数秒でインタラクティブなアーキテクチャマップに変換します。130 個の MCP ツール(加えて 8 個のリソースと 2 個のガイド付きプロンプト)が、解析エンジン全体を Claude Code、Cursor、および任意の MCP 互換エージェントに公開します。

URL を貼り付け / フォルダーを開く  →  AST 解析エンジン  →  アーキテクチャマップ + 130 MCP ツール
インストール不要 ブラウザで 100% 動作 — HTML ファイル 2 つ、ビルドステップなし
データ収集なし あなたのコードはマシンから一切外に出ません
アカウント不要 URL を貼り付けるだけで開始
オフライン動作 インターネットなしでローカルフォルダを解析
35 言語 JS/TS, Python, Go, Java, Rust, C/C++, C#, Ruby, Swift, Kotlin, Scala, Dart, Elixir, Erlang, Haskell, OCaml, F#, Clojure, Julia, Lua, R, Perl, Shell, PowerShell, Groovy, Zig, V, Nim, Crystal, VBA, Ada/SPARK, Vue, Svelte, PHP
130 個の MCP ツール 依存関係グラフ、セキュリティ、OSV.dev SCA 脆弱性スキャン、DORA、Brain ストア、Kuzu graph schema v3、コミュニティ、ORM トラッカー、git 変更影響、アーキテクチャドリフト検出、テストカバレッジギャップマップ、組織ダッシュボード、PR impact action、MCP Resources/Prompts、grasp setup エディタ自動設定
11 AI プロバイダー (+ ルーター経由で無制限) 直接接続: Anthropic Claude (3 モデル), OpenAI (GPT-4o + o-シリーズ), Google Gemini (3), Mistral (2), Groq (3), DeepSeek (chat + reasoner), Ollama (ローカル), LM Studio (ローカル), カスタム OpenAI 互換エンドポイント。ルーター: OpenRouter (slug 経由で 200+ モデル) と Together AI (50+ オープンソースモデル)。会話の途中で切り替え可能、デフォルトでは完全にオフ (チャットパネル閉じている = ネットワーク呼び出しゼロ)、API キーは localStorage のみに保存 — Grasp にはプロキシやテレメトリはありません。
10 種類のグラフビュー Force graph, 3D, arch, treemap, matrix, tree (dendrogram), flow (sankey), bundle, cluster (disjoint), heatmap
Grasp Brain SQLite + Kuzu 永続ストア — 一度インデックスすれば、即座にクエリ可能。FTS5 + 384D ベクトル埋め込み + Cypher グラフクエリ
サプライチェーン署名済み リリースごとに SLSA Level 2 npm provenance + Cosign keyless Docker 署名

スクリーンショット

🕸️ 依存関係グラフ — ファイル間の接続を正確に可視化

Grasp dependency graph view

🏛️ アーキテクチャ図 — レイヤーごとのコードベース

Grasp architecture diagram view

📦 ツリーマップ — 行数によるサイズ表示

Grasp treemap view

🏢 チームダッシュボード — 全リポジトリの健全性を一目で

Grasp team dashboard

クイックスタート

オプション 1 — ブラウザ (セットアップ不要)

git clone https://github.com/ashfordeOU/grasp.git
open index.html           # メインアプリ
open team-dashboard.html  # チームダッシュボード

ビルドステップなし。npm install なし。HTML ファイル 2 つだけ。

オプション 2 — CLI

npm install -g grasp-mcp-server

grasp ./my-project        # ローカルフォルダを解析
grasp facebook/react      # GitHub リポジトリを解析
grasp .                   # カレントディレクトリを解析
grasp . --watch           # ライブモード — ファイル保存ごとにブラウザがリロード
grasp . --timeline        # タイムトラベル — 直近 30 コミットをスクラバーとして表示
grasp . --report          # ターミナル専用レポート + JSON 出力
grasp . --format=sarif    # GitHub Code Scanning 用に SARIF をエクスポート
grasp . --pr-comment      # GitHub PR コメント用 markdown を stdout に出力
grasp . --check           # grasp.yml アーキテクチャルールを強制 (CI ゲート)

オプション 3 — IDE 拡張機能

IDE インストール
VS Code Install (.vsix) — grasp-vscode-3.18.0.vsix をダウンロードし、Extensions: Install from VSIX… (Cmd+Shift+P) を実行
JetBrains JetBrains Marketplace — Settings → Plugins で Grasp を検索
Raycast From source: raycast-grasp/ (npm install && npm run dev)
Zed From source: zed-extension/ (Zed → Extensions → Install Dev Extension)

オプション 4 — ブラウザ拡張機能

ブラウザ インストール
Chrome Chrome Web Store
Firefox GitHub Releases (.xpi) — ID: [email protected]

すべての GitHub および GitLab ページにフローティング Grasp ボタンが表示されます。オンデマンド許可付与により、セルフホストの GitLab、GitHub Enterprise、および任意のカスタムホストをサポートします。


配布チャネル一覧

タグ付きリリースごとにすべてのチャネルへ自動公開されます:

チャネル ステータス リンク
npm (grasp-mcp-server) npm npm install -g grasp-mcp-server
MCP Registry 掲載中 modelcontextprotocol.io
Docker (ghcr.io/ashfordeou/grasp) ghcr docker pull ghcr.io/ashfordeou/grasp:latest
VS Code Releases に .vsix GitHub Releases
JetBrains Marketplace Plugin ID 31362
Raycast From source raycast-grasp/
Zed From source zed-extension/
Chrome Web Store CWS listing
Firefox .xpi on Releases GitHub Releases
GitLab bot image ghcr.io/ashfordeou/grasp-gitlab-bot リリースごとに自動プッシュ
GitLab tunnel agent Releases にバイナリ GitHub Releases
GitHub Release 署名 + チェックサム Releases page

AI ツール統合 (あなたのアシスタントが MCP または拡張機能経由で Grasp を呼び出します)

AI ツール インストール方法 備考
Claude Code claude mcp add grasp -- npx -y grasp-mcp-server ネイティブ MCP — 全 130 ツール + 8 Resources + 2 Prompts
Cursor ~/.cursor/mcp.json に grasp-mcp-server を追加 ネイティブ MCP
Cline / Roo Code / Kilo Code VS Code 設定で MCP 構成 ネイティブ MCP
Windsurf MCP 構成 ネイティブ MCP
Codex / OpenCode / Trae / Droid MCP 構成 ネイティブ MCP — grasp setup がすべてを自動設定
Gemini CLI / Grok CLI MCP 構成 ネイティブ MCP
GitHub Copilot Chat grasp-copilot-extension をインストール Copilot が Copilot Extension API 経由で Grasp を呼び出し — チャット内で @grasp メンション
Continue continue-provider パッケージ Grasp を Continue context provider として
Amazon Q Developer amazon-q-plugin Grasp が Q のチャットに表示される
GPT Actions / Custom GPTs gpt-actions パッケージ OpenAI Actions schema 用に REST として公開
Aider / Sweep / 任意のツール grasp-mcp-server npm パッケージを使用 ツール非依存の stdio JSON-RPC

動作の仕組み

┌──────────────────────────────────────────────────────────────────┐
│  Input                                                            │
│  github.com/owner/repo  ·  gitlab.com/ns/proj  ·  ./local/path   │
└────────────────────────────────┬─────────────────────────────────┘
                                 ▼
┌──────────────────────────────────────────────────────────────────┐
│  Analysis Pipeline  (mcp/src/)                                    │
│                                                                   │
│  1. scan        file enumeration + gitignore                      │
│  2. parse       tree-sitter AST · 35 languages · 16 native        │
│  3. routes      HTTP route detection (Express/FastAPI/Gin)        │
│  4. tools       MCP/gRPC tool definition detection                │
│  5. orm         ORM query tracking (Prisma/TypeORM/Sequelize/SA)  │
│  6. scope       3-tier call resolver  (0.95 → 0.90 → 0.50)       │
│  7. types       cross-file type propagation  (Kahn topo-sort)     │
│  8. coverage    test-file detection → TESTS/COVERS edges (v3)     │
│  9. communities Louvain community detection on import graph       │
│ 10. processes   BFS execution-flow tracing from entry points      │
└───────────┬──────────────────────────┬────────────────────────────┘
            │                          │
    ┌───────▼────────┐      ┌──────────▼──────────┐
    │  Browser App   │      │   MCP Server (CLI)   │
    │  index.html    │      │   grasp-mcp-server   │
    │                │      │                      │
    │  10 graph views│      │  130 tools           │
    │  16 color modes│      │  8 Resources         │
    │  AI Chat       │      │  2 guided Prompts    │
    │  Ask Grasp     │      │  Brain + Kuzu v3     │
    │  Coverage Ovly │      │  grasp setup (5 eds) │
    │  VULN tab      │      │  grasp vulns / drift │
    └────────────────┘      └──────────────────────┘

ビジュアライゼーション

グラフタイプ

ビュー 説明
🕸️ Graph Force-directed 依存関係グラフ — ドラッグ、ズーム、複数選択
🔮 3D Graph 三次元 force graph — 回転、パン、ズーム
🏛️ Arch レイヤー別アーキテクチャ図
📦 Treemap 行数によるサイズ、フォルダごとにグループ化
📊 Matrix すべての依存関係を表示する隣接行列
🌳 Tree 階層的クラスター樹形図
🌊 Flow フォルダレベルの Sankey 依存フロー
🎯 Bundle アークベース接続による円形レイアウト
🔮 Cluster フォルダごとに分離した force グラフ

カラーモード

モード 表示内容
📁 Folder ディレクトリ構造
🏗️ Layer アーキテクチャ層 (UI、Services、Utils など)
🔥 Churn コミット頻度 — 赤 = 最も変更されたホットスポット
⚡ Complexity 循環的複雑度 (緑 → 黄 → 赤)
💥 Blast 選択したファイルの blast radius 影響範囲
🌊 Depth 最大ブレースネスト深さ
🔎 Dup 重複コード密度 — 赤 = 多くのクローン
👤 Owner トップ貢献者 — bus-factor リスクを発見
🐛 Issues ファイルごとにリンクされた GitHub Issues
🧪 Coverage テストカバレッジ — 未テストファイルをハイライト
📦 Bundle バンドルサイズへの貢献
🌐 API Surface 公開ファイルの露出度
⚡ Runtime ライブトレースからの実際のコール頻度
🔒 Safety セーフティゲートカバレッジ (緑 = ゲート済み、赤 = 未ゲート)
🧪 Boundary リサーチ/プロダクション境界ドリフト
🧪 Eval Coverage eval/test スクリプトからのカバレッジ

コードインテリジェンス

📊 ヘルススコア

デッドコード、循環依存、結合メトリクス、セキュリティ問題に基づく即座の A–F グレード。スコア (0–100) としてビジュアルバー付きで表示。

🔐 セキュリティスキャナー

ハードコードされたシークレットや API キー、SQL インジェクションリスク、危険な eval() 使用、本番環境に残されたデバッグステートメントの自動検出。

🛡️ 依存関係脆弱性スキャナー (v3.17.0)

OSV.dev の無料公開 CVE データベースに対して宣言された依存関係を解析ごとにスキャン。package.json (package-lock.json 解決を含む)、requirements.txt、pyproject.toml、go.mod、Cargo.toml (Cargo.lock 解決を含む)、および pom.xml をサポート。CVSS スコアと修正バージョン提案による重大度分類された結果。右パネルに新しい VULN タブ、新しい grasp_vulnerabilities MCP ツール、critical/high の発見で 1 を返して終了する新しい grasp vulns <path> CLI (CI フレンドリー)。ヘルススコアは critical あたり –5、high あたり –3 を減算します。100% クライアントサイド — OSV リクエストはあなたのブラウザから直接 OSV.dev へ送られ、Grasp サーバーを経由することはありません。24 時間 localStorage キャッシュ、ネットワーク障害時は静かに低下動作。

🧩 パターン検出

Singleton、Factory、Observer/Event パターン、React フック、アンチパターン (God Objects、高結合) を自動的に識別。

💥 Blast Radius 解析

"このファイルを変更したら、何が壊れるか?" — 任意のファイルを選択すると、影響を受けるすべての下流ファイルがグラフ上でハイライトされます。

🔥 アクティビティヒートマップ

コミット頻度でファイルを着色。GitHub リポジトリ (API 経由) とローカルリポジトリ (git log 経由 — インターネット不要) の両方で動作。

🔎 重複・類似性検出

Dup カラーモードは完全または近似重複コードを持つファイルをハイライトします。grasp_similarity MCP ツールはターゲットを絞ったリファクタリングのためにランク付けされた重複クラスターを返します。

👥 コードオーナーシップ

git 履歴から得たファイルごとのトップ貢献者と行パーセンテージの内訳。GitHub Blame へワンクリックでジャンプ。

📋 PR 影響解析

PR URL を貼り付けて、それが触れるファイルとマージ前の変更の blast radius を計算します。

💰 技術的負債の定量化

すべてのアーキテクチャ問題を、設定可能な見積もりを使用して開発時間に変換 — circular dep = 4h、god file = 16h、critical security = 8h — 結合乗数付き。ヘルスパネルとチームダッシュボードに表示。

🔗 共有可能な埋め込み

⋯ → 🔗 Embed をクリックすると、すぐに貼り付けられる <iframe>、README バッジ、React スニペット、直接リンクが取得できます — ドキュメント、wiki、ダッシュボードでライブヘルスレポートを共有できます。

🎯 接続コンフィデンススコア (v3.16.0)

すべてのクロスファイル接続が 0–1 でスコア化されます: 明示的な静的 import = 1.0、同フォルダ = 0.8、クロスフォルダ推測 = 0.6、低頻度 = 0.4。Force graph はコンフィデンスをエッジ不透明度として重ねて表示 — ⚙ 設定のスライダーで低コンフィデンスエッジをフィルタリング可能。

🔍 グラフクエリモーダル (v3.16.0)

🔍 ツールバーボタンをクリックして、グラフを離れることなくブラウザ内でファイル、関数、エッジを検索。マッチはライブで更新 — 任意のファイル結果をクリックしてグラフ上にジャンプ。

ƒ() 関数レベルキャンバス (v3.16.0)

ƒ() ボタンをトグルして force graph をファイルレベルから関数レベルノードに切り替え — 個別の関数呼び出し関係を表示、パフォーマンスのため 300 ノードに制限。

🗄️ DB Coupling タブ (v3.16.0)

右パネルの 🗄️ DB タブは ORM パターン (Django、TypeORM、生 SQL) のためにファイル内容をスキャンし、どのファイルがどのテーブルを参照するかをマッピング。god テーブルや高結合ファイルを即座に発見。

🎯 Good First Issues タブ (v3.16.0)

🎯 GFI タブは孤立した低複雑度の未テストファイルを表示 — 新人エンジニアや AI コーディングエージェントに理想的な貢献ターゲット。

🔐 PII 検出とセキュリティサブカテゴリ (v3.16.0)

Security タブにサブカテゴリピル — ALL / SECRETS / INJECTION / PII / EVAL — が追加され、発見をフィルタリングできます。PII ピルはソースファイル内で email、phone、SSN、credit card、API key パターンをスキャンします。

📸 アーキテクチャドリフト検出 (v3.17.0)

コードベースアーキテクチャのスナップショットを取得し、時間とともにドリフトを検出 — 自動的に。

grasp snapshot ./my-project --name before-refactor
# ... 変更を加える ...
grasp drift ./my-project          # ドリフトが CRITICAL なら 1 を返して終了 (CI フレンドリー)
MCP ツール 説明
grasp_snapshot 現在のヘルススコア、結合メトリクス、循環依存、トップ 10 ホットスポットを名前付きスナップショットとして保存
grasp_diff_snapshots 任意の 2 つのスナップショットを比較 — ヘルスデルタ、新しい循環依存、結合が 20% 以上増加したファイル、ドリフトレベル (STABLE / DEGRADED / CRITICAL) を返す

スナップショットは ~/.grasp/brain.db に保存され、解析セッションを越えて保持されます。

🧪 テストカバレッジギャップマップ (v3.17.0)

本番インシデントを引き起こす可能性が最も高い関数を発見 — 最高のコール数、ゼロのテストカバレッジ。

grasp_coverage_gaps  # MCP 経由 — call_count DESC でソートされた uncovered_functions を返す

依存関係グラフに 🧪 Coverage オーバーレイ トグルが追加 — 未カバー関数は赤、部分カバーは琥珀、カバー済みは緑でレンダリング。カバレッジは静的解析で推定: Grasp はテストファイル (*.test.*、*.spec.*、test_*、*_test.*) を検出し、それらが参照するソース関数をトレースします。

MCP ツール 説明
grasp_coverage_gaps uncovered_functions (コール数でソート)、risky_uncovered (高 churn + テストなし)、ディレクトリごとの coverage_by_module、overall_coverage_estimate を返す

🏢 組織レベルダッシュボード (v3.17.0)

1 コマンドで GitHub 組織全体を解析:

grasp org my-github-org --token ghp_xxx --format html   # 自己完結型 HTML ダッシュボード
grasp org my-github-org --format json                   # CI 消費可能な JSON
grasp org my-github-org --format md                     # wiki 用 Markdown

すべてのリポジトリ (最大 500、5 並列) でヘルスグレード、セキュリティ発見、最も churn したファイル、言語分布を集約。HTML 出力は Chart.js をインライン埋め込み — 外部依存なし。

MCP ツール 説明
grasp_org_summary 組織のトップ 20 リポジトリまでを解析 — 集約ヘルスグレード、グレード分布、重大度別の総セキュリティ発見、トップ churn ファイル、言語内訳を返す

🤖 PR Impact GitHub Action (v3.17.0)

すべての pull request に自動アーキテクチャ影響解析を追加:

# .github/workflows/grasp-pr-impact.yml
- uses: ashfordeOU/grasp/.github/actions/grasp-pr-impact@main
  with:
    github-token: ${{ secrets.GITHUB_TOKEN }}
    min-risk-to-comment: LOW      # LOW / MEDIUM / HIGH / CRITICAL
    fail-on-risk: CRITICAL        # このリスクレベルで CI チェックを失敗させる

アクションは構造化された PR コメントを投稿します:

  • カラーコード付きのリスクバッジ (LOW / MEDIUM / HIGH / CRITICAL)
  • 関数レベルの blast radius を伴う変更ファイル
  • 影響を受けた実行プロセス (ステップ数付き)
  • git blame から提案されるレビュアー (影響を受けた各ファイルのトップ 2 貢献者)
  • テストカバレッジギャップ: 変更された関数のうちテストファイルが触れていないもの

AI Chat — 15 プロバイダー

コードベース全体を理解する組み込み AI アシスタント。"なぜ auth.ts はホットスポットなのか?"、"リファクタリングに最も安全なファイルは?"、"このコールチェーン内のセキュリティ問題を説明して" のように尋ねると、回答はライブの依存関係グラフ、セキュリティ発見、アーキテクチャ層を参照します。

プロバイダー モデル
Anthropic Claude Opus 4.7, Sonnet 4.6, Haiku 4.5
OpenAI GPT-4o, GPT-4o mini, o3-mini, o1
Google Gemini Gemini 2.0 Flash, 1.5 Pro, 1.5 Flash
Mistral Mistral Small, Mistral Large
Groq Llama 3.3 70B, 3.1 8B, Gemma 2 9B
DeepSeek DeepSeek Chat, DeepSeek Reasoner
OpenRouter 任意のモデル slug (1 つのキーで 100+ モデル)
Together AI 任意のモデル slug
Ollama ローカルモデル (キー不要)
LM Studio 任意のポートでのローカルモデル
Custom 任意の OpenAI 互換ベース URL

特徴:

  • マルチターン会話メモリ — ページ更新を越えて localStorage で保持
  • 選択ファイルコンテキスト — ファイル選択時にレイヤー、関数、複雑度、問題が自動注入
  • 豊富なコードベースコンテキスト — メタデータ付きトップ 80 ファイル、すべての問題、セキュリティ発見、循環依存、レイヤー内訳
  • シンタックスハイライト付きコードブロックの Markdown レンダリング
  • API キーはブラウザ内のみ、選択したプロバイダー以外には決して送信されません

Grasp Brain — 永続的アーキテクチャインテリジェンス (v3.16.0)

Grasp Brain は連携して動作する 2 つの永続ストアを組み合わせています:

  • SQLite Brain (~/.grasp/brain.db) — ファイルメタデータ、結合、セキュリティ、issue インデックス。関数の FTS5 全文索引と、プロセス内 384D ベクトル埋め込みストア (Xenova/all-MiniLM-L6-v2 — クラウド依存なし) を含みます。一度インデックスすれば、即座にクエリ可能。
  • Kuzu Graph DB (~/.grasp/graph/) — Cypher クエリサポート付きネイティブグラフデータベース。完全な関数コールグラフ、ファイルインポート、型関係をトラバース可能なプロパティグラフとして保存。

一度インデックスすれば、即座にクエリ可能 — 再解析不要。すべての関数は参加する実行プロセス (エントリポイントからの BFS) でタグ付けされるため、検索結果には flow ごとにマッチをグループ化する processes[] フィールドが含まれます。

動作の仕組み

grasp index ./my-project    →  解析が ~/.grasp/brain.db に保存される
grasp context src/api.ts    →  保存されたインデックスから即座にファイルコンテキスト
grasp diff ./my-project     →  保存されたベースラインと現在の状態を比較
grasp daemon ./my-project   →  変更を監視し、自動的に再インデックス

CLI サブコマンド

grasp index <path>           # リポジトリを解析して brain に保存
grasp context <src> <file>   # 任意のファイルの豊富なコンテキストを取得
grasp setup [path]           # Claude Code / Cursor / Windsurf にフックをインストール
grasp diff <path>            # brain ベースラインと現在の解析を比較
grasp daemon <path>          # ディレクトリを監視し、変更時に自動再インデックス
grasp drift [path]           # スナップショット + 前回スナップショットとの diff; CRITICAL で 1 終了
grasp org <github-org>       # 組織レベルダッシュボード (--format json|html|md --token ghp_xxx)

Ask Grasp — 自然言語アーキテクチャクエリ

ブラウザアプリ (Ask Grasp パネル) と grasp_ask MCP ツールの両方が、コードベースに関する平易な英語の質問をサポートします。grasp_ask は構造的意図を直接認識します。オープンエンドのクエリでは、ハイブリッドセマンティック検索 にフォールバック — Reciprocal Rank Fusion でマージされた BM25 全文 + 384D ベクトル埋め込み。

質問応答層なしの純粋なセマンティック検索には、grasp_search を直接使用してください — 結果には各マッチがどの実行フローに属するかを示す processes[] フィールドが含まれます。

質問 得られるもの
"最も複雑なファイルは?" 循環的複雑度でランク付けされたファイル
"結合ホットスポットを見せて" 最高の合計 fan-in + fan-out を持つファイル
"セキュリティ問題は?" コードベース全体のすべてのセキュリティ発見
"auth.ts の blast radius は?" 完全な推移的影響リスト
"データアクセスを処理するのはどの層?" ファイル例付きレイヤー内訳
"全体のグレードは?" ヘルススコア、グレード、問題サマリー
"最も churn の多いファイルは?" コミット頻度ランキング
"循環依存はある?" 重大度付きサイクルリスト

Registry — すべてのインデックス済みリポジトリ

grasp_registry_list と grasp_registry_status は完全な Brain インデックスを公開します:

# MCP 経由
grasp_registry_list          # すべてのリポジトリ: ヘルスグレード、ファイル、関数、アクティブセッション
grasp_registry_status        # 集約: インデックス数、セッション数、グレード分布

# HTTP 経由 (MCP サーバーが --http で実行されている場合)
curl http://localhost:7332/api/v1/registry

チームダッシュボードの 🗂️ Registry パネルは読み込み時に自動取得 — session_id 不要。

Arch Diff

grasp diff (および grasp_arch_diff MCP ツール) は現在のコードベースを保存された brain ベースラインと比較し、以下を表示します:

  • グレードの低下 (悪化したファイル: A→B、B→C など)
  • ヘルススコアデルタ
  • ベースライン以降に導入された新しいセキュリティ問題

エディタフック (grasp setup)

リポジトリ内の .claude/、.cursor/、.windsurf/ を検出し、AI コーディングアシスタントにすべてのアクション前にコードベースコンテキストを自動的に与える pre-tool-use フックをインストールします。アーキテクチャサマリー付きの CLAUDE.md と AGENTS.md も書き出します。


チーム & コラボレーション

🏢 チームダッシュボード

複数リポジトリの健全性を 1 つのビューで追跡。任意の公開 (またはトークン付きの非公開) GitHub リポジトリを追加して以下を確認:

  • ヘルススコア、グレード、ファイル、問題、循環依存、セキュリティ発見、アーキテクチャ層
  • Pattern count、Env var issues、Feature flag count — 新しい v3.13.0 列
  • DORA メトリクスミニカード — リポジトリごとの Deploy Frequency、Lead Time、Change Fail Rate、MTTR (展開可能な行)
  • 🗂️ Registry パネル — ライブヘルスグレードとセッションステータス付きのすべての Brain インデックス済みリポジトリ
  • コミットアクティビティ (7d / 30d) と CI ステータス (✅/❌/⏳)
  • コミット速度スパークライン、開発者日数での技術的負債
  • テーブル全体を CSV または JSON としてエクスポート。📁 Open Folder (File System Access API) でローカルフォルダを開く。

🔄 ライブチームコラボレーション

Grasp の CLI はチーム全体のためのリアルタイムコラボレーションサーバーをホストします:

npx grasp --host=0.0.0.0 --room-secrets=backend:pass1,frontend:pass2
#   → main app:       http://server-ip:7331/
#   → team dashboard: http://server-ip:7331/dashboard
#   → health check:   http://server-ip:7331/api/health
  • WebSocket 同期 — ワークスペースの変更が接続されたすべてのチームメンバーに即座に伝播
  • 名前付きルーム — ?sync_room=backend-team で各チームのワークスペースを分離
  • プレゼンスインジケーター — Sync パネルで誰がオンラインかを確認
  • 共有リンク — ⎘ Copy team link または 👁 Copy read-only link
  • 読み取り専用モード — 観察者用 ?readonly=1
  • パスワード保護 — --room-secrets=room:password
  • REST API — GET /api/health · GET /api/rooms · GET/PUT /api/workspace/:room

LAN ホスティング: 同じネットワーク上の誰でも http://server-ip:7331/dashboard にアクセス可能 — クラウド不要。

🏢 Monorepo & ワークスペースサポート

Grasp は monorepo 内のサブパッケージを自動的に検出します (package.json、pyproject.toml、Cargo.toml、go.mod、pom.xml)。Workspace サイドバーで単一パッケージにフィルタリング — すべてのグラフ、ツリーマップ、メトリクスが即座に更新されます。

⏮️ タイムトラベルアーキテクチャスクラバー

grasp . --timeline を実行すると、直近 30 git コミットがスクラバーパネルとして読み込まれます。任意のコミットへスライダーをドラッグ — 変更されたノードがグラフ上で黄色く光るので、アーキテクチャの時間的変化を観察できます。

📡 ライブウォッチモード

grasp . --watch を実行すると、リアルタイム SSE 同期付きのローカル開発サーバーが起動。すべてのファイル保存でブラウザグラフが自動的にリロード — 接続中は LIVE バッジが表示されます。


業界バーティカル

✈️ 航空宇宙 / 安全クリティカル

機能 説明
要求トレーサビリティ 要求 CSV をアップロード — Grasp が @REQ-NNN タグをスキャンしてカバレッジ %、不足、未指定ファイルを表示。ワンクリックでコンプライアンスマトリクスをエクスポート。
MISRA / 安全モード ⋯ → 🔧 Safety Mode — MISRA C/C++ および Ada 違反を検出: init 後の動的割り当て、再帰呼び出し、goto、abort()/exit()。
DO-178C / ECSS 認証エクスポート ワンクリックの認証エビデンスパッケージ: インベントリ、トレーサビリティマトリクス、複雑度、MISRA 違反、セキュリティ発見 — JSON と印刷可能な HTML。
異常調査 ファイル選択 → 🔍 Anomaly Investigation — caller、callee、推移的 blast radius、最近のコミット、コールパス内のセキュリティ、平易な英語サマリー。
ソフトウェア再利用評価 Interface Compatibility、Dependencies、Safety Level、Architecture Fitness、Security、Complexity を横断する信号機マトリクス。
クロス言語コールグラフ Ada→C pragma Import、Python ctypes/cffi、JS→WASM 境界。
遺産ソフトウェア系譜 起源ミッションマニフェストをオーバーレイ、ゼロデルタ認証ショートカットを識別。
ICD マッパー Interface Control Document エントリをエクスポートされた関数にマッチング、未実装インターフェースをフラグ。
ECSS-E-ST-40C コンプライアンス DI-01、DI-04、DI-07、DI-10、DI-15 コンプライアンス要件をチェック。

🧠 AI 研究

機能 説明
安全制約トレーサー 安全ゲート (フィルタ、サニタイザ) をマーク — すべての entry→output パスをトレースし、すべてのゲートをバイパスするものをフラグ。新しい Safety カラーモード。
リサーチ/プロダクション境界 リサーチ vs プロダクションフォルダを定義 — リサーチコードからインポートするプロダクションファイルをフラグ。
Jupyter Notebook サポート 依存関係グラフ内の .ipynb — コードセルを抽出、インポートを解析、再現性問題をフラグ。
トレーニング実行 Diff 2 つの YAML/JSON 設定をアップロード — ハイパーパラメータを diff し、各変更キーを読むファイルを発見。
Eval カバレッジマップ eval スクリプトを自動検出し、それらが実行する model/training コードをトレース。eval カバレッジのない安全ゲートは critical としてフラグ。
ML パイプライン DAG PyTorch、TensorFlow、JAX、HuggingFace パターンを検出 — Data→Model→Training→Eval→Checkpoint DAG をレンダリング。

🏢 エンタープライズ

機能 説明
SBOM 生成 npm、pip、Cargo、Go modules 用の CycloneDX 1.4 または SPDX 2.3 JSON。OSV API 経由のオプション CVE 強化。
DORA メトリクス GitHub Actions からの Deployment Frequency、Lead Time、Change Failure Rate、MTTR。Elite/High/Medium/Low 分類。
AI 駆動 ADR 生成 コードベースコンテキスト + オプション PR diff を使用したワンクリック MADR 形式 Architecture Decision Records。
PII データフロートレーサー ユーザーマーク済み PII ソースファイルからの BFS — すべての下流コンシューマを表示。
職務分離 トランザクションを開始かつ承認するファイルを検出 (SOX/FDA コンプライアンス)。
規制変更影響 GDPR/HIPAA/SOX/PCI-DSS 条文変更のキーワードから blast radius へ。
金融 / トレーディング レイテンシホットスポット検出 — ブロッキング I/O、GC 圧力、ロック競合、ループ内の割り当て。
金融モデルリスク ハードコードされたパラメータ、欠落 NaN チェック、ゼロガードなしの除算。

AI エージェント向け — MCP サーバー

Grasp は Model Context Protocol (MCP) サーバーを提供し、解析エンジン全体を Claude Code、Cursor、および任意の MCP 互換エージェントに対する呼び出し可能なツールとして公開します。

セットアップ

# インストール
npm install -g grasp-mcp-server

# またはインストールせずに実行
npx grasp-mcp-server

~/.claude/claude_mcp_settings.json に追加:

{
  "mcpServers": {
    "grasp": {
      "command": "npx",
      "args": ["-y", "grasp-mcp-server"]
    }
  }
}

GitHub リポジトリとローカルディレクトリで動作します。GitLab、Docker、セルフホストオプションについては mcp/README.md を参照してください。

ツールリファレンス

Core Analysis

ツール 機能
grasp_analyze 任意のリポジトリまたはローカルパスの完全解析 — フォローアップクエリ用に session_id を返す
grasp_sessions アクティブセッションのリスト (7 日間保持、再起動を生き延びる)
grasp_diff 2 つのスナップショットを比較 — 解析間で何が変わったか?
grasp_watch ディレクトリを再解析し、前回実行と diff
grasp_rules_check grasp.yml アーキテクチャルールを実行し違反を報告
grasp_config_check アーキテクチャルールに対するセッションを検証 — 違反を返す

File & Code Intelligence

ツール 機能
grasp_file_deps このファイルは何に依存しているか?
grasp_dependents このファイルを変更したら何が壊れるか?
grasp_cycles 循環依存はあるか?
grasp_architecture このコードベースにはどんな層があるか?
grasp_hotspots 触れるのが最もリスキーなファイルは?
grasp_metrics ファイルごとの行数、複雑度、fan-in/fan-out
grasp_find_path ファイル A はファイル B にどうつながっているか?
grasp_patterns どんなデザインパターンが使われているか?
grasp_unused デッドコード — 定義されているが呼ばれていない
grasp_explain 任意のファイルまたは関数の平易な英語説明
grasp_refactor ファイルまたはセッションの段階的リファクタプラン
grasp_suggest 効果対労力比でランク付けされたリファクタリング提案
grasp_onboard コードベース領域に入る新人エンジニア用の順序付き読書パス
grasp_types 型注釈カバレッジ — 型のない高 fan-in ファイルを優先
grasp_similarity ランク付けされた重複クラスターとコードクローングループ
grasp_stale アクティブだが放棄されたファイル — 低 churn、高 fan-in、テスト対応物なし
grasp_change_risk 変更ファイルセットのリスクスコア 0–100

Security & Compliance

ツール 機能
grasp_security ハードコードされたシークレット、インジェクションリスク、危険なパターン
grasp_sbom CycloneDX 1.4 または SPDX 2.3 JSON での SBOM
grasp_sarif GitHub Code Scanning 用 SARIF 2.1.0 エクスポート
grasp_license 依存ライセンス — copyleft と不明をフラグ
grasp_pii_trace PII ソースファイルからすべてのコンシューマへの BFS トレース
grasp_duties 職務分離 — 開始かつ承認するファイル
grasp_reg_impact 規制変更 blast radius (GDPR/HIPAA/SOX/PCI-DSS)
grasp_env_vars すべての env var 読み取り — 未文書化と test-only 変数をフラグ
grasp_feature_flags すべての feature flag 読み取り (LaunchDarkly、GrowthBook、env-var フラグ)

Team & DevOps

ツール 機能
grasp_pr_comment 変更ファイルの blast radius 付き PR ヘルスコメントを生成
grasp_pr_review 高重大度行で GitHub PR にインラインレビューコメントを投稿
grasp_commits 直近 7d と 30d のコミット数
grasp_ci_status 最新の GitHub Actions 実行 — passing/failing/in-progress
grasp_dora DORA メトリクス — Deployment Frequency、Lead Time、CFR、MTTR
grasp_adr AI 駆動 MADR 形式 Architecture Decision Record
grasp_embed 共有用 iframe、README バッジ、React スニペットを生成
grasp_timeline コミットごとの変更ファイル + co-change マトリクス付き直近 N コミット
grasp_contributors ファイルごとのオーナーシップ、bus-factor、トップ貢献者
grasp_coverage テストカバレッジオーバーレイ — テストのないファイルは?
grasp_issues GitHub Issues を言及するファイルにマップ
grasp_jira_issues プロジェクトキー経由で Jira issues をソースファイルにマップ
grasp_service_graph OTEL / カスタムトレース JSON からのサービスレベル依存関係グラフ
grasp_deps_dev deps.dev 経由のエコシステム依存者 — このリポジトリに依存するパッケージ数

Brain / Intelligence (v3.16.0)

ツール 機能
grasp_brain_index リポジトリを解析しローカル SQLite brain に保存
grasp_brain_status brain にインデックスされているもの、いつ?
grasp_context 豊富なファイルコンテキスト — レイヤー、複雑度、結合、セキュリティ、依存者、依存関係
grasp_arch_diff brain ベースラインと現在の状態を比較 — 劣化を検出
grasp_ask アーキテクチャについて自然言語で質問

Graph Core (Kuzu — v3.16.0)

ツール 機能
graph_query 永続的な関数/ファイルコールグラフに対して読み取り専用 Cypher クエリを実行
call_chain 任意の関数の caller/callee チェーンを設定可能な深さまでトレース
type_propagation 同じ戻り値型を共有するすべての関数とそのコール隣接を発見
function_graph 任意の名前付き関数を中心とした Mermaid / DOT / JSON サブグラフをレンダリング

Advanced Analysis

ツール 機能
grasp_dead_packages package.json にあるがインポートされない npm 依存
grasp_runtime_calls ライブランタイムトレースを静的エッジとマージ — 実際のホットパス
grasp_db_coupling ORM/SQL からテーブルへの結合マップ — god テーブル、高結合ファイル
grasp_migration_plan パッケージ/モジュール置換のためのトポロジカル順序付き段階的プラン
grasp_api_surface OpenAPI、GraphQL、Express/FastAPI ルートからの統合 API サーフェス
grasp_events イベントエミッタとサブスクライバ — 孤立 emit、ゴーストサブスクリプション
grasp_perf N+1 クエリ、同期 I/O、ループ内の JSON シリアライゼーション
grasp_bundle バンドルサイズツリーマップ — サイズカテゴリ別最大ファイル
grasp_dep_impact 全ファイルにわたる依存関係アップグレードの影響
grasp_cross_repo 2 つのセッションを比較 — 共有ファイル、分岐した関数
grasp_diagram 依存関係グラフから Mermaid フローチャートまたは C4 図を生成

Aerospace / Safety-Critical Vertical

ツール 機能
grasp_req_trace 要求トレーサビリティ — CSV に対して @REQ-NNN タグをスキャン
grasp_anomaly 異常調査 — BFS blast radius、コールチェーン内のセキュリティ、平易な英語サマリー
grasp_reuse ソフトウェア再利用評価 — Red/Amber/Green 互換性マトリクス
grasp_safety_trace 安全制約トレーサー — すべての安全ゲートをバイパスするパスを発見
grasp_multilang クロス言語コールグラフ (Ada→C、Python→C、JS→WASM)
grasp_heritage 遺産ソフトウェア系譜 — ゼロデルタ認証ショートカット
grasp_icd ICD マッパー — Interface Control Document エントリをコードにマッチ
grasp_ecss ECSS-E-ST-40C コンプライアンスチェッカー (DI-01、DI-04、DI-07、DI-10、DI-15)

AI Research Vertical

ツール 機能
grasp_run_diff トレーニング実行 diff — 変更されたハイパーパラメータと影響を受けたコード
grasp_eval_coverage eval カバレッジマップ — eval カバレッジのない安全ゲートを critical としてフラグ

Multi-Repo / Platform

ツール 機能
grasp_org_graph リポジトリ間エッジ付きの組織レベルマルチリポジトリ依存関係グラフ
grasp_api_diff 破壊的 API 変更検出器 — 削除/変更されたエクスポートシンボル
grasp_plugins 拡張ポイントマップ — プラグインインターフェース、フックポイント、戦略パターン
grasp_semver セマンティックバージョニング強制 — 変更セット用 semver bump を検証
grasp_abi_diff ABI/API 安定性チェッカー — 安定性スコア 0–100
grasp_subsystems カーネル/OS サブシステム境界マップ
grasp_kconfig Kconfig/ビルド時条件解析 — CONFIG_* 使用マップ
grasp_irq IRQ/割り込み依存関係グラフ — ハンドラ内のブロッキング呼び出し、割り当て
grasp_patch_impact パッチシリーズ影響分析器 — blast radius + 複雑度でパッチをランク付け
grasp_good_first_issues Good first issue ジェネレータ — 孤立、低複雑度、未テストファイル
grasp_api_stability 2 つのセッション間の API 安定性スコア (0–100)
grasp_fork_diff フォーク分岐解析 — 分岐/同一/フォーク専用ファイル
grasp_latency 金融/トレーディングレイテンシホットスポット検出
grasp_model_risk 金融モデルリスク監査

Code Intelligence (v3.16.0)

ツール 機能
grasp_diff_symbols git diff ハンクを関数にマップ — マージ前の PR の blast radius
grasp_exec_flow STEP_IN_PROCESS エッジ + Mermaid チャート付きの任意のエントリポイントからの BFS 実行フロー
grasp_skillmd 解析セッションから自動生成された SKILL.md / CLAUDE.md スニペット
grasp_hooks .claude/settings.json PostToolUse フック + .cursor/rules/grasp.mdc を生成
grasp_mro メソッド解決順序 — C3 線形化 (Python)、Ruby/Java 階層用 MRO
grasp_communities Leiden/Louvain コミュニティ検出 — 境界づけられたコンテキストとマイクロサービス候補を識別
grasp_contracts マルチリポジトリ契約解析 — プロバイダーエクスポート vs コンシューマ使用、違反 + カバレッジ %

Analysis Intelligence (v3.16.0)

ツール 機能
grasp_confidence すべてのクロスファイル接続を 0–1 でスコア (明示的 import=1.0、同フォルダ=0.8、クロスフォルダ=0.6、低頻度=0.4)
grasp_wiki markdown wiki を自動生成: index.md + フォルダごとのページ + caller 数でソートされた api.md
grasp_registry_list ヘルスグレード、ファイル/関数数、アクティブセッション ID 付きですべての Brain インデックス済みリポジトリをリスト
grasp_registry_status レジストリヘルス: インデックス数、セッション数、グレード分布
grasp_resolve_receiver すべてのクラスメソッドの具体クラスを解決 — Python、JS、Java、Ruby で self/this が何を指すか

Semantic Search, Rename & Routes (v3.16.0)

ツール 機能
grasp_search ハイブリッドセマンティック検索 — Reciprocal Rank Fusion でマージされた BM25 FTS5 + 384D ベクトル埋め込み (Xenova/all-MiniLM-L6-v2)。結果には実行フローでグループ化された processes[] を含む。複数リポジトリにまたがる @groupName ファンアウトをサポート
grasp_rename brain ストアエッジを使用してすべての参照を発見するグラフ対応の全コードベースシンボルリネーム。apply: false (デフォルト) はドライラン diff を返し、apply: true はディスクに変更を書き込む
grasp_route_map HTTP ルート定義 (Express/Fastify/Hono、FastAPI/Flask、Gin) をスキャン — 各ルートをそのハンドラ関数とファイル位置にマップ
grasp_api_impact ルートまたはハンドラ名を指定すると、brain グラフエッジを使用してすべての caller、下流サービス、blast radius を返す
grasp_tool_map MCP ツール定義 (server.tool / server.registerTool) と gRPC サービス定義をスキャン — サービス契約マップを返す
grasp_shape_check 任意の関数について、brain インデックスからすべてのコールサイトでパラメータ型と戻り値型をトレース; コールサイトの不一致をフラグ
grasp_group_add マルチリポジトリ @groupName ファンアウト用に ~/.grasp/groups.json の名前付きグループにリポジトリソースを追加
grasp_group_list ~/.grasp/groups.json からすべての名前付きグループとそのメンバーリポジトリをリスト

Graph Intelligence (v3.16.0)

ツール 説明
grasp_graph_schema Kuzu schema v3 イントロスペクション — ノード/エッジテーブル定義 (File、Function、Class、Interface、Method、Constructor、TestFile + TESTS と COVERS を含む 12 エッジタイプ) とライブ行数
grasp_type_propagation インポートグラフ上の Kahn トポロジカルソートによるクロスファイル型推論; 信頼度 0–1 のトップ推論型を返す
grasp_orm_map ORM クエリトラッカー — Prisma、TypeORM、Sequelize、SQLAlchemy; コールサイト、操作、頻度でモデルごとにグループ化された結果
grasp_detect_changes Git diff → シンボル影響: 変更ファイル、影響を受けた関数、影響を受けたプロセスフロー、リスクレベル LOW/MEDIUM/HIGH/CRITICAL
grasp_generate_agents_md brain セッションから豊富な AGENTS.md を生成 — 機能的コミュニティ、実行プロセス、ヘルスグレード、トップ問題
grasp_generate_skills コミュニティごとの .claude/skills/generated/<community>.md ファイル — キーファイル、エントリポイント、クロス領域依存

MCP Resources (v3.16.0) — リソースへの直接アクセス用 8 個のライブ grasp:// URI: grasp://repos · grasp://setup · grasp://repo/{id}/context · grasp://repo/{id}/clusters · grasp://repo/{id}/processes · grasp://repo/{id}/schema · grasp://repo/{id}/cluster/{name} · grasp://repo/{id}/process/{name}

MCP Prompts (v3.16.0) — detect_impact (変更 → シンボル → プロセス → リスク → テストスコープ) · generate_map (リポジトリ → 解析 → 図 → コミュニティ → wiki)


CI/CD 統合

GitHub Actions — 自動 PR コメント

# .github/workflows/grasp.yml
name: Grasp Health Check
on:
  pull_request:
    types: [opened, synchronize, reopened]
jobs:
  health:
    uses: ashfordeOU/grasp/.github/workflows/grasp-health.yml@main

ワークフローはすべての PR にコメントを投稿および更新します:

メトリクス 値
Health Score ████████░░ 82/100
Grade 🟢 A
Files 142 (891 functions)
Architecture Issues 3
Circular Deps 0 ✓
Security 0 ✓
Changed Files この PR で 5 個のコードファイル

アーキテクチャルール (grasp.yml)

rules:
  - min_health_score: 70       # スコアが 70 を下回ったら CI を失敗させる
  - max_blast_radius: 20       # 20 個以上に影響するファイルをフラグ

ローカルで grasp . --check で実行、または GitHub Actions テンプレートを使用。

CLI ベース CI ゲート

grasp . --report   # grasp-report.json を書き込み、exit 0 = 成功、exit 1 = 失敗
- name: Grasp health gate
  run: |
    PASSED=$(cat grasp-report.json | jq '.ci.passed')
    SCORE=$(cat grasp-report.json | jq '.ci.score')
    echo "Health score: $SCORE"
    if [ "$PASSED" != "true" ]; then
      cat grasp-report.json | jq '.ci.failures'
      exit 1
    fi

完全なエクスポートスキーマは docs/api-schema.md を参照。

SARIF アップロード (GitHub Code Scanning)

grasp . --format=sarif   # grasp-results.sarif を書き込み
- uses: github/codeql-action/upload-sarif@v3
  with:
    sarif_file: grasp-results.sarif

高度な機能

⚡ コマンドパレット

Cmd+K (Mac) / Ctrl+K (Windows) — ファイル検索、関数へジャンプ、問題へナビゲート。結果を選択するとグラフがそのノードへパンします。

🔍 パスファインダー

詳細パネルで 2 つのファイルを選択すると、それらの間の最短依存チェーンを発見します。

🏛️ アーキテクチャルールエンジン

カスタム FORBIDDEN 依存ルールを定義 (例: utils → services は FORBIDDEN)。違反は問題としてフラグされ、セッションを越えて保持されます。

📅 履歴 & スナップショット

すべての解析が自動的に保存されます。右パネルの HISTORY をクリックして、D3 スパークラインと範囲スライダーで時間経過のヘルススコアを比較。

🚫 カスタム無視パターン

⋯ → 🚫 Ignore Patterns — ディレクトリ除外を追加 (例: generated/、__mocks__/)。セッションを越えて保持されます。組み込みデフォルト (node_modules、dist、.git) は削除できません。

📤 レポートエクスポート

JSON、Markdown、Plain Text、SVG、SARIF 2.1.0。完全なスキーマは docs/api-schema.md に。

🤖 AI コーディングツールサポート

Grasp はすべての主要な AI コーディングツールと MCP 経由で動作します: Claude Code、Cursor、Cline、Roo Code、Kilo Code、OpenCode、Trae、Grok CLI、Codex CLI、Droid

ツールごとのセットアップガイドは ai-tools/ を参照。

PR 内の @grasp-bot

任意の PR に @grasp-bot analyze とコメント — Grasp が完全なヘルスレポートをインラインで投稿します。


VS Code 拡張機能

インストール: GitHub Releases から grasp-vscode-3.18.0.vsix をダウンロードし、VS Code で Extensions: Install from VSIX… (Cmd+Shift+P) を実行。

  • 起動時にワークスペースを自動解析、ファイル保存時に再解析 (2 秒デバウンス)
  • ステータスバーがアクティブファイルの ↑ N deps ↓ M dependents を表示
  • エディタ切り替えごとにアクティブファイルへパン
  • セキュリティ問題と arch 違反を Problems パネル (波線) に表示
  • パネルヘッダーに 4 つのカラーモードボタン: Layer / Folder / Churn / Complexity
  • パネルヘッダーにヘルススコアバッジ
  • ノードをダブルクリックでエディタ内のファイルを開く
  • 任意のファイルを右クリック → Grasp: Analyze File で即座に詳細
  • 有向リンク: 青 = 発信インポート、緑 = 着信依存者
  • 豊富なツールチップ: 複雑度、churn 数、ファイルごとのトップ貢献者

キーボードショートカット

キー アクション
Enter リポジトリを解析
Cmd+K / Ctrl+K コマンドパレットを開く
+ / - ズームイン/アウト
Shift+クリック 複数ノード選択
Escape モーダル / コマンドパレットを閉じる
T テーマを循環
? ヘルプモーダルを開く

19 種類のテーマ

ホバーピッカーとクリックで循環できる完全なテーマシステム:

Dark · Light · Matrix · Amber Terminal · Dracula · Nord · Tokyo Night · Catppuccin · Gruvbox · Obsidian Gold · Midnight Diamond · Carbon · Noir · Synthwave · Ocean Depth · Forest · Sunset · High Contrast · Solarized Light

テーマ選択はセッションを越えて保持され、Grasp と Team Dashboard で共有されます。


サポート言語

JavaScript · TypeScript · Python · Go · Java · Rust · C · C++ · C# · Ruby · PHP · Swift · Kotlin · Scala · Vue · Svelte · Dart · Elixir · Erlang · Haskell · Lua · R · Julia · Perl · Shell · PowerShell · F# · OCaml · Clojure · Elm · VBA · Groovy · Ada · Zig


GitHub API レート制限

認証 リクエスト/時間
トークンなし 60
Personal Access Token 5,000
GitHub App インストールごとに 5,000

アーキテクチャ

┌─────────────────────────────────────────────────────────────────────────┐
│                          Analysis Engine  (mcp/src/)                    │
│                                                                         │
│  ┌──────────────────────┐   ┌──────────────────────────────────────┐   │
│  │  AST Parser          │   │  Analyzer + Pipeline                 │   │
│  │  tree-sitter WASM    │   │  · Dependency extraction             │   │
│  │  35 languages        │   │  · Cyclomatic complexity             │   │
│  │  native bindings     │   │  · Layer classification              │   │
│  └──────────────────────┘   │  · Security pattern detection        │   │
│                              │  · Dead code & duplicate analysis    │   │
│  ┌──────────────────────┐   │  · Scope resolver (3-tier, 0.95→0.50)│   │
│  │  Source Adapters     │   │  · Type propagator (Kahn topo-sort)  │   │
│  │  GitHub  · GitLab    │   │  · ORM tracker (Prisma/TypeORM/SA)   │   │
│  │  Azure   · Bitbucket │   └──────────────────────────────────────┘   │
│  │  Gitea   · Local FS  │                                               │
│  └──────────────────────┘   ┌──────────────────────────────────────┐   │
│                              │  Brain Store  (~/.grasp/brain.db)    │   │
│                              │  SQLite · repos / files / edges      │   │
│                              │  FTS5 full-text · 384D vectors       │   │
│                              │  Execution process tags (BFS)        │   │
│                              └──────────────────────────────────────┘   │
│                              ┌──────────────────────────────────────┐   │
│                              │  Graph Store  (~/.grasp/graph/)      │   │
│                              │  Kuzu  —  Schema v3                  │   │
│                              │  Nodes: File · Function · Class      │   │
│                              │         Interface · Method           │   │
│                              │         Constructor                  │   │
│                              │  Edges: CALLS(conf) · IMPORTS        │   │
│                              │         EXTENDS · IMPLEMENTS         │   │
│                              │         HAS_METHOD · OVERRIDES       │   │
│                              │         QUERIES · STEP_IN_PROCESS    │   │
│                              │  Read-only Cypher via graph_query    │   │
│                              └──────────────────────────────────────┘   │
└────────────────────────────────────┬────────────────────────────────────┘
                                     │
           ┌─────────────────────────┼─────────────────────────┐
           ▼                         ▼                         ▼
┌─────────────────────┐  ┌───────────────────────┐  ┌──────────────────────┐
│    Browser Apps     │  │   MCP Server + CLI    │  │   IDE Extensions     │
│                     │  │   (grasp-mcp-server)  │  │                      │
│  index.html         │  │                       │  │  VS Code             │
│  · React + D3       │  │  130 tools            │  │  JetBrains           │
│  · 10 graph views   │  │  8 MCP Resources      │  │  Zed                 │
│  · AI Chat (11 prov)│  │  2 guided Prompts     │  │  Neovim · Vim        │
│  · Confidence overlay│  │  Brain (SQLite+Kuzu)  │  │  Emacs               │
│  · Graph query modal│  │  Hybrid search        │  │  Eclipse · Continue  │
│  · Fn-level canvas  │  │  ORM map · Change risk│  │                      │
│  · DB coupling tab  │  │  Route/API map        │  │  Browser Extensions  │
│  · PII detection    │  │  @group fan-out       │  │  Chrome · Firefox    │
│  · 19 themes        │  │  Arch diff · Hooks    │  │                      │
│                     │  │  grasp setup          │  │                      │
│  team-dashboard.html│  │  (Claude/Cursor/      │  │  Setup auto-config   │
│  · Multi-repo health│  │   Windsurf/Codex/     │  │  grasp setup [path]  │
│  · DORA + sparklines│  │   OpenCode)           │  │  writes mcp.json +   │
│  · Patterns/Env/Flags│  │  --watch --timeline  │  │  hooks for all       │
│  · Registry panel   │  │  --format=sarif       │  │  detected editors    │
│  · WebSocket rooms  │  │  --pr-comment         │  │                      │
└─────────────────────┘  └───────────────────────┘  └──────────────────────┘
           │                         │                         │
           └─────────────────────────┴─────────────────────────┘
                                     │
┌────────────────────────────────────▼────────────────────────────────────┐
│                           Integrations                                  │
│                                                                         │
│  CI/CD             Bots & Alerts       AI Coding Tools   Project Mgmt  │
│  GitHub Action     Slack Bot           Claude Code       Jira          │
│  GitLab CI         Discord Bot         Cursor            Linear        │
│  Bitbucket Pipe    Teams Bot           Windsurf · Codex  Raycast       │
│  CircleCI Orb      @grasp-bot          Copilot Extension               │
│  Jenkins Plugin                        Amazon Q · Cline                │
│                                        GPT Actions · Roo               │
│                                                                         │
│  SaaS / Cloud: grasp.dev API · badge service · GitHub OAuth           │
└─────────────────────────────────────────────────────────────────────────┘

ブラウザアプリ: インストール依存ゼロ。React 18、D3.js 7、Babel は CDN から。Tree-sitter WASM 文法は遅延ロードされ、IndexedDB にキャッシュされます。

MCP サーバー: Node.js 18+。16 言語にわたる AST ベースの関数抽出と循環的複雑度のためのネイティブ tree-sitter バインディング: Python、Go、Java、Kotlin、Rust、C、C++、C#、Ruby、JavaScript、TypeScript、TSX、Swift、PHP、Scala、Zig。

Brain ストア: 2 つの永続ストア — ~/.grasp/brain.db の SQLite (ファイルメタデータ、結合、セキュリティ) と ~/.grasp/graph/ の Kuzu graph DB (関数コールグラフ、インポート、戻り値型エッジ — Cypher 経由でクエリ可能)。

IDE 拡張機能: VS Code (vscode-extension/)、JetBrains (jetbrains-plugin/)、Zed、Neovim、Vim、Emacs、Eclipse、Continue — すべて同じ MCP サーバーがバックエンド。

ブラウザ拡張機能: Chrome、Firefox (browser-extension/) — MV3、GitHub と GitLab ページにフローティング Grasp ボタンを注入。


バージョン & 自動更新

index.html と team-dashboard.html の両方がフッターに現在のバージョン (v3.18.0) を表示します。読み込み時に、新しいリリースを npm レジストリで静かに確認します。見つかった場合、消去可能なトーストが表示されます:

  • Update Now — GitHub から新しい HTML を取得、ダウンロード、即座に適用
  • Later — 24 時間スヌーズ

サーバーなし、バックグラウンドプロセスなし。


プライバシー & セキュリティ

あなたのコードはあなたのマシンに留まります。

ブラウザアプリ:

  • ブラウザで 100% 動作 — サーバーもプロキシもなし
  • GitHub/GitLab API 呼び出しはあなたのブラウザから直接プロバイダーへ
  • トークンは localStorage のみに存在 — 選択した Git プロバイダー以外には決して送信されません
  • 分析なし、追跡なし、アカウントなし
  • アプリ全体が1 つのオープンソース HTML ファイル — 自分で監査してください

MCP サーバー:

  • サブプロセスとしてローカルで動作 — GitHub/GitLab API 以外の発信接続なし
  • テレメトリなし、データ収集なし
  • ローカルディレクトリ解析はメモリ内で読み取られ破棄、Brain ストアはあなたのマシンの ~/.grasp/brain.db に留まる

サプライチェーン:

  • すべての npm リリースは GitHub Actions OIDC 経由でSLSA provenance (Level 2) で署名されている
  • すべての Docker イメージ (ghcr.io/ashfordeou/grasp) は Cosign keyless 署名で署名され、Sigstore Rekor 公開台帳に記録されている

インストール前に検証:

# npm パッケージ
npm install -g @sigstore/verify  # 一度だけ
sigstore verify npm [email protected]

# Docker イメージ
cosign verify \
  --certificate-identity-regexp="https://github.com/ashfordeOU/grasp/.github/workflows/publish.yml" \
  --certificate-oidc-issuer="https://token.actions.githubusercontent.com" \
  ghcr.io/ashfordeou/grasp:v3.18.0

貢献

セットアップ、コード構造、PR チェックリストについては CONTRIBUTING.md を参照。

バグを発見? issue を開く

言語を追加? Tree-sitter 文法ソースは mcp/src/extractors/ にあります — 既存のパターンに従って新しい言語ファイルを作成してください。

MCP ツールを追加? 既存の server.registerTool パターンに従って mcp/src/index.ts で登録。mcp/tests/ にテストを追加してください。


ライセンス

Elastic License 2.0 — Copyright (c) 2026 Ashforde OÜ.

使用、変更、セルフホスト自由。Grasp をホスト型またはマネージドサービスとして提供する、著作権表示を削除する、別のブランドで再配布することはできません。完全な条項は LICENSE を参照。


130 MCP ツール · 35 言語 · 11 AI プロバイダー + 200+ モデル · インストール不要 · データ収集ゼロ

依存関係グラフ、セキュリティスキャナー、DORA メトリクス、Grasp Brain — コードを書くすべての場所に。