Video creation agent

One question buyers ask about AI search becomes a short explainer video, checked fact by fact and by a reviewer that did not make it.

When buyers ask about AI search, AI engines cite YouTube explainers. In our own measurements GPT-6 Sol cited a YouTube video in 24 of its 200 answers, across 10 of the 20 buyer questions; Claude cited none. The videos cited are mostly small channels’ tutorials and tool round-ups, and none of them is ours.

Running on our own company since Oct 18, 2026 · YouTube · Risk: Low. Everything on this page is public; there is nothing to sign in for.

Goes inThe next pending row of the topic calendar for the weekday: a question, its source files in this repository, the real thing the video must show, and the page it links to
Comes outA video of 90 to 150 seconds with captions, a thumbnail and the YouTube copy, in a folder on our machine; a run record for this log; an email to a person
Human stepA person watches every video and decides whether it goes out. Publishing is a separate distribution agent, not built yet
Runs onA machine you control: Claude Code, HyperFrames, ffmpeg and a voice made locally. Monday and Thursday at 01:00 US Eastern, from 2026-10-22

Tasks and outputs

What it takes on

Write it from sources

Writes the facts list first, every claim with a sentence quoted from a file in this repository, then the script, the storyboard and each scene.

Facts, script, scenes

Render and measure

Renders the video with a local voice and a music track, then measures it with scripts: the facts, the narration against the script, the render, length, loudness and music.

A render and its measurements

Review, fix, verify

A separate session reviews the render with the checked facts. On one more pass, a fix session reworks it and a fourth session checks each item.

A verdict and a score

Who it is for: Teams that want to answer the questions their buyers ask AI engines with short explainer videos, with every number traceable to a source, a second reader that did not make the video, and a person deciding what goes out.

How we use it: We built it in October 2026 for ClawWorld’s own YouTube channel. The first video was made by hand over 2026-10-15 and 16, in four versions with a fresh reviewer after each: about 3.7 hours and 2.27 million tokens, and the last version scored 6/10, the reviewer calling it a narrated slideshow with no real evidence on screen. The agent turns what was decided on the spot then into a template, written rules and scripts, and splits the work into four sessions so the maker never grades itself. The first video on its log, D01 on 2026-10-18, also scored 6/10, with one more pass asked. A01 the same day was the first made with no one watching: four sessions in 102 minutes, 7/10. A03 on 2026-10-19, after we cut what each session reads, cost about a third less and scored 6/10. From 2026-10-22 it runs twice a week, Monday and Thursday at 01:00 US Eastern.

Workflows/video-creation/rules.mdRules every video follows

What every video is held to

01Every number and every claim about how a platform behaves has a line in the facts list, with a sentence quoted word for word from a source file in this repository. A script checks every quote.

02The reviewer is a separate session that never built the video. It sees the render and the checked facts list, not the maker’s reasons, and its verdict and score go on this log as given.

03Facts are the only hard stop on what a video says: a fact that does not check out holds it back. Visuals and pacing the reviewer questions go to a person. The render’s own measured checks, such as the narration matching the script, stop it too.

04The question is answered in the first 15 seconds, with a number, a real answer or the direct answer. No title card.

05At least one real thing on screen: a real AI answer from our measurements, a number of our own, or a page of our site. Illustrations are labelled as illustrations.

06ClawWorld appears in the end card and one disclosure line, not in the answer.

07No cloud service but the model: the voice is made on our machine, the music comes from the YouTube Audio Library, and the keys that would send music requests or screenshots to Google are removed before any session starts.

08Videos stay on our machine until a person has watched them and the distribution agent publishes them. This agent uploads nothing.

Read from the workflowAt most two reviews per video

The rules the agent’s output is written to, from the file named above. This site prints no example output; what the agent has shipped is in its run log.

Workflow

How a run goes, step by step

Pick a step to see what goes in, what comes out, and where a person is involved.

Step 1 of 6

Pick the topic

Takes the next pending row for the weekday from the topic calendar (Mondays alternate buyer questions and how-tos, Thursdays concepts and our own data), then asks a short separate session with no tools whether it would repeat a video already made: the session reads the row beside the title and full narration of every one. A repeat is dropped from the calendar with its reason and the next row is taken, at most three a run; for a new row it lists what earlier videos already said. Then it copies the project template into a new media folder outside the repository, writes the brief, and copies in the text of the row’s source files. When memory is short it waits up to 20 minutes, then goes ahead.

Goes in

Workflows/video-creation/topics.md, the videos already made and the project template

Comes out

A project folder with the brief and the sources; dropped rows with their reasons

Where a person steps in

