agentleFS
timscheueraitimscheuerai/launch-video-kit/skills/launch-score/SKILL.md

launch-score

Skill16 starsChanged 47 days agoMITView on GitHub

Tool manual under launch-film (music fitted to the edit with Higgsfield Sonilo, ACE-Step locally, or the free scratch bed). Score a launch film with music whose sections are the film's acts. Each take is measured for tempo and section energy, stretched onto the film's BPM and offset so its drop lands on the cut. Use after the storyboard's beat sheet exists, for "music", "score", "soundtrack", "background track", "the drop", "beat grid".

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
  1. Very specific:

    Choose: Run launch-review's analysis on each take (tempo, beat grid, energy per section).

    line 33
  2. Distinctive:

    Never use a track because it exists.

    line 41

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

Launch score

Tool manual under launch-film. Start at skills/launch-film/SKILL.md: it holds the core, the hook-plus-body template and the lessons. Where this page differs, launch-film wins.

A launch score is not a track laid under a film. Its sections are the film's acts: the intro sits under the hook, the build under the demo, the drop on the cut and the outcome, a breakdown under the positioning line, and near silence under the logo. The music and the edit share 1 bar grid, so cuts land on downbeats.

Choose the sound of your brand

Write 1 paragraph before generating anything: genre, tempo, the 3 or 4 instruments that matter, mood in plain words. Take it from the brand, not from habit: a calm, premium product suits warm modern house or felt piano with a soft kick; a developer tool suits tight electronic with a dry kick; a consumer app can carry more colour. What worked well for a B2B launch: organic deep house around 120 BPM, a round bass, a muffled intro that opens into a clean four-on-the-floor kick on the cut. What read as template music: corporate electronic, calm solo piano, orchestral swells. Keep the key stable across the film so the sound palette (launch-sound) agrees with it.

Tools

SourceWhenCost (2026-09)
Scratch bed (scripts/scratch_bed.py)First cut, timing tests, free demos. A synthesised bed on the grid with its drop where the plan says.free
Higgsfield Sonilo (scripts/hf_score.py)The default real score on your own account.about 1.9 credits per 30 s take
ACE-Step 1.5 (scripts/ace_score.py)Local and free, full control of bars and key; several GB of models on first run.free, local
A licensed library trackWhen a catalog track fits the bar plan.per licence
  • Sonilo: python3 skills/launch-score/scripts/hf_score.py film/score/score.json film/score/sonilo --takes 3 writes the act map into the prompt, generates the takes, measures tempo by onset autocorrelation (librosa's beat tempo snaps to coarse bins: a 120 BPM take can read as 117.5), stretches onto the plan's BPM when within 4 %, and searches the offset whose loudness curve best fits the acts. In 2026-09 tests Sonilo wrote at 120 BPM whatever the prompt asked; a stretch to 122 is 1.7 % and inaudible.
  • ACE-Step: install it anywhere and set ACE_STEP_ROOT, then $ACE_STEP_ROOT/.venv/bin/python skills/launch-score/scripts/ace_score.py film/score/score.json film/score/ace. ACE_DRY_RUN=1 prints the plan and section times without generating. If a section misfires, regenerate only that range with ACE-Step's repaint task (task_type: "repaint", repainting_start, repainting_end) rather than a new song.

Procedure

  1. Bar plan. From the storyboard beat sheet, map each act to bars at the film's BPM (1 bar at 120 BPM = 2.0 s). Write film/score/score.json (format in ace_score.py's header: caption, bpm, key, sections with tag, note, bars). Keep 2 bars of outro so the logo has a tail.
  2. Caption. 1 paragraph: genre, the 3 or 4 instruments that matter, mood in plain words, "clean modern mix, no vocals". Put section intentions in each section's note, not in the caption.
  3. Generate 2 to 4 takes.
  4. Choose. Run launch-review's analysis on each take (tempo, beat grid, energy per section). Prefer the take whose energy rises where the plan says and whose tempo holds within 1 BPM. The owner decides music inside full films, not as loose tracks.
  5. Find the drop. The drop is the first clean kick after the intro: find the take's steepest loudness rise onto a downbeat (or the fall into a breakdown, for a breakdown cut) and note its time in the file. For the film template, write it into film/film.json as music.drop with music.bpm; film/audio.py places the file so the drop lands on the cut whatever the hook's length, and loops bars on the grid to fill the body.
  6. Hand on the chosen take and score.meta.json (section times in seconds) to launch-motion, launch-sound and launch-mix.

Rules

  • Instrumental only under a voice-over.
  • Record the caption, seeds, model and bar plan in score.meta.json: a score must be reproducible.
  • Never use a track because it exists. It must fit the bar plan or be regenerated.
  • The logo lands in near silence: the last section ends into the mix's drop-out or a 2 s fade.
  • A hook longer than about 4 s needs its own bed (the intro bars looped on the grid, or a matching take), or it plays in silence before the drop.

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.