言語を切り替える
テーマを切り替える

OpenClaw Telegram連携ガイド:Bot作成から設定完了まで30分で構築する

午前2時、コードデバッグ中にふとAIに聞きたいことが浮かびました。ブラウザを開き、ChatGPTにログインし、ロードを待つ——この数分のプロセスがひどく煩わしく感じました。「Telegramで友達と話す感覚でAIに聞けたらいいのに」と。

実は、この願いはOpenClawとTelegram Botを使えば簡単に叶います。複雑なバックエンド開発もサーバー設定も不要。このチュートリアル通りに進めれば、30分後には24時間待機するAIプライベートアシスタントが手に入ります。

初めてTelegramでBotから返信が来た時の感動は忘れられません。今日はその全プロセスを、私が踏んだ落とし穴やトラブルシューティングも含めて手取り足取り教えます。準備はいいですか?

準備:知っておくべき基本概念

作業を始める前に、いくつかの重要な概念を整理しておきましょう。

Telegram Botとは?
普通のユーザーアカウントとは異なり、自動応答プログラムのためのインターフェースです。メッセージを受け取り、返信を返すことはできますが、Botから自発的に会話を始めることはできません(ユーザー開始が必須)。

BotFatherとは?
Telegram公式の「Bot工場」です。全てのBotはこのBotFatherを通じて作成・管理します。Botを使ってBotを作る——初めて聞いた時は面白い概念だと思いました。

OpenClawの役割
TelegramとAIモデル(Claude/GPTなど)を繋ぐ「橋渡し役」です。Telegramからメッセージを受け取り、AIに投げ、AIの回答をTelegramに戻します。この連携処理をOpenClawが担うため、あなたはコードを書く必要がありません。

4
必要な準備アイテム

準備するもの

  • Telegramアカウント
  • インストール済みのOpenClaw(未導入ならインストールガイド参照)
  • AIモデルのAPI Key(Claude, GPT, Gemini等)

OpenClawはマルチプラットフォーム(Telegram, WhatsApp等)かつマルチモデル対応なので、一度環境を作れば拡張も簡単です。

ステップ1:BotFatherでBotを作成する

では始めましょう。Telegramを開き、検索バーに @BotFather と入力します。青い認証マークがついた公式アカウントを選んでください(偽物に注意)。

