| name | api-exploration |
| description | Use when a task needs a new or modified YouTube Music API call, response parser validation, authenticated endpoint investigation, or fixture capture; explore endpoints with `swift run api-explorer` before changing production code. |
| metadata | {"short-description":"Explore YouTube Music APIs"} |
API Exploration
Use this skill when a task needs a new or modified YouTube Music API call, response parser validation, authenticated endpoint investigation, or fixture capture.
Guardrails
- Always enhance
Sources/APIExplorer/main.swift; do not write one-off scripts for endpoint exploration.
- Never commit real cookies, SAPISID values, tokens, or account identifiers. Redact anything sensitive in notes, fixtures, and examples.
- Prefer API endpoints over WebView whenever the functionality already exists in
YTMusicClient.
Workflow
- Start with
swift run api-explorer auth if the task touches sign-in-backed endpoints.
- Check what already exists with
swift run api-explorer list.
- Probe the endpoint with
browse, action, or continuation before touching production code.
- Save representative payloads with
-o when parser work or regression tests need fixtures.
- Update
docs/api-discovery.md if you confirm a new endpoint, parameter, or auth constraint.
Common Commands
swift run api-explorer auth
swift run api-explorer list
swift run api-explorer browse FEmusic_home -v
swift run api-explorer browse FEmusic_liked_playlists -v
swift run api-explorer action search '{"query":"never gonna give you up"}'
Landmarks
Sources/APIExplorer/main.swift
docs/api-discovery.md
Tests/KasetTests/Fixtures/
Authenticated exploration reads the debug cookie export from ~/Library/Application Support/Kaset/cookies.dat.