livepilot 1.9.21 → 1.9.23

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. package/.claude-plugin/marketplace.json +3 -3
  2. package/.mcpbignore +40 -0
  3. package/AGENTS.md +2 -2
  4. package/CHANGELOG.md +47 -0
  5. package/CONTRIBUTING.md +1 -1
  6. package/README.md +47 -72
  7. package/bin/livepilot.js +135 -0
  8. package/livepilot/.Codex-plugin/plugin.json +2 -2
  9. package/livepilot/.claude-plugin/plugin.json +2 -2
  10. package/livepilot/agents/livepilot-producer/AGENT.md +13 -0
  11. package/livepilot/commands/arrange.md +42 -14
  12. package/livepilot/commands/beat.md +68 -21
  13. package/livepilot/commands/evaluate.md +23 -13
  14. package/livepilot/commands/mix.md +35 -11
  15. package/livepilot/commands/perform.md +31 -19
  16. package/livepilot/commands/sounddesign.md +38 -17
  17. package/livepilot/skills/livepilot-arrangement/SKILL.md +2 -1
  18. package/livepilot/skills/livepilot-composition-engine/references/transition-archetypes.md +2 -2
  19. package/livepilot/skills/livepilot-core/SKILL.md +60 -4
  20. package/livepilot/skills/livepilot-core/references/device-atlas/distortion-and-character.md +11 -11
  21. package/livepilot/skills/livepilot-core/references/device-atlas/drums-and-percussion.md +25 -25
  22. package/livepilot/skills/livepilot-core/references/device-atlas/dynamics-and-punch.md +21 -21
  23. package/livepilot/skills/livepilot-core/references/device-atlas/eq-and-filtering.md +13 -13
  24. package/livepilot/skills/livepilot-core/references/device-atlas/midi-tools.md +13 -13
  25. package/livepilot/skills/livepilot-core/references/device-atlas/movement-and-modulation.md +5 -5
  26. package/livepilot/skills/livepilot-core/references/device-atlas/space-and-depth.md +16 -16
  27. package/livepilot/skills/livepilot-core/references/device-atlas/spectral-and-weird.md +40 -40
  28. package/livepilot/skills/livepilot-core/references/m4l-devices.md +3 -3
  29. package/livepilot/skills/livepilot-core/references/overview.md +4 -4
  30. package/livepilot/skills/livepilot-evaluation/SKILL.md +12 -8
  31. package/livepilot/skills/livepilot-evaluation/references/memory-promotion.md +2 -2
  32. package/livepilot/skills/livepilot-mix-engine/SKILL.md +1 -1
  33. package/livepilot/skills/livepilot-mix-engine/references/mix-moves.md +2 -2
  34. package/livepilot/skills/livepilot-mixing/SKILL.md +3 -1
  35. package/livepilot/skills/livepilot-notes/SKILL.md +2 -1
  36. package/livepilot/skills/livepilot-release/SKILL.md +15 -15
  37. package/livepilot/skills/livepilot-sound-design-engine/SKILL.md +2 -2
  38. package/livepilot/skills/livepilot-wonder/SKILL.md +62 -0
  39. package/livepilot.mcpb +0 -0
  40. package/m4l_device/livepilot_bridge.js +1 -1
  41. package/manifest.json +91 -0
  42. package/mcp_server/__init__.py +1 -1
  43. package/mcp_server/creative_constraints/__init__.py +6 -0
  44. package/mcp_server/creative_constraints/engine.py +277 -0
  45. package/mcp_server/creative_constraints/models.py +75 -0
  46. package/mcp_server/creative_constraints/tools.py +341 -0
  47. package/mcp_server/experiment/__init__.py +6 -0
  48. package/mcp_server/experiment/engine.py +213 -0
  49. package/mcp_server/experiment/models.py +120 -0
  50. package/mcp_server/experiment/tools.py +263 -0
  51. package/mcp_server/hook_hunter/__init__.py +5 -0
  52. package/mcp_server/hook_hunter/analyzer.py +342 -0
  53. package/mcp_server/hook_hunter/models.py +57 -0
  54. package/mcp_server/hook_hunter/tools.py +586 -0
  55. package/mcp_server/memory/taste_graph.py +261 -0
  56. package/mcp_server/memory/tools.py +88 -0
  57. package/mcp_server/mix_engine/critics.py +2 -2
  58. package/mcp_server/mix_engine/models.py +1 -1
  59. package/mcp_server/mix_engine/state_builder.py +2 -2
  60. package/mcp_server/musical_intelligence/__init__.py +8 -0
  61. package/mcp_server/musical_intelligence/detectors.py +421 -0
  62. package/mcp_server/musical_intelligence/phrase_critic.py +163 -0
  63. package/mcp_server/musical_intelligence/tools.py +221 -0
  64. package/mcp_server/preview_studio/__init__.py +5 -0
  65. package/mcp_server/preview_studio/engine.py +280 -0
  66. package/mcp_server/preview_studio/models.py +73 -0
  67. package/mcp_server/preview_studio/tools.py +423 -0
  68. package/mcp_server/runtime/session_kernel.py +96 -0
  69. package/mcp_server/runtime/tools.py +90 -1
  70. package/mcp_server/semantic_moves/__init__.py +13 -0
  71. package/mcp_server/semantic_moves/compiler.py +116 -0
  72. package/mcp_server/semantic_moves/mix_compilers.py +291 -0
  73. package/mcp_server/semantic_moves/mix_moves.py +157 -0
  74. package/mcp_server/semantic_moves/models.py +46 -0
  75. package/mcp_server/semantic_moves/performance_compilers.py +208 -0
  76. package/mcp_server/semantic_moves/performance_moves.py +81 -0
  77. package/mcp_server/semantic_moves/registry.py +32 -0
  78. package/mcp_server/semantic_moves/resolvers.py +126 -0
  79. package/mcp_server/semantic_moves/sound_design_compilers.py +266 -0
  80. package/mcp_server/semantic_moves/sound_design_moves.py +78 -0
  81. package/mcp_server/semantic_moves/tools.py +204 -0
  82. package/mcp_server/semantic_moves/transition_compilers.py +222 -0
  83. package/mcp_server/semantic_moves/transition_moves.py +76 -0
  84. package/mcp_server/server.py +10 -0
  85. package/mcp_server/session_continuity/__init__.py +6 -0
  86. package/mcp_server/session_continuity/models.py +86 -0
  87. package/mcp_server/session_continuity/tools.py +230 -0
  88. package/mcp_server/session_continuity/tracker.py +235 -0
  89. package/mcp_server/song_brain/__init__.py +6 -0
  90. package/mcp_server/song_brain/builder.py +477 -0
  91. package/mcp_server/song_brain/models.py +132 -0
  92. package/mcp_server/song_brain/tools.py +294 -0
  93. package/mcp_server/stuckness_detector/__init__.py +5 -0
  94. package/mcp_server/stuckness_detector/detector.py +400 -0
  95. package/mcp_server/stuckness_detector/models.py +66 -0
  96. package/mcp_server/stuckness_detector/tools.py +195 -0
  97. package/mcp_server/tools/_conductor.py +104 -6
  98. package/mcp_server/tools/analyzer.py +1 -1
  99. package/mcp_server/tools/devices.py +34 -0
  100. package/mcp_server/wonder_mode/__init__.py +6 -0
  101. package/mcp_server/wonder_mode/diagnosis.py +84 -0
  102. package/mcp_server/wonder_mode/engine.py +493 -0
  103. package/mcp_server/wonder_mode/session.py +114 -0
  104. package/mcp_server/wonder_mode/tools.py +285 -0
  105. package/package.json +2 -2
  106. package/remote_script/LivePilot/__init__.py +1 -1
  107. package/remote_script/LivePilot/browser.py +4 -1
  108. package/remote_script/LivePilot/devices.py +29 -0
  109. package/remote_script/LivePilot/tracks.py +11 -4
  110. package/scripts/generate_tool_catalog.py +131 -0
