If you use Claude Code for development, you can use it to create videos with Program too. No editor, no timeline dragging, no manual exports. Give Claude Code the right context and it handles everything from authentication to rendering.
What you need
- A Program account (free tier works)
- The Program CLI installed (
npm i -g @program-video/cli) - Claude Code (requires a Claude Max, Team, or Enterprise plan)
Give Claude Code the context
Add the following to your project's CLAUDE.md file. This gives Claude Code everything it needs to authenticate you, create projects, and build videos on your behalf:
You have access to Program (program.video), an AI video composition platform.
Use the CLI commands below to authenticate the user, manage projects, and build
video compositions.
## Getting Started
1. Run `npx @program-video/cli auth login` to authenticate (opens browser)
2. Run `npx @program-video/cli project create --title "Title"` to create a project
3. Use the tools below to build the video composition
## Commands
You can also copy this context by clicking the "Claude Code" button on program.video. Once this is in your CLAUDE.md, Claude Code will automatically use these tools when you ask it to create videos.
Build a video with natural language
With the context in place, just ask Claude Code what you want:
You: Create a 30-second explainer video about our new API. Start with a title card that says "Introducing the Acme API", then show three feature slides with bullet points, and end with a call to action.Claude Code will:
auth login to authenticate you (if not already logged in)readComposition to check the current stateaddScene to create each scene with React/Remotion codegenerateSpeech to add voiceoverEach scene is a React component rendered by Remotion. Claude Code writes the JSX, styles, and animation logic for you.
What a scene looks like
Under the hood, each scene Claude Code creates is a self-contained React component:
import { AbsoluteFill } from "remotion";
export default function TitleCard() {
return (
<AbsoluteFill
style={{
backgroundColor: "#0a0a0a",
display: "flex",
alignItems: "center",
justifyContent: "center",
}}
>
<h1 style={{ color: "white", fontSize: 72, fontWeight: 300 }}>
Introducing the Acme API
</h1>
</AbsoluteFill>
);
}You never have to write this yourself. Claude Code generates it based on your description and passes it to the CLI.
Adding voiceover
Ask Claude Code to add narration and it will call generateSpeech automatically:
Claude Code picks a voice, generates the audio, and attaches it to the scene.
Tips for better results
- Be specific about timing. Tell Claude Code how long each scene should be and what the total video length should be.
- Describe visual style upfront. Say "dark background, white text, minimal" rather than letting it guess.
- Iterate in conversation. Ask Claude Code to read the composition, then adjust individual scenes rather than rebuilding everything.
- Use the desktop app for preview. While you can build entirely from the CLI, the Program desktop app gives you a live preview as scenes are added.
Rendering
Once your composition is ready, open the Program desktop app or web editor to preview and render. The CLI handles composition, the app handles rendering and export.
On the desktop app, rendering happens locally on your hardware. No cloud queue, no upload wait.
What comes next
This workflow works best for content that follows a repeatable structure: explainers, changelogs, social clips, product demos. Once you have a template that works, Claude Code can produce variations quickly.
For more on the CLI and available tools, see the CLI documentation.