agentleFS
charlie947charlie947/reel-editing-skills/skills/every-format/SKILL.md

every-format

Skill9 starsChanged 13 days agoMITView on GitHub

Render one finished video in every size a business posts, 9:16 for Instagram Reels, TikTok and YouTube Shorts, 4:5 for LinkedIn and feeds, 1:1 for ads and X, 16:9 for YouTube, a website or a sales email, from the same build with no re-edit, each size keeping the hook, the caption line and the face in frame, plus the platform rules that change with it (captions, loudness, the ending). Use when someone says "make a LinkedIn version", "resize this video", "16:9 for YouTube", "square for ads", "every platform", "4:5 cut" or "repurpose this video".

We split this skill into the rules it gives an agent

3 rules. About 0 are common, 1 is distinctive, and 2 are 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.

  • 2

    Very specific

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

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Run video-sound once per loudness and call-to-action once per ending.

    line 40
  2. Distinctive:

    Keep the caption band clear: y 930-1040 (9:16), y 590-700 (4:5), y 470-560 (1:1), y 930-1040 under the motion panel (16:9).

    line 56
  3. Very specific:

    Run video-check on each file.

    line 69

≈ “Common” is an estimate: at least 1 in 5 of the 308,232 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

Every format

One build, four sizes. The same video.js renders every size. You never edit the beats again.

Step 1: Render the sizes you need

node render.mjs --stills 0.5,3,6 --format linkedin     # check three frames first
node render.mjs --format linkedin                      # -> video-linkedin.mp4
node render.mjs --format square                        # -> video-square.mp4
node render.mjs --format wide                          # -> video-wide.mp4
node render.mjs                                        # 9:16 -> video.mp4

To look at one frame in the browser, open index.html?render&f=wide&t=3.

Step 2: Which size goes where

Size--formatPost it onLayout on a split beat
9:16, 1080 x 1920(none)Instagram Reels, TikTok, YouTube Shortsmotion top, face card below
4:5, 1080 x 1350linkedinLinkedIn, Instagram and Facebook feedsmotion top, face card below
1:1, 1080 x 1080squarepaid social ads, Xmotion top, face card below
16:9, 1920 x 1080wideYouTube, your website, a sales email, a webinar pagemotion left, face card right

Step 3: What changes with the platform

Instagram, TikTok, ShortsLinkedInWebsite, sales email, YouTube
Captionsonalways on. Most LinkedIn video plays mutedon. Autoplay on a web page is muted
Frame 0the hookthe hook. It is also the still people see before it playsthe hook, or a clean title for the thumbnail
Loudness-14 LUFS-12 LUFS-14 LUFS
The endingcomment keywordno comment gate. Links go in the post textone button: book a call, start a trial, reply

Run video-sound once per loudness and call-to-action once per ending.

Step 4: Size objects from PANEL

The starter sets PANEL before video.js loads. Size every object from it, so one beat fits every size:

html: `<div style="top:${PANEL.split * 0.14}px;height:${PANEL.split * 0.68}px">...</div>`
9:164:51:116:9
PANEL.w1080108010801200
PANEL.split10006205001080
PANEL.full1920135010801080

Keep the caption band clear: y 930-1040 (9:16), y 590-700 (4:5), y 470-560 (1:1), y 930-1040 under the motion panel (16:9).

Step 5: The post text (paste into Claude Code)

Write the post for video-linkedin.mp4 from transcript.json.
Line 1-2: the hook, the plain outcome plus one number. No question.
Then one short line per step, in the order they happen in the video.
Then every link the video mentions, one per line. Under 1,300 characters.

Step 6: Check

Run video-check on each file. It reads the size from the file and applies that platform's rules.

What I learned the hard way

  • Never crop the 9:16 file to make the others. The hook and the face get cut off. Render each size from the page.
  • Frame 0 is the thumbnail everywhere. A blank face with no words looks like a talking head and people scroll.
  • A comment gate reads as bait on LinkedIn. The links go in the post.

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.

Reviews can't be read right now.

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.