@@ -39,7 +39,7 @@ Duplicates the incoming signal, applies time-modulated delays with subtle pitch
39
39
 
40
40
  ### LivePilot Usage
41
41
  ```
42
- find_and_load_device("Chorus-Ensemble")
42
+ find_and_load_device(track_index, "Chorus-Ensemble")
43
43
  set_device_parameter(track_index, device_index, "Rate", 1.2)
44
44
  set_device_parameter(track_index, device_index, "D/W", 40)
45
45
  ```
@@ -103,7 +103,7 @@ Combines phaser (allpass-filter notches), flanger (short modulated delay), and d
103
103
 
104
104
  ### LivePilot Usage
105
105
  ```
106
- find_and_load_device("Phaser-Flanger")
106
+ find_and_load_device(track_index, "Phaser-Flanger")
107
107
  set_device_parameter(track_index, device_index, "Mode", "Flanger")
108
108
  set_device_parameter(track_index, device_index, "Feedback", 60)
109
109
  ```
@@ -163,7 +163,7 @@ Real-time pitch/frequency shifting with built-in LFO, envelope follower, delay w
163
163
 
164
164
  ### LivePilot Usage
165
165
  ```
166
- find_and_load_device("Shifter")
166
+ find_and_load_device(track_index, "Shifter")
167
167
  set_device_parameter(track_index, device_index, "Coarse", 7) # shift up a fifth
168
168
  set_device_parameter(track_index, device_index, "D/W", 50)
169
169
  ```
@@ -218,7 +218,7 @@ LFO-driven amplitude modulation for stereo panning and tremolo effects with mult
218
218
 
219
219
  ### LivePilot Usage
220
220
  ```
221
- find_and_load_device("Auto Pan")
221
+ find_and_load_device(track_index, "Auto Pan")
222
222
  set_device_parameter(track_index, device_index, "Amount", 80)
223
223
  set_device_parameter(track_index, device_index, "Shape", -60) # pumping gate
224
224
  ```
@@ -386,7 +386,7 @@ Real-time audio looper with overdub, speed/pitch manipulation, reverse playback,
386
386
 
387
387
  ### LivePilot Usage
388
388
  ```
389
- find_and_load_device("Looper")
389
+ find_and_load_device(track_index, "Looper")
390
390
  # Looper transport is best controlled via MIDI mapping or foot controller
391
391
  # API access to Looper state is limited
392
392
  ```
@@ -12,7 +12,7 @@
12
12
  ### Reverb
13
13
 
14
14
  - **Type:** Native
15
- - **Load via:** `find_and_load_device("Reverb")`
15
+ - **Load via:** `find_and_load_device(track_index, "Reverb")`
16
16
  - **What it does:** Algorithmic reverb with separate early-reflections and diffusion-network stages. Warm, slightly dark character; good general-purpose verb that sits well in a mix without eating headroom. Not the most realistic room sim, but flexible and low-CPU.
17
17
  - **Signal flow:** Input → Lo/Hi Cut filters → Early Reflections (with Spin modulation) → Diffusion Network (with Chorus modulation) → Reflect/Diffuse level mix → Dry/Wet output
18
18
  - **Key parameters:**
@@ -42,7 +42,7 @@
42
42
  ### Hybrid Reverb
43
43
 
44
44
  - **Type:** Native (Live 11+, Suite only)
45
- - **Load via:** `find_and_load_device("Hybrid Reverb")`
45
+ - **Load via:** `find_and_load_device(track_index, "Hybrid Reverb")`
46
46
  - **What it does:** Dual-engine reverb combining a convolution engine (real-space IRs) with an algorithmic engine (5 creative algorithms). Can run engines independently, in serial, or in parallel. The most versatile reverb in Live.
47
47
  - **Signal flow:** Input → Send gain → Convolution Engine + Algorithmic Engine (routed Serial/Parallel/Blend) → 4-band EQ → Stereo / Vintage / Bass Mono → Dry/Wet output
48
48
  - **Key parameters:**
@@ -75,7 +75,7 @@
75
75
  ### Delay
76
76
 
77
77
  - **Type:** Native (updated in Live 12)
78
- - **Load via:** `find_and_load_device("Delay")`
78
+ - **Load via:** `find_and_load_device(track_index, "Delay")`
79
79
  - **What it does:** Clean stereo delay with tempo sync, band-pass filter, LFO modulation, and three transition modes. The workhorse delay — transparent, precise, and flexible.
80
80
  - **Signal flow:** Input → Band-pass filter → Dual delay lines (L/R, linkable) → LFO modulation (filter + time) → Ping Pong option → Dry/Wet output
81
81
  - **Key parameters:**
@@ -106,7 +106,7 @@
106
106
  ### Echo
107
107
 
108
108
  - **Type:** Native (Live 10+)
109
- - **Load via:** `find_and_load_device("Echo")`
109
+ - **Load via:** `find_and_load_device(track_index, "Echo")`
110
110
  - **What it does:** Character delay with deep modulation, noise/wobble for analog flavor, built-in reverb, gate, and ducking. Ableton's most feature-rich delay — it can go from subtle tape echo to self-oscillating chaos.
111
111
  - **Signal flow:** Input (with optional distortion) → Dual delay lines (L/R or Mid/Side) → HP/LP filters with resonance → LFO/Envelope modulation → Character processing (Noise, Wobble, Gate, Ducking) → Reverb (Pre/Post/Feedback) → Stereo/Output → Dry/Wet
112
112
  - **Key parameters:**
@@ -145,7 +145,7 @@
145
145
  ### Filter Delay
146
146
 
147
147
  - **Type:** Native
148
- - **Load via:** `find_and_load_device("Filter Delay")`
148
+ - **Load via:** `find_and_load_device(track_index, "Filter Delay")`
149
149
  - **What it does:** Three independent filtered delay lines — one for Left input, one for Right input, one for L+R (stereo sum). Each line has its own band-pass filter, delay time, feedback, pan, and volume. Creates rich, frequency-separated delay textures.
150
150
  - **Signal flow:** Input splits into 3 channels (L / L+R / R) → per-channel Band-pass Filter → per-channel Delay Line → per-channel Pan/Volume → Feedback routing (Individual or Sum) → Output mix
151
151
  - **Key parameters:**
@@ -171,7 +171,7 @@
171
171
  ### Grain Delay
172
172
 
173
173
  - **Type:** Native
174
- - **Load via:** `find_and_load_device("Grain Delay")`
174
+ - **Load via:** `find_and_load_device(track_index, "Grain Delay")`
175
175
  - **What it does:** Granular delay that chops incoming audio into tiny grains, applies pitch shifting and randomization, then delays the grains. Creates textures ranging from subtle shimmer to total sonic destruction.
176
176
  - **Signal flow:** Input → Grain slicing (at Frequency rate) → Pitch shift per grain → Spray (time randomization) + Random Pitch → Delay line with Feedback → Dry/Wet output
177
177
  - **Key parameters:**
@@ -193,7 +193,7 @@
193
193
  ### Beat Repeat
194
194
 
195
195
  - **Type:** Native
196
- - **Load via:** `find_and_load_device("Beat Repeat")`
196
+ - **Load via:** `find_and_load_device(track_index, "Beat Repeat")`
197
197
  - **What it does:** Rhythmic buffer repeat/stutter effect synchronized to song tempo. Captures audio slices and repeats them with optional pitch decay and filtering. Not a traditional delay — it is a performance/glitch tool.
198
198
  - **Signal flow:** Input → Buffer capture (at Interval + Offset) → Grid slicing → Repetition (for Gate length) → Pitch processing → Filter → Mix mode output
199
199
  - **Key parameters:**
@@ -222,7 +222,7 @@
222
222
  ### Corpus
223
223
 
224
224
  - **Type:** Native
225
- - **Load via:** `find_and_load_device("Corpus")`
225
+ - **Load via:** `find_and_load_device(track_index, "Corpus")`
226
226
  - **What it does:** Physical modeling resonator that simulates vibrating objects (beams, strings, membranes, plates, pipes, tubes). Excites the audio input through a modeled resonant body. Adds pitched, metallic, or woody resonance to any sound.
