CommunityProgramación y desarrollogithub.com

cindulasai/spotify-playlist-curator

Se utiliza cuando alguien desea recomendaciones musicales o una lista de reproducción de Spotify para un estado de ánimo, actividad, ocasión, cultura o solicitud de descubrimiento, quiere refinar una selección anterior o administrar explícitamente su memoria de gustos musicales o importar historial de escucha. Incluye solicitudes musicales vagas y modo de entrevista. Utiliza las herramientas disponibles de Spotify para búsquedas literales y preguntas sobre el estado de reproducción.

¿Qué es spotify-playlist-curator?

Esta habilidad transforma una solicitud musical vaga o específica en una lista de reproducción de Spotify curada, verificada y secuenciada, conservando las elecciones explícitas del usuario, verificando la identidad y los metadatos disponibles, explicando cualquier incertidumbre y aprendiendo solo con consentimiento. Funciona tanto en Codex como en Claude, y se adapta a las capacidades de las herramientas disponibles (por ejemplo, búsqueda, creación de listas, lectura de colecciones) sin asumir un nivel de cuenta específico. El proceso comienza estableciendo capacidades y consentimiento, lo que incluye leer las directrices del conector de Spotify y la política de memoria de gustos. Luego, la habilidad recupera pistas verificadas del catálogo, las evalúa según restricciones estrictas (como duración máxima, idioma, contenido), las secuencia siguiendo una guía de calidad y emoción, y finalmente valida el resultado con un script de verificación antes de entregarlo. Soporta modos literal, rápido, completo y de entrevista, y puede manejar desde una sola pista hasta listas complejas para eventos o descubrimiento en géneros desconocidos. La entrega se realiza mediante las herramientas de creación de listas de Spotify o, si no están disponibles, como una lista ordenada verificada con enlaces, siempre respetando la autorización del usuario.

Compatible con✓Claude Code✓Codex CLI~Cursor
npx skills add https://github.com/cindulasai/spotify-playlist-curator/tree/HEAD

Installed? Explore more Programación y desarrollo skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

Curador de listas de reproducción de Spotify

Crea una secuencia de pistas reales que satisfaga la solicitud de este oyente. Conserva sus elecciones explícitas, verifica la identidad y los metadatos disponibles, explica la incertidumbre y aprende solo con consentimiento. Funciona en Codex y Claude; las capacidades de las herramientas, no los nombres de las plataformas ni el nivel de cuenta asumido, determinan la entrega.

Elige la cantidad de trabajo

  • Búsqueda literal: utiliza las instrucciones de búsqueda musical de la plataforma; busca y devuelve su enlace canónico. Sin análisis de gustos ni proceso de curación.
  • Rápido, por defecto: para una lista pequeña/simple, utiliza la evidencia de gustos disponible, crea un resumen compacto, recupera un grupo modesto, verifica las selecciones y ejecuta el verificador. Sin entrevista obligatoria, juego de roles del Consejo, listas exhaustivas, crítico independiente ni repetición minuto a minuto.
  • Completo: se utiliza para restricciones complejas, listas largas, eventos, coincidencia de ritmo, descubrimiento en escenas desconocidas o una solicitud de profundidad. Expande en listas específicas, verifica un grupo más grande, secuencia y utiliza un crítico independiente si es compatible y está autorizado.
  • Entrevista, opcional: pregunta solo las preguntas que cambian la decisión en rondas cortas. No vuelvas a preguntar preferencias ya indicadas. Detente inmediatamente con "tú decides" o "solo construye". Si una elección faltante hace imposible interpretar una restricción estricta, aclara esa elección o devuelve un borrador etiquetado.

Defaults es la única autoridad para los valores predeterminados de estilo numérico y la precedencia de anulación. Lee otras referencias solo cuando sea necesario.

1. Establecer capacidades, consentimiento y el resumen

Lee la guía del conector y el adaptador de plataforma correspondiente. Respeta las instrucciones de Spotify instaladas en el anfitrión. Descubre las capacidades de búsqueda, consulta por lotes, metadatos, lectura de colecciones, escritura exacta, generador y biblioteca. No infieras la elegibilidad a partir de un nombre de herramienta ni asumas que la creación de listas de reproducción siempre requiere Premium.

