My OpenClaw, Betsy, I Put Her Down - Bullet to the Head
My third attempt at working with OpenClaw was the best so far. I had her (I named mine Betsy) doing autonomous research and development. Every hour she would wake up, and for each project ask “what would make this better”. Then she’d add the ideas to the backlog, prioritize and pick one item to execute. Every hour. Pretty cool actually.
Then I upgraded her and did a security hardening. That destroyed her. It took a LOT to undo all the damage from the security hardening. The one line installer is a huge improvement. But she developed an inability to execute a command. And she didn’t know she hadn’t executed it. I’d ask “did you do it”? No, I should have but I didn’t.
This went on for HOURS. I backed her up, and reinstalled from scratch. But I could not get her past this behavior. She bacame useless after having been so cool. So I put her out of my misery. I’ll try again after they mature this project more.
Which brings me to LeeClaw. Some wonderful person put together a step by step tutorial - which I can no longer find. Think of it as Gentoo or that Make your Own Linux from scratch type effort. There are many such tutorials out there.
I had started LeeClaw a couple weeks ago, but hadn’t finished. This month I sprang for the $200/mo ChatGPT so, I’m keen to get my money’s worth.
Open the project in Codex and say “get caught up” - it oriented itself. Fix all the bugs you found, and update all the documentation. Which it did.
Then I applied my AgentFlow process (https://github.com/leebase/init-agent) and built a back log.
1. Add the lee-llm-router to connect to llm’s the way I’ve already developed for other projects.
2. Extend lee-llm-router to work with ChatGPT Subscription
3. Give LeeClaw the mechanics needed to allow hourly heartbeat and autonomous execution.
4. Write system level architectural documentation so that LeeClaw and other coding platforms like Claude Code can understand how to make improvements to the code.
- One of the frustrating things about OpenClaw was that it didn’t have comprehensive knowledge of it’s own inner workings.
5. Integrate with Whatsapp - but do so in a plugin architecture that will support other messaging platforms in the future. Learn from OpenClaw for this feature so you don't have to reinvent the wheel.
1. design it to have a resetting/refreshing of the context. My OpenClaw filled up the context on Whatsapp with no way to restart it.
6. Add local llm for text to speech and speech to text so that I can talk via Whatsapp. When I give a voice message, I want both voice and text answers.
7. Use OpenWebUI as the chat interface. Which means write an OpenAI compatible interface for LeeClaw to respond to the OpenWebUI as if it were an llm.
All of these were put into sprint plans. And while on meetings at work I could just say execute sprint 8. Execute Sprint 9. Because of AgentFlow, it knew to code, test, test as user, update all documentation, save state, populate “where_am_I_at.md” (in case I forget what I was working on last time). Commit to git and push.
While I wrote this post, it executed sprints 11-14 with no intervention by me.
Validation:
- Targeted sprint packs: 42 passed
- Full suite: 702 passed (.venv/bin/python -m pytest tests/ -q)
- doc_audit passed
- Test-As-Lee smoke passed for:
- transport CLI
- provider endpoint flow (/v1/models, /v1/chat/completions)
- WhatsApp voice pipeline producing both text and audio outbound payloads
It’s all posted in a private repo. Next up - Code review. 4 Passes through, each pass covering multiple important ways to review. The output will be 4 separate review markdown files. While that’s going on - I’m off to walk the dog :)