
オープンソースのAIセキュリティプラットフォーム。LLMやAIエージェントに対し、群解析、ポリシー適用、敵対的テスト、リアルタイム脅威検出を通じて境界防御を提供します。
AI のための境界セキュリティ。
ランタイム強制、ポリシー制御、そしてすべての AI アクションに対する完全な監査証跡。
ウェブサイト · クイックスタート · ポリシー · ダッシュボード · GitHub
AI エージェントはあなたのファイルを読み取り、コードをプッシュし、データベースにクエリを実行し、シェルコマンドを実行し、外部 API を呼び出すことができます。これらを自律的かつ機械的な速度で行います。
従来のセキュリティ制御は、そのために作られていませんでした。
Mastyf.ai は AI のための境界セキュリティ層として機能します。すべてのツールコールをインターセプトし、マルチエージェントスウォーム分析を使用してセキュリティポリシーに照らして評価し、悪意のあるまたは許可されていないアクションを実行前にブロックします。
すべての判断は強制され、ログに記録され、監査可能です。
リポジトリをクローンし、セットアップスクリプトを実行します。
必要条件:
git clone https://github.com/mastyf-ai/mastyf.ai.git
cd mastyf.ai
chmod +x setup.sh
./setup.sh
セットアップスクリプトは自動的に以下を行います:
mastyf シェルエイリアスを追加インストールが完了したら、プロキシとダッシュボードを起動します:
node dist/cli.js start
または、新しいターミナルを開いた後にエイリアスを使用します:
mastyf
ダッシュボードは以下で利用可能です:
ダッシュボードが実行中の場合、HTTP ブリッジを確認します:
curl -X POST http://localhost:4000/mcp -H "Content-Type: application/json" -d '{"jsonrpc":"2.0","id":"1","method":"tools/list","params":{}}'
AI が行うすべてのアクションを完全に可視化。
| セクション | 表示内容 |
|---|---|
| 保護 | ブロック率、上位トリガールール、脅威ライブフィード |
| アクティビティ | すべてのツールコール、完全な引数、許可/ブロックステータス、タイムスタンプ |
| ポリシー | YAML からのホットリロードをサポートするライブルールエディタ |
ダッシュボード認証を有効にせずにポート 4000 を公開しないでください。デフォルトのローカル開発設定では
DASHBOARD_AUTH_DISABLED=trueになっています。
すべてのツールコールは、インフラストラクチャに到達する前に3つのレイヤーを通過します。
レイヤー1 - パターン検出 インジェクション、危険なパス、リークしたシークレット、シェルコマンド、エンコーディングトリックを正規表現でスキャン。外部依存関係なしでマイクロ秒単位で実行。
レイヤー2 - スキーマ検証 不正なペイロード、過大な引数、JSON-RPC 違反をポリシー評価前に拒否。
レイヤー3 - 意味的レビュー オプションのローカル LLM(Ollama)またはクラウドモデルが、パターンチェックを通過した境界線上の呼び出しを評価。モデルが設定されていない場合はヒューリスティックにフォールバック。
失敗したものはすべてブロックされます。ツールは実行されません。すべてがログに記録されます。
ルールは default-policy.yaml にあります。あなたが所有します。mastyf.ai がそれを強制します。
policy:
mode: block
default_action: pass
unicode_strict: true
rules:
- name: block-sensitive-paths
action: block
argPatterns:
- field: path
patterns: ['^/etc/', '/\.ssh', '/\.aws/credentials']
- name: rate-limit-tool-calls
action: block
maxCallsPerMinute: 120
- name: block-shell-injection
action: block
patterns: ['rm\s+-rf', 'curl\s', 'wget\s', '`[^`]+`']
3つの強制モードで安全にロールアウト:
| モード | 動作 | 使用すべきタイミング |
|---|---|---|
audit | すべてをログに記録、何もブロックしない | 最初の週:AI が何をしているかを理解する |
HIPAA、PCI-DSS、GxP、データローカリティ用の事前構築済みテンプレートは policy-templates/ にあります。
mastyf.ai は2つの連携したスウォームを実行します。CI スウォームはコードが出荷される前にポリシーを攻撃します。ランタイムスウォームは本番環境でライブのツールコールごとに強制し学習します。4つのフィードバックループがそれらを接続し、システムが時間の経過とともにバイパスされにくくなります。
flowchart TB
AI["🤖 AI Clients\nCursor · Claude Desktop · Cline"]
subgraph CI["🔵 CI Swarm (PR + Nightly)"]
direction LR
Scout["🔍 Scout Agent\nSAST, deps, config scan"]
Corpus["📋 Corpus Agent\n228 fixtures eval"]
Evasion["⚡ Evasion Agent\n120+ probes + generate new"]
Parity["🔄 Parity Agent\nNode vs Python"]
ProxyA["🖥️ Proxy Agent\nLive stdio MCP tests"]
Report["📊 Report Agent\nsecurity-swarm/latest.json"]
Scout --> Corpus --> Evasion --> Parity --> ProxyA --> Report
end
subgraph Runtime["🟢 Runtime Swarm (Production Proxy)"]
direction LR
BG["🛡️ BlockGuard\nsync policy"]
IL["📈 InstantLearner\nper-block stats + suggestions"]
SA["🧠 SemanticAuditor\nasync LLM, optional"]
PS["🔗 PatternSynthesizer\nbatch suggestions"]
Cal["⚙️ Calibrator\nlabels + thresholds"]
BG --> IL --> PS --> Cal
BG --> SA --> PS
end
Tools["🗄️ MCP Tools\nfilesystem · GitHub · databases · APIs"]
AI -->|"every tool call"| BG
BG -->|"✅ allowed"| Tools
Report -->|"🔁 Loop A: bypasses to corpus"| Corpus
Cal -->|"🔁 Loop B: blocks to rules"| BG
Cal -->|"🔁 Loop C: labels to LLM"| SA
Report -->|"🔁 Loop D: CI metrics weekly"| Cal
style CI fill:#EFF6FF,stroke:#3B82F6,stroke-width:2px,color:#1E3A5F
style Runtime fill:#F0FDF4,stroke:#22C55E,stroke-width:2px,color:#14532D
style Scout fill:#DBEAFE,stroke:#3B82F6,color:#1E40AF
style Corpus fill:#DBEAFE,stroke:#3B82F6,color:#1E40AF
style Evasion fill:#DBEAFE,stroke:#3B82F6,color:#1E40AF
style Parity fill:#DBEAFE,stroke:#3B82F6,color:#1E40AF
style ProxyA fill:#DBEAFE,stroke:#3B82F6,color:#1E40AF
style Report fill:#DBEAFE,stroke:#3B82F6,color:#1E40AF
style BG fill:#BBF7D0,stroke:#16A34A,color:#14532D
style IL fill:#BBF7D0,stroke:#16A34A,color:#14532D
style SA fill:#BBF7D0,stroke:#16A34A,color:#14532D
style PS fill:#BBF7D0,stroke:#16A34A,color:#14532D
style Cal fill:#BBF7D0,stroke:#16A34A,color:#14532D
style AI fill:#FEF3C7,stroke:#F59E0B,stroke-width:2px,color:#78350F
style Tools fill:#FEF3C7,stroke:#F59E0B,stroke-width:2px,color:#78350F
正規ゲート: 228/228 コーパス、0 バイパス、100% パリティ
すべての PR およびナイトリーで実行。6つのエージェントが順番に動作し、それぞれが前の発見を強化します。
本番プロキシ内で各ツールコールごとに実行。
| コンポーネント | 説明 |
|---|---|
| BlockGuard | アクティブポリシーを同期的に各コールに強制。フェイルクローズ。 |
| InstantLearner |
プロキシは5つのトランスポートをサポート: stdio、HTTP、SSE、ストリーム可能な HTTP、WebSocket。
Redis、Postgres、Kubernetes を使用したエンタープライズデプロイメントについては、docs/ENTERPRISE_DEPLOYMENT.md を参照してください。
脅威ラボはライブトラフィックを監視し、疑わしいパターンを検出するとローカル LLM を使用して新しい攻撃テストケースを提案します。自動的に適用されることはありません。ダッシュボードで各提案を確認し、承認してからルールにします。
承認された発見は、継続的な回帰テストのために CI 攻撃コーパスにフィードバックされます。
ollama serve
ollama pull qwen3:8b
export OLLAMA_BASE_URL=http://127.0.0.1:11434
export MASTYF_AI_LLM_PROVIDER=ollama
export MASTYF_AI_LLM_MODEL=qwen3:8b
pnpm dashboard:proxy
npm から MCP サーバーをインストールする前に、https://www.mastyf.ai/certified で信頼スコアを確認してください。スコアは CVE 露出、タイポスクワッティングリスク、メンテナーシグナル、既知の攻撃パターンを網羅しています。無料、アカウント登録不要。
| 脅威 | 内容 |
|---|
| プロンプトインジェクション | エージェントの動作を乗っ取るためにツール引数に埋め込まれた悪意のある指示 |
| パストラバーサル | /etc/passwd、.ssh/id_rsa、.aws/credentials へのアクセス試行 |
| シークレットの流出 | ツール引数を介した API キーやトークンの漏洩 |
| シェルインジェクション | リバースシェル、rm -rf、エンコードされた PowerShell コマンド |
| データの流出 | 大量 SQL ダンプ、git push、aws s3 cp、許可されていないファイル転送 |
| SSRF | メタデータエンドポイント、localhost、プライベート IP 範囲への呼び出し |
| エンコーディングバイパス | パターン検出を回避するために使用される Base64 ブロブや Unicode ホモグリフ |
| コスト乱用 | トークン予算を消費する暴走エージェントループ |
| ラグプル攻撃 | セッション中に密かに変更されるツール定義 |
| 脅威ラボ | AI が提案する攻撃テスト。適用前に確認・承認が必要 |
| コスト | ツールコールごとのトークン使用量とコスト見積もり |
warn| ログに記録しフラグを立てるが、転送は継続 |
| 強制前の調整フェーズ |
block | 実行前に違反を停止 | 本番環境 |
| エージェント | 説明 |
|---|
| Scout | SAST スキャン、依存関係監査、設定レビュー |
| Corpus | 現在のポリシーに対して 228 すべての攻撃フィクスチャを評価 |
| Evasion | 120 以上のバイパスプローブを実行し、LLM を使用して新しいものを生成 |
| Parity | Node と Python の実装が同一の決定を生成することを検証 |
| Proxy | 実行中のプロキシインスタンスに対するライブ stdio MCP セッションテスト |
| Report | 完全な結果とメトリクスを含む security-swarm/latest.json を書き込み |
| ブロックごとの統計を追跡し、ルール提案をリアルタイムで表示 |
| SemanticAuditor | パターンチェックを通過したが疑わしい呼び出しに対するオプションの非同期 LLM レビュー |
| PatternSynthesizer | InstantLearner と SemanticAuditor からの提案をバッチ処理し、候補ルールを作成 |
| Calibrator | 候補にラベルを付け、しきい値を調整し、承認されたルールを BlockGuard にプロモート |
| ループ | シグナル | 効果 |
|---|
| A | CI でバイパス発見 | コーパスに追加、CI は永久に防御 |
| B | ランタイムブロックパターン | 新しいルールに合成、BlockGuard にプロモート |
| C | Calibrator ラベル | SemanticAuditor のしきい値を微調整するために使用 |
| D | CI メトリクス(週次) | ランタイム設定を更新 – CI と本番の同期を維持 |
| コマンド | 説明 |
|---|
node dist/cli.js start | プロキシとダッシュボードをポート 4000 で起動 |
node dist/cli.js onboard | MCP 設定をラップしてプロキシ経由でルーティング |
node dist/cli.js doctor | DB、ポリシー、環境のヘルスチェック |
node dist/cli.js scan --all | MCP 設定の CVE とインジェクションリスクをスキャン |
pnpm test | 全テストスイートを実行 |
pnpm security-swarm:fast | 迅速なセキュリティ回帰テスト、5〜15分 |
pnpm security-swarm:analyze | 完全な敵対的分析 |
| 問題 | 修正 |
|---|
| ダッシュボードにデータが表示されない | プロキシとダッシュボードは同じ MASTYF_AI_DB_PATH を共有する必要があります。デフォルトは ~/.mastyf-ai/history.db です |
dist/cli.js が見つからない | pnpm build を実行 |
| AI が依然としてツールに直接アクセスしている | node dist/cli.js onboard --apply を実行 |
| 起動時に Ollama の警告が表示される | ollama serve を実行するか、環境から MASTYF_AI_LLM_PROVIDER を削除 |
| npm install が失敗する | npm publish はまだ公開されていません。git clone と pnpm install を使用してください |