agentleFS
mylxswmylxsw/cinematic-video-skill/SKILL.md

cinematic-video

Skill0 starsChanged 45 days agoMITView on GitHub

Direct and produce a complete cinematic motion-graphics video (company or product history, milestone retrospective, brand anthem, explainer, 宣传片, 发展史, 纪录短片) with an original synthesized score, rendered to MP4 from code. Use whenever the user asks to make, produce, or revise a video, film, or animated piece, especially one that must escalate in pace and intensity, match a brand palette, have its own music, and be fact-checked. Covers story design, fact verification, the scene/beat timeline, visual system, score, layout QA against cropped or overlapping content, rendering, and delivery.

1 other project uses a version of this.

Adopted by

Most recently taken up by

  • Other versions1 project uses a version of this.

    Word for word · 0

    None found.

    Edited · 0

    None found.

    Wrote their own version · 1

    1. Runware/runware-skills★ 8same name

    How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.

The file

We split this skill into the rules it gives an agent

12 rules. About 0 are common, 7 are distinctive, and 5 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈7

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 5

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Before writing anything, pin down these points.

    line 48
  2. Distinctive:

    If today is past your cutoff, you must research the gap (Phase 2).

    line 52
  3. Distinctive:

    Palette: Use the subject's real brand colors, and look them up rather than guessing.

    line 56
  4. Distinctive:

    Deliverables: Always produce a 1080p master, a 720p share copy under 50 MB (chat bots often cap uploads), and a timeline document with …

    line 59
  5. Distinctive:

    Prefer the subject's own announcement pages, Wikipedia and reputable press.

    line 65
  6. Distinctive:

    Structure: Use a cold open, a title, 4–6 acts with 4-second act cards, a finale (impact grid, a recap curve, a manifesto) and an outro.

    line 79
  7. Distinctive:

    Pacing formula: All text reveals finish by about 40–60% of the scene.

    line 85
  8. Very specific:

    Write video/src/timeline.json, then implement scenes in scenes.tsx from the archetypes: cold open, title, act card, split, grid, hero, …

    line 95
  9. Very specific:

    Put every readable block inside the primitives (Eyebrow, Title, Body, Card, Window) or give it data-qa, so the probe can see it.

    line 98
  10. Very specific:

    Run tools/subset_fonts.sh after every copy change.

    line 100
  11. Very specific:

    Automated probe: Run cd video && node qa.mjs to render two stills per scene: one mid-reveal, and one fully revealed 1 s before the cut.

    line 116
  12. Very specific:

    Eye pass: Run .venv/bin/python tools/contact_sheet.py b and … a, then open every sheet.

    line 119

≈ “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.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Cinematic Video Production

Direct a video like a film director, then build it like an engineer: every frame is rendered from React (Remotion), the music is synthesized from the same timeline, and nothing ships until an automated layout probe and a human-eye pass agree that no text is cropped, clipped, or covered.

This is a workflow skill. Read this file first, then open the reference for the phase you are in.

PhaseReference
1–2 Brief, research, fact-checkingreferences/research.md
3 Story, acts, pacingreferences/story-and-pacing.md
4 Visual system and scene archetypesreferences/visual-system.md
5 Score and sound designreferences/music.md
6 Layout QA (cropping and overlap)references/qa.md
7 Render, deliver, revise, pitfallsreferences/render-and-ops.md

The working project skeleton is in template/. A complete finished film (six acts, 41 scenes) is in examples/openai-2015-2026/: read its scene files when you need a concrete pattern.

The pipeline at a glance

brief ─► research & verified timeline ─► story (acts, scenes, beats) ─► timeline.json
                                                                        │
                        ┌───────────────────────────────────────────────┤
                        ▼                                               ▼
               scenes (React/Remotion)                        score (numpy synth)
                        │                                               │
                        ▼                                               │
     layout QA probe (0 fails) + contact-sheet eye pass                 │
                        │                                               │
                        ▼                                               ▼
                 render video (no audio) ──────────► mux ─► verify frames ─► deliver + timeline doc

timeline.json is the single source of truth. Scene order, durations (seconds), intensity level, act cards, and the year shown on the progress bar all live there. The video engine and the music generator both read it, so cuts land on bar lines and the score escalates exactly when the picture does.

Phase 1: Understand the brief

Before writing anything, pin down these points. Ask the user only about the ones that change the work, and default the rest.

  • Subject and end date. Cover everything up to today's date, not up to your knowledge cutoff. If today is past your cutoff, you must research the gap (Phase 2). A user once had to correct a film that stopped a year early.
  • Tone. The default for "inspiring" briefs is a director's techno-optimism: build, never plateau.
  • Language. Match the user's language for on-screen copy. Keep product names in their original form.
  • Palette. Use the subject's real brand colors, and look them up rather than guessing.
  • Length and density. "More detailed, longer" means 7–8 minutes and about 40 scenes. "Punchy" means 2–3 minutes. Pacing rules are in the story reference.
  • Deliverables. Always produce a 1080p master, a 720p share copy under 50 MB (chat bots often cap uploads), and a timeline document with sources.

