Hacker News AIニュース日次サマリー:GPT-5要約とメール送信
上級
これは自動化ワークフローで、16個のノードを含みます。主にSet, Filter, Markdown, Aggregate, EmailSendなどのノードを使用。 毎日のAIニュースサマリー - Hacker Newsから取得し、GPT-5で要約してメールで送信
前提条件
- •ターゲットAPIの認証情報が必要な場合あり
- •OpenAI API Key
使用ノード (16)
カテゴリー
-
ワークフロープレビュー
ノード接続関係を可視化、ズームとパンをサポート
ワークフローをエクスポート
以下のJSON設定をn8nにインポートして、このワークフローを使用できます
{
"meta": {
"instanceId": "3d7eb9567ae690bf8c9bba1cb43396e6e40c18e15eb5889cf9673ed1713da6db",
"templateCredsSetupCompleted": true
},
"nodes": [
{
"id": "c352f6dc-9570-419d-9d48-3c94758a0104",
"name": "HN AIストーリー取得",
"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": "過去24時間でフィルタリング",
"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": "アイテムをループ処理",
"type": "n8n-nodes-base.splitInBatches",
"position": [
1440,
3552
],
"parameters": {
"options": {}
},
"typeVersion": 3
},
{
"id": "9bf34ea7-64ad-4bc5-b4f7-af3a1d1fa0a0",
"name": "記事URLをスクレイピング",
"type": "n8n-nodes-base.httpRequest",
"position": [
1648,
3632
],
"parameters": {
"url": "={{ $json.url }}",
"options": {}
},
"typeVersion": 4.2
},
{
"id": "714804a1-ebc4-474a-9de0-4e8785086129",
"name": "Markdownに変換",
"type": "n8n-nodes-base.markdown",
"position": [
1872,
3632
],
"parameters": {
"html": "={{ $json.data }}",
"options": {}
},
"typeVersion": 1
},
{
"id": "72b3a898-bfa8-4388-9a8c-a9c9c4895020",
"name": "GPT 記事要約",
"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": "ニュースアイテムをフォーマット",
"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": "全要約を結合",
"type": "n8n-nodes-base.aggregate",
"position": [
1648,
3456
],
"parameters": {
"options": {},
"fieldsToAggregate": {
"fieldToAggregate": [
{
"fieldToAggregate": "news"
}
]
}
},
"typeVersion": 1
},
{
"id": "db3ace26-4a67-4916-9f16-1719fdfbaed7",
"name": "メールダイジェスト送信",
"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": "毎日スケジュールトリガー",
"type": "n8n-nodes-base.scheduleTrigger",
"position": [
800,
3552
],
"parameters": {
"rule": {
"interval": [
{}
]
}
},
"typeVersion": 1.2
},
{
"id": "f59da8bf-9079-46e6-a97d-63ac00da0f09",
"name": "概要とセットアップ",
"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": "注: HN取得とフィルタリング",
"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": "注: スクレイピングと処理",
"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": "注: AI要約",
"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": "注: メール配信",
"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
}
]
]
}
}
}よくある質問
このワークフローの使い方は?
上記のJSON設定コードをコピーし、n8nインスタンスで新しいワークフローを作成して「JSONからインポート」を選択、設定を貼り付けて認証情報を必要に応じて変更してください。
このワークフローはどんな場面に適していますか?
上級
有料ですか?
このワークフローは完全無料です。ただし、ワークフローで使用するサードパーティサービス(OpenAI APIなど)は別途料金が発生する場合があります。
関連ワークフロー
WordPressブログの自動化プロフェッショナル版(先端研究)v2.1マーケットプラグイン
GPT-4o、Perplexity AI、そして多言語対応を使ったSEO最適化ブログ作成の自動化
If
Set
Xml
+
If
Set
Xml
125 ノードDaniel Ng
コンテンツ作成
n8nノードの探索(可視化リファレンスライブラリ内)
n8nノードを可視化リファレンスライブラリで探索
If
Ftp
Set
+
If
Ftp
Set
113 ノードI versus AI
その他
コンテンツジェネレーター v3
AI驱动ブログ自動化:使用GPT-4生成并公開SEO記事至WordPressとTwitter
If
Set
Code
+
If
Set
Code
144 ノードJay Emp0
コンテンツ作成
キーワードからGPT-5とfal.ai画像を使ってWordPressまで自動SEOブログ生成のプロセス
GPT-5とfal.ai画像を使用したキーワードからWordPressへのSEOブログ自動化プロセス
Set
Code
Wait
+
Set
Code
Wait
96 ノードPaul
コンテンツ作成
コンテンツジェネレータ v4
コンテンツファームv4 - ChatGPT 5とGeminiを使用したWordPressブログの自動化
If
Set
Code
+
If
Set
Code
168 ノードJay Emp0
PerplexityとGPTを使用して、キーワードとメディアを含むWordPressのSEO最適化ブログを作成
WordPress向けSEO最適化されたブログの作成(Perplexity、GPTベース、キーワードとメディア付き)
Set
Code
Limit
+
Set
Code
Limit
124 ノードPaul
コンテンツ作成
ワークフロー情報
難易度
上級
ノード数16
カテゴリー-
ノードタイプ12
作成者
Daniel Nkencho
@daniel-automatesAI Automation Consultant | Helping Business Owners Implement AI Systems for growth and lead gen
外部リンク
n8n.ioで表示 →
このワークフローを共有