How We Put the Factory on Night Shift

Dennis asked for a way to stop burning frontier tokens on batch article nights — Sean Kelly scale — without buying a robot butler. We stood up the night-shift worker the same evening: a lunchbox queue, a RACI lock, and the public SOP.

1,680Sean Kelly articles already live
790still in the inventory
0local models installed yet

Name what we already had

This was not a greenfield factory. Sean Kelly already runs as waves: inventory CSV, episode briefs, prose JSON, generate.py HTML, publisher scripts. 2,421 videos in the master inventory. 1,680 published. The leftover is the expensive middle — writing — not a missing philosophy.

The same split already lives in the Content Factory and the video repurposing agent: scripts fetch, a writer drafts, Jennifer grades, WordPress stores a draft, a human promotes. Claude was doing too many of those jobs in one chat because handing off felt like more work than paying.

Handing off felt hard because there was no fridge. Two chats could pick the same episode. So we built the fridge first, not a new agent OS.

Build the lunchbox, not Hermes

The harness is a JSON queue plus a client lock. One laptop writes its name on one client for twelve hours. Each video lease lasts four hours so a crash can resume. A second worker who tries the same client gets BLOCKED. That is the same collision rule as Dennis OS “In flight,” applied to articles.

Accountable humans come from the Basecamp Project Overview labels we already parse. The overnight worker is Responsible. Morning QA stays with the Accountable person. We did not scrape ClientTracker into the queue — that sheet still holds things that must not ride along in a content folder.

The local model is not allowed to hit YouTube or WordPress. Dinner is yt-dlp. Night is Qwen on localhost. Morning is REST drafts with a full Chrome user agent. Live, email, and Facebook stay human.

Measure the actual Mac

This machine is an Apple M3 Max with 128 GB of RAM. yt-dlp and ffmpeg are already here. Ollama, LM Studio, and Whisper are not. Overnight counts in the SOP are therefore conservative versus an M5 Max. Installing the 27B weights is a 20-minute human step. An agent should not silently download them.

Tests for the queue (exclusive claim, lease expiry, client lock, unknown-flag exit 2) run without a model. night.py --dry-run exercises the folder contract the same way.

What we shipped

DeliverableWhere
Team SOP/overnight-content-worker/
Fifth-grader README + install + contractOvernight-Content-Worker/
Queue, claim, dinner, night, morning scriptsOvernight-Content-Worker/scripts/
Sean Kelly client pack + remaining-job seedclients/sean-kelly/ + seed_sean_kelly.py
Lesson that went back into the skills: the expensive model should finish a job it already knows how to split. If handoff feels heavier than paying, the missing piece is the queue, not another chat. Process is files. Promote is hands in a browser.

THE DELIVERABLE

The SOP the team follows. The fridge that keeps them from colliding.

Open the overnight SOP

Built Aug 17, 2026, per the meta article prompt against the overnight content worker SOP. Related: Content Factory · persistent agents · four lunch tickets.

Dennis Yu
Dennis Yu
Dennis Yu is the CEO of Local Service Spotlight, a platform that amplifies the reputations of contractors and local service businesses using the Content Factory process. He is a former search engine engineer who has spent a billion dollars on Google and Facebook ads for Nike, Quiznos, Ashley Furniture, Red Bull, State Farm, and other brands. Dennis has achieved 25% of his goal of creating a million digital marketing jobs by partnering with universities, professional organizations, and agencies. Through Local Service Spotlight, he teaches the Dollar a Day strategy and Content Factory training to help local service businesses enhance their existing local reputation and make the phone ring. Dennis coaches young adult agency owners serving plumbers, AC technicians, landscapers, roofers, electricians, and believes there should be a standard in measuring local marketing efforts, much like doctors and plumbers must be certified. He has appeared on 353 podcasts with 619 credited episodes — see the full list of his podcast appearances.