Docs / Nebula Sound System manual / 17. The Control API (for scripts)
17. The Control API (for scripts)
Nebula can be driven by other programs on your machine — and by the AI assistant that is planned to sit on top of it.
- Turn it on in Settings → Local API. It listens on localhost only, with a token that is generated for your machine.
- It speaks JSON-RPC 2.0 over a socket:
{"jsonrpc":"2.0","id":1,"method":"tracks.add","params":{},"token":"…"}. There are 61 methods covering projects, tracks, clips, notes, devices, knobs, transport, history and rendering, and the app pushes events back (nebula/render.finished,nebula/project.changed). - Everything a script does is a normal, undoable command — the same edit a click would make.
- An OSC door (UDP) exposes the same actions for hardware controllers.
If you write Python, the usual shape is: connect to 127.0.0.1:<port>, send one JSON line per
request, read one JSON line per reply. docs/FEATURES.md lists the method families.
Updated 2026-11-02