Have an AI write a DSP design and play it in Sonir Bench
Give your AI assistant the module specification (https://sonir.app/spec/sonir-bench-v1.en.md) and describe the sound you want; ask for one JSON. In Bench, open Graph, press Create new, and drop the file on Load from a file, or paste it under JSON (copy / paste) and press Load this JSON. If the check fails, press Copy the result and paste it back to the AI to fix; once it passes, give it a name and save.
Checked with Sonir Bench 0.1.62 on 2026-10-12
Before you start
- Bench playing through your DAC. If it is not yet, follow the setup guide first.
- An AI assistant that can read a web page or accept an attached file, such as ChatGPT or Claude.
Steps
01Hand the specification to the AI
Give the AI the specification as one file: paste https://sonir.app/spec/sonir-bench-v1.en.md, or download it and attach it. It contains the prose, both JSON Schemas, every error code and reference modules that pass as they are. The module specification page also has a ready-to-use prompt under Example prompt.
REFERENCEModule specification
02Describe the sound and ask for one JSON
Say what you want in plain words, for example a gentle bass lift with a little warmth, and ask for one DSP module as JSON that includes spec_version, follows the reference modules and invents no fields the Schema does not define. What comes back is a graph: a list of nodes run in order.
REFERENCEGraph nodes
03Load the JSON into Graph
In Bench, open Graph and press Create new. Open the Load from a file card and drop the file on Drop a file here, or press Choose a file. You can also paste the text under JSON (copy / paste) and press Load this JSON. Bench says how many nodes it loaded and that nothing is saved yet. Do not put the AI’s file into the working folder directly: the files there use a different form.
04Let Bench check it
The Check (without playing) card runs the design for both the 44.1 kHz and the 48 kHz families and shows Passes or Fails for each. A failure names the stage and the error code, with the message. Nothing plays until every stage has passed, and a design with a non-linear node is simulated first and keeps a protective limiter at the output for the session.
REFERENCEValidationError codes
05Hand the result back until it passes
If it fails, press Copy the result and paste it to the AI as it is. The text carries the stage, the code and the measured numbers in English, and points at the error list in the specification, so the AI can fix the right thing. Load the corrected JSON again the same way.
06Name it, save it and listen
Type a name and press Save. The graph then appears on the Engine screen and in the A/B choices. Add it to the chain on the Engine screen, or compare it against another design at matched loudness on A/B.
REFERENCEShape the sound and compare
Have it write a resample design instead
The band limit at the top end, and how the rate is raised to the internal rate, are written in a resample design, not in a graph. Ask the AI for a resample design JSON, then in Resampler press Create new and load it through the same Load from a file card. A resample design file can also be placed in the resample folder of the working folder; press Rescan folder to read it.
REFERENCEResample design
If it does not work
Bench says the file is damaged or not a Sonir Bench file.
The AI returned something other than a single JSON, or added text around it. Ask for the JSON alone and try again.
It fails at shape.
The AI invented a field or a value the Schema does not allow. Hand back the result and ask it to follow the Schema.
Save says a name is needed.
A graph file carries no name. Type one before saving.
I want to share what the AI made.
Avoid trademarks, brand names and product names in shared designs. Bench does not refuse them, but the reference modules follow this rule.