Runs both skills, writes the captions and the Remotion build.
Scrapes competitor content across TikTok, Instagram and LinkedIn.
Records the video and produces the first edit plus transcript.
The content idea bank. Scripts, drafts and saved posts live here.
Renders the YouTube videos and reels from the overlay config.
Renders the slides and reels straight from HTML.
content_hub/run.sh every Friday at 8:00am. Nothing to remember, nothing to start.The dashboard lives at localhost:4000. Start it with ./content_hub/start.sh, never uvicorn from inside the folder.
Obsidian is the home for content deliverables. Scripts, transcripts, and drafts live in the vault, not in the git repo.
public/footage/.Cut from a clean source. Overlays applied to already-treated footage stack duplicate text and read as sloppy.
A strict three-step flow with a hard approval gate on the hook. Nothing gets written until the hook and the CTA are both locked.
0:00, minimum 3, each at least 10 seconds, keyword-rich labels. This was the single biggest SEO gap in the July 2026 audit./overlays is the editorial brain. It decides which line becomes a callout, what type, and where the camera pushes in.
The render happens in one of two engines depending on the format.
overlay-plan.md and stop. A table with timestamp, type, on-screen text, and a one-line reason. Approval required before the config is final.overlays.config.ts, wire it into the composition, render, then verify by pulling stills at each callout timestamp.Topic shift. Opens a section and sets the promise.
The pain number or the cost. Makes stakes real.
The fix, the win, the right way. Semantic opposite of red.
Brand beat. Names the tool being discussed.
The default text overlay for everything else.
Flag callouts take the color they name. A green flag is green, a red flag is red. Never burgundy. Applied automatically by detectFlag().
overlays.config.ts that /overlays writesThe Friday digest surfaces more usable topics than get made. This is the cheapest win on the list because the input already exists and is already paid for. The fix is cadence, not tooling.
The hook is the retention ceiling for the whole video and currently the weakest output of the captions skill. Worth tightening the hook archetypes and the rubric they are scored against.
Captions come out correct but flat. The voice rules currently say what to avoid, not what makes a line sound like Alice. Feeding real high-performing posts back in as voice samples is the likely fix.
The last manual step. Blotato setup is below.
The pipeline currently ends at rendered assets. Everything after that, posting to each channel at the right time, is manual. Blotato closes it, because it integrates with Claude Code, which makes scheduling the last automated stage rather than a separate tool.