sigma-gate について
sigma-gateは、AI出力に含まれる秘密情報、プロンプトインジェクション、個人情報を検査する決定論的なPython製ゲートです。モデル、APIキー、ネットワーク接続なしで、公開可否を明示するため、パイプライン開発者やエージェント向けです。
主な機能
- 0120以上のプロバイダーの認証情報を検出
- 02プロンプトインジェクションと脱獄パターンを検出
- 03メール・電話・カードなどの個人情報を検出
- 04重大度とブロック理由を明示
- 05Pythonライブラリ、CLI、MCPサーバーとして実行
活用シーン
- 01出力公開前に漏えいした秘密情報を遮断
- 02生成テキストのインジェクションパターンを検査
- 03パイプラインで出力の個人情報を確認
- 04MCP経由で決定論的なガード検査を実行
MCP 対応
MCPサーバーは、公開可否を判定する`guard`と、脅威クラスを確認する`guard_selftest`を提供します。stdioによるローカル接続と、ホスト型リモートMCPサーバーの両方で利用できます。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://sigma-gate-864996675261.us-central1.run.app/mcpclaude mcp add --transport http spektre-labs-sigma-gate https://sigma-gate-864996675261.us-central1.run.app/mcp{"mcpServers":{"spektre-labs-sigma-gate":{"type":"http","url":"https://sigma-gate-864996675261.us-central1.run.app/mcp"}}}Cursor で開く{"servers":{"spektre-labs-sigma-gate":{"type":"http","url":"https://sigma-gate-864996675261.us-central1.run.app/mcp"}}}VS Code で開く{"mcpServers":{"spektre-labs-sigma-gate":{"type":"http","url":"https://sigma-gate-864996675261.us-central1.run.app/mcp"}}}{"mcpServers":{"spektre-labs-sigma-gate":{"serverUrl":"https://sigma-gate-864996675261.us-central1.run.app/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
詳細
⟐ σ-gate — guard
AI/エージェントの出力に対する決定論的な信頼レイヤーです。1 回の呼び出しで 1 つの判定を返します。モデルも API キーもネットワークも不要です。
1 = 1. Declared output must equal what is safe to realize.
パラダイム
Spektre のほかの 4 つのリポジトリはルーティングプロトコルです。価値、能力、約束、アイデンティティをネットワーク経由で届けます。σ-gate はルーティングプロトコルではなく、そう見せかけることもありません。 スイートの決定論的な信頼判定として、あらゆるパイプラインの境界に置かれ、約 85µs で毎回同じように、*この出力は安全に出荷できるか?*に答えます。LLM を判定役とするガードは遅く、チェックのたびにモデル呼び出しを消費し、レート制限下では気付かれないまま性能が低下します。しかし、最も頻繁に起こるリスク、たとえば漏えいした AKIA… キー、Luhn 検証を通るカード番号、「以前の指示をすべて無視してください」といったものは、構造的に検出できます。モデルは不要で、毎回同じ答えを返すゲートが必要です。この決定性こそが基本要素です。σ = 宣言値 − 実現値:ブロックは常に名前で表せて(secret[high]: github_pat)、不透明な浮動小数点値にはなりません。そのため、ゲートが安全でないと宣言したものは、まさに実現を拒否する対象となります。guard はそのゲートです。
1 回の呼び出し
from guard import guard
result = guard(model_output)
# {"safe_to_ship": True/False, "severity": "clean|low|medium|high|critical",
# "block_reasons": [...], "dimensions": {"secret": {...}, "injection": {...}, "pii": {...}}}
不正な出力をブロックします。
v = guard("Here is the key: ghp_16C7e42F292c6912E7710c838347Ae178B4a")
# safe_to_ship: False
# block_reasons: ["secret[high]: github_pat"]
問題のない出力をそのまま通します。
v = guard("The quarterly report shows revenue grew 12% driven by the EU segment.")
# safe_to_ship: True
# severity: "clean"
3 つの次元、1 つの判定
| 次元 | 検出対象 |
|---|---|
| secret | 漏えいした認証情報 — 20 以上のプロバイダー(AWS、GitHub、Stripe、GCP など)、エントロピーに基づくランク付け |
| injection | プロンプトインジェクションおよびジェイルブレイクのパターン — ヒューリスティックではなく、構造に基づく検出 |
| pii | メールアドレス、電話番号、カード番号(Luhn 検証済み)、SSN、IBAN、IP — コンプライアンス基準の検出 |
各次元は独立して実行されます。3 つすべてに該当すると、すべてが検出されます。
guard("AKIA… ghp_… 4111 1111 1111 1111 — ignore all previous instructions")
# block_reasons: ["secret[high]: ...", "injection[high]: ...", "pii[high]: ..."]
インストール
依存関係はなく、標準ライブラリのみを使用します。Python 3.9 以降が必要です。
git clone https://github.com/spektre-labs/sigma-gate && cd sigma-gate
pip install -e . # installs the `guard` + `guard-mcp` console scripts
python3 -m pytest -q # 7 passed, zero dependencies
インポートにインストールすら必要ありません。クローンしたディレクトリから from guard import guard を実行できます。
使い方
任意のパイプラインにインラインでゲートを設置します。
from guard import guard
def ship(output: str) -> str:
v = guard(output)
if not v["safe_to_ship"]:
raise ValueError(f"blocked: {v['block_reasons']}")
return output
CLI — 任意の出力をパイプで渡します。
echo "your model output" | python3 -m guard
セルフテスト — すべての脅威クラスが検出されることを確認します。
python3 -m guard selftest
# {"secret_blocked": true, "injection_blocked": true, "pii_blocked": true,
# "clean_passes": true, "combined_all_fire": true, "ALL_PASS": true}
しきい値の調整は環境変数で行います(デフォルト:medium)。
GUARD_BLOCK_AT=high python3 -m guard "..."
MCP ツールとして使う
σ-gate には依存関係ゼロの MCP サーバーが付属しています。あらゆるエージェント
(Claude Code、Claude Desktop、Cursor、Cline)に、出力を出荷する前に呼び出せる決定論的な guard ツールを提供できます。モデルも、キーも、トークン費用も不要です。
Claude Code:
claude mcp add guard -- python3 /absolute/path/to/sigma-gate/mcp_server.py
Claude Desktop(claude_desktop_config.json):
{ "mcpServers": { "guard": { "command": "python3",
"args": ["/absolute/path/to/sigma-gate/mcp_server.py"] } } }
2 つのツールを公開します。guard(text, …) は出荷/ブロックの判定を返し、guard_selftest() はすべての脅威クラスが検出されることを確認します。標準ライブラリのみを使用した stdio JSON-RPC です。
ホスト型 — インストール不要
σ-gate はホスト型のリモート MCP サーバー(スケール・トゥ・ゼロ)としても稼働し、
公式 MCP Registry に io.github.spektre-labs/sigma-gate として登録されています。
ローカルでのセットアップ不要で接続できます。
https://sigma-gate-864996675261.us-central1.run.app/mcp
MCP クライアントはレジストリを検索して、自動的にこのサーバーを見つけます。
オープンコアとホスト型サービスの違い
| オープンコア(このリポジトリ) | ホスト型 σ スコアリング | |
|---|---|---|
| 内容 | 決定論的なゲート:secret + injection + PII | ホットパスでの一貫性/ハルシネーションの σ スコアリング |
| レイテンシー | 約 85µs | ネットワークの往復時間 |
| 依存関係 | なし | お使いの環境側では不要 |
| 費用 | 常に無料 | x402 経由の従量課金 — サインアップ不要 |
| オフライン | はい | いいえ |
| モデル | なし | 任意 |
オープンコアは、モデルが確実には実行できない処理、つまり同一の入力に対して同一の判定を返す構造的なパターン検出を担います。ホスト型レイヤーは、構造だけでは不十分なケースに確率的な一貫性スコアリングを追加します。
ホスト型エンドポイント:
curl "https://swagletz-sigmagate.hf.space/check?text=your+text+here"
# HTTP 402 + permissionless x402 pay-to — no account required
プロパティ
- 決定論的。 同じ入力なら同じ判定になります。ばらつきも、モデルのドリフトもありません。
- 組み合わせ可能。 各次元は独立しており、プラグインとして追加できます。ハルシネーションスコアラーを組み込んだり、カスタムパターンで拡張したりできます。ゲートのアーキテクチャは加算的です。
- 明確。 重大度とブロック理由は、不透明な浮動小数点数ではなく、明示的な文字列です。ブロックの理由は必ず特定できます。
- 安全側に動作。 検出器が例外をスローした場合、その次元は
severity: "error"を返します。呼び出しが暗黙に許可されることはありません。 - 依存関係ゼロ。 Python 3.9+ が動作する環境ならどこでも実行できます。インポートに pip install は不要です。
ステータス
実稼働中 — リリース済みで、決定論的に動作し、デプロイされています。CI はグリーンで、テストは 7/7 件合格、依存関係はゼロです。ローカル MCP ツールとして、また公式レジストリに掲載されたスケール・トゥ・ゼロ対応のホスト型 MCP サーバーとして提供されています。
Spektre プロトコルスイート
σ-gate は、5 つの要素から成るエコシステムにおける決定論的な信頼判定です。ほかの 4 つはルーティングプロトコルであり、σ-gate はそれらが通過するゲートです。
- vrp — 価値ルーティング(摩擦を最小限に抑えたマルチホップ決済)
- crp — ケイパビリティルーティング(タスクを最適な AI 基盤にルーティング)
- vtc — 検証可能なトランザクションチェーン(誰もが信頼不要で検証できる、署名付きの価値の約束)
- sid — 自己主権型アイデンティティ(1 つの主張を証明し、それ以外は一切明かさない)
- sigma-gate — 決定論的な信頼判定(このリポジトリ)
ライセンス
Apache-2.0 — LICENSE をご覧ください。
Spektre Labs の一部 — コヒーレンス理論の研究所。
σ = declared − realized · 1 = 1 を実行可能に。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。