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

launch-sound

Skill16 starsChanged 47 days agoMITView on GitHub

Tool manual under launch-film (the sound palette, the event map, the cue sheet and generated sound kits). Design the sound effects of a launch film. Builds an event map from the storyboard, the voice-over word timings and the rendered timeline, voices every event from 1 consistent palette (the free synthesised, key-locked forge, or real glass, felt, wood, marimba, clicks and air generated on Higgsfield and pitched into the film's key), and renders 1 SFX stem in a shared acoustic space. Use once picture timing and the score are fixed, for "sound effects", "SFX", "sound design", "UI sounds", "sonic logo".

The file

We split this skill into the rules it gives an agent

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

  • 3

    Very specific

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

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

    Event map: Read the storyboard, the voice's word times and the picture timing (npx hyperframes timeline --json in a HyperFrames project, or …

    line 36
  2. Very specific:

    Textures: when the film needs a real room: a quiet bed under the whole film at -24 to -28 dB.

    line 40
  3. Distinctive:

    Every visible change with weight has a sound.

    line 61
  4. Very specific:

    If a moment needs a sound the palette cannot make, add a new seeded function to sfx_forge.py (or a new kit prompt) rather than importing a …

    line 64

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

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.

Sound carries half of a launch film. Strong reference launches never let a visible change pass without a sound: about 4 transients a second under a continuous bed, near silence before the logo. Generic library clicks and whooshes are what make a film sound like a template. This skill replaces them with 1 palette that is the same in every film you make, which is what sonic branding means.

Your sound identity

Pick 3 or 4 materials that match your brand's world and use only those. The default palette:

  • Glass: struck glass partials for arrivals, locks and the logo. Tuned to the score's key.
  • Wood and felt: physical, calm weight under every landing and press.
  • Air: a quiet moving-air texture for transitions. It never swells or sweeps in pitch.
  • The logo sting: 6 glass ticks rising through the key, then a low bell. Shape it after your logo if you can (a count, a rise, a landing) and use it on every logo, always the same.

A hardware brand might swap glass for metal; a playful consumer app might add marimba. Whatever you pick, never use stock whooshes, swells or risers, cartoon pops, laser UI blips, trailer booms, or anything from a generic free pack.

Tools

  • Forge (free): skills/launch-sound/scripts/sfx_forge.py, run with your venv's python (numpy, scipy, soundfile, pedalboard). Seeded synthesis, so the same cue sheet always renders the same stem. palette OUT_DIR --key A writes every sound to listen to.
  • Shared space: the Dragonfly Plate reverb VST3 if installed (REVERB_VST3 points at it; the default macOS plug-in folder is checked), else pedalboard's built-in reverb. 1 space for every event.
  • Generated kit (Higgsfield, your account): python3 skills/launch-sound/scripts/hf_kit.py generate skills/launch-sound/references/kits.example.json film/sfx/kit runs 1 prompt per material (Seed Audio for hits, Mirelo for air and growth). Each prompt asks for about 6 separated hits; onset slicing turns them into one-shots (glass-01.wav ...) and kit.json records each hit's length and, for pitched kits, its fundamental. A file cue with "f0" and "degree" is pitched onto that key degree by sfx_forge.py, like a sampler. Re-slice for free with hf_kit.py slice film/sfx/kit. About 2 credits a kit, about 20 for all.
  • Textures: Seed Audio for a real room when the film needs one (a keyboard for a hero typing moment, glass set on wood for a big landing). Quoted 0.4 credits, charged about 1.7 to 2.1 in 2026-09. State the expected total before generating; a handful of clips can run without waiting for approval, a batch over 20 credits waits for a yes. Prompts that worked: references/seed-audio-prompts.md.

In the film template

film/audio.py writes the cue sheet from the beat timings for you: a weight on each hero card by its ground, air on each dive, a press on each cursor click, a lock on each chip, a knock per block landing, the switch click, and the logo sting at the end. Set "sound": {"kit": "sfx/kit", "key": "A"} in film/film.json to voice them with your generated kit instead of the forge. Hook sounds go in the hook's sfx list. Change the mapping in audio.py when your brand needs a different voice for an event.

Procedure for a free-form film

  1. Event map. Read the storyboard, the voice's word times and the picture timing (npx hyperframes timeline --json in a HyperFrames project, or the build's timing JSON). List every event: time, what moves, where on screen, weight (light, normal, big).
  2. Key and tempo. From score.meta.json (launch-score). Every tonal sound follows the key.
  3. Voice each event with the table below. Time a cue to the frame the motion lands, not where it starts. Typing starts on the first character. Air centres on the pass.
  4. Write sfx/cues.json (format in the script header). Pan follows screen position: pan = ((x / 1920) * 2 - 1) * 0.6.
  5. Textures when the film needs a real room: a quiet bed under the whole film at -24 to -28 dB. Save to sfx/textures/<yyyy-mm-dd-hh-mm-ss>-<name>.wav, place as {"t": 0, "file": "textures/...", "gain_db": -26, "dur": 20}.
  6. Render: python3 skills/launch-sound/scripts/sfx_forge.py render sfx/cues.json sfx/sfx.wav --key A. With a kit, rotate through a kit's hits so repeated events never sound cloned: marimba for arrivals climbing the scale, glass for travelling signals, clicks for presses and locks, felt under landings, sub on the big cuts, the sting on the logo.
  7. Check the stem before mixing: peak about -7 dBFS, no 2 tonal cues within 60 ms unless they form a chord on purpose, density as in references/density.md. Then hand it to launch-mix.

Event to sound

Visual eventSoundGain dBNotes
Cursor press, button presspress-8on the frame the button depresses
Card, window, node arrivesarrive-9step args.degree 0, 2, 4 across a sequence so it climbs
Typingtyping-13chars and cps match the on-screen typing
Connection or edge growsgrow-11args.dur = draw duration
State locks: publish, live, done, check, meeting bookedlock-7the film's reward sound; use it for outcomes
Big reveal, scale jumpsub_drop + arrive-9, -83 per film at most
Transition pass, glass wipeair-12the only transition sound
List steps, counters, receiptswood_knock, alternating pan-11
Single glint, highlightglass_tick-12
Logologo_sting-4the score drops out about 0.1 s before (launch-mix drop_out)

Quality bar

  • Every visible change with weight has a sound; statements and held reads get room.
  • The palette is consistent: 1 reverb space, 1 key, no clip from outside it.
  • The logo lands in near silence with the sting.
  • If a moment needs a sound the palette cannot make, add a new seeded function to sfx_forge.py (or a new kit prompt) rather than importing a random clip, and document it here.

References

  • references/density.md: measured densities, and how to read the review numbers.
  • references/seed-audio-prompts.md: texture prompts that work, with costs.
  • references/kits.example.json: 10 generic kit prompts for hf_kit.py.
  • launch-mix (balance, ducking, master), launch-score (key, sections), launch-review (the check).

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.