227
227
  - **Signal flow:** Input → Band-pass Filter → Resonance Type modeling → LFO modulation on frequency → Bleed mix → Gain/Limiter → Dry/Wet output. Optional MIDI sidechain controls pitch.
228
228
  - **Key parameters:**
@@ -256,7 +256,7 @@
256
256
  ### Resonators
257
257
 
258
258
  - **Type:** Native
259
- - **Load via:** `find_and_load_device("Resonators")`
259
+ - **Load via:** `find_and_load_device(track_index, "Resonators")`
260
260
  - **What it does:** Five parallel resonators tuned to musical intervals. Turns any input (noise, drums, speech) into pitched, chord-like resonance. The full stereo signal feeds Resonator I; II--V alternate between L and R channels.
261
261
  - **Signal flow:** Input → Multimode Filter → 5 parallel resonators (I = stereo, II--V = alternating L/R) → Width control → Dry/Wet output
262
262
  - **Key parameters:**
@@ -281,7 +281,7 @@
281
281
  ### Spectral Resonator
282
282
 
283
283
  - **Type:** Native (Live 11+, Suite only)
284
- - **Load via:** `find_and_load_device("Spectral Resonator")`
284
+ - **Load via:** `find_and_load_device(track_index, "Spectral Resonator")`
285
285
  - **What it does:** FFT-based spectral processor that decomposes audio into partials, then resonates, stretches, shifts, and blurs them. Can be controlled by internal frequency or external MIDI for melodic spectral effects. Creates metallic delays, boxy reverbs, pitched spectral textures, and alien harmonics.
286
286
  - **Signal flow:** Input → FFT analysis → Spectral processing (frequency shift, stretch, blur) → Unison voicing → IFFT resynthesis → Dry/Wet output. Optional MIDI sidechain for pitch control.
287
287
  - **Key parameters:**
@@ -307,7 +307,7 @@
307
307
  ### Spectral Time
308
308
 
309
309
  - **Type:** Native (Live 11+, Suite only)
310
- - **Load via:** `find_and_load_device("Spectral Time")`
310
+ - **Load via:** `find_and_load_device(track_index, "Spectral Time")`
311
311
  - **What it does:** Spectral delay with freeze capability. Decomposes audio via FFT, then applies frequency-dependent delay, pitch shifting, and spectral freeze. Two independent sections (Freeze + Delay) that can be used separately or combined.
312
312
  - **Signal flow:** Input → FFT analysis → Freeze section (capture/hold/retrigger) → Spectral Delay (frequency-dependent delay lines with pitch shift) → IFFT resynthesis → Dry/Wet output
313
313
  - **Key parameters:**
@@ -339,7 +339,7 @@
339
339
  ### Align Delay
340
340
 
341
341
  - **Type:** M4L Stock (Max for Live Essentials)
342
- - **Load via:** `find_and_load_device("Align Delay")`
342
+ - **Load via:** `find_and_load_device(track_index, "Align Delay")`
343
343
  - **What it does:** Utility delay for phase alignment and time correction. Not a creative effect — it is a mixing tool for correcting timing/phase issues between tracks, compensating for latency, or aligning PA systems.
344
344
  - **Signal flow:** Input → Per-channel delay (L/R independent or linked) → Output
345
345
  - **Key parameters:**
@@ -364,7 +364,7 @@
364
364
  ### Diffuse
365
365
 
366
366
  - **Type:** M4L User (CLX_02 / Dub Machines by Surreal Machines)
367
- - **Load via:** `find_and_load_device("Diffuse")`
367
+ - **Load via:** `find_and_load_device(track_index, "Diffuse")`
368
368
  - **What it does:** Lush feedback-network reverb/smear effect with a sophisticated delay network under the hood. Creates short virtual spaces, long atmospheric swells, and everything between. All audio passes through a tape-tone preamp for warmth. Sounds like a cross between a reverb and a multi-tap delay.
369
369
  - **Signal flow:** Input → Tape-tone preamp → Feedback delay network (multiple delay lines with size/diffusion/phase control) → Damping → Modulation → Rectify/Pump processing → Output mix
370
370
  - **Key parameters:**
@@ -389,7 +389,7 @@
389
389
  ### Magnetic
390
390
 
391
391
  - **Type:** M4L User (CLX_02 / Dub Machines by Surreal Machines)
392
- - **Load via:** `find_and_load_device("Magnetic")`
392
+ - **Load via:** `find_and_load_device(track_index, "Magnetic")`
393
393
  - **What it does:** Tape delay modeled after a beloved 1970s tape echo unit. Multiple gain stages, tape hysteresis, capstan wobble, and 3 virtual tape heads. Includes a high-quality convolution reverb with spring, plate, and hall IRs. All signal passes through a custom tape-tone preamp.
394
394
  - **Signal flow:** Input → Tape-tone preamp → 3 playback heads (selectable via Mode) → Tape modeling (hysteresis, wobble, saturation) → Convolution reverb (optional, routed Pre/Post/Parallel) → Bass/Treble tone → Mix output
395
395
  - **Key parameters:**
@@ -421,7 +421,7 @@
421
421
  ### Gated Delay
422
422
 
423
423
  - **Type:** M4L Stock (Creative Extensions, free with Suite)
424
- - **Load via:** `find_and_load_device("Gated Delay")`
424
+ - **Load via:** `find_and_load_device(track_index, "Gated Delay")`
425
425
  - **What it does:** Gate sequencer that rhythmically sends signal to a delay line on activated steps. Like a tempo-synced send to a delay that turns on/off in a pattern. Creates rhythmic, sequenced delay patterns impossible with standard delays.
426
426
  - **Signal flow:** Input → Step sequencer gate → Delay line (rate-multiplied) → Feedback → Volume/Ducking → Mix mode output
427
427
  - **Key parameters:**
@@ -445,7 +445,7 @@
445
445
  ### Spectral Blur
446
446
 
447
447
  - **Type:** M4L Stock (Creative Extensions, free with Suite)
448
- - **Load via:** `find_and_load_device("Spectral Blur")`
448
+ - **Load via:** `find_and_load_device(track_index, "Spectral Blur")`
449
449
  - **What it does:** Spectral smearing effect that grabs grains from a defined frequency range and extends/blurs them into a dense cloud. Creates reverb-like textures through spectral processing rather than traditional reflections. Has a Freeze mode for infinite sustain.
450
450
  - **Signal flow:** Input → FFT analysis → Frequency band selection (Freq1/Freq2) → Grain extension/blurring → Residual mix → Halo decay → Delay Compensation → Dry/Wet output
451
451
  - **Key parameters:**
@@ -12,7 +12,7 @@
12
12
  ### Spectral Time
13
13
 
14
14
  - **Type:** Native (Live 11+, Suite only)
15
- - **Load via:** `find_and_load_device("Spectral Time")`
15
+ - **Load via:** `find_and_load_device(track_index, "Spectral Time")`
16
16
  - **What it does:** FFT-based effect combining a spectral freeze engine and a spectral delay. Freeze captures and sustains incoming audio as a spectral snapshot; Delay applies per-frequency delay times with pitch shift, tilt, spray, and masking. Sections run independently or in series (Freeze into Delay or Delay into Freeze). Built-in sonogram display shows dry (yellow) and wet (blue) signals.
17
17
  - **Signal flow:** Input → Pre Gain → [Freezer ↔ Delay (order switchable)] → Mix → Output
18
18
  - **Key parameters:**
@@ -52,7 +52,7 @@
52
52
  ### Spectral Resonator
53
53
 
54
54
  - **Type:** Native (Live 11+, Suite only)
