hachiman
Hachiman Agent
デプロイ前にスキャン。アクセス前に認可。実行中は監視。 侵害時は封じ込め。すべてを報告。
Hachiman は、AI エージェントと Model Context Protocol (MCP) のための自律型セキュリティレイヤーです。 エージェントと MCP サーバーの間にワイヤ互換のゲートウェイとして介在し、 あらゆるツール呼び出しをセキュリティ上の決定として扱います — モデルではなく、常に。
LLM は意図的にセキュリティの権威ではありません。Hachiman は構造化されたエビデンス(認可付与、データ分類、宛先、インジェクションシグナル、挙動、トラスト状態)から決定的に判断し、セマンティック分析は検証・クランプ・エビデンスのみに限定されたアドバイザーとしてのみ使用します。
ランタイム依存関係ゼロで構築: Node.js ≥ 22.5 (node:sqlite, node:test)、純粋な ESM。
Windows、Linux、macOS で同一に動作 — ワンプロンプトのインストール契約については AI-BUILDER.md を参照してください。あらゆる AI コーディングエージェントが任意の OS で実行できます。
クイックスタート
Hachiman はこの git リポジトリ経由でのみ配布されています — npm やパッケージレジストリには公開されていません。 クローンして、クローン内からすべてを実行してください:
git clone https://github.com/nidhish28guhan-netizen/hachiman-agent.git
cd hachiman-agent以下のすべてのコマンドは、シェルがクローンした hachiman-agent ディレクトリ内にあることを前提としています。
# Requirement: Node.js >= 22.5 (Hachiman uses node:sqlite and node:test)
node --version
# Universal installer: health check + config + engine self-test (any OS)
node scripts/install.js
# Full suite: unit + golden + corpus + property + e2e
npm test
# The A→Z story: scan → authorize → block → quarantine → report
npm run demo
# Security Protection Overhead benchmark (micro)
npm run spo
# CLI reference
node bin/hachiman.js help注: 上記のコメントは意図的に独立した行にあります — デフォルトの zsh (macOS) では、コマンドと同じ行にある末尾の
#はコメントとして扱われません。コマンドは行単位、またはブロック全体でコピーしてください。シェルのコメントをコマンド行に混在させないでください。
npm installステップは不要です — ランタイム依存関係はゼロです。git リポジトリが唯一の情報源です。 ダウンロード/zip 配布物はありません。常にこのリポジトリのクローンから操作してください。正確で完全なテスト済みツリー(ソース、テスト、フィクスチャ、ポリシーパック、ドキュメントが一体となったもの)を保持できます。
Related MCP server: Guardpost MCP Server
AI ビルダー内での Hachiman(Claude、Codex、Hermes、OpenClaw など)
Hachiman は、あらゆる OS 上の AI コーディングビルダー内からインストールおよび操作できるように設計されています。 すべての統合は標準的なメカニズムのみを使用します — シェル、MCP stdio、または MCP-over-HTTP。SDK も、プラグインも、プラットフォームのフォークも不要です。 ターミナルコマンドを実行できるもの、または MCP を話せるものはすべて Hachiman を使用できます。
AI ビルダーが果たせる役割は2つあり、単一のプラットフォームが両方を果たせます:
役割 | 意味 | メカニズム |
インストーラー / オペレーター | AI ビルダーがお使いのマシンに Hachiman をインストールして実行します | ターミナルアクセスあり → |
保護対象クライアント | AI ビルダーが保護対象のエージェントであり、そのツール呼び出しが Hachiman ゲートウェイを通過します | プラットフォームの MCP 設定に stdio ブリッジ または HTTP エンドポイント を登録 |
対応 AI ビルダー — 互換性マトリクス
AI ビルダー | ベンダー | Windows | macOS | Linux | Hachiman のインストール | 保護対象クライアント |
Claude Code | Anthropic | ✅ | ✅ | ✅ | ✅ (ターミナル) | ✅ MCP stdio/HTTP |
Claude Desktop | Anthropic | ✅ | ✅ | ✅ | — | ✅ MCP stdio |
Codex CLI | OpenAI | ✅ | ✅ | ✅ | ✅ (ターミナル) | ✅ MCP stdio/HTTP |
Cursor | Anysphere | ✅ | ✅ | ✅ | ✅ (ターミナル) | ✅ MCP stdio/HTTP |
Windsurf | Codeium | ✅ | ✅ | ✅ | ✅ (ターミナル) | ✅ MCP stdio/HTTP |
GitHub Copilot / VS Code agent | GitHub / Microsoft | ✅ | ✅ | ✅ | ✅ (ターミナル) | ✅ MCP stdio/HTTP |
Gemini CLI | ✅ | ✅ | ✅ | ✅ (ターミナル) | ✅ MCP stdio/HTTP | |
Hermes | Nous Research | ✅ | ✅ | ✅ | ✅ (ターミナル) | ✅ MCP stdio/HTTP |
OpenClaw | community | ✅ | ✅ | ✅ | ✅ (ターミナル) | ✅ MCP stdio/HTTP |
DeepSeek Harness | DeepSeek | ✅ | ✅ | ✅ | ✅ (管理ジョブ) | ✅ MCP stdio/HTTP |
Qoder | Alibaba | ✅ | ✅ | ✅ | ✅ (ターミナル) | ✅ MCP stdio/HTTP |
Aider | community | ✅ | ✅ | ✅ | ✅ (ターミナル) | シェルコマンド (MCP なし) |
MCP を話すその他すべて | — | ✅ | ✅ | ✅ | ✅ シェルがあれば | ✅ MCP stdio/HTTP |
(すべての環境での要件: Node.js ≥ 22.5。MCP 設定ファイル名とスキーマはプラットフォームのバージョン間で進化します。 プラットフォーム独自のドキュメントが異なる場合は、プラットフォームのドキュメントを信頼してください — 以下のブリッジコマンドと環境変数は決して変わりません。)
ステップ 0 — すべてのプラットフォームで同じ開始
git clone https://github.com/nidhish28guhan-netizen/hachiman-agent.git
cd hachiman-agent
node scripts/install.jsステップ 1 — AI ビルダーにインストールと検証を任せる(プロンプトを1つ貼り付ける)
クローンしたディレクトリ内で AI ビルダーを開き(またはパスを伝え)、AI-BUILDER.md §1 のワンプロンプトブロックをそのまま貼り付けます。ビルダーは Node をチェックし、インストーラーを実行し、ガードを起動し、完全なテストスイートを実行します — 機械可読な成功基準(RESULT: READY on <os>、HACHIMAN GUARD ACTIVE、# fail 0)付きで。これは Claude Code、Codex CLI、Cursor、Windsurf、Copilot、Gemini CLI、Hermes、OpenClaw、DeepSeek Harness、Qoder、Aider で同一です — すべてターミナルアクセスを備えています。
ステップ 2 — ビルダー用のセッションを発行する
各ビルダー(または各人間+ビルダーのペア)は、独自のスコープ付き・期限付き ID を取得します:
node bin/hachiman.js agent add claude-code --allow notes,search --ttl 24これにより sessionToken(hsm_…)が出力されます。それをステップ 3 のプラットフォーム設定に入れます。
ステップ 3 — ビルダーをゲートウェイに配線する(プラットフォーム別ガイド)
ユニバーサルブリッジブロック(JSON ボディはどこでも同じ — 置き場所だけが異なります):
"hachiman-notes": {
"command": "node",
"args": ["/full/path/to/hachiman-agent/bin/hachiman.js", "bridge", "notes"],
"env": {
"HACHIMAN_GATEWAY": "http://127.0.0.1:7420",
"HACHIMAN_SESSION": "hsm_XXXXXXXXXXXX.XXXXXXXXXXXX"
}
}Claude Desktop — claude_desktop_config.json の mcpServers 内にブロックを追加します
(macOS: ~/Library/Application Support/Claude/、Windows: %APPDATA%\Claude\):
{ "mcpServers": { "hachiman-notes": { "command": "node", "args": ["/full/path/to/hachiman-agent/bin/hachiman.js", "bridge", "notes"], "env": { "HACHIMAN_GATEWAY": "http://127.0.0.1:7420", "HACHIMAN_SESSION": "hsm_XXXXXXXXXXXX.XXXXXXXXXXXX" } } } }Claude Code — リポジトリディレクトリから:
claude mcp add hachiman-notes \
--env HACHIMAN_GATEWAY=http://127.0.0.1:7420 \
--env HACHIMAN_SESSION=hsm_XXXXXXXXXXXX.XXXXXXXXXXXX \
-- node /full/path/to/hachiman-agent/bin/hachiman.js bridge notesCodex CLI — ~/.codex/config.toml:
[mcp_servers.hachiman_notes]
command = "node"
args = ["/full/path/to/hachiman-agent/bin/hachiman.js", "bridge", "notes"]
[mcp_servers.hachiman_notes.env]
HACHIMAN_GATEWAY = "http://127.0.0.1:7420"
HACHIMAN_SESSION = "hsm_XXXXXXXXXXXX.XXXXXXXXXXXX"Cursor — 設定 → MCP → サーバーを追加(またはプロジェクト内の .cursor/mcp.json)、同じ JSON ブロック。
Windsurf — 設定 → Cascade → MCP サーバー、同じブロック。 Gemini CLI —
~/.gemini/settings.json、mcpServers キー、同じブロック。 GitHub Copilot / VS Code —
.vscode/mcp.json:
{
"servers": {
"hachiman-notes": {
"type": "stdio",
"command": "node",
"args": ["/full/path/to/hachiman-agent/bin/hachiman.js", "bridge", "notes"],
"env": {
"HACHIMAN_GATEWAY": "http://127.0.0.1:7420",
"HACHIMAN_SESSION": "hsm_XXXXXXXXXXXX.XXXXXXXXXXXX"
}
}
}
}Hermes / OpenClaw / Qoder / DeepSeek Harness — 2つのオプションがあり、両方ともサポートされています:
HTTP エンドポイント(プラットフォームが MCP-over-HTTP をサポートする場合):
http://127.0.0.1:7420/mcp/<server>を指定し、各リクエストにヘッダーx-hachiman-session: hsm_XXXXXXXXXXXX.XXXXXXXXXXXXを送信します。Stdio ブリッジ(プラットフォームが MCP サブプロセスを起動する場合): 上記のブリッジブロックを プラットフォームの MCP 設定に登録します — Claude/Cursor とまったく同じです。
完全なプラットフォーム別詳細、実機テスト済みの例、オペレーターチェックリスト:
Hachiman-Agnent-Guide.md §7–§10。
ステップ 4 — ビルダー内から検証する
AI ビルダーに、新しい hachiman-* サーバーを通じて任意のツールを呼び出させ、以下を確認します:
ツールが実行される(ALLOW)— Hachiman が決定をログに記録した、
ダッシュボード(
http://127.0.0.1:7420/、Mission Control)にリスク/信頼度付きの決定が表示される、node bin/hachiman.js audit --tail 20に追記専用の監査行が表示される。
呼び出しが -32088(BLOCK)または -32089(REVIEW)を返した場合、それは Hachiman が機能している証拠です:
エラーの reasons を読むか、ダッシュボードの Advisor を開いてください。各理由を正確な修正方法に対応付けています。
ステップ 5 —(任意)ビルダー内からの攻撃的スキル
ターゲットを所有し、書面で認可している場合、同じ AI ビルダーが Hachiman の認可済み攻撃的セキュリティスキルを実行できます — ビルダーは skill/SKILL.md に従います:
エンゲージメントファイル → pentest → 発見事項 → AI 修復契約 → retest → VERIFIED になるまで。
2つの運用モード
デプロイ前 (WF-03)
DISCOVER → SCAN → TEST → SCORE → AUTHORIZE → DEPLOY
候補の MCP がエージェントに公開される前にスキャンします。スキャナーは機能面(egress、db、exec、filesystem、memory、auth model)を発見し、カタログから該当する制御されたテストのみを実行します: プロンプトインジェクションリレー、間接インジェクション→egress チェーン、過剰なエージェンシー、一括エクスポートの外部持ち出し、無制限の egress、パラメータスマイグリング、ツール偽装、偽造認証の欠陥、機能ドリフト、SQLi 面、パストラバーサル、シークレット露出。
11 次元の Production Safety Score(0–100)とステータスゲートでスコアリングします:
PRODUCTION_READY、PRODUCTION_READY_WITH_RESTRICTIONS、NOT_PRODUCTION_READY。認可: スキャン済み MCP を
TRUSTEDに昇格できるのはオペレーターのみであり、エージェントに何らかの機能を与えるのは人間の許可だけです。
ランタイム (WF-05/06)
MONITOR → DETECT → DECIDE → RESPOND → REPORT → REASSESS
ゲートウェイを通るすべての
tools/callは、固定パイプラインによって正規化・評価されます:IDENTITY → AUTHORIZATION (ハードゲート) → LEGITIMACY → CLASSIFY → INJECTION → POLICY → CACHE → RISK → DECIDE → (SEMANTIC) → AUDIT。3つの値は分離され、決して混同されません:
risk(0–100)、confidence(0–100%)、trust(0–100)。機密リソースの検証失敗時はフェイルクローズ。封じ込めはスティッキーかつ追記専用です。すべての決定は監査可能で説明可能です。
攻撃的スキル(認可済みターゲットのみ)
docs/06-MASTER-SECURITY-SKILL-ARCHITECTURE.md + docs/07-OFFENSIVE-SKILL-IMPLEMENTATION-PLAN.md
ウォッチマンは攻撃者のようにも考えます。認可済みターゲット(authorized_by、スコープ、予算を含むエンゲージメントファイル — すべてコードで強制)に対して、Hachiman は以下を実行します:
DISCOVER → MAP → HYPOTHESIZE → ATTACK → ADAPT → CHAIN → VALIDATE → EXPLAIN → FIX → RETEST同梱のラボターゲットで測定(npm run offense-bench): 完全な攻撃 → 証明 → 修正検証
ループ ~0.8 秒、8 リクエスト、0 トークン、3/3 の仮説が再現可能に確認、3/3 の修正が元の攻撃を修復済みビルドに対して再生して VERIFIED。このループは壊れた修正も検出します:
エクスプロイトを依然として許可する修正 → UNRESOLVED。正当な動作を壊す修正 →
REGRESSION(両方とも test/e2e/offensive-loop.test.js で実証済み)。
node bin/hachiman.js pentest examples/engagement.vuln-notes.json
node bin/hachiman.js findings | explain <id> | fix <id> | retest <id> --fixed vuln-notes-fixed
npm run offense-bench現在のスコープ: MCP サーバー / ローカル HTTP MCP エンドポイント、全 OS。モバイル/ゲーム/クラウド/k8s ファミリーは
文書化された拡張ポイントのみです — スキルはカバレッジを偽装しません。オペレータードキュメント: skill/SKILL.md。
リポジトリ構成
bin/hachiman.js CLI entry
lib/hachiman.js Root composition: assemble storage+engines+gateway+runtime+SRG
policies/*.hachiman.json Policy packs (default, high-security, strict) — hot-reload by version
packages/
core/ storage (SQLite/WAL, append-only audit), EventBus (bounded, shed ladder), utils
engines/ classifier, injection, identity (Ed25519+HMAC sessions), authorization (grants),
policy, risk, trust, semantic (validated advisory), decision pipeline
gateway/ MCP client (stdio/HTTP), normalize, metrics, the McpGateway itself
runtime/ BehaviorMonitor, ResponseEngine (6-level containment ladder)
srg/ Security Resource Governor (SENTINEL→WATCH→THREAT→INCIDENT→RECOVERY, budgets)
scanner/ surface mapper, test catalog, scoring, Scanner
reporting/ scan / incident / SPO statement renderers
benchmark/ scenario runner + SPO harness
cli/ `hachiman <command>`
dashboard/ local HTTP server + zero-dep SPA (SSE live events)
fixtures/ benign + malicious fixture MCPs, sink, attack corpus, golden decision set
docs/ 00 master plan → 05 feature backlog (the build plan this implements)
test/ unit, golden, corpus, property, e2eセキュリティモデルの概要
原則 | 適用 |
認可は厳格なゲートである | 許可なし ⇒ |
モデルは権威ではない | セマンティックアナライザの出力はクランプされ、証拠のみに基づき、決定を厳しくすることしかできず、緩めることは決してない。 |
リスク / 信頼度 / 信頼の区別 | 個別に計算され、個別に報告される。単一の魔法の数値が単独で決定することはない。 |
フェイルクローズ | 機密リソースでの検証失敗 → |
封じ込めは粘着的 | 隔離はオペレータが解除するまで、その後のすべての決定を上書きする(復旧 = 再スキャン → 再認可)。 |
監査は追記のみ |
|
ポリシーはデータとして、ホットリロード | ルールパックはバージョン管理され、最も厳格な一致決定が優先され、フロアがデルタを支配する。 |
弱体化のない効率性 | 決定キャッシュはコンテンツシグナル(インジェクション + 分類はフィンガープリントに依存)、SRG 予算、セマンティックスロットの並行性に基づいてキー設定される。 |
CLI
hachiman init
hachiman guard [--port N] [--once] # protect configured MCPs (gateway + runtime + dashboard)
hachiman status
hachiman scan <target> --fixture <name> [--production] [--suite AI,MCP,APP]
hachiman mcp list | allow <mcp> | deny <mcp>
hachiman trust <subject>
hachiman threats | quarantine <mcp:subj> [--reason R] | quarantine release <mcp:subj>
hachiman audit [--tail N] | report scan <id> | report incident <id> | report production <target>
hachiman dashboard [--port N]
hachiman config get|set <dotted.key> [json]scan … --production は、ターゲットが PRODUCTION_READY でない場合に非ゼロで終了する(CI ゲート)。
テストとベンチマーク
npm run test:unit # engines + core + srg
npm run test:golden # locked deterministic decisions (regression guards)
npm run test:corpus # attack corpus + benign baseline: detection ≥95%, FP ≤2%
npm run test:e2e # scanner + guarded gateway end-to-end
npm run test:property # fuzz determinism + structural invariants
npm run spo # Security Protection Overhead statementマイクロ SPO ワークロード(このマシン)で報告:脅威防止 100%(すべての攻撃を阻止、誤検知 0)、決定論的高速パス 100%、セマンティック呼び出し 0%、ループバック MCP 上の P95 レイテンシオーバーヘッドは数ミリ秒のオーダー。SPO の記述はワークロードごとに測定され、普遍的な保証として宣伝されることは決してない。
非目標
Hachiman は、汎用 LLM ファイアウォール、プロンプトリライター、またはサンドボックス化されたコード実行環境を目指すものではない。MCP を話すエージェントのツールアクセスとデータ移動を、決定論的で説明可能かつ監査可能な決定で統治する。明示的な非目標と MoSCoW バックログについては docs/05-FEATURE-BACKLOG.md を参照。
設計ドキュメント
このリポジトリが実装するビルド計画は docs/ にある:
00-MASTER-PLAN.md— ビジョン、マイルストーン、KPI01-IMPLEMENTATION-ARCHITECTURE.md— モジュール仕様、データモデル、SQLite スキーマ、API サーフェス02-WORKFLOWS.md— WF-01…WF-10 シーケンスと決定テーブル03-OPTIMIZATION.md— トークン効率、SRG 予算、キャッシュ04-TESTING-AND-BENCHMARKING.md— テストピラミッド、攻撃コーパス、SPO ハーネス05-FEATURE-BACKLOG.md— MoSCoW バックログ、非目標06-MASTER-SECURITY-SKILL-ARCHITECTURE.md— 攻撃的スキルのビジョン(認可されたターゲット)07-OFFENSIVE-SKILL-IMPLEMENTATION-PLAN.md— 構築されるもの、モジュールマップ、フェーズ、正直な非目標08-HACHIMAN-2.0-ARCHITECTURE.md— リポジトリ監査 + ユニバーサルコントロールプレーン計画(Hachiman 2.0)
ライセンスとクレジット
開発者: Nidhish Guhan ライセンス: MIT — LICENSE を参照。Copyright © 2026 Nidhish Guhan。
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- FlicenseNot gradedqualityNot gradedmaintenanceA transparent proxy and execution firewall that intercepts and audits AI agent tool calls against configurable security policies before forwarding them to downstream MCP servers. It provides safe execution environments with features like data redaction, anti-loop protection, and unified alert dispatching.
- FlicenseNot gradedqualityBmaintenanceRuntime agent firewall for PII redaction, rate limits, and policy enforcement, enabling autonomous agent security via MCP integration.
- AlicenseNot gradedqualityCmaintenanceAn MCP server that enforces runtime governance on AI agent actions — file access, command execution, delegation chains, and permission escalation.MIT

evav-gatewayofficial
AlicenseNot gradedqualityBmaintenanceGoverned MCP gateway that lets AI agents call tools with policy enforcement, prompt-injection screening, a kill-switch, and tamper-evident signed audit logs.Apache 2.0
Related MCP Connectors
Security firewall for AI agents — scans MCP calls for injection, secrets, and risks.
MCP-native Trust Infrastructure for AI Agents. Persistent encrypted memory with Trust Quotient.
Control plane for autonomous software labor. Agents claim objectives over MCP with audit trail.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/nidhish28guhan-netizen/hachiman-agent'
If you have feedback or need assistance with the MCP directory API, please join our Discord server