A person adds topics when fewer than six are pending; the email says so.

Step 2 of 6

Build

A headless Claude session on Opus 5.5 follows HyperFrames’ faceless-explainer flow with fixed settings: it writes the facts list, the script and the storyboard, makes the voice, builds each scene as HTML and renders. It may run HyperFrames, Node and ffmpeg and nothing else, and never git. It has 100 minutes.

Goes in

The brief, the sources, the rules and the pronunciation list

Comes out

The facts list, the script, the storyboard, the scenes and a render

Where a person steps in

None.

Step 3 of 6

Measure

Scripts measure the render. Hard gates: every fact’s quote found in its source; the narration transcribed and matched to the script; 1920×1080, 30 fps, sound and the planned length; HyperFrames’ lint and check; the narration lint. Soft gates, which still deliver the video but mark it for a person: length, loudness and whether the music can be heard.

Goes in

The render and the project

Comes out

measure.json

Where a person steps in

None. A hard gate that fails holds the video back.

Step 4 of 6

Review

A separate session that never saw the build watches the render with the checked facts list and writes a verdict (ship it, one more pass, or block), a score out of ten and a list of fixes, each with a timestamp. It has 35 minutes.

Goes in

The render, the facts list and the measurements

Comes out

The first review report

Where a person steps in

None.

Step 5 of 6

Fix and verify

Only when the review asked for changes or a measured gate failed: a fix session works through the review and renders again, the scripts measure again, and a verification session marks each item fixed, partly fixed or still present. There is no third round.

Goes in

The first review report and the measurements

Comes out

A new render and the second review report

Where a person steps in

None.

Step 6 of 6

Package and record

Exports the captions from the project’s own caption data rather than from speech recognition, a thumbnail, the YouTube title, description and tags, and a handoff file for the distribution agent; writes the record this log is built from, marks the calendar row, commits both, and emails a person the status, the verdict and the score.

Goes in

The final render and the review reports

Comes out

The video, captions, thumbnail and YouTube copy on our machine; the summary in the repository

Where a person steps in

A person watches the video and decides. This agent uploads nothing.

Before you start

What you’ll need to bring

Company material

What the videos may say: your own pages, posts, measurements and snapshots, in the repository. Every fact in a video is quoted from one of them.

Source material

A topic calendar: one row per video with the question, its source files, the real thing it must show and the page it links to. A person writes it and tops it up.

Platform account

A Claude subscription with the Claude Code CLI signed in. A YouTube channel only to download the music once, by hand; the agent signs in nowhere.

Run environment

A machine with Node.js, HyperFrames 0.8.162, ffmpeg and a Python environment for the Kokoro voice, with memory to spare while it renders. We use Claude Code with Opus 5.5; the runs are meant to start from Windows Task Scheduler.

Guides and files

Set it up yourself

The setup guide, and the files the agent is built from. You run it in your own environment, with your own accounts.

Open · no account neededFour written prompts (build, review, fix, verify), the rules every video follows, a pronunciation list and the topic calendar; Node scripts for the facts check, the measurements, the two decisions, packaging and the record; a HyperFrames project template with the brand, fonts, caption style and sound effects; and the PowerShell wrapper the scheduler calls. Not packaged for public download yet. The setup guide below describes what they do.
Setup guide
  1. 01

    Runtime

    • Claude Code with Opus 5.5, started headless for each of the four sessions. Our October 2026 runs used about 2 to 4 million tokens a video, not counting the context the model re-reads on every turn, which is most of the cost: about $34 a video at API list prices after the cuts (A03), $50 before them (A01).
    • HyperFrames 0.8.162, pinned and run through npx; it renders each scene in a headless Chrome of its own. Node.js for it and for the scripts.
    • ffmpeg and ffprobe, for the render, the loudness and the other measurements.
    • A Python environment with Kokoro (kokoro-onnx) for the voice, and the Parakeet speech model HyperFrames installs, for checking the narration against the script.
  2. 02

    Browser setup

    • None to keep open. HyperFrames drives its own headless Chrome to render the frames, and nothing signs in anywhere.
  3. 03

    Account setup

    • A Claude subscription with the Claude Code CLI signed in. No other cloud service: the keys that would let HyperFrames send music requests and screenshots to Google are removed from the environment before a session starts, and its telemetry is off.
    • A YouTube channel, only to download tracks from the YouTube Audio Library once, by hand. Nothing in the agent signs in to YouTube.
  4. 04

    Configuration

    • The topic calendar: one row per video with its id, pillar, title, source files, the real thing it must show and the page it links to.
    • The rules file every session reads, and the pronunciation list: the spellings the voice reads correctly.
    • The project template: the brand frame, fonts, caption style, the two sound effects and the mix, so no session decides them again.
    • The music folder outside the repository, with the scan’s verdict on each track.
  5. 05

    First run

    • Make one video with the wrapper’s manual mode and dry run (no commit, no email), and watch it yourself.
    • Read the measurements and the review report: every gate should be a number you can check, and every fact a quote you can find in its source.
    • Make one video for each of the other pillars and note each one’s tokens and minutes before you register the schedule.
