One job run through a small version of a multi-agent content pipeline, for the Home Kitchen niche and an ad for a fictional client, the glass container brand Brightlid. Below is the run exactly as the operator sees it: each bot, what it handed to the next one, and the files it produced. Click any stage to open it.
Pulled top performing kitchen storage ads and wrote a one page brief.
Product Brightlid 5 piece glass set (fictional client) Audience 25 to 40, cooks on Sunday, takes lunch to work Angle waste less, lunch that still tastes fresh on Thursday Proof 4 sided clip lid, fridge to microwave to dishwasher Format UGC voiceover, creator on camera, 30 s, 3 hooks Sources Meta Ad Library + TikTok Creative Center (top 20 ads) Handoff brief.md > script-bot
One 25 second body, three interchangeable hooks, written in the niche's tone.
HOOK A I used to throw out half my groceries every week.
Then I changed one thing.
HOOK B One hour on Sunday. Five lunches. Watch this.
HOOK C This is my Thursday lunch. And no, I didn't make
it on Thursday.
BODY These are Brightlid glass containers. The lid clips
down on all four sides, so nothing leaks in my bag.
They go from the fridge, to the microwave, to the
dishwasher. No stained plastic, no weird smell.
I prep on Sunday, stack them, and my fridge finally
looks like I have my life together.
And Thursday's lunch still tastes like Monday's.
CTA The Brightlid five piece set. Tap the link and get yours.
Handoff script.md > voice-bot, asset-botCreator and product locked as reference sheets, then 8 shot stills. Voice with word timings.








Stills 8 x 9:16 from the 2 reference sheets (same face, same lid) Voice ElevenLabs, young US female creator voice, 8 takes Music generated music bed, 100 bpm, no vocals
8 clips animated from the stills, cut to the voice, captions from the word timings.
Clips 8 x 6 s, 1080p, animated shot by shot from the stills Edit hook + 5 body shots, cut on the voice timings Captions word by word, 3 words per line, active word highlighted Formats 9:16 (x3 hooks), 4:5, 1:1, safe zones respected Handoff /renders > qa-bot
Automatic checks before a human sees anything.
Five files in the client folder. Ads are handed over as files, nothing is posted.
/clients/brightlid/run-0042/ brightlid_hookA_916.mp4 brightlid_hookA_45.mp4 brightlid_hookB_916.mp4 brightlid_hookA_11.mp4 brightlid_hookC_916.mp4 script.md brief.md qa.json
Hook A opens on the problem: a bag of wilted spinach, straight to camera.
AI generated demo. Brightlid is fictional and the creator is not a real person. 4:5 and 1:1 are cut for hook A.
One niche working end to end first, then several niches with posting, then the ad workflow. It runs from Claude Code in chat, and every run writes a status page like the one above with links to the script, voice and video as they finish.
Research, script, voice, video, edit, captions, thumbnail, QA and human approval for one niche, using the brand's character assets and templates. A chat command like "make 3 videos for niche 2 on X" starts a run and shows the handoffs.
A style profile per niche, vertical cuts for Shorts, TikTok and Reels, then publishing to YouTube, TikTok, Instagram, Facebook and X only after each video is approved.
Ad research, 30 second scripts with hook variants, exports in 9:16, 4:5 and 1:1, one folder per client with its own brand assets. Delivered as files, never auto posted. Docs and a recorded walkthrough.
Claude Code as the orchestrator with one sub agent per step. Research from the YouTube Data API, news search, Meta Ad Library and TikTok Creative Center. ElevenLabs for voice. Grok Imagine or Kling for video, picked per shot. ffmpeg for edit, captions and formats. Whisper for the automatic speech check. All swappable per project.
Characters go in as reference sheets (face, outfit, props). Every still is generated from those sheets, never from text alone, and every clip is animated from an approved still. The QA step compares shots for drift and regenerates anything that changes.
No. Every video stops at the approval step. Ads are never posted, they land as finished files in the client folder.
The client. The pipeline runs on the client's own accounts and API keys, and every file lands in the client's folders.