Skill Vetter
一个面向 Security 场景的 Agent 技能。原始说明:Security-first skill vetting for AI agents. Use before installing any skill from ClawdHub, GitHub, or other sources. Checks for red flags, permission scope, and suspicious patterns.
一个面向 Security 场景的 Agent 技能。原始说明:Discover and control Apple media/AirPlay devices (HomePod, Apple TV, AirPlay speakers) from macOS. Use when you want to scan for AirPlay devices, map names→IPs/IDs, pair/connect, and control playback/volume using pyatv (atvremote) and Airfo...
name: apple-media
description: Discover and control Apple media/AirPlay devices (HomePod, Apple TV, AirPlay speakers) from macOS. Use when you want to scan for AirPlay devices, map names→IPs/IDs, pair/connect, and control playback/volume using pyatv (atvremote) and Airfoil.
Author: Parth Maniar — @officialpm
This skill is a thin workflow wrapper around two tools:
atvremote) for discovering Apple TVs/HomePods and (when supported/paired) remote-control style commands.airfoil skill) for reliable speaker connect/disconnect + volume control across AirPlay speakers (including HomePods).This skill uses pyatv installed via pipx.
Install/repair (pinned to Python 3.12 to avoid Python 3.14 asyncio issues):
pipx install pyatv || pipx upgrade pyatv
pipx reinstall pyatv --python python3.12
Verify:
atvremote --help | head
# Fast scan (5s)
./scripts/scan.sh 5
# Faster scan when you know IP(s)
./scripts/scan-hosts.sh "10.0.0.28,10.0.0.111" 3
# Or JSON output
node ./scripts/scan-json.js 5
You’ll see devices like:
Use Airfoil for speaker control (reliable for HomePods):
# List speakers Airfoil can see
../airfoil/airfoil.sh list
# Connect and set volume
./scripts/connect.sh "Living Room"
./scripts/volume.sh "Living Room" 35
# Disconnect (direct)
../airfoil/airfoil.sh disconnect "Living Room"
First, scan to find the Apple TV name or id, then run commands:
# Examples (device name can be Apple TV or other targets)
atvremote -n "TV" playing
atvremote -n "TV" play_pause
atvremote -n "TV" turn_on
atvremote -n "TV" turn_off
If you get auth/protocol errors, pairing/credentials are needed (device-dependent).
atvremote scan is the source of truth for IP/ID discovery.scripts/scan.shRuns atvremote scan with a configurable timeout.
./scripts/scan.sh 5
scripts/scan-json.jsParses atvremote scan output into a compact JSON summary (name, address, model, services).
node ./scripts/scan-json.js