Files · 11

build.md

Workflow · Markdown. The build session’s instructions: the facts first, then the script, the storyboard, the scenes and the render.

Workflow

critic.md

Workflow · Markdown. The review session’s instructions: judge the rendered pixels and the audio against the checked facts, and give a verdict, a score and fixes with timestamps.

Workflow

fix.md

Workflow · Markdown. The fix session’s instructions: apply the reviewer’s fixes, render once more, and stop.

Workflow

verify.md

Workflow · Markdown. The verification session’s instructions: check each earlier finding item by item, and look for anything the fixes broke.

Workflow

rules.md

Rules · Markdown. What every video follows, each rule beside the failure in the first video it came from. pronunciation.md beside it holds the spoken spellings.

Rules

topics.md

Calendar · Markdown. One row per video: id, pillar, title, sources, the real thing, the link and the status.

Calendar

facts-check.mjs

Script · Node. Checks that every quote in the facts list appears word for word in its source file.

Script

measure.mjs

Script · Node. The measured gates: facts, the narration against the script, the render, HyperFrames’ checks, the narration lint, length, loudness and music.

Script

decide.mjs

Script · Node. Whether to run the fix round, and the delivery status: ready, needs review, blocked or failed.

Script

record.mjs

Script · Node. Writes the run record this log is built from, with no local path in it, and the email body.

Script

run-video-creation.ps1

Scheduler · PowerShell. What the scheduler calls: pulls, picks the topic, runs the four sessions and the scripts in order with their time limits, commits the record and emails.

Scheduler

Not packaged for public download yet. The guide on the left describes what each one does, step by step, so you can rebuild the setup; the Hosted and Fully managed tiers run them for you today.

Rather have us run it?

Hosted: your accounts in a cloud browser we run, and you review what goes out. Fully managed: we set the strategy and run the agents.

Good to know

Where it stops and asks for you

  • A fact does not check out. The video is held back and marked blocked. The email lists what failed; nothing is handed on.
  • The build session ends without a render. The run is recorded as failed, with the step it stopped at.
  • A review or fix session runs out of time. The video from before the fix is kept and marked for a person.
  • The reviewer still asks for one more pass after the fix. The video is delivered marked for a person, with the open items listed. There is no third round.
  • Fewer than six topics are left. The email says so, and a person adds rows to the calendar.

Risk notice

What to watch for

  • A headless session may not finish a whole video unattended. The build session has 100 minutes; when it ends without a render the run is recorded as failed, and a review that times out leaves the video marked for a person.
  • The voice is synthetic. Kokoro reads some words wrong (in the first video GPT-6 Sol came out as "saw", and fifteen was heard as fifty); a pronunciation list and the transcription check catch what they can, and the YouTube copy says the voice is synthetic.
  • Scores so far are modest: 6/10 for the first video, D01 and A03, 7/10 for A01. Whether the agent makes videos worth publishing is still open; the design asks for at least four of the first six to be judged publishable before the format counts as working.
  • The music licence covers YouTube only. Posting the same video to LinkedIn or X means checking the track again.
  • Each video answers one of the questions the AI Visibility agent measures every day. Its go-live date has to be logged there, or a change in the readings cannot be told apart from the engines drifting.

FAQ

Questions about this agent

Why does it not upload the videos?

A person watches every video first, and publishing is a separate distribution agent’s job. It is also safer: YouTube locks uploads from an API project it has not audited to private, and they cannot be made public afterwards.

Why a separate reviewer?

In the first video’s four rounds, every problem the reviewers found was one the maker had not found itself. A session that built a video grades what it meant to make; the reviewer sees only the render and the checked facts list, not the maker’s reasons.

Why only sources from your own repository?

The facts check compares each quote with the file it came from. A page fetched from the web could only be compared with the copy the session saved, and nothing proves that copy is what the site said. A page from Google’s or Bing’s documentation is saved into the repository by a person first, then used.

Why are low scores on the log?

Because that is what the reviewer gave. The first video scored 6/10, D01 6/10, A01 7/10 and A03 6/10. A log that showed only the good ones would say nothing about what the agent makes.