Telegramを使ったClaude Code実行スクリプト
(github.com/hada0127)紹介
急ぎのとき(退勤後、外出先)に使うために作った npx スクリプトで、Claude CodeをTelegramで操作できるスクリプトです。
特徴
- プロジェクト(パス)1つにつきチャットルーム1つ(個別のTelegramボットが必要)
- 並列実行、繰り返し実行(成功するまで)、優先順位の指定が可能
- 作業の確認、作業のキャンセルが可能
インストールと使い方
npx cc-telegramで実行し、ボットトークンと案内に従ってTelegramのchat idを登録し、その他いくつかの設定を行えば利用準備は完了です。- その後
npx cc-telegramで実行し、Telegramで/newコマンドを使って新しいリクエストを送ればOKです。 - Telegramでは
/の自動補完で利用可能なコマンド一覧が表示されます。詳細はリンクを参照してください。
簡単な開発記
第1版
第1版は、中継サーバーとPC内の複数パスを指定できるエージェントプログラムを使って、1つのチャットルーム経由で複数パスのプロジェクトを利用するバージョンでした。
複数のプロジェクトを1つのチャットルームで管理しようとした結果、かえって複雑さだけが増し、2日で廃止しました。
第2版
第2版では中継サーバーをなくし、スクリプトがTelegramメッセージをポーリング方式で取得するように変更しました。
このときは機能内にサブエージェント群を搭載し、それらのエージェントがリクエストを分析して作業し、作業がないときは改善案などを提案・自動実行する方式でした。
昨年末の連休4日間動かした結果、大量のゴミコードを生成していることが確認できたため廃止しました。
第2.5版
第2版から改善案の提案・自動実行部分を削除したバージョンです。何とか動きはするものの、
現在のバージョン
少し前にralph-loopプラグインを知り、プロジェクトごとに試してみた結果、繰り返し実行方式とプロジェクトごとのClaude設定を使うのが最も良いと判断しました。
第2版の問題点は、各プロジェクトごとに適切なサブエージェント設定が別々にあるのに、それを考慮せず統合サブエージェント群を提供していたため、かえって性能低下があると判断したことです。
それまでの作業はほぼ破棄し(OS別のClaude Code実行部分、Telegram連携部分のコードだけ再利用)、ほぼゼロから再設計して今のバージョンになりました。
個人的には、ようやく初めて実用に耐えるバージョンになったと思っています。
使ってみて、感想やフィードバックをいただけるとうれしいです。
まだコメントはありません。