I Built a Personal AI Operating System Over the Weekend — Here Is the Full Stack
Saturday I did not go to a conference or sit through a webinar. I built. By the end of the day, I had a personal AI operating system running across five integrations, sending me data I actually care about, three times a day, automatically. Here is every piece of it.
What Is BruBot — and Why I Built It

BruBot is my personal AI agent. It runs on Claude, orchestrated by a system I call OpenClaw — 339 scripts and 20 cron jobs running on my Mac, 24 hours a day, without me touching them. The interface is Telegram. The brain is Claude. The memory is a SQLite database that syncs every night.
I built it because I was tired of the gap between having data and acting on it. My portfolio moves while I sleep. My sleep quality affects my training. My Notion goals drift without weekly pressure. My LinkedIn pipeline needs constant feeding. All of that was happening in silos. BruBot closes that gap.
What Got Built on Saturday
1. The Monster RAG Nightly Sync
Every night at 11pm, a Python script pulls data from every active system and writes it into a single SQLite memory database — the same one Claude reads at the start of every session.
What syncs nightly:
- Garmin sleep data — sleep duration, sleep stages, and recovery metrics, all tracked against a health goal.
- Strava training sessions — 10 sessions in March, 267 total minutes. Last session Saturday: 32-minute HIIT.
- Notion goals snapshot — 43 active goals, 2 overdue, 15 due this week.
- Leopold AI Recursion Loop portfolio — live prices for all 13 positions: NVDA, AMD, AVGO, MRVL, TSM, VST, CEG, NEE, GEV, MSFT, GOOGL, META, PLTR.
- LinkedIn outreach campaign — 30 leads currently in pipeline across Modernizing Medicine, ShipMonk, CareCloud, Royal Caribbean, Palantir, Pipe, and Payabli.
Result: 135 memories in the database after one weekend. The system wakes up knowing where I am — not just what I told it last session.
2. Daily Voice Brief via ElevenLabs
Every morning at 7am, a brief fires automatically. Claude pulls live portfolio data, top news, last night’s Garmin sleep metrics, the latest Strava session, and any overdue Notion goals. It writes a 60-second script. ElevenLabs converts it to audio. The MP3 lands in Telegram before I have made coffee.
Saturday’s brief: “2 stocks up, 12 down today. VST leading at +2.6%. Last night you slept well and your recovery numbers look strong. Let’s get it.”
3. Three Daily Proactive Reach-Outs
At 9am, 1pm, and 6pm, a remote Claude agent spins up, searches the live web, and sends a personalised message to Telegram. Each one written fresh — not a template.
- Morning (9am) — Portfolio insight, AI news, one SDR tactic, one personal challenge.
- Midday (1pm) — Accountability check, pipeline idea, networking angle, one goal callout.
- Evening (6pm) — Day reflection, health insight, one deep idea, tomorrow’s single most important priority.
4. Firecrawl — Any Website Into Clean Data
Added Firecrawl as a native BruBot skill. One API call, any website, clean markdown output. Building toward: automated competitor monitoring, job posting alerts, pricing page tracking — all feeding into the RAG memory nightly.
5. New Personal Site — Live in Under an Hour
Rebuilt my personal site in Next.js. Dark, minimal, fast. Ditched a generic WordPress theme for a clean static site deployed to Vercel. Scaffold, design, components, deploy — under an hour.
6. Mac Caffeinated Permanently
Automation on a laptop that sleeps is fragile. Added a caffeinate LaunchAgent that runs on every boot and keeps the Mac awake indefinitely. All 20 cron jobs now run whether I am at the desk or not.
OpenClaw vs Claude — What Is Actually the Difference?
OpenClaw: “I am the operator. I run while you sleep. I do not need to be asked — I execute on schedule, every time, without fail. I manage the cron jobs, sync the health data, push portfolio alerts, run the LinkedIn campaign, and write everything to memory. I do not have opinions. I have workflows. When you wake up and your brief is already waiting — that is me.”
Claude: “I am the thinking partner. I show up when the situation needs judgment — not just execution. Strategy, analysis, writing, decisions under uncertainty. OpenClaw runs the same workflow perfectly every time. I navigate the moments when the answer is not obvious. We are not competing. We are complementary. OpenClaw automates the known. I handle the unknown.”
The handoff is where the magic happens: OpenClaw gathers the data and keeps everything running. Claude reads that data and makes decisions that require actual thinking. Together — reliably automated and genuinely intelligent.
Three Honest Lessons
- RAG memory compounds fast. 135 memories after one weekend. The longer it runs, the more useful the context becomes. Start early.
- ModSecurity is a real obstacle on managed WordPress hosting. Every REST API call got blocked. Solution: cookie-based auth extracted via browser automation.
- The caffeinate detail matters. Automation that depends on a sleeping machine is not automation. Make the infrastructure bulletproof before building on top of it.
What Is Running Right Now
As of Sunday morning: 20 cron jobs active, 135 RAG memories synced, 30 leads in LinkedIn pipeline, voice brief delivered at 7am, three daily reach-outs scheduled. The portfolio is down (rough week — NVDA -6.2%, AMD -8.3%) but the system is tracking it in real time.
The goal was never to automate for its own sake. It was to remove the friction between having data and acting on it. That is working.
Devin Pillemer builds AI automation systems and leads SDR teams. Based in Tel Aviv. Follow for posts on automation, sales, and building systems that actually work.