地缘政治突发新闻警报
高级
这是一个Market Research, AI Summarization领域的自动化工作流,包含 30 个节点。主要使用 If, Code, Merge, Telegram, DataTable 等节点。 使用AI评分和Telegram警报过滤地缘政治突发新闻
前置要求
- •Telegram Bot Token
- •可能需要目标 API 的认证凭证
- •OpenAI API Key
使用的节点 (30)
工作流预览
可视化展示节点连接关系,支持缩放和平移
导出工作流
复制以下 JSON 配置到 n8n 导入,即可使用此工作流
{
"id": "lShjTFAvAhSAuAA6",
"meta": {
"instanceId": "083ea1756bbf8db2f276e993d532dc5e33f75383025a15da854248b05c1849de"
},
"name": "地缘政治突发新闻警报",
"tags": [],
"nodes": [
{
"id": "7bc7ba9e-31e0-4196-8d00-9f71ff966444",
"name": "每30分钟",
"type": "n8n-nodes-base.scheduleTrigger",
"position": [
-592,
384
],
"parameters": {
"rule": {
"interval": [
{
"field": "minutes",
"minutesInterval": 30
}
]
}
},
"typeVersion": 1.2
},
{
"id": "46266983-54ba-4977-b6af-dabc6ee1ed4a",
"name": "纽约时报 RSS 源",
"type": "n8n-nodes-base.rssFeedRead",
"position": [
0,
112
],
"parameters": {
"url": "https://rss.nytimes.com/services/xml/rss/nyt/World.xml",
"options": {}
},
"typeVersion": 1
},
{
"id": "05342734-972c-49d1-82d7-3622f96f42f1",
"name": "印度时报 RSS 源",
"type": "n8n-nodes-base.rssFeedRead",
"position": [
0,
240
],
"parameters": {
"url": "https://timesofindia.indiatimes.com/rssfeedstopstories.cms",
"options": {}
},
"typeVersion": 1
},
{
"id": "2f195f01-5e2e-439b-9954-a25f902f399f",
"name": "半岛电视台 RSS 源",
"type": "n8n-nodes-base.rssFeedRead",
"position": [
0,
368
],
"parameters": {
"url": "https://www.aljazeera.com/xml/rss/all.xml",
"options": {}
},
"typeVersion": 1
},
{
"id": "13811cd7-80cb-43cf-a18d-ecebfb56eea9",
"name": "BBC RSS 源",
"type": "n8n-nodes-base.rssFeedRead",
"position": [
0,
528
],
"parameters": {
"url": "http://feeds.bbci.co.uk/news/world/rss.xml",
"options": {}
},
"typeVersion": 1
},
{
"id": "e29a459e-5fbf-4703-bcfc-e389b36d7b89",
"name": "动态过滤器",
"type": "n8n-nodes-base.code",
"position": [
640,
368
],
"parameters": {
"jsCode": "// Dynamic Filter Node - Config-Driven Filtering\n const config = $('Load Config from Google Drive').first().json;\n\n const primaryKeywords = config.primary_keywords;\n const secondaryKeywords = config.secondary_keywords;\n\n const filtered = [];\n\n for (const item of $input.all()) {\n const text = `${item.json.title} ${item.json.contentSnippet}`.toLowerCase();\n\n // Must mention at least one primary keyword\n const hasPrimary = primaryKeywords.some(kw => text.includes(kw.toLowerCase()));\n\n // Must mention at least one secondary keyword\n const hasSecondary = secondaryKeywords.some(kw => text.includes(kw.toLowerCase()));\n\n if (hasPrimary && hasSecondary) {\n filtered.push({\n json: {\n ...item.json,\n config: config\n }\n });\n }\n }\n\n return filtered;"
},
"typeVersion": 2
},
{
"id": "4e7b8918-071d-43da-b39a-68f09d1aa720",
"name": "发送突发新闻警报",
"type": "n8n-nodes-base.telegram",
"position": [
2032,
576
],
"webhookId": "271ae674-a0c3-4b7f-a986-e8709bcd6d2d",
"parameters": {
"text": "=={{ $json.message }}",
"chatId": "={{ $json.config.telegram_chat_id }}",
"additionalFields": {
"parse_mode": "HTML"
}
},
"credentials": {
"telegramApi": {
"id": "TlRyprl4PMViOx6S",
"name": "Telegram account 2"
}
},
"typeVersion": 1
},
{
"id": "ba46bf0d-81a8-4ea5-8973-79452159ed0a",
"name": "突发新闻分析器",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
1136,
368
],
"parameters": {
"text": "={{ \"Analyze this article:\\n\\nTitle: \" + $json.title + \"\\n\\nContent: \" + $json.contentSnippet + \"\\n\\nLink: \" +\n $json.link + \"\\n\\nSource: \" + $json.source + \"\\n\\nPublished: \" + $json.pubDate }}",
"options": {
"systemMessage": "={{ $json.systemPrompt }}"
},
"promptType": "define",
"hasOutputParser": true
},
"typeVersion": 2.2
},
{
"id": "2fd4e417-8ac3-42eb-9a30-c7b9a1346317",
"name": "OpenAI Chat Model",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
1104,
576
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-4o-mini",
"cachedResultName": "gpt-4o-mini"
},
"options": {
"temperature": 0.3
}
},
"credentials": {
"openAiApi": {
"id": "7os4DH2Wu3pY84Oy",
"name": "N8N Key"
}
},
"typeVersion": 1.2
},
{
"id": "01953c30-52e2-46cd-8255-ec7373d1ff40",
"name": "结构化输出解析器",
"type": "@n8n/n8n-nodes-langchain.outputParserStructured",
"position": [
1312,
560
],
"parameters": {
"jsonSchemaExample": "{\n \"score\": 8,\n \"category\": \"Trade Policy\",\n \"alert_topic\": \"India announces new tariffs on Chinese imports\",\n \"alert_description\": \"Government unveils comprehensive tariff structure affecting electronics and manufacturing sectors\",\n \"impact\": \"Significant escalation in trade tensions, potential retaliation expected\",\n \"source\": \"Times of India\",\n \"timestamp\": \"2025-10-25T20:30:00+05:30\",\n \"link\": \"https://timesofindia.indiatimes.com/article/12345\",\n \"should_alert\": true\n }"
},
"typeVersion": 1.3
},
{
"id": "5c161610-bfa8-4da1-a82a-23666d185de6",
"name": "如果",
"type": "n8n-nodes-base.if",
"position": [
1664,
592
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "8d463a8b-52db-4065-80cd-b6f6ff5ed5ec",
"operator": {
"type": "boolean",
"operation": "true",
"singleValue": true
},
"leftValue": "={{ $json.output.should_alert }}",
"rightValue": {}
}
]
}
},
"typeVersion": 2.2
},
{
"id": "edda078a-b0be-4ee3-845f-88aa6851416a",
"name": "南华早报 RSS 源",
"type": "n8n-nodes-base.rssFeedRead",
"position": [
0,
704
],
"parameters": {
"url": "https://www.scmp.com/rss/3/feed",
"options": {}
},
"typeVersion": 1
},
{
"id": "95b00893-33a7-4b6c-b365-11c317760351",
"name": "NDTV RSS 源",
"type": "n8n-nodes-base.rssFeedRead",
"position": [
0,
880
],
"parameters": {
"url": "https://feeds.feedburner.com/ndtvnews-top-stories",
"options": {}
},
"typeVersion": 1
},
{
"id": "393a1952-9bb8-416b-8096-09c8d5b81ff0",
"name": "检查重复项",
"type": "n8n-nodes-base.dataTable",
"position": [
800,
368
],
"parameters": {
"filters": {
"conditions": [
{
"keyName": "article_link",
"keyValue": "=={{ $json.link }}"
}
]
},
"matchType": "allConditions",
"operation": "rowNotExists",
"dataTableId": {
"__rl": true,
"mode": "list",
"value": "pYQedxIAvf9PQdAF",
"cachedResultUrl": "/projects/5Iw2tLn8DOp3x4nk/datatables/pYQedxIAvf9PQdAF",
"cachedResultName": "analyzed_articles"
}
},
"typeVersion": 1
},
{
"id": "92a6bdd3-bc80-46e7-b0a3-3b806ef3bdc1",
"name": "记录已分析文章",
"type": "n8n-nodes-base.dataTable",
"position": [
1504,
272
],
"parameters": {
"columns": {
"value": {
"score": "={{ $json.output.score }}",
"title": "=={{ $json.output.alert_topic }}",
"analyzed_at": "={{ $now.toISO() }}",
"article_link": "=={{ $json.output.link }}"
},
"schema": [
{
"id": "article_link",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "article_link",
"defaultMatch": false
},
{
"id": "title",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "title",
"defaultMatch": false
},
{
"id": "analyzed_at",
"type": "dateTime",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "analyzed_at",
"defaultMatch": false
},
{
"id": "score",
"type": "number",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "score",
"defaultMatch": false
}
],
"mappingMode": "defineBelow",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"dataTableId": {
"__rl": true,
"mode": "list",
"value": "pYQedxIAvf9PQdAF",
"cachedResultUrl": "/projects/5Iw2tLn8DOp3x4nk/datatables/pYQedxIAvf9PQdAF",
"cachedResultName": "analyzed_articles"
}
},
"typeVersion": 1
},
{
"id": "4ff7d6dc-8421-439d-a98a-3e8233dbedd3",
"name": "清理旧记录",
"type": "n8n-nodes-base.dataTable",
"position": [
1744,
272
],
"parameters": {
"filters": {
"conditions": [
{
"keyName": "analyzed_at",
"keyValue": "={{ $now.minus({days: 7}).toISO() }}",
"condition": "lt"
}
]
},
"options": {},
"operation": "deleteRows",
"dataTableId": {
"__rl": true,
"mode": "list",
"value": "pYQedxIAvf9PQdAF",
"cachedResultUrl": "/projects/5Iw2tLn8DOp3x4nk/datatables/pYQedxIAvf9PQdAF",
"cachedResultName": "analyzed_articles"
}
},
"typeVersion": 1
},
{
"id": "d339eb01-08c7-4d8b-9ed4-bfb88816f915",
"name": "合并",
"type": "n8n-nodes-base.merge",
"position": [
288,
304
],
"parameters": {
"numberInputs": 6
},
"typeVersion": 3.2
},
{
"id": "54527b07-b8c7-4744-80c8-257bad8bafb6",
"name": "聚合警报",
"type": "n8n-nodes-base.code",
"position": [
1856,
576
],
"parameters": {
"jsCode": "// Aggregate all alerts into a single message\n const items = $input.all();\n\n if (items.length === 0) {\n return [];\n }\n\n // Get config from first item\n const config = items[0].json.output.config || items[0].json.config;\n\n // Build consolidated message\n let message = `🚨 BREAKING NEWS ALERTS (${items.length} items)\\n\\n`;\n\n items.forEach((item, index) => {\n const output = item.json.output;\n\n message += `━━━━━━━━━━━━━━━━━━━━\\n`;\n message += `${index + 1}. BREAKING: ${output.category}\\n\\n`;\n message += `📰 Source: ${output.source}\\n`;\n message += `💥 Impact: ${output.impact}\\n\\n`;\n message += `📌 ${output.alert_topic}\\n\\n`;\n message += `📄 ${output.alert_description}\\n\\n`;\n message += `🔗 Read More: ${output.link}\\n\\n`;\n message += `⏰ Alert Time: ${output.timestamp}\\n`;\n message += `Score: ${output.score}\\n\\n`;\n });\n\n // Return single item with consolidated message AND config\n return [{\n json: {\n message: message,\n config: config\n }\n }];"
},
"typeVersion": 2
},
{
"id": "cd47ab51-4722-497e-874a-7b6f727c0616",
"name": "动态 AI 提示生成器",
"type": "n8n-nodes-base.code",
"position": [
976,
368
],
"parameters": {
"jsCode": "// Dynamic AI Prompt Generator\n const items = $input.all();\n const results = [];\n\n for (const item of items) {\n // Get config from item or Google Drive HTTP Request node\n const config = item.json.config || $('Load Config from Google Drive').first().json;\n\n // Build scoring criteria text\n let criteriaText = '';\n for (const rule of config.scoring_criteria) {\n criteriaText += ` • ${rule.category} (${rule.score_min}-${rule.score_max}): ${rule.description}\\n`;\n }\n\n // Generate dynamic system prompt\n const systemPrompt = `You are a ${config.ai_role}. Analyze RSS articles for breaking news urgency.\n\n BREAKING NEWS CRITERIA:\n ${criteriaText}\n NOT BREAKING (1-4): Routine updates, opinion pieces\n\n INSTRUCTIONS:\n You receive: title, contentSnippet, link, source, pubDate\n\n 1. Analyze urgency score (1-10)\n 2. If score < ${config.alert_threshold}: Set should_alert = false\n 3. If score >= ${config.alert_threshold}: Set should_alert = true\n\n Always return ALL these fields:\n - score: [1-10 based on breaking news urgency]\n - category: [Category name matching the score range]\n - alert_topic: [use the article title]\n - alert_description: [use contentSnippet]\n - impact: [your one-sentence impact analysis]\n - source: [use source field]\n - timestamp: [use pubDate]\n - link: [use link field]\n - should_alert: [false if score < ${config.alert_threshold}, true if score >= ${config.alert_threshold}]`;\n\n // Add systemPrompt to item\n results.push({\n json: {\n ...item.json,\n systemPrompt: systemPrompt,\n config: config\n }\n });\n }\n\n return results;"
},
"typeVersion": 2
},
{
"id": "1fa522e9-1f26-4b4f-98a6-f9815d31c9e4",
"name": "RSS_清理_节点",
"type": "n8n-nodes-base.code",
"position": [
448,
368
],
"parameters": {
"jsCode": " // Strip HTML tags helper function\n const stripHTML = (html) => {\n if (!html) return '';\n return html.replace(/<[^>]*>/g, '').trim();\n };\n\n // Process all items and normalize to required fields only\n const cleanedItems = [];\n\n for (const item of $input.all()) {\n const json = item.json;\n\n // Extract source (try multiple fields with fallback chain)\n const source = json.creator || json['dc:creator'] || json.author || 'Unknown';\n\n // Handle empty contentSnippet - fallback to content and strip HTML\n const contentSnippet = json.contentSnippet || stripHTML(json.content) || '';\n\n // Use isoDate for consistency (standardized ISO 8601 format)\n const pubDate = json.isoDate || json.pubDate;\n\n // Build clean item with ONLY required fields\n cleanedItems.push({\n json: {\n // CRITICAL fields (order matters for readability)\n link: json.link, // Unique identifier\n title: json.title, // Article headline\n contentSnippet: contentSnippet, // Clean summary text\n pubDate: pubDate, // Timestamp\n source: source // Source attribution\n }\n });\n }\n\n return cleanedItems;"
},
"typeVersion": 2
},
{
"id": "ad0208aa-904a-40fa-8f76-bd0f67e705cd",
"name": "从 Google Drive 加载配置",
"type": "n8n-nodes-base.httpRequest",
"position": [
-336,
384
],
"parameters": {
"url": "https://drive.usercontent.google.com/download?id=15tO_RUnFTDkANVocx0es7k9PZ-VxFLgc&export=download",
"options": {
"response": {
"response": {
"responseFormat": "json"
}
}
}
},
"typeVersion": 4.2
},
{
"id": "c8910a76-d742-44ae-bf4b-50fa3ca4bf44",
"name": "重新附加配置",
"type": "n8n-nodes-base.code",
"position": [
1504,
592
],
"parameters": {
"jsCode": "// Re-attach config that was stripped by AI Agent\n const items = $input.all();\n const results = [];\n\n for (const item of items) {\n // Get config from earlier in the flow\n const config = $('Load Config from Google Drive').first().json;\n\n results.push({\n json: {\n ...item.json,\n config: config\n }\n });\n }\n\n return results;"
},
"typeVersion": 2
},
{
"id": "81d824f6-74e3-49bf-b460-fa8b700a778f",
"name": "便签",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1264,
64
],
"parameters": {
"width": 528,
"height": 768,
"content": "# 地缘政治突发新闻警报系统"
},
"typeVersion": 1
},
{
"id": "43e604e7-36b8-4ef9-a413-d13303419394",
"name": "便签1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-688,
288
],
"parameters": {
"width": 288,
"height": 416,
"content": "## 调度节点"
},
"typeVersion": 1
},
{
"id": "761c0e99-29a2-42d1-8d77-8b050e2c5438",
"name": "便签 2",
"type": "n8n-nodes-base.stickyNote",
"position": [
-384,
288
],
"parameters": {
"width": 256,
"height": 416,
"content": "## [加载配置信息](https://github.com/devdutta/n8n-geopolitics-breaking-news-alert/blob/master/ARCHITECTURE.md)"
},
"typeVersion": 1
},
{
"id": "085d279a-499c-4b4a-b1ae-b8dbc6596d21",
"name": "便签 3",
"type": "n8n-nodes-base.stickyNote",
"position": [
224,
64
],
"parameters": {
"width": 864,
"height": 672,
"content": "## [预处理节点](https://github.com/devdutta/n8n-geopolitics-breaking-news-alert/blob/master/ARCHITECTURE.md)"
},
"typeVersion": 1
},
{
"id": "6a57e769-e103-4da1-bb49-1997b2594334",
"name": "便签 4",
"type": "n8n-nodes-base.stickyNote",
"position": [
1104,
64
],
"parameters": {
"width": 320,
"height": 672,
"content": "## 突发新闻分析器"
},
"typeVersion": 1
},
{
"id": "44db6207-6985-44a7-b86b-4cdfcf267b62",
"name": "便签 5",
"type": "n8n-nodes-base.stickyNote",
"position": [
-112,
64
],
"parameters": {
"width": 320,
"height": 960,
"content": "## 使用 6 个 RSS 新闻源"
},
"typeVersion": 1
},
{
"id": "4e0237b2-ec6b-4494-9b0d-ce3fb7b831d3",
"name": "便签6",
"type": "n8n-nodes-base.stickyNote",
"position": [
1456,
64
],
"parameters": {
"width": 752,
"height": 352,
"content": "## 数据插入和清理节点"
},
"typeVersion": 1
},
{
"id": "4ac931f5-7399-4b3c-b731-21a42aeaf52f",
"name": "便签7",
"type": "n8n-nodes-base.stickyNote",
"position": [
1456,
432
],
"parameters": {
"width": 752,
"height": 304,
"content": "## 后处理节点"
},
"typeVersion": 1
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "d1251d3e-6269-4e02-a2cc-2a6322d81169",
"connections": {
"If": {
"main": [
[
{
"node": "Aggregate Alerts",
"type": "main",
"index": 0
}
]
]
},
"Merge": {
"main": [
[
{
"node": "RSS_Cleanup_Node",
"type": "main",
"index": 0
}
]
]
},
"BBC RSS Feed": {
"main": [
[
{
"node": "Merge",
"type": "main",
"index": 3
}
]
]
},
"NYT RSS Feed": {
"main": [
[
{
"node": "Merge",
"type": "main",
"index": 0
}
]
]
},
"TOI RSS Feed": {
"main": [
[
{
"node": "Merge",
"type": "main",
"index": 1
}
]
]
},
"NDTV RSS Feed": {
"main": [
[
{
"node": "Merge",
"type": "main",
"index": 5
}
]
]
},
"SCMP RSS Feed": {
"main": [
[
{
"node": "Merge",
"type": "main",
"index": 4
}
]
]
},
"Dynamic Filter": {
"main": [
[
{
"node": "Check for Duplicates",
"type": "main",
"index": 0
}
]
]
},
"Aggregate Alerts": {
"main": [
[
{
"node": "Send Breaking News Alert",
"type": "main",
"index": 0
}
]
]
},
"Every 30 Minutes": {
"main": [
[
{
"node": "Load Config from Google Drive",
"type": "main",
"index": 0
}
]
]
},
"RSS_Cleanup_Node": {
"main": [
[
{
"node": "Dynamic Filter",
"type": "main",
"index": 0
}
]
]
},
"Re-attach Config": {
"main": [
[
{
"node": "If",
"type": "main",
"index": 0
}
]
]
},
"OpenAI Chat Model": {
"ai_languageModel": [
[
{
"node": "Breaking News Analyzer",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Al Jazeera RSS Feed": {
"main": [
[
{
"node": "Merge",
"type": "main",
"index": 2
}
]
]
},
"Check for Duplicates": {
"main": [
[
{
"node": "Dynamic AI Prompt Generator",
"type": "main",
"index": 0
}
]
]
},
"Filter India Keywords": {
"main": [
[
{
"node": "Check for Duplicates",
"type": "main",
"index": 0
}
]
]
},
"Breaking News Analyzer": {
"main": [
[
{
"node": "Re-attach Config",
"type": "main",
"index": 0
},
{
"node": "Record Analyzed Article",
"type": "main",
"index": 0
}
]
]
},
"Record Analyzed Article": {
"main": [
[
{
"node": "Cleanup Old Records",
"type": "main",
"index": 0
}
]
]
},
"Structured Output Parser": {
"ai_outputParser": [
[
{
"node": "Breaking News Analyzer",
"type": "ai_outputParser",
"index": 0
}
]
]
},
"Dynamic AI Prompt Generator": {
"main": [
[
{
"node": "Breaking News Analyzer",
"type": "main",
"index": 0
}
]
]
},
"Load Config from Google Drive": {
"main": [
[
{
"node": "NYT RSS Feed",
"type": "main",
"index": 0
},
{
"node": "TOI RSS Feed",
"type": "main",
"index": 0
},
{
"node": "Al Jazeera RSS Feed",
"type": "main",
"index": 0
},
{
"node": "BBC RSS Feed",
"type": "main",
"index": 0
},
{
"node": "SCMP RSS Feed",
"type": "main",
"index": 0
},
{
"node": "NDTV RSS Feed",
"type": "main",
"index": 0
}
]
]
}
}
}常见问题
如何使用这个工作流?
复制上方的 JSON 配置代码,在您的 n8n 实例中创建新工作流并选择「从 JSON 导入」,粘贴配置后根据需要修改凭证设置即可。
这个工作流适合什么场景?
高级 - 市场调研, AI 摘要总结
需要付费吗?
本工作流完全免费,您可以直接导入使用。但请注意,工作流中使用的第三方服务(如 OpenAI API)可能需要您自行付费。
相关工作流推荐
灵活新闻聚合器 - 多源集成、AI分析和可设置频道
多源新闻策展系统,集成Mistral AI分析、摘要和自定义频道
If
Set
Xml
+32
120 节点Hybroht
内容创作
社交媒体监控
使用AnySite API和GPT的跨平台品牌监控与分析
Code
Merge
Data Table
+8
42 节点Andrey
市场调研
带 AI 过滤的个性化学习内容聚合器
使用 GPT-4.1-mini 和 Google Sheets 从 Reddit 和 RSS 筛选学习内容
Set
Code
Merge
+7
18 节点higashiyama
市场调研
新抓取器_TechCrunch新闻-AI1
TechCrunch AI文章抓取与分类器,使用GPT-4.1-nano到Sheets和Telegram
Set
Code
Html
+12
18 节点Mujahid Kabae
市场调研
23 分析客户终身价值
使用GPT-4和Bright Data MCP分析与定位高价值客户
If
Set
Code
+9
20 节点Yaron Been
市场调研
亚马逊价格自动追踪与Telegram提醒
使用Google Gemini自动追踪亚马逊价格并发送Telegram提醒
If
Set
Code
+8
22 节点Issam AGGOUR
市场调研
工作流信息
难度等级
高级
节点数量30
分类2
节点类型12
作者
Dev Dutta
@devduttaData and Product Analytics| Business Intelligence| Data Governance| Tech. Strategy| Driving Digital Transformation Programs| Process Automation | Agentic AI
外部链接
在 n8n.io 查看 →
分享此工作流