55
- - **Load via:** `find_and_load_device("Spectral Resonator")`
55
+ - **Load via:** `find_and_load_device(track_index, "Spectral Resonator")`
56
56
  - **What it does:** FFT-based pitched resonance processor. Breaks incoming audio into spectral partials, then resonates them at a tuned frequency with harmonic stretching, shifting, and modulation. Can be driven by internal frequency or external MIDI for pitched spectral effects. Turns any audio into a resonant, tonal instrument.
57
57
  - **Signal flow:** Input → FFT analysis → Partial generation (Harmonics + Stretch + Shift) → Decay/Damping → Modulation (Chorus/Wander/Granular) → Unison → Dry/Wet Output
58
58
  - **Key parameters:**
@@ -90,7 +90,7 @@
90
90
  ### Corpus
91
91
 
92
92
  - **Type:** Native (all Live editions)
93
- - **Load via:** `find_and_load_device("Corpus")`
93
+ - **Load via:** `find_and_load_device(track_index, "Corpus")`
94
94
  - **What it does:** Physical modeling resonator simulating 7 types of resonant objects. Developed with Applied Acoustics Systems. Adds the acoustic character of beams, strings, membranes, plates, pipes, and tubes to any input signal. Turns percussive hits into tuned metal, wood, or membrane sounds; turns sustained audio into vibrating physical objects.
95
95
  - **Signal flow:** Input → Band-pass Filter (optional) → Resonator body (selected type) → LFO modulation → Bleed mix → Gain/Limiter → Dry/Wet Output. MIDI sidechain can control tuning and decay.
96
96
  - **Key parameters:**
@@ -148,7 +148,7 @@
148
148
  ### Grain Delay
149
149
 
150
150
  - **Type:** Native (all Live editions)
151
- - **Load via:** `find_and_load_device("Grain Delay")`
151
+ - **Load via:** `find_and_load_device(track_index, "Grain Delay")`
152
152
  - **What it does:** Granular delay that chops incoming audio into tiny grains and replays them with delay, pitch shift, and randomization. Sits between a delay and a granular processor -- capable of subtle chorus-like effects, dramatic pitch-shifted textures, and complete signal destruction depending on settings.
153
153
  - **Signal flow:** Input → Grain engine (Frequency sets grain rate) → Pitch shift → Spray (time randomization) → Random Pitch → Feedback → Dry/Wet Output
154
154
  - **Key parameters:**
@@ -175,7 +175,7 @@
175
175
  ### Beat Repeat
176
176
 
177
177
  - **Type:** Native (all Live editions)
178
- - **Load via:** `find_and_load_device("Beat Repeat")`
178
+ - **Load via:** `find_and_load_device(track_index, "Beat Repeat")`
179
179
  - **What it does:** Real-time audio buffer capture and loop effect. Grabs chunks of audio at configurable intervals and repeats them with grid slicing, pitch decay, filtering, and volume decay. The definitive glitch/stutter tool in Live -- can produce everything from subtle fills to extreme rhythmic destruction.
180
180
  - **Signal flow:** Incoming audio → Interval-triggered capture → Gate-length repetition → Grid slicing → Variation (random grid) → Pitch shifting → Filter (HP + LP) → Volume Decay → Mix/Insert/Gate output
181
181
  - **Key parameters:**
@@ -221,7 +221,7 @@
221
221
  ### Confetti: Analysis
222
222
 
223
223
  - **Type:** M4L Audio Effect (FluCoMa-powered)
224
- - **Load via:** `find_and_load_device("M4L_Confetti Analysis")`
224
+ - **Load via:** `find_and_load_device(track_index, "M4L_Confetti Analysis")`
225
225
  - **What it does:** Real-time audio descriptor analysis engine. Extracts onset detection, loudness, spectral centroid, and spectral flatness from incoming audio. Outputs continuous signal-rate streams or sample-and-hold values triggered by onset detection. Use as a modulation source for other Confetti devices or parameter mapping.
226
226
  - **Key parameters:** Onset sensitivity, descriptor selection (loudness / centroid / flatness), output mode (continuous / sample-and-hold), smoothing
227
227
  - **Reach for this when:** you need audio-reactive modulation, feature extraction for driving other effects, or analytical monitoring of spectral content
@@ -231,7 +231,7 @@
231
231
  ### Confetti: Chopper
232
232
 
233
233
  - **Type:** M4L Audio Effect
234
- - **Load via:** `find_and_load_device("M4L_Confetti Chopper")`
234
+ - **Load via:** `find_and_load_device(track_index, "M4L_Confetti Chopper")`
235
235
  - **What it does:** Time-domain granular analysis/resynthesis. Segments incoming audio at zero-crossings (wavesets) and stores them, then plays back stored segments in various orders. Creates waveset-based effects from subtle timbral shifts to complete reconstruction of audio from individual waveform cycles.
236
236
  - **Key parameters:** Segment size, playback order, waveset selection, mix
237
237
  - **Reach for this when:** you need waveset manipulation, zero-crossing granular effects, or timbral deconstruction at the waveform level
@@ -241,7 +241,7 @@
241
241
  ### Confetti: Chorus
242
242
 
243
243
  - **Type:** M4L Audio Effect
244
- - **Load via:** `find_and_load_device("M4L_Confetti Chorus")`
244
+ - **Load via:** `find_and_load_device(track_index, "M4L_Confetti Chorus")`
245
245
  - **What it does:** Multi-mode modulation effect with three distinct algorithms: Digital (8-stage chorus), Analog (sine LFO), and LoFi (triangle LFO with wow/flutter). Includes saturation processing stage. More character-driven than Live's native Chorus-Ensemble.
246
246
  - **Key parameters:** Mode (Digital / Analog / LoFi), rate, depth, saturation amount, mix
247
247
  - **Reach for this when:** you want characterful chorus with lo-fi or analog flavor, wow/flutter tape effects, or saturated modulation
@@ -251,7 +251,7 @@
251
251
  ### Confetti: Cloud
252
252
 
253
253
  - **Type:** M4L Audio Effect (FluCoMa-powered)
254
- - **Load via:** `find_and_load_device("M4L_Confetti Cloud")`
254
+ - **Load via:** `find_and_load_device(track_index, "M4L_Confetti Cloud")`
255
255
  - **What it does:** Real-time granulator that writes incoming audio to a buffer while simultaneously reading back grains. Uses FluCoMa harmonic/percussive/transient decomposition to balance spectral components before granulation. The core granular texture engine of the Confetti suite.
256
256
  - **Key parameters:** Grain size, grain density, position, pitch, harmonic/percussive/transient balance (FluCoMa), spray, feedback, mix
257
257
  - **Reach for this when:** you need real-time granular processing with spectral decomposition, textural clouds from any audio, or harmonic/percussive separation before granulation
@@ -261,7 +261,7 @@
261
261
  ### Confetti: Dirt
262
262
 
263
263
  - **Type:** M4L Audio Effect
264
- - **Load via:** `find_and_load_device("M4L_Confetti Dirt")`
264
+ - **Load via:** `find_and_load_device(track_index, "M4L_Confetti Dirt")`
265
265
  - **What it does:** Dual-algorithm distortion combining cubic nonlinear distortion and variable-hardness clipping. Both algorithms 4x oversampled to minimize aliasing. Includes post-distortion EQ for tonal shaping.
266
266
  - **Key parameters:** Algorithm selection, drive, hardness (clip algorithm), post-EQ, mix
267
267
  - **Reach for this when:** you need clean-aliasing distortion, variable clipping character, or post-EQ-shaped saturation
@@ -271,7 +271,7 @@
271
271
  ### Confetti: Dub
272
272
 
273
273
  - **Type:** M4L Audio Effect
274
- - **Load via:** `find_and_load_device("M4L_Confetti Dub")`
274
+ - **Load via:** `find_and_load_device(track_index, "M4L_Confetti Dub")`
275
275
  - **What it does:** Dirty delay that responds to audio onsets for dub-style processing. Multiple delay modes with onset-triggered behavior create dub snare slapbacks and Karplus-Strong-like resonant string effects from transient material.
276
276
  - **Key parameters:** Delay time, feedback, onset sensitivity, mode selection, filter, mix
