The Build, Ep. 2: July, When It Got Serious

The Build is the story of one guy, two Macs and too many agents, told as it happens. Episodes 1–6 catch up from May to tonight. After that it’s one entry a night.

For most of the spring I’d been tinkering. In July the build turned into a system, and the system started biting back.

The week of 6 July: 194 commits

  • 6 Jul: the whole workspace went into a private GitHub repo. Everything before that date stays offline, because the old history had secrets in it. Ops alerts moved from WhatsApp to Slack.
  • 6 Jul: I killed a nightly “dream synthesis” job. It kept confidently diagnosing problems that didn’t exist. A confident wrong answer is worse than no answer.
  • 7 Jul: Fable 5 left my plan. It stayed on four personal sends through the API at $10 in / $50 out per million tokens, and everything else dropped a tier.
  • The morning brief was rebuilt from scratch, every voice standardised on one ElevenLabs model, and search moved from Google to Brave because Google’s search API is being shut down.
summer commits

The bugs that taught me something

  • 11 Jul, the silent skip: a few “SKIP-TONIGHT” markers left in the crontab quietly skipped the blog and the nightly coach for days. Nothing errored, because nothing ran.
  • 16 Jul, the keychain: cron’s git push had been failing for days. Cron can’t read the macOS keychain, so the fix was a token from the env file.
  • 20 Jul, two scores for one day: the blog published a 6.2 while the real score was 8.9, because it read a stale cache. Life OS became the only scorer, and everything else reads from it.

Cheaper, louder, in Hebrew

  • 22 Jul: most of the bulk LLM work moved to Kimi K3 to save money, behind one LLM_PROVIDER switch so I could flip back in seconds. (Spoiler: I flipped back in October.)
  • 25 Jul: the nightly coach became a video: an AI avatar of me reading my own day back to me. A privacy scanner now checks every blog post before it goes live.
  • 28 Jul: the first Hebrew phone agent that actually understood Hebrew on a call.
  • 11 Jul: the first shopping automation: a weekly grocery run driven through a browser.

The scoreboard

  • July’s average Day Score was 8.2, my best month by a distance.
  • Lesson: put everything in version control and give every number one source. Anything else drifts.

The Build: catch-up series

From Ep. 7 it’s one short entry a night.

Similar Posts