Ir al contenido principal
Desarrollo & IA

Cómo Crear un Agente Autónomo en n8n que Busque Noticias y las Publique en Redes Sociales [2026]

5 de febrero de 2026
30 min

Crea un trabajador digital que no duerme. Este agente de IA busca noticias, las resume con GPT-4 y las publica en tus redes mientras tú descansas.

Javier Santos

Especialista en IA & Machine Learning

📧¿Te gusta este contenido?

Únete a 547+ profesionales que reciben tips de IA cada semana. Sin spam, cancela cuando quieras.

Cómo Crear un Agente Autónomo en n8n que Busque Noticias y las Publique en Redes Sociales

Imagina un asistente que trabaja mientras duermes: busca las noticias más relevantes de tecnología, las resume de forma atractiva, y las publica en Twitter, LinkedIn y Facebook sin que tengas que hacer nada.

Esto ya no es ciencia ficción. Con n8n y el nodo AI Agent puedes crear "trabajadores digitales" que ejecutan tareas complejas de forma autónoma, tomando decisiones inteligentes gracias a LLMs como GPT-4 o Claude.

En este tutorial construiremos un agente autónomo completo paso a paso, con el workflow listo para importar.


¿Qué es un agente autónomo y por qué n8n es perfecto para crearlos?

Un agente autónomo de IA es un sistema que toma decisiones, ejecuta acciones y aprende de los resultados sin intervención humana constante.

Diferencia entre automatización tradicional y agentes

AspectoAutomatización tradicionalAgentes autónomos
DecisionesReglas fijas (if/then)Razonamiento con LLM
AdaptabilidadRequiere reprogramarSe adapta al contexto
ComplejidadTareas simples y repetitivasTareas complejas multi-paso
HerramientasAPIs predefinidasUsa herramientas dinámicamente
ErroresFalla y paraReintenta con estrategias alternativas

Por qué n8n es ideal para agentes

Según el blog oficial de n8n, la plataforma fue 3 veces más rápida que escribir código Python con LangChain para un caso de uso real (SanctifAI):

"Creamos nuestro primer workflow en n8n en solo 2 horas gracias al builder visual y los sistemas de enrutamiento." — SanctifAI

Las ventajas de n8n para agentes:

  • Nodo AI Agent nativo: Basado en LangChain, con razonamiento y memoria
  • 400+ integraciones: APIs de redes sociales, bases de datos, servicios web
  • Visual y código: Combina drag-and-drop con JavaScript/Python cuando necesitas
  • Self-hosted: Tus datos, tus reglas, sin límites de ejecución
  • Gratuito: Licencia fair-code, sin costes ocultos


Arquitectura del agente: Cómo funciona

Flujo completo del agente

code
1┌─────────────────────────────────────────────────────────────────┐
2│ AGENTE AUTÓNOMO DE NOTICIAS │
3├─────────────────────────────────────────────────────────────────┤
4│ │
5│ 1. TRIGGER (Schedule) │
6│ └── Cada 6 horas │
7│ │
8│ 2. BÚSQUEDA DE NOTICIAS │
9│ ├── RSS Feeds (TechCrunch, Wired, etc.) │
10│ ├── Google Trends │
11│ └── News API │
12│ │
13│ 3. AGENTE AI (Razonamiento) │
14│ ├── Analiza relevancia │
15│ ├── Selecciona las mejores │
16│ └── Decide qué publicar y dónde │
17│ │
18│ 4. GENERACIÓN DE CONTENIDO │
19│ ├── Resumen para Twitter (280 chars) │
20│ ├── Post largo para LinkedIn │
21│ └── Versión Facebook │
22│ │
23│ 5. APROBACIÓN (Opcional) │
24│ └── Telegram/Slack para revisar antes de publicar │
25│ │
26│ 6. PUBLICACIÓN │
27│ ├── Twitter/X │
28│ ├── LinkedIn │
29│ └── Facebook │
30│ │
31│ 7. LOGGING │
32│ └── Google Sheets para tracking │
33│ │
34└─────────────────────────────────────────────────────────────────┘

Componentes clave

  1. Schedule Trigger: Dispara el agente cada X horas
  2. RSS/HTTP Nodes: Obtiene noticias de múltiples fuentes
  3. AI Agent Node: El cerebro que decide qué hacer
  4. Chat Model Node: Conexión a GPT-4, Claude o modelo local
  5. Tool Nodes: Herramientas que el agente puede usar
  6. Social Media Nodes: Twitter, LinkedIn, Facebook
  7. IF/Switch Nodes: Lógica condicional
  8. Error Handling: Reintentos y notificaciones de error


