JSJorge Sebastián Soriano EN

Caso · Sistema multiagente

IA para Humanos: diez agentes que preparan una newsletter diaria

Un sistema de diez agentes que investiga, comprueba, escribe y prepara cada mañana una newsletter de inteligencia artificial para gente que no es técnica. Funciona desde el 31 de julio de 2026 y publicar es siempre una decisión mía.

Qué es
Proyecto personal · newsletter diaria en Substack
Estado
En funcionamiento desde el 31/07/2026
Mi papel
Producto, diseño, revisión de cada cambio y operación diaria. Implementación asistida por IA (Claude Code)
Tecnologías
Python, Pydantic, FastAPI, httpx, pytest, mypy, Docker, Claude Code, Ollama
Los diez agentes de IA para Humanos, cada uno con un solo trabajo
Los diez agentes, de la recopilación a la persona que decide si se publica.

Cómo funciona, en vídeo

Cómo funciona: los diez agentes uno a uno (2 min).
El viaje de una noticia: entra, se revisa, se corrige y sale (1 min 14 s).

El problema

Cada día salen decenas de noticias sobre inteligencia artificial y casi todas están escritas para quien ya sabe del tema. Quería una newsletter diaria en español que eligiera las tres que de verdad afectan a una persona normal, las comprobara y las contara en lenguaje de calle.

Hacerlo a mano cada mañana no era sostenible, y con un modelo de lenguaje a secas salían textos que sonaban a máquina y afirmaban cosas sin respaldo. El reto era automatizarlo sin perder tres reglas: nada sin fuente, nada que suene a máquina y nada que llegue al lector sin que lo decida una persona.

Qué hace

Recopilador17 fuentesLimpieza y relevanciareglas + puntuaciónVerificadorcada afirmaciónEscritor ⇄ editorhasta aprobarUna personadecide si se publica
  • Recopilador, rastreador y limpieza. Lee 17 fuentes, sigue las columnas de opinión hasta la noticia original y quita repetidos y ruido con reglas deterministas, sin modelo de lenguaje.
  • Relevancia e investigador. Puntúa lo que le importa a una persona normal, agrupa las coberturas de un mismo hecho y lee cada historia entera.
  • Verificador. Comprueba cada afirmación contra su fuente. Al escritor solo le llegan los hechos respaldados.
  • Escritor y editor. Uno escribe y el otro puntúa claridad, precisión, estilo y accesibilidad y pide cambios concretos hasta aprobar.
  • Lector profano y notas. Un lector sin formación técnica señala lo que no entendería; una reescritura solo se acepta si no pierde precisión. Al final, tres frases para difundir la edición.
  • Arranca solo a las 7:30 y deja un borrador en Substack y un correo al editor. El código no puede enviar nada a los suscriptores.

Decisiones técnicas

  • Orquestación propia en vez de un framework de agentes. El flujo es fijo: un orquestador determinista en Python es más fácil de probar y depurar y no ata el sistema a ningún proveedor.
  • Tres motores en cascada. Principal, respaldo y uno local de emergencia. Si llega a escribir el local, la edición se retiene para revisión.
  • Lo que importa se comprueba en código: longitud, formato, muletillas de texto generado o el límite de caracteres de Substack no se dejan al criterio del modelo.
  • Calidad medida aparte de los tests. Una evaluación con casos de entrada fijos, ocho controles deterministas y jueces que miden el anclaje en las fuentes detecta si un cambio de instrucciones empeora el texto.
  • Reglas calibradas con datos de producción. La reescritura para ganar comprensión bajaba la precisión en 7 de 13 ejecuciones; ahora se conserva siempre la versión más precisa.
  • Los tests no salen al mundo. Tras un incidente en el que la batería de pruebas llegó a enviar un correo real, hay tres barreras independientes que lo impiden.

Qué se muestra y con qué datos

ParteEn la demoDetalle
Recorrido de la explicación y del vídeoRealEjecución del 22/09/2026, sacada de su registro.
Cifras generalesRealRepositorio y telemetría del sistema a 28/09/2026.
Posición de cada barra en el gráfico de relevanciaSintéticoLos recuentos por tramo son reales; la posición dentro del tramo es ilustrativa.
Código, instrucciones de los agentes, fuentes con nombre y textos de mediosNo incluidoNo se publican: la página explica qué hace el sistema, no cómo.

Resultados

60ediciones generadas31/07 al 28/09/2026
392tests automáticosen verde el 28/09/2026
107cambios revisadoscommits del repositorio
0 €coste de modelo por ediciónsuscripción existente y modelo local

Las ediciones generadas no son ediciones publicadas: publicar es una decisión manual en Substack y aquí no se mide. Una edición diaria tarda unos 16 minutos y medio.

Limitaciones y siguientes pasos

  • Muchas ediciones salen retenidas: en septiembre, 22 de 43, casi siempre porque la reescritura bajaba la precisión. Es lo correcto para el lector, pero pide más revisión humana; calibrar esa tolerancia es el siguiente paso.
  • Hubo fallos: 9 de 86 ejecuciones terminaron en error, por ejemplo al cambiar de versión el motor principal. El sistema avisa por correo y reintenta una vez.
  • La publicación depende de una interfaz no oficial de Substack, aislada en un único adaptador.
  • Corre en un ordenador personal con el planificador de tareas de Windows; hay una versión en contenedores preparada.

Escenas de la explicación

Fotogramas de la explicación animada, con las cifras reales de la edición del 22/09/2026.

El verificador comprueba cada afirmación contra su fuente
El verificador comprueba cada afirmación contra su fuente
El editor no aprueba la versión 1 y pide cambios concretos
El editor no aprueba la versión 1 y pide cambios concretos
La reescritura pierde precisión: se queda la versión 2
La reescritura pierde precisión: se queda la versión 2
Resultados del 31 de julio al 28 de septiembre de 2026
Resultados del 31 de julio al 28 de septiembre de 2026
Mi papel en el proyecto
Mi papel en el proyecto