livepilot 1.17.1 → 1.17.3
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.
- package/CHANGELOG.md +183 -0
- package/README.md +8 -7
- package/m4l_device/BUILD_GUIDE.md +24 -20
- package/m4l_device/LivePilot_Analyzer.amxd +0 -0
- package/m4l_device/livepilot_bridge.js +1 -1
- package/mcp_server/__init__.py +1 -1
- package/mcp_server/m4l_bridge.py +2 -1
- package/mcp_server/preview_studio/engine.py +85 -11
- package/mcp_server/preview_studio/models.py +8 -0
- package/mcp_server/preview_studio/tools.py +107 -51
- package/mcp_server/runtime/capability_state.py +18 -0
- package/mcp_server/runtime/degradation.py +62 -0
- package/mcp_server/runtime/tools.py +61 -4
- package/mcp_server/song_brain/tools.py +23 -0
- package/mcp_server/synthesis_brain/timbre.py +14 -8
- package/mcp_server/tools/_agent_os_engine/__init__.py +10 -0
- package/mcp_server/tools/_agent_os_engine/iteration.py +481 -0
- package/mcp_server/tools/agent_os.py +194 -3
- package/mcp_server/tools/analyzer.py +19 -6
- package/package.json +2 -2
- package/remote_script/LivePilot/__init__.py +1 -1
- package/requirements.txt +5 -5
- package/server.json +3 -3
|
@@ -214,11 +214,24 @@ async def get_master_spectrum(
|
|
|
214
214
|
samples: int = 0,
|
|
215
215
|
sub_detail: bool = False,
|
|
216
216
|
) -> dict:
|
|
217
|
-
"""Get
|
|
218
|
-
|
|
219
|
-
Returns band energies
|
|
220
|
-
|
|
221
|
-
|
|
217
|
+
"""Get 9-band frequency analysis of the master bus.
|
|
218
|
+
|
|
219
|
+
Returns band energies (fffb~ center frequencies shown in parens):
|
|
220
|
+
sub_low 20-60 Hz (~35 Hz center) — kick fundamentals, Villalobos subs
|
|
221
|
+
sub 60-120 Hz (~85 Hz) — 808s, sub-bass body
|
|
222
|
+
low 120-250 Hz (~175 Hz) — bass body, warmth
|
|
223
|
+
low_mid 250-500 Hz (~350 Hz) — mud zone, male vocal lows
|
|
224
|
+
mid 500-1 kHz (~700 Hz) — vocal presence, snare body
|
|
225
|
+
high_mid 1-2 kHz (~1.4 kHz) — consonants, pick attack
|
|
226
|
+
high 2-4 kHz (~2.8 kHz) — presence, vocal intelligibility
|
|
227
|
+
presence 4-8 kHz (~5.6 kHz) — cymbal definition, air of breath
|
|
228
|
+
air 8-20 kHz (~12 kHz) — shimmer, sparkle
|
|
229
|
+
Values 0.0-1.0.
|
|
230
|
+
|
|
231
|
+
Older .amxd builds (pre-v1.16) emit the legacy 8-band layout without the
|
|
232
|
+
explicit `sub_low` split — the server auto-detects band count from the OSC
|
|
233
|
+
payload and picks the right name set. Re-freeze the Max device to get the
|
|
234
|
+
9-band resolution.
|
|
222
235
|
|
|
223
236
|
Also returns detected key/scale if enough audio has been analyzed.
|
|
224
237
|
Requires LivePilot Analyzer on master track.
|
|
@@ -242,7 +255,7 @@ async def get_master_spectrum(
|
|
|
242
255
|
Pass `sub_detail=True` to attach a `sub_detail` dict with three
|
|
243
256
|
finer buckets: `sub_deep` (20-45 Hz), `sub_mid` (45-60 Hz),
|
|
244
257
|
`sub_high` (60-80 Hz). Derived from the FluCoMa mel spectrum
|
|
245
|
-
(40 bands) rather than the
|
|
258
|
+
(40 bands) rather than the 9-band cache, so it requires FluCoMa
|
|
246
259
|
to be active. When FluCoMa is unavailable, sub_detail is omitted
|
|
247
260
|
with a `sub_detail_warning` field explaining why.
|
|
248
261
|
"""
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "livepilot",
|
|
3
|
-
"version": "1.17.
|
|
3
|
+
"version": "1.17.3",
|
|
4
4
|
"mcpName": "io.github.dreamrec/livepilot",
|
|
5
|
-
"description": "Agentic production system for Ableton Live 12 —
|
|
5
|
+
"description": "Agentic production system for Ableton Live 12 — 427 tools, 52 domains. Device atlas (1305 devices), sample engine (Splice + browser + filesystem), auto-composition, spectral perception, technique memory, creative intelligence (12 engines)",
|
|
6
6
|
"author": "Pilot Studio",
|
|
7
7
|
"license": "BSL-1.1",
|
|
8
8
|
"type": "commonjs",
|
|
@@ -5,7 +5,7 @@ Entry point for the ControlSurface. Ableton calls create_instance(c_instance)
|
|
|
5
5
|
when this script is selected in Preferences > Link, Tempo & MIDI.
|
|
6
6
|
"""
|
|
7
7
|
|
|
8
|
-
__version__ = "1.17.
|
|
8
|
+
__version__ = "1.17.3"
|
|
9
9
|
|
|
10
10
|
from _Framework.ControlSurface import ControlSurface
|
|
11
11
|
from . import router
|
package/requirements.txt
CHANGED
|
@@ -2,18 +2,18 @@
|
|
|
2
2
|
numpy>=1.24.0
|
|
3
3
|
fastmcp>=3.0.0,<3.3.0 # pinned upper bound — _get_all_tools() accesses private internals
|
|
4
4
|
midiutil>=1.2.1
|
|
5
|
-
pretty_midi>=0.2.
|
|
5
|
+
pretty_midi>=0.2.11
|
|
6
6
|
# v1.8 Perception Layer (offline analysis)
|
|
7
|
-
pyloudnorm>=0.
|
|
8
|
-
soundfile>=0.
|
|
9
|
-
scipy>=1.
|
|
7
|
+
pyloudnorm>=0.2.0
|
|
8
|
+
soundfile>=0.13.1
|
|
9
|
+
scipy>=1.17.1
|
|
10
10
|
mutagen>=1.47.0
|
|
11
11
|
# v1.10.5 Splice online catalog integration — required, not optional.
|
|
12
12
|
# Without these, SpliceGRPCClient silently disables itself and search_samples
|
|
13
13
|
# falls back to the SQLite sounds.db which only returns locally downloaded
|
|
14
14
|
# samples (see docs/2026-04-14-bugs-discovered.md — P0-2).
|
|
15
15
|
grpcio>=1.60.0
|
|
16
|
-
protobuf>=
|
|
16
|
+
protobuf>=7.34.1
|
|
17
17
|
|
|
18
18
|
# Development / testing (not required for runtime)
|
|
19
19
|
# pip install pytest pytest-asyncio
|
package/server.json
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
|
|
3
3
|
"name": "io.github.dreamrec/livepilot",
|
|
4
|
-
"description": "
|
|
4
|
+
"description": "427-tool agentic MCP production system for Ableton Live 12 — device atlas, sample engine, composer",
|
|
5
5
|
"repository": {
|
|
6
6
|
"url": "https://github.com/dreamrec/LivePilot",
|
|
7
7
|
"source": "github"
|
|
8
8
|
},
|
|
9
|
-
"version": "1.17.
|
|
9
|
+
"version": "1.17.3",
|
|
10
10
|
"packages": [
|
|
11
11
|
{
|
|
12
12
|
"registryType": "npm",
|
|
13
13
|
"identifier": "livepilot",
|
|
14
|
-
"version": "1.17.
|
|
14
|
+
"version": "1.17.3",
|
|
15
15
|
"transport": {
|
|
16
16
|
"type": "stdio"
|
|
17
17
|
}
|