Curator de Tendencias Culturales
Propósito
Curar recomendaciones de libros, películas y series basadas en tendencias públicas. Priorizar el calor cultural reciente, las listas principales de buena reputación, las calificaciones a largo plazo, la confianza en el número de calificaciones y la diversidad de categorías por encima del emparejamiento con el perfil personal.
Cuándo Usar
Usa esta habilidad para solicitudes como:
- Recomendar libros o películas basados en popularidad reciente y listas públicas.
- Producir resúmenes semanales/mensuales/anuales de libros y películas.
- Comparar artículos recientemente populares con clásicos de larga duración.
- Crear informes de recomendación programados o contenido para notificaciones.
- Evitar depender del historial de lectura/visualización personal del usuario.
Modo de Operación Predeterminado
Asume que el resumen predeterminado es semanal a menos que el usuario especifique lo contrario:
- Ventana de tiempo: últimos 30 días más listas del año en curso.
- Salida: 5 libros y 5 películas/series.
- Libros: priorizar libros legibles en chino, especialmente ediciones en chino, ediciones traducidas, señales de publicación/discusión en chino, o libros fácilmente legibles por una audiencia de habla china. Evitar convertir la sección de libros en una traducción directa de listas en inglés.
- Los libros no deben convertirse en una lista de novedades: tratar las páginas de novedades solo como fuentes de descubrimiento. En un resumen semanal normal, mezclar libros recientemente populares con fondo de catálogo estable, clásicos modernos, obras de alta puntuación a largo plazo y selecciones de medios/comunidad.
- Películas/Series: priorizar obras que sean consumibles o activamente discutibles en contextos de habla china. Mantener por defecto un espacio fijo para un clásico de la historia del cine global; no necesita ser una obra en chino, pero debe tener un valor clásico ampliamente reconocido y señales convenientes de visualización/discusión en chino.
- Estilo: curación editorial concisa.
- Datos personales: por defecto, usar fuentes públicas; solo usar registros personales cuando se solicite explícitamente.
- Fuentes: preferir rankings públicos, listas de medios reputados, gráficos de plataformas y consenso entre fuentes.
- Enlaces: conservar enlaces cliqueables a las fuentes en el Markdown final siempre que haya una URL disponible.
- Artefactos: cuando el usuario solicite una salida publicable, informe, artículo o resultado reutilizable, crear un artefacto
.mden lugar de solo responder en línea.
Flujo de Trabajo
-
Definir el brief de curación.
- Identificar tipos de contenido: libros, películas, series, o todos.
- Identificar ventana de tiempo: 7 días, 30 días, año en curso, año pasado, o clásicos de todos los tiempos.
- Usar la regla de locale predeterminada a menos que se anule: los libros deben ser legibles en chino primero; las películas/series deben ser consumibles o discutibles en chino primero, con un espacio para un clásico global.
-
Recopilar ítems candidatos.
- Leer
references/source_strategy.md. - Buscar en múltiples fuentes independientes en lugar de depender de una sola plataforma.
- Capturar título, creador, tipo, fuente, URL, calificación, número de calificaciones, lista/rango, año, etiquetas y por qué apareció.
- Desduplicar títulos traducidos y ediciones repetidas.
- Leer
-
Clasificar y filtrar.
- Leer
references/scoring_rules.md. - Filtrar ítems obviamente de baja calidad: calificación muy baja, muestra muy pequeña, listas puramente de marketing sin evidencia.
- Equilibrar el calor reciente con la calidad a largo plazo.
- Aplicar diversidad: evitar recomendar solo un género, país, tipo de contenido o familia de fuentes.
- Para libros, limitar los candidatos a novedades e incluir explícitamente opciones estables/de fondo/clásicas para que el resultado no sea solo un resumen de últimos libros de Douban.
- Leer
-
Renderizar el resumen.
- Leer
references/output_format.md. - Si el usuario solicita publicar, postear, enviar a una plataforma, o adaptar para Cuenta Oficial de WeChat/newsletter/red social, leer
references/publishing_formats.md. - Usar
scripts/rank_items.pycuando los candidatos se guarden como JSON. - Usar
scripts/render_digest.pypara generar Markdown a partir del JSON clasificado. - Incluir para cada ítem: razón de recomendación, por qué ahora, señal de fuente y nota de riesgo.
- Usar enlaces Markdown cliqueables para los títulos de los ítems, notas de fuente y referencias finales cuando haya URLs disponibles.
- Guardar el borrador final publicable como un archivo
.mdcuando el usuario solicite un artefacto concreto o un artículo listo para plataforma. - Para la entrega configurada mediante WeCom, usar
scripts/send_wecom_notification.shsolo después de que existan el artículo y la portada. Mantener el Webhook en la configuración local ignorada; nunca ponerlo en las instrucciones de la habilidad, artefactos o Git.
- Leer
Entrega Opcional
Cuando el usuario solicite enviar un resumen completo a un grupo de WeCom configurado, leer las instrucciones de entrega en references/publishing_formats.md. La entrega predeterminada es una notificación de título, imagen de portada y un archivo adjunto Markdown. Enviar el cuerpo completo del artículo solo cuando se solicite explícitamente, ya que podría abarcar varios mensajes de grupo.
- Guardar el historial de recomendaciones cuando sea apropiado.
- Si se ejecuta repetidamente, almacenar los títulos emitidos en un archivo JSON de historial local en el proyecto del llamante o en el directorio de salida elegido.
- Registrar el historial por defecto, pero no usarlo para excluir o reducir la clasificación de recomendaciones a menos que el usuario solicite explícitamente evitar repeticiones.
- Usar claves canónicas y alias para que los títulos traducidos y los títulos originales puedan desduplicarse juntos cuando la desduplicación esté habilitada.
- Ventanas de duplicación opcionales: diario = 30 días, semanal = 8 semanas, mensual = 6 meses, clásico = 90 días.
Esquema JSON de Candidatos
Al usar scripts, preparar un archivo JSON como una lista o un objeto con items:
{
"items": [
{
"title": "Título del libro o película",
"creator": "Autor, director o showrunner",
"type": "book",
"url": "https://example.com/item",
"year": 2026,
"rating": 8.7,
"rating_scale": 10,
"rating_count": 12000,
"source_count": 3,
"trend_window": "30d",
"trend_score": 0.8,
"rank": 4,
"tags": ["history", "nonfiction"],
"sources": ["Douban", "WeRead", "media list"],
"evidence": ["Apareció en una lista mensual", "Alto número de calificaciones"],
"reason": "Por qué vale la pena recomendarlo",
"risk": "Posible advertencia"
}
]
}
Uso de Scripts
Clasificar candidatos:
python3 scripts/rank_items.py candidates.json --out ranked.json --history recommendation_history.json --mode weekly
La política predeterminada --duplicate-policy none registra el historial después pero no usa el historial para excluir o reducir la clasificación de ítems.
Modo diario con una ventana de duplicación fuerte de 30 días, solo cuando se solicite explícitamente:
python3 scripts/rank_items.py candidates.json --out ranked.json --history recommendation_history.json --mode daily --duplicate-policy exclude
Renderizar el resumen Markdown y añadir los ítems emitidos al historial:
python3 scripts/render_digest.py ranked.json --out digest.md --books 5 --films 5 --history-out recommendation_history.json --mode weekly
Estándar de Calidad
Recomendar menos ítems antes que llenar espacios débiles. Si un candidato solo tiene tráfico a corto plazo y ninguna evidencia de calidad, excluirlo o etiquetarlo como seguimiento de hype. Si las fuentes entran en conflicto, explicar brevemente la incertidumbre.