MCP連携
sentruxはMCPサーバーとして動作し、AIエージェントにアーキテクチャの健全性へのリアルタイムアクセスを提供します。
セットアップ
Section titled “セットアップ”Claude Code
Section titled “Claude Code”/plugin marketplace add sentrux/sentrux/plugin install sentruxCursor / Windsurf / OpenCode / その他のMCPクライアント
Section titled “Cursor / Windsurf / OpenCode / その他のMCPクライアント”MCP設定に以下を追加してください:
{ "mcpServers": { "sentrux": { "command": "sentrux", "args": ["--mcp"] } }}エージェントのワークフロー
Section titled “エージェントのワークフロー”Agent: scan("/Users/me/myproject") → { quality_signal: 7342, files: 139, bottleneck: "modularity" }
Agent: session_start() → { status: "Baseline saved", quality_signal: 7342 }
... エージェントが500行のコードを書く ...
Agent: session_end() → { pass: false, signal_before: 7342, signal_after: 6891, summary: "Quality degraded during this session" }エージェントは自身の影響を確認できます。品質が低下すれば、即座に検知します。
利用可能なツール
Section titled “利用可能なツール”| ツール | 用途 |
|---|---|
scan | ディレクトリをスキャンし、品質シグナルとファイル一覧を取得 |
health | 詳細な根本原因の内訳と診断情報 |
session_start | エージェントセッション前にベースラインを保存 |
session_end | ベースラインと比較し、劣化を検出 |
rescan | 変更後に再スキャン(フルスキャンより高速) |
check_rules | .sentrux/rules.toml に対するバリデーション |
git_stats | Git履歴分析 — ホットスポット、チャーン、バスファクター |
dsm | 設計構造マトリクス(依存関係マトリクス) |
test_gaps | テストされていないコードパスの検出 |
MCPレスポンスの例
Section titled “MCPレスポンスの例”{ "quality_signal": 7342, "bottleneck": "modularity", "root_causes": { "modularity": { "score": 6700, "raw": 0.45 }, "acyclicity": { "score": 10000, "raw": 0 }, "depth": { "score": 10000, "raw": 4 }, "equality": { "score": 6100, "raw": 0.35 }, "redundancy": { "score": 8800, "raw": 0.12 } }}エージェントは最もスコアの低い根本原因をターゲットにし、変更あたりの改善効果を最大化します。
フィードバックループ
Section titled “フィードバックループ”sentrux (センサー) → quality_signal → AIエージェント (コントローラー) → コード変更 (アクチュエーター) → コードベース (システム) → sentruxこれは古典的なサイバネティクス(Wiener 1948)です。ループは自然に収束します — 各イテレーションでエージェントが最大のボトルネックを修正し、改善は限界的になり、収束に到達します。