Created a ShowKontrol-like deck monitoring tool for djay Pro on macOS

Hi all!

I just want to share my newest CLI tool that fetches real-time deck information from djay Pro’s macOS app. It fetches data that isn’t possible with regular MIDI mapping.

The CLI is written in Swift and requires no dangerous actions such as reading memory or disabling SIP. It all uses the Accessibility API since djay Pro has excellent accessibility support in their app for screen readers (thank you for the well-designed accessibility functionality!). The only privacy permission you need to allow on macOS is Accessibility access.

It’s on GitHub: GitHub - kyleawayan/djay-pro-bridge: A macOS tool that reads real-time deck state from Algoriddim djay Pro using the macOS Accessibility API. · GitHub. Note this is a command line tool, not a plug-and-play integration for lighting or visual software. This is more of a proof of concept, but this code can be extended to, for example, send OSC messages when a track changes — in my case, to my Ableton Push to change the key of the pads, so I can improv without having to change the key manually!

I also implemented time interpolation for milliseconds, as we’re only able to access minutes and seconds from djay’s accessibility API. This allows for timecode syncing to lighting or visuals (but it is not implemented yet in my code).

For any developers curious about getting Pro DJ Link/ShowKontrol like monitoring of the djay Pro decks, I recommend you check out my repo!

2 Likes

Would love seeing a video of how you utilize this.

1 Like

Very cool! Thanks for sharing @kyleawayan. I agree, a short video demo would be great.

DUDE.

Ive been dying for this! I’m CLI psuedo-knowlegdable too! I’ll mess with this and get you some feedback! Kudos!!

check your insta! :slight_smile:

this is genius, would love to see a demo video. seems like this is a half step away from being an MCP server which opens up a whole new world of possibilities