n8n + OpenClaw:零代码工作流自动化的正确打开方式
先说清楚:n8n是什么,不是什么 n8n经常被拿来和Zapier比较,但这个比较有点误导。Zapier是托管的、按操作收费的、面向非技术用户的;n8n是自托管的、开源的、面向愿意动手配置的人的。 更准确的类比: n8n是给技术人员用的工作流自动化引擎 。它有可视化界面,也有完整的代码节点,可以在节点里直接写Jav…
- 入库时间
- 下载量
- 0
- 人审标记
- 已人工审核
先说清楚:n8n是什么,不是什么
n8n经常被拿来和Zapier比较,但这个比较有点误导。Zapier是托管的、按操作收费的、面向非技术用户的;n8n是自托管的、开源的、面向愿意动手配置的人的。
更准确的类比:n8n是给技术人员用的工作流自动化引擎。它有可视化界面,也有完整的代码节点,可以在节点里直接写JavaScript。这让它在"不用写完整程序但又需要灵活逻辑"的场景里特别好用。
OpenClaw的n8n-automation技能把n8n和AI Agent连接起来,让你可以用自然语言描述工作流,由Agent帮你生成n8n的JSON配置,甚至直接通过n8n的REST API触发工作流执行。
安装配置
前提:你需要有一个跑起来的n8n实例。可以Docker跑:
docker run -it --rm -p 5678:5678 -v ~/.n8n:/home/node/.n8n n8nio/n8n
然后在ClawHub安装技能:
clawhub install n8n-automation
安装后需要配置n8n实例地址和API Key(在n8n的Settings → API里生成):
# ~/.openclaw/workspace/TOOLS.md 里加:
### n8n
- URL: http://localhost:5678
- API Key: your-n8n-api-key
- Webhooks base: https://your-domain.com/webhook/三个真实使用场景
场景一:RSS聚合 + AI摘要 + Telegram推送
我们每天要监控十几个AI新闻RSS源,手动看太费时间。用n8n-automation技能,描述需求:
帮我创建一个n8n工作流:
每天早上8点,读取以下RSS源的更新:
- https://feeds.feedburner.com/oreilly/radar
- https://www.deeplearning.ai/the-batch/feed
过滤出包含"LLM"或"agent"关键词的文章,
用Claude生成100字摘要,
发送到Telegram频道 @sfdlab_news
Agent会生成完整的n8n工作流JSON,包含Schedule Trigger → RSS Read → Filter → HTTP Request(调Claude API)→ Telegram节点。导入n8n,调整API key,激活,完事。
实际运行的踩坑:RSS Read节点的"每次只返回新条目"功能依赖本地存储,Docker重启后会丢失状态,每次重启都会重发历史消息。解法:加一个Postgres节点记录已处理的文章URL。
场景二:GitHub PR通知 + 代码审查自动化
团队有人提PR,n8n收到GitHub webhook,自动让Claude做初步代码审查,结果发到Discord。
关键是GitHub webhook的配置:n8n的Webhook节点会给你一个URL(格式是/webhook/{uuid}),把这个URL填到GitHub仓库的Settings → Webhooks里,选择pull_request事件。
然后在工作流里:Webhook → Extract PR info → HTTP Request(调Claude)→ Discord Webhook。
Claude的prompt:
你是代码审查员。以下是PR的diff内容:
{{$json.diff}}
请从以下角度简要评估(200字以内):
1. 潜在bug风险
2. 代码风格问题
3. 测试覆盖是否充分
用中文回复。
注意:Claude API调用要用HTTP Request节点,不是n8n内置的AI节点(内置的只支持部分provider)。Headers里加x-api-key,body里按Anthropic的格式构建。
场景三:数据库变更监控
生产数据库有些关键表(比如payments、user_roles),任何变更都要留审计记录并通知。
n8n的Postgres Trigger节点可以监听PostgreSQL的LISTEN/NOTIFY事件。先在数据库里创建触发器:
CREATE OR REPLACE FUNCTION notify_payment_change()
RETURNS TRIGGER AS $$
BEGIN
PERFORM pg_notify('payment_changes',
row_to_json(NEW)::text);
RETURN NEW;
END;
$$ LANGUAGE plpgsql;CREATE TRIGGER payment_audit
AFTER INSERT OR UPDATE ON payments
FOR EACH ROW EXECUTE FUNCTION notify_payment_change();
然后n8n的Postgres Trigger订阅payment_changes频道,变更来了就写入审计日志表,同时发Telegram通知。
n8n-automation技能里真正有用的部分
技能安装后,Agent能帮你做这几件事:
- 自然语言→工作流JSON:描述流程,Agent输出可导入n8n的完整JSON
- 工作流调试:把报错信息贴给Agent,它能定位n8n节点配置问题
- API触发:Agent直接调n8n的REST API,在对话里触发工作流执行
- 节点推荐:告诉Agent你的需求,它帮你选合适的n8n节点组合
限制:生成的JSON有时候节点版本过旧(n8n更新频繁),导入后需要手动升级节点。建议生成后先在测试工作流里运行一遍再激活。
和其他技能的配合
n8n-automation和以下技能配合效果好:
- smart-web-scraper:n8n定时触发抓取任务,Agent处理提取到的数据
- self-improving-agent:工作流执行错误自动上报,Agent学习错误模式
- stock-watcher:行情变化触发n8n工作流,发送自定义格式的报警
SFD编者注
我们SFD实验室目前跑着6条n8n工作流,最重要的一条是日更内容发布流水线的监控:每篇文章发布后,n8n自动检查URL可访问性和SEO元数据完整性,有问题就通知小狐狸重新发布。
n8n的学习曲线比Zapier陡一些,但自托管+代码节点的组合让它的上限高很多。如果你在用OpenClaw做多Agent协作,n8n是很好的"胶水层"——把各个Agent的输出连成真正自动化的流水线。