Do not open an issue containing Spotify access/refresh tokens, .dev.vars,
encrypted KV files, OAuth codes, real inventory JSON, playlist IDs/names, or a
user's plan and receipts. Reproduce with the synthetic examples instead.
The service binds to 127.0.0.1 and uses an admin bearer token. Do not expose it
through a tunnel, public Worker route, reverse proxy, or shared machine account.
Encryption of the local token record prevents accidental plaintext disclosure;
it does not isolate the token from another process running as the same OS user.
Every live account artifact path is restricted to .spotify-organizer/, and
symlinked path components are rejected. The admin token is accepted only in an
Authorization: Bearer header, never in a URL.
Do not place real Spotify inventory, playlist, track, artist, or plan content in an AI prompt, model context, issue, log, or third-party service. The repository skill may operate commands by path and report content-free counts; it must not open private account artifacts. Spotify's current Developer Policy separately prohibits content analysis and AI-model ingestion. Written Spotify approval is required before changing this boundary.
Spotify currently requires user-library-modify for removing even a playlist
URI through DELETE /me/library. A stolen token therefore has broader library
authority than this code exercises. The executor calls that endpoint only with
spotify:playlist: URIs after separate approval and never exposes an unlike
operation.
To revoke access, remove the app authorization in Spotify's account settings.
After stopping the exact local Wrangler process, delete only your own local
.wrangler/, .dev.vars, and .spotify-organizer/ directories/files if you no
longer need them. Never publish those paths or a Git history that contained them.
Use the repository's private security-reporting channel when one is configured. Until then, do not post exploit details or secrets in a public issue.