エージェントハーネス入門:なぜ注目されるのか、どう作ってどう運用するのか
「エージェントを作ったけど、運用が不安…」という方向けに、エージェントハーネスの考え方をやさしく整理します。
1. まず「エージェントハーネス」って何?
ひとことで言うと、LLMエージェントを安全に・安定して動かすための制御層です。
モデル本体が「考える脳」なら、ハーネスは「安全装置つきの実行エンジン」です。
たとえば、次のような役割を担います。
- どのツールをいつ呼ぶか決める
- 失敗したらリトライ/停止/人に確認へ切り替える
- どこで失敗したかログ・トレースに残す
- 危険な操作をブロックする
2. なぜ今こんなに注目されているの?
最近注目が集まる理由は、だいたい次の4つです。
-
「回答生成」より「タスク実行」が増えたから
ツール連携・handoffが前提の実装が一般化し、モデル単体より“実行の設計”が成果を左右するようになりました。 -
障害の原因が複雑化したから
失敗は文章品質だけでなく、外部ツールや権限、ネットワークでも起きます。可観測性がないと原因を追えません。 -
接続先が増えたから(MCPなど)
接続の自由度が上がる一方で、認可・ネットワーク境界の設計ミスがそのままリスクになります。 -
評価が「システム全体」になったから
いまはモデル精度だけでなく、ワークフローの完成度や運用品質まで含めて評価されます。
3. どう作る?(最小構成 → 本番構成)
3.1 最小構成(まずはここから)
最初は、次の5点があれば十分です。
- Planner: タスク分解
- Tool Router: ツール選択
- Executor: タイムアウト/リトライ制御
- State Store: 中間状態の保存
- Trace Sink: 実行ログ・トレース蓄積
ポイントは、「途中で止まっても再開できる」設計を最初から入れることです。
3.2 本番で効いてくる機能
A. 再開可能性(Durability)
- ステップごとにチェックポイント
- 失敗時は直前から再開
- 人手レビュー待ちで一時停止可能
B. 可観測性(Tracing + Metrics)
最低限、次を取っておくと改善しやすくなります。
- 推論/ツール呼び出しの時間
- タスク成功率
- コスト(トークン/API)
- 失敗ループ回数
C. 安全制御(Policy)
- ツールごとの権限最小化
- 高リスク操作は承認必須
- 機密情報の出力フィルタ
- 実行環境の通信制限
D. 変更管理(Release)
- モデル更新は段階的に展開
- canaryで先に小さく検証
- 回帰テストを通ってから本番へ
4. どう運用する?(SRE寄りの実践)
4.1 まず決めたいKPI
| カテゴリ | KPI例 | 見るポイント |
|---|---|---|
| 信頼性 | タスク成功率 | 業務要件に対して十分か |
| 速度 | P95完了時間 | ユーザー体験を損ねないか |
| コスト | 1タスク単価 | 増加トレンドがないか |
| 安全性 | ポリシー違反率 | 0に近づいているか |
| 保守性 | 再現不能障害率 | 追跡可能性が確保できているか |
4.2 日次・週次で回すと安定する
- 日次: 失敗トレース上位の確認、異常コストの洗い出し
- 週次: 回帰評価、設定差分監査、障害ふりかえり
4.3 インシデント時の確認順
- 影響範囲(誰に、いつまで影響したか)
- 失敗したステップ(どこで脱線したか)
- 原因分類(モデル/ツール/権限/ネットワーク)
- 再発防止(ポリシー追加、権限分離、フロー修正)
5. よくある懸念点と対策
5.1 Prompt Injection
エージェントでは、Injectionが「誤回答」だけでなく誤操作に直結しやすいのが厄介です。
対策の基本は次の3つです。
- 命令とデータを分離する
- 最終権限はコード側で判定する
- 高権限ツールは承認フローを通す
5.2 MCP連携のリスク
外部連携が増えるほど便利になりますが、同時に攻撃面も広がります。
トークン管理・URL検証・プライベートネットワーク保護を標準運用に組み込みましょう。
5.3 ベンチマークと本番は違う
公開ベンチで高スコアでも、本番ではSLA・権限設計・監査要件が効いてきます。
「評価セット」と「実運用メトリクス」の二重管理が現実的です。
5.4 監査・コンプライアンス
生成AI運用では、精度だけでなく、ガバナンスや測定プロセスが求められます。
ハーネスは、それをシステムとして実装するための中心部です。
6. 90日ロードマップ(POC→Pilot→Production)
ここは「まず何から始めるか」が迷いやすいので、フェーズごとに成果物と合格条件(Gate)を明確にします。
フェーズ全体像
| 期間 | フェーズ | 目的 | 主な成果物 |
|---|---|---|---|
| Day 0–21 | POC | 技術成立性の確認 | 最小ハーネス、評価セットv1、トレース可視化 |
| Day 22–49 | Pilot | 小規模運用での有効性確認 | 承認フロー、運用Runbook、SLO草案 |
| Day 50–90 | Production | 本番安定化と段階展開 | canary運用、回帰自動化、監査ログ運用 |
Day 0–21(POC: 技術成立性を検証)
目標
- 「この業務にエージェントハーネスが有効か」を短期間で判断する
実施項目
- 対象ユースケースを1〜2件に限定(例: 問い合わせ一次対応、定型レポート作成)
- 最小構成(Planner / Router / Executor / State / Trace)を実装
- 代表タスク20〜30件で評価セットv1を作成
- 失敗分類(モデル判断/ツール失敗/権限/入力品質)を定義
成果物
- POC版ハーネス(単一環境で再現可能)
- トレースダッシュボード(最低: 実行時間・成功/失敗・失敗理由)
- 評価レポートv1(成功率、平均時間、1タスクコスト)
Gate(次フェーズへ進む条件)
- タスク成功率: 70%以上(POC基準)
- 重大インシデント(誤操作/機密漏えい): 0件
- 失敗の80%以上が再現・分類できる
Day 22–49(Pilot: 小規模運用で現実適合性を確認)
目標
- 実運用に近い条件で、品質・安全性・運用負荷を確認する
実施項目
- 対象を1チーム/一部ユーザーへ限定公開
- 高リスク操作に承認フロー(Human-in-the-loop)を導入
- 権限を最小化(ツール別RBAC、実行環境の通信制限)
- 日次運用(失敗上位レビュー、異常コスト監視)を定着
- 障害対応Runbookとオンコール手順を整備
成果物
- Pilot版運用手順書(Runbook)
- KPI週次レポート(成功率/P95時間/コスト/違反率)
- 主要障害のポストモーテム雛形
Gate
- タスク成功率: 85%以上
- P95完了時間: 目標SLOの1.2倍以内
- ポリシー違反率: 0.5%未満
- 重大障害時の一次復旧時間(MTTR): 60分以内
Day 50–90(Production: 安定運用と拡張)
目標
- 変更に強く、安全にスケールできる本番運用へ移行する
実施項目
- canaryリリース(5%→25%→50%→100%)を標準化
- 回帰テスト自動化(代表タスク + 既知失敗ケース)
- モデル/プロンプト/ツール定義の差分監査を週次化
- 監査ログ(誰が何を実行し、何が起きたか)を長期保管
- コスト最適化(モデル振り分け、再試行回数、キャッシュ)
成果物
- 本番リリース手順(ロールバック条件つき)
- 回帰テストパイプライン
- 月次運用報告(SLO達成率、改善計画)
Gate(本格展開の条件)
- タスク成功率: 92〜95%以上(業務要件で確定)
- ポリシー違反率: 0.1%未満
- 重大障害の再発率: 前月比で減少
- 監査要求に対して証跡を即時提出可能
補足:POCが失敗したときの判断基準
POCで成果が出ない場合は「中止」よりも「適用範囲の見直し」が有効です。
- タスク分解が難しい業務は、まず人間主導+部分自動化へ切り替える
- 外部依存が多い業務は、MCP接続先を絞って再評価する
- 精度不足なら、モデル変更前に入力設計とツール契約(I/Oスキーマ)を先に改善する
7. まとめ
エージェントハーネスは、モデルの“おまけ”ではなく、AIを本番運用するための土台です。
- 構築は「実行・安全・観測・変更管理」の4層で考える
- 運用はKPIと回帰評価を軸に小さく改善し続ける
- リスクはPrompt Injectionと外部接続面の拡大を中心に設計で抑える
まずは最小構成で作り、トレースを見ながら段階的に育てるのが最短ルートです。
参考文献
- OpenAI, Agents SDK
https://developers.openai.com/api/docs/guides/agents-sdk - OpenAI Agents SDK Docs, Tracing
https://openai.github.io/openai-agents-js/guides/tracing/ - Anthropic Docs, Computer use tool
https://platform.claude.com/docs/en/agents-and-tools/tool-use/computer-use-tool - LangGraph Docs, Durable execution
https://docs.langchain.com/oss/python/langgraph/durable-execution - SWE-bench, SWE-bench Verified
https://www.swebench.com/verified.html - NIST, AI RMF: Generative AI Profile (NIST AI 600-1)
https://doi.org/10.6028/NIST.AI.600-1 - Model Context Protocol, Security Best Practices
https://modelcontextprotocol.io/docs/tutorials/security/security_best_practices - Anthropic, Donating the Model Context Protocol and establishing the Agentic AI Foundation
https://www.anthropic.com/news/donating-the-model-context-protocol-and-establishing-of-the-agentic-ai-foundation - OWASP Foundation, Top 10 for LLM Applications / GenAI Security Project
https://owasp.org/www-project-top-10-for-large-language-model-applications/
Rui Software