Raspberry Piで自分専用のTelegramクライアントを自作してみた!
I Built a Telegram Client for Pi
I Built a Telegram Client for Pi
Raspberry Pi上で動作するTelegramクライアントを自作しました。
スマホからエージェントを使えるっていうアイデア、すごくいいと思う。Termuxも悪くないけど、小さい画面だとちょっと使いにくいんだよね。
で、Hermesを試してみたんだけど、Telegramのサポートはバッチリだった。でも結局、コーディングで使うことはなくて、いつもcodexとかpiに投げるようにお願いするだけになってたんだ。Hermesを使うメリットがあんまり感じられなかったから、使うのやめちゃった。
それからPiをもっと使うようになって、その拡張性が気に入ったんだ。Piは自分でforkして自分のニーズに合わせて開発してる初めてのソフトウェアだよ。この拡張性の高さは心底気に入ってる。
Piを動かすのに役立つ拡張機能がないか探してたら、案の定あったよ。Piの開発者であるMario本人によるもの(https://github.com/badlogic/pi-telegram )だったんだけど、クライアントそのものじゃなくてブリッジだったんだ。TUIでチャットを開始してからTelegramで引き継ぐ必要があって、それがどうも馴染めなかった。他のも大体同じような感じだったしね。
だから、自分で作っちゃったよ!
注記:この文脈での「Pi」は、ある種のエージェントハーネスを指していて、Raspberry Piのことじゃないよ。
自分も混乱した。
それ自分で作ったの?それともPIに作らせたの?
この文脈で「pi」が何を指すのか分からないっていう連中へ。これはMario ZechnerによるAIエージェント/コーディングハーネス[1][2]のことだよ。claude codeやopenaiのcodexなんかと精神的には似てるけど、ずっとシンプルだね。
サードティア(第3層)なんて呼ぶつもりはないな。むしろopencodeやcodexと並んで「ファーストティア(第1層)」の一つだし、非VC(ベンチャーキャピタル)系の唯一の存在だよ(Marioがearendilに加わる前はね。earendilが資金調達してるかどうかは知らないけど)。
とにかく、Piはいいよ。自分にはTelegramクライアントは必要ないけど、プラグインを作るのもソースコードをいじるのも本当に簡単(オープンソース万歳!)だから、Piの素晴らしさがまさに証明されてるよね。
じゃあね。
トピックから逸れるけど、pi-tui以外で、Piと相性がいいおすすめのTUIライブラリってある?lazydockerみたいに、Piの中でマルチペインのTUI体験を実現したいんだよね。pi-tuiだとちょっと機能が足りなくて。
Swival用にSignalクライアントを作ったよ:https://github.com/swival/nbclaw
単純なタスクで毎日使ってる。
これ最高じゃん。自分は友達や同僚とのチャットはメインでTelegramを使ってるんだ。これをDocker化してNASで動かせば、ノートPCがオンラインじゃなくても大丈夫になるな。
ブランチを切ってデプロイして、テスト用にCloudflare tunnelのリンクを発行するワークフローを組めればいいかも。承認されたらメインブランチにマージして本番環境にデプロイする、みたいな。最高にイケてる。
なるほど、自分たち(と他の多くの人たち)も同じ問題、つまり外出先でのエージェント管理に悩んでたんだね。自分はターミナルマルチプレクサ(herdr)用のプラグイン[1]を作って、tailnet経由で提供されるPWAからセッションにアクセスできるようにしたよ。
「通常のDMはデフォルトで1つのpiセッション」って、たった一つのメッセージ?それとも一つのメッセージスレッドのこと?正直、どちらも極端なトレードオフだよね。いろんなClawsがどうやってるか調べてみたんだけど、結局、アイドルタイムアウトが発生したら次のメッセージは新しいセッションを開始するように落ち着いたよ。それに加えて、/continue、/new、そしてTelegramのキーボードで最近のセッションを表示できる/resumeも作ってみた。