Skip to main content

ableton-extensions

Write Ableton Live extensions in Python, on top of Ableton's official Extensions SDK.

Add right-click menu actions, read and write the Live Set (tracks, clips, notes, scenes, devices, parameters, racks, take lanes, cue points), show modal dialogs and progress bars -- all from Python. When you are done, build a single .ablx that installs on Windows and macOS with no Python on the user's machine.

Beta. MIT-licensed. Not affiliated with or endorsed by Ableton AG.

Install

pip install ableton-extensions

Write an extension

from ableton_extensions import Extension, MidiClip

app = Extension("My Tool")

@app.context_menu("MidiClip", "Humanize")
def humanize(clip: MidiClip):
    notes = clip.notes
    for n in notes:
        n.velocity = max(1, min(127, (n.velocity or 100) + 5))
    clip.notes = notes

if __name__ == "__main__":
    app.run()

Develop, then ship

ableton-ext install-bridge     # writes a small bridge .ablx -- drag it into Live once
ableton-ext run my_ext.py      # fast loop: right-click a MIDI clip -> "Humanize"
ableton-ext build my_ext.py    # -> one universal .ablx (~6 MB) to give to users

Your user drags the built .ablx into Live -> Settings -> Extensions. No Python, no Node, no Developer Mode, no native binary -- the Python runs as WebAssembly inside Live, so the same file works on Windows, Intel Mac, and Apple Silicon.

Limits

Request/response only: no observers, no transport/playback, no automation; device parameter values are raw internal numbers. The SDK can only do what Ableton's official Extensions SDK exposes.

Metadata

Release files for ableton-extensions 0.0.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for ableton-extensions 0.0.4
File Interpreter ABI Platform
ableton_extensions-0.0.4-py3-none-any.whl Python 3 none any Details

Release files / ableton_extensions-0.0.4-py3-none-any.whl

Download URL ableton_extensions-0.0.4-py3-none-any.whl
Size 6.5 MB
Tags Python 3
SHA-256 checksum
How to use checksums
b8fccf7dc3e96f3e7cd57be8c206c0c788d0e85cc59fbf13b122eee2a9a53401
BLAKE2b-256 checksum
How to use checksums
df7cdbf3921bf78f382537d3f84bc8af880153479a188a0d447bf1fdfb23fff6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.0

Release history Release notifications | RSS feed

This release

0.0.4 This release

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page