277
277
  - **Reach for this when:** you need onset-reactive delay, dub-style processing, or Karplus-Strong string synthesis from percussive input
@@ -281,7 +281,7 @@
281
281
  ### Confetti: Filter
282
282
 
283
283
  - **Type:** M4L Audio Effect
284
- - **Load via:** `find_and_load_device("M4L_Confetti Filter")`
284
+ - **Load via:** `find_and_load_device(track_index, "M4L_Confetti Filter")`
285
285
  - **What it does:** Multi-mode filter combining 4 classic filter topologies: MS-20, Sallen-Key, Moog Ladder, and Butterworth. Each offers lowpass/highpass modes with adjustable character parameters unique to each topology. More colorful and aggressive than Live's Auto Filter.
286
286
  - **Key parameters:** Topology (MS-20 / Sallen-Key / Moog / Butterworth), mode (LP / HP), cutoff, resonance, character/drive, mix
287
287
  - **Reach for this when:** you need specific analog filter character, aggressive self-oscillating resonance (MS-20), or filter topology comparison
@@ -291,7 +291,7 @@
291
291
  ### Confetti: Lofi
292
292
 
293
293
  - **Type:** M4L Audio Effect
294
- - **Load via:** `find_and_load_device("M4L_Confetti Lofi")`
294
+ - **Load via:** `find_and_load_device(track_index, "M4L_Confetti Lofi")`
295
295
  - **What it does:** Combines bit depth reduction, sample rate reduction, audio-rate bitwise manipulation, and MP3-style compression artifacts. More destructive and flexible than Live's Redux.
296
296
  - **Key parameters:** Bit depth, sample rate, bitwise mode, compression quality, mix
297
297
  - **Reach for this when:** you need deep bit-crushing, codec artifacts, bitwise audio manipulation, or layered lo-fi degradation beyond Redux
@@ -301,7 +301,7 @@
301
301
  ### Confetti: Octaver
302
302
 
303
303
  - **Type:** M4L Audio Effect
304
- - **Load via:** `find_and_load_device("M4L_Confetti Octaver")`
304
+ - **Load via:** `find_and_load_device(track_index, "M4L_Confetti Octaver")`
305
305
  - **What it does:** Lo-fi analog octave effect roughly modeled on the Boss OC-2 pedal. Generates sub-octave from input with added drive and filtering for fuzz-like character. Monophonic tracking like the hardware original.
306
306
  - **Key parameters:** Octave level (-1, -2), drive, filter, direct signal level, mix
307
307
  - **Reach for this when:** you need analog-style sub-octave, lo-fi bass fattening, or OC-2 pedal character in the box
@@ -311,7 +311,7 @@
311
311
  ### Confetti: Pitch
312
312
 
313
313
  - **Type:** M4L Audio Effect
314
- - **Load via:** `find_and_load_device("M4L_Confetti Pitch")`
314
+ - **Load via:** `find_and_load_device(track_index, "M4L_Confetti Pitch")`
315
315
  - **What it does:** Pitch shifting using PSOLA (pitch-synchronous overlap-add) algorithm, modeled on the character of the Digitech Whammy pedal. Four modes: Clean, Dirty, Automatic, and Random. Glitchy artifacts are a feature, not a bug.
316
316
  - **Key parameters:** Pitch interval (semitones), mode (Clean / Dirty / Auto / Random), glide, mix
317
317
  - **Reach for this when:** you need Whammy-style pitch effects, glitchy PSOLA pitch shifting, or random pitch chaos
@@ -321,7 +321,7 @@
321
321
  ### Confetti: Resonator
322
322
 
323
323
  - **Type:** M4L Audio Effect
324
- - **Load via:** `find_and_load_device("M4L_Confetti Resonator")`
324
+ - **Load via:** `find_and_load_device(track_index, "M4L_Confetti Resonator")`
325
325
  - **What it does:** Onset-triggered oscillator bank with pitch detection. Detects incoming transients, analyzes pitch, then triggers a bank of oscillators with randomized partial frequencies that fade out over time. Creates harmonic ghosts from percussive input.
326
326
  - **Key parameters:** Onset sensitivity, partial count, frequency randomization, decay time, pitch tracking, mix
327
327
  - **Reach for this when:** you need harmonic resonance from percussion, pitched ghost tones from transients, or oscillator-bank effects driven by audio input
@@ -331,7 +331,7 @@
331
331
  ### Confetti: Skipper
332
332
 
333
333
  - **Type:** M4L Audio Effect
334
- - **Load via:** `find_and_load_device("M4L_Confetti Skipper")`
334
+ - **Load via:** `find_and_load_device(track_index, "M4L_Confetti Skipper")`
335
335
  - **What it does:** Models a skipping CD player. Attack detection causes the virtual disc to skip, creating buffer-repeat and stutter effects. Multiple Sony Discman models available with different skip characteristics. Nostalgia as an effect.
336
336
  - **Key parameters:** Discman model, skip sensitivity, repeat length, attack threshold, mix
337
337
  - **Reach for this when:** you need CD-skip glitch effects, nostalgic digital artifacts, or onset-triggered buffer stutters
@@ -341,7 +341,7 @@
341
341
  ### Confetti: Tremolo
342
342
 
343
343
  - **Type:** M4L Audio Effect
344
- - **Load via:** `find_and_load_device("M4L_Confetti Tremolo")`
344
+ - **Load via:** `find_and_load_device(track_index, "M4L_Confetti Tremolo")`
345
345
  - **What it does:** VCA and low-pass gate (LPG) based tremolo with waveshaping LFOs. Optional stereo panning mode. More organic and characterful than simple volume modulation due to LPG filtering behavior.
346
346
  - **Key parameters:** Rate, depth, LFO waveshape, VCA/LPG mode, stereo pan mode, mix
347
347
  - **Reach for this when:** you need LPG-colored tremolo, waveshaped modulation, or organic volume/filter movement
@@ -351,7 +351,7 @@
351
351
  ### Confetti: Wavefolder
352
352
 
353
353
  - **Type:** M4L Audio Effect
354
- - **Load via:** `find_and_load_device("M4L_Confetti Wavefolder")`
354
+ - **Load via:** `find_and_load_device(track_index, "M4L_Confetti Wavefolder")`
355
355
  - **What it does:** Multiple wavefolder algorithms inspired by Buchla, Madrona Labs Aalto, and Whimsical Raps Cold Mac, combined with sigmoid saturation. Creates complex harmonic overtones by folding waveforms back on themselves. Rich, aggressive, and unpredictable.
356
356
  - **Key parameters:** Algorithm (Buchla / Aalto / Cold Mac), fold amount, symmetry, saturation, mix
357
357
  - **Reach for this when:** you need complex harmonic generation, wavefolding distortion, or aggressive timbral transformation
@@ -367,7 +367,7 @@
367
367
  ### blubb 0.0
368
368
 
369
369
  - **Type:** M4L Instrument
370
- - **Load via:** `find_and_load_device("blubb")`
370
+ - **Load via:** `find_and_load_device(track_index, "blubb")`
371
371
  - **What it does:** Generates bubbly water-drop sounds and circular oscilloscope visuals. Uses sin/cos equations to draw circles; applies pitch and volume envelopes for short rising-frequency tones; jumps randomly between positions. Includes automatic sequencer.
372
372
  - **Key parameters:** Pitch envelope, volume envelope, position randomization, sequencer rate
373
373
  - **Reach for this when:** you need bubbly/water synthesis, circular oscilloscope patterns, or generative percussive textures
@@ -377,7 +377,7 @@
377
377
  ### boing 1.1
378
378
 
379
379
  - **Type:** M4L Instrument
380
- - **Load via:** `find_and_load_device("boing")`
380
+ - **Load via:** `find_and_load_device(track_index, "boing")`
381
381
  - **What it does:** Renders bouncing-ball animation on oscilloscope with corresponding audio. Draws horizontal circles, moves them vertically to form spirals, adjusts width for ball appearance. Envelopes and LFOs control spiral density, rotation, and 3D depth.