Paso 1: Configurar n8n (si no lo tienes)

Opción A: Docker Compose (Recomendado)

yaml
1# docker-compose.yml
2version: "3.8"
3services:
4 n8n:
5 image: docker.n8n.io/n8nio/n8n:latest
6 container_name: n8n
7 restart: unless-stopped
8 ports:
9 - "5678:5678"
10 environment:
11 - N8N_HOST=localhost
12 - N8N_PORT=5678
13 - N8N_PROTOCOL=http
14 - NODE_ENV=production
15 - WEBHOOK_URL=http://localhost:5678/
16 - GENERIC_TIMEZONE=Europe/Madrid
17 # Credenciales de encriptación (genera tu propia clave)
18 - N8N_ENCRYPTION_KEY=tu-clave-secreta-muy-larga
19 volumes:
20 - ./n8n_data:/home/node/.n8n

bash
1# Iniciar
2docker compose up -d
3 
4# Acceder
5open http://localhost:5678

Opción B: Home Assistant Add-on

Si ya tienes Home Assistant:

  1. Ve a Configuración > Complementos > Tienda de complementos
  2. Busca "n8n" e instala
  3. Accede desde la barra lateral


Paso 2: Configurar credenciales necesarias

Antes de crear el workflow, necesitas credenciales para:

OpenAI (o alternativa)

  1. Ve a Credentials > Add Credential > OpenAI API
  2. Introduce tu API Key de platform.openai.com

Alternativamente, puedes usar:

  • Anthropic Claude: Similar configuración
  • Ollama local: Gratis, requiere servidor Ollama corriendo

Twitter/X

  1. Crea una app en developer.twitter.com
  2. Genera API Key, API Secret, Access Token, Access Token Secret
  3. En n8n: Credentials > Twitter OAuth1

LinkedIn

  1. Crea app en LinkedIn Developer Portal
  2. Solicita permisos de w_member_social
  3. En n8n: Credentials > LinkedIn OAuth2

News API (Opcional)

  1. Regístrate en newsapi.org (gratis para desarrollo)
  2. En n8n: Credentials > HTTP Header Auth

- Header Name: X-Api-Key

- Header Value: tu API key


Paso 3: Crear el workflow del agente

3.1 Trigger programado

json
1{
2 "nodes": [
3 {
4 "name": "Schedule Trigger",
5 "type": "n8n-nodes-base.scheduleTrigger",
6 "parameters": {
7 "rule": {
8 "interval": [
9 {
10 "field": "hours",
11 "hoursInterval": 6
12 }
13 ]
14 }
15 },
16 "position": [0, 0]
17 }
18 ]
19}

3.2 Obtener noticias de RSS

json
1{
2 "name": "RSS TechCrunch",
3 "type": "n8n-nodes-base.rssFeedRead",
4 "parameters": {
5 "url": "https://techcrunch.com/feed/"
6 }
7}

Añade múltiples nodos RSS para diversas fuentes:

javascript
1// Fuentes recomendadas de tecnología en español e inglés
2const feeds = [
3 "https://techcrunch.com/feed/",
4 "https://www.wired.com/feed/rss",
5 "https://www.theverge.com/rss/index.xml",
6 "https://feeds.feedburner.com/elandroidelibre",
7 "https://www.xataka.com/feedburner.xml",
8 "https://hipertextual.com/feed"
9];

3.3 Merge y filtrar noticias

json
1{
2 "name": "Merge Feeds",
3 "type": "n8n-nodes-base.merge",
4 "parameters": {
5 "mode": "append"
6 }
7}

Añade un nodo Code para filtrar por fecha (últimas 24h):

javascript
1// Filtrar noticias de las últimas 24 horas
2const now = new Date();
3const yesterday = new Date(now - 24 * 60 * 60 * 1000);
4 
5const recentNews = items.filter(item => {
6 const pubDate = new Date(item.json.pubDate || item.json.isoDate);
7 return pubDate > yesterday;
8});
9 
10// Limitar a las 10 más recientes
11return recentNews.slice(0, 10);

3.4 El nodo AI Agent (el cerebro)

Este es el componente más importante. Configura el nodo AI Agent:

