Skip to main content
ワークスペースはエージェントのホームです。ファイルツールとワークスペースコンテキストで使用される作業ディレクトリです。非公開に保ち、メモリとして扱ってください。 これは、設定、認証情報、セッションを保存する ~/.openclaw/ とは別のものです。
ワークスペースはデフォルトの cwd であり、厳密なサンドボックスではありません。ツールはワークスペースを基準に相対パスを解決しますが、サンドボックスが有効でない限り、絶対パスを使用するとホスト上の別の場所にもアクセスできます。分離が必要な場合は、agents.defaults.sandbox(および/またはエージェント単位のサンドボックス設定)を使用してください。サンドボックスが有効で、workspaceAccess"rw" でない場合、ツールはホストのワークスペースではなく、~/.openclaw/sandboxes 配下のサンドボックスワークスペース内で動作します。

デフォルトの場所

  • デフォルト: ~/.openclaw/workspace
  • OPENCLAW_PROFILE が設定され、"default" でない場合、デフォルトは ~/.openclaw/workspace-<profile> になります。
  • OPENCLAW_WORKSPACE_DIR が設定されている場合、上記の両方を上書きします。
  • 明示的なワークスペースがない非デフォルトのエージェント(agents.entries.*)は、共有のデフォルトワークスペースではなく、<state-dir>/workspace-<agentId> に解決されます。
~/.openclaw/openclaw.json で上書きします。
エージェント単位の上書き: agents.entries.*.workspace openclaw onboardopenclaw configure、または openclaw setup は、ワークスペースを作成し、ブートストラップファイルがない場合は初期ファイルを配置します。
サンドボックスへの初期ファイルのコピーでは、ワークスペース内の通常ファイルのみが受け入れられます。ソースワークスペース外に解決されるシンボリックリンク/ハードリンクのエイリアスは無視されます。
ワークスペースファイルをすでに自身で管理している場合は、ブートストラップファイルの作成を無効にします。

追加のワークスペースフォルダー

古いインストールでは ~/openclaw が作成されている場合があります。同時にアクティブになるワークスペースは1つだけなので、複数のワークスペースディレクトリを残しておくと、認証や状態に分かりにくいずれが生じることがあります。
推奨: アクティブなワークスペースは1つだけにしてください。追加のフォルダーを使用しなくなった場合は、アーカイブするかゴミ箱に移動してください(例: trash ~/openclaw)。意図的に複数のワークスペースを保持する場合は、agents.defaults.workspace(またはエージェント単位の workspace キー)がアクティブなワークスペースを指していることを確認してください。

ワークスペースのファイル構成

OpenClaw がワークスペース内にあることを想定する標準ファイル:
エージェントの運用手順とメモリの使用方法です。各セッションの開始時に読み込まれます。ルール、優先事項、「どのように振る舞うか」の詳細を記載するのに適しています。
ペルソナ、トーン、境界です。各セッションで読み込まれます。ガイド: SOUL.md パーソナリティガイド
ユーザーが誰で、どのように呼びかけるかを記載します。各セッションで読み込まれます。
エージェントの名前、雰囲気、絵文字です。ブートストラップ手順の実行中に作成/更新されます。
ローカルツールと規約に関する注記です。ツールの利用可否は制御せず、ガイダンスとしてのみ機能します。
Heartbeat 実行用の任意の小さなチェックリストです。トークン消費を避けるため、短く保ってください。
Gateway の再起動時に自動実行される任意の起動チェックリストです(内部フックが有効な場合)。短く保ち、外部への送信にはメッセージツールを使用してください。
1回限りの初回実行手順です。新規ワークスペースに対してのみ作成されます。手順の完了後に削除してください。
日次メモリログ(1日につき1ファイル)です。セッション開始時に今日と昨日の分を読むことを推奨します。
整理された長期メモリです。長期間保持する事実、設定、決定事項、短い要約を記録します。詳細なログは memory/YYYY-MM-DD.md に保存し、すべてのプロンプトに挿入せず、必要に応じてメモリツールから取得できるようにしてください。MEMORY.md はメインの非公開セッションでのみ読み込み、共有/グループコンテキストでは読み込まないでください。ワークフローとメモリの自動フラッシュについては、メモリを参照してください。
ワークスペース固有の Skills です。名前が競合する場合、そのワークスペースでは、プロジェクトのエージェント Skills、個人のエージェント Skills、管理対象の Skills、同梱の Skills、skills.load.extraDirs よりも優先される Skills の保存場所です。
Node 表示用の Canvas UI ファイルです(例: canvas/index.html)。
ブートストラップファイルがない場合、OpenClaw はセッションに「ファイル不足」マーカーを挿入して処理を続行します。大きなブートストラップファイルは挿入時に切り詰められます。上限は agents.defaults.bootstrapMaxChars(デフォルト: 20000)および agents.defaults.bootstrapTotalMaxChars(デフォルト: 60000)で調整できます。openclaw setup を使用すると、既存ファイルを上書きせずに不足しているデフォルトファイルを再作成できます。

