Roadmap Product site

Surfaces

Ableton Live extension feature-complete - awaiting SDK release

Leave Red Pen review notes on clips, tracks, scenes, devices, and arrangement positions while you produce. Notes show up inside Live as locators and clip tints, stay scoped to the Set they belong to, and sync two-way with the Red Pen Hub.

User manual (PDF)

Status: feature-complete, gated on the platform This surface is built on Ableton's official Live Extensions SDK, which is still in beta (1.0.0-beta.0) - not on npm, distributed through a closed Centercode program, and only runnable against a matching Live Beta build. So there is nothing to install yet: Red Pen for Ableton is complete and dog-fooded daily on real album work, and it ships the moment the platform does.

What it is

Red Pen for Ableton is a Live extension - a Node.js plus TypeScript project that Live loads, not a Max for Live device. It brings the Red Pen concept into the DAW: while you are working on a track, you attach a typed note to a specific musical object instead of keeping a mental list or a separate document. "Fix the timing on this clip", "this scene needs a transition", "the drop at bar 49 is too quiet" - each becomes a note pinned to the thing it is about, visible both on the board and inside Live itself.

It is the same thesis as the whole family: one portable, vanilla-JavaScript notes panel over a local store. On WordPress the store is the database, on Node it is a file, and in Ableton it is a file in the extension's own storage directory - the same face over a different backend.

Capturing notes

Three entries appear in the right-click Extensions submenu on every surface a producer note attaches to - MIDI and audio clips, MIDI and audio tracks, scenes, clip slots, Simpler, Drum Rack, and samples. Notes attach to the single item you clicked:

Track notes also snapshot the mixer state at capture time - volume, pan, sends, and the device chain - because mix notes decay as the mix moves on; the snapshot pins the evidence. An optional setting auto-names unnamed clips on capture ("<track> <bar>" in arrangement, "<track> S-05" in session), which keeps anchors durable through a Set cleanup.

The notes board

Because the Live SDK exposes a real webview, the Red Pen panel runs inside Live almost verbatim, themed with Live's own dark tokens. The board is built for triage at album scale:

Notes show up inside Live

The board is a modal, so Red Pen mirrors notes into Live-native objects you can see while you work:

Per-Set scoping

The SDK exposes no Set file path, so Red Pen gives each Set its own identity: a marker locator named RP#<id> at beat 0, created on your first note. It saves into the .als, survives renames, and travels with copies. The board shows only the open Set's notes - notes from other Sets never appear, so you can never resolve the wrong project's note from Live. The Set's human name lives in the marker too: click the header to name it, or let the Hub detect it automatically from Live's window title. Legacy notes without a Set show an "Unlinked" chip and an Adopt action.

Save As is the hard case. Live copies every locator into the new file, the RP# identity marker included, so two Sets would claim one identity and share one note pool. The API exposes no file name, path or save event; the only signal available is Live's window title, which the Hub can read. When it disagrees with the marker's name the board asks: New version mints a fresh identity and carries the open notes over (resolved ones stay with the old file), Same Set keeps one identity and adopts the name, Not now is remembered for that name. It never decides on its own - and without the Hub there is no detection at all.

Hub sync

Turn on Push notes to Red Pen Hub in Settings and the extension mirrors its store to your local Hub - one project per Set, at board open and after every save. The sync is two-way with timestamped conflict resolution: resolve a note on the Hub board and it flows back into Live (locators and tints included); resolve in Live and the Hub follows, with the newer action always winning. The board tells you when the Hub is unreachable instead of pretending, and a Test button verifies the connection with a real push. The Hub connects every project, free.

Anchors

Every note records what it was attached to:

FieldMeaning
kindclip, track, scene, device, arrangement, or general
labelA human-readable description of the target, shown on the card
track / clip / scene nameNames captured at click time, so a note reads "Clip: Lead (Synths)" rather than an opaque reference - with the channel color on the chip
viewSession or Arrangement, so same-named clips in the two views can never be confused
beat positionFor arrangement clips, the position in beats - this is what drives the locator
durability fieldsTrack and scene indexes and audio file paths, used by the heal pass when a rename breaks the name match
mix stateTrack notes only: the mixer and device chain at capture time

Where your notes are stored

Worth being explicit about: your note text never goes into the .als. Notes live in an external JSON file, separate from the Set. Red Pen does write three things into the Set, and the Settings tab lists all three so the docs and the software cannot drift apart: the RP# identity marker at bar 1 (always), RP: locators for timed notes (on by default, switchable off), and session clip colours (off by default, restored on resolve). A packaged extension uses the per-extension storage directory Live provides; in developer mode it falls back to a stable folder in your home directory:

~/.red-pen-ableton/notes.json

One file holds every Set's notes (each stamped with its Set's id), written atomically with an automatic .bak of the previous version. Plain JSON you can read, back up, or move.

Honest limitations

The remaining edges are the platform's, not the design's:

When will this ship?

Red Pen for Ableton is gated on the Live Extensions SDK reaching general availability - the surface itself is done and in daily use on real album production. When the platform ships publicly, this becomes a release candidate as-is. Track it on the Roadmap.