最終更新著者 OpenClaw Guide
OpenClaw マルチエージェント YAML 設定(config.yaml / agents.yaml)
このガイドでは、1 インスタンスで複数 agent を動かす 方式を説明します。
1 つの OpenClaw gateway の中で、複数 agent を YAML で定義し、それぞれに workspace、persona、model、permissions、memory、routing 条件を持たせます。
1. 2 つのマルチエージェント構成
Option A: 1 インスタンスのマルチエージェント(推奨)
- gateway プロセスは 1 つ
- YAML で複数 agent を定義
- channel / user / group / keyword でルーティング
- 運用が簡単で、リソースも節約しやすい
Option B: 複数インスタンス連携
- OpenClaw を複数プロセスで分ける
- port / workspace を分離する
- webhook、DB、orchestrator で連携する
- 強い分離が必要なとき向け
2. なぜ YAML が向いているか
- persona、model、permission、memory などの項目が繰り返しになりやすい
- 階層構造を YAML の方が読みやすい
- ドキュメント化や copy / paste 導入と相性が良い
3. 推奨ファイル配置
~/.openclaw/config.yaml~/.openclaw/openclaw.json~/.openclaw/.env~/openclaw-workspaces/<agent>~/.openclaw/agents/<agent>
4. 最小の config.yaml 例
YAML
agents: list: - id: home-personal name: Home Assistant default: true workspace: ~/openclaw-workspaces/home agentDir: ~/.openclaw/agents/home model: primary: anthropic/claude-3-5-sonnet-20241022 persona: role: "Warm, humorous home butler" permissions: allowedCommands: [ls, cat, echo, open, git status] - id: work-coding name: Code Master workspace: ~/openclaw-workspaces/work agentDir: ~/.openclaw/agents/work model: primary: anthropic/claude-opus-4-5 persona: role: "Rigorous engineer" bindings: - agentId: work-coding match: channel: telegram keywords: ["code", "debug", "fix bug"] - agentId: home-personal match: {}5. 適用手順
Step 1: config.yaml を作る
Command
mkdir -p ~/.openclawnano ~/.openclaw/config.yamlStep 2: workspace と agentDir を作る
Command
mkdir -p ~/openclaw-workspaces/{home,work}mkdir -p ~/.openclaw/agents/{home,work}Step 3: secrets を .env に置く
Command
nano ~/.openclaw/.envStep 4: 再起動して読み込みを確認する
Command
openclaw gateway restart --verboseログで loaded config.yaml や registered agents のような出力を確認してください。
Step 5: routing を試す
- Telegram の coding 系メッセージ ->
work-coding - それ以外の通常メッセージ ->
home-personal
6. routing 設計のコツ
- 上から順にマッチする前提で、具体的な条件を先に置く
- あいまいすぎる keyword を避ける
- 高リスク agent は user / account 制限も併用する
7. agentDir に置くと便利な 3 ファイル
SOUL.md: persona と境界USER.md: 言語、timezone、作業スタイルAGENTS.md: agent 間の引き継ぎルール
8. 典型的なトラブル
- bindings の順序が悪く、意図した agent に当たらない
- memory や vector store を共有して混線する
- 高価な model を default にしてコストが跳ねる
- permissive すぎる command allowlist で権限が漏れる
9. セキュリティの基本
- agent ごとに least privilege を徹底する
- グループチャットでは @mention 必須にする
- write / exec 能力を持つ agent には user allowlist をかける
- admin port を公開しない