name: "cli-anything-rekordbox"
description: >-
Command-line interface for Pioneer Rekordbox 6/7 - DJ library and live-deck control via guarded SQLCipher master.db access (pyrekordbox) + virtual MIDI mapping. Provides library inspection, playlist creation/add/clear, and live-deck mixing (play/sync/crossfade/EQ). Pioneer ships no playback REST API; this harness combines the only two real surfaces (encrypted DB + MIDI) into one agent-native CLI.
cli-anything-rekordbox#
Agent-native CLI for Pioneer Rekordbox 6/7. Drives the DJ library and live decks programmatically.
Installation#
pip install cli-anything-rekordbox
Prerequisites:
- Python 3.10+
- Rekordbox 6 or 7 installed (
master.dbmust exist) - Virtual MIDI driver for live-deck control:
- Windows: loopMIDI / LoopBe / teVirtualMIDI
- macOS: IAC Driver
- Linux: ALSA virtual MIDI (
snd-virmidi)
Usage#
# Status check
cli-anything-rekordbox status
# REPL mode
cli-anything-rekordbox
# JSON output for agents
cli-anything-rekordbox --json library search "Daft Punk"
Command Groups#
Library#
| Command | Description |
|---|---|
count | Total track count |
search QUERY | Find tracks by title/artist substring |
info TRACK_ID | Full track metadata |
dump --out FILE.json | Export full library as JSON |
Playlist#
| Command | Description |
|---|---|
list | All playlists |
create NAME [--force] [--no-backup] | New playlist |
add NAME --track-title T [--force] [--no-backup] | Add track |
clear NAME [--force] [--no-backup] | Empty a playlist |
Playlist writes create a master.db backup before mutation. They refuse to run
while Rekordbox is open unless --force is supplied; forced writes still require
a backup. --no-backup is only accepted when Rekordbox is closed.
Deck (live MIDI)#
| Command | Description |
|---|---|
play --deck N | Play/pause |
sync --deck N | Tempo sync |
crossfade FROM TO --secs S | Smooth crossfade |
eq --deck N --hi --mid --lo | EQ control |
hot-cue --deck N --slot 1-8 | Trigger hot cue |
Top-level#
| Command | Description |
|---|---|
status | Runtime / DB / MIDI state |
install-mapping | Drop Bunker.midi.csv into rekordbox's MidiMappings folder |
mix A B --secs S | High-level: search + load + sync + crossfade |
How it works#
+------------------+
| Your Agent |
+--------+---------+
|
v
+------------------+
| cli-anything- |
| rekordbox CLI |
+--------+---------+
| |
v v
+----------+ +----------+
|pyrekord- | | mido + |
|box DB | | virtual |
|writes | | MIDI |
+----------+ +----------+
| |
v v
+----------+ +-----------+
| master.db| | Rekordbox |
|SQLCipher | | live decks|
+----------+ +-----------+
- master.db is encrypted with a static AES-256 key shared by all rekordbox 6/7 installs (auto-extracted by pyrekordbox)
- Virtual MIDI mapping uses Pioneer's standard
.midi.csvformat; this CLI shipsBunker.midi.csvand aninstall-mappingcommand to drop it into rekordbox'sMidiMappings/folder
JSON output#
Every command supports --json:
$ cli-anything-rekordbox --json library count
{"track_count": 30344}
License#
MIT