groove-builder · git:20260427.43d4669 · 2026-04-27 · sha256 1e63db88020af2ae
groove-builder git:20260427.43d4669A
Immutable. This exact content is served forever at /api/v1/blob/1e63db88020af2ae.
--- name: groove-builder description: Use when the user wants drum patterns by genre - kick, snare, hi-hat, percussion. Examples - "give me a trap beat", "house drum pattern", "DnB drums at 174", "lo-fi drums with swing", "boom-bap pattern". --- # Groove Builder Generate idiomatic drum patterns by genre with proper humanization. Writes to MIDI clips on the user's drum track. ## Workflow ### 1. Identify genre + tempo Required: genre. Optional: tempo (use genre defaults). | Genre | Default tempo | Time sig | | --- | --- | --- | | Lo-fi hip-hop | 70-90 | 4/4 | | Boom-bap | 85-95 | 4/4 | | Trap | 130-150 (half-time feel) | 4/4 | | House | 120-128 | 4/4 | | Tech house | 124-128 | 4/4 | | Techno | 125-135 | 4/4 | | DnB / Jungle | 165-180 | 4/4 | | UK garage | 130-138 | 4/4 (shuffled) | | Drill (UK) | 140-145 (half-time) | 4/4 | | Reggaeton | 95-100 | 4/4 (dembow) | ### 2. Verify drum rack `get_track_info` on the drum track. Confirm a drum rack is loaded with at least kick (C1), snare (D1), hat (F#1), and optionally clap (D#1), open hat (A#1), perc (G1+). If no kit loaded → ask user, or load stock Ableton Drum Kit. ### 3. Write the pattern For a 1-bar (16-step) pattern, here are tested templates: #### Lo-fi hip-hop ``` Kick: X . . . . . X . . . . . . . . . Snare: . . . . X . . . . . . . X . . . (snare on 5 & 13 for half-time feel) Hat: X . X . X . X . X . X . X . X . (8th notes) ``` - Kick: vel 100-110 - Snare: vel 90-100, slight late timing (+5ms) - Hat: vel 65-85, ±15 humanize, swing 8-12% #### Boom-bap ``` Kick: X . . X . . X . . . X . . . . . Snare: . . . . X . . . . . . . X . . . Hat: X X X X X X X X X X X X X X X X (16ths) ``` - Hat: vel 50-80, more aggressive humanize ±20 #### Trap ``` Kick: X . . . . . . X . . . . . . . . (sparse, half-time feel) Snare: . . . . X . . . . . . . X . . . Hat: X X . X X X . X X . X X X . X X (rolling, with stutters) 808: long held bass notes underneath ``` - Hi-hat rolls: alternate 16ths with 32nd-note bursts - Open hat occasionally on the off-beat #### House ``` Kick: X . . . X . . . X . . . X . . . (4-on-the-floor) Clap: . . . . X . . . . . . . X . . . Hat: . . X . . . X . . . X . . . X . (off-beat 8ths) OpHat: . X . . . X . . . X . . . X . . (between beats) ``` - Kick: vel 110, locked on grid - Clap: vel 95 - Hat: tight, minimal humanize #### DnB ``` Kick: X . . . . . . . . . X . . . . . Snare: . . . . X . . . . . . . X . . . Hat: X X X X X X X X X X X X X X X X (16ths, fast) ``` - Snare on 2 & 4 (half-time feel at the bar level) - Add ghost notes on snare at velocity 30-50 ### 4. Humanize After writing, apply genre-appropriate humanization: - Lo-fi: heavy (±20 velocity, ±15ms timing, 12% swing) - Boom-bap: medium (±15 velocity, ±10ms, 6-8% swing) - House/Techno: minimal (±5 velocity, ±2ms, 0% swing) - Trap: moderate on hats, tight on kick/snare - DnB: tight on kick/snare, loose on hats ### 5. Add fill (optional) If user wants a 2-bar pattern with fill: - Bar 1: main pattern - Bar 2: same, but last 1-2 beats replaced with a fill (snare roll, tom run, hat stutter) ### 6. Confirm + write Summarize: "Lo-fi pattern, 90 BPM. Kick on 1+3, snare on 5+13, 8th hats with 12% swing. ±15 velocity, ±15ms timing. Apply?" ## Don'ts - Don't write 100% on-grid for any genre except minimal techno or hard EDM. - Don't overdo ghost notes (>4 per bar starts to clutter). - Don't apply genre defaults if the user gave a specific tempo — respect their tempo. - Don't write more than 8 bars in one shot — give the user a section to evaluate.