OpenClaw トラブルシューティングログ

事象1: Botオフライン(初回デプロイ後)

  • 発生日: 2026-03-01
  • 事象: AntiCrow BotがDiscordでオフラインのまま
  • 原因: OpenClawの遅延起動方式 — Gateway は認証済みHTTPリクエストでのみ起動。CF AccessがWorkerへの全リクエストをブロックするため、Admin UIにブラウザでアクセスしないとコンテナが起動しない
  • 解決: Admin UIにブラウザでアクセスしてコンテナ起動をトリガー

事象2: “No API key found for provider anthropic”

  • 発生日: 2026-03-01
  • 事象: AI応答が返らない
  • 原因: 初回デプロイ時にGEMINI_API_KEYのみ設定、ANTHROPIC_API_KEYが未設定
  • 解決: Claude APIキー取得後、wrangler secret put ANTHROPIC_API_KEY で設定

事象3: コンテナクラッシュ(exit code 1)

  • 発生日: 2026-03-02
  • 事象: Admin UIで「ProcessExitedBeforeReadyError: Process exited with code 1 before becoming ready. Waiting for: port 18789 (TCP)」
  • 原因(多層的):
    1. 直接原因: start-openclaw.sh のDiscord config patching部分に追加した allowedChannels プロパティがOpenClawの設定バリデーションに通らず、ノードスクリプトがエラー終了 → set -e によりスクリプト全体が exit code 1 で終了
    2. 持続原因: ローカルファイルから allowedChannels を削除して再デプロイしても、Cloudflare が Docker Image をキャッシュしていた。イメージハッシュ 4a100fdb には壊れた start-openclaw.sh がベイクされたまま。Dockerfile のキャッシュバストコメントを変更しても、Cloudflare のビルダーが同一レイヤーを再利用
    3. 解決: Dockerfile に RUN echo "force-rebuild-20260302-0045" を追加して、Docker レイヤーキャッシュを完全に無効化。新しいイメージハッシュ 2bceda5d が生成された

教訓

  • Docker Image のキャッシュに注意: Cloudflare Container ではコメント変更だけではキャッシュが無効化されない場合がある
  • start-openclaw.sh の set -e に注意: Node.js パッチ内のエラーがスクリプト全体を停止させる
  • OpenClaw の config プロパティは公式ドキュメントを確認してから追加すること
  • 再デプロイ後は必ず Admin UI にアクセスして Gateway 起動をトリガーすること

事象4: Antipigeon が openclaw チャンネルのメッセージをインターセプト

  • 発生日: 2026-03-02
  • 事象: #openclaw実行・指示 チャンネルでBotにメッセージを送ると、AntiCrow ではなく Antipigeon(IDE連携Bot)が反応
  • 原因: VPS版 listener.py のチャンネル判定で 実行・指示 がキーワードマッチに使われており、openclaw実行・指示 チャンネルも対象に含まれていた
  • 解決: listener.pyis_openclaw_channel = "openclaw" in channel_name を追加し、openclaw チャンネルを除外。VPS に SCP でアップロード後、systemctl restart discord-bot で反映

変更ファイル一覧

ファイル変更内容
moltworker/Dockerfileキャッシュバスト + RUN echo 追加
moltworker/src/gateway/env.tsGEMINI_API_KEY, DISCORD_ALLOWED_CHANNELS パススルー追加
moltworker/src/types.ts同上のインターフェース追加
new_bot/cogs/listener.pyopenclaw チャンネル除外ロジック追加
new_bot/vps_deploy/cogs/listener.py同上(VPS版)