English中文
中文 English
Tutorial

Claude Code で Telegram 連携 完全ガイド

ゼロから始める AI アシスタント構築 — ハマりポイントと解決策をすべて収録

2026-05-05 · 点点滴滴喵児貴

目次
  1. はじめに:なぜ Claude Code + Telegram なのか
  2. 事前準備
  3. ステップ 1:Bun のインストール
  4. ステップ 2:Claude Code のインストール
  5. ステップ 3:Telegram Bot の作成
  6. ステップ 4:Claude Code Telegram Plugin の設定
  7. ステップ 5:応用設定
  8. よくあるトラブルシューティング
  9. おわりに

0. はじめに:なぜ Claude Code + Telegram なのか

想像してみてください:通勤電車の中でスマホを取り出し、Telegram を開いて Claude に直接話しかける。コードを書いてもらったり、ドキュメントを分析したり、スケジュールを立てたり、調べものをしてもらったり。パソコンを開く必要もブラウザも不要 —— AI アシスタントが、いつも使っているメッセージアプリの中にいるのです。

Claude Code はそれ自体が強力な CLI ツールですが、Telegram プラグインを使えば「パソコンの前でしか使えない」から「いつでもどこでも使える」に変わります。このガイドでは、ゼロから連携を完了するまでを、自分が実際にハマったポイントも含めてすべて解説します。

連携が完了すると、以下のことができるようになります:

1. 事前準備

始める前に、以下のものを用意してください:

サーバー 1 台
Linux または Mac(クラウド VM でも可)。Telegram メッセージを常時受信するため、24 時間稼働が必要です。
Claude アカウント(2 択)
方法 1:サブスクリプションでログイン — claude.ai の有料プランで直接ログイン。月額固定、一般利用向け。
方法 2:API Keyconsole.anthropic.com で取得。従量課金、ヘビーユースや自動化向け。
Telegram アカウント
Bot を作成できる必要があります。Telegram アカウントがあれば OK です。
基本的なターミナル操作
SSH 接続、コマンド実行、設定ファイルの編集ができること。
Tip:おすすめのサーバー選び

24 時間稼働のサーバーがない場合は、安価な VPS(例えば Linode の最安プラン $5/月)や、自宅に置いた Mac mini / Raspberry Pi がおすすめです。大事なのは常時稼働できることです。

2. ステップ 1:Bun のインストール

Bun は高速な JavaScript ランタイムで、Claude Code の Telegram プラグインはこれに依存して動作します。Telegram プラグインを使うには、先に Bun をインストールする必要があります。

インストールコマンド(Mac / Linux 共通)

# Bun をインストール curl -fsSL https://bun.sh/install | bash

インストール完了後、シェルの設定を再読み込みします:

# zsh の場合(Mac デフォルト) source ~/.zshrc # bash の場合(Linux で一般的) source ~/.bashrc

インストール確認

bun --version # バージョン番号が表示されれば OK(例: 1.2.x)
落とし穴:Bun は事前にインストールが必須

Claude Code の Telegram プラグインは起動時に Bun を呼び出してスクリプトを実行します。システムに Bun がインストールされていない場合、プラグインはサイレントに失敗します —— エラーも出ず、ただ動かないだけ。「Bot が反応しない」原因で最も多いのがこれです。

落とし穴(Mac):root でインストールしない

Mac では絶対に sudo でインストールコマンドを実行しないでください。Bun のインストールスクリプトはバイナリを ~/.bun/bin/ に配置しますが、root で実行すると root の home ディレクトリに入ってしまい、通常ユーザーから bun が見つからなくなります。

落とし穴(Mac):システム権限の確認ダイアログ

インストール中に macOS がセキュリティ権限のダイアログ(例:「ターミナルがダウンロードフォルダにアクセスすることを許可」)を表示することがあります。必ず「許可」をクリックしてください。拒否するとインストールが失敗しますが、明確なエラーメッセージは表示されません。

Tip:PATH の設定を確認する

インストール後に bun --version で command not found と表示される場合は、シェル設定ファイル(~/.zshrc または ~/.bashrc)に以下の行があるか確認してください:

# .zshrc または .bashrc に以下の行があることを確認 export BUN_INSTALL="$HOME/.bun" export PATH="$BUN_INSTALL/bin:$PATH"

3. ステップ 2:Claude Code のインストール

Claude Code CLI のインストール

