This path is for making music from small, sharp tools. Coding agents glue those tools to Ableton Live. It follows how that practice gets built. First comes music as code, then a program driving the DAW. Then agents connect the pieces. Last, tools listen to the output and someone judges it.
1. What should music look like as code?
Every tool needs a representation of notes, patterns and pitch. These sources show working representations and the theory worth encoding.
- PLUM Language List: A catalogue of 156 music languages from 1957 onward. It maps synthesis, algorithmic composition, MIDI scripting and notation formats before you invent one.
- Synthesizing Music from JSON: A whole song as tracks of 32-row patterns, rendered by one short loop. The post logs each speed-up, from about 5000 ms to 250 ms.
- Music theory for programmers: Runnable code from frequency ratios to scales, modes and equal temperament. Its maths is checkable, but its claims about why things sound good are not tested.
- xenharmlib documentation: A Python library for scales and intervals across many tunings. It can snap measured frequencies to notes and report the error.
2. How does a program drive a full DAW?
The DAW does the sound. The question is how a script reaches inside it and knows what happened.
- ableton-js: A Remote Script plus a local WebSocket lets Node control Live 11 or later. The README admits listeners that hang or never fire.
- Logic Pro MCP Server: An MCP server for Logic Pro. Every change returns confirmed, uncertain or failed, never a bare success. That reporting rule transfers to any Live bridge.
- WildFX: A preprint that runs REAPER headless in Docker to render effect-chain graphs in bulk. The authors note headless REAPER gave no error reporting, so steps were checked by hand.
3. How do agents glue small tools together?
Small tools only become music when an agent can call and combine them. These sources argue for Unix-style harnesses and agent-shaped command lines.
- Towards a Harness That Can Do Anything: The author maps harness parts onto Unix paths and cleans inputs into plain text. A file-watching event bus wakes the model. No trials back it.
- The Code-Only Agent: Commenters debate one bash tool that writes reusable CLIs. One reports the agent rebuilding a different tool each session. Another says notes and skills fixed that.
- Rethinking CLI interfaces for AI: One developer's notes on agents truncating output, losing the working directory and skipping hooks. It proposes small fixes to CLI output.
- ai-music-video skill: A Claude Code skill for a song-timed video pipeline. It does cheap, reviewable work first and computes exact timings in code. It asks before spending credits.
4. How do tools hear what was made?
An agent needs measurements of the render, not only the score. These sources offer analysis methods that suit small tools.
- Resonate: Per-sample resonators with no buffering, at linear cost. The developer claims finer time resolution than FFT spectrograms, shown as images only.
- Toward a Sparse Interpretable Audio Codec: A proof of concept encoding sound as sparse events: attack, resonance and room. The author says quality falls short of a usable codec.
- Meta Segment Anything Model Audio: Testers report mixed text-prompted separation. One commenter warns a model may invent parts. That matters before trusting stems in a pipeline.
5. How do you judge the result when taste is the spec?
Code can pass every check and still sound wrong. These sources treat human judgment as the test.
- Human Judgment as a Specification: PICK shows a person concrete cases where candidates disagree, and the votes prune them. It needs formal candidates, which renders with chosen parameters could approximate.
- You can't unit test for taste: A pipeline with no ground truth keeps the LLM in a supporting role. Each case needed its own weights, and checks stayed manual.
- Harmony Explained on Hacker News: Musicians dispute how far physics explains what sounds good. One commenter finds the most consonant intervals boring. Theory can feed tools but cannot replace listening.
Also in the wiki
- Getting Started (Strudel): JavaScript port of Tidal Cycles; thin page.
- Radium Music Editor: trackers and typed note entry versus lanes.
- ossia score: sequencer over OSC, MIDI and live coding.
- Music Theory for Programmers on Hacker News: musicians push back on the tutorial.
- Harmony Explained: preprint deriving scales and chords from hearing.
- xenharmlib 0.4.0 release notes: multi-generator tunings, interval arithmetic.
- I Analyzed Chord Progressions in 680k Songs: Chordonomicon dataset; preview only.
- See chords as flags: colored scale-degree notation for MIDI.
- John Coltrane's Tone Circle: readings of a pitch-class drawing.
- Eigendrum: drum modes from a drawn shape.
- ZX Spectrum: Experimenting With 1-Bit Sound: chords from a beeper, judged by ear.
- Generative kick drum model: a small home-trained sound tool.
- How the cochlea computes: phase and time-frequency trade-offs in hearing.
- Neural audio codecs: getting audio into LLMs.
- Reverse engineering a spatial audio effect: copying a linear effect.
- Stop Overengineering Your Agent Harness: harness sized to the job.
- simple is not small: pipelines can be small yet coupled.
- Video and audio MCP: editing tools in one MCP server.
- Palmier Pro: a media editor driven over MCP.
- Spare Mac for Claude Code: always-on Mac with GUI grants.
- Cultural evolution of distortion: why groups keep a noisy timbre.
- Eleven Music: users want iterative tools, not slot machines.
Probably missing
- Stage 1 lacks a core pattern-language paper; the Strudel page is thin. Candidate: Alex McLean's Tidal paper, "Making programming languages to dance to" (2014), https://slab.org/tmp/p63.pdf. Not in the bookmarks.
- Stage 1 lacks a tuning source that ties scales to timbre. Candidate: William Sethares, Tuning, Timbre, Spectrum, Scale, https://sethares.engr.wisc.edu/contents.html. Not in the bookmarks.
- Stage 2 has no Live control layer beyond ableton-js. Candidate: AbletonOSC, https://github.com/ideoforms/AbletonOSC. Not in the bookmarks.
- Stage 3 lacks guidance written for designing agent tools. Candidate: Anthropic, "Writing effective tools for agents", https://www.anthropic.com/engineering/writing-tools-for-agents. Not in the bookmarks.
- Stage 4 lacks a general analysis library a tool would actually call. Candidate: McFee et al., "librosa: Audio and Music Signal Analysis in Python", https://proceedings.scipy.org/articles/Majora-7b98e3ed-003. Not in the bookmarks.
- Stage 4 lacks a measurement standard for renders. Candidate: ITU-R BS.1770, loudness and true-peak, https://www.itu.int/rec/R-REC-BS.1770-5-202311-I. Not in the bookmarks.
- Stage 5 lacks a listening-test method. Candidate: ITU-R BS.1534 (MUSHRA), https://www.itu.int/dms_pubrec/itu-r/rec/bs/R-REC-BS.1534-3-201510-I!!PDF-F.pdf. Not in the bookmarks.
Caveats
- The pile is thin on DAW control. Only three sources touch it, and none is about Live's object model.
- Most core sources are self-reports by builders. Few measure anything, and none runs a listening test.
- Theory sources disagree. Haas and Wilkerson argue from physics, while the threads say convention matters as much.
- PICK is not about music. It fits here as a method: candidates, disagreements, ears vote.
- The AI music generators (Eleven Music, AudioX) sit outside the path. They make whole tracks rather than small tools.