json
1{
2 "name": "AI Agent",
3 "type": "@n8n/n8n-nodes-langchain.agent",
4 "parameters": {
5 "promptType": "define",
6 "text": "={{ $json.prompt }}",
7 "options": {
8 "systemMessage": "Eres un experto en marketing de contenidos tecnológicos. Tu trabajo es:\n\n1. Analizar las noticias proporcionadas\n2. Seleccionar las 3 más relevantes e interesantes para una audiencia tech\n3. Crear contenido atractivo para redes sociales\n\nCriterios de selección:\n- Novedad: ¿Es una noticia reciente y original?\n- Relevancia: ¿Interesa a desarrolladores, emprendedores o entusiastas tech?\n- Engagement: ¿Genera curiosidad o debate?\n\nPara cada noticia seleccionada, genera:\n- tweet: Versión de 280 caracteres con emoji y hashtags\n- linkedin: Post profesional de 200-300 palabras\n- facebook: Post casual de 100-150 palabras\n\nResponde SOLO en formato JSON válido."
9 }
10 }
11}

3.5 Configurar el modelo de chat

Conecta un nodo OpenAI Chat Model al agente:

json
1{
2 "name": "OpenAI Chat Model",
3 "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
4 "parameters": {
5 "model": "gpt-4-turbo-preview",
6 "options": {
7 "temperature": 0.7,
8 "maxTokens": 2000
9 }
10 }
11}

3.6 Preparar el prompt dinámico

Antes del agente, añade un nodo Code para construir el prompt:

javascript
1// Construir prompt con las noticias
2const noticias = items.map((item, i) => {
3 return `
4NOTICIA ${i + 1}:
5Título: ${item.json.title}
6Descripción: ${item.json.contentSnippet || item.json.description}
7Fuente: ${item.json.link}
8Fecha: ${item.json.pubDate || item.json.isoDate}
9`;
10}).join('\n---\n');
11 
12return [{
13 json: {
14 prompt: `Analiza estas noticias de tecnología y genera contenido para redes sociales:
15 
16${noticias}
17 
18Recuerda:
191. Selecciona las 3 mejores
202. Genera tweet, linkedin y facebook para cada una
213. Responde en JSON con esta estructura:
22{
23 "selected_news": [
24 {
25 "title": "...",
26 "source_url": "...",
27 "tweet": "...",
28 "linkedin": "...",
29 "facebook": "..."
30 }
31 ]
32}`
33 }
34}];

3.7 Parsear respuesta del agente

Añade un nodo Code para extraer el JSON:

javascript
1// Parsear respuesta del agente
2const response = items[0].json.output;
3 
4try {
5 // Extraer JSON de la respuesta
6 const jsonMatch = response.match(/\{[\s\S]*\}/);
7 if (jsonMatch) {
8 const parsed = JSON.parse(jsonMatch[0]);
9 return parsed.selected_news.map(news => ({ json: news }));
10 }
11} catch (error) {
12 console.error('Error parseando JSON:', error);
13}
14 
15return [];

3.8 Publicar en Twitter

json
1{
2 "name": "Post Twitter",
3 "type": "n8n-nodes-base.twitter",
4 "parameters": {
5 "text": "={{ $json.tweet }}",
6 "additionalFields": {}
7 },
8 "credentials": {
9 "twitterOAuth1Api": "tu-credencial"
10 }
11}

3.9 Publicar en LinkedIn

json
1{
2 "name": "Post LinkedIn",
3 "type": "n8n-nodes-base.linkedIn",
4 "parameters": {
5 "text": "={{ $json.linkedin }}\n\n🔗 Fuente: {{ $json.source_url }}",
6 "postAs": "person",
7 "visibility": "PUBLIC"
8 },
9 "credentials": {
10 "linkedInOAuth2Api": "tu-credencial"
11 }
12}

3.10 Sistema de aprobación (opcional pero recomendado)

Para revisar antes de publicar, añade aprobación via Telegram:

json
1{
2 "name": "Telegram Approval",
3 "type": "n8n-nodes-base.telegram",
4 "parameters": {
5 "chatId": "tu-chat-id",
6 "text": "📰 *Nueva publicación pendiente*\n\n*Título:* {{ $json.title }}\n\n*Tweet:* {{ $json.tweet }}\n\n*LinkedIn:* {{ $json.linkedin }}\n\n¿Aprobar publicación?",
7 "replyMarkup": "inlineKeyboard",
8 "inlineKeyboard": {
9 "rows": [
10 {
11 "row": {
12 "buttons": [
13 { "text": "✅ Aprobar", "callbackData": "approve_{{ $json.id }}" },
14 { "text": "❌ Rechazar", "callbackData": "reject_{{ $json.id }}" }
15 ]
16 }
17 }
18 ]
19 },
20 "parse_mode": "Markdown"
21 }
22}


