エージェント ワークスペース
ワークスペースはエージェントの家です。 ワークスペースはエージェントのホームです。ファイル ツールおよびワークスペース コンテキストで使用される唯一の作業ディレクトリです。プライベートに保ち、メモリとして扱ってください。 プライベートにしておき、メモリとして扱います。 これは、設定、資格情報、セッションを保存する~/.openclaw/ とは別です。
重要: ワークスペースは デフォルトの cwd で、ハードサンドボックスではありません。 12. 12. ツールは相対パスをワークスペースに対して解決しますが、サンドボックスが有効でない限り、絶対パスはホスト上の他の場所にも到達できます。 分離が必要な場合は、
agents.defaults.sandbox (または per‐agent sandbox 設定) を使用してください。
重要: ワークスペースは デフォルトの cwd であり、厳密なサンドボックスではありません。ツールは相対パスをワークスペース基準で解決しますが、サンドボックス化が有効でない限り、絶対パスはホスト上の他の場所に到達できます。分離が必要な場合は、agents.defaults.sandbox(および/またはエージェントごとのサンドボックス設定)を使用してください。サンドボックス化が有効で、かつ workspaceAccess が "rw" でない場合、ツールはホストのワークスペースではなく、~/.openclaw/sandboxes 配下のサンドボックス ワークスペース内で動作します。
デフォルトの場所
- デフォルト:
~/.openclaw/workspace OPENCLAW_PROFILEが設定され、かつ"default"でない場合、デフォルトは~/.openclaw/workspace-<profile>になります。~/.openclaw/openclaw.jsonで上書きできます:
openclaw onboard、openclaw configure、または openclaw setup は、ワークスペースを作成し、欠落している場合にブートストラップ ファイルをシードします。
すでにワークスペース ファイルを自分で管理している場合は、ブートストラップ ファイルの作成を無効にできます:
追加のワークスペース フォルダー
古いインストールでは~/openclawが作成されている可能性があります。 複数のワークスペース
ディレクトリを保持すると、一度に 1 つの
ワークスペースだけがアクティブになっているため、認証や状態のドリフトを引き起こす可能性があります。
推奨: 1つのアクティブなワークスペースを保持します。
の追加フォルダを使用しない場合は、アーカイブまたはゴミ箱に移動します(例えば、 trash ~/openclaw)。
推奨: 有効なワークスペースは 1 つに保ってください。追加のフォルダーを使用しなくなった場合は、アーカイブするかゴミ箱に移動してください(例: trash ~/openclaw)。意図的に複数のワークスペースを保持する場合は、agents.defaults.workspace がアクティブなものを指していることを確認してください。
openclaw doctor は、追加のワークスペース ディレクトリを検出すると警告します。
ワークスペース ファイル マップ(各ファイルの意味)
以下は、OpenClaw がワークスペース内に期待する標準ファイルです。-
AGENTS.md- エージェントの運用指示と、メモリの使用方法。
- 各セッションの開始時に読み込まれます。
- ルール、優先順位、「どのように振る舞うか」の詳細に適した場所です。
-
SOUL.md- ペルソナ、トーン、境界。
- 各セッションで読み込まれます。
-
USER.md- ユーザーが誰で、どのように呼びかけるか。
- 各セッションで読み込まれます。
-
IDENTITY.md- エージェントの名前、雰囲気、絵文字。
- ブートストラップの儀式中に作成/更新されます。
-
TOOLS.md- ローカル ツールや慣習に関するメモ。
- ツールの可用性を制御するものではなく、ガイダンスのみです。
-
HEARTBEAT.md- ハートビート実行用の任意の小さなチェックリスト。
- トークン消費を避けるため、短く保ってください。
-
BOOT.md- 内部フックが有効な場合に、Gateway 再起動時に実行される任意の起動チェックリスト。
- 短く保ち、送信には message ツールを使用してください。
-
BOOTSTRAP.md- ワンタイムファーストランの儀式。
- 新規ワークスペースにのみ作成されます。
- 儀式が完了した後に削除します。
-
memory/YYYY-MM-DD.md- 日次メモリ ログ(1 日 1 ファイル)。
- セッション開始時に「今日+昨日」を読むことを推奨します。
-
MEMORY.md(任意)- キュレーションされた長期メモリ。
- メインのプライベート セッションでのみ読み込みます(共有/グループ コンテキストでは不可)。
-
skills/(任意)- ワークスペース固有の Skills。
- 名前が衝突した場合、管理/同梱された Skills を上書きします。
-
canvas/(任意)- ノード表示用の Canvas UI ファイル(例:
canvas/index.html)。
- ノード表示用の Canvas UI ファイル(例:
agents.defaults.bootstrapMaxChars で制限を調整します (デフォルト: 20000)。
openclaw setupは既存の
ファイルを上書きすることなく、不足しているデフォルトを再現できます。
agents.defaults.bootstrapMaxChars で制限を調整します (デフォルト: 20000)。
openclaw setupは既存の
ファイルを上書きすることなく、不足しているデフォルトを再現できます。
ワークスペースに含まれないもの
以下は~/.openclaw/ 配下にあり、ワークスペース リポジトリにコミット すべきではありません。
~/.openclaw/openclaw.json(設定)~/.openclaw/credentials/(OAuth トークン、API キー)~/.openclaw/agents/<agentId>/sessions/(セッションのトランスクリプト+メタデータ)~/.openclaw/skills/(管理された Skills)
Git バックアップ(推奨、プライベート)
ワークスペースをプライベートメモリとして扱います。 ワークスペースはプライベート メモリとして扱ってください。プライベート な git リポジトリに入れて、バックアップおよび復旧可能にします。 以下の手順は Gateway(ゲートウェイ)が稼働しているマシンで実行してください(そこにワークスペースがあります)。1. リポジトリを初期化
git がインストールされている場合、完全に新しいワークスペースは自動的に初期化されます。このワークスペースがまだリポジトリでない場合は、次を実行します。 この ワークスペースがまだリポジトリでない場合は、次を実行します。 この ワークスペースがまだリポジトリでない場合は、次を実行します。2. プライベート リモートを追加(初心者向けの選択肢)
オプション A: GitHub Web UI- GitHub で プライベート リポジトリを新規作成します。
- README で初期化しないでください(マージ競合を回避)。
- HTTPS のリモート URL をコピーします。
- リモートを追加して push します。
gh)
- GitLab で プライベート リポジトリを新規作成します。
- README で初期化しないでください(マージ競合を回避)。
- HTTPS のリモート URL をコピーします。
- リモートを追加して push します。
3. 継続的な更新
秘密をコミットしない
プライベート リポジトリであっても、ワークスペースにシークレットを保存することは避けてください。- API キー、OAuth トークン、パスワード、または私的な資格情報。
~/.openclaw/配下のものすべて。- チャットや敏感な添付ファイルの未加工ダンプ。
~/.openclaw/)に保管してください。
推奨される .gitignore のスターター:
新しいマシンへのワークスペース移動
- リポジトリを目的のパスに clone します(デフォルトは
~/.openclaw/workspace)。 ~/.openclaw/openclaw.jsonでagents.defaults.workspaceをそのパスに設定します。openclaw setup --workspace <path>を実行して、欠落しているファイルをシードします。- セッションが必要な場合は、
~/.openclaw/agents/<agentId>/sessions/を旧マシンから別途コピーします。
高度な注意点
- マルチエージェント ルーティングでは、エージェントごとに異なるワークスペースを使用できます。ルーティング設定については Channel routing を参照してください。 ルーティング設定については、 Channel routingを参照してください。 ルーティング設定については、 Channel routingを参照してください。
agents.defaults.sandboxが有効な場合、メイン以外のセッションはagents.defaults.sandbox.workspaceRoot配下のセッション単位のサンドボックス ワークスペースを使用できます。