ctxfw について
ctxfwは、コーディングエージェント向けのローカルコンテキストファイアウォール兼MCPゲートキーパーです。周辺コードをインターフェース中心のコンテキストに縮約し、指定されたアーキテクチャ制約を入力時に検査します。標準動作ではローカルで実行され、間接プロンプトインジェクションにも対処します。
主な機能
- 01ASTによる周辺コードの縮約
- 02決定的な入力制約チェック
- 03SARAによるプロンプトインジェクション防御
- 04ローカルMCPツール境界の管理
- 05MCPクライアントの自動設定
活用シーン
- 01コーディングタスクの依存コンテキスト削減
- 02受け入れ前のアーキテクチャ概要の検査
- 03MCP境界での間接プロンプトインジェクションの遮断
- 04対応するコーディング環境へのMCP設定
MCP 対応
ctxfwはMCPゲートキーパーとして、ローカルのツール境界を検査し、コーディングクライアント向けのMCP設定を支援します。プロキシは、MCPを標準サポートしないツール向けのローカルゲートウェイにもなります。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
5掲載時のツール一覧 · 3 日前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| path | string | はい | ソースファイルの絶対パスまたは相対パス |
| depth | string | いいえ | プルーニングの深度:'full'、'interface'、'nominal' |
| language | string | いいえ | プログラミング言語(python、typescript、javascript、go、java) |
| strip_docs | boolean | いいえ | ドキュメント文字列を完全に除去するかどうか |
詳細
CTXFW // コンテキストファイアウォール
MCP コーディングエージェント向け AI エージェントガバナンス、プロンプトインジェクションファイアウォール(SARA)、インメモリ AST コンテキストコンパクター
確率的な LLM の幻覚、間接的なプロンプトインジェクション、本番インフラの間に設ける、決定論的なゼロエグレス境界です。
インストール • ベンチマーク • CTXFW とクラウド WAF の比較 • 診断 • アーキテクチャ • エンタープライズガバナンス
概要
自律型コーディングエージェント(Claude、Gemini、Cursor、Antigravity)は、肥大化した周辺依存関係を含む膨大なコンテキストウィンドウを消費し、トークンの枯渇、コンテキストの逸脱、セキュリティの低下を引き起こします。
CTXFW は、オープンコアのコンテキストファイアウォール兼 Model Context Protocol(MCP)ゲートキーパーです。インメモリのポリグロット AST プルーナーと決定論的な公理ベースの取り込みフィルターを組み合わせています。
- 周辺コードを圧縮(トークンを 72.4% 削減):距離 1 および距離 2 以上のモジュール実装を、明確なインターフェースシグネチャ、型定義、関数スタブに置き換えます。
- 公理的完全性を適用(ACI $\ge$ 0.9000):負の不変条件($N \ge 5)、範囲が限定された変数領域、決定論的なステートマシン、形式的なエラー分類のいずれかを欠く、根拠のない、または不十分なアーキテクチャ概要を拒否します。
- テレメトリーのエグレスゼロ:標準動作モードでは、ネットワークへのテレメトリー漏えいが一切ないローカル実行を保証します。
AST プルーニングのベンチマーク
CTXFW はネイティブのポリグロット文法を使用し、構文ツリーレイヤーで直接動作します。
| ベンチマーク項目 | 未加工コンテキストの取り込み | CTXFW トポロジカルコンパクター | 性能向上/影響 |
|---|---|---|---|
| トークン消費量 | 100%(未加工ファイル) | 27.6%(インターフェーススタブ) | 肥大化を 72.4% 削減 |
| エンジンの圧縮オーバーヘッド | — | ネイティブのインメモリパーサー | < 5.0 ms |
| ウォームキャッシュヒット時のオーバーヘッド | — | SQLite WAL セマンティックキャッシュ | < 0.8 ms |
| Stdio テレメトリーのエグレス | サニタイズされていない stdout | 純粋な分離型 JSON-RPC | エグレスゼロ(100% 分離) |
| 公理検証のレイテンシー | — | フィルター評価 | < 12.0 ms |
| CI/CD プリコミットのレイテンシー | — | ヘッドレス Git セントリー | < 85.0 ms |
実証ケーススタディ:ctxfw/cli.py のコア依存関係グラフ
16 個の内部依存関係を対象に ctxfw.resolve_context_bundle を実行して生成した、コンテキスト削減の実証指標です。
| 寸法 | 生のコンテキスト取り込み | CTXFW トポロジカルふるい分け | 性能差 |
|---|---|---|---|
| コンテキストサイズ合計 | 49,096 トークン | 20,014 トークン | 59.5% の正味削減 |
| 削除されたトークン数 | 0 トークン | 29,222 トークン | 肥大化したトークンを 29,222 個削減 |
| 推移的依存関係($D_{2+}$) | 7,275 トークン | 4,763 トークン | 最大 91.9% 削減 |
| FinOps コストへの影響 | 基本コスト | プロンプトあたり $0.0877 USD 削減 | 1K 回の呼び出しあたり約 $87.70 USD 節約 |
| AST 圧縮のレイテンシ | — | 1,407.96 ms | メモリー内の Tree-Sitter 解析 |
| 証明の完全性 | なし | SHA-256 で封印 | インターフェースを厳密に保持 |
トポロジカル階層の内訳:
- $D_0$ 対象(
ctxfw/cli.py):実装を 100% 完全な状態で保持します。 - $D_1$ 直接依存関係(例:
gatekeeper.py、mcp.py):実装を型付きスタブ(...)に短縮します。トークン削減率:73%~86%。 - $D_2$ 推移的依存関係(例:
polyglot.py):コンパクトな型付きインターフェースシグネチャーです。トークン削減率:91.9%。 - $D_3$ 周辺マッピングとマニフェスト:深い周辺領域($\text{depth} \in [0, 3]$)を対象に、構文を含まない決定論的なフラットシンボルカタログ($\le 1,000$ トークン)を生成します。コンテキストを汚染せずにインポートの根拠を即座に提供し、複雑なリファクタリング(AXIOM-17~AXIOM-21)において 初回パス成功率 100% を保証します。
実証検証の三部作(複数リポジトリでの破壊的 A/B テスト)
ネットワーク接続なしの環境で、主要な本番コードベースを対象に、リモート Linux 環境(root@isolated-runner、Ubuntu 24.04 LTS、Docker のエフェメラル環境)で監査しました。完全なフォレンジック資料:docs/benchmarks/TRILOGY_EMPIRICAL_BENCHMARK.md。
| 対象リポジトリ | アーキテクチャの類型 | アクティブな焦点 $D_0$ | 周辺領域 $D_1$ | 生のコンテキスト($D_0 + D_1$) | 削減後のコンテキスト($D_0 + D_1^*$) | $D_1$ 周辺領域の削減率 | コンテキスト全体の削減率 | MCP の漏えい | 構文 AST パス | レイテンシ/スループット |
|---|---|---|---|---|---|---|---|---|---|---|
zulip/zulip | 密結合型 Django モノリス | users.py(12.9k tok) | realms.py、clients.py、prereg_users.py(16.8k tok) | 29,689 | 22,481 | -42.96% (インターフェース) -78.20% (名目) | -24.28% (インターフェース) -44.20% (名目) | 0 B | 100% PASS | 44.1 ms 約 380k tok/s |
PostHog/posthog | モダンな COSS/データ OS | team.py(14.3k tok) | organization.py、user.py、project.py(20.6k tok) | 34,894 | 22,637 | -59.53% (インターフェース) | -35.13% (インターフェース) | 0 B | 100% PASS | 50.2 ms 約 410k tok/s |
apache/airflow | 非同期オーケストレーション・モノレポ | dag.py(9.4k tok) | baseoperator.py、taskinstance.py、dagrun.py(60.4k tok) | 69,861 | 29,433 | -66.90% (インターフェース) -90.26% (名目) | -57.87% (インターフェース) -78.08% (名目) | 0 B | 100% PASS | 138.2 ms 437,351 tok/s |
主な実証結果:
- 圧縮率の向上($43% \to 60% \to 67%$):実環境のコードベースは規模が大きいほど周辺領域の削減率が高まります(Airflow D1 では $60.4\text{k} \to 20.0\text{k}$ トークンとなり、肥大化したトークンを正味 40,428 個削減)。
- スループットと速度:AST を 毎秒 437,351 トークンでスライスし、処理レイテンシは 140 ms 未満です。
- 焦点ファイルの劣化ゼロ(AXIOM-3):編集中のユーザーのアクティブファイル($D_0$)をバイト単位で 100% 保持します。
- 標準入出力の汚染ゼロ(AXIOM-1):デバッグログの漏えいがない、完全に分離された純粋な JSON-RPC 標準入出力(
leak_bytes == 0)です。
AI エージェントのガバナンスとプロンプトインジェクション防御:CTXFW とクラウドランタイム WAF
クラウドランタイムファイアウォール(Lakera Guard、Palo Alto Networks Prisma AIRS、Protect AI Guardian、Cloudflare Firewall for AI)がクラウド API エッジで HTTP トラフィックを検査するのに対し、CTXFW は、コンテキストが開発者のマシンや CI ランナーの外に出る前に、ローカルで 取り込み前のコード、AST、MCP ツール境界(ゼロエグレス) を保護します。比較の詳細については、docs/benchmarks/SECURITY_VS_CLOUD_WAFS.md をご覧ください。
| 機能/セキュリティ上の側面 | CTXFW(Context Firewall v4.1.0) | Lakera Guard(Check Point) | Palo Alto Prisma AIRS | Protect AI / Cloudflare AI WAF |
|---|---|---|---|---|
| 適用境界 | 取り込み前のローカル AST と MCP ツールの stdio/プロキシ | クラウド HTTP プロンプト API | クラウドネットワークとランタイム API | クラウドエッジ/ML 推論プロキシ |
| コードとデータの主権 | 100% ゼロエグレス(エアギャップされたローカル RAM と SQLite WAL) | クラウド API へのエグレスが必要 | クラウド/アプライアンスによる検査 | クラウドプロキシへのエグレス |
間接プロンプトインジェクション(MCP/ツール) | 決定論的な ctxfw.sara:再現率 100.0%/FPR 0.0%(<system>、[INST]、Trojan-Source U+202E の隔離) | 確率論的 ML 分類器 | ランタイムネットワークポリシー | エッジ WAF/ヒューリスティック分類器 |
| FinOps によるトークンコスト削減 | 42.96%~90.26% の $D_1$ AST の肥大化を削減(約 1,000 回の呼び出しあたり $87.70 の節約) | トークン削減 0% | トークン削減 0% | トークン削減 0% |
| 対象コードのシグナル損失($D_0$) | 損失 0.00%(AXIOM-3:$D_0$ をバイト単位で 100% 保持) | 該当なし(パススルー) | 該当なし(パススルー) | 該当なし(パススルー) |
| 検査レイテンシ(P50/P95) | 0.33 ms P50/1.72 ms P95(SARA)・< 0.8 ms(ウォーム WAL キャッシュ) | 35 ms – 120 ms(ネットワーク RTT) | 25 ms – 90 ms | 15 ms – 150 ms |
| デプロイの複雑さ | 1 コマンド(< 10s):pipx install ctxfw && ctxfw init | SDK ラッパー+API キー | TLS 復号+ルーティング | DNS/プロキシルーティング |
ネットワークへのエグレスなしで、OWASP AISVS C02-01 と arXiv:2510.05244v2 の間接プロンプトインジェクションおよび Trojan-Source ベンチマーク(再現可能な 24 ベクトル)をローカルで実行できます:
python benchmarks/run_sara_security_benchmark.py
インストールと複数サーフェスのセットアップ
1. PyPI からのインストール
pip install --upgrade ctxfw
# or via pipx for dedicated binary isolation:
pipx install ctxfw
2. 複数サーフェスの MCP 自動設定(v4.1.0)
ctxfw init または専用インストールコマンド ctxfw install --claude を実行すると、インストール済みのコーディングサーフェスを自動検出し、操作不要で冪等な設定を行います:
# Targeted Claude Code CLI & Claude Desktop auto-installation:
ctxfw install --claude
# Or full multi-surface discovery (Claude, Cursor, Windsurf):
ctxfw init
自動検出されるサーフェス(三重サーフェスアーキテクチャ):
- Claude Code CLI:
~/.claude.jsonに直接設定を挿入します。 - Claude Desktop:クロスプラットフォームで動的に検出します:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%/Claude/claude_desktop_config.json - Linux/POSIX:
~/.config/Claude/claude_desktop_config.json
- macOS:
- Cursor IDE:ワークスペーススコープの
.cursor/mcp.jsonに設定を挿入します。 - Windsurf IDE:
.codeiumディレクトリの存在が確認された場合、~/.codeium/windsurf/mcp_config.jsonに設定を挿入します。
侵害できない安全性と信頼性の不変条件:
- アトミックなバックアップスナップショット(
.bak.<timestamp>):既存の設定ファイルを変更する前に、タイムスタンプ付きの不変なバックアップを作成します。 - 非破壊的なマージ:既存のサードパーティ製 MCP サーバー、トップレベルの設定、カスタムキーを 100% 保持します。
- 失敗ゼロの実行:インタープリターを動的に
sys.executableと["-m", "ctxfw.mcp"](PyInstaller で凍結されている場合は正規の絶対バイナリパス)に解決し、環境の$PATHや仮想環境の解決に関する失敗を完全に排除します。 - 3 回の実行でも冪等:複数回実行しても、設定の差異やキーの重複は発生しません。
3. ゼロ MCP 相互運用ゲートウェイ(Aider、OpenCode、Continue、CLI)
ネイティブの Model Context Protocol サポートを備えていない AI 開発者向けツールやターミナルエージェントの場合:
# 1. Start the zero-egress local proxy server:
ctxfw proxy --port 8765
# 2. Point your tool's Anthropic or OpenAI endpoint to localhost:
export ANTHROPIC_BASE_URL="http://localhost:8765/v1"
export OPENAI_BASE_URL="http://localhost:8765/v1"
4. 検証済みレジストリ、MCP エコシステムのディレクトリ、エージェントスキル
CTXFW は独立した監査を受けて認定されており、公式の Glama MCP Registry(TDQS 4.5/5.0 · Security 100/100)と Skills Directory(120 の静的セキュリティパターン全体で Security: A 100/100)の両方でグレード Aのコンプライアンスを達成し、7 つの MCP エコシステムディレクトリに登録されています。
- Glama.ai MCP Directory(グレード A 認定):
glama.ai/mcp/servers/heuristicolab/ctxfw - MCPMarket Directory:
mcpmarket.com/server/ctxfw - GTMStacker Tool Registry:
gtmstacker.com/registry/tool/ctxfw/index.json - VibeLeaderboard:
vibeleaderboard.ai/app/e109eca4-858b-41ed-816b-d932f45a7677 - 公式 Anthropic MCP Registry(
server.json):registry.modelcontextprotocol.io - PulseMCP Directory:
pulsemcp.com/servers?q=ctxfw
検証済みの Claude Code/エージェントスキルを .claude/skills/ に直接インストールします:
npx -y skills add heuristicolab/ctxfw --skill context-firewall --agent claude-code
npx -y skills add heuristicolab/ctxfw --skill axiom-sieve --agent claude-code
npx -y skills add heuristicolab/ctxfw --skill eval-benchmark --agent claude-code
npx -y skills add heuristicolab/ctxfw --skill precommit-sentry --agent claude-code
Glama と Skills Directory で、ツールの検査、スキーマ、リアルタイムの診断テレメトリーを直接確認できます。
システム診断
単一のコマンドで、ローカル環境の準備状況、stdio 分離の純度、SQLite WAL の並行処理、Tree-Sitter 文法を検証します:
ctxfw doctor
========================================================================
CTXFW DOCTOR // HIGH-ASSURANCE HEALTH & ISOLATION DIAGNOSTIC
========================================================================
[PASS] Python Package & sys.path ctxfw v4.1.0 loaded cleanly.
[PASS] MCP stdio Stream Isolation 100% pure JSON-RPC on stdout. Diagnostic logs isolated to stderr.
[PASS] Global CLI Executable (PATH) Binary 'ctxfw' found in PATH.
[PASS] Axiomatic Sieve Engine Evaluation verified (ACI: 1.0000, Invariants: 5).
[PASS] SQLite WAL Cache & Concurrency Journal mode: WAL, Busy timeout: 5000ms.
[PASS] Polyglot Tree-Sitter Grammars Initialized language parsers (typescript, go, java).
[PASS] TraceKit Ledger Audit Chain status: INTACT (1275 blocks).
[PASS] Sovereign Pentad WAL Ledgers SARA scans: 331 | TokenCast turns: 1 (FinOps rows: 3872) | Rules: 1056 | SWE-Gate: 13.
------------------------------------------------------------------------
Overall Verdict: [HEALTHY] [ATTESTED] Perimeter defense operational.
========================================================================
CTXFW // 72.4% AST Bloat Eliminated. Zero Telemetry Egress.
Export FinOps ROI: 'ctxfw report --share' | CI Merge Gate: 'ctxfw gate'
Team Squad ($199/mo flat up to 15 devs): https://ctxfw.heuristicolab.com/pricing/
========================================================================
アーキテクチャ
CTXFW は、確率的なエージェントコードとコアコードベースを分離する、厳密で決定論的な境界を適用します:
PROBABILISTIC DOMAIN DETERMINISTIC PERIMETER
┌───────────────────────┐ ┌────────────────────────────────────────┐
│ Autonomous AI Agent │ │ CTXFW ENGINE │
│ (Claude / Gemini / │ │ │
│ Cursor / Antigravity│ │ ┌──────────────────────────────────┐ │
└───────────┬───────────┘ │ │ Polyglot AST Topological Engine│ │
│ │ │ - Python (ast) │ │
│ Target Context / Brief │ │ - TypeScript / Go / Java (CST) │ │
▼ │ │ - Multi-Depth Interface Stubs │ │
┌───────────────────────┐ │ └────────────────┬─────────────────┘ │
│ MCP Stdio Interceptor ├─────────────────►│ │ │
└───────────────────────┘ │ ┌────────────────┴─────────────────┐ │
│ │ SQLite WAL High-Concurrency │ │
│ │ Semantic Cache (<5ms warm hit) │ │
│ └────────────────┬─────────────────┘ │
│ ▼ │
│ [ ACI >= 0.9000? ] │
│ / \ │
│ YES NO │
│ │ │ │
│ ▼ ▼ │
│ ┌──────────────┐ ┌─────────────────┐ │
│ │ VERIFIED │ │ QUARANTINED │ │
│ │ SHA-256 Seal │ │ Execution Halt │ │
│ └──────┬───────┘ └────────┬────────┘ │
└────────┼────────────────────┼──────────┘
│ │
▼ ▼
[ Code Generation ] [ Forensic Report ]
[ & Git Permitted ] [ Pre-Commit Abort]
主要サブシステム(v4.1.0 ソブリン・ペンタッド):
- ポリグロット対応 Tree-Sitter プルーナーと $D_3$ アンビエント・カートグラフィー:
- Python、TypeScript/JavaScript、Go、Javaを対象に、トポロジカルな依存関係ツリー($D_0$ 完全、$D_1$ インターフェース、$D_2$ 名目、$D_3$ フラットなシンボルカタログ $\le 1,000$ トークン)をコンパイルします。
- TraceKit 暗号台帳(
ctxfw.audit):- 追記専用の 283 バイトの正規 SHA-256 ハッシュチェーン監査台帳(
tracekit.db)です。ctxfw trace verifyによる改ざんラッチ検証に対応しています。
- 追記専用の 283 バイトの正規 SHA-256 ハッシュチェーン監査台帳(
- TokenCast 整数予測器とサーキットブレーカー(
ctxfw.budget):- 浮動小数点演算を一切使用しない整数軌道予測器とリアクティブなサーキットブレーカー(
CLOSED$\to$TRIPPED/FORCE_D3_PRUNING$\to$HALTED/EMERGENCY_HALT)です。
- 浮動小数点演算を一切使用しない整数軌道予測器とリアクティブなサーキットブレーカー(
- 規範ルールコンパイラーとエンフォーサー(
ctxfw.rules):.cursorrulesとCLAUDE.mdの禁止指示を、パス走査の正規化を 3 ラウンド反復する決定論的な AST/パス/コマンド/インポートのガードにコンパイルします。
- SARA エージェント誘導ファイアウォール(
ctxfw.sara):- 信頼できないツールの観測内容を検査し、間接的なプロンプトインジェクション、ロールの上書き(
<system>、[INST])、トロイの木馬ソースによる双方向テキストエスケープを検出します(ALLOW、STRIP_COMMANDS、QUARANTINE_TOOL)。
- 信頼できないツールの観測内容を検査し、間接的なプロンプトインジェクション、ロールの上書き(
- SWE-Gate CI 検証器(
ctxfw.swegate)と監査台帳の取得(query_audit_ledger):- 決定論的な統合差分およびアーキテクチャ回帰検証器が、
evaluate_patchを通じて、循環的複雑度の差分上限、禁止されたモジュールのインポート、# type: ignoreの禁止を適用します。さらに、query_audit_ledgerを通じて、SweGateStore(EVL-...)およびTraceKitStore(SES-...)を読み取り専用でフォレンジック検査できます。
- 決定論的な統合差分およびアーキテクチャ回帰検証器が、
ゼロタッチプロビジョニング
ワークスペースに境界ルール、MCP サーバー宣言、コミット前センチネルを注入します。
IDE のグローバル統合
ctxfw init --global
Google Antigravity、Cursor、Claude Desktop を自動設定します。
リポジトリのコミット前セントリー
ctxfw init --repo .
.git/hooks/pre-commit をデプロイし、証明済みの仕様ブリーフを伴わない未認証コードのコミットを防止します。
エンタープライズガバナンスと CI/CD ゲート(v4.1.0)
FinOps の統合と Pull Request の自動ガバナンスを必要とするエンジニアリングチーム向け:
- 個人開発者向け FinOps と LiveBench 2.0 の裁定(無料 / Apache 2.0):
ctxfw report --share ctxfw report --export-json ./my-ledger.json - チームガバナンスと SWE-Gate CI(
$199 USD/month Flat Squad— 開発者 15 名、CI/CD リポジトリ 5 件まで、7 日間のトライアルを含む):export CTXFW_LICENSE_KEY="CTXFW-TEAM-PRO-..." ctxfw license status ctxfw gate --diff-file pr.patch --github-summary ctxfw report --team-merge ./team-ledgers/ - 公式 GitHub Action(
action.yml):- name: CTXFW SWE-Gate & FinOps PR Audit uses: heuristicolab/ctxfw@v4 with: license-key: ${{ secrets.CTXFW_LICENSE_KEY }} diff-range: "origin/main...HEAD"
コントロールプレーン、7 日間のトライアル、チームライセンス: https://ctxfw.heuristicolab.com/pricing/
高保証システムグループ
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。