n8n可实现slack关键词自动响应:抓取消息→调用大模型生成回复→格式化后回传,全程无代码;需配置slack webhook、events api权限及n8n工作流节点。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

当Slack频道里出现特定关键词(比如“报错”“崩溃”“无法登录”),需要立刻由AI生成技术回复并自动发送,n8n能帮你把Slack消息实时抓取→调用大模型API→格式化响应→回传Slack,全程无需写代码。
配置Slack Webhook接收消息
第一步:在Slack工作区进入Settings & administration → Manage apps → 搜索“Incoming Webhooks” → 点击“Add to Slack” → 选择目标频道 → 复制生成的Webhook URL。
第二步:在n8n中添加“HTTP Request”节点,Method选POST,URL粘贴刚才复制的Webhook地址。
第三步:在Body中填入JSON格式的Slack消息结构:{"text": "{{$json.response}}"}。注意这里必须用双引号包裹key和value,单引号会触发Slack 400错误。
用Webhook触发n8n工作流
在n8n画布左侧添加“Webhook”节点,点击“Execute Workflow”右侧的“Copy URL”按钮获取唯一触发地址。
回到Slack管理后台,在“Apps”中搜索“Workflow Builder” → 新建Workflow → 添加“New message in channel”触发器 → 设置监听频道 → 添加“Send a web request”操作 → URL填入刚才复制的n8n Webhook地址 → Body选“JSON”,填入:{"channel": "{{$json.channel}}", "text": "{{$json.text}}", "ts": "{{$json.ts}}"} 。
【Slack必须启用“Events API”权限并订阅message.channels事件,否则Webhook收不到任何消息】
调用大模型API生成回复
方法一:使用OpenAI节点(推荐)
拖入“OpenAI”节点 → 在Credentials中新建凭证,填入你的API Key → Model选gpt-3.5-turbo → Prompt填:“你是一名资深运维工程师,请用简洁中文回复以下用户问题,不要加解释、不要用markdown:{{$json.text}}”。
方法二:用HTTP Request直连本地Ollama
添加“HTTP Request”节点 → URL填http://localhost:11434/api/chat → Method选POST → Body填:{"model":"llama3","messages":[{"role":"user","content":"{{$json.text}}"}]} → Headers加Content-Type: application/json。
这一步如果返回空内容,大概率是Ollama没运行或模型没加载,终端执行ollama list确认llama3已存在。
过滤关键词并构造Slack响应
第一步:添加“IF”节点,条件设为“{{$json.text.toLowerCase().includes('报错') || $json.text.toLowerCase().includes('崩溃') || $json.text.toLowerCase().includes('无法登录')}}”。
第二步:True分支接“Set”节点,在“Values”里新增字段:replyText → 值填“{{$json.response}}”。
第三步:False分支接“Set”节点,填入固定话术:“已收到,稍后人工跟进”。
第四步:两个分支合并后,接“Function”节点,输入:
return { json: { text: $input.first().json.replyText || $input.first().json.text } };











