syke について
SYKEはコーディングエージェント向けのMCPサーバーで、ソースファイルの依存関係を可視化し、ビルドやデプロイ前に変更の影響を確認します。静的解析に、リスク判定、連鎖検出、ローカルダッシュボードを組み合わせています。
主な機能
- 01PASS/WARN/FAILのビルドゲート
- 02依存関係グラフと影響チェック
- 03連鎖影響と循環依存の検出
- 04リスクスコアとGit変更の相関
- 05依存関係のライブダッシュボード
- 068言語の自動検出
活用シーン
- 01ビルドやデプロイ前のコード変更確認
- 02ソース変更の影響を受けるファイルの特定
- 03高リスクまたは循環依存の確認
- 04ダッシュボードでのコード変更監視
MCP 対応
SYKEはMCP対応のコーディングエージェントに、`gate_build`、`check_safe`、`get_dependencies`などのコード安全性・依存分析ツールを公開します。Proツールでは、影響分析、グラフ更新、AI分析、変更警告も利用できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y @syke1/mcp-serverSYKE_LICENSE_KEYシークレットSYKE Pro license key (optional — Free tier works without it)GEMINI_KEYシークレットGoogle Gemini API key for AI semantic analysis (optional, Pro only)ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
8掲載時のツール一覧 · 3 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| files | array | いいえ | 変更されたファイルの任意のリスト(絶対パス、またはソースディレクトリからの相対パス) |
詳細
SYKE — コードベースの鼓動を可視化
AI コード影響分析 MCP サーバーです。 SYKE は AI が触れたすべてのファイルを監視し、依存関係グラフを構築して、連鎖的な不具合を検出し、被害が広がる前にビルドを制御します。
Claude Code、Cursor、Windsurf、および MCP 互換のあらゆる AI コーディングエージェントで動作します。