382
382
  - **Key parameters:** Bounce height, spiral density, rotation speed, 3D depth, LFO rate
383
383
  - **Reach for this when:** you need bouncy percussive synthesis, spiral oscilloscope visuals, or physics-inspired sound generation
@@ -387,7 +387,7 @@
387
387
  ### butterfly 0.1
388
388
 
389
389
  - **Type:** M4L Instrument
390
- - **Load via:** `find_and_load_device("butterfly")`
390
+ - **Load via:** `find_and_load_device(track_index, "butterfly")`
391
391
  - **What it does:** Generates butterfly-shaped patterns on oscilloscope based on the transcendental butterfly curve equation. Blends three different mathematical shapes together for visual and sonic complexity.
392
392
  - **Key parameters:** Shape blend (3 shapes), curve parameters, morphing speed
393
393
  - **Reach for this when:** you need mathematical curve synthesis, organic visual patterns, or transcendental function-based sound design
@@ -397,7 +397,7 @@
397
397
  ### fractal spiral 1.8
398
398
 
399
399
  - **Type:** M4L Instrument
400
- - **Load via:** `find_and_load_device("fractal spiral")`
400
+ - **Load via:** `find_and_load_device(track_index, "fractal spiral")`
401
401
  - **What it does:** Creates fractal spiral patterns with continuous zoom capability. Draws circles moved along spiral lines with seamless zooming by blending spiral stages. Controls for spiral density, width, rotation, zoom speed, and 3D depth via envelopes and LFOs. The most versatile and visually complex of the oscilloscope instruments.
402
402
  - **Key parameters:** Spiral density, width, rotation, zoom speed, 3D depth, envelope/LFO assignments
403
403
  - **Reach for this when:** you need fractal visual synthesis, zooming spiral patterns, or complex evolving oscilloscope visuals
@@ -407,7 +407,7 @@
407
407
  ### Kepler-Bouwkamp 0.4
408
408
 
409
409
  - **Type:** M4L Instrument
410
- - **Load via:** `find_and_load_device("Kepler-Bouwkamp")`
410
+ - **Load via:** `find_and_load_device(track_index, "Kepler-Bouwkamp")`
411
411
  - **What it does:** Renders interlocking polygons and inscribed circles based on the Kepler-Bouwkamp constant (nested polygon geometry). Draws and rotates lines to form polygons with circles inserted between them. Adjustable shape, polygon count, direction, and rotation.
412
412
  - **Key parameters:** Polygon count, rotation speed, direction, shape morphing, nesting depth
413
413
  - **Reach for this when:** you need geometric oscilloscope patterns, mathematical polygon synthesis, or sacred-geometry-inspired visuals
@@ -417,7 +417,7 @@
417
417
  ### line horizon 0.1
418
418
 
419
419
  - **Type:** M4L Instrument
420
- - **Load via:** `find_and_load_device("line horizon")`
420
+ - **Load via:** `find_and_load_device(track_index, "line horizon")`
421
421
  - **What it does:** Displays horizontal line arrays creating perspective depth effect with Minecraft-style sunrise visuals. Lines compress near zero for perspective illusion. Creates circle/square shapes in center with bow and squeeze distribution functions for line spacing.
422
422
  - **Key parameters:** Line count, perspective depth, beat sync, center shape, bow/squeeze distribution
423
423
  - **Reach for this when:** you need horizon/landscape oscilloscope visuals, perspective-based synthesis, or beat-synced visual patterns
@@ -427,7 +427,7 @@
427
427
  ### mushrooms 0.3
428
428
 
429
429
  - **Type:** M4L Instrument
430
- - **Load via:** `find_and_load_device("mushrooms")`
430
+ - **Load via:** `find_and_load_device(track_index, "mushrooms")`
431
431
  - **What it does:** Draws mushroom shapes on oscilloscope via sin/cos circle generation, ellipses through unequal channel volumes, spirals through vertical movement. Width modulation shapes stems and heads. Includes rotation and bending controls.
432
432
  - **Key parameters:** Stem width, head size, rotation, bending, channel volume ratio
433
433
  - **Reach for this when:** you need organic mushroom-shaped oscilloscope visuals, or creative stereo-field synthesis
@@ -437,7 +437,7 @@
437
437
  ### Nyquist-Shannon 0.1
438
438
 
439
439
  - **Type:** M4L Instrument
440
- - **Load via:** `find_and_load_device("Nyquist-Shannon")`
440
+ - **Load via:** `find_and_load_device(track_index, "Nyquist-Shannon")`
441
441
  - **What it does:** Educational tool demonstrating sampling rate, aliasing effects, and signal reconstruction on oscilloscope. Visualizes sine waves with sampling point indicators, includes phase shift control, demonstrates aliasing artifacts. Primarily instructional.
442
442
  - **Key parameters:** Sampling rate, frequency, phase shift, reconstruction display
443
443
  - **Reach for this when:** you need aliasing demonstration, sampling theory visualization, or educational oscilloscope content
@@ -447,7 +447,7 @@
447
447
  ### Oscilloscope 2.0
448
448
 
449
449
  - **Type:** M4L Audio Effect
450
- - **Load via:** `find_and_load_device("Oscilloscope 2.0")`
450
+ - **Load via:** `find_and_load_device(track_index, "Oscilloscope 2.0")`
451
451
  - **What it does:** Lissajous pattern oscilloscope visualization using stereo audio input. Routes left channel to horizontal deflection, right channel to vertical. Multiple drawing modes and color options. This is a visualizer/monitor, not a synthesizer -- put it at the end of a chain to see what your audio looks like on a scope.
452
452
  - **Key parameters:** Drawing mode, color, persistence, zoom, trigger
453
453
  - **Reach for this when:** you need to monitor oscilloscope patterns from other devices, visualize stereo audio as Lissajous figures, or verify XY output of other oscilloscope instruments
@@ -457,7 +457,7 @@
457
457
  ### radar 1.3
458
458
 
459
459
  - **Type:** M4L Instrument
460
- - **Load via:** `find_and_load_device("radar")`
460
+ - **Load via:** `find_and_load_device(track_index, "radar")`
461
461
  - **What it does:** Versatile pattern generator for spirals, tunnels, radar screens, and percussion synthesis. Draws circles along lines forming spirals with phasing for direction/shape variation. Includes 3D rotation, bending, fading effects. Multiple trigger modes for varied sound synthesis. The most sonically useful oscilloscope instrument due to extensive preset library.
462
462
  - **Key parameters:** Pattern type, spiral phase, 3D rotation, bending, fade, trigger mode, preset selection
463
463
  - **Reach for this when:** you need versatile oscilloscope synthesis, radar/tunnel visuals, or percussion synthesis with visual feedback
@@ -467,7 +467,7 @@
467
467
  ### sincos 4001
468
468
 
469
469
  - **Type:** M4L Instrument
470
- - **Load via:** `find_and_load_device("sincos 4001")`
470
+ - **Load via:** `find_and_load_device(track_index, "sincos 4001")`
471
471
  - **What it does:** Harmonic Lissajous pattern generator through additive synthesis. Creates circles with x=sin(t), y=cos(t) and combines up to 8 harmonic frequencies (each multiplied by harmonic number). Includes volume randomization, fine frequency control, and pattern animation. Produces the most complex and musically rich oscilloscope patterns.
472
472
  - **Key parameters:** Harmonic count (up to 8), harmonic levels, fine frequency, volume randomization, animation speed
473
473
  - **Reach for this when:** you need additive oscilloscope synthesis, complex Lissajous patterns, or harmonically rich visual-audio generation
@@ -483,7 +483,7 @@
483
483
  ### SpectroGlitch
484
484
 
485
485
  - **Type:** M4L Audio Effect
