Skip to content

add spotify skill#94

Merged
yourconscience merged 2 commits into
mainfrom
add-spotify-skill
Jun 15, 2026
Merged

add spotify skill#94
yourconscience merged 2 commits into
mainfrom
add-spotify-skill

Conversation

@yourconscience

Copy link
Copy Markdown
Owner

Summary

  • New skills/spotify/SKILL.md wrapping spotify_player CLI (6.9k stars, Rust, actively maintained)
  • Covers playback control, search, queue, playlists, devices, library
  • Requires Spotify Premium + one-time OAuth setup
  • Plugin copy rendered for Claude Code/Codex delivery
  • Added PR description rule to AGENTS.md (no bot attribution footers)

Test plan

  • dotagents render regenerates plugin copy correctly
  • Skill loads in Claude Code via /spotify
  • spotify_player commands work after auth setup

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request adds a new rule to AGENTS.md regarding PR descriptions and introduces a new Spotify skill documentation (SKILL.md) in two locations to control Spotify playback via the spotify_player CLI. The review feedback correctly identifies several incorrect CLI commands and options in the documentation—such as invalid subcommands for playing, searching, queuing, transferring playback, and managing playlists—and provides accurate code suggestions to align the documentation with the actual CLI syntax.

Important

The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.

Comment thread plugins/dotagents/skills/spotify/SKILL.md Outdated
Comment thread plugins/dotagents/skills/spotify/SKILL.md Outdated
Comment thread plugins/dotagents/skills/spotify/SKILL.md Outdated
Comment thread plugins/dotagents/skills/spotify/SKILL.md Outdated
Comment thread plugins/dotagents/skills/spotify/SKILL.md Outdated
Comment thread skills/spotify/SKILL.md Outdated
Comment thread skills/spotify/SKILL.md Outdated
Comment thread skills/spotify/SKILL.md Outdated
Comment thread skills/spotify/SKILL.md Outdated
Comment thread skills/spotify/SKILL.md Outdated

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 1e5be0f77f

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread skills/spotify/SKILL.md Outdated
Comment on lines +46 to +47
spotify_player playback play --name "track or album name"
spotify_player playback start --uri spotify:track:TRACKID

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Fix playback examples to match spotify_player CLI

For requests to play a named track or URI, these examples parse incorrectly: upstream commands.rs defines play as resume-only with no arguments, and start requires a track/context/liked/radio subcommand plus --id or --name rather than --uri (the project README’s scripting example uses playback start track --id ...). Agents following this skill to start a specific song will get an argument error instead of playback.

Useful? React with 👍 / 👎.

Comment thread skills/spotify/SKILL.md Outdated
Comment on lines +63 to +65
spotify_player search --query "bohemian rhapsody" --type track
spotify_player search --query "miles davis" --type artist
spotify_player search --query "chill vibes" --type playlist

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Pass search terms positionally

When using the search section, every example fails argument parsing because upstream init_search_command only defines a required positional query; there are no --query or --type options. This blocks the main discovery workflow the skill advertises, so these should be positional-query examples such as spotify_player search "..." with any type filtering done on the returned data.

Useful? React with 👍 / 👎.

Comment thread skills/spotify/SKILL.md Outdated
### Queue

```bash
spotify_player queue --uri spotify:track:TRACKID

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Replace the nonexistent queue subcommand

The CLI has no top-level queue subcommand: upstream command initialization lists get, playback, connect, like, authenticate, playlist, generate, and search, while queue is only exposed as a get key queue value. When a user asks to queue a track, this documented command will fail with an unrecognized subcommand, so either remove the queue-management claim or document a supported flow if one exists.

Useful? React with 👍 / 👎.

Comment thread skills/spotify/SKILL.md Outdated

```bash
spotify_player get key devices
spotify_player playback transfer --device "device name"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Use connect for device selection

For device selection, upstream commands.rs exposes a connect subcommand with required --id or --name; playback has no transfer subcommand. This example will fail whenever a user asks to switch playback devices, so it should use the supported connect syntax.

Useful? React with 👍 / 👎.

Comment thread skills/spotify/SKILL.md Outdated
Comment on lines +84 to +86
spotify_player get key playlists
spotify_player playlist create --name "My Playlist"
spotify_player playlist delete --id PLAYLISTID

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Fix playlist command names and key values

This playlist block uses names the CLI does not accept: the key enum exposes user-playlists, not playlists, creation is playlist new <name> rather than playlist create --name, and deletion takes a positional id rather than --id. Playlist listing, creation, and deletion requests will therefore fail from the skill as written.

Useful? React with 👍 / 👎.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 365f69b47e

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread skills/spotify/SKILL.md

## Core Rules

- Use `--json` or pipe through `jq` when output will be consumed by another tool or agent.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Remove invalid --json guidance

For any agent following this core rule by adding --json, the CLI will reject the command: checked upstream init_cli, which registers only theme/config/cache/config-override/daemon globals, and the README’s scripting example pipes spotify_player search "$query" | jq ... with no JSON flag. Keep the jq advice, but remove --json or agents will turn otherwise valid playback/search/get requests into argument errors.

Useful? React with 👍 / 👎.

@yourconscience yourconscience merged commit 1852ab5 into main Jun 15, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant