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>
This commit is contained in:
@@ -10,24 +10,20 @@ from ozan_radio.dj import DeepSeekDJ
|
||||
from ozan_radio.lyria import LyriaEngine
|
||||
from ozan_radio.queue import RadioQueue
|
||||
from ozan_radio.server import app
|
||||
from ozan_radio.spotify import SpotifyTaste
|
||||
from ozan_radio.taste import load_taste_seeds
|
||||
|
||||
|
||||
async def generate_one() -> None:
|
||||
"""CLI: generate a single track and print the result."""
|
||||
cfg = Config.from_env()
|
||||
taste = await SpotifyTaste(cfg).fetch_taste()
|
||||
seeds = None if taste else load_taste_seeds()
|
||||
if taste:
|
||||
print(f"Taste: {taste.summary}\n")
|
||||
elif seeds:
|
||||
seeds = load_taste_seeds()
|
||||
if seeds:
|
||||
print(f"Taste seeds: {seeds.summary}\n")
|
||||
else:
|
||||
print("No Spotify or seeds — DJ will freestyle.\n")
|
||||
print("No taste_seeds.json — DJ uses settings.json only.\n")
|
||||
|
||||
q = RadioQueue(cfg.output_dir)
|
||||
plan = await DeepSeekDJ(cfg).plan_next(taste, q.recent_titles, seeds)
|
||||
plan = await DeepSeekDJ(cfg).plan_next(q.recent_titles, seeds)
|
||||
print(f"DJ: {plan.dj_line}")
|
||||
print(f"Title: {plan.title}")
|
||||
print(f"Prompt: {plan.lyria_prompt}\n")
|
||||
|
||||
Reference in New Issue
Block a user