> ## Documentation Index
> Fetch the complete documentation index at: https://openclawdoc.org/llms.txt
> Use this file to discover all available pages before exploring further.

> 既存の OpenClaw Gateway をオンボーディングし直さずに別マシンへ移行する手順と確認項目をまとめます。

# 移行ガイド

このガイドでは、**オンボーディングをやり直すことなく**、OpenClaw Gateway をあるマシンから別のマシンへ移行する方法を説明します。

移行のコンセプトは非常にシンプルです：

* **状態ディレクトリ**（`$OPENCLAW_STATE_DIR`、デフォルト：`~/.openclaw/`）をコピーします — これには設定、認証、セッション、チャンネルの状態が含まれます。
* **ワークスペース**（デフォルト：`~/.openclaw/workspace/`）をコピーします — これにはエージェントのファイル（記憶、プロンプトなど）が含まれます。

しかし、**プロファイル**、**権限**、および**部分的なコピー**に関するよくある落とし穴があります。

## 始める前に（何を移行するか）

### 1) 状態ディレクトリを特定する

ほとんどのインストールではデフォルトが使用されます：

* **状態ディレクトリ：** `~/.openclaw/`

ただし、以下を使用している場合は異なる場合があります：

* `--profile <name>` (通常は `~/.openclaw-<profile>/` になります)
* `OPENCLAW_STATE_DIR=/some/path`

不明な場合は、**古い**マシンで以下を実行してください：

```bash theme={"theme":{"light":"min-light","dark":"min-dark"}}
openclaw status
```

出力内の `OPENCLAW_STATE_DIR` やプロファイルに関する記述を確認してください。複数の Gateway を実行している場合は、プロファイルごとに繰り返してください。

### 2) ワークスペースを特定する

一般的なデフォルト：

* `~/.openclaw/workspace/` (推奨ワークスペース)
* 自分で作成したカスタムフォルダ

ワークスペースは、`MEMORY.md`、`USER.md`、`memory/*.md` などのファイルが置かれている場所です。

### 3) 何が保持されるかを理解する

状態ディレクトリとワークスペースの**両方**をコピーすると、以下が保持されます：

* ゲートウェイの構成 (`openclaw.json`)
* 認証プロファイル / API キー / OAuth トークン
* セッション履歴 + エージェントの状態
* チャネルの状態（例：WhatsApp のログイン/セッション）
* ワークスペースのファイル（記憶、スキルのメモなど）

ワークスペース**のみ**をコピーした場合（例：Git 経由）、以下は保持されません：

* セッション
* 認証情報
* チャネルのログイン

これらは `$OPENCLAW_STATE_DIR` の下に保存されています。

## 移行の手順（推奨）

### 手順 0 — バックアップを作成する（古いマシン）

コピー中にファイルが変更されないよう、**古い**マシンで最初にゲートウェイを停止します：

```bash theme={"theme":{"light":"min-light","dark":"min-dark"}}
openclaw gateway stop
```

（オプションですが推奨）状態ディレクトリとワークスペースをアーカイブします：

```bash theme={"theme":{"light":"min-light","dark":"min-dark"}}
# プロファイルやカスタムの場所を使用している場合はパスを調整してください
cd ~
tar -czf openclaw-state.tgz .openclaw

tar -czf openclaw-workspace.tgz .openclaw/workspace
```

複数のプロファイル/状態ディレクトリ（例：`~/.openclaw-main`, `~/.openclaw-work`）がある場合は、それぞれをアーカイブしてください。

### 手順 1 — 新しいマシンに OpenClaw をインストールする

**新しい**マシンに CLI（および必要に応じて Node）をインストールします：

* 参照：[インストール](/install)

この段階で、オンボーディングによって新しい `~/.openclaw/` が作成されても問題ありません。次の手順でそれを上書きします。

### 手順 2 — 状態ディレクトリ + ワークスペースを新しいマシンにコピーする

以下の**両方**をコピーします：

* `$OPENCLAW_STATE_DIR` (デフォルト `~/.openclaw/`)
* ワークスペース (デフォルト `~/.openclaw/workspace/`)

一般的な方法：

* `scp` で tarball を転送して展開する
* SSH 経由で `rsync -a` を使用する
* 外付けドライブを使用する

コピー後、以下を確認してください：

* 隠しディレクトリ（例：`.openclaw/`）が含まれていること
* ファイルの所有権がゲートウェイを実行するユーザーに対して正しいこと

### 手順 3 — Doctor を実行する（移行 + サービスの修復）

**新しい**マシンで：

```bash theme={"theme":{"light":"min-light","dark":"min-dark"}}
openclaw doctor
```

Doctor は「安全で確実な」コマンドです。サービスを修復し、構成の移行を適用し、不一致について警告します。

その後：

```bash theme={"theme":{"light":"min-light","dark":"min-dark"}}
openclaw gateway restart
openclaw status
```

## よくある落とし穴（とその回避策）

### 落とし穴：プロファイル / 状態ディレクトリの不一致

古いゲートウェイをプロファイル（または `OPENCLAW_STATE_DIR`）を指定して実行しており、新しいゲートウェイで別のものを使用している場合、以下のような症状が発生します：

* 構成の変更が反映されない
* チャネルが見つからない / ログアウトしている
* セッション履歴が空

修正：移行したものと**同じ**プロファイル/状態ディレクトリを使用してゲートウェイ / サービスを実行し、その後 `openclaw doctor` を再実行してください。

### 落とし穴：`openclaw.json` のみをコピーする

`openclaw.json` だけでは不十分です。多くのプロバイダーは状態を以下の場所に保存します：

* `$OPENCLAW_STATE_DIR/credentials/`
* `$OPENCLAW_STATE_DIR/agents/<agentId>/...`

必ず `$OPENCLAW_STATE_DIR` フォルダ全体を移行してください。

### 落とし穴：権限 / 所有権

root としてコピーしたり、ユーザーを変更したりした場合、ゲートウェイが認証情報やセッションを読み取れなくなる可能性があります。

修正：状態ディレクトリとワークスペースの所有者が、ゲートウェイを実行するユーザーであることを確認してください。

### 落とし穴：リモートモードとローカルモード間の移行

* UI (WebUI/TUI) が**リモート**ゲートウェイを指している場合、セッションストアとワークスペースはリモートホストが所有しています。
* ラップトップを移行しても、リモートゲートウェイの状態は移動しません。

リモートモードの場合は、**ゲートウェイホスト**を移行してください。

### 落とし穴：バックアップ内のシークレット

`$OPENCLAW_STATE_DIR` には機密情報（API キー、OAuth トークン、WhatsApp 認証情報）が含まれています。バックアップは本番環境のシークレットと同様に扱ってください：

* 暗号化して保存する
* 安全でないチャネルでの共有を避ける
* 漏洩の疑いがある場合はキーをローテーションする

## 検証チェックリスト

新しいマシンで以下を確認してください：

* `openclaw status` で Gateway が実行されていることが示されている
* チャンネルがまだ接続されている（例：WhatsApp の再ペアリングが不要）
* ダッシュボードが開き、既存のセッションが表示される
* ワークスペースのファイル（記憶、設定）が存在する

## 関連情報

* [Doctor](/gateway/doctor)
* [Gateway のトラブルシューティング](/gateway/troubleshooting)
* [OpenClaw はデータをどこに保存しますか？](/help/faq#where-does-openclaw-store-its-data)