Phase 2: Research and verify every fact

  • Build a dated event list. Every date, number and claim on screen needs a source you actually checked. Prefer the subject's own announcement pages, Wikipedia and reputable press. Treat aggregator and SEO sites as leads only.
  • For anything after your knowledge cutoff, search the web. Never extrapolate model names or dates.
  • Choose precision you can defend. Use a month (2015.12) when sources disagree on the day.
  • Company claims that are not independently verified get attribution in the copy ("X 公布…"), and you flag them to the user.
  • Decide deliberately what to leave out. For example, an optimistic film may skip lawsuits or shut-down products. Tell the user what you excluded so they can reverse it.
  • Save the verified list as output/时间线_vN.md with film timecodes and source URLs.

Phase 3: Write the story

Details are in story-and-pacing.md. The core rules:

  • Structure. Use a cold open, a title, 4–6 acts with 4-second act cards, a finale (impact grid, a recap curve, a manifesto) and an outro. Each act is one idea ("规模的启示") rather than a year range.
  • One scene, one message. Give each scene a date eyebrow, a headline with a picture in it, 2–3 sentences of body, and one animated proof visual on the right: a chat UI, code typing, a chart, an interface.
  • Escalation. Assign an intensity level (0 = ambient … 7 = finale, 8 = outro) that only rises across acts. Picture energy (glow, particles, grid, beat pulses) and music density both follow the level.
  • Pacing formula. All text reveals finish by about 40–60% of the scene. After the last element appears, hold 3–5 seconds, which is enough to read everything once and no more. Content scenes run 10–14 s, act cards 4 s, and the finale grid 16 s. The first cut was judged too slow at 12–16 s holds. Trimming about 2 s per scene was the fix.
  • Durations are even integers. At 120 BPM a bar is 2 s, so every cut lands on a downbeat.

Phase 4: Build the scenes

  1. Copy template/ to a new project folder. Run tools/setup.sh, setting REUSE_NODE_MODULES to hard-link an existing Remotion install.
  2. Write video/src/timeline.json, then implement scenes in scenes.tsx from the archetypes: cold open, title, act card, split, grid, hero, outro. See visual-system.md for the layout grid, safe area, typography and palette tokens.
  3. Put every readable block inside the primitives (Eyebrow, Title, Body, Card, Window) or give it data-qa, so the probe can see it.
  4. Run tools/subset_fonts.sh after every copy change. Characters missing from the subset render as fallback glyphs.

Phase 5: Compose the score

template/tools/music.py is a complete, rhythm-first generator: 120 BPM, a I–V–vi–IV family progression, one layer per level, a 3-3-2 syncopation, an offbeat pumping bass, snare-roll builds into acts, fills on cuts, sidechain, reverb and loudness automation. Adapt the key, progression, melody and palette of sounds to the subject. Then run tools/audio_check.py: loudness must climb scene by scene, crest factor should stay at or above about 9 dB in loud sections, and transients must sit on the 16th grid. You cannot listen, so say so in your report and ask the user to judge the feel. Details are in music.md.

Phase 6: Layout QA (non-negotiable)

Users notice cropped pages and overlapping text immediately. There are two gates, and both must pass:

  1. Automated probe. Run cd video && node qa.mjs to render two stills per scene: one mid-reveal, and one fully revealed 1 s before the cut. The in-page probe logs OUT, CLIP, SPILL and OVERLAP, and the result must be FAILS 0 / N. Run node qa.mjs id1,id2 to re-check only the scenes you touched.
  2. Eye pass. Run .venv/bin/python tools/contact_sheet.py b and … a, then open every sheet. The probe cannot see these defects, but you must hunt for them: a cursor off the baseline, a decorative line crossing text, a single orphaned character on its own line, a number split from its unit, unequal paired cards, a pointer covering a button label, background bands, empty half-screens.

The checklist and fixes are in qa.md.

Phase 7: Render, verify, deliver

  • Render in the background and wait on the PID. Never use pgrep -f/pkill -f with a pattern that also appears in your own command line: it matches your shell and kills it, or it reports a finished render as still running.
  • Mux the music, make the 720p copy, then pull 6–8 frames from the final file and look at them.
  • Copy the deliverables to the chat output folder when one exists. Report the full absolute paths, the timeline table, what you verified, what you could not verify (the music feel), and what you excluded.
  • On revision requests, keep a versioned backup (build/src_vN_backup), bump output names (_v2), and re-run the full QA even for "small" copy changes, because a line that becomes one character longer can wrap.

Everything operational (timeouts, fonts, JSX newlines, render speed) is in render-and-ops.md.

Template contents

template/
  tools/setup.sh           one-time: node deps (or hard-link), venv, source fonts
  tools/subset_fonts.sh    subset fonts to used characters; re-run after copy edits
  tools/music.py           rhythm-first score generator driven by timeline.json
  tools/audio_check.py     loudness / crest / band balance / beat-grid analysis
  tools/contact_sheet.py   2×2 sheets of QA stills for the eye pass
  tools/build.sh NAME      fonts → music → QA gate → render → mux → 720p copy
  video/qa.mjs             layout probe runner (node qa.mjs [id,id])
  video/src/lib.tsx        engine: timing, reveal, typography, layouts, backdrop, HUD, QA probe
  video/src/scenes.tsx     7 scene archetypes to copy from
  video/src/timeline.json  the single source of truth (id, dur, level, card, year, hud, impact)

Validated end to end: a fresh copy of the template passes QA (0 fails), renders, and muxes into a 72-second film with tools/build.sh.

Download now (ZIP)

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
What did you use it for? e.g. Reviewing pull requests in a Rails app

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.