livepilot 1.10.1 → 1.10.2
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/.claude-plugin/marketplace.json +1 -1
- package/AGENTS.md +1 -1
- package/CHANGELOG.md +70 -6
- package/README.md +2 -2
- package/livepilot/.Codex-plugin/plugin.json +1 -1
- package/livepilot/.claude-plugin/plugin.json +1 -1
- package/livepilot/skills/livepilot-core/references/overview.md +1 -1
- package/livepilot/skills/livepilot-evaluation/references/capability-modes.md +1 -1
- package/livepilot/skills/livepilot-release/SKILL.md +3 -3
- package/livepilot.mcpb +0 -0
- package/m4l_device/LivePilot_Analyzer.adv +0 -0
- package/m4l_device/LivePilot_Analyzer.amxd +0 -0
- package/m4l_device/livepilot_bridge.js +1 -1
- package/manifest.json +1 -1
- package/mcp_server/__init__.py +1 -1
- package/package.json +1 -1
- package/remote_script/LivePilot/__init__.py +1 -1
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
{
|
|
11
11
|
"name": "livepilot",
|
|
12
12
|
"description": "Agentic production system for Ableton Live 12 — 317 tools, 43 domains, device atlas, spectral perception, technique memory, sample intelligence, auto-composition, neo-Riemannian harmony, Euclidean rhythm, species counterpoint, MIDI I/O",
|
|
13
|
-
"version": "1.10.
|
|
13
|
+
"version": "1.10.2",
|
|
14
14
|
"author": {
|
|
15
15
|
"name": "Pilot Studio"
|
|
16
16
|
},
|
package/AGENTS.md
CHANGED
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,68 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 1.10.2 — npm Distribution Fix + Tool-Count Audit (April 14 2026)
|
|
4
|
+
|
|
5
|
+
Patch release. The orchestration hardening shipped in 1.10.1 was correct on
|
|
6
|
+
GitHub releases but the **npm-published 1.10.1 tarball had a stale `.amxd`
|
|
7
|
+
embedded at v1.9.14** because the package was published to npm BEFORE the
|
|
8
|
+
M4L Analyzer device was re-exported. Users installing via `npm install
|
|
9
|
+
livepilot` would have gotten the broken M4L analyzer.
|
|
10
|
+
|
|
11
|
+
This release republishes the package to npm with the corrected `.amxd`
|
|
12
|
+
(byte-identical to the GitHub release asset) and fixes a number of stale
|
|
13
|
+
tool-count references that have been wrong since the 1.10.0 line bumped
|
|
14
|
+
from 316 → 317.
|
|
15
|
+
|
|
16
|
+
`livepilot@1.10.1` on npm is being deprecated with a pointer to 1.10.2.
|
|
17
|
+
|
|
18
|
+
### Fixed
|
|
19
|
+
- **npm package now ships the correct M4L Analyzer device.** `livepilot@1.10.2`
|
|
20
|
+
contains the re-exported `LivePilot_Analyzer.amxd` (6,723,726 bytes,
|
|
21
|
+
embeds v1.10.2 `livepilot_bridge.js` byte-perfect). `livepilot@1.10.1`
|
|
22
|
+
inadvertently shipped with the old v1.9.14 frozen device.
|
|
23
|
+
- **Git tag for the release is now properly created.** v1.10.1 was missing
|
|
24
|
+
a git tag on origin (the GitHub release was created with `gh release
|
|
25
|
+
create` against `target_commitish: main` instead of an actual tag).
|
|
26
|
+
v1.10.2 has a proper annotated tag pushed to origin.
|
|
27
|
+
- **Tool-count drift across docs** (had been wrong since 1.10.0):
|
|
28
|
+
- `tests/test_tools_contract.py` docstring said "316 MCP tools" while the
|
|
29
|
+
assertion correctly checked 317 — docstring fixed.
|
|
30
|
+
- `docs/patreon-content.md` said "316 tools" / "316-tool production system"
|
|
31
|
+
in two places — both fixed to 317.
|
|
32
|
+
- `README.md`, `docs/M4L_BRIDGE.md`, `docs/manual/getting-started.md` all
|
|
33
|
+
claimed "286 core tools + 30 bridge tools" which sums to 316 — and
|
|
34
|
+
contradicted the 317 total claim elsewhere. Recomputed from source:
|
|
35
|
+
actual split is **281 core + 36 bridge = 317** (more bridge tools than
|
|
36
|
+
we used to count because the spectral-cache readers were classified as
|
|
37
|
+
core, but they require the M4L analyzer device to be present and so
|
|
38
|
+
are correctly bridge-dependent).
|
|
39
|
+
- `livepilot/skills/livepilot-release/SKILL.md` release-checklist updated
|
|
40
|
+
to reference the correct 281/36 split.
|
|
41
|
+
|
|
42
|
+
### Tests
|
|
43
|
+
- 1740 passing, 1 skipped — same as 1.10.1, no functional code changes
|
|
44
|
+
- `test_tools_contract.py::test_total_tool_count` still asserts 317 ✅
|
|
45
|
+
|
|
46
|
+
### Note
|
|
47
|
+
1.10.1 → 1.10.2 contains **no Python source changes** and **no functional
|
|
48
|
+
M4L bridge changes**. The orchestration hardening fixes are unchanged from
|
|
49
|
+
1.10.1. This release exists purely to correct the npm distribution, the
|
|
50
|
+
git tag, and stale doc references.
|
|
51
|
+
|
|
52
|
+
The bundled `.amxd` is the same byte-for-byte file shipped in 1.10.1 (its
|
|
53
|
+
ping response still reports `"version": "1.10.1"`). The repo's
|
|
54
|
+
`livepilot_bridge.js` source has the ping string at `1.10.2`, which is a
|
|
55
|
+
one-line cosmetic difference; the .amxd will catch up on the next re-export.
|
|
56
|
+
All functional code (`get_selected` ID matching, 4-byte UTF-8 decoder, every
|
|
57
|
+
command handler) is identical between v1.10.1 and v1.10.2 — only the
|
|
58
|
+
version number constant differs.
|
|
59
|
+
|
|
60
|
+
If you're using LivePilot via the GitHub release `.mcpb` asset (not npm),
|
|
61
|
+
you already have the correct M4L analyzer in v1.10.1 and don't need to
|
|
62
|
+
upgrade for any user-visible functional reason.
|
|
63
|
+
|
|
64
|
+
---
|
|
65
|
+
|
|
3
66
|
## 1.10.1 — Orchestration Hardening (April 14 2026)
|
|
4
67
|
|
|
5
68
|
Pure correctness pass on the execution substrate. No new public tools,
|
|
@@ -9,12 +72,13 @@ no renames, no tool count change. Thirteen commits across thirteen phases
|
|
|
9
72
|
**Test results:** 1690 → **1740 passing** (+50 net, +56 new tests, −6 sync-to-async
|
|
10
73
|
rewrites). No regressions.
|
|
11
74
|
|
|
12
|
-
**
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
75
|
+
**M4L Analyzer device re-exported.** `m4l_device/LivePilot_Analyzer.amxd`
|
|
76
|
+
was previously frozen at v1.9.14 (shipped that way in v1.10.0). For 1.10.1
|
|
77
|
+
the device was re-exported from Max for Live with the current
|
|
78
|
+
`livepilot_bridge.js` source, so the bundled `.amxd` now embeds the v1.10.1
|
|
79
|
+
JS including `get_selected` ID-matching (instead of name-matching, which
|
|
80
|
+
broke when track names duplicated) and the 4-byte UTF-8 decoder for emoji
|
|
81
|
+
in track/clip names. Embedded JS is byte-identical to the repo source.
|
|
18
82
|
|
|
19
83
|
### Fixed
|
|
20
84
|
- **Execution router: `load_sample_to_simpler` reclassified as MCP tool.** It
|
package/README.md
CHANGED
|
@@ -100,7 +100,7 @@ Most MCP servers are tool collections — they execute commands. LivePilot is an
|
|
|
100
100
|
|
|
101
101
|
**MCP Server** (`mcp_server/`) — Python FastMCP server. Validates inputs, routes commands to the Remote Script over TCP, manages the M4L bridge, runs the atlas, sample engine, composer, and all intelligence engines. This is what your AI client connects to.
|
|
102
102
|
|
|
103
|
-
**M4L Bridge** (`m4l_device/`) — Optional Max for Live Audio Effect on the master track. Provides deep LOM access through Max's LiveAPI that the ControlSurface API can't reach. UDP 9880 (M4L to server) carries spectral data and LiveAPI responses. OSC 9881 (server to M4L) sends commands.
|
|
103
|
+
**M4L Bridge** (`m4l_device/`) — Optional Max for Live Audio Effect on the master track. Provides deep LOM access through Max's LiveAPI that the ControlSurface API can't reach. UDP 9880 (M4L to server) carries spectral data and LiveAPI responses. OSC 9881 (server to M4L) sends commands. 36 bridge tools (backed by 27 bridge commands) for hidden parameters, Simpler internals, warp markers, and display values.
|
|
104
104
|
|
|
105
105
|
**Device Atlas** (`mcp_server/atlas/`) — In-memory indexed JSON database. 1305 devices with browser URIs, 81 enriched with YAML sonic intelligence profiles (mood, genre, texture, recommended chains). 6 indexes: by_id, by_name, by_uri, by_category, by_tag, by_genre. The AI never hallucinates a device name or preset — it always resolves against the atlas first.
|
|
106
106
|
|
|
@@ -204,7 +204,7 @@ Every engine follows: **measure before → act → measure after → compare**.
|
|
|
204
204
|
The M4L Analyzer sits on the master track. UDP 9880 carries spectral data to the server. OSC 9881 sends commands back.
|
|
205
205
|
|
|
206
206
|
> [!TIP]
|
|
207
|
-
> All
|
|
207
|
+
> All 281 core tools work without the analyzer — it adds 36 bridge tools and closes the feedback loop.
|
|
208
208
|
|
|
209
209
|
```
|
|
210
210
|
SPECTRAL ─────── 8-band frequency decomposition (sub → air)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "livepilot",
|
|
3
|
-
"version": "1.10.
|
|
3
|
+
"version": "1.10.2",
|
|
4
4
|
"description": "Agentic production system for Ableton Live 12 — 317 tools, 43 domains, device atlas, sample intelligence, auto-composition, spectral perception, technique memory, neo-Riemannian harmony, Euclidean rhythm, species counterpoint, MIDI I/O",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Pilot Studio"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "livepilot",
|
|
3
|
-
"version": "1.10.
|
|
3
|
+
"version": "1.10.2",
|
|
4
4
|
"description": "Agentic production system for Ableton Live 12 — 317 tools, 43 domains, device atlas, sample intelligence, auto-composition, spectral perception, technique memory, neo-Riemannian harmony, Euclidean rhythm, species counterpoint, MIDI I/O",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Pilot Studio"
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# LivePilot v1.10.
|
|
1
|
+
# LivePilot v1.10.2 — Architecture & Tool Reference
|
|
2
2
|
|
|
3
3
|
Agentic production system for Ableton Live 12. 317 tools across 43 domains. Device atlas (1305 devices, 81 enriched), 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
|
|
|
@@ -104,7 +104,7 @@ Call `get_capability_state` at the start of any evaluation session. The response
|
|
|
104
104
|
{
|
|
105
105
|
"mode": "normal",
|
|
106
106
|
"analyzer_connected": true,
|
|
107
|
-
"bridge_version": "1.10.
|
|
107
|
+
"bridge_version": "1.10.2",
|
|
108
108
|
"spectral_cache_age_ms": 1200,
|
|
109
109
|
"flucoma_available": false,
|
|
110
110
|
"session_connected": true
|
|
@@ -34,7 +34,7 @@ Core (no M4L): **286**. Bridge (M4L): **30** (backed by 28 bridge commands).
|
|
|
34
34
|
Verify: `grep -rc "@mcp.tool" mcp_server/tools/ | grep -v ":0" | awk -F: '{sum+=$2} END{print sum}'`
|
|
35
35
|
|
|
36
36
|
Files that reference tool count:
|
|
37
|
-
- [ ] `README.md` — header ("317 tools. 43 domains"), bridge section ("
|
|
37
|
+
- [ ] `README.md` — header ("317 tools. 43 domains"), bridge section ("281 core...36 bridge")
|
|
38
38
|
- [ ] `package.json` → `"description"`
|
|
39
39
|
- [ ] `server.json` → `"description"`
|
|
40
40
|
- [ ] `manifest.json` → `"description"`
|
|
@@ -46,12 +46,12 @@ Files that reference tool count:
|
|
|
46
46
|
- [ ] `livepilot/skills/livepilot-core/SKILL.md` — tool/domain count
|
|
47
47
|
- [ ] `livepilot/skills/livepilot-core/references/overview.md` — tool/domain count
|
|
48
48
|
- [ ] `docs/manual/index.md` — domain table with correct per-domain counts
|
|
49
|
-
- [ ] `docs/manual/getting-started.md` — "
|
|
49
|
+
- [ ] `docs/manual/getting-started.md` — "281 core tools...36 bridge"
|
|
50
50
|
- [ ] `docs/manual/tool-reference.md` — all domains present with correct counts
|
|
51
51
|
- [ ] `docs/manual/tool-catalog.md` — all tools present (CI-tested)
|
|
52
52
|
- [ ] `docs/manual/tool-catalog-generated.md` — regenerated from source
|
|
53
53
|
- [ ] `docs/TOOL_REFERENCE.md` — all domains present with correct counts
|
|
54
|
-
- [ ] `docs/M4L_BRIDGE.md` — "
|
|
54
|
+
- [ ] `docs/M4L_BRIDGE.md` — "281 core tools...36 bridge"
|
|
55
55
|
- [ ] `docs/social-banner.html`
|
|
56
56
|
- [ ] `tests/test_tools_contract.py` → expected total count
|
|
57
57
|
- [ ] `tests/test_skill_contracts.py` → catalog sync test passes
|
package/livepilot.mcpb
CHANGED
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/manifest.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"manifest_version": "0.3",
|
|
3
3
|
"name": "livepilot",
|
|
4
4
|
"display_name": "LivePilot — AI for Ableton Live",
|
|
5
|
-
"version": "1.10.
|
|
5
|
+
"version": "1.10.2",
|
|
6
6
|
"description": "Agentic production system for Ableton Live 12. Make beats, mix tracks, design sounds, and arrange songs with 317 AI-powered tools.",
|
|
7
7
|
"long_description": "LivePilot is an agentic production system for Ableton Live 12. 317 tools across 43 domains — device atlas (1305 devices), sample intelligence (Splice + browser + filesystem), auto-composition, spectral perception, technique memory, and 12 creative engines.\n\n**What it does:**\n- Creates MIDI clips with notes, chords, and rhythms\n- Loads instruments and effects via Device Atlas (1305 devices indexed)\n- Searches samples across Splice, Ableton browser, and filesystem\n- Plans compositions from text prompts with genre-aware layering\n- Slices samples with intent-based MIDI generation\n- Mixes with volume, panning, sends, and automation\n- Analyzes your mix with real-time spectral data (M4L bridge)\n- Diagnoses stuck sessions and generates creative rescue variants\n- Remembers your production style across sessions\n\n**How it works:**\nLivePilot installs a Remote Script in Ableton that communicates with the AI over a local TCP connection. Everything runs on your machine — no audio leaves your computer.",
|
|
8
8
|
"author": {
|
package/mcp_server/__init__.py
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
"""LivePilot MCP Server — bridges MCP protocol to Ableton Live."""
|
|
2
|
-
__version__ = "1.10.
|
|
2
|
+
__version__ = "1.10.2"
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "livepilot",
|
|
3
|
-
"version": "1.10.
|
|
3
|
+
"version": "1.10.2",
|
|
4
4
|
"mcpName": "io.github.dreamrec/livepilot",
|
|
5
5
|
"description": "Agentic production system for Ableton Live 12 — 317 tools, 43 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",
|
|
@@ -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.10.
|
|
8
|
+
__version__ = "1.10.2"
|
|
9
9
|
|
|
10
10
|
from _Framework.ControlSurface import ControlSurface
|
|
11
11
|
from .server import LivePilotServer
|