I Built a Telegram Client for Pi
https://www.npmjs.com/package/@atharva-again/pi-tg
atharva-again · 2 days ago
11 comments
https://www.npmjs.com/package/@atharva-again/pi-tg
atharva-again · 2 days ago
11 comments
atharva-again · 2 days ago
I like the idea of being able to use agents from my phone. Termux is nice, but not very good on small screens.
So I tried Hermes, it had first-class telegram support, but then I never use it for coding and was asking it to delegate to codex / pi. There wasn't much I was gaining from hermes, so I stopped using it.
Then I started using Pi more and liked its extensability. Pi is the first software I have forked and developing to meet my needs. I genuinely love how extensible it is.
I was in the market to see any extensions that help me run Pi, and sure enough there were. One was from Mario himself, the creator of Pi (https://github.com/badlogic/pi-telegram), but it was a bridge instead of being a client itself. I need to start a chat in the TUI and then continue it in telegram. I didn't like that. Most others were same.
So I built my own!
deeplurker571 · 13 hours ago
I'm in a similar boat, I recently discovered Paseo (https://paseo.sh/) which has mostly surpassed my expectations. It has changed my workflows, pi interaction is via a client rather than inside screen. But...I mostly have not missed that portion. I have zero affiliation other than being surprised by how well it works. There are minor UX improvements that could be made, but it's a solid...harness-harness ? Aside: The most useful extra feature I wasn't looking for is that Paseo can inject its own MCP tools to allow managing itself. I now use this to allow pi to manage subagents in "detached" mode, meaning it creates another visible, fully interactive session that I can watch and interrupt as needed.
throw10920 · 12 hours ago
I see that you also forked Pi itself[1]. Out of curiosity, is there a reason you did this instead of implementing those two features in your fork as Pi extensions?
I've managed to implement most of the things I want in Pi through extensions - with one exception (disabling animations, because there's no extension API or setting for that).
stackghost · 15 hours ago
NB: "Pi" in this context refers to an agent harness of some sort, and does not refer to the Raspberry Pi.
I was confused.
croes · 15 hours ago
Did you built it or did you tell PI to build it?
fredoliveira · 11 hours ago
There'd be no shame either way. Pi is built on the idea that you should ask it to extend itself.
croes · 9 hours ago
But there is a difference in ordering something or doing it.
If PI extended itself, PI did it.
If I tell you, stay hydrated and get enough sleep, did I improve your live or you?
DANmode · 4 hours ago
Would I have without your prompt?
croes · 3 hours ago
Would I program without a customer‘s order.
Imagine it works like this.
The customer send me a mail, I program, I send the result back the next day, he sends changes he wants, I program again, send them back next day etc. until he is satisfied.
Who is the programmer? Me or my customer.
Now I hook up an AI to my email account without telling my customer. The AI reads the customer‘s mail, programs, sends the results the next day, customer sends changes, etc.
Who is the programmer?
tough · 15 hours ago
To all the haters to not knowing what "pi" means in this context. Is mario zechner's ai agent / coding harness [1][2], similar in spirit albeit much less complex to claude code or openai's codex and others.
I wouldn't call it third tier. If anything alongside opencode, and codex, its one of the "first tier" and the only non-VC-backed (at least before mario joined earendil (idk about earendil raising or not)
anyways. Pi is good. I dont need a telegram client for it, but this precisely show why pi is great, because its really easy to extend pi building plugins or modifying the source (yay, open source)
peace
bpavuk · 13 hours ago
moreso, it's the only harness that maps close to Neovim philosophy of "everything is a plugin." heck, I took a bite at it and it seems fun to build plugins! especially if it's something as silly as warhammer.pi :) (shameless plug, npm: @bpavuk/warhammer.pi)
that thing makes Pi talk like Adeptus Mechanicus. what's more fitting to a machine than voice that's associated with machines?
KetoManx64 · 5 hours ago
Going to try this prompt out within OpenCode, thanks for the share!
bpavuk · 17 minutes ago
I guess it's fair to request a star in exchange: https://tangled.org/bpavuk.neocities.org/warhammer.pi
may Omnissiah bless you and your Machine Spirit
epistasis · 13 hours ago
I prefer Pi to Claude Code these days, and use it most of the time when I can. The interaction and permissions harness is an order of magnitude better than Claude in my experience, just out of the box. I barely have time to read all the model output, much less fine tune some crazy agent harness tooling that changes underneath me daily and might or might not be documented.
zackify · 13 hours ago
I have the llm twean every little piece of pi which is why I love it. And swapping models. Plus not having scroll jank like I got in opencode.
I even tweaked hitting "enter" when nothing is in the input box, it resume the last request. I love having this control and ease to extend and add anything to the ui
p1necone · 13 hours ago
Everything else feels bloated. The same model in pi will consume significantly less context for the same task as there's not piles of unchangeable system prompts being passed along (I assume), and at least compared to OpenCode the quality feels better too. I just wish Anthropic let me use my Claude subscription with pi, it's annoying having to switch between them.
(Not to mention the unmatched level of customisability)
prettyblocks · 9 hours ago
The default system prompt is so lean:
https://github.com/earendil-works/pi/blob/main/packages/codi...
LeoPanthera · 11 hours ago
Is it really necessary to accuse people of being "haters"?
anoneng · 2 hours ago
There was no “context” provided whatsoever, not even in the link.
mellosouls · 37 minutes ago
Its in the first comment. Presumably that slipped down the thread as other comments came in.
febed · 14 hours ago
Off topic, but apart from pi-tui, is there a recommended TUI library that integrates well with the Pi? I want to have a multi pane TUI experience like lazydocker right inside Pi. Pi-tui is a bit limited.
NamlchakKhandro · 13 hours ago
No.
Use zelilij
fredoliveira · 11 hours ago
Why not just have multiple instances of pi inside one of the many multiplexers out there? Tmux, Zelliij, herdr, for example.
jedisct1 · 14 hours ago
I build a Signal client for Swival: https://github.com/swival/nbclaw
And I use it daily for simple tasks.
mfkp · 14 hours ago
This is awesome, I use telegram as my main chat app with all of my friends and coworkers. Now I need to figure out how to dockerize this and run it on my NAS so it's not reliant on my laptop being online.
Maybe can figure out a workflow to make a branch, deploy it and give me a cloudflare tunnel link to test it, and if approved merge the changes into main branch and deploy to prod. The vibes are off the charts.
asar · 14 hours ago
So I guess we (and a lot of other people) have had the same problem, which is managing your agents on the go. I decided to build a plugin[1] for my terminal multiplexer (herdr) to access the sessions via PWA served through a tailnet.
wild_egg · 12 hours ago
check out tsnet if you are building on tailscale anyways. your app can then be a tailnet node that can read tailnet WhoIs data and have access controlled via tailnet ACL
asar · 4 hours ago
really cool! didn't know this existed, thanks! Going to have to figure out how to make this work with headscale though, looks a bit tedious.
CGamesPlay · 11 hours ago
"A normal DM is one pi session by default." A single message, or a single message thread? Both are pretty extreme trade-offs to make, honestly. I spent a bunch of time looking at how the various Claws do this, and I settled on an idle timeout causing the next message to start a new session, but I also built /continue, /new, and a /resume that shows recent sessions with a telegram keyboard.
rufasterisco · 4 hours ago
Congrats on releasing this.
OTOH all my attempts of driving harnesses via chat have been frustrating because they all fail against the fact that I want to see the code and mobile devices are not really good at that.
Better on tablets, but even there I get more value on having final html artifacts pushed on a server and inspecting them, and dashboards.
Is there some obvious use case I am missing? Or tool for inspecting code?
I don’t run openclaw et al, is that a context where you find this valuable?
iamsaitam · 1 hours ago
You know it's AI slop when the title is some variation of "I built.."
mellosouls · 34 minutes ago
Honestly, there is no need for that sort of comment. Its very normal these days to build things with AI and they don't necessarily have to be slop.