agentleFS
scrollmarkscrollmark/social-skills/skills/video-production/SKILL.md

video-production

Skill19 starsChanged 30 days agoMITView on GitHub

Use when actually producing a short-form video end to end — running the interview, storyboarding, sourcing, previewing, rendering and quality-checking in order — or when a run has stalled and you need to know which step comes next and who owns it.

  • Installs packages

23 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use email-marketing, backend-development and 9 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • claude-office-skillsSkill

    email-marketing

    Email marketing automation - campaign creation, sequence building, A/B testing, deliverability optimization, and analytics

    Also in 3 projects that use this

  • mrgoonieSkill

    backend-development

    Build robust backend systems with modern technologies (Node.js, Python, Go, Rust), frameworks (NestJS, FastAPI, Django), databases (PostgreSQL, MongoDB, Redis), APIs (REST, GraphQL, gRPC), authentication (OAuth 2.1, JWT), testing strategies, security best practices (OWASP Top 10), performance optimization, scalability patterns (microservices, caching, sharding), DevOps practices (Docker, Kubernetes, CI/CD), and monitoring. Use when designing APIs, implementing authentication, optimizing database queries, setting up CI/CD pipelines, handling security vulnerabilities, building microservices, or developing production-ready backend systems.

    Also in 3 projects that use this

  • nilssonrSkill

    seo

    Full SEO workflow for auditing pages and creating SEO-optimized content. Provides checklists with educational explanations aligned with Google Search Central documentation.

    Also in 3 projects that use this

  • SupabaseSkill

    copywriting

    Write or audit UI copy (buttons, labels, empty states, error messages, tooltips, form text) anywhere in the monorepo. Load it before shipping or reviewing any user-facing text — including when copy is incidental to the task, like a new feature that adds buttons, toasts, dialogs, or validation messages.

    Also in 3 projects that use this

  • AnthropicSkill

    design-system

    Audit, document, or extend your design system. Use when checking for naming inconsistencies or hardcoded values across components, writing documentation for a component's variants, states, and accessibility notes, or designing a new pattern that fits the existing system.

    Also in 3 projects that use this

  • Microsoft AzureSkill

    design

    Design rules and conventions for the API Center Portal. Use when editing detail pages, card components, badges, layout, navigation, sidebars, or headers. Covers badge styling, metadata placement, page navigation patterns, and layout alignment.

    Also in 3 projects that use this

The file

We split this skill into the rules it gives an agent

1 rule. 0 are common, 1 is distinctive, and 0 are very specific to this project.

  • 0

    Common

    Most of the 20 edited versions we read keep these.

  • 1

    Distinctive

    This author's own choices. Worth a look.

  • 0

    Very specific

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

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Narrating a clean bill of health at step 0: If nothing is missing, say nothing and get on with it.

    line 79

“Common” is measured: kept by at least 6 in 10 of the 20 edited versions of this file we could read. “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

Video Production

You are the pipeline. There are no stages, checkpoints or event streams: you sequence the scripts, ask the user at decision points, and gate the output. Every other video skill owns one step; this one owns the order they run in, and the rules that only make sense across a whole run.

Requires

Four scripts ship with this skill: scripts/doctor.py (step 0's status report), scripts/normalize_audio.py (step 7's loudness fix), scripts/qc_render.py (step 8's gate) and scripts/poster.py (step 9's thumbnail shortlist). All stdlib-only; all want ffmpeg/ffprobe.

