.gitignore | 1 + config/reaper.ts | 51 + config/reaper/insert_track.lua | 90 + config/reaper/register_scripts.lua | 70 + config/reaper/scripts/insert_addictive_drums_track.lua | 11 + config/reaper/scripts/insert_blank_track.lua | 11 + config/reaper/scripts/insert_komplete_kontrol_track.lua | 11 + docs/speed-editor.jpg | Bin 0 -> 68353 bytes examples/event-listener.ts | 24 + examples/toast.ts | 25 + package.json | 32 + pnpm-lock.yaml | 214 + pnpm-workspace.yaml | 2 + readme.md | 98 + src/Mac.ts | 911 +++++ src/Mac/frontmost_app_helper.m | 42 + src/Mac/toast_helper.m | 98 + src/Reaper.ts | 873 +++++ src/Reaper/CloverAutomation.ReaperOSC | 25 + src/Reaper/actions.ts | 6661 ++++++++++++++++++++++++++++++++ src/Reaper/enumerate_actions.lua | 69 + src/Reaper/generate-actions.ts | 183 + src/SpeedEditor.ts | 991 +++++ src/config.ts | 292 ++ src/main.ts | 3 + 25 files changed, 10788 insertions(+)