Claude Code Can Edit a TikTok. Teaching It What’s Funny Is the Hard Part.
Brooke Lacey shows Claire Vo how Claude Code orchestrates FFmpeg, Whisper, and Python to turn phone footage into captioned shorts—and why the real work is encoding her timing, taste, and style.
Featuring Brooke Lacey · Creator and founder at Zosha
Claire Vo
Watch or listen to the full episode
Episode chapters
6 chapters- 0:00Why short-form editing takes hoursBrooke explains how precise cuts change comedy and describes her first local editing experiment with Claude Code.
- 9:25A phone take becomes a captioned vertical adThe live demo walks through silence detection, Whisper timing, face tracking, a TSV cut list, app inserts, captions, and sync checks.
- 18:01Pairing TikTok videos with audience commentsBrooke combines videos downloaded to Google Drive with comments accessed through an authenticated browser session.
- 22:49Teaching hooks, cadence, and comedyExisting performances inform scripts and editing rules, while Brooke identifies the limits of automating her two-character format.
- 29:11What experienced technologists bring to AIBrooke reflects on earlier technology transitions and encourages older builders to share their experience.
- 33:42Making corrections persistBrooke explains how her lanes operating system routes mistakes back to persistent instructions and global improvements.
Workflows from this episode
- Generate New Video Ideas by Analyzing Your TikTok Comments with Claude
- Automate Short-Form Video Editing with Claude Code, FFmpeg, and Whisper
Episode outline
The surprising part wasn’t that Claude Code could cut a video. It was that it could hear Brooke Lacey say “cut that out,” treat that as an editing instruction, and choose between repeated lines based on cadence.
That was Brooke’s account of her first experiment. In the live demonstration, the result was more concrete: a raw phone take became a vertical ad with jump cuts, captions, a zoom, and app-screen inserts. No timeline. No conventional editing project. The edit lived in a text file.
But there’s a catch worth keeping in view: Brooke already knew exactly what a good cut sounded like. She has over 200,000 TikTok followers and years of experience making short-form videos. Claude Code didn’t supply that judgment from nowhere. She had been teaching it what to notice.
Her workflow is useful because it separates two jobs that usually happen inside the same editing interface: deciding what the edit should be, and executing it. The second job is increasingly scriptable. The first still takes taste.
Ten seconds can be the difference between a joke and a dud
Brooke’s example of why editing matters was a Women in Web3 panel video. The original ran about a minute and five seconds. Her friends didn’t think it was funny. She brought it down to about 55 seconds, tightened the jump cuts, and the video became funny—and went viral.
Those ten seconds weren’t disposable padding. They changed the rhythm of a two-person performance in which Brooke plays both sides. A facial expression needs to land at the right moment; a response can’t arrive after the joke has already expired.
She had tried teaching video editors how she wanted those cuts made. The results never quite matched what she needed, so she kept doing the work herself. One video could consume hours of her day, even when the final product looked like an effortless conversation with her phone.
The immediate reason to revisit that process was her own product. Brooke needed videos for her free AI-learning app, Zosha, formerly Jaila. Older branding appears in the demonstration. Rather than stop recording between takes, she filmed continuously, repeating lines and occasionally telling herself to cut something out.
Her first experiment involved roughly 25 to 30 minutes of footage. She AirDropped the video to her MacBook and asked Claude Code to work with it. According to Brooke, it used FFmpeg, Whisper, and Python locally rather than uploading the video to a separate editing service.
That distinction matters: this is Claude Code orchestrating tools and files on a computer, not a new video-generation model producing a synthetic Brooke. It also isn’t a complete privacy audit. The episode establishes where the video processing happened in her setup, not every detail of what the surrounding AI service receives.
The edit is a TSV file, not a timeline
In the live demonstration, Brooke worked in the terminal. A casual instruction kicked off an existing setup; it wasn’t a fresh installation or a one-line prompt that built the whole system from scratch.
That’s important if you want to copy it. Claire asked whether a skill or prompt had been preloaded, but the episode never provides the complete starting instructions, scripts, installation steps, or model version. What it does provide is a remarkably legible account of the editing chain.
The input was one phone take containing five minutes of Brooke talking. The displayed walkthrough reported that the chain ran in 15 seconds and produced a roughly 15-second vertical ad. Treat that as the result of this prepared demonstration, not a runtime promise for arbitrary footage.
The chain began with silence detection to find speech. Whisper supplied word timing to sharpen the boundaries. Brooke’s explanation was precise: the sound of a word ends earlier than you might intuitively place the cut. Silence detection alone wasn’t enough, and neither was word timing alone.
Next came face tracking, so the crop could follow her. Each cut received a shot size—wide, mid, or close—rather than a vague instruction to zoom whenever something seemed funny.
The decisions were stored in a TSV cut list. Each row contained a start, an end, a shot size, and a label. Eight cuts were selected from that file.
That file is the whole edit.