# npm でグローバルインストール npm install -g @anthropic-ai/claude-code
落とし穴(Mac):sudo でインストールしない

Bun と同様、sudo npm install -g は使わないでください。権限エラーが出る場合の正しい対処法は、npm のグローバルインストール先を変更することです:

# npm install -g で EACCES 権限エラーが出る場合: mkdir -p ~/.npm-global npm config set prefix '~/.npm-global' # ~/.zshrc または ~/.bashrc に追加: export PATH="$HOME/.npm-global/bin:$PATH" # 設定を再読み込み source ~/.zshrc # 再度インストール npm install -g @anthropic-ai/claude-code

認証の設定(2 択)

方法 1:サブスクリプションでログイン(初心者おすすめ)

Claude Pro / Team / Max サブスクリプションをお持ちの場合、アカウントで直接ログインでき、API Key は不要です:

# Claude Code を起動するとブラウザが開いてログインできます claude # claude.ai のアカウントでログインするだけ # 月額固定料金、別途チャージ不要
サブスクリプション vs API Key、どちらを選ぶ?

サブスクリプション:月額固定(Pro $20/月)、一般利用向け、使用量を気にしなくて良い。
API Key:従量課金、ヘビーな自動化、コストを精密に管理したい、エンタープライズ向け。
おすすめ:まずサブスクリプションで始めて、使用量が安定してから API に切り替えるか検討しましょう。

方法 2:API Key を使う

# 環境変数を設定(現在のセッションで即時有効) export ANTHROPIC_API_KEY="sk-ant-api03-xxxxxxxxxxxxxxxxxxxxxxxxxx"

起動のたびに有効にするため、シェル設定ファイルに書き込みます:

# ~/.zshrc(Mac)または ~/.bashrc(Linux)に書き込み echo 'export ANTHROPIC_API_KEY="sk-ant-api03-あなたのkey"' >> ~/.zshrc source ~/.zshrc
セキュリティに関する注意

API Key はクレジットカードと同じです。公開リポジトリに入れたり、他人に共有したりしないでください。クラウドサーバーを使う場合は、~/.zshrc のファイル権限が 600(自分だけ読み取り可)であることを確認しましょう。

インストール確認

claude --version # バージョン番号が表示されれば OK # API が使えるか簡易テスト claude -p "hello と言って" # 正常に応答が返れば API Key の設定は成功

4. ステップ 3:Telegram Bot の作成

Telegram で Bot を作成し、Bot Token を取得します。

