OpenClaw 企业定制 私人订制工作流 优化运维 openclaw记忆优化 问题咨询解决 请加微信交流
Slack是很多团队用的办公协作平台,把Hermes接入Slack后,你的AI助手可以直接在Slack里响应团队成员的问题、帮你管理任务、分析数据。Slack的Channel机制让AI可以同时服务多个团队。这篇讲清楚怎么把Hermes接入Slack、怎么配置权限和频道。
为什么接入Slack
Slack接入有独特优势:
- 团队协作:AI可以加入多个Channel服务团队
- 权限管理:Slack本身的权限系统就很完善
- 频道隔离:不同项目可以有不同的AI上下文
- 斜杠命令:用/skill名称 直接触发AI
- App集成:可以和各种SaaS工具集成
创建Slack App
第一步:创建App
- 访问 https://api.slack.com/apps
- 点击”Create New App”
- 选择”From scratch”
- 输入App名称,选择Workspace
第二步:配置Bot
- 左侧菜单点击”Bot”
- 点击”Add a Bot User”
- 设置Bot名称和显示名称
第三步:配置OAuth Scopes
- 左侧菜单点击”OAuth & Permissions”
- 找到”Scopes”部分
- 添加以下Bot Token Scopes:
chat:write channels:history channels:read groups:history groups:read im:history im:read mpim:history mpim:read app_mentions:read reactions:read reactions:write files:read files:write users:read
第四步:安装到Workspace
- 左侧菜单点击”Install App”
- 点击”Install to Workspace”
- 授权后获取Bot Token(xoxb-开头)
第五步:启用Event Subscriptions
- 左侧菜单点击”Event Subscriptions”
- 开启”Enable Events”
- Request URL填:
https://your-domain.com/slack/events - 添加以下Bot Events:
app_mention message.channels message.groups message.im message.mpim
第六步:配置Interactivity
- 左侧菜单点击”Interactivity & Shortcuts”
- 开启”Interactivity”
- Request URL填:
https://your-domain.com/slack/interactive
配置Hermes
slack: bot_token: "${SLACK_BOT_TOKEN}" signing_secret: "${SLACK_SIGNING_SECRET}" app_level_token: "${SLACK_APP_LEVEL_TOKEN}" allowed_users: - "U12345678" - "U87654321"Socket Mode(推荐)
Socket Mode不需要公网Webhook,更简单:
- 左侧菜单点击"Basic Information"
- 找到"App-Level Tokens"
- 点击"Generate Token and Scope"
- 添加Token名称(如hermes)和scope:
connections:write- 复制生成的Token(xapp-开头)
slack: bot_token: "${SLACK_BOT_TOKEN}" signing_secret: "${SLACK_SIGNING_SECRET}" app_level_token: "${SLACK_APP_LEVEL_TOKEN}" socket_mode: true配置OAuth重定向
# OAuth & Permissions页面 # 添加 Redirect URLs https://your-domain.com/slack/oauth频道权限配置
公开频道
slack: allowed_channels: - "C12345678" # 用Channel ID - "C87654321"私有频道
slack: allowed_groups: - "S12345678" # Private Channel IDDM会话
slack: allow_dm: true allowed_users: - "U12345678"斜杠命令配置
在Slack App设置里添加斜杠命令:
- 左侧菜单点击"Slash Commands"
- 点击"Create New Command"
- 配置:
Command: /hermes Request URL: https://your-domain.com/slack/commands Short Description: 与AI助手对话 Usage Hint: [你的问题]事件处理
@提及触发
在Channel里@Bot才会触发响应:
@hermes 帮我查一下这个API的文档私聊直接响应
DM不需要@,直接发消息。
Thread响应
slack:
thread_replies: true开启后AI会在Thread里回复。
交互式组件
Slack支持按钮、下拉菜单等交互组件:
# Hermes可以生成带按钮的消息
{
"blocks": [
{
"type": "section",
"text": {
"type": "mrkdwn",
"text": "你想做什么?"
},
"accessory": {
"type": "static_select",
"placeholder": {
"type": "plain_text",
"text": "选择操作"
},
"options": [
{"text": {"type": "plain_text", "text": "搜索"}, "value": "search"},
{"text": {"type": "plain_text", "text": "分析"}, "value": "analyze"}
]
}
}
]
}多Workspace支持
slack:
workspaces:
team-a:
bot_token: "xoxb-xxx"
signing_secret: "yyy"
team-b:
bot_token: "xoxb-zzz"
signing_secret: "www"和Gateway配合
# config.yaml
gateway:
port: 3000telegram:
bot_token: "${TELEGRAM_BOT_TOKEN}"slack:
bot_token: "${SLACK_BOT_TOKEN}"
signing_secret: "${SLACK_SIGNING_SECRET}"
app_level_token: "${SLACK_APP_LEVEL_TOKEN}"
socket_mode: trueNginx反代配置
server {
listen 443 ssl;
server_name your-domain.com;ssl_certificate /path/to/cert.pem;
ssl_certificate_key /path/to/key.pem;location /slack {
proxy_pass http://localhost:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}常见问题
Bot不响应消息?
检查:1)Event Subscriptions是否开启;2)Request URL是否可达;3)Bot Token是否有效;4)App是否添加到Channel。
Socket Mode连接失败?
检查:1)App-Level Token是否配置;2)connections:write scope是否添加;3)网络是否通。
权限不足?
检查OAuth Scopes是否包含所需的权限。
如何限制Bot只在特定Channel响应?
配置allowed_channels,只列出允许的Channel ID。
总结
Slack接入让AI成为团队助手:
- 多Channel服务不同团队
- 斜杠命令直接触发
- 权限管理完善
- Socket Mode配置简单
适合团队使用场景。








暂无评论内容