I don't understand why "Cache warming for anthropic models" was not put into a standalone package, but has to be bundled with the "minimal" coding agent.
FacelessJim 51 minutes ago [-]
Love pi. I tried to run some local models and pi was the only one that actually worked decently because it didn’t have a gargantuan system prompt that would take minutes to prefill on my scrawny ass laptop.
Been running it almost barebones vanilla for a couple of months. Just a bunch of basic extensions and some skills.
Now, if only they could fix the very annoying bug of the history jumping back at the beginning if I am not a the end while the model is reasoning that would great.
wilt_ 8 minutes ago [-]
Are you using Windows Terminal by any chance? I'm building a personal fork [0] with a patch for this exact bug (plus a few other open PRs from the upstream repo that seemed cool). Haven't tried contributing it upstream, since the patch is fully vibe-coded and I've spent almost no time trying to understand how it works, but the bug hasn't recurred since I've been using it.
Couldn't agree more. The vanilla openclaw install was this byzantine mess of MD files talking about souls and identities and such, it really put me off. Stripping back to a bare install of the underlying pi, it was delightfully minimal and easy to reason about. Excellent starting point for building an assistant agent without having to read or fight with a bunch of cruft on top.
Couple skills to integrate with an obsidian MD task tracker, small chat interface on the phone made public via tailscale, and bam, a reminder bot you can text from the grocery store.
"Been running it almost barebones vanilla for a couple of months. Just a bunch of basic extensions and some skills."
I am also using pi exclusively after having had decent success with openhands but begrudging all of the docker infrastructure ... and all of the emojis.
My only pain point is that in my extremely common and boring workflow, which is pi inside of gnu screen inside of OSX terminal.app ... all reasoning/thinking text is blinking ... like old fashioned ANSI blink on a BBS.
I cannot figure out how to disable the blinking thought/reasoning text ...
cbsks 25 minutes ago [-]
I just fixed something very similar in my setup. Except in my case the reasoning text was shown in dark grey on a light gray background. Very ugly and hard to read.
If I remember correctly, the reasoning text was being output using the italic ANSI code, which was being formatted funny on my terminal. I fixed it by adding a font that supports italics. I recommend taking a look at the ansi codes.
rsync 13 minutes ago [-]
Thanks.
This seems like an obvious configuration option - I can imagine someone disliking the italics as well…
hhh 1 hours ago [-]
I don't really understand the criteria for when something is 'proven' to the Pi team. Jev and the like took off less than a month ago, but MCP has been growing for nearly 2 years, and it only gets support now?
Pi felt nice when I used it, and I do value keeping things minimal, but I just find the criteria very uneven.
Zambyte 1 hours ago [-]
Classification models have been around for literally almost a century at this point. I think it's safe to say they are a proven technology.
The only thing that makes Jev and the likes particularly interesting is that it is a general purpose classifier. In the past, classification tasks meant training a new model to solve your problem. Now you can just use an off the shelf general purpose model and hit the ground running.
prometheus1992 35 minutes ago [-]
>>The only thing that makes Jev and the likes particularly interesting is that it is a general purpose classifier.
General purpose classifiers have existed and proven useful for quite a while now. We used these last year. for vision and text both.
alex7o 58 minutes ago [-]
Even jev is not truly novel, but it's latency is, you can use a reranker and get the same things but not the same speed.
Foobar8568 6 minutes ago [-]
Well, according to claude and Jevbench, Qwen 3.6 35b with ninfer on a RTX 5090@480W is like 3-5 time slower but 10%-15% better performance on the public set, I could see prefill > 15k for 700-800decode.
Latency against what and which hardware? I don't really get jev...
charcircuit 58 minutes ago [-]
But why does it need to be integrated with a minimal coding agent? Trying to support every possible thing that exists goes against being minimal.
the_mitsuhiko 50 minutes ago [-]
It is in that sense not integrated with the coding agent. It's just that some things cannot be done with bash alone, at least not as trivially. So if you were asking Pi to utilize Jev, it would not really have the right tools available to make sense of it, even though pi-ai, the underlying library, can make requests to it.
Codemode as a mechanism can expose non LLM functionality to the coding agent. In that sense, Pi does not have a tool for Jev or other classifiers. It just now makes it easier for the agent to utilize it in the same way as it's otherwise quite creative in using bash.
charcircuit 47 minutes ago [-]
>it would not really have the right tools available
The point of Pi is that the user can tell the agent to improve itself and give it the tools it does need. The minimalism comes from the user creating what they need instead of the maintainers trying to support everything for the users. The fact that it doesn't have everything the user needs out of the box is intentional.
the_mitsuhiko 33 minutes ago [-]
> The point of Pi is that the user can tell the agent to improve itself and give it the tools it does need.
The point of Pi is to be minimal but also follow what the models need. We were pretty outspoken that models need code execution, and that's why Pi to this day has a very small set of tools available. However as more and more training with these models abstracts even over toolcalls themselves with code mode and similar things, it requires changes to Pi.
And yes, that's why there is no Jev tool in Pi either.
pkulak 40 minutes ago [-]
Sure, but some things are too low-level to be skills or extensions. Code mode seems like that to me.
charcircuit 34 minutes ago [-]
With Pi the agent edits agent itself. That's one of the reasons it's written in typescript, to make such iteration fast. Going even lower, into the language runtime or operating system shouldn't be necessary but technically also possible.
coldtea 31 minutes ago [-]
The agent code is minimal. What it supports doesn't have to be, when that support doesn't require much of it.
BeetleB 1 hours ago [-]
> but MCP has been growing for nearly 2 years, and it only gets support now?
I don't know if you were aware, but not shipping with MCP was one of its "features":
It was already very good and has been used/battle tested by many us for a long time.
Some tools used to be 0.x for ages and, in this case, the 1.0 signals they're happy enough and allows them to promote things in a better way.
This is I guess the natural evolution of playing around building temporal like things for a need that many have.
rsalus 1 hours ago [-]
the latest 07-28 MCP spec is quite different than the previous iterations of MCP, so I understand the delay there tbh.
extr 40 minutes ago [-]
I agree. I don't necessarily "trust" Anthropic and OpenAI when it comes to CC/Codex respectively, but I respect that they have immense internal resources and telemetry to be able to understand what features move the needle and nudge traces in the right direction. I don't understand how non-labs judge feature inclusion? Just vibes?
Aperocky 35 minutes ago [-]
What makes you think that labs don't operate on "vibes"?
If there's anything that I can conclude about Anthropics idea of how a LLM should speak. Vibes would have been an euphemism
ryanisnan 24 minutes ago [-]
Human judgement is a thing.
the_mitsuhiko 1 hours ago [-]
Armin from Earendil here. I think the question is fair, and quite frankly the answer is pretty disappointing: we look at what the models are doing. They are trained on their respective harnesses and we're not here to fight their behavior.
Codex in particular is using responses lite internally and relies on codemode for parallel tool calling. So codemode was a given.
Jev on the other hand is new but it's not the first type of model we had troubles with supporting in Pi and we looked at how to make that make sense. The internal pi-ai SDK supports image generation and classifier models, but without building an extension it was never possible for you to utilize it.
So there was a while functionality of Pi that few people used, because there were no obvious ways to hook it up with the coding agent. Codemode also allows us to close that gap.
And once you have codemode, modern MCP can work quite well if the servers cooperate.
rcarmo 2 minutes ago [-]
Neat, but I keep having to edit the pi stub to remove the "/bin/env node" and replace that with bun instead, because, well, somehow that's still hardcoded.
azuanrb 12 minutes ago [-]
I’m currently building a harness for Slack to support our on-call and support channels. It’s been working great so far.
The harness is built on top of the Pi SDK. I initially used Codex, but Pi seems more hackable, and I like that it’s vendor-agnostic by default.
Running it on Kubernetes works, but dealing with the JSONL session files and making sure sessions survive pod interruptions adds some complexity. I’m using DBOS for that right now, which works well, although it still feels like overkill.
The 1.0 release came at just the right time. I’m looking forward to removing the pieces I no longer need and simplifying the architecture!
aliasxneo 1 hours ago [-]
I found oh-my-pi with Paseo to be my personal sweet spot. Checks all of the boxes I want and is the most consistent set of AI tools I've used thus far.
jszymborski 1 hours ago [-]
I tried Pi a while ago and found it a bit tough to use, OpenCode was pretty simple, but oh-my-pi is really head and shoulders above the two others. Really great.
dolebirchwood 33 minutes ago [-]
Just curious: What do you specifically like about oh-my-pi vs. OpenCode?
jszymborski 26 minutes ago [-]
A major aspect is that it automated out-of-the-box a pattern I naturally would do of writing a spec just before the context window would fill and then compacting and continuing.
Now I just write a prompt and OMP just hammers away at it. There might very well be some OpenCode plugin for this but it just works out of the box with OMP.
roger_ 55 minutes ago [-]
Paseo is great and has mobile notifications but it’s not as polished as omp web.
aliasxneo 47 minutes ago [-]
I mainly use Paseo for the daemon features. I run it in a linux VM in my homelab and spawn all of my agent sessions on it. Exposed over Tailscale so I can connect to it from my desktop, laptop, and mobile phone and continue like nothing happened. A really great self-hosting experience.
Haven't used omp web yet.
wasting_time 1 hours ago [-]
So, how are people actually using Pi? Here I am with Claude Code and Codex in a terminal like a caveman.
calebkaiser 42 minutes ago [-]
I don't use Pi very much for actual writing code. I have some specific use-cases where I do, but I'm admittedly just not a person who can reasonably juggle a lot of tools or a super personalized setup. I mostly just use Codex or CC from the terminal, though I've recently dabbled with some GUIs. Basically, once I find something that works, I'm pretty reticent to spend any time tinkering unless I feel a real need.
But what I do use Pi a lot for is as a base for agents. I much prefer it to using an agent SDK. I find its minimalism and extensibility to be a really nice substrate for new projects.
I could easily imagine someone getting to a really productive personal setup with it as well, for the same reasons as above.
clickety_clack 1 hours ago [-]
I’m also looking for tips. I feel like I get the gist, but if I sat down to use it, I don’t know what I want to start with. Like, I know it’s customizable, but what’s the on-ramp so I can figure out what that looks like?
Juvination 44 minutes ago [-]
So Pi is a lot of fun. I’ve been working on Volt, a fork of Pi, mostly out of my frustrations with remote development. I expanded out the existing RPC and built a mobile app around it.
It kind of just gets with how you creative you want to be about it.
This harness also burns a lot more tokens than Pi, which sort of kills the minimal philosophy/system prompt that Pi came from.
xboxnolifes 38 minutes ago [-]
Pi with extensions included is always going to burn more tokens than pi without extensions, no?
ZeWaka 6 minutes ago [-]
very happy with omp
bayesianbot 1 hours ago [-]
I know that's the way omp is often introduced but I don't think it's fair for either omp or pi - after lately switching my usage more towards omp I'd say by this point they're almost more different than Pi and Codex. And I like them both.
jLaForest 1 hours ago [-]
This is what I use, very happy
ritzaco 1 hours ago [-]
I use claude code and codex in a terminal like a caveman too.
then i use pi in a terminal like a caveman to try the open models like deepseek etc.
I also have pi running on a VPS. I have a custom Django app that calls out to it for a bunch of stuff. I don't know how the full system works because the agents built it but basically I think one pi uses a whatsapp wrapper to constantly listen to a whatsapp group and find bills. Then those get added to the Django Database which triggers a second pi + deepseek to OCR them, parse out the data like amount, due date, reference etc, and update the database with that. I have a trigger to 'merge duplicate', which is also just a prompt and pi.
Yes you can do all this without a harness and just the model APIs directly but the harness means it can use linux tools to crop the PDFs etc, so when I also wanted a new feature that crops out the bank details and lets me hover over and see the original before making the payment for a bill that's just another tweak to pi's prompt (or more meta, me prompting my agent to update pi's prompt).
whiteblossom 1 hours ago [-]
It's been pretty useful for experimenting with local models due to its more light-weight approach. Though I respect the creators a ton, OpenCode has not seemed to work as well with models that run on consumer hardware
unsnap_biceps 53 minutes ago [-]
Which models are you finding the most success with?
whiteblossom 20 minutes ago [-]
qwen3.5 4b and 9b have both been surprisingly good for small tasks. a pattern I've been using is orchestrating pi agents with a script (that you can write using a frontier model) for common tasks. one script i use a lot is organizing photos from my photography shoots.
tamimio 6 minutes ago [-]
Pi vs opencode for example is like gentoo vs macos, if you want to spend your time customizing and dealing with harness itself rather than doing the work, then go for it, it will be fun, like gentoo. I think the best productive setup is herdr+opencode or zed and opencode, unless you need CC for anthropic models. The only thing however, is how the same model works with different harnesses, positive or negative, is where you might need to shuffle between to maximize the results.
jacobgold 1 hours ago [-]
And you're probably more productive than the people using Pi. Although you'd be even better off using a GUI agent multiplexer of some kind rather than juggling terminal tabs.
I love open source. I love the terminal. I spent the last 20+ years in a terminal w/vim every single day, and then claude/codex TUIs, and yet I care more about my own productivity so I don't use any of that now.
pkulak 29 minutes ago [-]
There's something about this take that... irks me. A little bit more every time I hear it, and I've been hearing it a lot. I dislike the implication that anyone who takes more care with their setup than downloading an exe from a website and double clicking it is some kind of chump. They could be prompting the next ticket instead!
Even if taking pride in your tools was a productivity killer (I have my doubts), maybe there's mental value to be gained.
trefoiled 25 minutes ago [-]
It's not an either/or. Orca is a GUI agent multiplexer that works with dozens of harnesses, including Pi. The advantage with Pi is that you can vibe code any kind of extension you want. I like to see various stats (tps, ttft, etc) on each turn, and there's an extension for that, but it doesn't show wall clock time for the turn. Ok, pull down the extension and tweak it to add that. It's great.
mattm 30 minutes ago [-]
If you like the terminal I'm building https://alcubi.ai/delegator/ It's terminal based and I've taken a different approach to avoid context overload of switching tabs. Agents run in the background and you review the work when it's ready.
w-ll 1 hours ago [-]
What do you suggest for a GUI agent multiplexer?
jacobgold 45 minutes ago [-]
The important thing is just to a GUI agent multiplexer, they're all mostly doing the same kind of thing. IMHO it's very important to have the official claude and codex harnesses (not just models). I also like having each session in a isolated container (or VM) so the agent can go wild and run in yolo mode.
I usually recommend Conductor to most people. Personally, I use the one I built, but it's got a few ergonomic issues for most people which I still need to fix.
sidrag22 48 minutes ago [-]
you can just roll your own, this is probably the most popular side project of the past year, I crafted my own version within a day or so this past week, with corny visual assets as well since its just for me. Kinda rolled my workflows into it so it fits how i work with plans and how i avoid compaction in favor of handoffs or just plan docs that constrain each session to x amount of tokens each session.
Tossed all my weekly usage for each provider at the top with their 5hour windows and such. its been great so far.
bibstha 55 minutes ago [-]
onorca.dev. I used herdr before now Orca has fully replaced it. (I'm not affilianted with Orca in any way except I use it every day).
Orca also supports separate hosts.
My setup
Orca running in my Mac. Orca running in my home proxmox lxc (orcabox).
I have few different projects, Rails, PHP, etc. In Orca, I open these projects and point it to my local folder as well as the folder remotely.
I usually start a codex or claude session on the remote host, close my mac, even restart Orca desktop on mac, but when I start Orca, I can watch the Orca on my remote host working through.
It's similar to Claude remote session, but just easier to manage, easier to create worktree, easier to navigate, open multiple tabs etc.
fancy_pantser 25 minutes ago [-]
zed.dev is like Orca, but lightning fast and fully multi-player (both AI and humans)
techscruggs 55 minutes ago [-]
I like Orca
ninininino 56 minutes ago [-]
t3.codes
cursor.com
conductor.build
code.visualstudio.com w/ Claude Plugin or equivalent plugin
zed.dev
there are dozens tbh
techscruggs 54 minutes ago [-]
thats not a suggestion.
Aperocky 31 minutes ago [-]
vim/past vim terminal dweller here.
I've eventually settled on a CLI agent multiplexer that essentially run in the background while the frontend is a GUI gateway agent to that backend system with a goal middle layer so I no longer need to interject directly into the prompts and forces the CC and Codexes to communicate to me in a structured format relevant to my purpose.
manav 1 hours ago [-]
What do you use
phoghed 48 minutes ago [-]
Personally I use gh copilot in vscode and make new worktrees when I want parallel agents that are both going to write code.
For research, planning, figuring out bugs, etc I usually don’t bother creating the worktree until I’ve decided on the implementation.
I’m sure there’s better workflows and software, but all I’ve got for work is gh copilot and Claude enterprise. I like copilot better than Claude for the most part.
jwpapi 32 minutes ago [-]
what advantage do you have with a gui multiplexer over the terminal?
BeetleB 1 hours ago [-]
You just type "pi" in the command prompt and you're good to go!
The only thing I've configured is the default model.
sroerick 1 hours ago [-]
Vanilla Pi is great. I have a subagent/ Ralph loop extension I coded and that's basically it. It works very well. I'm about 75% pi, 20% autolith, and 5% my own harness
pizzafeelsright 1 hours ago [-]
I built my own based off another popular harness. I figure most of the edge cutters are doing the same.
Pi is great overall. I ended up deploying a GUI wrapper because TUI isn't as friendly to new adopters.
stefan_ 13 minutes ago [-]
They are not, Pi is the vim or mechanical keyboard of the pre-AI era. Didn't matter then, doesn't matter now. Will generate infinite discourse regardless.
nfRfqX5n 1 hours ago [-]
Using models from multiple providers via aws bedrock
r14c 1 hours ago [-]
I use workmux with pi plus some neovim plug-ins
gedy 1 hours ago [-]
> Here I am with Claude Code and Codex in a terminal like a caveman
There's definitely a class of folks who like to "polish their tools" per se vs tools just being as a means to an end.
It's fine and cool, sort of like the desktop ricers do with Hyperland, Niri, etc showing off desktops, but never seem to do anything with this cool tech.
igorbark 1 hours ago [-]
the main thing i use it for that seems like a pain with other coding agents is my sandboxing workflow: i have a custom extension which allows the pi process to run on my laptop, keeping all my transcripts in one searchable place, while delegating all the bash and file system commands to a VM.
i haven't gotten around to it yet, but i'd also like to change how `Bash` functions on a basic level (and subagents), where rather than the agent picking a fixed timeout, it just gets notified with exponential backoff about commands that aren't done and then gets a turn to decide what to do with it.
having said that, i find it annoying and not empowering that basic things like subagents and web search aren't built in. the ideal to me seems to be an agent with polished extensions for all the common use cases that can be disabled if you do want to rewrite them. but i put up with the pain because i really want my pet feature ¯\_(ツ)_/¯
esafak 1 hours ago [-]
I use it headless for reviews in CI.
sergiotapia 56 minutes ago [-]
Frankly you are not losing much. I've used everything under the sun, for work and fun. I just use Claude now again for work, and I use Pi for any openrouter model I'm using.
Just keep using Claude or Codex.
It's all window dressing and some delta in token usage, but again who cares really?
This really only matters when you're productizing "AI" for your end users, that's when you need to see which agent uses tools better, has more support for MCPs, headless mode, sessions, etc. \
15 minutes ago [-]
distantsounds 33 minutes ago [-]
"hundreds of thousands" of people are not using this. i want to see the this claim backed up.
Wheen 3 minutes ago [-]
I think you're right, but in the wrong direction. I'd imagine it's in the millions.
- It has 3.6 million weekly NPM downloads.
- 110k GH stars.
- It's 5th (and its fork is 6th and a dependent is 8th) in monthly Openrouter tokens. Add them all together and they get close to Claude Code numbers.
concrete_head 18 minutes ago [-]
I hear you.
This post and the comments smells like Astroturfing to me.
randomperson321 26 minutes ago [-]
How do you know?
bel8 1 hours ago [-]
I have been using pi a daily driver for some month now. But as a personal management system with md files and for coding.
I used to have a MCP extension but recently pi added builtin support for MCP so my stack is simpler now.
Thank you for keeping things simple! Simple is beautiful.
1ahf-qzwt 8 minutes ago [-]
The vibe-coded earendil.com uses 150% CPU for a static web page, whereas the luddite website news.ycombinator.com uses 1% CPU.
Maybe spend $100,000 in tokens to fix that.
imnotr0b0t 1 hours ago [-]
I like that Pi is holding the line on minimalism instead of absorbing every new trend. Curious how Pi Durable differs from existing durable-execution setups for agents
sgustard 1 hours ago [-]
All companies with LOTR names are war profiteers right?
The thing I don't like about minimal plugin-based harnesses is that I don't always have the time to figure out which plugins and safe and sensible, and at least one of those is false more often than not when it comes to AI tools. Sorting by popular does not solve the problem.
We did not want to waste this opportunity this early but we released at 3:14 ET :)
svintus 57 minutes ago [-]
Why full screen mode by default? That seems to go against the minimalist theme. I could never get acceptable inertial scrolling behaviour dialled in with other full screen implementations I tried (claude, codex, opencode).
smokel 47 minutes ago [-]
Full screen hides distractions from other applications. Seems reasonable as something minimal.
Minimalism is a difficult subject. In art, minimalists tried to strive for something that is universally minimal. But if you look in nature for straight lines or perfect circles, you end up disappointed. Turns out minimalism found things that were minimal with respect to how some humans think about minimalism. For all we know, pure chaos may be more universally minimal than an empty vacuum.
semiquaver 1 hours ago [-]
I know this is going to get downvoted but what drives people to use javascript of all languages to build these fundamental pieces of tooling? We have so many better options, especially now since humans aren’t writing most of the code. It’s hard to take seriously anyone that wants to make a primarily CLI tool with heavy interactivity and parallelism requirements and decides to use a joke language that happened to luck its way into prominence because of web browsers.
droidjj 14 minutes ago [-]
I wouldn't go as far as calling it a joke language (in some ways, it's incredible), but I did come here wondering if other people felt this way. The language choice has always confused me.
On the other hand, I don't think there's anything Pi does that another language would do noticeably better from a user's perspective. Any performance complaints I have using Pi come from twiddling my thumbs waiting for Sam Altman's servers to bestow tokens upon me.
At any rate, they'll probably have Opus 6.5 and GPT-7 Galactica rewrite it in rust in a couple months...
arecsu 22 minutes ago [-]
Pi is extensible, and to iterate new extensions, install them, create your own, even if the agents needs to, it is much faster and easier to manage that than a compiled language I would suppose. Most of the time it's really the waiting time than anything else. If any, the "resource intensive" parts of the app could be turned into low-level extensions such as writing or reading files, maybe, but the main part of the app makes total sense. The language and ecosystem is fairly accessible as well, which serves as a further argument. Interesting choice of words when it comes to calling it "joke language" really.
pezgordo 43 minutes ago [-]
What would be a better language? Most of the harness apps will be spending most of their time waiting for the models response and tool calling rather than running their code.
Languages with less opensource footprint or too verbose are at the losing side in a llm-driven world.
nicce 2 minutes ago [-]
I feel like TypeScript is very verbose language to be honest.
crooked-v 7 minutes ago [-]
One reason: it's really easy to have a lightning-fast dev loop when the entire running process can hot-swap almost every piece of code, when then also extends to all extensions written against the core functionality.
MisterBiggs 1 hours ago [-]
I've been full time building on pi since January and its been incredible. I'm not sure what they did to make it so easy to vibe code against but agents really just "get it".
ad_fontes 49 minutes ago [-]
Can you explain your workflow a bit please? Do any of these tools work with Claude/Codex subscriptions or are they API only?
I actually built my own tool that maintains a work graph (DAG-like) with task leases. It allows me to copy and paste pre-written prompts into Claude Code, Codex, or OpenCode and all the agents self-coordinate through MCP calls.
I built this after trying hermes and Openclaw but not liking the lack of human-in-the-loop judgement. So I'm wondering if I should keep refining my tool, or evaluate something like pi?
vblanco 1 hours ago [-]
Built in codemode is rather nice. Its the feature i like the most from OMP which is Pi + lots of plugins.
bibstha 53 minutes ago [-]
Is claude code or codex subscription supported by pi?
fancy_pantser 20 minutes ago [-]
Pi is a minimal agent harness, so lots of functionality is provided through packages. Here's the one that exposes Claude models for people to use with their Pro subscription, for example: https://pi.dev/packages/pi-claude-bridge
bakies 52 minutes ago [-]
Claude is not but codex is. Which is why I switched.
WA 42 minutes ago [-]
Run in sandbox, container, or VM?
pkulak 27 minutes ago [-]
I like a sandbox, but there's arguments for all three. Jai is still my favorite on Linux.
1 hours ago [-]
Computer0 1 hours ago [-]
Cool I hope to try it someday when I can run a local model good enough for coding. Until then I will probably stay with opencode for the time being.
KeplerBoy 51 minutes ago [-]
You can use it with oai subscriptions
pizzafeelsright 1 hours ago [-]
Local Qwen 3.5 on CPU was good enough for small tasks.
0gs 1 hours ago [-]
congrats to earendil and keep up the awesome stuff.
popalchemist 60 minutes ago [-]
Does this replace Claude Code in VS Code entirely?
rickreynoldssf 1 hours ago [-]
This is hitting at the right time. Codex is already in the enshitification phase. They just broke their CLI version with some new thing that no one likes.
wgd 52 minutes ago [-]
Sigh, looks like Pi's days as a nice minimal agent TUI are numbered. I guess no third-party offering can fight that entropy for long and I'll just have to polish up one of my toy projects for personal use.
badlogic 27 minutes ago [-]
I've read this a bunch of times around socials now these past days and I'd really like to understand what exactly indicates that the minimal agent TUI days are numbered for Pi?
I did not read this when I added support for AGENTS.md, skills, llama.cpp, extensions, alt TUI mode, mid-convo system messages and tool set changes to preserve KV cache, image model support, and everything else I added since November last year.
Codemode and MCP support are the latest additions. We follow what the models are trained on. E.g. the GPT family of models is actually trained on codemode for parallel tool calls now. The MCP spec has gotten a major update recently that makes it much less bad than it used to be in the past 24 months. Combined with codemode, it is now passable, so it got added to pi.
All of these features are still entirely optional and the only thing I could think of that could be considered "bloat" is the additional few megabytes for the QuickJS WASM blob.
So, I mean this in earenst and absolutely not combative: could you explain what exactly flips the switch between "pi is minimal" and "pi is not minimal"?
realty_geek 7 minutes ago [-]
Must be super frustrating for you to hear that.
Sounds to me like things people say just to have something to say. True, it is good to listen to feedback but feedback without evidence is only going to waste your time.
Thanks for all your hard work and keep going in the direction that makes sense to you!
wgd 17 minutes ago [-]
Fullscreen mode as the default is a big one, I prefer my agent harness to be a CLI rather than a TUI and in fact my personal one doesn't even try to wrap text. Pure CLI output model.
That said I also dislike many of those other changes and would prefer a hypothetical version of Pi which didn't have them, so this is in some sense just me looking up at the sound of a v1.0 release and realizing "oh hey, I don't really like the direction this has been trending for a while"
badlogic 5 minutes ago [-]
Cheers, appreciate the answer!
k4rnaj1k 53 minutes ago [-]
[dead]
lionkor 1 hours ago [-]
I love how consistent pi has been, especially in regards to not breaking ux
sroerick 1 hours ago [-]
Pi is really good. I use it for a majority of my work.
I also like Autolith. The freedom of having a lisp machine is, to me, much more enjoyable than trying to maintain Typescript. But I'm not a typescript guy.
I do largely stick with Pi because it's very bulletproofed
Rendered at 21:08:29 GMT+0000 (Coordinated Universal Time) with Vercel.
Been running it almost barebones vanilla for a couple of months. Just a bunch of basic extensions and some skills.
Now, if only they could fix the very annoying bug of the history jumping back at the beginning if I am not a the end while the model is reasoning that would great.
[0] https://github.com/wilt00/windows-terminal/releases
Couple skills to integrate with an obsidian MD task tracker, small chat interface on the phone made public via tailscale, and bam, a reminder bot you can text from the grocery store.
I am also using pi exclusively after having had decent success with openhands but begrudging all of the docker infrastructure ... and all of the emojis.
My only pain point is that in my extremely common and boring workflow, which is pi inside of gnu screen inside of OSX terminal.app ... all reasoning/thinking text is blinking ... like old fashioned ANSI blink on a BBS.
I cannot figure out how to disable the blinking thought/reasoning text ...
If I remember correctly, the reasoning text was being output using the italic ANSI code, which was being formatted funny on my terminal. I fixed it by adding a font that supports italics. I recommend taking a look at the ansi codes.
This seems like an obvious configuration option - I can imagine someone disliking the italics as well…
Pi felt nice when I used it, and I do value keeping things minimal, but I just find the criteria very uneven.
The only thing that makes Jev and the likes particularly interesting is that it is a general purpose classifier. In the past, classification tasks meant training a new model to solve your problem. Now you can just use an off the shelf general purpose model and hit the ground running.
General purpose classifiers have existed and proven useful for quite a while now. We used these last year. for vision and text both.
Codemode as a mechanism can expose non LLM functionality to the coding agent. In that sense, Pi does not have a tool for Jev or other classifiers. It just now makes it easier for the agent to utilize it in the same way as it's otherwise quite creative in using bash.
The point of Pi is that the user can tell the agent to improve itself and give it the tools it does need. The minimalism comes from the user creating what they need instead of the maintainers trying to support everything for the users. The fact that it doesn't have everything the user needs out of the box is intentional.
The point of Pi is to be minimal but also follow what the models need. We were pretty outspoken that models need code execution, and that's why Pi to this day has a very small set of tools available. However as more and more training with these models abstracts even over toolcalls themselves with code mode and similar things, it requires changes to Pi.
Mario and I talked about this last week if you want to know our thinking: https://x.com/pidotdev/status/2104510506627121451
And yes, that's why there is no Jev tool in Pi either.
I don't know if you were aware, but not shipping with MCP was one of its "features":
https://mariozechner.at/posts/2025-11-02-what-if-you-dont-ne...
They let you have it via a plugin/extension.
Some tools used to be 0.x for ages and, in this case, the 1.0 signals they're happy enough and allows them to promote things in a better way.
This is I guess the natural evolution of playing around building temporal like things for a need that many have.
If there's anything that I can conclude about Anthropics idea of how a LLM should speak. Vibes would have been an euphemism
Codex in particular is using responses lite internally and relies on codemode for parallel tool calling. So codemode was a given.
Jev on the other hand is new but it's not the first type of model we had troubles with supporting in Pi and we looked at how to make that make sense. The internal pi-ai SDK supports image generation and classifier models, but without building an extension it was never possible for you to utilize it.
So there was a while functionality of Pi that few people used, because there were no obvious ways to hook it up with the coding agent. Codemode also allows us to close that gap.
And once you have codemode, modern MCP can work quite well if the servers cooperate.
The harness is built on top of the Pi SDK. I initially used Codex, but Pi seems more hackable, and I like that it’s vendor-agnostic by default.
Running it on Kubernetes works, but dealing with the JSONL session files and making sure sessions survive pod interruptions adds some complexity. I’m using DBOS for that right now, which works well, although it still feels like overkill.
The 1.0 release came at just the right time. I’m looking forward to removing the pieces I no longer need and simplifying the architecture!
Now I just write a prompt and OMP just hammers away at it. There might very well be some OpenCode plugin for this but it just works out of the box with OMP.
Haven't used omp web yet.
But what I do use Pi a lot for is as a base for agents. I much prefer it to using an agent SDK. I find its minimalism and extensibility to be a really nice substrate for new projects.
I could easily imagine someone getting to a really productive personal setup with it as well, for the same reasons as above.
It kind of just gets with how you creative you want to be about it.
then i use pi in a terminal like a caveman to try the open models like deepseek etc.
I also have pi running on a VPS. I have a custom Django app that calls out to it for a bunch of stuff. I don't know how the full system works because the agents built it but basically I think one pi uses a whatsapp wrapper to constantly listen to a whatsapp group and find bills. Then those get added to the Django Database which triggers a second pi + deepseek to OCR them, parse out the data like amount, due date, reference etc, and update the database with that. I have a trigger to 'merge duplicate', which is also just a prompt and pi.
Yes you can do all this without a harness and just the model APIs directly but the harness means it can use linux tools to crop the PDFs etc, so when I also wanted a new feature that crops out the bank details and lets me hover over and see the original before making the payment for a bill that's just another tweak to pi's prompt (or more meta, me prompting my agent to update pi's prompt).
I love open source. I love the terminal. I spent the last 20+ years in a terminal w/vim every single day, and then claude/codex TUIs, and yet I care more about my own productivity so I don't use any of that now.
Even if taking pride in your tools was a productivity killer (I have my doubts), maybe there's mental value to be gained.
I usually recommend Conductor to most people. Personally, I use the one I built, but it's got a few ergonomic issues for most people which I still need to fix.
Tossed all my weekly usage for each provider at the top with their 5hour windows and such. its been great so far.
I usually start a codex or claude session on the remote host, close my mac, even restart Orca desktop on mac, but when I start Orca, I can watch the Orca on my remote host working through.
It's similar to Claude remote session, but just easier to manage, easier to create worktree, easier to navigate, open multiple tabs etc.
cursor.com
conductor.build
code.visualstudio.com w/ Claude Plugin or equivalent plugin
zed.dev
there are dozens tbh
I've eventually settled on a CLI agent multiplexer that essentially run in the background while the frontend is a GUI gateway agent to that backend system with a goal middle layer so I no longer need to interject directly into the prompts and forces the CC and Codexes to communicate to me in a structured format relevant to my purpose.
For research, planning, figuring out bugs, etc I usually don’t bother creating the worktree until I’ve decided on the implementation.
I’m sure there’s better workflows and software, but all I’ve got for work is gh copilot and Claude enterprise. I like copilot better than Claude for the most part.
The only thing I've configured is the default model.
Pi is great overall. I ended up deploying a GUI wrapper because TUI isn't as friendly to new adopters.
There's definitely a class of folks who like to "polish their tools" per se vs tools just being as a means to an end.
It's fine and cool, sort of like the desktop ricers do with Hyperland, Niri, etc showing off desktops, but never seem to do anything with this cool tech.
i haven't gotten around to it yet, but i'd also like to change how `Bash` functions on a basic level (and subagents), where rather than the agent picking a fixed timeout, it just gets notified with exponential backoff about commands that aren't done and then gets a turn to decide what to do with it.
having said that, i find it annoying and not empowering that basic things like subagents and web search aren't built in. the ideal to me seems to be an agent with polished extensions for all the common use cases that can be disabled if you do want to rewrite them. but i put up with the pain because i really want my pet feature ¯\_(ツ)_/¯
Just keep using Claude or Codex.
It's all window dressing and some delta in token usage, but again who cares really?
This really only matters when you're productizing "AI" for your end users, that's when you need to see which agent uses tools better, has more support for MCPs, headless mode, sessions, etc. \
- It has 3.6 million weekly NPM downloads.
- 110k GH stars.
- It's 5th (and its fork is 6th and a dependent is 8th) in monthly Openrouter tokens. Add them all together and they get close to Claude Code numbers.
I used to have a MCP extension but recently pi added builtin support for MCP so my stack is simpler now.
Thank you for keeping things simple! Simple is beautiful.
Maybe spend $100,000 in tokens to fix that.
https://tex64.com/learn/getting-started/about
Minimalism is a difficult subject. In art, minimalists tried to strive for something that is universally minimal. But if you look in nature for straight lines or perfect circles, you end up disappointed. Turns out minimalism found things that were minimal with respect to how some humans think about minimalism. For all we know, pure chaos may be more universally minimal than an empty vacuum.
On the other hand, I don't think there's anything Pi does that another language would do noticeably better from a user's perspective. Any performance complaints I have using Pi come from twiddling my thumbs waiting for Sam Altman's servers to bestow tokens upon me.
At any rate, they'll probably have Opus 6.5 and GPT-7 Galactica rewrite it in rust in a couple months...
Languages with less opensource footprint or too verbose are at the losing side in a llm-driven world.
I actually built my own tool that maintains a work graph (DAG-like) with task leases. It allows me to copy and paste pre-written prompts into Claude Code, Codex, or OpenCode and all the agents self-coordinate through MCP calls.
I built this after trying hermes and Openclaw but not liking the lack of human-in-the-loop judgement. So I'm wondering if I should keep refining my tool, or evaluate something like pi?
I did not read this when I added support for AGENTS.md, skills, llama.cpp, extensions, alt TUI mode, mid-convo system messages and tool set changes to preserve KV cache, image model support, and everything else I added since November last year.
Codemode and MCP support are the latest additions. We follow what the models are trained on. E.g. the GPT family of models is actually trained on codemode for parallel tool calls now. The MCP spec has gotten a major update recently that makes it much less bad than it used to be in the past 24 months. Combined with codemode, it is now passable, so it got added to pi.
All of these features are still entirely optional and the only thing I could think of that could be considered "bloat" is the additional few megabytes for the QuickJS WASM blob.
So, I mean this in earenst and absolutely not combative: could you explain what exactly flips the switch between "pi is minimal" and "pi is not minimal"?
Sounds to me like things people say just to have something to say. True, it is good to listen to feedback but feedback without evidence is only going to waste your time.
Thanks for all your hard work and keep going in the direction that makes sense to you!
That said I also dislike many of those other changes and would prefer a hypothetical version of Pi which didn't have them, so this is in some sense just me looking up at the sound of a v1.0 release and realizing "oh hey, I don't really like the direction this has been trending for a while"
I also like Autolith. The freedom of having a lisp machine is, to me, much more enjoyable than trying to maintain Typescript. But I'm not a typescript guy.
I do largely stick with Pi because it's very bulletproofed