Compose Toolbar
The compose toolbar sits above the note grid in every melodic editor (Piano, Wind, Strings). It's a four-icon row that drives pattern generation. Pick one of the four peers and a pane opens with the controls for that mode. Pick the same icon again and the pane collapses.
[ editor tools ] | [Boilerplate] [Resume] [Improve] [Contour]
Only one pane is open at a time — the four peers are mutually exclusive. The leading slot on the left is for editor-specific tools (currently the piano roll's ✱ next-note suggestions toggle — see next-note-suggestions.md); for editors that have nothing there, the slot collapses so the four peers sit flush left.
The four peers
| Peer | What it's for | When to reach for it |
|---|---|---|
| **Boilerplate** | "Lay something down" — fill an empty section from scratch. | The section is empty (or you don't mind replacing what's there) and you want a starting point. |
| **Resume** | "Continue what you've written." | You've got a phrase down and want it extended in the same style — same motifs, same feel. |
| **Improve** | "Make what's there better." | You like the rough shape but want to re-voice it or audition variations — of the whole part, or just the notes you've selected. |
| **Contour** | "Shape it." | You want to draw a curve — a phrase shape — and have notes generated to follow it. See [phrase-contour.md](phrase-contour.md). |
Boilerplate lays a section down from scratch and offers the source picker described below. Resume has no source picker — it always continues the notes you've already written, feeding them to the model so the extension keeps the same phrases and motifs.
The melody sources
Inside Boilerplate you choose a source. These aren't flavours of the same path — they're genuinely different generators with different strengths. The pane only shows controls the picked source actually uses, so settings that don't affect the result don't appear. The three sources below are shared by every melodic editor; on the piano roll, Pick a style also lists chord-driven bass-line shapes. Resume has no source picker — it is always a continuation.
Pick a style (local, rule-based)
A fast, offline rule-based generator running on your machine. You pick a style from one list. On the piano roll that list holds two groups — Melody and Bass line.
Melody styles — a melody approach (Chord Tone, Stepwise, Arpeggiated, Pentatonic, Phrase & Rest, Composed). The engine builds a motif and develops it across the section, and your locked notes are kept. The Composed style also shapes the part to the section's place in the whole song — see Song-Aware Generation.
Bass-line shapes (piano roll only) — a chord-driven bass line built straight from the section's chord progression, handy now that bass parts live on melodic tracks:
- Root Notes — one root per chord, the simplest line
- Root-Fifth — root on beat 1, fifth on beat 3
- Octave — low root on beat 1, octave-up root on beat 3
- Walking — stepwise motion connecting chord tones
- Arpeggio — chord tones ascending across the bar
A bass-line shape is deterministic and rebuilds the whole pattern from the chords — the seed lock and Lock & Reroll don't apply to it. Assign a bass instrument to the track so it sounds right.
| Strength | Tradeoff |
|---|---|
| Instant — no network, no cost | Less musical depth than the catalog source |
| Deterministic when you lock the seed (melody styles) | |
| **Locked notes are preserved** — Lock & Reroll works here (melody styles) |
Use this when you're iterating quickly and want the pattern to land now.
From chords (catalog, chord-aware)
Sends the section's chord progression to the Kiwisonic catalog and gets back a chord-aware melody.
| Strength | Tradeoff |
|---|---|
| Richer, longer-form | Network-bound (needs catalog access) |
| Knows about chord changes and voice leading | Locked notes are not preserved |
Use this when you want a melody that sounds composed, especially over a non-trivial chord progression.
Describe in words (prompt-based)
A free-text intent — "dreamy uptempo line over the verse", "punchy staccato bassline that lifts into the chorus" — gets sent to the Kiwisonic catalog (for piano, drums) or to Claude (for guitar, wind, strings). The variations slider asks for up to four alternatives, which come back as pills at the bottom of the panel — click a pill to swap the active take.
| Strength | Tradeoff |
|---|---|
| Free-text intent | Network-bound |
| Up to 4 alternatives surfaced as pills | Doesn't read the Resume sliders — the prompt is the whole spec |
Use this when you have a clear musical intent that's awkward to express with sliders.
Your source choice sticks while you stay on the same editor. Switching to a different editor (e.g. piano → strings) clears it, because the per-editor controls are completely different.
What each pane shows
Boilerplate
- Source picker (Pick a style / From chords / Describe in words)
- Source-specific controls — style list for "Pick a style" (melody approaches and, on the piano roll, bass-line shapes), chord progression hint for "From chords", prompt box for "Describe in words"
- More options — variations slider (1–4), seed lock
- Apply — replaces the section's notes from tick 0
Resume
Resume has no source picker — it always continues your existing notes through the catalog's continuation generator, which reads the phrases you've written and extends them in the same style.
- Strict → Wild — how freely the continuation departs from what's there
- Length — how much to add, in beats
- Apply — generates the continuation and appends it after your existing notes
On the piano roll, Resume also keeps the Chord progression tab (see below) — laying a progression in from the cursor is a genuine continuation. Resume needs catalog access; it has no offline path.
Improve
No source picker — Improve refines the notes already in the section instead of composing new ones. Select notes first to scope edits to just those; with nothing selected the edits work on the whole part. Locked notes are always kept.
| Action | What it does |
|---|---|
| **Fix stray notes** | Hunts for notes that fall outside the key and snaps each of those to the nearest in-key pitch. Chromatic passing/neighbour tones — steps between two scale tones — are kept. |
| **Try a variation** | Reshapes the part into a variation of *itself* — it learns the phrasing and motion of what's there and resamples it. Generates 1–4 takes; the first is applied immediately, the rest appear as pills below the panel — click to swap the active take. |
| **Resolve ending** | Lands the final note on the active chord's root (or the key's tonic when there are no chords) so the phrase closes on a stable tone instead of hanging. |
| **Follow chord contour** | At chord changes where the melody leaps more than a fifth against the chord-root direction, octave-shifts the incoming note so the line moves *with* the harmony. |
| **Critique** | Grades every note against the chord progression and tints the piano roll: red stripe = doesn't fit, no stripe = works. Hover a note for a label and concrete remedies. See [Critique](critique.md) for the full guide. Needs chords. |
After a selection-scoped edit (the four edit actions above; Critique is whole-section only) the new notes stay selected, so you can re-roll them again straight away. The variations slider lives on Boilerplate's "More options", but Try a variation reads the same value.
The edit actions are local and offline, and they leave earlier work alone — unlike Lock & Reroll (Ctrl+R), which regenerates every unlocked note from scratch.
Contour
The contour pane is described separately — it has its own toolbar (generate, refine, apply, cancel, presets, generator picker) and overlays a draggable spline on the note grid. See phrase-contour.md.
Chord progression sub-tab (Piano only)
On the piano roll, Boilerplate and Resume show an extra Melody / Chord progression switch at the top of the pane. In Chord progression mode, the source picker is replaced with:
- Rhythm style — Block, Strum, Arpeggio, Genre groove, Organ comping
- Progression list — recommended progressions for the active genre, then "Other"
- (Resume only) Start slider — bars in from the cursor
Apply writes the chord progression as block-chord notes (or, for "Organ comping", configures the track's organ comping profile so the rhythmic figure plays at runtime).
Status feedback while generating
The compose toolbar reports back on the same pane:
- A progress bar appears while a network call is in flight.
- An error label surfaces problems (network failures, "no chords in this section", etc.) without dumping you to a dialog.
- For Describe in words and Improve's "Try a variation", the alternatives appear as pills below the pane. Click a pill to swap the active take. The pills disappear when you generate again.
If applying would overwrite existing notes that you didn't ask to overwrite (e.g. you ran Boilerplate while the section already had a melody), the pane shows a small rewrite confirm row asking you to confirm before the result lands.
Composing more than one part at a time
The compose toolbar works on the part you're editing. To lay down a melody, a bass line, drums and a pad together — all shaped to the same song, all visible at once — use the Generate page instead.
Tips
- Lock first, then generate — Alt+Click any note you want to protect (or Ctrl+Shift+L for all). Local rule-based generation preserves locks automatically. See lock-and-reroll.md.
- Boilerplate twice = different result — the seed is regenerated each call unless you lock it.
- Use Improve as a polish step — generate a draft with Boilerplate, lock the moments you like, then run Improve to refine the rest. To fix one phrase that isn't working, select just those notes and re-voice them.
- Switch sources to compare — pick the same prompt with "From chords" and "Describe in words" to see how the catalog interprets your harmony vs. an open-ended brief.
- Resume needs something to continue — it extends the notes already in the section, so run Boilerplate first on an empty section, then use Resume to grow the idea.