Bot作成フロー:

  1. BotFatherに /newbot コマンドを送信
  2. Botの表示名を聞かれるので入力(例:“My AI Assistant”)
  3. Botのユーザー名を決定します。要件:必ず bot で終わり、全Telegram内で一意であること。(例:MyAwesomeAI2026Bot
    AIAssistantBot のような一般的な名前はまず取れません。数字やイニシャルを足して工夫してください。

Tokenの取得(最重要):
作成に成功すると、BotFatherが以下のようなTokenを表示します:

123456789:ABCdefGHIjklMNOpqrsTUVwxyz1234567890

これは家の鍵と同じです。このTokenがあれば誰でもあなたのBotを操作できてしまいます。パスワード管理ソフト等に保存し、絶対にチャットや公開リポジトリに貼り付けないでください。

推奨設定(オプション):

  • /setdescription:Botの紹介文設定
  • /setabouttext:プロフィール画面の「About」設定
  • /setuserpic:アイコン画像の設定

自分のユーザーIDを取得:
後のホワイトリスト設定で必要になります。Telegramで @userinfobot を検索し、/start を送信すると、あなたの数字ID(例:123456789)が返ってきます。これもメモしておいてください。

ステップ2:OpenClawのTelegram Channel設定

Bot Tokenを手に入れたら、OpenClaw側の設定です。JSONファイルを編集するだけです。

設定ファイルの場所
デフォルトでは ~/.clawdbot/config/channels.json です。Docker運用の場合はマウント先を確認してください。

ファイルを開き、以下のJSON構造を記述・編集します(ファイルがない場合は作成):

{
  "channels": [
    {
      "id": "telegram-main",
      "type": "telegram",
      "enabled": true,
      "config": {
        "botToken": "YOUR_BOT_TOKEN_HERE",
        "allowedUserIds": [123456789],
        "enableDmPairing": false
      }
    }
  ]
}

パラメータ解説:

  • id:識別子。何でも良いですがわかりやすい名前で。
  • type:必ず telegram
  • enabledtrue で有効化。
  • botToken:BotFatherから貰ったTokenを貼り付け(余計なスペースが入らないよう注意)。
  • allowedUserIds:アクセス許可するユーザーIDの配列(次項で詳述)。
  • enableDmPairing:ペアリングモード。初心者は false でOK。

編集方法:
Linux/Macなら nanovim で:

nano ~/.clawdbot/config/channels.json

注意点:

  • JSONの文法厳守(最後の要素の後ろにカンマをつけない)。
  • allowedUserIds は配列なので、1人だけでも [] で囲む。
  • Tokenのコピーミスに注意。

JSONLintなどのオンラインチェックツールを使うと、構文エラーを防げます。

ステップ3:ホワイトリストでBotを保護する

OpenClawを公開Botとして動かす場合を除き、ホワイトリストは必須です。設定しないと、あなたのBotを見つけた赤の他人が、あなたのAPIキーを使ってAIと話し放題になってしまいます。

なぜ必須なのか:

  • API利用料の浪費防止(GPT-4等は高額です)
  • プライバシー保護(対話内容の漏洩防止)

設定方法:
先ほど @userinfobot で取得したIDを使います。

シングルユーザー:

"allowedUserIds": [123456789]

チーム利用(複数人):

"allowedUserIds": [123456789, 987654321, 555555555]

他人のIDを知るには?
チームメンバーに各々 @userinfobot を叩いてもらい、出てきた数字IDを教えてもらうのが一番確実です。IDリストと名前の対応表をドキュメント化しておくと管理が楽です。

ステップ4:起動と接続テスト

設定が終わったら、いよいよ起動です。

OpenClawの起動:

# ローカル
openclaw start
# または
npm start

# Docker
docker compose up -d

ログ確認:
ちゃんと接続できたかログを見ます。

docker compose logs openclaw -f

成功していれば以下のようなログが出ます:

[INFO] Loading Telegram channel: telegram-main
[INFO] Telegram bot connected successfully
[INFO] Listening for messages...

初会話テスト:

  1. Telegramで自分のBotを検索
  2. Start ボタンを押す
  3. 「こんにちは」と送ってみる
  4. 数秒でAIから返信が来れば成功!

自分のBotが初めて喋った瞬間は、なんとも言えない嬉しさがあります。もし無反応なら、次のトラブルシューティングへ。

よくあるトラブルと解決策

Botが動かない? 9割は以下のどれかです。

Q1: Botが全く反応しない

  • OpenClawは起動していますか?
  • Tokenは正しいですか?(スペースが入っていないか)
  • あなたのIDはホワイトリストに入っていますか?
  • JSONの構文エラーで起動に失敗していませんか?
  • AIのAPI Key残高はありますか?

Q2: “Unauthorized” や “Forbidden” エラーが出る

  • あなたのIDが allowedUserIds に含まれていない可能性が大です。
  • IDは数字です。["123456789"] ではなく [123456789] と書いてください。
  • 設定変更後、OpenClawを再起動しましたか?

Q3: レスポンスが遅い

  • 高機能モデル(OpusやGPT-4)は遅めです。HaikuやGPT-3.5で試してみてください。
  • サーバーのネットワーク状況も影響します。

Q4: 設定を変えたのに反映されない

  • 再起動が必要です!
docker compose restart
# または
systemctl restart openclaw

Q5: Tokenが漏洩した!

  1. BotFatherで /revoke を送り、古いTokenを無効化。
  2. /token で新Token発行。
  3. channels.json を更新して再起動。

上級編:さらに使いこなす

カスタムコマンドメニュー
BotFatherで /setcommands を使い、メニューを作れます:

start - 会話開始
help - ヘルプ表示
clear - 記憶消去

これでユーザーは / を入力するだけでコマンドを選べます。

マルチモデル割り当て
OpenClawはユーザーごとに使用するAIモデルを変えられます。「管理者はGPT-4、一般メンバーはGPT-3.5」といった運用が可能。詳細は公式ドキュメントのMulti-Modelセクション参照。

Skillsとの連携
これが真骨頂です。ファイル操作、Web検索、Shell実行などのSkillを導入すれば、Telegramからサーバー操作や調査依頼が可能になります。(※強力なためセキュリティには要注意)

結論

振り返ると、BotFatherでの作成、JSON設定、ホワイトリスト登録、起動——これだけで自分専用のAIアシスタントが完成します。

ハマりポイントの復習:

  • Tokenの扱いは慎重に
  • ホワイトリスト(ID登録)を忘れない
  • JSONのカンマミスに気をつける
  • 設定変更後は必ず再起動

これで、いつでもどこでもTelegramからAIに相談できるようになりました。ブラウザを開く手間も、ログイン待ちもありません。

次はWhatsApp連携や、カスタムスキルの開発にも挑戦してみてください。OpenClawの可能性は無限大です。

OpenClaw Telegram Bot完全設定フロー

ゼロからTelegram AIアシスタントを構築する手順:Bot作成、設定、セキュリティ、テスト

⏱️ Estimated time: 30 min

  1. 1

    Step1: Step 1: Bot作成 (BotFather)

    Telegramで @BotFather を検索。
    /newbot コマンドで作成開始。
    表示名とユーザー名(botで終わる一意の名前)を設定。
    発行されたBot Tokenを安全に保存。
    @userinfobot で自分のID(数字)を取得。
  2. 2

    Step2: Step 2: channels.json設定

    設定ファイル(~/.clawdbot/config/channels.json)を編集:
    {
    "channels": [{
    "id": "telegram-main",
    "type": "telegram",
    "enabled": true,
    "config": {
    "botToken": "YOUR_TOKEN",
    "allowedUserIds": [123456789],
    "enableDmPairing": false
    }
    }]
    }
  3. 3

    Step3: Step 3: ホワイトリスト保護

    allowedUserIds 配列に許可するユーザーID(数字)を入力。
    複数人の場合はカンマ区切りで列挙。
    これにより不正なAPI利用を防止。
  4. 4

    Step4: Step 4: 起動とテスト

    OpenClawを起動(npm start / docker compose up -d)。
    ログで "Telegram bot connected" を確認。
    Botに「こんにちは」と送信し応答を確認。
  5. 5

    Step5: Step 5: トラブル対応

    無反応ならログ確認。
    設定変更時は必ず再起動(docker compose restart)。

FAQ

Botがメッセージに反応しません。
主な原因:
1. IDがホワイトリスト(allowedUserIds)に入っていない
2. Tokenの設定ミス(スペース混入など)
3. OpenClawが起動していない
4. JSONエラーで起動失敗している
5. AIのAPI残高切れ
チームメンバーを追加するには?
メンバーに @userinfobot でIDを確認してもらい、allowedUserIds 配列に追加してOpenClawを再起動してください。
Tokenが漏洩したら?
BotFatherで /revoke して無効化し、新Tokenを発行。channels.jsonを更新してサービス再起動。
ユーザーごとに使うAIモデルを変えられますか?
はい、OpenClawのMulti-Model機能で可能です。ユーザーIDやグループごとにモデルを割り当てられます。
設定を変えたのに動きません。
設定ファイルの変更を反映するには、OpenClawサービスの再起動(restart)が必須です。

4 min read · 公開日: 2026年2月5日 · 更新日: 2026年2月5日

コメント

GitHubアカウントでログインしてコメントできます

関連記事