🦞 OpenClaw + OpenAI Codex 環境構築メモ(WSL / VSCode)

目次

🎯 目的

WSL(Ubuntu) + VSCode 環境で
以下を最小構成で動作させる:

  • OpenClaw(TUI)
  • openai-codex / gpt-5.5
  • ローカル Gateway

🧩 最終到達状態

環境:
- Windows + VSCode
- WSL (Ubuntu)
- systemd user service 有効

動作:
- openclaw tui 起動 OK
- Gateway 起動 OK
- openai-codex/gpt-5.5 応答 OK

状態:
connected | idle
tokens 表示あり

🏗 構成

WSL(Ubuntu)
 ├─ openclaw (npm global)
 ├─ ~/.openclaw/
 │   ├─ openclaw.json
 │   └─ agents/main/agent/auth-profiles.json
 └─ systemd (user)
      └─ openclaw-gateway.service

⚠️ ハマりポイントまとめ(重要)

① APIキー未設定

Error: No API key found for provider "openai"

👉 解決

  • OAuthログイン(推奨)
openclaw models auth login --provider openai-codex

② OAuthコールバック失敗(WSL特有)

Authentication failed
Callback route not found

👉 原因

  • localhost:1455 が Windows 側で開く
  • WSL の callback を拾えない

👉 解決

  • 表示されたURLをコピーして
  • 手動で redirect URL を貼り付け

③ Gateway認証トークン問題

unauthorized: gateway token mismatch

👉 解決

  • openclaw onboard を実行
  • token付きURLを使う

④ Gateway未接続

gateway not reachable

👉 原因

  • Gateway未起動 or service死んでる

👉 解決

systemctl --user start openclaw-gateway

⑤ bonjour plugin でクラッシュ

"bonjour": {
  "enabled": true
}

👉 WSLで落ちる

👉 解決

"bonjour": {
  "enabled": false
}

⑥ 最大の罠:WSL loopback問題

Gateway: running
TUI: connecting...

👉 原因

  • systemd service と shell の loopback がズレる

👉 解決(重要)

"gateway": {
  "bind": "0.0.0.0"
}

⑦ quota制限

You exceeded your current quota

👉 原因

  • OpenAI API課金 or 制限

👉 対処

  • 課金状態確認
  • セッション削除
rm -rf ~/.openclaw/agents/main/sessions/*

⚙️ 最小構成手順(再現用)

① インストール

npm install -g openclaw

② 初期化

openclaw onboard

選択:

  • provider: OpenAI Codex
  • channel: skip
  • search: skip
  • skills: no
  • hooks: skip

③ OAuthログイン

openclaw models auth login --provider openai-codex

👉 手動URL貼り付け対応あり


④ 設定修正(重要)

~/.openclaw/openclaw.json
"plugins": {
  "entries": {
    "bonjour": {
      "enabled": false
    }
  }
},
"gateway": {
  "bind": "0.0.0.0"
}

⑤ Gateway起動

systemctl --user start openclaw-gateway

確認:

systemctl --user status openclaw-gateway

⑥ 起動

openclaw tui

🎉 動作確認

hello

Hey. I just came online.

🧠 学び(重要)

WSL特有の落とし穴

  • localhostは共有ではない
  • systemd service は別ネットワーク扱い
  • OAuth callbackは壊れやすい

OpenClawのクセ

  • Gateway前提設計
  • 認証が2系統(APIキー / OAuth)
  • セッション壊れやすい

🚀 今後の発展

  • Claude / GPT 切り替え
  • tools(web search)追加
  • repo操作(今回の目的)

🧾 一言まとめ

👉
「動かない原因は9割ネットワークと認証」
WSLではそれが倍難しくなる