agentleFS
charlie947charlie947/reel-editing-skills/skills/call-clips/SKILL.md

call-clips

Skill9 starsChanged 13 days agoMITView on GitHub

Turn a long recording you already have, a sales call, a coaching call, a client call, a webinar, a podcast or a long YouTube video, into the 3 to 5 best short clips, ranked, each cut on clean word edges with a two-line hook and word-by-word captions, ready for Reels, TikTok, Shorts and LinkedIn. Picks only moments that stand alone, with a number, a test, a mistake or a paste-able fix. Use when someone says "clip this call", "find the best moments", "turn my webinar into shorts", "podcast clips", "clips from my YouTube video" or drops a long recording.

  • Installs packages

We split this skill into the rules it gives an agent

4 rules. About 0 are common, 3 are distinctive, and 1 is very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈3

    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
  1. Distinctive:

    Cut on word edges: Start 0.08s before the first word.

    line 48
  2. Very specific:

    Run video-check on each file, then every-format for the LinkedIn 4:5 cut.

    line 70
  3. Distinctive:

    The best moment is rarely the one you remember: Read the whole transcript.

    line 75
  4. Distinctive:

    A clip that needs the set-up is not a clip: If the first line points back ("so that's why"), start earlier or drop it.

    line 76

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

Call clips: the best moments from a long recording

Use it for: sales and coaching calls, client calls, webinars, podcasts, talks, long YouTube videos.

You end with 3 to 5 vertical clips, ranked, and one line on why each one made the cut.

Tested so far on a solo recording. On a two-person call, read the speaker turns in the transcript and pick moments where one person talks for 15 seconds or more. Crosstalk and small talk make weak clips.

Step 1: Ask for two things, then wait

  1. The recording. Any length. Camera, Zoom, screen recording or a finished video.
  2. Permission. On a call with other people, only use their words and faces if they said yes. Otherwise clip only your own side.

Step 2: Transcribe with word timings

ffmpeg -y -i long.mp4 -map 0:a:0 -ac 1 -ar 16000 audio.wav
pip install openai-whisper   # once
whisper audio.wav --model small.en --word_timestamps True --output_format json

Then print it with times, one line per sentence, so you can read the whole thing:

python3 -c "import json;[print(f\"{s['start']:7.1f} {s['text'].strip()}\") for s in json.load(open('audio.json'))['segments']]"

Step 3: Pick the clips (paste into Claude Code)

Read the timed transcript. Pick the 3 to 5 best clips for short-form video.
A clip must:
- stand alone. No "as I said", no "this one", nothing that needs the earlier minutes
- open on its strongest line, inside the first 2 seconds
- carry one of these: a hard number, a test with a winner, a mistake and its fix, a step someone can copy
- run 15 to 45 seconds and end on a full stop, never mid-thought
For each clip give: rank, start word and time, end word and time, a two-line hook
(line 1 the outcome, line 2 the promise, no full stop), and one line on why it made the cut.
Rank by how useful it is to a stranger, not by how much you like it.
Write them to clips.json as [{"rank":1,"start":374.40,"end":395.00,"hook":"Line one\\NLine two"}].

Cut on word edges. Start 0.08s before the first word. End 0.12s after the last word. An "s" can hiss past where the transcript says the word ends, so listen to the last word of every clip.

Step 4: Make the clips

make-clips.py (next to this file) writes word-by-word captions for each clip and runs ffmpeg.

python3 make-clips.py long.mp4 audio.json clips.json

It picks the layout from the source:

SourceLayout
Landscape (Zoom, a screen, a YouTube video)The source as a band across the middle, the hook above it, captions under it
Vertical (a phone recording)The source full frame, the hook at the top, captions at the centre line

Defaults: white canvas, ink #1d1d1f, the spoken word in #0071e3. Run brand-setup first to use your own colours and font.

Step 5: Check and finish

  • Watch every clip with sound, start to end. Cut off a word? Move the edge and run Step 4 again.
  • Run video-check on each file, then every-format for the LinkedIn 4:5 cut.
  • On LinkedIn, put the hook in the post's first line and the clip under it. Captions stay on: most LinkedIn video plays muted.

What I learned the hard way

  • The best moment is rarely the one you remember. Read the whole transcript. The paste-able fix at minute 6 beats the big claim at minute 1.
  • A clip that needs the set-up is not a clip. If the first line points back ("so that's why"), start earlier or drop it.
  • One message beats a re-edit. The clip that won my own test was a 20-second fix, not the intro.

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.