Claude Code × ローカルLLM 自律エージェント構築ガイド
整理日: 2026-03-16
#プログラミング #ClaudeCode #MCP #リファレンス
調査日: 2026-03-15 関連: [[Claude Agent SDK]] / [[Claude Code - Hooks Subagents Skills]] / [[Claude Code MCP サーバー管理]] / [[MCPサーバーおすすめまとめ]]
概要
Claude Code(CLI)とローカルLLM(Ollama)を組み合わせて、OpenClawのような自律エージェントを安全に構築する方法の調査結果。対象環境はNZXT PC(i7-10700, 64GB RAM, RTX A4000 16GB VRAM)。
構造図
flowchart TD
A["1-2. サブエージェント"]
A --> B["活用例(破壊的操作のブロック):"]
B --> C["Firecracker MicroVM"]
C --> D["応答する"]
D --> E["`Stop`: セッション終了時"]
E --> F["OpenClaw(https://github.com/.."]
style F fill:#c05746,color:#fff,stroke:none
1. Claude Code自体のエージェント機能
1-1. Claude Agent SDK(旧 Claude Code SDK)
Claude Agent SDK は2025年5月に「Claude Code SDK」として発表され、2025年9月に改名された。Python / TypeScript 両方に対応し、Claude Code と同じツール・エージェントループ・コンテキスト管理をプログラマブルに利用できる。
主な機能:
- 自律的なファイル読み書き、コマンド実行、Web検索、コード編集
- サブエージェントによるタスク委譲
- バックグラウンドタスクで長時間実行プロセスを維持
- headlessモード(
-pフラグ)でCI/CDパイプラインに統合可能
使い方(headlessモード):
# 非対話的にタスクを実行
claude -p "このプロジェクトのテストを全て実行して、失敗したテストを修正して"
| 評価項目 | 評価 | |---------|------| | 実現難易度 | 低 | | 安全性 | 高 | | コスト | 有料(Claude API課金) |
1-2. サブエージェント
YAML frontmatter付きMarkdownファイルでカスタムエージェントを定義。ツール制限、MCP統合、Hooks対応。
設定例(.claude/agents/code-reviewer.md):
---
name: code-reviewer
description: コードレビュー専門。コード変更後に自動で呼び出す。
tools: Read, Grep, Glob, Bash
disallowedTools: Write, Edit
model: sonnet
permissionMode: plan
---
あなたはシニアコードレビュアーです。
git diff を実行して最近の変更を確認し、
品質・セキュリティ・ベストプラクティスの観点でレビューしてください。
重要なフィールド:
tools/disallowedTools: ツールのホワイトリスト/ブラックリストmodel:sonnet,opus,haiku,inheritまたはフルモデルIDpermissionMode:default,acceptEdits,dontAsk,bypassPermissions,planmcpServers: サブエージェント専用のMCPサーバー定義hooks: ライフサイクルフック(PreToolUse, PostToolUse等)memory:user,project,local(永続メモリ)isolation:worktree(git worktreeで隔離実行)background:trueでバックグラウンド実行
| 評価項目 | 評価 | |---------|------| | 実現難易度 | 低 | | 安全性 | 高(ツール制限・Hooks) | | コスト | 有料(Claude API課金) |
1-3. Agent Teams(実験的機能)
複数のClaude Codeセッションがチームとして並列動作し、相互通信できる。
- リードエージェントがタスクを分配・調整
- チームメイトが独立して作業し、発見を共有
- サブエージェントと違い、エージェント同士が直接メッセージを送れる
有効化:
{ "CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS": "1" }
| 評価項目 | 評価 | |---------|------| | 実現難易度 | 中(実験的機能) | | 安全性 | 高 | | コスト | 有料(複数セッション分の課金増) |
1-4. Hooks(ライフサイクル自動化)
シェルコマンドをClaude Codeのイベントに紐づけて自動実行。
主なイベント:
PreToolUse/PostToolUse: ツール実行の前後SubagentStart/SubagentStop: サブエージェントの開始・終了Stop: セッション終了時
活用例(破壊的操作のブロック):
{
"hooks": {
"PreToolUse": [{
"matcher": "Bash",
"hooks": [{
"type": "command",
"command": "./scripts/validate-safe-command.sh"
}]
}]
}
}
| 評価項目 | 評価 | |---------|------| | 実現難易度 | 低 | | 安全性 | 非常に高(決定論的制御) | | コスト | 無料(Claude Code標準機能) |
1-5. Claude Flow(Ruflo)
オープンソースのマルチエージェントオーケストレーションフレームワーク。GitHub 19K+ stars。
- Queen/Worker モデルで60+エージェントのスウォーム制御
- CRDT ベースの共有メモリ
- タスクスケジューラ(優先度キュー・依存関係追跡)
- RAG統合
| 評価項目 | 評価 | |---------|------| | 実現難易度 | 中〜高 | | 安全性 | 中 | | コスト | 有料(Claude API課金) |
2. ローカルLLMエージェントフレームワーク(RTX A4000 16GB対応)
2-1. フレームワーク比較表
| フレームワーク | 特徴 | ローカルLLM対応 | 難易度 | 安全性 | コスト | |-------------|------|---------------|--------|--------|--------| | OpenHands | Docker内自律コーディング(旧OpenDevin) | ○(ただし大型モデル推奨) | 低〜中 | 高(Docker sandbox) | 混合 | | CrewAI | ロールベースチーム、最速セットアップ | ○ | 低 | 中 | 混合 | | LangGraph | グラフベースワークフロー、ステートフル | ○ | 中〜高 | 中 | 混合 | | AutoGen | 非同期通信、アダプティブルーティング | ○ | 中 | 中 | 混合 | | smolagents | HuggingFace製、軽量、コードアクション | ○(Ollama直接統合) | 低〜中 | 中 | 無料 | | Aider | git統合AIペアプログラミング | ○ | 低 | 中 | 混合 | | Eigent | デスクトップ自動化、マルチエージェント | ○(Ollama対応) | 低 | 中〜高 | 無料 | | n8n | ビジュアルワークフロー + AI、400+連携 | ○(Ollama統合) | 低 | 中 | 無料 | | OpenClaw | 自律パーソナルエージェント(210K+ stars) | ○(モデル非依存) | 低 | 低〜中 | 混合 |
2-2. RTX A4000 16GBで動くモデル
| モデル | 量子化 | VRAM使用量 | 速度(tokens/s) | エージェント適性 | |--------|--------|-----------|---------------|---------------| | Qwen 3.5 9B | Q4_K_M | ~6.6GB | 50+ | ★★★ 推奨(軽量高性能) | | Qwen3 14B | Q4_K_M | ~10.7GB | 40+ | ★★★★ 最も実用的 | | DeepSeek-R1-Distill-14B | Q4_K_M | ~11GB | 40+ | ★★★ 推論特化 | | Llama 4 Scout 17B | Q4 | ~12GB | 35+ | ★★★ 新しめ | | Llama 3 8B | Q4_K_M | ~6GB | 50+ | ★★ 軽量 | | Mistral 7B | Q4_K_M | ~6GB | 64+ | ★★ 高速 | | Phi-4 14B | Q4_K_M | ~11GB | 40+ | ★★★ 汎用 | | Qwen 3.5 35B-A3B (MoE) | Q4_K_M | ~12GB | 高速 | ★★★★★ 最強候補(3Bアクティブ) |
推奨: エージェント用途には Qwen 3.5 35B-A3B(MoEで実質3Bアクティブ、256Kコンテキスト、ツールコール対応)が最強。次点で Qwen3 14B。
3. Claude Code + ローカルLLMのハイブリッド構成
3-1. アーキテクチャ概要
┌─────────────────────────────────────────┐
│ Claude Code(オーケストレーター) │
│ ・高度な判断・計画・複雑な推論 │
│ ・サブエージェント管理 │
│ ・MCP経由でローカルLLM呼び出し │
├─────────────────────────────────────────┤
│ MCP │
├──────────────────┬──────────────────────┤
│ Claude API │ Ollama (ローカル) │
│ (高性能) │ (無料・低レイテンシ)│
│ ・複雑な推論 │ ・単純な変換処理 │
│ ・コードレビュー │ ・テンプレート生成 │
│ ・アーキテクチャ │ ・データ抽出 │
│ 設計 │ ・繰り返しタスク │
└──────────────────┴──────────────────────┘
3-2. 具体的な連携方法
方法1: MCPサーバー経由 OllamaをMCPサーバーとしてラップし、Claude Codeのサブエージェントから呼び出す。
---
name: local-worker
description: ローカルLLMで処理する軽量タスク用ワーカー
mcpServers:
- ollama-mcp:
type: stdio
command: npx
args: ["-y", "ollama-mcp-server"]
tools: Read, Grep, Glob
model: inherit
---
軽量な処理タスクを担当。ローカルLLMのollama-mcp経由でテキスト処理を行う。
方法2: Claude Agent SDK + Ollama API PythonでClaude Agent SDKとOllama APIを組み合わせたカスタムオーケストレーターを構築。
方法3: n8n ワークフロー経由 n8nでClaude APIとOllamaノードを接続し、タスクの種類に応じてルーティング。
| 評価項目 | 評価 | |---------|------| | 実現難易度 | 中〜高 | | 安全性 | 中〜高(MCP経由で制御可能) | | コスト | 混合(Claude API + ローカルLLM無料) |
4. 安全性の考慮
4-1. サンドボックス技術の比較
| 技術 | 隔離レベル | 起動時間 | 適用場面 | |------|----------|---------|---------| | Docker | プロセス(カーネル共有) | ミリ秒 | 信頼できるコードのみ | | Docker Sandbox (Desktop 4.58+) | 専用Dockerデーモン | 秒単位 | AIエージェント実行 | | gVisor | システムコール遮断 | ミリ秒 | 計算集約タスク | | Firecracker MicroVM | ハードウェア(専用カーネル) | ~125ms | 本番の信頼不能コード | | Kata Containers | ハードウェア(K8s統合) | ~200ms | K8s環境 | | OpenSandbox (Alibaba, 2026/3) | 環境非依存 | 可変 | Docker/K8s両対応 |
4-2. Claude Code内蔵の安全機構
- ツール制限: サブエージェントに
tools/disallowedToolsで最小権限を付与 - permissionMode:
plan(読み取り専用)、dontAsk(未許可操作を自動拒否) - PreToolUse Hooks: 実行前にシェルスクリプトでバリデーション(exit code 2 でブロック)
- isolation: worktree: git worktreeで隔離されたリポジトリコピーで作業
- maxTurns: エージェントの最大ターン数を制限
4-3. 安全な自律エージェント構築の原則
- 多層防御: ガードレール(プロンプトレベル)+ サンドボックス(実行レベル)
- 最小権限: 各エージェントに必要最小限のツールのみ許可
- 段階的な自律性: まず
planモードで動かし、慣れたら権限を広げる - ログと監査: Hooksですべての操作をログ記録
- ネットワーク制限: Docker
--network=noneでネット遮断 - ファイルシステム制限: 特定ディレクトリのみマウント
4-4. OpenClawの教訓
OpenClaw(210K+ GitHub stars)は2026年1月にCVE-2026-25253(WebSocket乗っ取りによるRCE)が発見された。自律エージェントを運用する際は:
- WebSocket接続の認証を厳格に
- スキルリポジトリの悪意あるコードに注意
- エージェントの権限範囲を常に監査
5. 2026年3月時点のトレンド
最もホットなアプローチ
| ランク | プロジェクト | GitHub Stars | 特徴 | |-------|-------------|-------------|------| | 1 | OpenClaw | 210K+ | 自律パーソナルエージェント。最速で成長したOSSの一つ | | 2 | Claude Code Agent Teams | - (公式) | Anthropic公式のマルチエージェント(実験的) | | 3 | Claude Flow (Ruflo) | 19K+ | Claude中心のスウォームオーケストレーション | | 4 | OpenHands | 成長中 | Docker内自律コーディング | | 5 | n8n | 成長中 | セルフホスト自動化 + AI | | 6 | Docker Sandbox | - (公式) | AIエージェント安全実行の標準化 | | 7 | OpenSandbox | 新登場 | Alibaba発のサンドボックス標準 |
キートレンド
- AI が「応答する」から「行動する」へ - ほぼ全てのリポジトリが自律エージェント行動を組み込む
- セルフホスト・ローカル実行への強い需要 - プライバシー・コスト両面
- グラフベースオーケストレーション - LangGraph が先駆け、他も追随
- MoEモデルの台頭 - Qwen 3.5 35B-A3B のように少VRAMで高性能
推奨ロードマップ(kodachan向け)
Step 1: 今すぐ始める(難易度: 低)
Claude Code サブエージェント + Hooks
.claude/agents/にプロジェクト専用エージェントを定義- Hooksで安全ガードレールを設定
- headlessモードで定型タスクを自動化
Step 2: 短期(難易度: 低)
n8n + Ollama セルフホスト自動化
- Self-hosted AI Starter Kit(Docker Compose一発)で構築
- Qwen 3.5 9B または Qwen3 14B をOllamaで起動
- 日常の非コーディング自動化をローカルLLMで処理
Step 3: 中期(難易度: 中)
OpenHands でDockerサンドボックス開発
- Docker内で自律コーディングタスクを安全に実行
- Claude API keyで高品質な出力
- ローカルLLMも試せる(ただし性能は落ちる)
Step 4: 中〜長期(難易度: 中〜高)
Claude Code + MCPローカルLLMハイブリッド
- MCP経由でOllamaのモデルをワーカーとして統合
- 高度な判断はClaude、反復タスクはローカルLLM
- コスト最適化と性能のバランス