The rest of the sequence needs pip install 'video-studio-engine @ https://github.com/scrollmark/social-skills/archive/refs/heads/master.tar.gz' — video-studio setup (step 0's install plan), build_props (steps 5 and 7), studio (the preview editor) and preflight (the render gate) — plus render, which drives one of two backends. The default is the Scrollmark editor's scrollmark build + scrollmark render, installed by npx @scrollmark/cli — no licence, and the package carries the editor, so there is nothing to clone and no Studio to start first. --backend remotion still reaches the composer, which needs Node and a separate licence, and which renders three effects and the per-word caption emphasis the editor does not. Sourcing, voice and export belong to the step skills named below and carry their own install lines.

Skip the pip install and this skill still is not standalone — it drives the whole engine. There is no props document, no preview and no preflight, so the sequence has nothing to sequence. What survives is the shape: which decision must precede which, and where money and silence enter a run.

The Pipeline

#StepOwned by
0Check the machine; offer to fix it; ask before installingstudio-setup
1Enumerate formats/*.md, present as a choice, load only the chosen onevideo-formats
2Run that format's interview, ≤4 questions a roundagent-interview
3Elicit sourcing — footage and audio in the same roundmedia-acquisition, audio-acquisition
4Build the storyboard from the format's grammarvideo-formats
5video-studio build_props --placeholders, open the editor, re-read props.jsonhere
6Resolve sources — TTS first, then footage; then video-studio verify_clipsaudio-acquisition, media-acquisition
7video-studio build_props (no flag) → video-studio preflight → video-studio render → scripts/normalize_audio.pyhere
8scripts/qc_render.py — the render against its plan — then pull frames and look at themhere
9scripts/poster.py — pick the thumbnail, and open the candidate sheethere

A brand kit (brand-kit) is applied at step 4. An export to a human editor (edit-handoff) and a composited subject (subject-compositing) are branches off steps 7 and 6, not extra steps. Per-step mechanics and the exact invocations are in references/run-mechanics.md.

Sequencing Rules

  • scripts/doctor.py runs before sourcing is offered, at step 3. Offering a source with no key wastes the user's turn and makes the cost estimate wrong.
  • Placeholder preview is the default before any spend. Step 5 is free and catches layout mistakes while they still are. --placeholders appears there and nowhere else in the run. The user's edits to props.json are authoritative — re-read it after they finish.
  • Quote total cost before the first paid call and again after the last.
  • Rebuild props immediately before every render, and never skip preflight. Both belong to the Remotion backend; the editor backend has no props file and no preflight, and its gate is scrollmark build refusing a storyboard whose sources do not resolve.
  • Never declare a render done without viewing frames from it. "It rendered" and "it is correct" are different claims; only one of them is in the log.

The Two Contracts

Sources. Record the chosen source per layer in the storyboard as prompt: (generate) / find: (licensed search) / url: (user link) / file: (user path). A single video routinely mixes all four.

Paths. Each of those resolves from exactly one place — project/clips/<sceneId>-<layerId>.<ext> — the only path build_props reads, and it copies into composer/public/ itself. Hand-placing a file into composer/public/clips/ does not work; build_props never looks there and will placeholder or error.

One Machine, Several Agents

Projects cannot collide on content — each owns its props file, its media directory, and registers its own composition. They do share a port. Always open the editor with video-studio studio --project <dir>, never directly, or a second agent silently attaches to the first agent's editor and both then see one project. Hand the user the printed url verbatim: it ends in the composition id, and a bare localhost:<port> opens whichever composition the generated registry lists first — alphabetically, so the same one every time. Claim, --status and --release --port mechanics are in references/run-mechanics.md.

Read Before Rendering

references/hard-rules.md — the rules learned the expensive way: the placeholder-render trap, the clock rule, the cost table, and the render-side composer landmines. Do not start step 7 without it.

Step 8: what the gate does and does not cover

scripts/qc_render.py --video <render> --plan project/plan.json checks the file against the plan build_props wrote: duration, the plan's own consistency, a black tail, a frozen ending, and with --storyboard, resolution and fps. Non-zero exit, so it can gate. It decodes no frames — run it on every render.

The heavier gate does decode. video-studio qc_analyze --video <render> --project <dir> adds blur, off-palette colour, cut placement and caption timing, plus planned-subject checks with the model extras. Needs [qc]. Reach for it when a render surprises you, or before anything ships to a client.

Neither judges whether the video was worth making. The gate is two moves: run a checker, then scripts/poster.py and open the contact sheet — say which. To report a day's output, video-studio daily_digest turns git log and a runs/<date>/ tree into chat-sized plain text.

Anti-patterns

  • Sourcing before layout is approved. Step 5 is free and step 6 is not.
  • Rendering a placeholdered build. It looks finished. It is coloured boxes.
  • Skipping preflight because the last build was fine. It is checking a global file that another project may have overwritten since.
  • Narrating a clean bill of health at step 0. If nothing is missing, say nothing and get on with it.
  • Reporting a regression as a footnote. A worse result than the previous version is a finding. Offer one fix-and-rerender loop, then stop.

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.