name: custom-sounds description: List or validate Pushover notification sounds (built-in plus this account's custom uploaded sounds) via the /1/sounds.json API. Use when choosing a notification sound, checking whether a custom sound exists, or picking a safe fallback before sending. TRIGGERS - pushover sounds, list sounds, validate sound, custom sound, which sounds.
custom-sounds
Self-Evolving Skill: This skill improves through use. If instructions are wrong, parameters drifted, or a workaround was needed — fix this file immediately, don't defer. Only update for real, reproducible issues.
Enumerate/validate sounds via the TS core pushover_core.ts sounds.
env -u HTTPS_PROXY -u HTTP_PROXY bun "${CLAUDE_PLUGIN_ROOT}/skills/_lib/pushover_core.ts" sounds list # name<TAB>label
env -u HTTPS_PROXY -u HTTP_PROXY bun "${CLAUDE_PLUGIN_ROOT}/skills/_lib/pushover_core.ts" sounds has piano # exit 0 if present
env -u HTTPS_PROXY -u HTTP_PROXY bun "${CLAUDE_PLUGIN_ROOT}/skills/_lib/pushover_core.ts" sounds resolve piano pianobar # echo first that exists
Notes (verified 2026-05-30)
- Pushover silently accepts invalid sound names (no API error) — so always
resolve/hasbefore relying on a custom sound; a typo would just fall back to the user's default silently. pianois a custom sound on this account;pianobaris built-in. Custom sounds are per application token, so pass--app main|testto query the right app.
Post-Execution Reflection
After this skill completes, check before closing:
- Did the sound upload succeed AND become selectable in a real notification? A reported success with a missing sound means the validation is wrong.
- Were loudness/format constraints honoured? If the device rejected the sound, fix the sourcing pipeline.
Only update if the issue is real and reproducible — not speculative.