mortenbrudvik

Always Allow — Development skill for Claude Code

Development community

The production record of the Always Allow music video, made end to end by Claude Code: brief, plan, storyboard, tools and the Remotion compositor.

How to install Always Allow

This entry records only its repository, not the path inside it, so there is no exact command to give. Open mortenbrudvik/always-allow and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

What Always Allow does

The production record of the Always Allow music video, made end to end by Claude Code: brief, plan, storyboard, tools and the Remotion compositor.

Alternatives in Development

  • Erduo Broll Loop Engineering — SRT 驱动的双后端 B-roll Agent Skill:自动路由 HyperFrames / Remotion,集成 152 张 Shotcraft 镜头卡 166 ★
  • Eval Run — Run an eval case end-to-end on the VM (implement → build → score → record → roll back) 136 ★
  • Add Music — Generate background music and add it to your Remotion project 113 ★

README

Always Allow

The full production record for the music video to **Always Allow**, a Suno song sung by an AI agent asking for "Always allow". The video was made end to end by Claude Code in six sessions between 28 and 30 Sep 2026, with the owner giving notes at checkpoints. It follows the method behind [@anabology's ESCAPE VELOCITY](https://x.com/anabology/status/2103534482930491441):

  • Midjourney v8.2 made every still, driven in the browser by Claude in Chrome.
  • Seedance 2.5 (through OpenRouter) made the moving and singing shots, each conditioned on its still and the exact slice of the vocal.
  • sync-2-pro (through fal) repaired the lip sync, and the result was measured afterwards, not judged by eye.
  • Remotion drew everything else in code, on the beat: every piece of type, UI, chart and transition, plus the print texture over the footage.

**Watch the video (4:37) on [YouTube](https://www.youtube.com/watch?v=zlL5Rwyquyg) or [X](https://x.com/brudvik/status/2109685404383228023).** The video file itself isn't in this repo.

How the timing works

Nobody gave the agent a BPM. `tools/analyze_song.py` runs librosa's beat tracker on the MP3, keeps only the beats with kick and bass under them, and fits a smooth curve through those, because the tempo drifts between 133.97 and 134.43 BPM and a fixed grid would slip. Bar 0 is where the kick comes in at the first drop, and every 4th beat from there is a downbeat. The result, `production/analysis/song.json`, holds every beat and downbeat time. Everything in the compositor snaps to those times and to the word times in `production/analysis/words.json`, which come from force-aligning the lyric sheet to the vocal stem (wav2vec2, checked against Whisper).

Reading order

  1. BRIEF.md: the instructions every session started from, including the spending limits and the fixed rules.
  2. PLAN.md: the song's section map, the first-pass treatment, the pipeline and the cost estimate.
  3. `research/escape-velocity.m