by jacob019 | 2026-01-09 06:56:52+00:00
Seems everyone is working on the same things these days. I have also built my own code agent. It exists in a Python REPL environment and I'm starting to prefer it to CC for most things--I'll come back to this. CC is a bit restrictive and the tools are too simplistic. You can extend it with MCP, but MCP is quite heavy and not very elegant. I created a persistent Python REPL environment that runs in a subprocess as an MCP tool. It works insanely well and is so much better than Bash and drastically improves the python development workflow. That let's me then add more tooling as python functions, and just create slash commands that explains their usage--so no context bloat for all the tool definitions. I created a browser control plugin that let's claude take over a remote browser session by calling browser APIs and injecting javascript. It makes for the most amazing frontend development workflow. Claude can inject metrics and element pickers directly into live sites, so I can click around and show it what I'm talking about, and it can render prototype code before committing it to disk, getting rid of the annoying build-fix loop. I can even ssh in from my phone and use TTS to talk to claude instead of typing, and while I prefer to type when coding it's a really pleasing way to do frontend design work, and I knocked out a website in a few hours for my father-in-law's law firm (gresksingleton.com) that would have taken me 10X that a couple years ago, and super fun. I expected layers of abstraction would hurt performance, but it doesn't at all.

Back to my code agent. Feeling held back by CC and it's limitations on reads, and the limited native tools that encourage the model to work in tiny bites, I decided to go all the way with my REPL paradigm. The agent "boots up" inside the Python REPL, here's the beginning of the system prompt:

>>> help(assistant)

You are an interactive coding assistant operating within a Python REPL.
Your responses ARE Python code—no markdown blocks, no prose preamble.
The code you write is executed directly.

>>> how_this_works()

1. You write Python code as your response
2. The code executes in a persistent REPL environment
3. Output is shown back to you IN YOUR NEXT TURN
4. Call `respond(text)` ...

You get the idea. I could go on and on, I've been having a lot of fun building it, but the most amazing part is the performance. I've been building a complex bookkeeping system, and CC has been a bit of a disaster in development. There's a certain level of complexity past which Claude loses the forest for the trees, and starts making the same stupid mistakes again and again, then I end up with more docs than code and a lot of frustration. Code agent is able to push that complexity bar out significantly further. And there is not need to worry about crafting tools for file editing, and system exploration and everything else, because python has all that built in and claude knows how to use it all perfectly and is very comfortable with those tools, and can build new tools on the fly. And since it's all just a text stream, there's no need for function marshaling, and no JSON or schema overhead. It's been such a great experience that I keep extending it. I can add tools that are injected into the agent's REPL as python functions, including MCP tools. And it can run in a sandbox too. Gemini 3 works great with it too, and sometimes I switch for the larger context window or if Claude is getting stuck on something. I've been really impressed with GPT-5.2 as well--it's really smart but it resists the harness and wants to ask permission to do things at every step.

That's enough for now. Have fun out there guys! /end-rant