前回、LINE Bot 経由で Claude Code を操作する環境を作った話を書いた。スマホから AI に指示を出せるようになって満足していたら、翌日にボットが無反応になった。
前回のおさらい
前回の記事では、LINE Messaging API と Claude Code を繋いで、スマホのトーク画面からサーバー上の AI に指示を出せる環境を作った。外出先でも「ログ見て」「この設定どうなってる?」と話しかければ返答が届く仕組みで、体験としてはかなり快適だった。
今回はその続き——というか、トラブルの話だ。
ボットが黙り込んだ
環境を作った翌日、LINE に話しかけたら返事が来なくなった。前日まで動いていたのに突然の無反応。
最初はサーバー側のプロセスが落ちたと思った。ログを確認すると、Webhook の受信記録はある。Claude Code の呼び出し記録もある。なのに LINE には何も返っていない。
サーバーのログをちゃんと取っておいてよかった。ログがなければ「LINE に届いているのか、サーバーで落ちているのか、返信が失敗しているのか」の切り分けができなかった。
しばらく調べて気づいた。LINE の Messaging API には無料枠の制限があり、月200通を超えると Push Message が送信できなくなる。環境のテストで試し打ちを繰り返していたら、一日で使い切っていた。
LINE 無料枠の壁
LINE の Messaging API 無料プランでは、Push Message が月200通まで。Reply Message はカウント対象外だが、30秒のタイムアウトがあるため Claude Code の返答には使いにくく、Push Message を使っていた。
有料プランは月5,000円(3,000通)から。個人の自宅サーバー用途にしては高いので、継続は断念した。
Slack に乗り換えた
代替として選んだのが Slack。無料プランでもメッセージ数に上限はなく、Bot 用 API も整っている。
Slack 自体は使ったことがなかったが、Claude Code に実装方法を聞きながら進めたら、LINE のときとほぼ同じ難度で完成した。
仕組みは LINE と大きく変わらない。
- Slack の Events API でメッセージを受け取る
- サーバーで Claude Code を呼び出す
- Slack の Web API(
chat.postMessage)で返信する
設定画面の構成が LINE Developers と Slack API で違うので最初は少し迷ったが、迷ったところは Claude Code に「次どうする?」と聞きながら進めた。自分で調べるよりずっと早かった。
まとめ
- LINE Bot の無料枠(Push Message)は月200通。テストを込みで使うと一日で枯渇する
- ログをちゃんと取っておくとデバッグが格段に楽になる
- Slack への乗り換えは、やってみると LINE と大差ない難度だった
ちなみに、この記事の下書きは Slack ボット経由で Claude Code に指示して作成している。乗り換えたその場でちゃんと使い物になっているので、結果的には悪くない体験だった。