El Problema
Gestionar tareas manualmente genera fricción. Las ideas suelen llegar como pensamientos rápidos, notas de voz o texto desestructurado, pero convertirlas en un sistema de productividad organizado requiere varios pasos manuales: transcribir, extraer tareas, decidir si pertenecen a un proyecto existente, crear nuevos proyectos, fijar fechas límite y mantener la coherencia en Notion.
Necesitaba un sistema que recibiera una entrada en lenguaje natural y decidiera automáticamente qué hacer con ella: crear tareas sueltas, asignar tareas a proyectos existentes o crear nuevos proyectos con sus tareas asociadas.
La Solución
AI Task Automation es un flujo n8n autoalojado que recibe texto o audio, lo procesa con OpenAI y crea tareas y proyectos estructurados dentro de Notion.
El flujo soporta tres tipos de salida en una sola petición:
- Tareas sueltas (inbox) cuando no se necesita relación con un proyecto.
- Tareas vinculadas a proyectos existentes en Notion cuando la IA detecta una coincidencia semántica.
- Nuevos proyectos en Notion con sus tareas asociadas cuando el usuario solicita explícitamente un nuevo proyecto.
El sistema además devuelve un mensaje de respuesta limpio y registra cada ejecución exitosa en Google Sheets.

Stack y Arquitectura
La automatización está construida con n8n autoalojado en un VPS, usando OpenAI para la comprensión del lenguaje, Notion como base de datos de tareas y proyectos, y Google Sheets como capa de registro de ejecuciones.
- Despliegue autoalojado: n8n corre en un VPS propio, manteniendo la automatización independiente de plataformas hosted.
- Entrada de audio y texto: El flujo acepta tanto texto como audio. El audio se transcribe antes de normalizarse en la misma estructura de mensaje que el texto.
- Contexto IA con proyectos: Antes de llamar a OpenAI, el flujo obtiene los proyectos actuales de Notion y envía una lista normalizada al modelo.
- Salida JSON estructurada: La respuesta de la IA se parsea en una estructura estricta con tareas inbox, coincidencias con proyectos existentes y nuevos proyectos.
- Acciones en Notion: El flujo crea tareas independientes, añade tareas a proyectos existentes o crea nuevos proyectos y les adjunta sus tareas.
- Registro de ejecuciones: Cada ejecución exitosa se registra en Google Sheets con contadores de tareas, proyectos, estado y mensaje de respuesta.
- Gestión global de errores: Un flujo de error separado en n8n captura las ejecuciones fallidas y almacena los detalles para depuración.
Visión General del Flujo
El flujo está organizado en bloques visuales para facilitar la comprensión de la ruta de ejecución:
- Input · Captura Audio/Texto — Recibe texto o audio por webhook. El audio se transcribe y ambos caminos se normalizan en un único mensaje.
- Contexto · Proyectos Notion — Obtiene los proyectos actuales de Notion y construye el contexto que usará la IA para evitar duplicados y enrutar tareas correctamente.
- IA · Clasificación de Tareas — Convierte la petición en lenguaje natural a JSON estructurado, separando tareas inbox, tareas de proyectos existentes y nuevos proyectos.
- Enrutamiento · Caminos de Ejecución — Divide el plan de la IA en ramas independientes para que una sola petición pueda disparar múltiples acciones a la vez.
- Acciones · Base de Datos Notion — Crea tareas inbox, añade tareas a proyectos existentes o crea nuevos proyectos con sus tareas asociadas.
- Salida · Respuesta Webhook — Construye un mensaje de resumen limpio y lo devuelve a la interfaz externa.
Funcionalidades Destacadas
- Captura de tareas en lenguaje natural desde texto o voz.
- Transcripción automática para entradas de audio.
- Asignación semántica a proyectos comparando con los proyectos existentes en Notion.
- Creación de nuevos proyectos solo cuando el usuario lo solicita explícitamente.
- Creación de tareas en Notion con descripciones, fechas límite y metadatos de recurrencia.
- Soporte para múltiples caminos de ejecución en una sola petición.
- Resumen de respuesta profesional devuelto a la interfaz de entrada.
- Logs de ejecución en Google Sheets para monitorización y métricas.
- Flujo global de errores para capturar ejecuciones fallidas.
Diseño del Prompt IA
Una parte clave del sistema es el prompt utilizado para transformar la entrada desestructurada en un plan JSON fiable.
El prompt instruye al modelo para:
- Extraer cada tarea del mensaje del usuario.
- Comparar las tareas con los proyectos existentes de Notion usando nombre y descripción.
- Asignar tareas a proyectos existentes solo por encima de un umbral de confianza.
- Evitar forzar coincidencias cuando hay incertidumbre.
- Crear nuevos proyectos solo cuando se solicitan explícitamente.
- Interpretar fechas relativas como “hoy”, “mañana” o “el próximo lunes”.
- Aplicar contexto global de fecha como “tareas para hoy” a todas las tareas relacionadas.
- Devolver únicamente JSON válido sin texto adicional.
Este diseño de prompt hace que la automatización sea lo suficientemente flexible para entrada natural, pero lo bastante predecible para ejecutar acciones de base de datos de forma segura.
Ejemplo de Entrada
Necesito crear unas tareas para hoy. Investigar opciones de hosting
para el nuevo proyecto web. Añadir tests unitarios al módulo de
autenticación del proyecto Mobile App y preparar la presentación
del sprint review para el viernes.
Ejemplo de Salida
{
"existing_project_matches": [
{
"project_id": "abc-123",
"project_name": "Mobile App",
"match_confidence": 0.92,
"tasks": [
{
"name": "Añadir tests unitarios al módulo de autenticación",
"description": "Escribir e integrar tests unitarios para el módulo de auth.",
"deadline": "2026-05-08T07:00:00Z"
}
]
}
],
"new_projects": [],
"independent_tasks": [
{
"name": "Investigar opciones de hosting para el nuevo proyecto web",
"description": "Evaluar diferentes proveedores de hosting para el próximo proyecto web.",
"deadline": "2026-05-08T07:00:00Z"
},
{
"name": "Preparar la presentación del sprint review",
"description": "Preparar slides y demo para el sprint review del viernes.",
"deadline": "2026-05-10T07:00:00Z"
}
]
}
Observabilidad y Logging
Para que la automatización sea fiable en uso diario, añadí una capa de logging con Google Sheets.
Cada ejecución exitosa almacena: timestamp, ID de ejecución, tipo de entrada, mensaje original, número de proyectos encontrados, tareas inbox creadas, tareas asignadas a proyectos existentes, nuevos proyectos creados, tareas de nuevos proyectos, total de tareas creadas, estado y mensaje de respuesta.
Un flujo global de errores separado captura las ejecuciones fallidas, incluyendo el flujo que falló, nombre del nodo, mensaje de error, stack trace, URL de ejecución y modo de ejecución.
Esto proporciona una capa de observabilidad básica similar a lo que necesitaría una automatización en producción.
Evolución del Producto
La automatización evolucionó a través de varias iteraciones basadas en uso real:
- Versión inicial — La primera versión extraía tareas de texto o audio y las creaba directamente en Notion.
- Creación de proyectos — Añadí soporte para crear nuevos proyectos en Notion y adjuntarles tareas.
- Awareness de proyectos existentes — El flujo empezó a obtener los proyectos actuales de Notion antes de llamar a OpenAI, permitiendo a la IA asignar tareas a proyectos existentes.
- Enrutamiento estructurado — La salida de la IA se dividió en tres ramas: tareas inbox, tareas de proyectos existentes y nuevos proyectos.
- Respuesta profesional — El flujo ahora devuelve un resumen con cuántas tareas y proyectos se crearon.
- Logging y gestión de errores — Se añadieron logs en Google Sheets y un flujo global de errores para monitorizar ejecuciones.
Retos Técnicos
El principal reto fue hacer el flujo fiable a pesar de la flexibilidad del lenguaje natural. Algunos de los problemas resueltos fueron:
- Normalizar entradas de audio y texto en la misma estructura.
- Evitar que la IA cree proyectos duplicados.
- Asignar tareas a proyectos existentes sin forzar coincidencias débiles.
- Manejar estructuras anidadas como proyectos con múltiples tareas.
- Evitar la creación duplicada de tareas al fusionar ramas en n8n.
- Preservar la relación entre los proyectos de Notion recién creados y sus tareas generadas.
- Devolver un formato de respuesta compatible con el sistema de entrada externo.
Resultado
- Automatización de uso diario: El sistema ya es utilizable como herramienta de productividad personal.
- Reducción de entrada manual: La entrada en lenguaje natural se convierte automáticamente en datos estructurados en Notion.
- Organización orientada a proyectos: Las tareas se enrutan a proyectos existentes en lugar de crear duplicados.
- Autoalojado y extensible: El flujo corre en un VPS y puede ampliarse con servicios adicionales.
- Arquitectura profesional: El flujo incluye agrupación visual, nombrado claro de nodos, logging y gestión de errores.