Spotify Intelligence
PassAudited by VirusTotal on May 11, 2026.
Overview
Type: OpenClaw Skill Name: spotify-intelligence Version: 1.0.1 The skill bundle "spotify-intelligence" appears to be designed for managing and interacting with a Spotify account, including playback control, recommendations, and playlist organization. **Analysis:** 1. **Core Functionality:** The Python scripts primarily interact with the Spotify API (via `urllib.request`) and a local SQLite database (`data/spotify-intelligence.sqlite`). 2. **Credential Handling:** OAuth tokens are obtained and refreshed using `scripts/auth/oauth_auth.py` and `scripts/playback/playback_control.py`. Client credentials (`SPOTIFY_CLIENT_ID`, `SPOTIFY_CLIENT_SECRET`) are read from environment variables or `config.json`, which is a good practice. Tokens are stored locally in `data/tokens.json`. All network requests use `urllib.request` and properly encode parameters, preventing URL injection. 3. **Database Interactions:** All scripts interacting with the SQLite database (`sqlite3` module) consistently use parameterized queries (e.g., `INSERT INTO ... VALUES (?,?,?)`, `WHERE key=?`), effectively preventing SQL injection vulnerabilities. 4. **Local File Operations:** Scripts read and write JSON payloads to local files (e.g., `--payload` argument for `ingest-track-features.py`, `ingest_playback_event.py`, `ingest_playlist_items.py`, `store_spotify_read.py`). These are local file paths, not remote URLs, and the content is processed as JSON, not executed. 5. **Command Execution (`subprocess.run
Findings (0)
Artifact-based informational review of SKILL.md, metadata, install specs, static scan signals, and capability signals. ClawScan does not execute the skill or run runtime probes.
If authorized with these scopes, the skill could make visible or persistent changes to the user's Spotify account, including playback state, saved library, and playlists.
These OAuth scopes allow modifying playback, the user's library, and private/public playlists. The stated capability covers Spotify recommendations and playback, but the provided instructions do not clearly bound when library or public playlist changes may occur.
"scopes": ["user-read-playback-state", "user-modify-playback-state", ... "user-library-modify", "playlist-modify-private", "playlist-modify-public", "user-top-read"]
Use the smallest Spotify scopes needed for the chosen workflow, split read-only and write-capable modes, and require explicit user confirmation before any library or playlist modification.
A user or agent invoking the queue action can alter the active Spotify queue.
The recommendation helper can invoke the playback control script to add recommended tracks to the Spotify queue. This matches the playback/recommendation purpose, but it is still an account-state-changing action.
if args.action == "queue": ... "playback_control.py", "queue_add", "--query", name or ""
Treat queue/playback actions as write actions and confirm the target device and number of tracks before running them.
Anyone with access to the local files may learn listening history or potentially reuse stored Spotify tokens.
The skill persists OAuth tokens and a local SQLite knowledge/history store. This is disclosed and aligned with recommendations and feedback, but it contains sensitive account and listening-behavior data.
local-storage:\n - data/tokens.json\n - data/spotify-intelligence.sqlite\n... Stores OAuth tokens locally on the host
Store the data directory securely, avoid sharing it, and provide clear cleanup or token-revocation guidance.
