📌 はじめに:OpenClaw とは?
OpenClaw(旧名:Clawdbot → Moltbot → OpenClaw)は、オープンソースのセルフホスト型 AI エージェントフレームワークです。
GitHub スター数は 35万超(2026年4月時点)を誇り、史上最も急成長したオープンソースプロジェクトの一つです。
| 特徴 | 内容 |
|---|---|
| ローカルファースト | データは自分のサーバー上で管理。クラウド依存なし |
| マルチチャネル | WhatsApp、Telegram、Slack、Teams、Discord など20以上に対応 |
| 永続メモリ | セッション間でコンテキストを維持 |
| モデル自由選択 | GPT-4o、Claude、Gemini、ローカルモデル(Ollama)など |
| 自己拡張 | 新しいスキルを自律的に作成・追加可能 |
✅ 前提条件
本手順を始める前に以下を準備してください。
-
Azure VM(Ubuntu 24.04 LTS 推奨)
- SSH ポートが開放されていること
-
Azure OpenAI リソース
-
gpt-4oモデルがデプロイ済みであること -
API KeyとEndpoint URLを取得済みであること
-
🔧 Step 1:環境構築(Node.js のインストール)
OpenClaw は Node.js v22.0 以上(推奨は v24)が必要です。
SSH で VM にログイン後、以下を実行します。
# 1. システムパッケージを更新
sudo apt update
# 2. Node.js 22.x を NodeSource 経由でインストール
curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash -
sudo apt install -y nodejs
# 3. バージョン確認(v22.0 以上であることを確認)
node -v
# 4. npm のインストール(念のため)
sudo apt install npm
📦 Step 2:OpenClaw のインストール
Node.js 環境が整ったら、npm でグローバルインストールします。
# 最新版をグローバルインストール
npm install -g openclaw@latest
# 初期設定ウィザードを起動(デーモンも同時インストール)
openclaw onboard --install-daemon
ポイント:
--install-daemonオプションで systemd/launchd のデーモンも自動設定されます。本番環境での継続稼働に必要です。
インストール後、動作確認:
openclaw doctor
openclaw status
🌉 Step 3:LiteLLM のセットアップ(Azure OpenAI 連携用)
なぜ LiteLLM が必要?
Azure OpenAI は標準の OpenAI API とは異なるフォーマットを使用します。
LiteLLM は「翻訳官」として Azure OpenAI を標準 OpenAI API 形式に変換し、OpenClaw がシームレスに利用できるようにします。
⚠️ 他のモデル(Anthropic Claude, OpenAI 直接接続等)を使う場合は Step 3 と Step 4 をスキップできます。
3-1. Python 仮想環境の作成
# python3-venv モジュールをインストール
sudo apt install python3.12-venv
# 仮想環境を作成・有効化
python3.12 -m venv ~/litellm-venv
source ~/litellm-venv/bin/activate
3-2. LiteLLM のインストール
pip install "litellm[proxy]"
3-3. 設定ファイルの作成
~/litellm_config.yaml を作成し、以下を記述します。
model_list:
- model_name: gpt-4o
litellm_params:
# 書式: azure/<デプロイ名>
model: azure/gpt-4o
# ↓ 自分の Azure Endpoint に変更
api_base: https://YOUR_RESOURCE_NAME.openai.azure.com
# ↓ 自分の Azure API Key に変更
api_key: YOUR_AZURE_API_KEY_HERE
api_version: "2024-12-01-preview"
general_settings:
# OpenClaw が LiteLLM に接続する際の認証キー(任意の文字列)
master_key: sk-my-local-master-key
litellm_settings:
drop_params: true
🔒 セキュリティ注意:
api_keyとmaster_keyはリポジトリに含めないでください。
3-4. LiteLLM の起動
# 仮想環境がアクティブな状態で起動(ポート4000)
litellm --config ~/litellm_config.yaml --port 4000
3-5. 接続テスト
別の SSH ウィンドウを開いて動作確認:
curl -X POST http://localhost:4000/v1/chat/completions \
-H "Authorization: Bearer sk-my-local-master-key" \
-H "Content-Type: application/json" \
-d '{"model": "gpt-4o", "messages": [{"role": "user", "content": "こんにちは"}]}'
Azure OpenAI から応答が返れば成功です 🎉
⚙️ Step 4:OpenClaw の設定(Azure OpenAI モデルを接続)
~/.openclaw/openclaw.json を開き、以下のように編集します。
{
"agents": {
"defaults": {
"model": {
"primary": "litellm/gpt-4o"
},
"models": {
"litellm/gpt-4o": {
"alias": "GPT-4o (Azure)"
}
}
}
},
"models": {
"mode": "merge",
"providers": {
"litellm": {
"baseUrl": "http://localhost:4000/v1",
"apiKey": "sk-my-local-master-key",
"api": "openai-completions",
"models": [
{
"id": "gpt-4o",
"name": "GPT-4o (Azure)",
"reasoning": false,
"input": ["text", "image"],
"contextWindow": 128000,
"maxTokens": 16384
}
]
}
}
}
}
⚠️
apiKeyの値は LiteLLM のmaster_keyと必ず一致させてください。
🚀 Step 5:OpenClaw の起動とアクセス
5-1. Gateway の起動
# 直接起動(テスト・検証向け)
openclaw gateway --port 18789 --verbose
デーモンで管理する場合(本番環境推奨):
systemctl --user start openclaw-gateway
systemctl --user enable openclaw-gateway # 自動起動設定
5-2. SSH トンネルでローカルからアクセス(セキュア接続)
Azure VM はデフォルトでポートを公開していません。ローカルPC から安全にアクセスするには SSH トンネルを使います。
ローカルPCのターミナルで実行:
# VM の 18789 ポートをローカルの 18789 にマッピング
ssh -L 18789:localhost:18789 azureuser@YOUR_VM_IP_ADDRESS
5-3. ダッシュボードへのアクセス
VM 上でアクセストークンを取得:
openclaw dashboard --no-open
ターミナルに以下のような URL が表示されます:
Dashboard URL: http://127.0.0.1:18789/?token=dc222cd7...
ローカルPCのブラウザで上記 URL を開けば、OpenClaw ダッシュボードにアクセスできます!
🏗️ アーキテクチャ全体図
[ローカルPC]
│
│ SSH トンネル(ポート 18789)
▼
[Azure VM - Ubuntu 24.04]
│
├─ OpenClaw Gateway(ポート 18789)
│ │
│ ▼
│ LiteLLM Proxy(ポート 4000)
│ │
│ ▼
│ Azure OpenAI(gpt-4o)
│
└─ openclaw.json(設定ファイル)
🛠️ トラブルシューティング
| 症状 | 対処法 |
|---|---|
node -v で v22 未満と表示 |
NodeSource 経由で再インストール |
openclaw: command not found |
npm prefix -g でパスを確認し、~/.bashrc に追記 |
| LiteLLM のテストが失敗 |
api_base, api_key, api_version を再確認 |
| ダッシュボードに繋がらない | SSH トンネルが正しく張られているか確認 |
sharp のビルドエラー |
SHARP_IGNORE_GLOBAL_LIBVIPS=1 npm install -g openclaw@latest を実行 |