Files
live-radio/.cursor/skills/ozan-radio/SKILL.md
T
ozan 02ea026851 Replace Spotify API with screenshot taste workflow and example profile.
Remove spotify integration; add TASTE-FROM-SCREENSHOTS guide; ship Ozan settings.json and taste_seeds.json as Cursor examples plus new wandering dervish track.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-07 14:47:47 +01:00

1.5 KiB

name, description
name description
ozan-radio Operate Live Ozan Radio — DeepSeek DJ, Lyria 3, taste from settings.json and taste_seeds.json. Use for start/generate/skip, or updating taste from Spotify screenshots (no API).

Live Ozan Radio

When to use

  • User says "ozan radio", "live radio", "generate a track", "what's playing"
  • User sends Spotify screenshots — update settings.json + taste_seeds.json (see docs/TASTE-FROM-SCREENSHOTS.md)
  • Operating or debugging tinqs/live-radio

Taste from screenshots

No Spotify API. Read docs/TASTE-FROM-SCREENSHOTS.md for the copy-paste Cursor prompt. Infer genres/mood/instruments from Home, Library, Daily Mixes; write both JSON files; never suggest playing Spotify URLs.

Prerequisites

  • GEMINI_API_KEY and DEEPSEEK_API_KEY in .env
  • Server: python -m ozan_radio serve (port 8787)

Operations

Intent Action
Start station python -m ozan_radio serve
Generate track POST http://127.0.0.1:8787/api/generate
Now playing GET http://127.0.0.1:8787/api/now
Skip / shuffle POST http://127.0.0.1:8787/api/skip
One-shot CLI python -m ozan_radio generate

DJ behavior

DeepSeek reads settings.json + taste_seeds.json, avoids recent titles, outputs Lyria prompts. Generation only — no catalog playback.

Models

  • Lyria: lyria-3-pro-preview (songs) or lyria-3-clip-preview (30s)
  • DeepSeek: deepseek-chat via Tinqs inference or https://api.deepseek.com/v1