Usa solo las palabras del oyente, los datos de escucha accesibles y las preferencias musicales confirmadas. Nunca infieras religión, etnia, salud, edad o género a partir de la música, nombres, país o idioma. El historial parcial respalda "no observado en tu historial accesible", no "nunca has escuchado esto".

Antes del aprendizaje duradero, lee la política de memoria. Consentimiento desconocido significa solo para la sesión. "Dejar de aprender" bloquea las escrituras de aprendizaje; "olvidar" elimina los datos coincidentes de todos los almacenes de perfiles gestionados. Usa un directorio de sesión temporal propiedad de la persona que llama y límpialo en finally/un administrador de contexto. Mantén las rutas específicas de la cuenta separadas; detente si el oyente actual no se puede asociar de manera segura con el perfil.

Escribe un resumen compacto con la solicitud, las restricciones explícitas, la duración elegida, el contexto, la preferencia de familiaridad/descubrimiento y cualquier suposición sustancial. Copia las restricciones textualmente; traduce las aplicables en hard_constraints para el verificador. Distingue máximo de objetivo aproximado. La hora/el clima son contexto opcional, nunca razones para anular la solicitud. Consulta intención y contexto.

2. Recuperar y verificar

Comienza con anclajes reales del oyente o resultados de catálogo, luego artistas cercanos/discografías/consultas en escritura nativa. Los nombres de canciones recordados por el modelo son hipótesis. Usa consultas por lotes del catálogo para elementos conocidos cuando estén presentes; usa búsqueda en lenguaje natural para descubrimiento. Reutiliza los resultados ya verificados durante esta ejecución. Escala el grupo a la solicitud; detén la búsqueda cuando las restricciones se cumplan con opciones útiles.

Para cada pista seleccionada:

  • confirma el tipo MÚSICA, el título/artista/versión previstos y la capacidad de reproducción devuelta;
  • conserva el URI/URL canónico devuelto, la duración y los metadatos de lanzamiento/contenido disponibles;
  • preserva el resultado fuente o una referencia de fuente en la procedencia de la sesión;
  • distingue la identidad de la grabación del título de la canción, incluyendo actuaciones en vivo/clásicas distintas;
  • rechaza una versión no deseada de karaoke/tributo/alterada, no cada aparición de una palabra como "en vivo" en un nombre de artista legítimo;
  • etiqueta honestamente la familiaridad no observada y el idioma/contenido/introducción desconocidos.

Para solicitudes limpias, usa las calificaciones reportadas cuando estén disponibles. Una calificación explícita falla; una calificación ausente es desconocida, no limpia. Un título "Edición de radio" no prueba una letra limpia. Una promesa estricta de limpieza necesita evidencia afirmativa de la fuente o permanece sin verificar. El BPM reportado por la fuente no es un BPM medido de forma independiente. Las marcas de tiempo de introducción/voz no son una entrada de ritmo medida. No se realizó ninguna audición de audio a menos que se haya accedido y evaluado el audio real.

Sin conector, usa páginas confiables de artistas/sellos/catálogo y marca las pistas como verificadas en la web. La capacidad de reproducción en el mercado de Spotify permanece desconocida. Proporciona enlaces fuente; nunca inventes URIs de Spotify. Consulta recuperación de música mundial.

3. Ajustar y secuenciar

Puntúa a través del perfil apropiado para el consentimiento cuando sea útil; aplica vetos, exclusiones de contexto, fatiga y reglas de repetición reciente. No equipares reproducción saltada/incompleta con desagrado. Las solicitudes explícitas de un solo artista, todo nuevo, repetición de favoritos o introducción larga anulan los valores predeterminados de estilo. Sigue la guía de secuenciación; preserva la cultura solicitada y el objetivo emocional. La guía de emoción respalda la agencia del usuario; no es una evaluación clínica.

Escribe playlist.json con metadatos devueltos, procedencia y cualquier restricción estricta. scripts/playlist_check.py --help y su esquema de módulo documentan los campos. Por ejemplo:

