Generate a royalty-free lofi (or rain / typing / chime / any ambient) soundtrack ENTIRELY in code — no sampled audio ships. Fingerprint a beloved reference recording, shape synthesis to the measured spectral + temporal curve, freeze one human-blessed take into constant tables, and re-synthesize at launch (loop the bed, scatter the foreground → never repeats, ~0 KB, no licensing risk).
SkillScore82Maintained
Automatic
◆Coding pack
Last verified 8/20/2026
What it changes
Passed 18 of 22 test cases with the skill, and 4 of 22 without it.
Without skill18%
With skill82%
Checks it passed that the model alone missed
Mandates keeping the sub-bass register strictly below 140 Hz reserved for the bass stem alone.
Recommends targeting approximately -14 LUFS integrated loudness for standard streaming delivery.
Mandates placing mute and volume state changes on atomic flags isolated from the audio frame queue.
and 15 more in the full report
14 fixed4 passed either way4 still failing0 broke
Pass-rate lift
+64 pp
Tokens
+117%
Agent turns
0%
Response time
-17%
Model gemini-3.6-flashMeasured 8/20/2026v2 · latest is v318 of 22 cases passed with skill
Tokens, turns and time describe resource use, not a dollar price.
This benchmark measured an earlier version of the skill.
A newer attempt on gemini-3.6-flash on 10/2/2026 did not produce a publishable comparison (not comparable). The snapshot above is the previously measured run.
See it in action
One of 14 test cases the skill fixed. Same model, same prompt, with and without the skill.
1 of 14
Prompt
I rendered my synth output to a 16-bit stereo WAV file and ran my spectral analyzer on the file, but all measured peak frequencies are shifted down by exactly one octave compared to my synth calculations. What caused this measurement error?
What was checked, without and with the skill
Checked
Without skill
With skill
Directs performing spectral measurements on raw floating-point synthesis streams rather than exported stereo WAV files.
Missed
Passed
case-13 · gemini-3.6-flash · 8/20/2026 · answers are capped and redacted
What's inside
The instructions your model reads when the skill loads.
SKILL.md212 lines7 filesincludes scripts
Procedural Lofi — build a soundtrack in code, not in a sample pack
This skill is the end-to-end recipe for a lofi bed (and its sibling ambient sounds:
rain, keystrokes, door chimes, printer, water cooler…) that is synthesized at
runtime from constants — zero audio files, zero royalties, and no two minutes ever
sound the same.
Two documents ship alongside this one:
reference/LOFI-BIBLE.md — the parameter tables. Harmony (chord grammar,
voice-leading, register clamps), groove (swing %, drag ms, velocity curves), per-voice
sound design (pad / bass / EP keys / sparkle / drums / texture / tape chain), mix
targets (band shares, HPF strategy, loudness), and generative lessons from prior art.
Every number is cited and, where it conflicts with a measurement, the measurement wins.
scripts/ — the Python (numpy) pipeline: analyze_*.py (fingerprint a reference),
synth_audition.py (a runnable numpy synth that produces .wav auditions), and
export_score.py (freeze a good take into a constants table for the port).
Read those two when you reach the step that needs them. This file is the map.
The core idea (why code, not samples)
A sampled lofi loop is: (a) a licensing liability, (b) heavy to bundle, and (c) audibly
repetitive — the human brain catches a loop seam on the 3rd or 4th pass. Synthesizing it
solves all three:
Legal: acoustic parameters are not copyrightable. You measure a reference to get
target numbers (this band has 55% of the power, the centroid sits at 150 Hz, drops land
13 dB above the bed). You never keep or ship the reference bytes. What ships is your own
oscillator code hitting those numbers.
Size: a few kilobytes of constant tables + a synth function vs. megabytes of PCM.
Never repeats (in practice), from three stacked tricks: (1) the frozen musical
composition — pad, drums, and the melody (keys + sparkle) — loops in lockstep, but the
loop is made long enough that its repetition doesn't fatigue (this project doubled its
day loop from 4 to 8 bars precisely because a short looped melody was audibly repetitive
— "loop the bed" does not mean "make it short"); (2) the genuinely-stochastic layers —
rain drops and keystrokes — are scattered fresh at runtime from a seeded RNG, laid
over the loop; (3) a busy-ness stem mixer fades whole stems (drums, keys…) in and out