Paso 4: Workflow completo listo para importar

Copia este JSON y pégalo en n8n (Ctrl+V en el canvas):

json
1{
2 "name": "Agente Autónomo de Noticias Tech",
3 "nodes": [
4 {
5 "parameters": {
6 "rule": {
7 "interval": [
8 {
9 "field": "hours",
10 "hoursInterval": 6
11 }
12 ]
13 }
14 },
15 "name": "⏰ Cada 6 horas",
16 "type": "n8n-nodes-base.scheduleTrigger",
17 "position": [0, 300]
18 },
19 {
20 "parameters": {
21 "url": "https://techcrunch.com/feed/"
22 },
23 "name": "📰 TechCrunch",
24 "type": "n8n-nodes-base.rssFeedRead",
25 "position": [200, 200]
26 },
27 {
28 "parameters": {
29 "url": "https://www.xataka.com/feedburner.xml"
30 },
31 "name": "📰 Xataka",
32 "type": "n8n-nodes-base.rssFeedRead",
33 "position": [200, 400]
34 },
35 {
36 "parameters": {
37 "mode": "append"
38 },
39 "name": "🔗 Merge Feeds",
40 "type": "n8n-nodes-base.merge",
41 "position": [400, 300]
42 },
43 {
44 "parameters": {
45 "jsCode": "// Filtrar últimas 24h y limitar a 10\nconst now = new Date();\nconst yesterday = new Date(now - 24 * 60 * 60 * 1000);\n\nconst recent = items.filter(item => {\n const date = new Date(item.json.pubDate || item.json.isoDate);\n return date > yesterday;\n});\n\nreturn recent.slice(0, 10);"
46 },
47 "name": "🔍 Filtrar Recientes",
48 "type": "n8n-nodes-base.code",
49 "position": [600, 300]
50 },
51 {
52 "parameters": {
53 "jsCode": "const noticias = items.map((item, i) => {\n return `NOTICIA ${i + 1}:\\nTítulo: ${item.json.title}\\nDescripción: ${item.json.contentSnippet || item.json.description}\\nFuente: ${item.json.link}\\nFecha: ${item.json.pubDate || item.json.isoDate}`;\n}).join('\\n---\\n');\n\nreturn [{\n json: {\n prompt: `Analiza estas noticias de tecnología:\\n\\n${noticias}\\n\\nSelecciona las 3 mejores y genera para cada una:\\n- tweet (280 chars, con emoji y hashtags)\\n- linkedin (200-300 palabras, profesional)\\n- facebook (100-150 palabras, casual)\\n\\nResponde SOLO en JSON válido con esta estructura:\\n{\"selected_news\": [{\"title\": \"...\", \"source_url\": \"...\", \"tweet\": \"...\", \"linkedin\": \"...\", \"facebook\": \"...\"}]}`\n }\n}];"
54 },
55 "name": "📝 Preparar Prompt",
56 "type": "n8n-nodes-base.code",
57 "position": [800, 300]
58 },
59 {
60 "parameters": {
61 "promptType": "define",
62 "text": "={{ $json.prompt }}",
63 "options": {
64 "systemMessage": "Eres un experto en marketing de contenidos tecnológicos. Selecciona las noticias más relevantes e interesantes para una audiencia tech hispanohablante. Siempre responde en JSON válido."
65 }
66 },
67 "name": "🤖 AI Agent",
68 "type": "@n8n/n8n-nodes-langchain.agent",
69 "position": [1000, 300]
70 },
71 {
72 "parameters": {
73 "model": "gpt-4-turbo-preview",
74 "options": {
75 "temperature": 0.7
76 }
77 },
78 "name": "OpenAI GPT-4",
79 "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
80 "position": [1000, 500]
81 },
82 {
83 "parameters": {
84 "jsCode": "const response = items[0].json.output;\ntry {\n const jsonMatch = response.match(/\\{[\\s\\S]*\\}/);\n if (jsonMatch) {\n const parsed = JSON.parse(jsonMatch[0]);\n return parsed.selected_news.map(news => ({ json: news }));\n }\n} catch (e) {\n console.error('Error:', e);\n}\nreturn [];"
85 },
86 "name": "📤 Extraer Contenido",
87 "type": "n8n-nodes-base.code",
88 "position": [1200, 300]
89 },
90 {
91 "parameters": {
92 "text": "={{ $json.tweet }}"
93 },
94 "name": "🐦 Post Twitter",
95 "type": "n8n-nodes-base.twitter",
96 "position": [1400, 200]
97 },
98 {
99 "parameters": {
100 "text": "={{ $json.linkedin }}\\n\\n🔗 {{ $json.source_url }}"
101 },
102 "name": "💼 Post LinkedIn",
103 "type": "n8n-nodes-base.linkedIn",
104 "position": [1400, 300]
105 },
106 {
107 "parameters": {
108 "sheetId": "TU_SHEET_ID",
109 "range": "Publicaciones!A:F",
110 "options": {},
111 "dataMode": "autoMapInputData"
112 },
113 "name": "📊 Log a Sheets",
114 "type": "n8n-nodes-base.googleSheets",
115 "position": [1600, 300]
116 }
117 ],
118 "connections": {
119 "⏰ Cada 6 horas": {
120 "main": [
121 [
122 { "node": "📰 TechCrunch", "type": "main", "index": 0 },
123 { "node": "📰 Xataka", "type": "main", "index": 0 }
124 ]
125 ]
126 },
127 "📰 TechCrunch": {
128 "main": [[{ "node": "🔗 Merge Feeds", "type": "main", "index": 0 }]]
129 },
130 "📰 Xataka": {
131 "main": [[{ "node": "🔗 Merge Feeds", "type": "main", "index": 1 }]]
132 },
133 "🔗 Merge Feeds": {
134 "main": [[{ "node": "🔍 Filtrar Recientes", "type": "main", "index": 0 }]]
135 },
136 "🔍 Filtrar Recientes": {
137 "main": [[{ "node": "📝 Preparar Prompt", "type": "main", "index": 0 }]]
138 },
139 "📝 Preparar Prompt": {
140 "main": [[{ "node": "🤖 AI Agent", "type": "main", "index": 0 }]]
141 },
142 "OpenAI GPT-4": {
143 "ai_languageModel": [[{ "node": "🤖 AI Agent", "type": "ai_languageModel", "index": 0 }]]
144 },
145 "🤖 AI Agent": {
146 "main": [[{ "node": "📤 Extraer Contenido", "type": "main", "index": 0 }]]
147 },
148 "📤 Extraer Contenido": {
149 "main": [
150 [
151 { "node": "🐦 Post Twitter", "type": "main", "index": 0 },
152 { "node": "💼 Post LinkedIn", "type": "main", "index": 0 }
153 ]
154 ]
155 },
156 "🐦 Post Twitter": {
157 "main": [[{ "node": "📊 Log a Sheets", "type": "main", "index": 0 }]]
158 },
159 "💼 Post LinkedIn": {
160 "main": [[{ "node": "📊 Log a Sheets", "type": "main", "index": 0 }]]
161 }
162 }
163}


