verify
How to verify media.sh changes end-to-end on a real Mac — isolated data dir, real native build, and a controllable fake now-playing app (no dependency on the…
Show or switch the Mac's audio output device (built-in speakers, AirPods, external displays, DACs). Use when the user asks where sound is playing, which output device is active, or wants audio routed to a different device.
$ npx -y skills add Bangs00/claude-media-control --skill output --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/outputContext preview
The summary Claude sees to decide when to auto-load this skill.
Show or switch the Mac's audio output device (built-in speakers, AirPods, external displays, DACs). Use when the user asks where sound is playing, which output device is active, or wants audio routed to a different device.
name: output description: Show or switch the Mac's audio output device (built-in speakers, AirPods, external displays, DACs). Use when the user asks where sound is playing, which output device is active, or wants audio routed to a different device. argument-hint: [device name or number] allowed-tools: Bash
Requested device: $ARGUMENTS
Current output device and everything available (JSON):
!`"${CLAUDE_PLUGIN_ROOT}/scripts/media.sh" output`
Now do the following:
1. **No argument** → present the devices as a short markdown list, marking the current one, e.g. `🔊 **MacBook Pro Speakers** (current)`, then offer to switch.
2. **With a device request** → map what the user said to one entry in the `devices` list above (they may use loose words: "에어팟"/"earbuds" → the AirPods entry, "speakers" → the built-in speakers, "monitor"/"TV" → the display device). Then run:
"${CLAUDE_PLUGIN_ROOT}/scripts/media.sh" output "<device name>"The script itself accepts an exact name, a unique case-insensitive substring, or the 1-based list position, and prints the updated list.
3. Confirm in one styled line: `🔊 Output → **AirPods Pro**`.
Error handling:
and ask which one (AskUserQuestion is not available here — just ask in text).
point to `/media:doctor`.
in the list — switching cannot connect it; the user must connect it first.
Tip: the statusline can show the current output device (icon by device kind — 🎧 Bluetooth/headphones, 📺 HDMI/DisplayPort, 📶 AirPlay, 🔊 speakers) — check "Output device" in the `/media:statusline` Items tab, or place it anywhere with a numeric pattern (digit 6).
The current track, live in your Claude Code statusline — ticking every second, ⌘+clickable, styleable down to the bar characters: And whatever your Mac is playing — Spotify, Apple Music, a browser tab, VLC — you can control it from the chat too: "what song is
How to verify media.sh changes end-to-end on a real Mac — isolated data dir, real native build, and a controllable fake now-playing app (no dependency on the…
Show the album artwork (cover art) of the currently playing track. Use when the user asks to see the album art, cover image, or artwork of what's playing.
Quick media settings — turn the now-playing statusline, the /media:now progress bar, or the playback history on/off, or reset the statusline to its default…
Diagnose the media plugin — native build, read/control paths, fallbacks, permissions — and suggest fixes. Use when media commands fail, return nothing, or the…
Show recently played tracks (a passive local playback log). Use when the user asks what played earlier, what song was on before, recently played music, or to…