移行を決意するのは、たいてい3つの瞬間のどれかだ。CVE-2026-25253について読んで、OpenClawインスタンスがインターネット上に露出していたことに気づいたとき。サーバーのメモリ使用量を確認して、2GBのRAMを持つマシンでOpenClawが1.2GBでアイドルしているのを見つけたとき。あるいはXDA Developersの記事を見て、次の脆弱性がどんなものか待つよりましだと判断したとき。
何があなたをここに連れてきたにせよ、移行は簡単だ。ZeroClawには重い作業を処理する組み込みの移行ツールが含まれている。何を期待するかを説明しよう。
引き継がれるもの
移行ツールは会話履歴をZeroClawのSQLiteメモリデータベースにインポートする。チャンネル接続——Telegram、Discord、WhatsAppのトークン——はconfig.toml形式に引き継がれる。AIプロバイダーの設定とAPIキーは直接転送される。システムプロンプトとペルソナ設定はきれいに変換される。
失わないのはコンテキストだ。これまでの会話、アシスタントが学んだ好み、時間をかけて積み上げたメモリ——それらすべてが一緒に来る。
実際に変わること
最大の変化はスキルシステムだ。OpenClawのJavaScriptスキルはZeroClawでは動かない。一般的な組み込みスキルのほとんどにはZeroClawの同等品がある——`zeroclaw tools list`で確認できる。自分で書いたカスタムスキルについては、組み込みの同等品を見つけるか、Rustトレイトを実装する必要がある。シンプルな自動化には、Rustを書かずに外部スクリプトを呼び出せるシェルツールが使える。
第二の変化はインターフェースだ。ZeroClawにはWebUIが付属しない。チャットチャンネルかCLIを通じてやり取りする。OpenClawのWebインターフェースに大きく依存していたなら、同様の機能を提供するコミュニティWebゲートウェイがあるが、主要なインタラクションモデルはチャンネルファーストだ。
それ以外はすべてシンプルになる。node_modulesなし、依存関係管理なし、プラグインマーケットプレイスなし。統合はレジストリからインストールするのではなく、TOMLファイルで設定する。1つのバイナリ、1つの設定ファイル、1つのデータベース。
始める前に
何かを実行する前に5分かけて準備する:
```bash # 現在のOpenClawバージョンを確認 openclaw --version
# メモリをバックアップとしてエクスポート openclaw export --format json > openclaw-backup.json
# .envファイルを安全な場所に保存 cp ~/.openclaw/.env ~/openclaw-env-backup ```
アクティブなチャンネルトークンと構築したカスタムスキルも書き留めておく。移行ツールはほとんどのことを自動的に処理するが、何かに手動対応が必要な場合に参照があると便利だ。
ステップ1:ZeroClawをインストール
```bash # macOS brew install zeroclaw
# Linux curl -fsSL https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/main/scripts/bootstrap.sh | bash
# Windows curl -fsSLO https://github.com/zeroclaw-labs/zeroclaw/releases/latest/download/zeroclaw-x86_64-pc-windows-msvc.zip ```
ステップ2:移行ツールを実行
必ずドライランを最初に行う。何がインポートされ、何がスキップされ、何に手動対応が必要かを——変更を加えずに——正確に表示する:
```bash zeroclaw migrate openclaw --dry-run ```
出力を注意深く読む。何かおかしいと思ったら、コミットする前に対処できる。満足したら:
```bash zeroclaw migrate openclaw ```
会話メモリ、チャンネル設定、AIプロバイダー設定、システムプロンプトがインポートされる。デフォルトでは最後の10,000メッセージをインポートする。完全な履歴には`--full-history`を追加。
ステップ3:設定を確認
`~/.config/zeroclaw/config.toml`を開いて、移行がすべて正しく取得したか確認:
```toml [ai] provider = "anthropic" model = "claude-sonnet-4-20250514" api_key = "sk-ant-..."
[channels.telegram] token = "123456:ABC..." allowed_users = [your_user_id]
[channels.discord] token = "MTk..." guild_ids = [your_server_id] ```
ステップ4:切り替え前にテスト
```bash zeroclaw start ```
各チャンネルでテストメッセージを送る。ボットが応答すること、以前の会話コンテキストが利用可能なこと、好みのAIモデルが使われていることを確認する。まだOpenClawを止めないで——すべてが動作することを確認するまで両方を並行して動かす。
よくある問題
WhatsAppブリッジが接続しない。 ZeroClawは異なるWhatsAppブリッジライブラリを使う。QRコードを再スキャン:`zeroclaw channel whatsapp pair`。
カスタムスキルが動かない。 `zeroclaw tools list`で組み込みの同等品があるか確認。カスタムロジックには外部スクリプトを呼び出すシェルツールを使うか、より複雑な統合にはRustトレイトを実装する。
メモリが不完全に見える。 移行はデフォルトで最後の10,000メッセージをインポートする。完全な履歴には:`zeroclaw migrate openclaw --full-history`。
設定フォーマットがわかりにくい。 OpenClawは.envファイルとJSONを使う。ZeroClawはTOMLを使う。移行ツールは変換を自動的に処理するが、手動調整が必要な場合はZeroClawのドキュメントに完全な設定リファレンスがある。
移行前後
| メトリクス | OpenClaw | ZeroClaw | |--------|----------|----------| | RAM使用量 | ~1.2 GB | ~4 MB | | 起動時間 | ~8秒 | <10ms | | ディスク使用量 | ~800 MB | ~12 MB | | 依存関係 | 1,200以上のnpmパッケージ | 0 | | オープンCVE | 2以上のクリティカル | 0 |
仕上げ
ZeroClawが正しく動作していることを確認したら、OpenClawを止めてリソースを取り戻す:
```bash sudo systemctl stop openclaw npm uninstall -g openclaw ```
念のため`openclaw-backup.json`を数週間保持し、必要ないと確信したら削除する。移行には約20分かかる。取り戻すRAMはすぐに現れる。CVEへの露出はOpenClawが動作を止めた瞬間に終わる。