This is interesting to me because I only started using JetBrains IntelliJ IDEA specifically to do AI coding.
It was the first time I'd used an IDE, the first time I'd built a cross platform app, first time I'd used Kotlin, and the first time I'd tried AI coding.
The journey started with choosing KMP as the stack, then I figured "here's the company that released KMP, they have an IDE, they have AI, I'll use that".
It was really useful, and convinced me that AI coding was the future. I didn't know Kotlin (I still don't) and I don't look at any of the code. I do look at diffs sometimes (less and less). My main "review" is "reviewing test failures", which is a workflow I developed over the past year.
It was about 4 months into using it that I figured out that the IDE was really doing nothing.
I rewrote their worktree functionality as a couple of bash scripts. The build and test functionality was all gradle on the command line anyway. I was just using it as a chat interface and a markdown reader.
So I set up tmux and used Junie CLI (I liked Junie as an agent), Kimi Code and Pi Coding agent simultaneously on different projects. Junie CLI was pretty good, but it had too many instructions and when I started getting particular about my workflows, compliance was too difficult.
Kimi Code and Pi kept winning, eventually I stopped using Junie altogether. The name of the game was doing things in parallel and in the background. Editing the code had nothing to do with it.
The thing I missed was how JetBrains AI credits worked. I loved switching between models, and didn't want to tell everyone on the team to have their own accounts. I looked around and saw some LLM gateways and stuff like OpenRouter, but then they are all still charging extra, so I just wrote my own LLM gateway and connected it to Pi.
But then I was like "what is Pi really doing here?". I wanted a thing I could use from my phone, and using tmux over Termius is pretty weak, so I was like "Oh maybe I can have a mobile app that uses Pi as an API or something" but then I kept hearing the creator of Pi talk about how simple the coding loop was so I just wrote the coding loop into my LLM gateway and then created clients for it for iOS, android, macOS, windows and web, all using Kotlin Multiplatform.
Now I've got my dream coding agent: I create work trees at the touch of a button from my phone, I discuss with the agent using the "reply mode" interleaved reply feature, I have a flexible bash script based workflow engine, a centralised script/skill distribution framework, centralised billing/model gateway, all built into a single dev box that runs everything and can be deployed using one of those fancy curl -> bash pipeline things. I can deploy to dev, staging and production at the touch of a button from my phone. Dev and staging are IP gated behind CloudFlare tunnels, the production deployment goes straight to GCP, using a standardised framework.
My colleagues and I use it to ship real internal and external products and they're not even developers.
I haven't read any code or reviewed any "PRs". I don't even use GitHub or linear!! But man when I go for a walk and sit down on park benches and dictate to my coding agent in my phone, set the workflow running and then keep walking it feels like a super power!
And this was more or less 1 year from starting my first project using IntelliJ IDEA + Junie + OpenAI GPT 5 and winding up using a mix of models on my own platform that I share with my colleagues.
I don't understand how an IDE development company or, really, any "coding agent development" company can maintain a competitive edge in the face of that kind of pressure.
EDIT: I did find their Air product very intriguing but they didn't get it released quickly enough and it didn't solve the problem of having things running in the background easily enough. Also their worktree setup and teardown functionality was a bit of a drag. I built my own platform and started using it to build itself quicker than they got Air to the stage where I would want to use it. They STILL haven't released their mobile client.
I had the same problem with tmux on my phone so I made my own SSH app termphin.dev. I start Claude Code, lock my phone and come back later. Being able to code from anywhere really does feel like a superpower.
The solution is to not give agents access to MCP servers.
The entire MCP ecosystem is ludicrous. You’re paying for inference for an agent to make the same decisions over and over again, and yet the actions they’re taking can be so easily written by those same agents into a bash script you can run again and again, deterministically and for free.
MCP is the problem. Having agents “use a product on your behalf” is the problem.
The pattern you’re looking for is that agents should write scripts that use products for us, and that doesn’t need a new protocol.
“Federal judge rules” is a phrase whose impact has been dramatically reduced during the trump era. You know that all flock need do is donate a few mill to trumps idiotic ballroom project or buy some of his idiotic meme coin or hire one of his idiot sons as a consultant and the problem disappears. The US is a despotic kleptocracy.
Agents just do this anyway, how is it a “mode”? I always see the agent writing scripts in a tmp dir to execute or even just inlining bash and python scripts.
We're in an HN submission about the least locked down by default harness. Pi is aimed at being extended, openclaw is a good example of this. You can buy a box of razor blades and put them in any number of razors.
Right the benefit of pi's customization is that it is exactly as locked down or not as you want it to be, in exactly the way you want it to be, and you can inspect it to verify.
What if I have an MCP Tool LookupZip(City) and want to chain it with a bash tool that prodcues a list of 100 cities. And then I want to filter again to the largest Zip code.
Not in my testing. A lot of the benefit comes from the tool definitions (from mcp) existing in the context window of the first turn. You could replicate this of course by describing your cli tool in the initial user/system prompt- but, mcp is already 'built' for this at the client (harness) level generally.
reply