Paso 5: Optimizaciones avanzadas

5.1 Añadir memoria al agente

Para que el agente recuerde publicaciones anteriores y evite repetir:

json
1{
2 "name": "Memory Buffer",
3 "type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
4 "parameters": {
5 "sessionKey": "news_agent_memory",
6 "windowSize": 10
7 }
8}

5.2 Usar herramientas personalizadas

El agente puede usar "tools" para buscar información adicional:

javascript
1// Tool: Buscar en Google Trends
2{
3 "name": "Check Google Trends",
4 "type": "@n8n/n8n-nodes-langchain.toolHttpRequest",
5 "parameters": {
6 "url": "https://trends.google.com/trends/api/dailytrends",
7 "options": {
8 "description": "Verifica si un tema es tendencia en Google. Usa esta herramienta para validar la relevancia de una noticia."
9 }
10 }
11}

5.3 Rate limiting para evitar spam

javascript
1// Nodo Code: Rate limiting
2const lastRun = $getWorkflowStaticData('global');
3const now = Date.now();
4 
5// Mínimo 1 hora entre ejecuciones exitosas
6if (lastRun.lastSuccess && (now - lastRun.lastSuccess) < 3600000) {
7 console.log('Rate limit: esperando más tiempo entre publicaciones');
8 return [];
9}
10 
11// Guardar timestamp
12lastRun.lastSuccess = now;
13 
14return items;

5.4 Detección de duplicados

