Agent Skills
返回列表
📁

QQ 音乐 Mac 控制

办公效率 更新于 2026.08.30

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_4f6c1333/qq-music-mac-control。

技能介绍

要解决什么问题

在 Mac 上写代码或开会时,你往往希望用一句话让助手切歌、暂停或调音量,而不是切到 QQ 音乐窗口点控件。常见做法依赖 AppleScript 或 Accessibility(辅助功能) 权限,审批麻烦,也容易因客户端 UI 变化而失效。

本技能面向 本机 QQ 音乐客户端(/Applications/QQMusic.app),把「播放 / 暂停、上一首 / 下一首、随机一首、音量加减、是否在跑」收敛成一组可被 Agent 调用的命令。

技能如何工作

实现上走 macOS 私有框架 MediaRemote:通过 Python 标准库里的 ctypes 调用 MRMediaRemoteSendCommand,向系统媒体层发送控制,而不是模拟点击界面。

文档中给出的命令常量包括:Play=0、Pause=1、Toggle=2、Stop=3、Next=4、Previous=5、VolUp=6、VolDown=7。用户侧说法会映射到脚本子命令,例如:

  • 播放 / 暂停:play(切换播放状态)
  • 切歌:next、prev
  • 随机:random(内部会随机跳转 1~5 次再播放)
  • 音量:volume-up、volume-down
  • 状态:status;必要时可用 launch 拉起客户端

脚本只用 Python 3 标准库(ctypes、subprocess),不额外装依赖。技能装在用户级目录 ~/.workbuddy/skills/,各项目共用;多台 Mac 需各自安装,各控本机 QQ 音乐。

适用边界与注意点

  • 平台:仅 macOS;依赖 MediaRemote,与 QQ 音乐作为当前 Now Playing 应用接收命令的前提一致。
  • 权限:优势是不需要 Accessibility、也不需要 AppleScript 自动化权限;但仍需本机已安装 QQ 音乐,首次使用可能会自动启动应用。
  • 随机播放:random 是「随机跳几次再播」,不等同于打开 QQ 音乐里的「随机播放模式」开关。
  • 若系统里另有其它 App 占着 Now Playing,实际受控对象可能不是 QQ 音乐,需要先让 QQ 音乐成为正在播放的前台媒体源。

使用场景

  • 在 Mac 上写代码或看文档时后台用 QQ 音乐听歌,需要暂停或下一首又不想 ⌘+Tab 切到播放器窗口。
  • 线上会议或录屏前,本机 QQ 音乐还在播,需要快速执行「暂停」或「音量小一点」避免麦克风拾音。
  • 对助手说「放首歌」「随机播放一首」,由 Agent 调用 `play` / `random` 驱动本机 QQ 音乐开始播放。
  • 切换开发机或重装系统后,先用「QQ 音乐在运行吗」触发 `status`,确认客户端状态再切歌或调音量。

适合人员

  • 在 macOS 上长期用 QQ 音乐当背景音的工程师,希望用对话控播但不愿开 Accessibility 或 AppleScript 自动化权限。
  • 经常远程开会、本机仍放音乐的咨询/设计/产品同学,需要一句话暂停或调音量而不是手动找窗口。
  • 已在每台 Mac 安装 WorkBuddy 技能目录的用户,要在所有项目里统一用自然语言控制本机 `/Applications/QQMusic.app`。
  • 用 Python 维护本地自动化脚本的 Mac 用户,偏好仅标准库 `ctypes`、无额外依赖的媒体控制方案。