← 戻る

Cloudflare Workers で Slack Bot を構築する際のハマりポイント


セットアップ手順の順序が重要

Slack の Event Subscriptions で Request URL を入力すると、即座に URL Verification チャレンジが送信される。Worker がデプロイ済み+Secrets設定済みでないと検証が失敗する。

正しい順序: Slack App 作成(URL は仮)→ Install → デプロイ&Secrets設定 → URL を本番に更新

Worker URL のサブドメインは予測できない

wrangler deploy の出力で初めて https://{worker-name}.{subdomain}.workers.dev が確定する。README にプレースホルダーを書くなら、デプロイ後に更新するフローを明記すること。サブドメインはアカウントごとに異なる。

PEM 秘密鍵は対話入力ではなくパイプで渡す

# NG: 対話入力だと改行が壊れる
wrangler secret put GITHUB_APP_PRIVATE_KEY

# OK: パイプ形式
cat /path/to/private-key.pem | wrangler secret put GITHUB_APP_PRIVATE_KEY

AI Gateway ID の確認方法

Cloudflare ダッシュボード → AI → AI Gateway で表示されるゲートウェイ名がそのまま ID。default という名前なら ID も default。Account ID は npx wrangler whoami で確認できる。

GitHub App Installation ID の確認方法

gh api /orgs/{org}/installations \
  --jq '.installations[] | select(.app_slug=="your-app") | .id'