Part 9 of the Heist Build Log — an honest, running account of building a content OS from scratch. New entries drop on the 1st and 15th.
Two months, 211 commits, mostly about adding
I went back through the last two months of work on Heist before writing this. 211 commits, all shipped to production — and most of them were about one thing: adding. This was a feature build, the biggest stretch of pure creation since I started. Here's what shipped, what it took, and the quieter work that made it all hold together.
The big one: faceless video
The centerpiece was a faceless-video pipeline. You give it a script; it turns that into a voiceover, then into a finished slideshow MP4 — no camera, no editing suite, no you-on-screen required. I wired it into the Content Studio editor, made it a media option in the social tools, and hooked it into blog, campaign, and autopilot flows so a video can come out the other end of almost anything you make.
This was the hardest build of the period, and most of the difficulty wasn't the fun part. Generating a video is the demo. Making it survive is the work: real render jobs tracked in the database, the finished MP4 persisted locally instead of trusting a hosted link that expires, progress bars driven by the actual job instead of a hopeful animation, and a regenerate button that tells you the truth about what it's doing. A feature that works once in a demo and falls apart in the wild isn't a feature yet.
Generating the video is the demo. Making it survive contact with real users is the actual build.
AI images, everywhere you'd want one
The next push was killing the blank media slot. You can now generate a featured image inline right where you're working — in the blog editor, the media library, the calendar's edit drawer, and per autopilot post. No bouncing out to a separate tool, no hunting stock for the fourth time this week. Alongside it, an AI-video path through Runway with a visual-style picker, so the look stays yours.
The theme tying these together: the moment you need a visual, you shouldn't have to leave. The idea and the image should live in the same place.
Two new places to publish
I also added Pinterest and Reddit as postable platforms. Different rooms, different rules — but the principle holds: your Brain writes once, and the platform-native version goes where your audience actually is. Two more surfaces covered, two fewer places you have to think about by hand.
Then: making all of it trustworthy
Here's the half of the story that never makes a launch announcement. Once the new features existed, I stopped adding and spent a concentrated sprint making them solid — because new features are new surface area, and surface area is where things break.
Building surfaced exactly the kind of small, embarrassing things that only appear under real use: generated media URLs that expired out from under people, AI images that generated fine but were invisible in the web library because of a single wrong workspace ID. So the sprint went wide. Accessibility: 144 color-contrast failures taken to zero, in both light and dark themes. Security: guards against forged server-side requests on any URL a user hands us, and missing database indexes filled in. Resilience: a resilient-fetch layer around the publish paths so one flaky network call doesn't drop your scheduled post. Observability: an error tracker and health checks, because you can't fix what you can't see. Plus a backlog of autopilot reliability fixes and a Help Center pass with seven new guides.
None of that shows up in a feature demo. All of it is what decides whether the demo can be trusted a month later.
What two months actually taught me
Adding features is the loud, satisfying part — there's a clean hit of "the new thing works" you don't get anywhere else. But the quiet part, the part where you make the new thing reliable enough to stake your name on, is the work that actually earns trust. Faceless video shipped and works. AI images are everywhere. Two new platforms are live. And the reason any of it is worth using is the unglamorous week I spent making sure it wouldn't fall over.
If that sounds familiar, it should. It's the same thing I keep telling creators about content: the brilliant one-off isn't what wins — the boring, repeated, unglamorous discipline is what compounds into something people trust. Autopilot is only worth handing your brand voice to because of a hundred fixes nobody will ever see. Same rule, different craft.
Try it yourself
Every one of these features is live right now — faceless video, inline AI images, Pinterest and Reddit, all of it. Seven-day free trial, no credit card required. The Brain learns your voice in the first session.
Next: the three bugs I shipped anyway — an honest accounting of what's still rough, and why I left it that way for now.
What did Heist ship in the last two months?
A feature build followed by a hardening sprint. The features: a faceless-video pipeline (script to voiceover to slideshow MP4), AI-generated featured images across the blog editor, media library, and calendar, an AI-video path via Runway, and Pinterest and Reddit as new publishing platforms. The hardening: accessibility fixes, security guards, resilient publishing, observability, autopilot reliability, and a Help Center refresh.
What is the faceless video feature?
It turns a script into a finished video without you being on camera — generating a voiceover and assembling a slideshow-style MP4. It's available in the Content Studio editor, as a media option in the social tools, and as a derivative of blog, campaign, and autopilot content, so a video can come out of nearly anything you create in Heist.
Why spend a sprint on hardening instead of more features?
Because new features add surface area, and surface area is where things break. Small issues like expiring media URLs and an image-visibility bug showed the foundation needed to catch up to the feature set. Hardening — accessibility, security, resilient publishing, observability — is what makes the exciting features trustworthy in real-world use rather than just in a demo.
