Training AI Agents to Edit Movie Review Videos via CLI
Developers have grown accustomed to delegating routine text-based tasks to AI assistants: writing tests, deploying patterns, or refactoring old controllers. However, text models can do much more if given clear instructions and a convenient terminal tool. Repository narrator-ai-cli-skill demonstrates how to turn a hypothetical Cursor, Windsurf, or Claude Code into an autonomous video editor.
The entire idea revolves around generating video reviews and recaps of movies. You write a short prompt to the agent like "make a comedic review of The Shawshank Redemption," and the model handles everything on its own: selects from the catalog, generates a script, picks a narrator's voice, adds background music, and delivers a link to the finished file.
Why a Separate Skill When There's a CLI
The project authors made a clear distinction between the tool and the instruction. The command-line utility narrator-ai-cli executes low-level commands: sends REST requests to the server, queries task statuses, downloads media files. This is standard tooling.
Repository narrator-ai-cli-skill is a collection of structured Markdown files. File SKILL.md along with folder references/ explains to the language model the order in which to call commands, which parameters to pass, and how to handle errors.
The analogy is straightforward: the CLI is kitchen appliances, while the skill is the cookbook. Without the utility, the agent can't edit anything, and without the skill description files, the model won't understand the logic of function calls.
What's Inside the Catalog and How the Pipeline Works
The skill contains embedded links to ready-made resources and decision rules. The models have access to:
- About 100 source movies and TV series
- 146 background music tracks
- 63 voices for dubbing and voiceover
- Over 90 ready-made visual templates
- 18 API error codes with their handling algorithms
The video creation process splits into two paths: fast and standard. The fast path takes an existing original voiceover script from the database. The standard path launches script generation from scratch, adapting the tone to user requests.
The workflow is logical. The model first requests limits and checks the account balance. Then it selects the movie ID and a suitable voice timbre from the reference catalog. After that, script generation and storyboarding begins. At the final stage, the utility sends the video rendering task, periodically polls the API for status, and returns the final link.
Beyond assembling complete videos, the system can perform isolated tasks: clone a voice from a short audio source or generate speech synthesis from arbitrary text.
Installation and Connecting to Popular Agents
Python 3.10 or newer is required. First, install the command-line client:
pip install "narrator-ai-cli @ git+https://github.com/NarratorAI-Studio/narrator-ai-cli.git"
After installation, you need to set the access key:
narrator-ai-cli config set app_key YOUR_API_KEY
The skill files themselves need to be cloned into the directory your AI assistant monitors. The directory structure must not be changed, as SKILL.md constantly references catalogs inside the references/ folder.
For OpenClaw, the clone command looks like this:
mkdir -p ~/.openclaw/skills
git clone https://github.com/NarratorAI-Studio/narrator-ai-cli-skill.git ~/.openclaw/skills/narrator-ai-cli
If you're working in Windsurf or Claude Code, clone the project into your working folder:
mkdir -p .skills
git clone https://github.com/NarratorAI-Studio/narrator-ai-cli-skill.git .skills/narrator-ai-cli
Cursor users just need to place the repository in the rules folder:
mkdir -p .cursor/rules
git clone https://github.com/NarratorAI-Studio/narrator-ai-cli-skill.git .cursor/rules/narrator-ai-cli
To update the resource database or skill logic, simply navigate to the folder and run a standard git pull.
How Communication with the Agent Works
After loading the skill, the agent begins understanding contextual commands. You can communicate with it in natural language without memorizing CLI flags.
Examples of working phrases:
- "Show me what movies are in the database"
- "Make 3 short reviews of action movies in a dynamic style"
- "Voice over this text with a voice from the database with cheerful background music"
During operation, the model follows strict instructions from SKILL.md. For example, before launching a heavy rendering task, the agent must check the operation cost and request user confirmation if parameters exceed standard limits.
Nuances and Pitfalls
The project looks like an interesting experiment in integrating CLI into the AI agent ecosystem, but there are caveats for practical use.
The main challenge is obtaining an API key. The README explicitly states that keys are issued upon request via email [email protected] or through the WeChat messenger. This creates a barrier to entry for quick testing.
Here's an image with the authors' contacts from the documentation:

The catalog of movies and timbres is currently focused primarily on the Asian market and popular global hits. If you need a video review of a rare arthouse film, it won't be in the ready-made database.
Who Will Find This Repository Useful
The repository is worth studying not just for video generation. First and foremost, it's an excellent reference for properly formatting SKILL.md specifications for language models.
If you're designing your own agent and want to teach it to work with your CLI utility, narrator-ai-cli-skill will serve as a ready-made template. It has well-developed data mapping tables, API error handling algorithms, and cascading call scenarios.
For content creators and media service developers, this is a ready-made building block that allows delegating routine short video editing to neural networks.
関連プロジェクト