This is the part I would steal first. A text-based edit gives you something inspectable between the request and the rendered video. If a cut feels wrong, you can change the decision instead of asking the system to vaguely try again.
For a reader adapting the approach, a sensible first milestone would be much smaller than Brooke’s complete ad: one local clip, a word-timed transcript, an explicit cut list, and a rendered preview. That is suggested scaffolding, not a setup Brooke demonstrated from scratch. Establish that the cuts work before adding graphics and camera changes.
The finishing details were specified, not wished into existence
Brooke’s ad also needed to show the app. She instructed Claude to find her branding and graphics, open the simulator, take an app screenshot, and incorporate it into the video.
The reported output placed app imagery in 40 of the 441 frames. The cut list determined when those screens appeared. Their placement also responded to the footage: Brooke’s right edge was measured per cut so the cards could occupy the empty wall beside her.
That is a more useful specification than asking for a polished ad. It gives the system a source for the assets, a timing mechanism, and a spatial constraint. The empty wall Brooke had deliberately included in the original shot became usable composition space.
Captions were similarly concrete: 57 words, appearing one at a time, white with a black outline. Brooke requested the colors; she said the system chose to hold each word until the next arrived.
Finally, the walkthrough reported 441 frames at 30 FPS and zero milliseconds of audio/video offset. The text-based approach also supported generating 30-second, 60-second, and landscape versions from the same take, according to the displayed explanation. Those additional versions were described, rather than separately demonstrated in the conversation.
Claire’s counterexample was her own unsuccessful approach: ask Claude to make a funny video. Brooke had instead broken short-form editing into observable decisions—word boundaries, shot sizes, expressions, caption timing, and asset placement.
For anyone building a similar system, the practical review is to watch the finished file, not accept the diagnostic summary as proof of quality. A sync check cannot tell you whether a reaction shot lands. A correctly positioned graphic can still distract from the joke. Technical validation narrows the review; it doesn’t replace it.
Your old videos and their comments are different inputs
Brooke’s second workflow used her existing TikTok content to improve both editing and writing. It required a less glamorous step than the terminal demo: manually getting the videos somewhere Claude could access them.
Her workaround was to download videos on her phone and upload them to Google Drive. Separately, she used an authenticated TikTok browser session to access the associated comments. In the demonstration, Claude called Claude in Chrome; Brooke also noted that browser access sometimes required additional direction.
The useful pattern is to keep those inputs distinct. The downloaded video provides the actual performance. The comment thread provides audience questions and reactions. A post ID or another clear identifier connects the two.
Brooke’s instruction was to use the video in Google Drive, read the comments, and develop new content ideas from what people said. Claire restated the process to confirm: pair the video’s content and performance with its comments, then use that combination to propose new material.
One comment asked whether hospitals would start using AI for billing and coding. Others raised questions about CEOs and which skills AI might replace. These were specific prompts from an existing audience, not generic topic suggestions generated in isolation.
This was not evidence that TikTok can be scraped reliably at scale. Brooke described access constraints, manual downloads, and occasional browser corrections. If you adapt the workflow, keep the manual handoff available rather than making the whole content system depend on unattended access working every time.
The other input was harder to package: Brooke’s delivery. In one video, she opens by talking about having been in tech for 25 years and being scared for people. She explicitly directed Claude to notice the cadence and little laugh that made the hook work for her.
That is much more actionable than “write in my voice.” She was pointing to a particular performance and explaining its function.
Teach the timing; keep responsibility for the joke
The style analysis fed back into editing and forward into new scripts. But Brooke was clear that some of her comedy remained unresolved.
Her “WTF Even Is” format alternates between two characters she performs herself. One asks about a complicated technical subject; the other responds with an excessively complex explanation. The comedy depends on the movement between absurdity, jargon, and the first character’s reaction.
Brooke said she hadn’t fully taught Claude that pattern yet. Her facial expressions remained her own performance, and the words needed a particular back-and-forth to work. That is a useful boundary: a successful captioned ad does not demonstrate that the system has mastered every format in the creator’s repertoire.

Nor was this a demonstrated growth machine. Brooke said she posts about once a week, supported by years of audience-building and older content that continues circulating. She was making ads and planning to test whether TikTok ads worked for her products. The episode does not establish conversion results or an increase in posting frequency caused by the system.
Her correction process is worth copying more broadly. Brooke maintains a personal “lanes” operating system with separate memory, write restrictions, project instructions, and status Markdown files. When Claude gets something wrong, she directs it back to those instructions, asks it to find the failure, and has it report the correction to the central system so the lesson can apply globally.
You don’t need her entire architecture to borrow that habit. As an adaptation, keep the editing rules in a persistent document and distinguish a one-off preference from a reusable rule. If a word gets clipped, fix the cut—and then decide whether the timing instructions need changing. If one joke needs an unusually long pause, don’t accidentally turn that exception into the default for every video.
The verdict: copy the inspectable edit list, word-level timing, and deliberate use of your own examples. This is best suited to creators and small product teams who already know their format and can recognize a good result. Claude Code can execute much of the tedious assembly. The creator still has to decide which take is convincing, which pause is funny, and whether the finished video deserves to be posted.
Watch or listen
Thanks for supporting How I AI
SponsorsBuild your next product with ChatPRD
Turn an idea into a PRD, user stories, and a plan.