486
- - **Load via:** `find_and_load_device("SpectroGlitch")`
486
+ - **Load via:** `find_and_load_device(track_index, "SpectroGlitch")`
487
487
  - **What it does:** Randomly suppresses or inverts the magnitude or phase of the incoming signal's spectrum. FFT-based destruction that operates on individual frequency bins, creating spectral holes, phase inversions, and unpredictable timbral mutations. The most immediately destructive spectral effect in the collection.
488
488
  - **Key parameters:** Magnitude suppression probability, phase inversion probability, FFT size, randomization rate, mix
489
489
  - **Reach for this when:** you need spectral destruction, random frequency-bin manipulation, glitchy timbral mutation, or unpredictable spectral effects
@@ -494,7 +494,7 @@
494
494
  ### SpectroSynth
495
495
 
496
496
  - **Type:** M4L Instrument
497
- - **Load via:** `find_and_load_device("SpectroSynth")`
497
+ - **Load via:** `find_and_load_device(track_index, "SpectroSynth")`
498
498
  - **What it does:** Compact polyphonic synthesizer that creates sounds from a wide and complex spectral timbre. Generates dense spectral content ideal for rich atmospheres, drones, and evolving pads. Designed for abstract/ambient sound creation.
499
499
  - **Key parameters:** Spectral complexity, timbre control, polyphony, envelope, filter, mix
500
500
  - **Reach for this when:** you need dense spectral atmospheres, abstract polyphonic pads, or complex-timbre synthesis for ambient/experimental music
@@ -504,7 +504,7 @@
504
504
  ### BrokenDelays
505
505
 
506
506
  - **Type:** M4L Audio Effect
507
- - **Load via:** `find_and_load_device("BrokenDelays")`
507
+ - **Load via:** `find_and_load_device(track_index, "BrokenDelays")`
508
508
  - **What it does:** Delay effect featuring up to 16 delay lines that abruptly change their lengths and playback probability on rhythmic intervals. Creates never-repeating bizarre delay patterns from mundane audio input. Each delay line has independent chance-to-play, creating probabilistic rhythmic delay textures.
509
509
  - **Key parameters:** Delay line count (up to 16), length range, change rate (rhythmic), probability per line, feedback, mix
510
510
  - **Reach for this when:** you need chaotic multi-delay textures, probabilistic rhythmic delays, never-repeating echo patterns, or controlled delay-line randomization
@@ -515,7 +515,7 @@
515
515
  ### Disturbances
516
516
 
517
517
  - **Type:** M4L Audio Effect / Generator
518
- - **Load via:** `find_and_load_device("Disturbances")`
518
+ - **Load via:** `find_and_load_device(track_index, "Disturbances")`
519
519
  - **What it does:** Generator of stutters and noise interference applied to incoming audio. Injects controlled disruptions -- buffer stutters, noise bursts, signal interruptions -- into the audio stream. Creates the sound of a malfunctioning system, broken transmission, or corrupted playback.
520
520
  - **Key parameters:** Stutter rate, noise intensity, interference type, probability, mix
521
521
  - **Reach for this when:** you need transmission-error aesthetics, controlled signal disruption, noise interference, or stutter generation layered onto existing audio
@@ -543,7 +543,7 @@
543
543
  ### GrainTable v0.6.1
544
544
 
545
545
  - **Type:** M4L Instrument
546
- - **Load via:** `find_and_load_device("GrainTable_AoW")`
546
+ - **Load via:** `find_and_load_device(track_index, "GrainTable_AoW")`
547
547
  - **What it does:** Recreates the Access Virus TI/TI2 graintable synthesis mode in Max for Live. Uses wavetable carrier modulated by slave wavetables with pulse-width compression for sync-like sounds. Historically significant in psytrance production. Supports up to 256 wavetable files per folder, drag-and-drop loading, and custom waveform drawing.
548
548
  - **Key parameters:**
549
549
  - **Slave Wavetable:** wavetable file/folder, wavetable size, wave number, note-dependent randomization, two alternating oscillators with independent pitch detuning
@@ -559,7 +559,7 @@
559
559
  ### AUTOGLITCH v1.1
560
560
 
561
561
  - **Type:** M4L Audio Effect
562
- - **Load via:** `find_and_load_device("AUTOGLITCH_AoW")`
562
+ - **Load via:** `find_and_load_device(track_index, "AUTOGLITCH_AoW")`
563
563
  - **What it does:** Random multi-effect glitch generator built around a step sequencer engine (borrowed from AutoPlay). The sequencer controls not just volume but an entire chain of effects. At its heart is a stutter engine that decomposes each step into up to 32 sub-glitches played forward or backward at up to 8x speed. After stuttering: repanning, bitcrush/downsample, pitch/frequency shifting (±48 semitones), comb filter, multimode filter, and a delayed feedback loop that can feed back into 3 different sections.
564
564
  - **Key parameters:**
565
565
  - **Step Sequencer:** step count, step length, random parameter section per step
@@ -580,7 +580,7 @@
580
580
  ### AUTOGRID4 v1.8
581
581
 
582
582
  - **Type:** M4L Audio Effect
583
- - **Load via:** `find_and_load_device("AUTOGRID4_AoW")`
583
+ - **Load via:** `find_and_load_device(track_index, "AUTOGRID4_AoW")`
584
584
  - **What it does:** Random grid pattern generator that creates stutter patterns from up to 4 incoming audio tracks mixed with the current track. Generates complex FM-style patterns, sequenced arpeggios, and basslines from multiple sources, ensuring sounds never overlap. Used by major psytrance artists (Tristan, Jumpstreet).
585
585
  - **Key parameters:**
586
586
  - **Input Sources:** up to 4 incoming tracks (AutoGrid8 variant handles 8)
@@ -604,7 +604,7 @@
604
604
  ### Grain Forest (Dillon Bastan / Isotonik)
605
605
 
606
606
  - **Type:** M4L Audio Effect / Instrument
607
- - **Load via:** `find_and_load_device("Grain Forest")`
607
+ - **Load via:** `find_and_load_device(track_index, "Grain Forest")`
608
608
  - **What it does:** Granular synthesizer/effect driven by a simulated forest ecosystem. Each "tree" is an independent grain/voice with its own DNA that modulates playback and FX parameters. Trees cross-pollinate, mix DNA, and create new seeds with optional mutations, causing the sound to evolve organically over time. Supports up to 4 audio source mixes (Soil) that trees sample from.
609
609
  - **Key parameters:**
610
610
  - **Soil (Audio Sources):** up to 4 mixes from: direct audio input, routed track audio, dropped audio file (repitchable)
@@ -623,7 +623,7 @@
623
623
  ### Particle-Reverb 7.0 (Kentaro Suzuki)
624
624
 
625
625
  - **Type:** M4L Audio Effect (also available as VST3/AU)
626
- - **Load via:** `find_and_load_device("Particle-Reverb")`
626
+ - **Load via:** `find_and_load_device(track_index, "Particle-Reverb")`
627
627
  - **What it does:** Granular network reverb built on 4 discrete granular units with distinct characteristics. Operates entirely in time-domain using granular synthesis (no FFT or conventional delay trains). Internal feedback logic tracks size and pitch adjustments with near-instantaneous response. Four units mapped to dual pitch-shift coordinates generate complex non-linear resonance. Includes 4 built-in modulator modules.
628
628
  - **Key parameters:**
629
629
  - **4 Granular Units:** each with independent size, pitch, density, character
@@ -644,7 +644,7 @@
644
644
  ### GrainFreeze 2.0 (Robert Henke / Monolake)
645
645
 
646
646
  - **Type:** M4L Audio Effect
647
- - **Load via:** `find_and_load_device("GrainFreeze")`
647
+ - **Load via:** `find_and_load_device(track_index, "GrainFreeze")`
648
648
  - **What it does:** Granular audio freezer that captures audio in real time and scrubs through the captured buffer using granular playback. Press "Ready" to capture a 3-second buffer, then manipulate position, grain size, and other parameters to create textures from rhythmic deconstruction to massive static sound smears. CPU-efficient, simple interface, hackable.
649
649
  - **Key parameters:**
