Design: Type what you want done.
The command bar turns a short sentence into a mix move, an effect, a tempo change — or takes you somewhere: a view, a control, a page of this manual, a bar of the song. Press Cmd/Ctrl+Shift+K, or choose Edit ▸ Command Bar…, type, and press Enter. The line under the field shows what Enter will do before you press it. Escape closes the bar; ↑ and ↓ recall earlier sentences.
An empty bar shows examples written with your own track names. As you type, Tab finishes the word — a track, an effect, or one of the bar's verbs.
What you can say#
| Sentence | What happens |
|---|---|
lead down 2 db, lead -1db, pad louder, pad up a touch | The track's level changes in the song's mixer block |
bass to -6 db | The level is set rather than moved |
hats left a bit, pan vox 30% left, pan lead hard right, center the bass | The track's pan changes in the mixer block |
mute hats, kill the bass, unmute hats, unmute | The mixer's mute button, live; unmute alone clears every mute |
solo bass, just bass, unsolo | The mixer's solo button, live |
add reverb to pad, put a delay on the lead, add echo to vox | A |> stage is appended to the track's chain and the song is run |
remove the reverb from pad | That stage is cut; Enter a second time to confirm |
add sidechain to pad | duck against the track whose name contains kick |
bpm 128, tempo up 4, slower | The live tempo changes |
play, stop, pause, resume, undo, redo | The transport and the editor's history |
A menu command's name, such as keyboard shortcuts | That command runs |
Settings and macros#
| Sentence | What happens |
|---|---|
vox delay feedback to 0.5, lead reverb wet 30% | That argument of the effect already on the track is rewritten, and the song is run |
more feedback on the vox delay, vox delay feedback up a touch, lead reverb wet down a lot | The setting moves by a step and lands on a tidy value |
darkness up a bit, set cutoff macro to 800, less darkness | The song's macro glides to the new value, live, like turning its knob |
A step is 5%, 15% or 35% of the control's range for a touch, a bit (or no size word) and a lot; a control with no range moves by a share of its current value. A step stops at the end of the control's travel. A typed value outside the range is refused.
Only plain numbers can be changed this way. A setting the song drives with a pattern, a macro or a formula is left alone, and the bar says what it is set to. A setting you never wrote — a delay's wet, say — is added to the call. When the track has two of the same effect, the last one changes.
Finding your way#
| Sentence | What happens |
|---|---|
open mixer, show the timeline, take me to the bench, open keyboard shortcuts | That view, panel or dialog opens |
where is the metronome, find tap tempo | A ring appears around the control for a few seconds. Nothing is pressed. If the control is folded into a menu, the bar says which one |
help with mixing, what does duck do, how do I sidechain, show me the reverb docs | This manual opens — on the page when you name one, otherwise on a search for your words |
go to lead, show me the pad track | The Source view opens with that definition selected |
go to bar 17, jump to the drop | The playhead moves to that bar, or to the marker with that name |
select pad | That strip is selected in the mixer, so down 2 db needs no name |
One after another#
Join commands with and, then or a comma: mute hats and clap, solo bass then bpm 128, lead down 2 db, pad up 1 db and mute the hats. They run in order, and the first one that is refused stops the rest. A part that is only a track name borrows the command before it.
After a command has run, a short follow-up leans on it: again; more or a bit more for a level, pan or tempo change; less or too much to come half the way back; same on the pad or pad too to do it to another track.
Words like the, track and please are ignored, and a track name of four or more letters may be one letter off. When a sentence names no track, the bar uses the strip selected in the mixer.
Sizes are fixed steps: a touch is 1 dB, a bit (or no size word) is 3 dB and a lot is 6 dB; for pan they are 15%, 40% and 100%; for tempo 2, 5 and 10 BPM.
Numbers are yours#
A number you type is used exactly: -1db is −1 dB. You can write numbers as words — lead down two db, bpm one twenty eight, bass to minus six db. A sentence such as lead 3, which could mean to 3 or by 3, is not run. Levels accept up to +6 dB, the top of the fader.
Effects#
You can name any effect that works on a track by its own name — add galactic to pad — and a set of everyday words: echo, chorus, distortion, compressor, sidechain, eq, autotune, vinyl. Each effect arrives with a moderate starting setting, such as reverb 0.4 or delayTrack 0.375 0.35, for you to adjust.
An added stage must compile before it lands. If it does not, nothing changes and the bar shows the compiler's reason; add phaser to lead, for example, explains that a phaser works inside a voice.
What changes and what does not#
Level, pan and effect sentences edit the song's source through the same checks the mixer and the structural editing commands use, so Undo reverses them and Save keeps them. A level or pan written as a formula or driven by a macro is refused, as it is in the mixer. A tempo sentence writes tempo and runs, as a tapped tempo does — one edit, one Undo step; on a song that computes its tempo (a tempoMap, an expression) it plays live until the next Run and the receipt says why. Mute, solo and transport sentences act on the running song and leave the source alone, outside Undo, as the receipt says (mute hats (live only, not in Undo)).
Looser sentences#
A sentence in the tables above is read on your machine, instantly and offline. Anything looser — lead is too loud, put some dirt on the bassline, sidechain the pad to the kick, just the vocals, longer tails on the vox delay, make it darker, where do I change my audio device — is sent to a small classification service, which takes about half a second. The bar shows reading… while it waits and gives up after five seconds.
The service does not write anything. It is asked a handful of multiple-choice questions — which kind of command, which of your tracks, which effect, which setting of the effects already on your tracks, which of your macros, which part of the workbench, which page of this manual, up or down — and can only answer with one of the choices the bar offered. Every number still comes from what you typed.
The effect choices are a short, curated producer vocabulary (ui/assets/say-criteria.json) with one option per thing a musician would ask for, not the whole effect catalogue: offered every track effect with its reference description, near-duplicates split the vote and put some dirt on the bass landed on a filter; the curated list carries one entry for it, saturate, whose description names dirt, grit and crunch. The answer only names an option; the bar's own reader (ui/src/say/read.rs) matches exact builtin names and supplies every number. Each curated starter setting is compiled on a real track by a test (every_curated_starter_call_compiles_on_a_track in ui/src/app/saybar_tests.rs), which is what keeps an effect that only works inside a voice out of a track chain.
A plan always asks first when the sentence is negative (don't mute the hats), or contains a number the plan has no use for (mute the hats in 4 bars — the bar cannot schedule). When it is sure, the command runs; opening a view, pointing at a control or opening the manual runs on a likely answer, since none of them changes anything. A how do I… question that names no page is sent too, so the manual opens on the page that fits rather than on a word search; with no answer, the search opens instead. When it is less sure about a change, the bar shows what it understood, how sure it was and about which part, and what else you might have meant; press Enter again to accept, or edit the sentence. A request it cannot turn into a command, such as write me a melody, is offered to Copilot instead; Enter again opens Copilot with your sentence filled in.
For a sentence like make it darker, a macro of yours that fits wins over any effect setting: it is the control you built for exactly that. When the adjective is the macro's own name — darker and darkness — it means more of it. A track you name rules out every other track's settings. And when nothing on the track fits but an effect clearly would — make the pad wetter with no reverb on the pad — the bar offers to add it and waits for Enter.
What is sent: your sentence, the names of the song's tracks with the name of the sound each plays, which effects are on which track with the names of their settings (never their values), your macros' names and ranges, and the bar's fixed lists: effect descriptions, the workbench's commands, and this manual's page titles. The song's source is never sent.
In the browser this works with no setup; signing in raises the daily allowance. On the desktop it needs a TypeSafe key, in the JEV_API_KEY environment variable or in the file ~/.volta/jev-api-key. Without one, or without a connection, the bar keeps working for every sentence in the table.
Not yet#
Settings inside a voice (a patch's filter or envelope), transposing, the master level and scene changes are not addressable from the bar. A compound sentence runs only when every part is one the bar reads offline.