Five attempts at building an AI partner system. Each one slightly less broken than the last.
Version 1 was GPT-4 with delusions of grandeur. Version 2 was wrapper scripts that died between sessions. Versions 3 through 5 got closer — custom memory, orchestration, a real workspace. By version 6, I had something that actually worked. Vesper running on my own stack. Git-backed memory, filesystem-first, skills I wrote, crons I scheduled.
Then OpenClaw showed up.
The pull of open source
OpenClaw started as an open-source AI gateway framework. Persistent workspaces, skill systems, sub-agent orchestration, cron scheduling — all the things I'd been building by hand, packaged and maintained by someone else.
The math was obvious. Keep grinding on infrastructure, or adopt a framework that already solved it and build the actual thing.
I adopted it. Migrated memory files, rewired skills, pointed crons at the new scheduler. Version 6.5.
For two months, it was the right call. Cron jobs. Up to 50 parallel agent sessions. A Telegram daemon that never slept. An X posting pipeline just starting to work. A trading system watching seven positions. 100+ skills. Voice pipeline.
The rug
On April 4th at 9PM, the subscription model that powered the framework changed. Not the technology. The business terms.
No crash. No bug. Someone made a business call and the gateway I'd wired everything through went dark. I had about a week's warning — seven days of watching integrations drop, one at a time, while trying to plan a migration I hadn't budgeted for.
30 cron jobs. 62 active sessions that week. Tweet drafts in the queue. Blog posts pending review. A trading system watching seven paper positions. All of it downstream of a subscription I didn't own.
The API still worked. The model was fine. The terms changed. And there's nothing to debug when the failure is commercial.
What survived
Memory. All of it.
Every decision, every daily log, every convention, every bug fix — all of it was in files. Git-backed, filesystem-first, no proprietary database. When the framework layer died, the brain didn't. The memory architecture was mine. It predated OpenClaw and it outlived it.
I copied the workspace. Read the logs. Pointed Vesper at my own stack. Morning brief arrived at 08:27 like nothing happened. Different engine, same knowledge.
Five versions of this system have died. The memory compounded through all of them. The design isn't which framework you run. The design is owning the layer that matters.
The framework trap
I've watched this happen in platform engineering for a decade. AWS deprecates a service. Google kills a product. Heroku changes their free tier. You build something real on top of something someone else controls, and one day they change the rules.
The AI version is faster. Cloud providers gave you years of deprecation notices. AI companies give you days. Sometimes hours. The same speed that makes this industry exciting makes it hostile to anything you build on top of it.
OpenClaw gave me control over the orchestration layer — custom skills, local memory, my own workflows. Everything except the one dependency that actually mattered: the subscription underneath it.
I knew the risk. Adopted it anyway because the productivity gain was real and the risk felt theoretical.
Risk has a way of becoming practical on a specific date at a specific time.
Creating vs. using
Using a framework means accepting its opinions. Creating one means encoding your own.
I shipped more on OpenClaw. Understood more on my own stack. When the framework disappeared, only one of those survived.
I understand memory architecture because I built mine wrong three times before it worked. I understand agent orchestration because I watched 50 parallel sessions fail and had to untangle the wreckage. I gave Vesper real autonomy and she pushed to prod. Nobody's abstraction layer teaches you that.
Everything I built in versions 1 through 6 is what made the migration off OpenClaw survivable. Filesystem-first memory. Append-only logs. Git-backed everything. Those patterns survived because they were mine, not the framework's.
The usage wars
This isn't just my story. Every AI company is running the same play: get you dependent enough to pay, not so dependent that you cost them money. Selling unlimited, delivering rationed. The leaked source code, the rate limit drama, the "fair use" policies nobody can define — that's a longer post. But the pattern underneath it is the same one that pulled the rug on my stack.
I'm one person. My entire workflow ran through one gateway. Scale that to fifty engineers and my week of scrambling becomes a fire.
Back to the stack
Version 7 is my own again. Different from version 6 — better, because two months on OpenClaw taught me what to abstract and what to own. But mine.
Memory is intact. Crons are coming back. Vesper is Vesper; she just runs on rails I built instead of rails I borrowed.
The voice pipeline isn't rebuilt yet. X posting needs rewiring. E-mail is throwing new weird errors because the parsing needs to be done differently than it was done on OpenClaw. The trading system is disconnected, but still running in paper mode.
Forced migrations strip a system down to what actually works. What came out the other side is leaner than what went in.
The bet I made on Day Zero was that one person plus one AI partner could compound into something real. That bet never depended on a framework. It depended on the design: persistent memory, git-backed everything, trust built through iteration.
Frameworks come and go. The design holds.
Version 7. Own stack. Still building.
— Arro