仕組み
- 起動時に SYKE がソースディレクトリをスキャンし、静的インポート解析を使って完全な依存関係グラフを構築します。
- AI エージェントは自由にファイルを変更できます — 通常の作業中に中断されることはありません。
- ビルド/デプロイの前に AI が
gate_buildを呼び出し、すべての変更が安全かどうかを確認します。 - 依存関係に問題がある場合 SYKE が連鎖的な障害を検出し、
FAIL判定でビルドをブロックします。 - ダッシュボード には、リスク指標付きの依存関係グラフがリアルタイムで表示されます。
SYKE はセーフティネットであり、門番ではありません。 作業中に AI をブロックするのではなく、AI が見落とした問題を出荷前に検出します。
クイックスタート
1. 設定ファイルを作成する
~/.syke/config.json を作成します。
{
"licenseKey": "SYKE-XXXX-XXXX-XXXX-XXXX",
"geminiKey": "your-gemini-api-key"
}
ライセンスキーは syke.cloud/dashboard で取得してください。必要な AI キーは 1 つだけです。対応しているキー:
geminiKey、openaiKey、anthropicKey。
2. MCP サーバーを登録する
Claude Code:
claude mcp add syke -- npx @syke1/mcp-server@latest
Cursor(.cursor/mcp.json):
{
"mcpServers": {
"syke": {
"command": "npx",
"args": ["@syke1/mcp-server@latest"]
}
}
}
Windsurf(~/.codeium/windsurf/mcp_config.json):
{
"mcpServers": {
"syke": {
"command": "npx",
"args": ["@syke1/mcp-server@latest"]
}
}
}
Windows に関する注意:
npxが見つからない場合は、フルパスを使用してください:"command": "C:\\Program Files\\nodejs\\npx.cmd"
3. プロジェクトにビルドゲートを追加する
プロジェクトの CLAUDE.md(または同等の AI 指示ファイル)に、次の行を追加します。
After completing code changes, always run the gate_build MCP tool before committing or deploying.
これにより、タスクのたびに AI エージェントが SYKE の安全性チェックを自動実行します。手動で指示する必要はありません。
4. AI エージェントを再起動する
SYKE はプロジェクトの言語を自動検出し、起動時に依存関係グラフを構築します。http://localhost:3333 を開くと、リアルタイムのダッシュボードを確認できます。
機能
8 つの MCP ツール
| ツール | プラン | 説明 |
|---|---|---|
gate_build | 無料 | ビルド前の必須チェックです。 ビルドまたはデプロイの前に、PASS/WARN/FAIL の判定を返します。 |
check_safe | 無料 | HIGH/MEDIUM/LOW/NONE のリスクを示す、簡潔な安全性判定です。 |
get_dependencies | 無料 | ファイルの内部インポート(前方依存関係)を一覧表示します。 |
analyze_impact | Pro | SCC、リスクスコア、Git の結合度を含む、完全な影響分析です。 |
get_hub_files | Pro | PageRank 重要度スコアに基づいてファイルを順位付けします。 |
refresh_graph | Pro | すべてのソースファイルを再スキャンし、依存関係グラフを再構築します。 |
ai_analyze | Pro | ファイルとその依存元を AI で意味解析します(Gemini/OpenAI/Claude)。 |
check_warnings | Pro | 依存元に影響する可能性のあるファイル変更を、リアルタイムで監視して警告します。 |
複数の AI プロバイダーに対応
SYKE は意味解析に 3 つの AI プロバイダーをサポートしています。独自のキーを用意してください。
| プロバイダー | モデル | 設定キー | 環境変数 |
|---|---|---|---|
| Google Gemini | gemini-2.5-flash | geminiKey | GEMINI_KEY |
| OpenAI | gpt-4o-mini | openaiKey | OPENAI_KEY |
| Anthropic | claude-sonnet-4-20250514 | anthropicKey | ANTHROPIC_KEY |
自動選択: SYKE は利用可能なキーのうち、最初のものを使用します(Gemini > OpenAI > Anthropic)。
プロバイダーの指定: 設定の aiProvider(または環境変数 SYKE_AI_PROVIDER)を設定すると、使用するプロバイダーを指定できます。
高度なグラフアルゴリズム
SYKE は単純な依存関係のカウントにとどまりません。5 つの本番環境向けアルゴリズムが連携し、正確で高速、かつ豊富なコンテキストを備えた影響分析を実現します。すべて AI トークンのコストなしでローカルに実行されます。
1. SCC 縮約 + トポロジカルソート
循環依存は、誤解を招く影響分析の最大の原因です。SYKE は Tarjan のアルゴリズムを使用してすべての強連結成分を検出し、それらを整理された DAG に縮約したうえで、トポロジカルソートを実行して正確な波及レベルを算出します。
Before: "47 files affected" (inflated by cycles)
After: "3 files in circular cluster (Level 0) → 5 files (Level 1) → 4 files (Level 2)"
- O(V+E) の計算で、ミリ秒単位の時間で完了します
- サイズが 1 を超える SCC はすべて、循環依存クラスターとして識別されます
- 循環が多いコードベースでも、正確な波及レベルを算出できます
2. 複合リスクスコア
5 つのシグナルを組み合わせ、単一の 0~1 のリスクスコアを算出します。
| シグナル | 重み | 測定内容 |
|---|---|---|
| ファンイン | 30% | このファイルに依存するファイルの数 |
| 安定性指標 | 20% | I = Ce/(Ca+Ce) — 値が低いほど基盤となるファイルであり、変更リスクが高くなります |
| 循環的複雑度 | 20% | 内部の分岐の複雑さ(正規表現ベース、8 言語に対応) |
| 波及の深さ | 15% | 影響が波及する階層の深さ |
| PageRank | 15% | 依存関係グラフにおける再帰的な重要度 |
auth_service.ts → Risk: 0.82 (CRITICAL)
Fan-in: 24, Stability: 0.12, Complexity: 47, Cascade: 4 levels, PageRank: 99th
string_utils.ts → Risk: 0.31 (LOW)
Fan-in: 18, Stability: 0.85, Complexity: 3, Cascade: 1 level, PageRank: 42nd
AI エージェントは、しきい値に基づいて判断できるようになります。0.3 未満なら続行、0.3~0.7 なら警告、0.7 を超える場合はブロックします。
3. 変更履歴に基づく結合関係
静的なインポートでは、隠れた依存関係、つまりインポート関係がないにもかかわらず常に一緒に変更されるファイルを見つけられません。SYKE は git 履歴(直近 500 件のコミット)を分析し、こうした論理的な結合関係を検出します。
auth_service.ts changed →
[Dependency Graph] auth_provider.ts, login_screen.ts
[Git Coupling — Hidden Dependencies]
config/auth_config.json (85% confidence, 12 co-changes)
styles/auth.css (72% confidence, 8 co-changes)
- 静的解析ではまったく検出できない、影響を受けるファイルの 15~30% を検出します
- ノイズを避けるため、メガコミット(20 ファイル超)を除外します
- 5 分間のキャッシュを使用し、自動更新します
4. ファイルの重要度を測る PageRank
単純なファンインの集計では、依存先をすべて同じように扱います。PageRank は再帰的な重要度を算出します。重要なファイルから多くインポートされるファイルは、末端のファイルから多くインポートされるファイルよりも高いランクになります。
Before: utils.ts ranked #1 (25 dependents — but all are leaf components)
After: auth.ts ranked #1 (20 dependents — 15 of which are core modules)
- 減衰係数 0.85 の標準的なべき乗法を使用します
- 起動時に事前計算し、ファイル変更時には差分更新します
- すべてのファイルにランク順位とパーセンタイルを付与します(例:「245 件中 3 位、99 パーセンタイル」)
5. グラフの差分更新 + クエリのメモ化
大規模なコードベース(ファイル数 10K 以上)では、グラフ全体の再構築に時間がかかりすぎます。SYKE は、変更されたファイルのエッジのみを更新し、影響を受けるキャッシュエントリーのみを無効化するようになりました。
Before: 1 file changed → re-parse all 500 files → 2+ seconds
After: 1 file changed → re-parse 1 file → edge diff → 50ms
Same file queried again → cache hit → O(1) instant
- 逆引きインデックスにより、O(cache_size) ではなく O(affected) でキャッシュを無効化できます
- エッジ変更後に SCC と PageRank を再計算します(ファイル数 10K でも 100ms 未満)
- ヒット/ミス診断機能を備えた 500 件の LRU キャッシュ
言語サポート
自動検出され、設定は不要です。Dart/Flutter、TypeScript/JavaScript、Python、Go、Rust、Java、C++、Ruby に対応しています。
Web ダッシュボード
localhost:3333 で依存関係グラフをリアルタイムに可視化できます。機能は以下のとおりです。
- インタラクティブな 3D ノードグラフ(任意のファイルをクリックして接続を確認できます)
- リアルタイムの波及モニタリング
- リスクレベルのインジケーター
- サーバーのオフライン検出と自動再接続
設定
SYKE は ~/.syke/config.json(プライマリ)から設定を読み込み、環境変数で上書きできます。
| 設定キー | 環境変数 | 説明 | 必須 |
|---|---|---|---|
licenseKey | SYKE_LICENSE_KEY | ダッシュボードで取得する Pro ライセンスキー | いいえ(Free ティアでは不要) |
geminiKey | GEMINI_KEY | ai_analyze 用の Google Gemini API キー | いいえ(AI キーはいずれか 1 つ) |
openaiKey | OPENAI_KEY | ai_analyze 用の OpenAI API キー | いいえ(AI キーはいずれか 1 つ) |
anthropicKey | ANTHROPIC_KEY | ai_analyze 用の Anthropic API キー | いいえ(AI キーはいずれか 1 つ) |
aiProvider | SYKE_AI_PROVIDER | AI プロバイダーを指定します。gemini、openai、anthropic のいずれか | いいえ(自動選択) |
port | SYKE_WEB_PORT | ダッシュボードのポート(デフォルト:3333) | いいえ |
設定の完全な例(~/.syke/config.json):
{
"licenseKey": "SYKE-XXXX-XXXX-XXXX-XXXX",
"geminiKey": "AIza...",
"openaiKey": "",
"anthropicKey": "",
"port": 3333
}
推奨ワークフロー
You (developer) AI Agent SYKE
| | |
|-- "Add feature X" -->| |
| |-- modifies files |
| |-- modifies files |
| |-- modifies files |
| | |
| |-- gate_build --->|
| | |-- scans graph
| | |-- checks impact
| |<-- PASS/FAIL ----|
| | |
|<-- "Done. Safe to | |
| build." ----------| |
Founding 100 — 早期導入者向け Pro 無料提供
最初の 100 名の開発者に、クレジットカード不要、条件なしで、Pro の全機能を30 日間ご利用いただけます。
利用できる内容:
- 高度なアルゴリズム(SCC、PageRank、リスクスコアリング、Git 結合)を備えた 8 つすべての MCP ツール
- ファイル数無制限、複数プロジェクト対応
- リアルタイムのカスケード監視とウェブダッシュボード
- AI セマンティック分析(BYOK — Gemini、OpenAI、または Claude)
申し込み方法:
- syke.cloud で登録します
- このリポジトリにスターを付けます
- ダッシュボードで「I Starred」をクリックすると、Pro を 30 日間利用できます
枠には限りがあります。なくなり次第終了です。
ソースコードこのリポジトリにはFree ティアのソースコード(コアの依存関係グラフエンジン、言語プラグイン、3 つの無料 MCP ツール(gate_build、check_safe、get_dependencies))が含まれています。Pro および Cortex の機能(高度なアルゴリズム、AI 分析、リアルタイム監視、ウェブダッシュボード)は、コンパイル済みコードとして npm パッケージに含まれています。
ライセンス
SYKE は自由に使用、変更、配布できますが、次の 2 つの制限があります。
- マネージドサービスの提供禁止 — SYKE をホスト型またはマネージドサービスとして第三者に提供することはできません。
- ライセンスキーの回避禁止 — ライセンスキーの機能を削除、無効化、または回避することはできません。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。