4.1 Bot の作成

  1. Telegram で @BotFather を検索する
  2. 会話を開いて /newbot と入力する
  3. BotFather が Bot の表示名を聞いてきます(日本語 OK、例:「マイ AI アシスタント」)
  4. 次に username を聞かれます(英数字で末尾が _bot、例:my_ai_assistant_bot
  5. 完了すると、BotFather から Bot Token が送られます。形式はこんな感じ:
# Bot Token のフォーマット例(これはダミーです) 7123456789:AAF1x2y3z4a5b6c7d8e9f0-AbCdEfGhIjKlM
Tip:Bot Token は大切に保管

Bot Token は Bot のパスワードのようなものです。Token を手に入れた人は Bot を操作できてしまいます。安全に保管し、公開しないでください。

4.2 Group Privacy の設定(重要!)

見落としがちな設定です。デフォルトでは、Bot はグループ内で以下のメッセージしか受け取れません:

Bot にグループ内のすべてのメッセージを受信させたい場合(毎回 @メンションしなくて済むように)、Group Privacy を無効にする必要があります:

  1. @BotFather と会話する
  2. /setprivacy と入力する
  3. 作成した Bot を選択する
  4. Disable を選択する
# BotFather との会話の流れ: あなた:/setprivacy BotFather:Choose a bot to change group messages settings. あなた:@your_bot_username BotFather:'Disable' - your bot will receive all messages in groups. 'Enable' - your bot will only receive messages that... あなた:Disable BotFather:Success! The new status is: DISABLED.
落とし穴:Group Privacy はグループに追加する「前に」設定する

Bot がすでにグループに参加している場合、Privacy 設定を変更した後に Bot を一度グループから削除して再追加する必要があります。新しい設定はそうしないと反映されません。これは Telegram Bot API の既知の仕様です。

4.3 Chat ID の取得

Claude Code の Telegram プラグインは、どの chat_id との対話を許可するかを設定する必要があります(セキュリティ対策:知らない人が Bot を使って API クレジットを消費するのを防ぐため)。

個人の Chat ID を取得する方法:

# 方法 1:@userinfobot を使う # Telegram で @userinfobot を検索し、メッセージを送ると ID を教えてくれます # 方法 2:Bot API で直接確認 # まず Bot にメッセージを送り、curl で updates を取得: curl -s "https://api.telegram.org/botあなたのTOKEN/getUpdates" | python3 -m json.tool # 返ってきた JSON の中から "chat": { "id": 123456789 } を探す
Tip:グループの Chat ID

グループの chat_id は負の数です(例:-1001234567890)。同じ getUpdates の方法で、Bot をグループに追加後にメッセージを送れば確認できます。

5. ステップ 4:Claude Code Telegram Plugin の設定

5.1 Bot Token の設定

Claude Code の CLI で、設定コマンドを使って Telegram プラグインを構成します:

# Claude Code を起動 claude # Claude Code の対話画面で /telegram:configure コマンドを使う # または直接 bot token を設定: /telegram:configure

プロンプトに従って Bot Token を貼り付けてください。

5.2 許可する Chat ID の設定

セキュリティのため、Bot と対話できる chat_id を設定する必要があります:

# access コマンドで許可リストを管理 /telegram:access

設定が完了すると、許可リストに含まれる chat_id からのメッセージにだけ Bot が応答するようになります。

5.3 Claude Code をデーモンモードで起動

Bot を常時稼働させるには、Claude Code をデーモンモードで起動します:

# バックグラウンドモードで Claude Code を起動(Telegram 接続を維持) claude --daemon # または nohup でターミナルを閉じても動作を継続 nohup claude --daemon &> ~/claude-daemon.log & # ログを確認して正常起動を確認 tail -f ~/claude-daemon.log

5.4 動作確認

Telegram で Bot にメッセージを送ってみましょう(例:「こんにちは」)。すべて正しく設定されていれば、数秒以内に Bot が返信するはずです。

成功の目安

Bot がメッセージに返信すれば成功です。おめでとうございます!基本的な連携は完了です。次は応用設定に進みましょう。

Bot が反応しない場合

よくある原因(確認する順番):
1. Bun がインストールされていない → bun --version で確認
2. Bot Token が間違っている → 再確認
3. Chat ID が許可リストにない → access 設定を確認
4. Claude Code がデーモンモードで動いていない → プロセスを確認

6. ステップ 5:応用設定

6.1 音声メッセージの自動文字起こし(Whisper)

音声で Bot と会話したい場合は、音声認識を設定する必要があります。Claude Code の Telegram プラグインは音声メッセージを受信し、Whisper モデルで自動的にテキスト変換してから処理できます。

# ローカルの Whisper モデルを使う場合(faster-whisper がおすすめ) pip install faster-whisper # または OpenAI の Whisper API を使う場合(OpenAI API Key が必要) export OPENAI_API_KEY="sk-..."
Tip:ローカル Whisper vs. API

GPU 搭載サーバーがあるなら、ローカル Whisper がコスパ良く高速です。GPU がない場合は OpenAI Whisper API の方が現実的で、1 分の音声で約 $0.006 です。

6.2 グループ対応

グループで Bot を使うには:

  1. Group Privacy が無効になっていることを確認(ステップ 3 で解説済み)
  2. Bot をグループに追加する
  3. グループの chat_id(負の数)を許可リストに追加する
# グループ chat_id の例(負の数であることに注意) -1001234567890 # access 設定でグループ ID を追加 /telegram:access # グループの chat_id を追加する

6.3 自動起動(systemd / pm2)

再起動のたびに手動で Bot を起動するのは面倒です。以下は一般的な自動起動の方法 2 つです:

プラン A:systemd(Linux おすすめ)

# systemd の service ファイルを作成 sudo nano /etc/systemd/system/claude-telegram.service
# /etc/systemd/system/claude-telegram.service の内容 [Unit] Description=Claude Code Telegram Bot After=network.target [Service] Type=simple User=あなたのユーザー名 Environment=ANTHROPIC_API_KEY=sk-ant-api03-あなたのkey Environment=HOME=/home/あなたのユーザー名 ExecStart=/home/あなたのユーザー名/.npm-global/bin/claude --daemon Restart=always RestartSec=10 [Install] WantedBy=multi-user.target
# サービスを有効化して起動 sudo systemctl daemon-reload sudo systemctl enable claude-telegram sudo systemctl start claude-telegram # ステータス確認 sudo systemctl status claude-telegram # ログ確認 journalctl -u claude-telegram -f

プラン B:pm2(Mac / Linux 両対応)

# pm2 をインストール npm install -g pm2 # pm2 で Claude Code を起動 pm2 start "claude --daemon" --name claude-telegram # OS 起動時に自動起動を設定 pm2 startup pm2 save # よく使う管理コマンド pm2 status # ステータス確認 pm2 logs claude-telegram # ログ確認 pm2 restart claude-telegram # 再起動

6.4 CLAUDE.md でカスタム指示

プロジェクトディレクトリまたはホームディレクトリに CLAUDE.md(または ~/.claude/CLAUDE.md)を作成して、Claude の動作をカスタマイズできます:

# ~/.claude/CLAUDE.md の例 # マイ設定 - 日本語で返答してください - 回答は簡潔に、要点をまとめて - コードにはコメントを付けてください - 質問が曖昧な場合は、推測せず確認してください
Tip:CLAUDE.md の優先順位

Claude Code は次の順序で読み込みます:プロジェクトディレクトリの CLAUDE.md > ~/.claude/CLAUDE.md。プロジェクトレベルの設定がグローバル設定を上書きします。Telegram の会話ではデフォルトでグローバルの ~/.claude/CLAUDE.md が使われます。

7. よくあるトラブルシューティング

Bot が反応しない

# トラブルシューティング チェックリスト(順番に確認): # 1. Bun がインストールされているか確認 bun --version # 2. Claude Code が動作しているか確認 ps aux | grep claude # 3. Bot Token が正しいか確認 curl -s "https://api.telegram.org/botあなたのTOKEN/getMe" # Bot の情報が返ってくれば OK # 4. chat_id が許可リストに入っているか確認 # /telegram:access の設定を再確認 # 5. グループの場合、Group Privacy が無効になっているか確認 # @BotFather で /setprivacy を実行してステータスを確認

権限エラー(Mac)

EACCES / Permission denied

Mac で最も多い権限の問題は sudo でインストールしたことが原因です。対処法:

1. root でインストールしたものを削除:sudo rm -rf /usr/local/lib/node_modules/@anthropic-ai
2. npm のグローバルパスをホームディレクトリに変更(ステップ 2 で解説済み)
3. 通常ユーザーで再インストール

Bun not found

# Bun のインストール先を確認 ls ~/.bun/bin/bun # ファイルは存在するのに command not found の場合は PATH の問題 # シェル設定ファイルに以下の 2 行があることを確認: export BUN_INSTALL="$HOME/.bun" export PATH="$BUN_INSTALL/bin:$PATH" # systemd を使っている場合は service ファイルにも PATH を追加 # Environment=PATH=/home/user/.bun/bin:/home/user/.npm-global/bin:/usr/local/bin:/usr/bin:/bin

API Rate Limit

# 429 Too Many Requests エラーが出る場合 # 1. Anthropic アカウントの残高を確認 # console.anthropic.com で使用量と残高を確認 # 2. API のティアを確認 # 新規アカウントには rate limit があり、利用量に応じて上がります # 3. グループ利用の場合、消費速度に注意 # 複数人が同時に質問 → rate limit を急速に消費 # 1 分あたりのメッセージ数に上限を設けることをおすすめします

音声メッセージが認識されない

# Whisper 関連の依存パッケージがインストールされているか確認 pip show faster-whisper # ffmpeg がインストールされているか確認(Whisper に必要) ffmpeg -version # Mac で ffmpeg をインストール brew install ffmpeg # Linux で ffmpeg をインストール sudo apt install ffmpeg

8. おわりに

おめでとうございます!Claude Code + Telegram の連携が完了しました。これで 24 時間 365 日稼働のプライベート AI アシスタントを手に入れ、いつでも Telegram からやり取りできるようになりました。

やったことの振り返り:
Bun インストール → Claude Code インストール → Telegram Bot 作成 → Plugin 設定 → 応用設定。全体で約 30〜60 分(ハマった時間を除く)。

いくつかの運用アドバイス:

# Claude Code を最新版にアップデート npm update -g @anthropic-ai/claude-code

このガイドが参考になったら、同じく連携を試してみたい友人にシェアしてください。質問があれば Telegram でお気軽にどうぞ。

Happy hacking!

関連リソース: