# How I Make Videos With AI

By [Joe Hu](https://hubeiqiao.com). https://hubeiqiao.com/video-guide/

> You don't need to know how to edit. You need to know what you want.

Not one prompt: my Stripe film took 19 versions. A free, step-by-step guide to making videos with AI, from someone who never trained as an editor.

## Four ways to make a video with AI

1. **By hand, in an editing app.** Good: Full control of every frame. Hard: You learn the app; every change is by hand.
2. **A video model paints it.** Good: Shots you could never film. Hard: Faces, words and logos drift.
3. **An AI writes code that renders it.** Good: Your real footage, changed exactly where you point. Hard: A little setup on your computer.
4. **An AI runs an editing app.** Good: A project file you can finish by hand. Hard: Slow and fragile.

This guide takes the third way: an AI writes code that renders the video.

## The five steps

The same with any model. You decide what you want and what is wrong; the assistant builds.

### 1. Know what you want. Then gather your files.

- Stays yours: What you want, and your real files. No model can invent them.
- Faster with Opus 5.5: It asks you the questions first, then finds and sorts your files.
- Done when every part of your outline points to a real file.

### 2. Get the whole draft once. Then react.

- Stays yours: Judging it. Keep a draft that is roughly right; ask again if it is far off.
- Faster with Opus 5.5: Good drafts come far sooner. Wissal's birthday film: an approved cut in 37 minutes.
- Done when a playable video exists from the first word to the last.

### 3. Point at the problem. Fix one section at a time.

- Stays yours: Watching every round yourself, and deciding when a section is done.
- Faster with Opus 5.5: It checks its own work first, so rounds go faster: 16 BlizzCon versions in half a day.
- Done when every section has an approved file name and you have nothing left to say.

### 4. Put it together. Listen at every join.

- Stays yours: Listening at every join, and choosing the music.
- Faster with Opus 5.5: It matches loudness across sections and fixes only the join you flag.
- Done when you can watch it end to end without wincing once.

### 5. Finish where people see it. Then save it as a Skill.

- Stays yours: Checking it on a phone, where people will really see it.
- Faster with Opus 5.5: The Skill is quick to write, and it makes the next one: my v0.9.3 release preview became a Skill, and that Skill made the v0.9.4 preview two days later.
- Done when the post preview looks right and the Skill is saved.

A useful note has four parts: where, what's wrong, what you want, what must stay.

## Your first hour

1. **Get Claude Code.** Pick Opus 5.5 . Medium effort is the default; go higher for better drafts. Codex works too.
2. **Add the Skill.** Just ask: “Install the make-a-video Skill from github.com/hubeiqiao/how-i-make-videos-with-ai.” It installs itself.
3. **Say what you want.** Put 10 to 30 of your own photos or clips in one folder, open it and send one message.
4. **React to your first draft.** It sets up Remotion and renders a whole draft from your files. Then write your first note.

Your first message:

```text
Use the make-a-video Skill. Make a 30-second video from the files in this folder. It is for [who will watch]. After watching, they should [believe or do one thing].
```

## The kit

- `skills/make-a-video/`: the five steps, written for your assistant. Start here.
- `skills/`: six more Skills I saved from my own videos, as examples
- `all-prompts.txt`: every prompt on this page, if you would rather paste them
- `one-page-workflow.pdf`: the whole method on one printable page
- `README.md`: your first hour, in four steps

Download: https://hubeiqiao.com/video-guide/downloads/video-workflow-kit.zip
GitHub: https://github.com/hubeiqiao/how-i-make-videos-with-ai

```bash
npx skills add hubeiqiao/how-i-make-videos-with-ai
```

## Questions

### Which editing app did you use?

None. I told Claude Code what I wanted and kept writing notes. I use Codex too, and any agentic coding tool works. The video itself is code, written in Remotion . So every word, cut and frame does exactly what I say. This page is the long version.

### What do I need?

Claude Code or Codex , a folder of your own photos or clips, and patience. Mostly patience. Then send one line: “Install the make-a-video Skill from github.com/hubeiqiao/how-i-make-videos-with-ai.” It sets up the rest.

### Which model?

I made this guide with Opus 5.5. Medium effort is the default; turn it up when you want better drafts. Models get faster every few months. The method doesn't change: know what you want, get a whole draft, fix one section at a time. Learn it once and it works with the next model too.

### Can a good model do it in one shot?

Almost never, even the best one. The Stripe film took 19 versions. My First BlizzCon took 16. Good videos are polished, not generated. Plan for rounds of notes, and fix one section at a time .

### Why not just ask a video model?

It paints new pixels, so your face, your words and your logo drift. Code uses your real files exactly. The four ways to make a video with AI are compared above.

### How long did the Stripe film take?

Two days and 19 versions, with an earlier model. With Opus 5.5 it would be faster, but still not one prompt. By late September, with Opus 5.5: twelve videos in six days , each better than what I made before.

### What about music and sound effects?

Ask the AI. Give it the feel in three words; it places the music, lowers it under your voice and adds sound effects only where they help. It can check copyright too: ask where each track and clip comes from and what its license allows. The old film clips in my trailer are public domain, checked that way.

### What's a Skill?

A note of your rules the AI reads before it starts. Write it once, reuse it every time. Mine are in the kit, and make-a-video is the one to start with.

### My first draft is bad.

Good. So was mine. Say what's wrong, fix one section, pull again. A useful note has four parts: where, what's wrong, what you want, what must stay. Step 3 shows real ones.

### Is it free?

Yes. The guide is free and the kit is open source (MIT), on GitHub . Remotion is free for individuals and teams of up to three. Its license has the details.

## What you actually need

- **Reviewing.** After every video, ask what you learned and save it where the next project will read it. That saved note is all a Skill is.
- **Waiting.** The first cut is fast. The good cut takes rounds of notes, and patience.
- **Looking.** Collect videos you love. Show them as references and say what to borrow: the pace, the type, the energy.
- **Choosing.** Your taste decides what stays. That judgement is yours, not the model's.

## Every prompt

```text
How I Make Videos With AI: every prompt on the page
Replace the [brackets] with your details.

== Your first message (with the make-a-video Skill) ==
Use the make-a-video Skill. Make a 30-second video from the files in this folder. It is for [who will watch]. After watching, they should [believe or do one thing].

== Step 1: Know what you want. Then gather your files. ==
Here is my goal and my material.
Audience: [who will watch].
After watching, they should believe: [one sentence].
Then they should: [one action].
It will be posted on: [platform]. Length: [about 60 seconds]. Shape: [16:9 / vertical].
My files are in originals/: screenshots, photos, logo, fonts and earlier work.
Before you plan anything, ask me the questions you need answered. Then list what each file proves, flag any claim that has no file behind it, and propose an outline of 6 to 10 sections. Do not write scenes or render anything yet.
Before you show me the outline, check your own work: confirm every claim in it has a file behind it, and mark any that does not.

== Step 2: Get the whole draft once. Then react. ==
Using notes/outline.md and originals/, first write the narration as natural spoken English, about [120] words (roughly two words per second of video), and a storyboard in notes/beats.csv: one row per phrase with the words, the file from originals/ that appears (or "missing: needs a screen recording or a generated image"), the text on screen and how things move. Stop so I can approve the words and the storyboard.
After I approve them, build the complete first draft. Time every section to the narration and keep each section a separate, editable scene. Ease every movement, and carry something across from one scene to the next rather than a hard cut, unless the story needs the cut. Include every section; do not polish only the opening. Render a quick lower-resolution preview first (working/out/draft-v1-preview.mp4) and give me a link to open it. Export full quality only after I approve.
Before you show me each one, check your own work: compare the script length with the target, confirm every phrase has a picture or is marked missing, render stills at the key moments into one contact sheet, confirm no text is cut off or overlapping, and check the voice loudness.

== Step 3: Point at the problem. Fix one section at a time. ==
I watched draft-v1. My notes:
1. [0:03 or section]: [what's wrong] → [what I want]
2. [0:08 or section]: [what's wrong] → [what I want]
Keep: [what already works].
Sound: [music or no music, and the feel], [voice too loud or too quiet anywhere].
Reference (optional): [video file or link]. Borrow its [pace / type / energy], not its content.
Fix only the [opening] for now. Export working/out/[opening]-v2.mp4 with one second of the neighbouring sections, and keep the previous version.
When I say a section is approved, record its file name in notes/accepted.md and write its rules in notes/style.md: at most three colours, one pair of fonts, one kind of background and one kind of music. Every later section follows that style, and approved sections are never touched again.
Before you show me, check your own work: confirm each note names a moment, what is wrong and what I want (ask me about any that does not), render stills at the key moments into one contact sheet, confirm no text is cut off or overlapping, check the voice loudness, and list each of my notes as done or not.

== Step 3: Magic Move prompt ==
Carry the same [element] from [its place in scene A] to [its place in scene B]. It must be one object that moves and resizes continuously, never a crossfade between two copies. Match its crop, background and layer order when it lands. Show me the start, middle and landing frames and a playable preview.

== Step 4: Put it together. Listen at every join. ==
Assemble the approved versions in notes/accepted.md into working/out/full-review-v1.mp4. Match voice loudness across sections.
List every join with its timestamp. I will watch the whole film; for any join I flag, fix only that boundary and export again under a new name.
Before you show me, check your own work: render stills just before and just after every join into one contact sheet, look for any old frame that flashes at a cut, confirm no text is cut off or overlapping, check the voice loudness, and list each of my notes as done or not.

== Step 4: Music prompt ==
The music should feel [three words, e.g. warm, rising, optimistic]. Here are [2 to 3 tracks I have the right to use]. Pick the tempo for the feeling: about 60 to 80 BPM feels cinematic, 90 to 110 smooth and calm, 115 to 123 confident and kinetic; faster reads as hype.
Make short previews of the same opening, one quiet moment and the ending with each track, picture and narration unchanged.
After I pick one, shape it to the story: rise at [the reveal], settle under [the reflective line], open up at the end. Lower it under speech. Keep sound effects rare: only where they help, and remove any that feel too loud or out of place. Save the plan to notes/music-cues.csv.

== Step 5: Finish where people see it. Then save it as a Skill. ==
Package the approved film into exports/: final.mp4, a cover image taken from the film, and post copy.
Check duration, resolution, sound and the final second. Save notes/recipe.md with what worked, the approved files and the prompts, so the next video can start from it. Do not publish anything.
Before you show me, check your own work: list the duration, resolution and sound you measured, confirm the first frame works as the cover, and check that the final second ends cleanly.

== Step 5: Save it as a Skill ==
This video is approved. Turn how we made it into a reusable Skill, so the next video of this kind starts from it.
Read our whole history for this project: my notes, the versions I rejected and why, and the one I approved.
Write skills/[name for this kind of video]/SKILL.md with: when to use it; what goes in and what comes out; the steps in order; my rules, each one taken from a note I gave or a draft I rejected, with the reason; the files and settings to reuse (fonts, colours, music levels, the ending); and the checks to run before you show me a draft.
Keep it short and specific to my videos. Do not add rules I never gave. Show me the Skill before you save it.
Next time, start with: Use skills/[name]/SKILL.md to make this video from originals/.
```

## About the author

Joe Hu is a founder in Ottawa, Canada (Just Joe Technologies Inc.). He never trained as an editor; he makes his videos with Claude Code, his own files and a lot of notes. More: https://hubeiqiao.com
