Open sourceRuns locallyWorks with all agents

Edit video by telling your agent what you want.

Moviestar is a video editor built for AI agents. Describe the edits you want to make inside Claude Code or Codex and moviestar gives them the tools to make edits, burn in captions, and render a finished video.

Watch it work

From raw recordings to a finished video in one conversation

A video about how moviestar works, edited by moviestar.

How it works

You direct. Your agent edits. Moviestar is the video editing software.

You say what you want. Your agent makes the edit by running moviestar commands, and moviestar answers each one with structured results the agent can read and check before its next move. Here’s one real edit, start to finish.

You ask

Install the moviestar package from PyPI and use it to edit the attached video. Find the strongest 30–60 second moment, cut it into a vertical clip with word-by-word captions, and show me the proposed edit before you render it.

Try it yourself: give your agent a video and paste this in. It installs moviestar and takes it from there.

Your agent does

Here’s what it ran for that ask, and what moviestar handed back each time.

01

Find the moment by what was said

Moviestar searches the transcript and hands back exact timecodes, not a guess the agent has to eyeball.

what the agent ran
$ moviestar find "this is where you get to the pain"
what it got back
{
  "command": "find",
  "query": "this is where you get to the pain",
  "matches": [
    {
      "text": "this is where you get to that pain",
      "score": 0.91,
      "source_range": {
        "from": {
          "text": "0:00:38.700",
          "seconds": 38.7
        },
        "to": {
          "text": "0:00:41.200",
          "seconds": 41.2
        }
      }
    }
  ],
  "hint": "Pipe a match into trim with --snap-to-words for clean boundaries."
}
02

Make the cut as a reversible step

Each edit is saved as a step in a plan, not baked into the video. Undo any step, re-run the render anytime, and your original file never changes.

what the agent ran
$ moviestar trim --from 0:00:38.700 --to 0:00:41.200 --snap-to-words
what it got back
{
  "operation": {
    "type": "trim",
    "from": {
      "text": "0:00:38.700",
      "seconds": 38.7
    },
    "to": {
      "text": "0:00:41.200",
      "seconds": 41.2
    }
  },
  "snapped_to_words": true,
  "result_duration": {
    "text": "0:00:02.500",
    "seconds": 2.5
  },
  "operations_applied": 1,
  "hint": "Run 'moviestar undo' to revert, or 'moviestar export' to render."
}
03

Check the frame before rendering

Fast feedback at every fidelity: validate the spec, render one frame in seconds, or dry-run the whole command before committing to a full render.

what the agent ran
$ moviestar screenshot --at 0:00:00.000
what it got back
{
  "out": "moviestar/frames/verify_0.000s.jpg",
  "source_timecode": {
    "text": "0:00:38.700",
    "seconds": 38.7,
    "frame": 1161
  },
  "operations_applied": 1,
  "width": 1080,
  "height": 1920,
  "file_size_bytes": 142336
}
04

Render the finished video

One deterministic render from the spec. Same input, same result, every time.

what the agent ran
$ moviestar export short.mp4
what it got back
{
  "status": "exported",
  "out": "short.mp4",
  "result_duration": {
    "text": "0:00:02.500",
    "seconds": 2.5
  },
  "operations_applied": 1,
  "mode": "precise",
  "file_size_bytes": 423112
}

The agent reads the timecodes, the durations, the hint on what to do next, and drives the whole loop itself. You just see the finished clip.

What it does

Everything an editor expects, reachable in plain language

Sees and hears your footage

Transcripts, scene changes, loud and silent moments, frames on demand. Your agent perceives the video before it touches it.

Cuts by words or by time

“Trim from 4:23 to 4:28” or “cut the sentence where she restarts.” Address any edit by timecode or by what was said.

Burns in captions

Word-by-word highlighted captions, TikTok and Reels style, on-brand. Great for shorts that need to land without sound.

Renders deterministically

Same input, same result, every time. No hidden model calls, no randomness. Preview a single frame in seconds before a full render.

Stay in the loop

Get release updates

Moviestar ships fast. Drop your email for new features, demos, and release notes. No spam, just what changed.

Start editing

Install it, then point your agent at a video and describe the edit.

$ pip install moviestar