- ワークスペースの設計ファイル(AGENTS.md / SOUL.md / USER.md / MEMORY.md)でエージェントの振る舞いを完全に制御できる
- 適切なパーソナライゼーションにより、エージェントの出力品質が劇的に向上する
- チーム運用では、エージェントごとに専用ワークスペースを分離して管理するのがベストプラクティス
「AIエージェントを導入したけど、毎回同じ説明をしないと正しい出力が出ない」「チームメンバーによってエージェントの使い方がバラバラ」──こんな課題を感じたことはありませんか?
OpenClawのワークスペース設計を正しく行えば、エージェントはあなたの業務コンテキストを記憶し、毎回の指示なしに最適な振る舞いをしてくれるようになります。
前回のEp.8ではコスト最適化を解説しましたが、今回はその基盤となるワークスペースの設計パターンを徹底解説します。

1. ワークスペースとは何か
1.1 ワークスペースの役割
OpenClawにおける**ワークスペース(Workspace)**は、エージェントが動作する際の「ホームディレクトリ」です。エージェントはセッション起動のたびにワークスペース内の設定ファイルを読み込み、自分の役割・振る舞い・記憶を復元します。
ワークスペースの基本構造は以下の通りです。
~/.openclaw/workspace-myagent/
├── AGENTS.md # エージェントの行動規範
├── SOUL.md # 人格・トーン・専門性
├── USER.md # ユーザー情報
├── IDENTITY.md # 名前・絵文字・バイブス
├── MEMORY.md # 長期記憶
├── TOOLS.md # ツール固有の設定メモ
├── HEARTBEAT.md # 定期チェック項目
├── memory/ # 日次ログ
│ ├── 2026-03-04.md
│ └── 2026-03-05.md
└── skills/ # カスタムスキル
└── my-skill/
└── SKILL.md
1.2 設定ファイルの読み込み順序
エージェントがセッションを開始すると、以下の順序でファイルを読み込みます。
- SOUL.md – 人格と専門性を確認
- USER.md – ユーザー情報を把握
- memory/YYYY-MM-DD.md – 直近の日次ログ(今日+昨日)
- MEMORY.md – 長期記憶(メインセッションのみ)
この読み込み順序を理解することで、どのファイルにどの情報を書くべきかが明確になります。
2. AGENTS.md:エージェントの行動規範
2.1 AGENTS.mdの設計思想
AGENTS.mdは、エージェントの行動ルール・安全ポリシー・運用規約を定義する最も重要なファイルです。人間に例えると「社内規程」や「業務マニュアル」に相当します。
効果的なAGENTS.mdには、以下の要素を含めます。
# AGENTS.md
## セッション開始手順
1. SOUL.mdを読む
2. USER.mdを読む
3. 直近のmemory/ファイルを読む
## 安全ルール
- 機密データを外部に出さない
- 破壊的コマンドは実行前に確認する
- rm より trash を優先する
## コミュニケーション規約
- グループチャットでは必要な場合のみ発言
- リアクション絵文字を適切に使う
- 長時間タスクでは進捗報告を行う
## メモリ管理
- 重要な出来事はmemory/YYYY-MM-DD.mdに記録
- 定期的にMEMORY.mdを更新
2.2 SES現場での活用例
SES案件でOpenClawを使う場合、AGENTS.mdに案件固有のルールを追加すると効果的です。
## 案件固有ルール
- コードレビューでは必ずセキュリティ観点を含める
- ドキュメント出力はConfluence形式に準拠
- JIRAチケットの更新は日本語で行う
- 顧客名・プロジェクト名は外部に出さない
このように、AGENTS.mdを適切に設計することで、エージェントが「暗黙知」を理解した状態で業務に取り組めるようになります。
3. SOUL.md:エージェントの人格設計
3.1 なぜ人格設計が重要なのか
SOUL.mdは、エージェントのアイデンティティ・専門性・コミュニケーションスタイルを定義するファイルです。適切に設計されたSOUL.mdがあると、エージェントの出力品質が劇的に向上します。
SOUL.mdなしの場合、エージェントは毎回「汎用AIアシスタント」として振る舞い、あなたの業務ドメインに特化した回答ができません。SOUL.mdを設定すれば、SES業界の専門用語を理解し、適切なトーンで回答する専門家になります。
3.2 SOUL.mdの構成テンプレート
効果的なSOUL.mdの構成例を示します。
# SOUL.md - [エージェント名]
## アイデンティティ
- [事業やプロジェクト]の[役割]を担当するAI
- 担当領域の説明(2-3行)
## コアバリュー
- 専門家としての姿勢
- 大切にする価値観
- 判断の基準
## 運用チャネル
- 使用するプラットフォーム一覧
- 各チャネルの役割
## 境界
- やってはいけないこと
- 機密情報の取り扱いルール
3.3 専門性のレベル調整
SOUL.mdの書き方によって、エージェントの専門性の深さをコントロールできます。
浅い専門性(汎用型):
## アイデンティティ
- IT業界向けのアシスタントAI
深い専門性(特化型):
## アイデンティティ
- SES(システムエンジニアリングサービス)業界専門のマーケティングAI
- SES案件検索プラットフォームの運営・コンテンツ制作・SNS発信を担当
- エンジニアの単価相場・契約形態・キャリアパスに精通
深い専門性を持たせるほど、ドメイン固有の文脈を踏まえた高品質な出力が得られます。SES現場でエージェントを活用する場合は、案件の技術スタック・業界用語・社内文化を明記しておくことをおすすめします。
4. USER.md・IDENTITY.md:ユーザーとエージェントの定義
4.1 USER.mdでユーザーコンテキストを提供
USER.mdは、エージェントが誰のために働いているかを定義します。
# USER.md
- **名前:** 田中太郎
- **呼び方:** 田中さん
- **タイムゾーン:** Asia/Tokyo (JST)
- **役割:** SES案件のPM兼エンジニア
- **備考:** Java/Spring Boot案件を担当中。週報を金曜に提出する必要あり。
USER.mdを設定すると、エージェントは以下のような改善を見せます。
- タイムゾーンを考慮したスケジュール提案
- ユーザーの技術スタック前提のコードレビュー
- 名前を呼んだ自然なコミュニケーション
4.2 IDENTITY.mdでエージェントの外見を定義
IDENTITY.mdはエージェント自身の名前やアイコンを定義する簡潔なファイルです。
# IDENTITY.md
- **Name:** DevAssist
- **Vibe:** 親切、的確、プロフェッショナル
- **Emoji:** 🤖
この設定は、Slack・Discord連携でエージェントがメッセージを送信する際の表示名やアイコンに反映されます。
5. MEMORY.md:長期記憶の運用
5.1 記憶の二層構造
OpenClawの記憶システムは二層構造で設計されています。
| 層 | ファイル | 用途 | 更新頻度 |
|---|---|---|---|
| 短期記憶 | memory/YYYY-MM-DD.md | その日の出来事の生ログ | 毎日 |
| 長期記憶 | MEMORY.md | 厳選された知見・教訓 | 数日ごと |
この設計は、人間の記憶システム(海馬=短期記憶、大脳皮質=長期記憶)を模倣しています。
5.2 MEMORY.mdの運用ベストプラクティス
MEMORY.mdを効果的に運用するためのルールを紹介します。
書くべき内容:
- 重要な意思決定とその理由
- 学んだ教訓・失敗の記録
- ユーザーの好みや習慣
- プロジェクトの長期的なコンテキスト
書くべきでない内容:
- 一時的なタスクの詳細
- 機密性の高い認証情報
- 他のファイルと重複する情報
# MEMORY.md
## 学んだ教訓
- コードレビューでは型安全性を重視する(2026-02-15に方針決定)
- 週報は箇条書きよりも表形式が好まれる
## ユーザーの好み
- 朝9時前のSlack通知は避ける
- 技術ドキュメントは日本語で作成
5.3 メモリメンテナンスの自動化
Ep.6のcron機能やハートビートを活用して、MEMORY.mdの定期メンテナンスを自動化できます。AGENTS.mdに以下のルールを追加するだけです。
## メモリメンテナンス
定期的に(数日ごと):
1. 直近のmemory/ファイルを確認
2. 重要な知見をMEMORY.mdに転記
3. 古くなった情報を削除
エージェントはハートビート処理の中でこのルールに従い、自律的にメモリを整理してくれます。
6. TOOLS.mdとHEARTBEAT.md:運用の最適化
6.1 TOOLS.mdで環境固有の情報を管理
TOOLS.mdは、スキルとは別に、環境固有の設定メモを管理するファイルです。
# TOOLS.md
## SSH接続
- dev-server → 192.168.1.50, user: deploy
- staging → staging.example.com
## カメラ
- office-cam → 会議室の定点カメラ
## 定期レポート
- GA4日次レポート: 毎朝8:00 JST
- 必須項目: ユーザー数、流入元、ブログ記事TOP10
スキルのSKILL.mdが「ツールの使い方」を定義するのに対し、TOOLS.mdは「あなたの環境の固有値」を記録します。この分離により、スキルを他の人と共有しても、環境情報が漏れないというセキュリティ上のメリットがあります。
6.2 HEARTBEAT.mdで定期チェックを管理
HEARTBEAT.mdは、エージェントがハートビート(定期ポーリング)で実行するチェックリストを定義します。
# HEARTBEAT.md
## チェック項目
- [ ] 未読メール確認(urgentのみ)
- [ ] 今日のカレンダー確認
- [ ] GitHubのPRレビュー待ち確認
HEARTBEAT.mdを小さく保つことで、ハートビートごとのトークン消費を抑え、コスト最適化にも貢献します。
7. チーム運用でのワークスペース設計
7.1 エージェントごとのワークスペース分離
複数のエージェントを運用する場合、エージェントごとに専用ワークスペースを作成するのがベストプラクティスです。
~/.openclaw/
├── workspace-marketing/ # マーケティング担当エージェント
│ ├── SOUL.md # マーケティング専門家の人格
│ └── ...
├── workspace-devops/ # DevOps担当エージェント
│ ├── SOUL.md # インフラ専門家の人格
│ └── ...
└── workspace-support/ # カスタマーサポート担当
├── SOUL.md # サポート対応の人格
└── ...
この分離により、各エージェントが自分の専門領域に集中でき、他のエージェントの情報や記憶が混在することを防げます。
7.2 openclaw.jsonでのエージェント登録
ワークスペースを作成したら、openclaw.jsonにエージェントを登録します。
{
"agents": {
"marketing": {
"workspace": "~/.openclaw/workspace-marketing",
"model": "anthropic/claude-sonnet-4-20250514",
"channels": ["slack:C0MARKETING"]
},
"devops": {
"workspace": "~/.openclaw/workspace-devops",
"model": "anthropic/claude-sonnet-4-20250514",
"channels": ["slack:C0DEVOPS"]
}
}
}
マルチエージェント設計と組み合わせることで、エージェント間の連携も実現できます。
7.3 共通スキルと専用スキルの使い分け
チーム運用では、スキルを共通スキルと専用スキルに分けて管理します。
- 共通スキル(グローバル):
~/.openclaw/skills/に配置。全エージェントで共有 - 専用スキル(ワークスペース内):
workspace-xxx/skills/に配置。特定エージェント専用
~/.openclaw/
├── skills/ # 共通スキル
│ ├── github/SKILL.md
│ └── weather/SKILL.md
└── workspace-marketing/
└── skills/ # マーケティング専用スキル
└── seo-analyzer/SKILL.md
この階層設計についてはEp.2のスキル開発ガイドで詳しく解説しています。
8. ワークスペース設計のアンチパターン
8.1 避けるべき設計ミス
ワークスペース設計でよくある失敗パターンと対策をまとめます。
❌ SOUL.mdに具体的な指示を書きすぎる
SOUL.mdは「人格」であり「タスク指示書」ではありません。「毎朝9時にメールを確認して」のような運用指示は、HEARTBEAT.mdやAGENTS.mdに書くべきです。
❌ MEMORY.mdに全てを詰め込む
MEMORY.mdが数千行になると、コンテキストウィンドウを圧迫します。定期的に整理し、本当に長期的に必要な情報だけを残しましょう。
❌ ワークスペースを共有しすぎる
異なる役割のエージェントが同じワークスペースを共有すると、SOUL.mdやMEMORY.mdが矛盾します。コスト最適化の観点からも、ワークスペース分離が推奨されます。
❌ セキュリティ情報をワークスペースに保存する
APIキーやパスワードは、環境変数やシークレットマネージャーで管理します。ワークスペースファイルはGitで管理する可能性があるため、セキュリティハードニングの原則に従いましょう。
9. 実践:ワークスペースを一から構築する
9.1 ステップバイステップの構築手順
SES現場で新しいエージェントのワークスペースを構築する手順を紹介します。
Step 1: ディレクトリ作成
mkdir -p ~/.openclaw/workspace-myproject/{memory,skills}
Step 2: SOUL.mdの作成
エージェントの専門性を定義します。
# SOUL.md - Project Assistant
## アイデンティティ
- [プロジェクト名]の開発支援を担当するAI
- Java/Spring Boot + React のフルスタック開発に精通
## コアバリュー
- コード品質とテストカバレッジを重視
- チームのコーディング規約を遵守
- セキュリティファーストの開発姿勢
Step 3: USER.mdの作成
# USER.md
- **名前:** [あなたの名前]
- **タイムゾーン:** Asia/Tokyo
- **役割:** バックエンドエンジニア
Step 4: AGENTS.mdの作成
チームの運用ルールに合わせた行動規範を記述します。
Step 5: openclaw.jsonへの登録
# エージェントをOpenClawに登録
openclaw agent add myproject \
--workspace ~/.openclaw/workspace-myproject \
--model anthropic/claude-sonnet-4-20250514
以上で、SES現場で即戦力になるエージェント環境が完成します。
まとめ
OpenClawのワークスペース設計は、エージェントの出力品質・運用効率・セキュリティを決定づける重要な要素です。
| ファイル | 役割 | 更新頻度 |
|---|---|---|
| AGENTS.md | 行動規範・安全ルール | 月1回程度 |
| SOUL.md | 人格・専門性 | 初期設定後は稀 |
| USER.md | ユーザー情報 | 変更時のみ |
| IDENTITY.md | 名前・アイコン | 初期設定後は稀 |
| MEMORY.md | 長期記憶 | 数日ごと |
| TOOLS.md | 環境固有メモ | 必要に応じて |
| HEARTBEAT.md | 定期チェック項目 | 週1回程度 |
適切なワークスペース設計により、エージェントは「毎回ゼロから説明が必要な汎用AI」から「あなたの業務を理解した専門パートナー」に進化します。
次のエピソードでは、ワークスペースの運用をさらに発展させた高度なテクニックを紹介予定です。ぜひ本記事の内容を実践してみてください。