ワークスペースに含まれないもの

以下は ~/.openclaw/ 配下にあり、ワークスペースのリポジトリにコミットしてはなりません。
  • ~/.openclaw/openclaw.json(設定)
  • ~/.openclaw/state/openclaw.sqlite(共有ワークスペースのセットアップ状態と証明)
  • ~/.openclaw/agents/<agentId>/agent/auth-profiles.json(モデル認証プロファイル: OAuth + API キー)
  • ~/.openclaw/agents/<agentId>/agent/openclaw-agent.sqlite(セッション行、トランスクリプト、エージェント単位のランタイム状態)
  • ~/.openclaw/agents/<agentId>/agent/codex-home/(エージェント単位の Codex ランタイムアカウント、設定、Skills、plugins、ネイティブスレッド状態)
  • ~/.openclaw/credentials/(チャンネル/プロバイダーの状態と旧 OAuth インポートデータ)
  • ~/.openclaw/agents/<agentId>/sessions/(旧移行元とアーカイブ/サポート成果物)
  • ~/.openclaw/skills/(管理対象の Skills)
セッションまたは設定を移行する必要がある場合は、それらを個別にコピーし、バージョン管理の対象外にしてください。 古い OpenClaw リリースでは、ワークスペースのサイドカーファイルとして openclaw-workspace-state.json.openclaw/workspace-state.json、および .attested が書き込まれていました。現在の ランタイムでは、その状態に共有 SQLite データベースのみを使用します。Doctor が これらのファイルのいずれかを報告した場合は、openclaw doctor --fix を実行してください。Doctor は有効な旧 状態をインポートし、データベースの行を検証した後にのみ移行元を削除します。

Git バックアップ(推奨、非公開)

ワークスペースを非公開のメモリとして扱ってください。バックアップと復元ができるように、非公開の git リポジトリに保存します。 以下の手順は Gateway が動作しているマシン(ワークスペースが存在する場所)で実行してください。
1

リポジトリを初期化する

git がインストールされている場合、新規ワークスペースは自動的に初期化されます。このワークスペースがまだリポジトリでない場合は、次を実行します。
2

非公開リモートを追加する

  1. GitHub で新しい非公開リポジトリを作成します。
  2. README で初期化しないでください(マージ競合を回避するため)。
  3. HTTPS リモート URL をコピーします。
  4. リモートを追加してプッシュします。
3

継続的な更新

シークレットをコミットしない

非公開リポジトリであっても、ワークスペースにシークレットを保存しないでください。
  • API キー、OAuth トークン、パスワード、または非公開の認証情報。
  • ~/.openclaw/ 配下にあるもの。
  • チャットの未加工ダンプや機密性の高い添付ファイル。
機密情報への参照を保存する必要がある場合は、プレースホルダーを使用し、実際のシークレットは別の場所(パスワードマネージャー、環境変数、または ~/.openclaw/)に保管してください。
推奨される .gitignore の初期設定:

ワークスペースを新しいマシンに移動する

1

リポジトリをクローンする

リポジトリを目的のパス(デフォルトは ~/.openclaw/workspace)にクローンします。
2

設定を更新する

~/.openclaw/openclaw.jsonagents.defaults.workspace をそのパスに設定します。
3

不足しているファイルを配置する

openclaw setup --workspace <path> を実行して、不足しているファイルを配置します。
4

セッションをコピーする(任意)

セッションが必要な場合は、古いマシンから ~/.openclaw/agents/<agentId>/agent/openclaw-agent.sqlite を個別にコピーします。旧移行入力またはアーカイブ/サポート成果物も必要な場合にのみ、~/.openclaw/agents/<agentId>/sessions/ をコピーしてください。

高度な注記

  • マルチエージェントルーティングでは、agents.entries.*.workspace を使用してエージェントごとに異なるワークスペースを使用できます。ルーティング設定については、チャンネルルーティングを参照してください。
  • agents.defaults.sandbox が有効な場合、メイン以外のセッションは agents.defaults.sandbox.workspaceRoot 配下にあるセッション単位のサンドボックスワークスペースを使用できます。

関連項目