flstudio-scripting

Document FL Studio's Python API for MIDI scripting and piano roll manipulation.

3|2|Updated Feb 6, 2026
One-click install
npx skills add https://github.com/delorenj/flstudio-scripting-skill --skill flstudio-scripting
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: flstudio-scripting
Source: https://github.com/delorenj/flstudio-scripting-skill/tree/main
Command: npx skills add https://github.com/delorenj/flstudio-scripting-skill --skill flstudio-scripting

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

FL Studio users often need repeatable, programmable control over MIDI, device scripting, and project data. This Skill provides a centralized Python API reference and practical patterns to automate MIDI controller scripting, piano roll manipulation, Edison editing, and FLP parsing.

Core Features & Use Cases

  • Python API reference: Access 427+ functions across 14 modules for MIDI controller scripting, piano roll edits, Edison envelopes, and PyFLP parsing.
  • Automation & workflow: Script repetitive FL Studio tasks, configure devices, and automate save/load of PLP data.
  • Use Case: Create a script that sets up a MIDI controller mapping and batch-modifies piano-roll notes across multiple patterns.

Quick Start

Start by installing your Python scripts under the Shared\Python\User Scripts folder in FL Studio, then import the modules (e.g., import device, mixer, transport) and begin implementing your OnInit/OnMidiMsg callbacks.

Frequently Asked Questions about flstudio-scripting

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I write a Python script for a MIDI controller in FL Studio?

To write a Python script for a MIDI controller in FL Studio, install your scripts in the Shared\Python\User Scripts folder, import modules like device and mixer, and implement OnInit and OnMidiMsg callbacks to handle hardware mapping and MIDI messaging.

Can I batch modify piano roll notes across multiple patterns using Python?

Yes, you can batch modify piano roll notes across multiple patterns using Python by accessing the FL Studio piano roll API, which allows programmatic manipulation of note data to automate repetitive editing workflows.

What is PyFLP and how does it parse FL Studio project data?

PyFLP is a Python library for parsing FL Studio project data. It allows users to programmatically read, extract, and batch-process FLP file contents to automate project modifications and data extraction.

Does FL Studio Python scripting support Edison audio editing?

Yes, FL Studio Python scripting supports Edison audio editing by providing API functions to programmatically manipulate Edison envelopes, enabling automated audio editing workflows within custom scripts.

How many modules and functions are available in the FL Studio Python API?

The FL Studio Python API provides access to over 427 functions across 14 modules, covering MIDI controller scripting, piano roll edits, Edison envelopes, and PyFLP parsing for comprehensive workflow automation.