{"arc":"discovery","allow_adjacent_artist":true,
 "hard_constraints":{"track_count":6,"max_minutes":25,"languages":["te"],"max_intro_seconds":15},
 "tracks":[]}

Este ejemplo vacío es una ilustración del esquema y debe fallar la validación. Las entradas reales necesitan evidencia para los límites prometidos. target_minutes es aproximado; hard_constraints.max_minutes es un límite superior. tempo_band requiere BPM respaldado por la fuente, y peak_at_minute requiere códigos de energía y duraciones confiables.

4. Validar y desafiar

Ejecuta python3 scripts/playlist_check.py playlist.json. Un valor distinto de cero significa una restricción violada, entrada no válida o evidencia obligatoria no verificada. El informe cuenta solo la evidencia que proporciona; no contacta a Spotify ni prueba que un resultado fuente copiado sea auténtico. Preserva la fuente original de forma independiente en la sesión.

Revisa la identidad, artista/versión, mercado, cultura, contenido, exclusiones y procedencia de las afirmaciones. Para el modo Completo, proporciona entradas del crítico a un agente independiente si es compatible y está autorizado; de lo contrario, etiqueta la revisión como del mismo hilo. Juzga contra la solicitud del usuario, no una lista de reproducción ideal genérica. Un recorrido de secuencia es una revisión de metadatos, no una escucha.

Repara solo las posiciones fallidas, luego vuelve a verificar. Usa las rondas limitadas en los valores predeterminados. Cuando una restricción estricta aún falla o no está verificada, no la crees/publiques como conforme. Entrega un borrador parcial claramente etiquetado con el requisito exacto no resuelto; sugiere una relajación sin aplicarla silenciosamente. Una puntuación subjetiva alta no puede anular una puerta estricta fallida.

5. Entregar resultados confirmados

Usa herramientas exactas de creación/agregado cuando estén disponibles y autorizadas por una solicitud de creación de lista de reproducción. Respeta los límites de lote de la herramienta. Lee todas las páginas de vuelta, verifica la preparación, compara URIs ordenados y deriva afirmaciones de los contenidos confirmados. Ante una escritura incierta, lee/reconcilia antes de otra adición; nunca reintentes a ciegas. Persiste solo el resultado confirmado en el historial apropiado para el consentimiento. Consulta la guía del conector para escrituras parciales y listas de reproducción generadas.

Solo generador: envía un resumen conciso, luego lee los contenidos generados si existe un lector. Etiquétalo como interpretación de Spotify. Si difiere del corte verificado del curador, distínguelos. Sin lectura de retorno, no afirmes contenidos exactos ni cumplimiento de restricciones.

Sin capacidad/elegibilidad de escritura: devuelve la lista ordenada verificada con enlaces devueltos. Nunca guardes/elimines elementos de la biblioteca, reproduzcas audio o cambies una lista de reproducción existente simplemente porque se solicitaron recomendaciones. Usa las reglas de autorización del anfitrión para cada acción.

Responde en el idioma del usuario, escalado a la lista: nombre, duración/cantidad confirmada, enlace o lista de pistas compacta, una suposición material y cualquier evidencia no resuelta. Explica brevemente las selecciones destacadas. Di "no observado en el historial accesible" en lugar de "nuevo para ti" sin evidencia más sólida. Invita a comentarios de mantener/saltar; ofrece memoria duradera solo con consentimiento explícito.

6. Seguimiento

Usa el banco verificado para intercambios/solicitudes más largas y vuelve a ejecutar las comprobaciones. Las actualizaciones recurrentes usan la política de rotación única en los valores predeterminados; los ganadores guardados y las repeticiones explícitas tienen prioridad. La programación necesita una herramienta de programación real y autorización del usuario. Una actualización escribe solo cuando sus restricciones y comprobaciones de entrega pasan.

Las solicitudes de memoria usan comandos documentados; después de olvidar, inspecciona los almacenes gestionados e informa el alcance real, incluido que el propio historial de Spotify, los mensajes de chat anteriores y las exportaciones propiedad del usuario están fuera del control de eliminación de esta habilidad. Nunca copies comentarios emocionales o sensibles sin procesar en resúmenes persistentes.

Skills relacionados