88Agents, before it had a name, began as an N8N workflow for extracting content from websites and indexing it in a Postgres vector store. A companion workflow would accept queries, embed them, query the vectors, then parcel that up into an LLM request and finally send a response back. It was pretty cool .. for mid 2025.
It had a number of flaws however. The workflows were complex multi-step processes, prone to errors, difficult to tune, difficult to introspect. An impressive demo, but not a great production experience.
In October of 2025 I rewrote the process in my language of choice, PHP (Laravel, using laravel-actions). Called the project RagDojo, with the thinking that some sort of engine for comparing RAG workflows might be useful. Chatbots, my reasoning went, were all about the RAG and there was no real way to objectively compare them. Running a bunch of automated RAG comparisons side-by-side and deducing the optimal settings for a given RAG based on the content .. that would be interesting right?
During this process I came across FrankenPHP by Kevin Dunglas. A fantastically crazy project that bundles up a project’s PHP code and a PHP interpreter into a Go binary. It’s got this fascinating chain of thought .. something like A) PHP is written in C; and B) Go can call C libraries; and C) the embedded filesystem in Go can hold all your PHP code. I used FrankenPHP and it was wonderful! The binary was huge .. like 240MB huge .. but there was a lot going on in there. And it worked, flawlessly .. but it got me thinking ..
I was using Claude Code more and more for development work .. Does the language really matter that much if the AI is driving all the code generation?
So, one Saturday morning in early January, my curiosity got the better of me and I kicked off a Claude Code session to migrate the project from PHP to Go. It was a very patchy attempt … Not a total train wreck, and when squinting from a certain angle it seemed to hold up, but plenty of stuff was stubbed out, incomplete or lacked decent test coverage. Going from this super structured and opinionated PHP setup which CC respected, to absolutely nothing on the Go side… lesson learned.
It took a couple of weeks of evening mop-up to sort it out and tune in to the idioms of Go. While straightening everything out it gave me some time and space to rework the major parts of the app. So the RAG app hit the gym, and upgraded into a full agent.
The Bet
Clawdbot (Motlbot, OpenClaw) released to massive fanfare, Anthropic released Claude Co-Work (triggering the SaaSpocalypse) and everyone it seems is getting on board with the ‘Mega Agent’ train. I’m not so sure the mega agent is the way to go. Smaller independent subject matter expert agents operating in concert makes more sense to me. More portable, testable and embeddable… Let’s see where this goes ..