Why I Quit Pi Agent
I have been a big fan of Agentic AI since I first installed and used Opencode. It was the first time I could talk to an agent as a fellow person. It was amazing to tell it to change the color of my blog and it did. Previously I only used AI chatbots like Claude, Gemini or ChatGPT. But this was something else. I quickly created an API Key for Gemini and used its generous free trial almost daily to do random stuff like, create scripts, run commands, debugging, etc.
How I Met Pi
But since I got interested again in AI recently, I have been hearing about the Pi Agent. At first I didn’t give any thought to it. But one day I just sat and watched some videos and tried to look into it, and I loved it.
It had the same ideology as Neovim, which is my favourite editor. Pi is a very barebones AI agent, which has basically no features except it can read and write files. To extend the functionality we can use extensions, just like Neovim’s plugin system. Also, if there is any functionality which you want, you can also just ask the Pi Agent to build it in itself. So it can modify itself and add new functionality by writing the extension for itself. This is the main thing which I just loved. Such an amazing idea. Loved it so much.
The Hard Part
I was fully prepared to make it my main agent and not use Opencode anymore. But then came the hard part.
As Pi is a barebones AI agent, it has no guardrails. It can run anything and everything on my system. So I asked it to build itself a guardrail.
This was fine. The guardrail was easy. The hard part was everything after it.
I had no idea what I wanted:
- Do I need an MCP server implementation?
- Do I need web access?
- Do I need any sub-agents?
Why I Won’t Grab Extensions
I don’t want to grab extensions from the extension catalog. Pi agent is a personal agent made for me. Everything Pi needs, now or in the future, should be built by Pi itself. Just like how I created the Neovim config. I could have easily got a pre-built config for Neovim, but I wanted something which is tailored to me. So all the plugins it has, it’s intentional. If I can use the built-in features, even though they can be annoying, I would. I like to keep things lean and clean.
But I didn’t know how to apply this to Pi. I want to create my own extensions based on my use case, but I can’t, because I have no idea what exactly I need. Whatever Opencode is, I want that. But I want to create it for me using Pi.
When I’ll Come Back
Right now, I don’t have the expertise or the knowledge of what makes an AI agent good or work properly. I want to understand my workflow and figure out what I actually need, only then will I build Pi up. Currently I’ll continue using Opencode and when I get bored with it, I’ll bring in Pi and build it as per my requirements. But again I love the idea of Pi and will definitely use it in the future.