gregoryg/aipihkal/spotify-cli
Claude Code and agent skill by gregoryg/aipihkal
- community
Checking that the SKILL.md file is still in the repository.
Use the standalone spotify-cli JSON CLI for Spotify authentication, search, playback, devices, queue, playlists, saved library items, followed artists, podcast shows and episodes, and music discovery or curation. Trigger when spotify-cli is installed or the user identifies its checkout or virtualenv.
Install
npx vskill@latest install gregoryg/aipihkal/spotify-cliSKILL.md
Spotify CLI
Use spotify-cli as the account-level Spotify control surface. Prefer compact JSON and the fewest commands that safely answer or perform the request.
Locate the tool
Check before planning a command sequence:
command -v spotify-cli- a user-provided checkout's
.venv/bin/spotify-cliorvenv/bin/spotify-cli python -m spotify_cliwhen that module is already available
If none exists, state exactly what was checked. Do not invent playback, search, or library results. Only discuss installation when the user asks for setup help.
Default invocation
Use compact JSON for agent work:
Fast paths: playback requests
Assume spotify-cli is installed, authenticated and available on PATH.
For ordinary playback actions, execute the known command directly. Do not call --help, devices list, playback current, or search separately unless the request is ambiguous or the command fails.
Known device aliases
| Name | Device ID | Area | |
|---|---|---|---|
| excession | 008afef11e0d804b86c7e72974015f06013a7158 | laptop | |
| Rozi Office | 3c9a855de1f6f7087a144d9d4dd2a66f16673723 | Rozi office, Rochelle's office | |
| Pancho + Lefty | d8af1fb21efb27793b55b31d2b3e4c74e113f796 | Bedroom | |
| Music Room | 928bd169ef769ef083ee9dbcab2c4e28a5c7e528 | Music Room, North Living Room | |
| Kitchen | f02e9b67c561fd4ba27baede3ac0d669e3605652 | Kitchen | |
| PanchoSanza | 167c8576bfce8918e0dd544f298b71800914cec9 | Greg's phone |
Direct patterns
Play an artist on a named device:
Move current playback to a named device and keep it playing:
For these patterns, use the device ID from the alias table directly. Fall back to devices list only when the requested name is absent from the table or transfer fails.
For a documented fast path, run it directly. Inspect =spotify-cli COMMAND --help= only when the needed syntax is not documented, an option is uncertain, or the direct command fails.
Choose the shortest path
| User intent | Command | |
|---|---|---|
| What is playing? | playback current | |
| Pause, resume, skip, change volume | playback pause/play/next/previous/volume | |
| Find and immediately play a likely result | search-and-play | |
| Inspect candidates without playing | search or search-and-play --dry-run | |
| Start new content on a named Spotify Connect device | devices list, then pass --device-id to search-and-play or playback play | |
| Move existing playback to another device | devices transfer | |
| Inspect or add to the queue | queue get or queue add | |
| Manage playlists | playlists ... | |
| Manage saved tracks, albums, shows, or episodes | library ... | |
| Manage followed artists | artists list-followed/follow/unfollow | |
| Inspect a podcast | search --type show, then shows episodes |
Authentication
Start diagnosis with:
Normal login is spotify-cli auth login. If an older cached token lacks scopes introduced by a CLI upgrade, use:
The durable config is normally ${XDG_CONFIG_HOME:-~/.config}/spotify-cli/spotify-cli.conf. Useful helpers are:
Read references/headless-auth.md only for remote/headless login.
Playback and search
Direct transport actions need no read-before-write preflight:
Prefer search-and-play for a straightforward request:
Use --dry-run or explicit search when title ambiguity matters:
For an album, playlist, or artist context:
For an episode or one or more tracks, repeat --uri as needed:
Devices and queue
When starting new content on a named device, resolve its ID and pass it directly to the playback command. Do not transfer playback first:
Use devices transfer when moving existing playback without selecting new content:
Playback mutations generally require Premium and an active Spotify Connect device. If no device is active, ask the user to open Spotify somewhere or transfer to a device returned by devices list.
Playlists and library
Resolve exact item and playlist identifiers before mutation:
Saved items use the library family:
Artist following is separate from saved-library items:
Podcasts
Spotify models podcasts as shows containing episodes:
Use the first returned episode as the latest visible result only after confirming the response order. Account visibility can include private or linked feeds.
The CLI can expose Spotify state, but it is not a durable listening journal or want-to-listen tracker. Do not invent local tracking files or schemas as part of this skill; that belongs to a separate user-owned application.
Discovery and curation
For mood-based discovery or playlist construction, read references/curation-patterns.md. Search results are candidates, not verdicts: form a thesis, choose anchors, widen carefully, sequence coherently, then iterate.
Failure handling
Read references/failure-modes.md when a command fails. Key rules:
- Empty
playback currentoutput can validly mean nothing is playing. - Do not retry mutations blindly after an ambiguous network/API failure; inspect
state first to avoid duplicate playlist or queue changes.
- Smart Shuffle cannot reliably be restored through the current Web API after a
shuffle mutation.
- Reauthorize with
auth login --forceafter adding scopes to an existing setup. - Spotify's removed recommendations endpoints are not a usable fallback for
discovery.
Prefer Spotify URIs from command output. The CLI also accepts supported Spotify URLs and bare IDs, but URIs preserve the item type explicitly.
Security
- Security scanPassed, 100 of 100Pattern checks on the skill's files.
- Model reviewNot runA model review is scheduled for the next rescan.
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/spotify-cli/SKILL.md
Popularity
- 7-day trend score
- 0
Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/gregoryg/aipihkal/spotify-cli)