The Ableton Dream Agent is Glenn Giles’s (Unkle Funk’s) musical subconscious made code. Every night it generates one new compilable TypeScript sketch — a complete groove template grounded in Glenn’s deep house DNA, calibrated to his measured taste fingerprint, and informed by his feedback on past sketches. Drop it into Ableton Live Suite and have a working groove in ten minutes. It thinks in groove, feels in deep house, and ships TypeScript.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/UnkleFunk/HouseMusicSwarm-/llms.txt
Use this file to discover all available pages before exploring further.
What it generates
Each sketch is a TypeScript module targeting the Ableton Extensions SDK. The module exports six note functions — kick, snare, hats, percussion, bass, and chords — plus metadata constants. Every note array is passed throughhumanize() before being returned, so the patterns feel played, not programmed.
Tools
DreamSongSketch
Generates tonight’s sketch. Writes the
.ts file to ableton_extensions/built/unkle-funk-song-sketch/src/sketches/{date}.ts, creates an idea markdown file at ableton_extensions/ideas/{date}.md with the vibe story and musical DNA breakdown, and registers the new sketch in src/index.ts automatically.SaveFeedback
Stores Glenn’s rating (1–5) and notes for a named sketch. The feedback is saved as a JSON file in
ableton_extensions/feedback/{date}.json and read by the dream engine before every new generation. Accepts optional tags (e.g. afro-house, congas, keeper, too-busy) for fine-grained pattern tracking.ListSketches
Shows all past sketches with their metadata and feedback ratings. Displays date, sketch name, BPM, key, length, and rating. Supports filtering to rated-only sketches and a configurable limit (default: 14 most recent). The agent always calls this before generating to check the last 7 days.
The feedback loop
Before generating each new sketch, the agent reads the last 7 days of feedback usingListSketches. It applies these weights:
Rating → next sketch behavior
Rating → next sketch behavior
| Rating | Behavior |
|---|---|
| 5/5 🔥🔥 | More of that element tonight — same pattern type, similar BPM, same key family |
| 4/5 🔥 | Lean in that direction, explore a variation on the same idea |
| 3/5 👍 | Neutral — try something different |
| 1–2/5 ❌ | Don’t repeat that structure, kick variation, or pattern type |
- “Loved the congas” → rolling conga pattern this week
- “Too busy” → reduce the percussion layer tonight
- “Bass line was fire” → repeat bass style, vary kick and hats
- “Chords felt generic” → try a different chord voicing or placement
Musical DNA
The agent knows Glenn’s sound. These parameters are non-negotiable:BPM range
120–126 BPM, weighted toward 123 (Glenn’s home base). Occasionally ventures to 120 (slow/heavy), 122 (classic Chicago), 124 (New York house energy), or 126 (rolling forward) for variety.
Keys
C Minor, D Minor, F Minor, A Minor, Bb Minor. Minor keys only — the darkness is part of the soul. Bass and chord tracks always stay in key; drums use C3 as a trigger note.
Genres
Deep house, afro house, soulful house, classic Chicago/Detroit. References: Larry Heard, Frankie Knuckles, Larry Levan, Ron Hardy, Kerri Chandler, Moodymann, Ron Trent, Dennis Ferrer. Never EDM, never formulaic, never commercial.
Dynamics
Loose humanization, wide velocity range, never flat-line. Glenn’s taste fingerprint (measured from 139 analyzed favorites) proves he prefers the most dynamic, least-compressed tracks in the dataset. Headroom and dynamic range are part of the feel.
Sketch name style
Names are evocative, Chicago-rooted, never generic. They draw from Chicago geography, house music history, late-night feelings, African diaspora references, and spiritual/cosmic themes.✅ Good names
- “Slow Burn on State Street”
- “4am at the Music Box”
- “Lakeshore Drive in November”
- “Ron Hardy’s Last Set”
❌ Bad names
- “Groove Template #3”
- “House Pattern 1”
- “Deep House Loop”
- “Sketch 07”
Example prompts
- “Dream up tonight’s sketch”
- “Rate last night’s sketch 4/5, loved the bass line”
- “Rate ‘Slow Burn on State Street’ 5/5 — rolling congas and the bass walk were fire”
- “Show me all my past sketches”
- “Show me only the rated sketches”
- “Generate a Chicago double-kick 16-bar idea in D Minor”
- “What’s the idea file for today’s sketch?”
Generated sketches require Ableton Live Suite 12.4.5 and the Ableton Extensions SDK (
@ableton-extensions/sdk) to load. The TypeScript files must be compiled before use — the extension build pipeline at ableton_extensions/built/unkle-funk-song-sketch/ handles this. Once compiled, right-click any MIDI track in Ableton to load the sketch via the extension’s context menu action.