video-teaser
Skill2 starsChanged 22 days agoMITView on GitHub
Turn a one-liner into a short video clip — an LLM expands the line into a cinematic shot description, then a text-to-video model renders a 5-second teaser. Use when the user wants a short video, teaser, clip, or animated shot from a sentence.
- Reads credentials
In this repository10 other files it gives its agents.
- alt-text-writerSkill
- character-spritesSkill
- jingle-makerSkill
- narrated-poemSkill
- og-card-makerSkill
- photo-restylerSkill
- poster-generatorSkill
- pr-describerSkill
- ui-mockupSkill
- visual-judgeSkill
The file
We split this skill into the rules it gives an agent
2 rules. About 0 are common, 1 is distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈1
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- could be automatic: a setting could enforce it
- Distinctive: line 19
Never print the key.
- Very specific: line 32
Add --env-file .env only when the key is not already exported.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Video teaser
Runs the bundled nanoodle workflow workflows/video-teaser.noodle-graph.json against the
NanoGPT API: a one-liner (Tagline) feeds an LLM that writes a single cinematic shot
description, which feeds a text-to-video model that renders a 5-second 480p clip
(Teaser). Requires Node.js 22.23.4+, 24.22.1+, or 26.12.1+ and the nanoodle npm package (npx nanoodle fetches
it).
API key
The run needs a NanoGPT API key. Prefer NANOGPT_API_KEY already in the environment.
Otherwise pass --env-file <path-to-.env> (this CLI: --env-file overrides ambient env).
Never print the key.
Run
From this skill's directory (or prefix paths if running from elsewhere). Replace the
Tagline value with the user's line:
npx nanoodle run workflows/video-teaser.noodle-graph.json \
--input "Tagline=a slow cinematic drone shot over a misty mountain valley at sunrise" \
--out ./teaser-outAdd --env-file .env only when the key is not already exported. Add --json for a
structured result (paths, costUsd, remainingBalance). Video generation typically takes a
few minutes — don't kill the run early.
Optional overrides (longer clips raise cost — see Cost below):
--input "Shot writer=<custom shot-writer instructions>"
--set "n3.duration=10" # longer clip (roughly doubles the video cost)
--set "n3.aspect=9:16" # portraitFor sharper video, edit n3.fields in the workflow JSON, keeping both resolution
values in sync. For 720p (about $0.08/run), merge these fields:
{
"resolution": "720p",
"modelOpts": { "resolution": "720p" }
}For 1080p (about $0.12/run), change both values to 1080p. The bundled graph sets
both to 480p: the pinned 0.8.x executor uses fields.resolution, while the 0.11.0
CLI needs the explicit fields.modelOpts.resolution because it runs without a model
catalog. --set "n3.resolution=720p" alone does not change the resolution sent by
the 0.11.0 CLI.
Inspect the interface anytime with:
npx nanoodle inspect workflows/video-teaser.noodle-graph.jsonInputs
| Key | Required | What to pass |
Tagline | yes | The one-line concept for the clip |
Shot writer | no | Custom instructions for the shot-writing LLM (its system prompt) |
Shot writer is the node name shown in the editor. It replaces that node's system prompt.
Outputs
- Media is saved under
--outasTeaser.<ext>— extension follows the video MIME (usuallymp4). Use the path the CLI prints on theTeaser:line; do not hard-code the extension. - With
--json, the path is inoutputs.Teaser.
Cost
Each run costs about $0.06 in NanoGPT credit at the default 5 seconds / 480p
(ltx-2-19b bills per second by resolution; the LLM step is a fraction of a cent).
Higher resolution or 10-second clips cost proportionally more. Runs spend real credit —
tell the user before running repeatedly.
If a run times out or is interrupted after submission, the remote job may still be running. Check its status and retain successful outputs before deciding to submit again. A fresh CLI invocation is not a durable resume and may bill again; do not automatically retry the whole workflow.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

