Files
virtual-controller/.claude/settings.json
T
Paul Lipscomb 7d4f8a4cd2 Extend REAPER extension to read/write automation items, wire desktop app to it over UDP
extension-reaper-macos: split main.cpp into tracking.cpp (polls selected
envelope/automation items, reads/writes D_BASELINE) and socket.cpp (basic
UDP listener, non-blocking, drains all pending packets per tick). Nudging
now applies to every selected automation item across every track in the
project, not just the first one found.

app-desktop-macos: new "Extension" column (mirrors the OSC/Remote columns)
to enable/disable the UDP connection and point it at a host/port, plus a
log window. FocusFaderWidget gets an OSC/Ext output-mode toggle (mirrors
TransportWidget's MIDI/OSC toggle) so a fader can drive the extension
directly instead of/alongside OSC. Also renamed the Remote/Tablet buttons
for clarity and split their status indicator into its own column.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-16 19:13:34 -04:00

48 lines
3.4 KiB
JSON

{
"permissions": {
"allow": [
"Bash(git add *)",
"Bash(python3 -c \"import ast; ast.parse\\(open\\('main.py'\\).read\\(\\)\\)\")",
"WebFetch(domain:raw.githubusercontent.com)",
"WebSearch",
"Bash(find /private/tmp/claude-502/-Users-p4piwabl0-Desktop-projects-virtual-controller-clean/29ede664-3f90-4b9a-a462-57bbd9febfef/scratchpad/helgobox -maxdepth 1 -iname target -o -maxdepth 1 -iname *.gitmodules)",
"Bash(SRC=/private/tmp/claude-502/-Users-p4piwabl0-Desktop-projects-virtual-controller-clean/29ede664-3f90-4b9a-a462-57bbd9febfef/scratchpad/helgobox *)",
"Bash(find /Users/p4piwabl0/Desktop/projects/virtual-controller-clean/plugin-reaper-realearn -iname .env -not -iname *.example)",
"Bash(git commit -m ' *)",
"Bash(git push *)",
"Bash(git mv *)",
"Bash(awk '{print $NF}')",
"Bash(python3 -c ' *)",
"Bash(timeout 6 python3 run.py)",
"Bash(echo \"EXIT: $?\")",
"Bash(cargo --version)",
"Bash(xcode-select -p)",
"Bash(brew --version)",
"Bash(rustc --version)",
"Read(//Users/p4piwabl0/Library/Application Support/REAPER/UserPlugins/**)",
"Bash(/Users/p4piwabl0/.cargo/bin/rustup show *)",
"Bash(/Users/p4piwabl0/.cargo/bin/rustup toolchain *)",
"Bash(curl -sL https://raw.githubusercontent.com/justinfrankel/reaper-sdk/main/sdk/reaper_plugin.h -o /private/tmp/claude-502/-Users-p4piwabl0-Desktop-projects-virtual-controller-clean/96f4c045-8fa6-4b1e-add2-8903d8ee2feb/scratchpad/reaper_plugin.h --write-out \"HTTP:%{http_code} SIZE:%{size_download}\\\\n\")",
"Bash(curl -sL https://raw.githubusercontent.com/justinfrankel/reaper-sdk/main/sdk/reaper_plugin_functions.h -o /private/tmp/claude-502/-Users-p4piwabl0-Desktop-projects-virtual-controller-clean/96f4c045-8fa6-4b1e-add2-8903d8ee2feb/scratchpad/reaper_plugin_functions.h --write-out \"HTTP:%{http_code} SIZE:%{size_download}\\\\n\")",
"Bash(grep -i \"^swell.h\\\\|swell\\\\.h$\")",
"Bash(set -e)",
"Bash(mkdir -p extension-reaper-macos/vendor/reaper-sdk/sdk)",
"Bash(mkdir -p extension-reaper-macos/vendor/reaper-sdk/WDL)",
"Bash(mkdir -p extension-reaper-macos/src)",
"Bash(cp __TRACKED_VAR__/reaper-sdk/sdk/reaper_plugin.h __TRACKED_VAR__/reaper-sdk/sdk/reaper_plugin_functions.h __TRACKED_VAR__/reaper-sdk/sdk/reaper_plugin_fx_embed.h __TRACKED_VAR__/reaper-sdk/sdk/LICENSE extension-reaper-macos/vendor/reaper-sdk/sdk/)",
"Bash(chmod +x build.sh)",
"Bash(./build.sh)",
"Bash(nm -gU reaper_extension-reaper-macos.dylib)",
"Bash(ls \"$HOME/Library/Application Support/REAPER/UserPlugins\" | grep -i reaper_ | head -5)",
"Bash(ls -la \"$HOME/Library/Application Support/REAPER/UserPlugins\")",
"Bash(cp reaper_extension-reaper-macos.dylib '/Users/p4piwabl0/Library/Application Support/REAPER/UserPlugins/')",
"Bash(tar --exclude='*.dylib' -czf ~/Desktop/extension-reaper-macos-skeleton-backup-2026-07-15.tar.gz extension-reaper-macos)",
"Read(//Users/p4piwabl0/Desktop/**)",
"Bash(awk '/int REAPERAPI_LoadAPI/,0' /Users/p4piwabl0/Desktop/projects/virtual-controller-clean/extension-reaper-macos/vendor/reaper-sdk/sdk/reaper_plugin_functions.h)",
"Bash(grep -n \"{NULL, NULL}\")",
"Bash(ls -la \"/Applications/REAPER.app/Contents/MacOS/\" 2>&1 | head -5 *)",
"Read(//Applications/REAPER.app/Contents/MacOS/**)"
]
}
}