650
650
  - **Ready** (toggle) → arm/capture audio buffer (3-second default)
@@ -12,9 +12,9 @@ Ableton's browser is the source for all devices, presets, and samples. The `sear
12
12
  |----------|---------|-------------------|
13
13
  | **Sounds** | Instrument presets organized by character (Bass, Keys, Lead, Pad, etc.) | `search_browser("warm pad")` |
14
14
  | **Drums** | Drum Rack presets (kits, single hits, percussion) | `search_browser("808 kit")` |
15
- | **Instruments** | Raw instruments without presets (Analog, Wavetable, Operator, etc.) | `find_and_load_device("Wavetable")` |
16
- | **Audio Effects** | All audio effects (Compressor, Reverb, EQ Eight, etc.) | `find_and_load_device("Compressor")` |
17
- | **MIDI Effects** | MIDI processors (Arpeggiator, Chord, Scale, etc.) | `find_and_load_device("Arpeggiator")` |
15
+ | **Instruments** | Raw instruments without presets (Analog, Wavetable, Operator, etc.) | `find_and_load_device(track_index, "Wavetable")` |
16
+ | **Audio Effects** | All audio effects (Compressor, Reverb, EQ Eight, etc.) | `find_and_load_device(track_index, "Compressor")` |
17
+ | **MIDI Effects** | MIDI processors (Arpeggiator, Chord, Scale, etc.) | `find_and_load_device(track_index, "Arpeggiator")` |
18
18
  | **Max for Live** | M4L instruments, effects, and tools | `search_browser("LFO max")` |
19
19
  | **Plug-ins** | VST/AU plugins installed on the system | `search_browser("Serum")` |
20
20
  | **Clips** | Pre-made clips (MIDI patterns, audio loops) | `search_browser("house beat")` |
@@ -1,6 +1,6 @@
1
- # LivePilot v1.9.21 — Architecture & Tool Reference
1
+ # LivePilot v1.9.23 — Architecture & Tool Reference
2
2
 
3
- Agentic production system for Ableton Live 12. 237 tools across 32 domains. Device atlas (280+ devices), spectral perception (M4L analyzer), technique memory, automation intelligence (16 curve types, 15 recipes), music theory (Krumhansl-Schmuckler, species counterpoint), generative algorithms (Euclidean rhythm, tintinnabuli, phase shift, additive process), neo-Riemannian harmony (PRL transforms, Tonnetz), MIDI file I/O.
3
+ Agentic production system for Ableton Live 12. 293 tools across 39 domains. Device atlas (280+ devices), spectral perception (M4L analyzer), technique memory, automation intelligence (16 curve types, 15 recipes), music theory (Krumhansl-Schmuckler, species counterpoint), generative algorithms (Euclidean rhythm, tintinnabuli, phase shift, additive process), neo-Riemannian harmony (PRL transforms, Tonnetz), MIDI file I/O.
4
4
 
5
5
  ## Architecture
6
6
 
@@ -32,7 +32,7 @@ A flat tool list lets the AI press buttons. LivePilot's three layers give it con
32
32
 
33
33
  This turns "set EQ band 3 to -4 dB" into "cut 400 Hz by 4 dB, then read the spectrum to confirm the mud is actually reduced."
34
34
 
35
- ## The 236 Tools — What Each One Does
35
+ ## The 293 Tools — What Each One Does
36
36
 
37
37
  ### Transport (12) — Playback, tempo, global state, diagnostics
38
38
 
@@ -202,7 +202,7 @@ This turns "set EQ band 3 to -4 dB" into "cut 400 Hz by 4 dB, then read the spec
202
202
  | `memory_update` | Updates name, tags, or qualities | `technique_id`, `name`, `tags`, `qualities` |
203
203
  | `memory_delete` | Removes technique (backs up first) | `technique_id` |
204
204
 
205
- ### Analyzer (29) — Real-time DSP analysis (requires LivePilot Analyzer M4L device on master track)
205
+ ### Analyzer (30) — Real-time DSP analysis (requires LivePilot Analyzer M4L device on master track)
206
206
 
207
207
  | Tool | What it does | Key params |
208
208
  |------|-------------|------------|
@@ -13,9 +13,13 @@ Every production move follows this loop regardless of which engine initiated it.
13
13
 
14
14
  ### Step 1 — Compile Goal Vector
15
15
 
16
- Call `compile_goal_vector(goal, mode)` to establish what you are trying to achieve.
16
+ Call `compile_goal_vector(request_text, targets, protect, mode, aggression)` to establish what you are trying to achieve.
17
17
 
18
- **Goal**: a plain-text description of the intended improvement (e.g., "reduce masking between bass and kick in 100-200 Hz range").
18
+ **request_text**: a plain-text description of the intended improvement (e.g., "reduce masking between bass and kick in 100-200 Hz range").
19
+
20
+ **targets**: dict of dimension → weight (e.g., `{"punch": 0.4, "weight": 0.3, "clarity": 0.3}`). Weights are normalized to sum to 1.0. Valid dimensions: energy, punch, weight, density, brightness, warmth, width, depth, motion, contrast, clarity, cohesion, groove, tension, novelty, polish, emotion.
21
+
22
+ **protect**: dict of dimension → minimum threshold (e.g., `{"clarity": 0.7}`). If a dimension drops below this value after a move, the move is undone.
19
23
 
20
24
  **Modes** control how aggressively you act:
21
25
 
@@ -70,10 +74,10 @@ Repeat the same measurements from Step 4. Use identical tool calls to ensure com
70
74
 
71
75
  Call the appropriate evaluator:
72
76
 
73
- - `evaluate_move(before_snapshot, after_snapshot, goal)` — universal evaluator, works for any engine
74
- - `evaluate_mix_move(before_snapshot, after_snapshot, targets, protect)` — mix-specific with protection constraints
75
- - `evaluate_composition_move(before_snapshot, after_snapshot, goal)` — composition-specific
76
- - `evaluate_with_fabric(before_snapshot, after_snapshot, goal)` — uses memory fabric for taste-aware judgment
77
+ - `evaluate_move(goal_vector, before_snapshot, after_snapshot)` — universal evaluator. `goal_vector` is the dict returned by `compile_goal_vector`. Snapshots should contain `spectrum` (8-band dict), `rms`, `peak`.
78
+ - `evaluate_mix_move(before_snapshot, after_snapshot, targets, protect)` — mix-specific with protection constraints. `targets` and `protect` are dicts of dimension → weight/threshold.
79
+ - `evaluate_composition_move(before_snapshot, after_snapshot, goal_vector)` — composition-specific
80
+ - `evaluate_with_fabric(engine, before_snapshot, after_snapshot, targets, protect)` — routes to the appropriate engine-specific evaluator. `engine` must be one of: `"sonic"`, `"composition"`, `"mix"`, `"transition"`, `"translation"`.
77
81
 
78
82
  ### Step 8 — Read the Verdict
79
83
 
@@ -131,8 +135,8 @@ Use the ledger to avoid repeating failed approaches. If a move type has been und
131
135
  Successful moves can be promoted to persistent memory for future sessions.
132
136
 
133
137
  - `get_promotion_candidates` — list moves from this session that scored > 0.7 and are eligible for saving
134
- - `memory_learn(type, data)` — save a technique to memory (mix_template, sound_design, composition, etc.)
135
- - `record_anti_preference(description)` — record something the user explicitly rejected, so it is never suggested again
138
+ - `memory_learn(name, type, qualities, payload, tags)` — save a technique to memory. `type` must be one of: `beat_pattern`, `device_chain`, `mix_template`, `browser_pin`, `preference`. `qualities` must include a `summary` field. `payload` contains the technique data.
139
+ - `record_anti_preference(dimension, direction)` — record something the user explicitly rejected. `dimension` is the quality axis (e.g., "brightness", "width"), `direction` must be `"increase"` or `"decrease"`. This ensures the rejected direction is never suggested again.
136
140
 
137
141
  ### Promotion Rules
138
142