Hacker News KI-Nachrichten tägliche Zusammenfassung: GPT-5-Zusammenfassung und E-Mail-Versand

Experte

Dies ist ein Automatisierungsworkflow mit 16 Nodes. Hauptsächlich werden Set, Filter, Markdown, Aggregate, EmailSend und andere Nodes verwendet. Tägliche KI-Nachrichtenzusammenfassung von Hacker News, mit GPT-5 zusammengefasst und per E-Mail gesendet

Voraussetzungen
  • Möglicherweise sind Ziel-API-Anmeldedaten erforderlich
  • OpenAI API Key

Kategorie

-
Workflow-Vorschau
Visualisierung der Node-Verbindungen, mit Zoom und Pan
Workflow exportieren
Kopieren Sie die folgende JSON-Konfiguration und importieren Sie sie in n8n
{
  "meta": {
    "instanceId": "3d7eb9567ae690bf8c9bba1cb43396e6e40c18e15eb5889cf9673ed1713da6db",
    "templateCredsSetupCompleted": true
  },
  "nodes": [
    {
      "id": "c352f6dc-9570-419d-9d48-3c94758a0104",
      "name": "Hole Hacker News KI-Geschichten",
      "type": "n8n-nodes-base.hackerNews",
      "position": [
        1024,
        3552
      ],
      "parameters": {
        "limit": 1000,
        "resource": "all",
        "additionalFields": {
          "keyword": "AI"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "2a57c491-15f9-4035-854f-9bc410e9fe5e",
      "name": "Filter der letzten 24 Stunden",
      "type": "n8n-nodes-base.filter",
      "position": [
        1232,
        3552
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "f59903f3-835c-407a-a930-060d20c8abdf",
              "operator": {
                "type": "dateTime",
                "operation": "afterOrEquals"
              },
              "leftValue": "={{ $json.created_at }}",
              "rightValue": "={{ $now.minus({ days: 1 }).toFormat('yyyy-MM-dd') }}"
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "960d99c5-3bfa-4baa-b9eb-4cc41e6ad961",
      "name": "Durchlaufe alle Einträge",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        1440,
        3552
      ],
      "parameters": {
        "options": {}
      },
      "typeVersion": 3
    },
    {
      "id": "9bf34ea7-64ad-4bc5-b4f7-af3a1d1fa0a0",
      "name": "Scrape Artikel-URL",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1648,
        3632
      ],
      "parameters": {
        "url": "={{ $json.url }}",
        "options": {}
      },
      "typeVersion": 4.2
    },
    {
      "id": "714804a1-ebc4-474a-9de0-4e8785086129",
      "name": "In Markdown konvertieren",
      "type": "n8n-nodes-base.markdown",
      "position": [
        1872,
        3632
      ],
      "parameters": {
        "html": "={{ $json.data }}",
        "options": {}
      },
      "typeVersion": 1
    },
    {
      "id": "72b3a898-bfa8-4388-9a8c-a9c9c4895020",
      "name": "GPT Artikel zusammenfassen",
      "type": "@n8n/n8n-nodes-langchain.chainLlm",
      "position": [
        2064,
        3632
      ],
      "parameters": {
        "text": "=Summarize the info below so that I can get a quick news snippet of what this is about in the area of AI. \n\nSimply output the main point as the heading and then 2 sentences of the summary (maybe with a link)\n\n---\n\nScraped info below: {{ $json.markdown }}",
        "batching": {},
        "promptType": "define"
      },
      "typeVersion": 1.7
    },
    {
      "id": "dd7d375a-26bd-469f-8cea-2d68511aa1bb",
      "name": "Nachrichteneintrag formatieren",
      "type": "n8n-nodes-base.set",
      "position": [
        2368,
        3728
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "ec79a00c-98ba-40fc-b606-b4e40eeed15c",
              "name": "news",
              "type": "string",
              "value": "={{ $('GPT Summarize Article').item.json.output }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "b612d024-cb1b-4f93-8761-3a4e805cb0a2",
      "name": "Alle Zusammenfassungen kombinieren",
      "type": "n8n-nodes-base.aggregate",
      "position": [
        1648,
        3456
      ],
      "parameters": {
        "options": {},
        "fieldsToAggregate": {
          "fieldToAggregate": [
            {
              "fieldToAggregate": "news"
            }
          ]
        }
      },
      "typeVersion": 1
    },
    {
      "id": "db3ace26-4a67-4916-9f16-1719fdfbaed7",
      "name": "E-Mail-Zusammenfassung senden",
      "type": "n8n-nodes-base.emailSend",
      "position": [
        1872,
        3456
      ],
      "webhookId": "ec7ef530-cebe-4a22-b9ad-428230ba4b71",
      "parameters": {
        "html": "=<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n    <meta charset=\"UTF-8\">\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n    <title>Daily News Digest</title>\n    <style>\n        body {\n            margin: 0;\n            padding: 0;\n            background-color: #f5f5f5;\n            font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n            line-height: 1.5;\n            color: #333;\n        }\n        \n        .email-container {\n            max-width: 600px;\n            margin: 0 auto;\n            background-color: white;\n            padding: 0;\n        }\n        \n        .header {\n            background-color: #d97757;\n            color: white;\n            text-align: center;\n            padding: 20px;\n            border-radius: 8px 8px 0 0;\n        }\n        \n        .header h1 {\n            margin: 0;\n            font-size: 18px;\n            font-weight: 500;\n        }\n        \n        .content {\n            padding: 30px 40px;\n            background-color: white;\n        }\n        \n        .news-item {\n            margin-bottom: 30px;\n            padding-bottom: 25px;\n            border-bottom: 1px solid #e0e0e0;\n        }\n        \n        .news-item:last-child {\n            border-bottom: none;\n            margin-bottom: 0;\n            padding-bottom: 0;\n        }\n        \n        .news-title {\n            font-size: 16px;\n            font-weight: 600;\n            color: #333;\n            margin: 0 0 12px 0;\n            line-height: 1.4;\n        }\n        \n        .news-content {\n            font-size: 14px;\n            color: #666;\n            line-height: 1.6;\n            margin: 0;\n        }\n        \n        .news-content a {\n            color: #d97757;\n            text-decoration: none;\n        }\n        \n        .news-content a:hover {\n            text-decoration: underline;\n        }\n        \n        .footer {\n            text-align: center;\n            padding: 20px;\n            background-color: #f9f9f9;\n            color: #888;\n            font-size: 12px;\n            border-radius: 0 0 8px 8px;\n        }\n        \n        @media (max-width: 600px) {\n            .email-container {\n                margin: 0 10px;\n            }\n            \n            .content {\n                padding: 20px 25px;\n            }\n            \n            .header {\n                padding: 15px;\n            }\n        }\n    </style>\n</head>\n<body>\n    <div class=\"email-container\">\n        <div class=\"header\">\n            <h1>📰 Latest AI News — {{ $now.format('MMMM d, yyyy') }}</h1>\n        </div>\n        \n        <div class=\"content\">\n            {{ $json.news.join('') }}\n        </div>\n        \n        <div class=\"footer\">\n            You're receiving this digest because you subscribed to updates.<br>\n            © 2025 AI News Digest\n        </div>\n    </div>\n</body>\n</html>",
        "options": {},
        "subject": "Daily AI Digest - {{ $now.format('MMMM d, yyyy') }}",
        "toEmail": "recipient@example.com",
        "fromEmail": "AI News <noreply@example.com>"
      },
      "credentials": {
        "smtp": {
          "id": "M9BmJSJmYzVHw6xq",
          "name": "Zoho Mail 2"
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "030bc0bb-c0ae-4234-9a9e-720c86ba3f0c",
      "name": "Täglicher Zeitplan-Trigger",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        800,
        3552
      ],
      "parameters": {
        "rule": {
          "interval": [
            {}
          ]
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "f59da8bf-9079-46e6-a97d-63ac00da0f09",
      "name": "Überblick & Einrichtung",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        64,
        3168
      ],
      "parameters": {
        "color": 4,
        "width": 728,
        "height": 1072,
        "content": "# Daily AI News Digest from Hacker News\n\n## 📋 What This Template Does\nFetches recent AI stories from Hacker News, filters for today, scrapes each article, summarizes with GPT into snippets, aggregates into HTML, and emails a styled daily digest.\n\n## 🔧 Prerequisites\n- n8n instance\n- OpenAI API access\n- SMTP server (e.g., Zoho, Gmail)\n\n## 🔑 Required Credentials\n\n### OpenAI API\n1. Get key from platform.openai.com/api-keys\n2. Add to n8n as OpenAI credential\n3. Assign to \"GPT 5 pro\" node\n\n### SMTP Setup\n1. Configure in n8n credentials (host, port, user/pass)\n2. Assign to \"Send Email Digest\" node\n3. Update fromEmail/toEmail fields\n\n## ⚙️ Configuration Steps\n1. Import JSON into n8n\n2. Assign OpenAI and SMTP credentials\n3. Update fromEmail/toEmail in \"Send Email Digest\" node\n4. Set schedule in \"Daily Schedule Trigger\" (e.g., daily at 8 AM)\n5. Activate workflow\n\n## 🎯 Use Cases\n- Personal AI news briefing\n- Team knowledge sharing\n- Content curation for blogs\n\n## ⚠️ Troubleshooting\n- No stories: Check keyword filter; HN API limits\n- Scraping fails: Add proxy if blocked\n- Email not sending: Verify SMTP settings\n- Summaries poor: Tweak GPT prompt"
      },
      "typeVersion": 1
    },
    {
      "id": "088aeedc-3850-415e-a691-691fd3e02428",
      "name": "Hinweis: Hacker News Abruf & Filter",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        912,
        3728
      ],
      "parameters": {
        "color": 2,
        "width": 428,
        "height": 304,
        "content": "## 📥 Data Collection\n\n**Fetch HN AI Stories:**\n- Pulls 1000 stories with \"AI\" keyword\n- Uses public HN API (no auth needed)\n\n**Filter Last 24 Hours:**\n- Checks `created_at` field\n- Keeps only yesterday/today posts\n- Uses `$now().minus({ days: 1 })`\n\n**💡 Customization:**\nChange keyword filter or date range here"
      },
      "typeVersion": 1
    },
    {
      "id": "4c555f5e-4b5b-4176-bc8e-161dcb9a9b25",
      "name": "Hinweis: Scraping & Verarbeitung",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1488,
        3888
      ],
      "parameters": {
        "color": 3,
        "width": 484,
        "height": 352,
        "content": "## 🌐 Content Processing\n\n**Loop Over Items:**\n- Processes each story sequentially\n- Prevents rate limiting\n\n**Scrape Article URL:**\n- Fetches content from source URL\n- May need proxy for blocked sites\n\n**Convert to Markdown:**\n- Cleans HTML to text\n- Formats for LLM input\n\n**💡 Troubleshooting:**\nIf scraping fails, check URL accessibility"
      },
      "typeVersion": 1
    },
    {
      "id": "3e0e97ce-561d-4c6b-a9b4-96b0eacf90d5",
      "name": "Hinweis: KI-Zusammenfassung",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2176,
        3904
      ],
      "parameters": {
        "color": 5,
        "width": 460,
        "height": 336,
        "content": "## 🤖 AI Summarization\n\n**GPT Summarize Article:**\n- Generates heading + 2 sentences\n- Extracts key AI insights\n- Includes link when relevant\n\n**Format News Item:**\n- Wraps in HTML for email\n- Prepares for aggregation\n\n**Combine All Summaries:**\n- Merges into single array\n- Ready for email template\n\n**💡 Customization:**\nEdit prompt for different summary styles"
      },
      "typeVersion": 1
    },
    {
      "id": "2dbe3adc-d430-4eff-9306-c2f45cd632f3",
      "name": "Hinweis: E-Mail-Zustellung",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2112,
        3200
      ],
      "parameters": {
        "color": 6,
        "width": 436,
        "height": 320,
        "content": "## 📧 Email Delivery\n\n**Send Email Digest:**\n- Styled HTML template\n- Mobile-responsive design\n- Inline CSS for compatibility\n\n**Template Features:**\n- Clean news item layout\n- Branded header/footer\n- Clickable links\n\n**⚙️ Required:**\nUpdate fromEmail/toEmail before activating"
      },
      "typeVersion": 1
    },
    {
      "id": "eaa3c5c3-bf65-4efc-8f23-208ed7751ed4",
      "name": "GPT 5 pro",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        2064,
        3808
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-5-pro",
          "cachedResultName": "gpt-5-pro"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "id": "ymMvgDroJHalwvRf",
          "name": "OpenAI"
        }
      },
      "typeVersion": 1.2
    }
  ],
  "pinData": {},
  "connections": {
    "eaa3c5c3-bf65-4efc-8f23-208ed7751ed4": {
      "ai_languageModel": [
        [
          {
            "node": "72b3a898-bfa8-4388-9a8c-a9c9c4895020",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "960d99c5-3bfa-4baa-b9eb-4cc41e6ad961": {
      "main": [
        [
          {
            "node": "b612d024-cb1b-4f93-8761-3a4e805cb0a2",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "9bf34ea7-64ad-4bc5-b4f7-af3a1d1fa0a0",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "dd7d375a-26bd-469f-8cea-2d68511aa1bb": {
      "main": [
        [
          {
            "node": "960d99c5-3bfa-4baa-b9eb-4cc41e6ad961",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "9bf34ea7-64ad-4bc5-b4f7-af3a1d1fa0a0": {
      "main": [
        [
          {
            "node": "714804a1-ebc4-474a-9de0-4e8785086129",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "714804a1-ebc4-474a-9de0-4e8785086129": {
      "main": [
        [
          {
            "node": "72b3a898-bfa8-4388-9a8c-a9c9c4895020",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "c352f6dc-9570-419d-9d48-3c94758a0104": {
      "main": [
        [
          {
            "node": "2a57c491-15f9-4035-854f-9bc410e9fe5e",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "2a57c491-15f9-4035-854f-9bc410e9fe5e": {
      "main": [
        [
          {
            "node": "960d99c5-3bfa-4baa-b9eb-4cc41e6ad961",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "b612d024-cb1b-4f93-8761-3a4e805cb0a2": {
      "main": [
        [
          {
            "node": "db3ace26-4a67-4916-9f16-1719fdfbaed7",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "72b3a898-bfa8-4388-9a8c-a9c9c4895020": {
      "main": [
        [
          {
            "node": "dd7d375a-26bd-469f-8cea-2d68511aa1bb",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "030bc0bb-c0ae-4234-9a9e-720c86ba3f0c": {
      "main": [
        [
          {
            "node": "c352f6dc-9570-419d-9d48-3c94758a0104",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Häufig gestellte Fragen

Wie verwende ich diesen Workflow?

Kopieren Sie den obigen JSON-Code, erstellen Sie einen neuen Workflow in Ihrer n8n-Instanz und wählen Sie "Aus JSON importieren". Fügen Sie die Konfiguration ein und passen Sie die Anmeldedaten nach Bedarf an.

Für welche Szenarien ist dieser Workflow geeignet?

Experte

Ist es kostenpflichtig?

Dieser Workflow ist völlig kostenlos. Beachten Sie jedoch, dass Drittanbieterdienste (wie OpenAI API), die im Workflow verwendet werden, möglicherweise kostenpflichtig sind.

Workflow-Informationen
Schwierigkeitsgrad
Experte
Anzahl der Nodes16
Kategorie-
Node-Typen12
Schwierigkeitsbeschreibung

Für fortgeschrittene Benutzer, komplexe Workflows mit 16+ Nodes

Autor
Daniel Nkencho

Daniel Nkencho

@daniel-automates

AI Automation Consultant | Helping Business Owners Implement AI Systems for growth and lead gen

Externe Links
Auf n8n.io ansehen

Diesen Workflow teilen

Kategorien

Kategorien: 34