cli-anything-rekordbox 是做什么的?
面向智能体的 Pioneer Rekordbox 6/7 原生 CLI 工具,可编程控制 DJ 曲库和实时调音台。
安装
pip install cli-anything-rekordbox
前提条件:
- Python 3.10+
- 已安装 Rekordbox 6 或 7(必须存在
master.db) - 虚拟 MIDI 驱动(用于实时调音台控制):
- Windows:loopMIDI / LoopBe / teVirtualMIDI
- macOS:IAC Driver
- Linux:ALSA 虚拟 MIDI(
snd-virmidi)
用法
# 状态检查
cli-anything-rekordbox status
# REPL 模式
cli-anything-rekordbox
# JSON 输出(适用于智能体)
cli-anything-rekordbox --json library search "Daft Punk"
命令组
曲库
| 命令 | 描述 |
|---|---|
count | 曲目总数 |
search QUERY | 按标题/艺人子串搜索曲目 |
info TRACK_ID | 曲目完整元数据 |
dump --out FILE.json | 导出完整曲库为 JSON |
播放列表
| 命令 | 描述 |
|---|---|
list | 所有播放列表 |
create NAME [--force] [--no-backup] | 新建播放列表 |
add NAME --track-title T [--force] [--no-backup] | 添加曲目 |
clear NAME [--force] [--no-backup] | 清空播放列表 |
播放列表写入操作会在变更前创建 master.db 备份。如果 Rekordbox 正在运行,则拒绝执行,除非指定 --force;强制写入仍需备份。--no-backup 仅在 Rekordbox 关闭时接受。
调音台(实时 MIDI)
| 命令 | 描述 |
|---|---|
play --deck N | 播放/暂停 |
sync --deck N | 速度同步 |
crossfade FROM TO --secs S | 平滑交叉淡入淡出 |
eq --deck N --hi --mid --lo | EQ 控制 |
hot-cue --deck N --slot 1-8 | 触发 Hot Cue |
顶层命令
| 命令 | 描述 |
|---|---|
status | 运行时/数据库/MIDI 状态 |
install-mapping | 将 Bunker.midi.csv 放入 rekordbox 的 MidiMappings 文件夹 |
mix A B --secs S | 高级操作:搜索 + 加载 + 同步 + 交叉淡入淡出 |
工作原理
+------------------+
| 你的智能体 |
+--------+---------+
|
v
+------------------+
| cli-anything- |
| rekordbox CLI |
+--------+---------+
| |
v v
+----------+ +----------+
|pyrekord- | | mido + |
|box DB | | virtual |
|writes | | MIDI |
+----------+ +----------+
| |
v v
+----------+ +-----------+
| master.db| | Rekordbox |
|SQLCipher | | 实时调音台|
+----------+ +-----------+
- master.db 使用所有 rekordbox 6/7 安装共享的静态 AES-256 密钥加密(由 pyrekordbox 自动提取)
- 虚拟 MIDI 映射使用 Pioneer 标准的
.midi.csv格式;此 CLI 自带Bunker.midi.csv和install-mapping命令,可将其放入 rekordbox 的MidiMappings/文件夹
JSON 输出
每个命令都支持 --json:
$ cli-anything-rekordbox --json library count
{"track_count": 30344}
许可证
MIT