OpenClaw セットアップ記録|VSCode + WSL2 (Ubuntu 22.04)


■ 目的

Linux カーネル開発(staging ドライバパッチ)の補助ツールとして、OpenClaw + AI Agent を WSL2 環境に導入する。


■ 最終構成(動作確認済み)

項目内容
ホスト OSWindows 10
Linux 環境WSL2(Ubuntu 22.04)
エディタVSCode(WSL リモート接続)
OpenClaw バージョン2026.4.24 (cbcfdf6)
AI プロバイダーopenai-codex(ChatGPT OAuth)
モデルopenai-codex/gpt-5.5
Gatewaysystemd user service(port 18789)
接続方式ws://127.0.0.1:18789

■ トラブルと解決の経緯

1. OpenAI API キーのクォータ超過

症状:

You exceeded your current quota, please check your plan and billing details.

原因: openclaw onboard で OpenAI(API キー方式)を選択したが、APIクレジットが枯渇していた。

解決: プロバイダーを openai-codex(ChatGPT OAuth 方式)に切り替えた。


2. OAuth コールバックの失敗(WSL2 特有の問題)

症状:

OpenAI OAuth uses localhost:1455 for the callback.
Callback route not found.
Authentication failed: Callback route not found.

原因: OAuth のコールバック先(localhost:1455)が WSL2 側のプロセスだが、Windows 側のブラウザからのリダイレクトが届かない。

解決: openclaw models auth login --provider openai-codex を実行し、ブラウザで OpenAI にログイン後、リダイレクト先の URL をターミナルに手動で貼り付けることで認証を完了した。


3. Gateway の繰り返しクラッシュ

症状:

Unhandled promise rejection: CIAO PROBING CANCELLED
openclaw-gateway.service: Failed with result 'exit-code'.

原因: WSL2 は mDNS(Bonjour/Avahi)をサポートしていない。Gateway の bonjour プラグインが mDNS probing に失敗し、Unhandled rejection でクラッシュ→再起動を繰り返していた。

解決: ~/.openclaw/openclaw.jsonplugins.entries.bonjour.enabledfalse に設定。

{
  "plugins": {
    "entries": {
      "bonjour": {
        "enabled": false
      }
    }
  }
}

4. ダッシュボードへのログイン失敗

症状:

unauthorized: gateway token missing
unauthorized: gateway token mismatch
unauthorized: too many failed authentication attempts

原因:

  • フォームへのトークン手入力を試みたが、Gateway 再起動のたびにトークンが変わる
  • 認証失敗の繰り返しでレートリミットがかかった

解決: ダッシュボードへのログインは openclaw tui による操作に不要と判断し、作業から除外した。openclaw dashboard コマンドで取得したトークン付き URL を直接ブラウザで開く方法が正しい手順。


■ 確立した起動手順

Gateway 起動確認

systemctl --user status openclaw-gateway
# Active: active (running) であることを確認

Gateway が落ちていた場合

systemctl --user start openclaw-gateway

TUI 起動

cd ~/linux-rust-experiment/linux
openclaw tui

接続成功時の表示:

connected | idle
agent main | session main | openai-codex/gpt-5.5 | think medium | tokens xx/272k

■ 設定ファイル一覧

ファイル用途
~/.openclaw/openclaw.jsonGateway 設定(bonjour 無効化など)
~/.openclaw/agents/main/agent/auth-profiles.json認証プロファイル(openai-codex OAuth)
~/.config/systemd/user/openclaw-gateway.servicesystemd サービス定義

auth-profiles.json(現在の設定)

{
  "version": 1,
  "profiles": {
    "openai-codex:<your-email>": {
      "type": "oauth",
      "provider": "openai-codex",
      "mode": "oauth",
      "email": "<your-email>"
    }
  }
}

■ 既知の制限事項

項目内容
OAuth トークン有効期限10日間。期限切れ後は再認証が必要
ダッシュボードトークン付き URL(openclaw dashboard)で取得したURLのみ有効
bonjourWSL2 では動作しないため無効化必須
OAuth コールバック手動 URL 貼り付けが必要(WSL2 環境の制約)

■ OAuth 再認証手順(トークン期限切れ時)

openclaw models auth login --provider openai-codex
  1. 表示された URL をブラウザで開く
  2. OpenAI にログイン
  3. ブラウザのアドレスバーに表示されたリダイレクト URL をターミナルに貼り付け

■ 次のステップ

  • axis-fifo ドライバの checkpatch warning 修正(Alignment should match open parenthesis
  • OpenClaw Agent を使ったカーネルソースの解析・修正補助の運用確立