Repository navigation
Releases: bbb-max-externals/maxforge
Release list
v0.6.3
Fixes
- Recover live editing after reopening an earlier saved patch or discarding unsaved applied changes. Review/adopt now follows the revision held by Max; explicit
currentDslrecovery also works with prepared-change receipts. - Reject unsafe adoption when a reverted managed box has changed class, including message/comment versus object replacements.
- Mark managed structural edits and revision-only changes dirty so Max's close guard and save behavior preserve them. A true no-op remains clean.
- Use a stable 420 × 64 default size for
kslider, avoiding false geometry changes after save/reopen.
Validation
- 440 automated TypeScript tests, native protocol/runtime tests, installed npm-package checks, archive/source contracts, and production dependency audit.
- Max 9.0.4 macOS host testing: 32 UI configurations / 123 messages, multi-patch isolation, nested identity, silent reads/sets, dirty/close protection, save/reopen, and seven reverted-state recovery scenarios including follow-up edits.
- macOS universal external is Developer ID signed and notarized. Windows x64 build and native tests run in CI; Windows Max host and Ableton Live automation are not covered by the macOS host run.
Install
Download maxforge-v0.6.3.zip and verify it using the adjacent .sha256 asset. After saving your work and quitting Max, replace the complete maxforge package in your Max Packages folder. Do not replace only the native binary.
The Max package includes its service and uses Max's bundled Node; it does not require npm or MCP. Publication of the optional npm CLI maxforge@0.6.3 is pending; the Max package is already available and does not require an exact CLI version match. Install the repository's maxforge-live and/or maxforge skills using your skill installer as needed; there is no automatic skill update.
v0.6.2 — Guarded runtime UI control
Runtime UI control
- Add
maxforge_read_runtimeandmaxforge_send_messageto the Max-owned HTTP service. Onemaxforgeobject remains sufficient; no MCP, helper objects, or separate Node installation. - Support a deliberate subset of messages for 28 standard Max/live.* UI classes. Read values without output; distinguish numeric input, bang, class-specific silent set, and typed selector/atoms.
- Guard every request with patch/scope/instance identity, inspected object identity, and a structure token. Unmanaged targets require explicit opt-in. Native acknowledgements distinguish completed, rejected, and unknown outcomes; sends are never automatically retried.
- Keep volatile values, formatted numeric display text, and subpatch editor session state out of structural editing. Fix empty outlet comments being mistaken for DSL edits.
- Update the
maxforge-liveskill, class-specific reference, generated help, and reproducible host acceptance script.
Validation and limits
The pre-release suite covers 431 TypeScript tests, native CTest, coverage thresholds, installed npm package validation, and Max 9.0.4 on Apple silicon: 32 UI configurations / 123 messages, actual downstream counters, silent reads/sets, cross-patch and nested routing, invalid requests, unchanged DSL, and save/reopen. macOS and Windows externals are built and tested in CI. Windows host loading, Intel host execution, Ableton Live automation, and DSP/audio output are not covered by the macOS host test.
The macOS external is universal arm64/x86_64, Developer ID signed and Apple-notarized. Max 9 and its bundled Node 20+ are required. No Node runtime is bundled. Install the complete versioned Max package ZIP and verify its matching SHA-256 file; do not replace only the native binary.
Install/update the agent instructions with npx skills add bbb-max-externals/maxforge --skill maxforge-live. Updating the skill alone does not replace the Max package or remove legacy MCP configuration. Ask the agent to perform the documented setup/migration workflow when needed.
v0.6.1 — Standard installation path fixes
Fixes
- Fix bundled catalog loading from installation paths containing spaces, Japanese text, percent signs, or hash signs. This fixes startup in the default
Documents/Max 9/Packages/maxforgedirectory without a symlink workaround. - Print native error messages as literal text instead of interpreting percent characters as printf format directives.
- Add five installed-path regressions and a native error-format guard; all 417 automated tests pass.
Installation
Download maxforge-v0.6.1.zip and its matching .sha256 asset, verify the checksum, save your work, and close Max. Replace the complete Max package, not only the external binary. The package includes macOS Universal and Windows x64 externals with their bundled service; it uses Max's own Node runtime and does not ship Node.
If v0.6.0 was installed through a symlink workaround, replace that link with the complete extracted package in Documents/Max 9/Packages/maxforge. Do not overwrite or delete a development checkout through a symlink. No MCP server or helper object is required: create one maxforge object.
Skills remain available through:
npx skills add bbb-max-externals/maxforge --skill maxforge-live --globalRequires Max 9 with bundled Node 20 or newer. macOS signing and notarization are checked by CI. Before publication, the signed CI package is tested in the real standard Packages directory, including catalog discovery, patch editing, save/reopen, and revision retention. Windows is build/CTest-verified in CI, not real-host tested.
The release workflow attaches the versioned ZIP and checksum after its clean signed/notarized rebuild. The optional npm CLI is a separate distribution; npm publication is not included in this release.
maxforge v0.6.0
Breaking change: one object, Max-owned HTTP control
Create one maxforge object to start a loopback-only HTTP service shared by all patches in that Max process. The complete package bundles the matching native external and service. It uses Node supplied by Max: no standalone Node runtime, MCP server, broker, or node.script helper object is required.
The old maxforge.sync/MCP connection is removed. Replace the complete Max package with Max closed; do not replace only the external binary. Use maxforge-live for setup, scoped legacy-skill migration, discovery, and live editing.
Install the Max package
Requires Max 9 with its bundled Node 20 or newer. Download maxforge-v0.6.0.zip and maxforge-v0.6.0.zip.sha256 from this release. On macOS verify with shasum -a 256 -c maxforge-v0.6.0.zip.sha256, then extract the ZIP and place the entire maxforge folder in ~/Documents/Max 9/Packages/. On Windows use the corresponding Documents/Max 9/Packages directory. Back up an existing package outside Max search paths before replacement.
The ZIP contains macOS Universal (arm64 + x86_64) and Windows x64 externals. The macOS external is Developer ID signed and the exact ZIP is Apple-notarized. Matching assets are attached automatically after the release build finishes.
Install agent skills
npx skills add bbb-max-externals/maxforge --skill maxforge-live --global
# Optional offline DSL authoring:
npx skills add bbb-max-externals/maxforge --skill maxforge --globalAsk the agent to set up maxforge using maxforge-live. Installing a skill installs instructions only; package installation and removal of the obsolete maxforge-mcp skill happen through the explicitly requested setup workflow.
Included improvements
- API discovery and patch listing with stable patch IDs, loaded external version, and compatibility checks.
- Prepared-change receipts, retained source references, compact edits, and live-edit history.
- Upstream semantic object identities and consecutive port-range wiring.
- Save As path handling and numeric UI default geometry aligned with Max 9.
- Numeric display-value changes no longer block editing after save/reopen.
Verification and limits
- 411 automated tests, test typechecking, installed npm-package verification, and object-catalog audit passed.
- macOS and Windows native CI builds and protocol tests passed.
- Real macOS Max testing covers singleton/multiple-patch registration, native/service version alignment, edit acknowledgement and baseline verification, Save As, close/reopen, and retained identity/revision/wiring.
- Windows host runtime testing was not performed. Saving requires an authorized Max installation.
- Without an explicit project config, service state is scoped to the current Max process; retain the complete DSL when restarting Max.
The optional npm CLI is separate from this Max package and is not required for HTTP control.