javascript
1// Verificar si ya publicamos esta noticia
2const db = $getWorkflowStaticData('global');
3db.publishedUrls = db.publishedUrls || [];
4 
5const newItems = items.filter(item => {
6 const url = item.json.source_url;
7 if (db.publishedUrls.includes(url)) {
8 return false; // Ya publicada
9 }
10 db.publishedUrls.push(url);
11 return true;
12});
13 
14// Mantener solo últimas 100 URLs
15if (db.publishedUrls.length > 100) {
16 db.publishedUrls = db.publishedUrls.slice(-100);
17}
18 
19return newItems;


Paso 6: Métricas y monitorización

Google Sheets para tracking

Crea una hoja con estas columnas:

| Fecha | Plataforma | Título | URL | Tweet | Likes | Shares |

Actualiza métricas con otro workflow programado:

javascript
1// Obtener métricas de Twitter
2// (Requiere API v2 con analytics)
3const tweetId = $json.tweet_id;
4const metrics = await $http.get(
5 `https://api.twitter.com/2/tweets/${tweetId}?tweet.fields=public_metrics`
6);
7 
8return [{
9 json: {
10 likes: metrics.data.public_metrics.like_count,
11 retweets: metrics.data.public_metrics.retweet_count,
12 replies: metrics.data.public_metrics.reply_count
13 }
14}];

Alertas de error

json
1{
2 "name": "Error Handler",
3 "type": "n8n-nodes-base.telegram",
4 "parameters": {
5 "chatId": "tu-chat-id",
6 "text": "⚠️ Error en agente de noticias:\n\n{{ $json.error.message }}"
7 }
8}


Resultados esperados y ROI

Tiempo ahorrado

Tarea manualTiempo/semanaCon agente
Buscar noticias3h0h
Escribir posts2h0h
Publicar en 3 redes1h0h
Total6h/semana0h

Ahorro anual: 312 horas = ~8 semanas de trabajo

Costes

ConceptoCoste mensual
OpenAI API (GPT-4)€10-30
n8n self-hosted€3 (electricidad)
APIs redes sociales€0 (planes gratuitos)
Total€13-33/mes

Engagement típico

Con contenido consistente y bien curado:

  • Twitter: 50-200 impresiones/tweet
  • LinkedIn: 100-500 visualizaciones/post
  • Crecimiento seguidores: 5-15%/mes


Errores comunes y cómo evitarlos

El agente genera contenido genérico

Solución: Mejora el system prompt con ejemplos específicos:

code
1EJEMPLO de buen tweet:
2"🚀 OpenAI acaba de lanzar GPT-5 y supera a humanos en el 95% de tareas cognitivas.
3 
4El benchmark muestra:
5- Coding: 99.2% precisión
6- Razonamiento: 98.7%
7- Creatividad: 94.1%
8 
9¿El fin del trabajo intelectual? 🧵 #AI #GPT5"

Rate limits de APIs

Solución: Añade delays entre publicaciones:

json
1{
2 "name": "Wait",
3 "type": "n8n-nodes-base.wait",
4 "parameters": {
5 "unit": "seconds",
6 "amount": 30
7 }
8}

Contenido duplicado en redes

Solución: Personaliza cada plataforma más:

javascript
1// Twitter: directo y con gancho
2// LinkedIn: contexto profesional
3// Facebook: más casual y pregunta


Conclusión: Tu primer trabajador digital

Has creado un agente autónomo que:

  1. Busca noticias de múltiples fuentes cada 6 horas
  2. Analiza y selecciona las más relevantes con GPT-4
  3. Genera contenido optimizado para cada red social
  4. Publica automáticamente (o pide aprobación)
  5. Registra todo para análisis posterior

Este es solo el principio. Puedes expandir el agente para:

  • Responder comentarios automáticamente
  • Generar hilos de Twitter sobre temas trending
  • Crear newsletters semanales
  • Publicar en Threads, Mastodon, Bluesky...

¿Siguiente paso? En el próximo artículo exploramos el hardware open source para control por voz: M5Stack Atom Echo y por qué es el futuro de los asistentes privados en español.


¿Ya tienes tu agente funcionando? Comparte tu workflow en los comentarios. Y si este tutorial te ha sido útil, suscríbete a la newsletter para más automatizaciones con n8n.

📬

¿Te ha gustado? Hay más cada semana

Únete a "IA Sin Humo" — la newsletter donde comparto lo que realmente funciona en inteligencia artificial. Sin teoría innecesaria, sin postureo.

📚

1 Tutorial

Paso a paso, práctico

🛠️

3 Herramientas

Probadas y útiles

💡

0 Bullshit

Solo lo que importa

+547 suscriptores • Cada martes • Cancela cuando quieras