On this pageWhat the workbench provides

Development workbench

Live audio, MIDI, hot reload, diagnostics, and agent-assisted iteration with maru dev.

Run the workbench from your module project:

bash
maru dev

maru dev takes the project directory as an optional argument and serves the workbench on a local port. Add --open to open it in your browser; see maru dev --help for the port, host and other options.

The workbench plays your module with its real engine and shows its face beside the controls the host provides. Edits to the face reload it without restarting the audio. Edits to the module declaration, parameters or processing code rebuild the affected parts and reload the module.

What the workbench provides

  • Audio files, microphone input, computer keyboard, and MIDI when appropriate
  • Parameter inspection and synchronized face edits
  • Scope, spectrum, levels, and other diagnostics
  • Browser errors, engine events, and build logs in one place
  • Repeatable audio and MIDI fixtures for tests
  • The fast project checks, run on demand

Sampler instruments can open sample bank directories directly in the workbench; see maru dev --help and the sampler bank guide.

Work with an agent

The workbench is designed for a tight conversation with a coding agent. Ask for a graph or interface change, listen to the result, inspect the diagnostics, and send any compiler or verification error back to the agent. The Maru agent skill gives a coding agent the authoring and verification workflow, and Agents and MCP connects it to the same operations the CLI runs.

The interface can use the whole web ecosystem. Three.js, WebGL, animation, video, and custom visualization sit beside the audio-specific controls rather than behind a separate native UI framework.

See Check, build and export when the module is ready to leave the workbench.