OpenClaw接入钉钉完全指南:打造你的专属AI办公助手
OpenClaw接入钉钉完全指南:打造你的专属AI办公助手
引言
在AI办公自动化普及的2026年,OpenClaw作为开源AI代理工具,凭借持久记忆、任务自动化执行、多工具集成的核心优势,成为个人与企业打造专属AI助手的首选。而钉钉作为国内主流的办公协同平台,与OpenClaw的无缝对接,能让AI助手直接嵌入日常办公场景——群聊中@机器人即可生成会议纪要、私聊发送指令完成文件处理,真正实现“办公指令一句话,AI代劳省时间”。
本文将手把手教你完成OpenClaw与钉钉的完整对接流程,无需编写一行代码,零基础也能在40-60分钟内搭建成功。
一、准备工作
1.1 硬件与系统要求
- 服务器:推荐2核4GB内存及以上配置(最低2核2GB,但建议4GB避免内存不足)
- 操作系统:Linux(本文以Ubuntu 22.04为例)、Windows或macOS均可
- 网络:服务器需有公网IP(或使用内网穿透工具)
1.2 账号准备
- 钉钉企业管理员权限(或自建测试企业)
- 若使用阿里云百炼模型,需提前开通服务并获取API Key
二、OpenClaw安装部署
2.1 一键安装OpenClaw
登录服务器,执行官方安装脚本:
curl -fsSL https://openclaw.bot/install.sh | bashAI写代码 bash
- 1
安装过程可能需要5-10分钟,请耐心等待。
注意事项:
- 若服务器在国内,安装失败可能是网络问题,需自行解决
- 如果遇到
npm install failed错误,通常是内存不足(2G可能OOM),建议配置swap交换空间
2.2 初始化配置
安装完成后,运行初始化向导:
openclaw onboardAI写代码 bash
- 1
按提示进行选择:
- 选择QuickStart快速开始
- 选择模型服务商(推荐Qwen通义千问,免费额度充足适合入门)
- 复制弹出的链接,在浏览器中登录获取API Key
- 渠道选择(先跳过,后续单独配置钉钉)
Skills和hooks也选择暂不添加
2.3 验证安装
openclaw statusAI写代码 bash
- 1
看到服务状态为running即表示安装成功。
三、钉钉侧配置
3.1 创建钉钉应用
- 访问钉钉开放平台,使用企业账号登录
- 点击右上角“创建应用” → 选择“企业内部开发”
- 填写应用信息:
- 应用名称:自定义(如“OpenClaw AI助手”)
- 应用描述:简要说明用途
- 应用图标:可上传自定义图标
- 点击“保存”完成创建
3.2 添加机器人能力
- 进入应用详情页,左侧菜单选择“添加应用能力” → 点击“机器人”卡片的“添加”按钮
- 在机器人配置页面:
- 打开“机器人配置”开关
- 填写机器人名称、简介、图标等信息
- 关键:消息接收模式选择“Stream模式”(必须)
- 点击“发布”保存配置
3.3 获取凭证信息
- 左侧菜单选择“凭证与基础信息”
- 复制并保存以下信息(非常重要):
- Client ID(即AppKey)
- Client Secret(即AppSecret)
- 同时记录:
- Agent ID(应用ID)
- Corp ID(企业ID)
3.4 授予必要权限
- 左侧菜单选择“权限管理”
- 在搜索框输入“Card”,勾选以下权限并申请:
- Card.Instance.Write(互动卡片实例写权限)
- Card.Streaming.Write(AI卡片流式更新权限)
- 点击“批量申请”完成授权
3.5 发布应用版本
- 左侧菜单选择“版本管理与发布”
- 点击“创建新版本”,填写:
- 版本号:如“1.0.0”
- 版本描述:如“首次发布”
- 可见范围:测试阶段可选“仅自己可见”
- 点击“保存” → “直接发布”
四、OpenClaw接入钉钉
4.1 安装钉钉插件
OpenClaw需要通过插件与钉钉通信,执行以下命令安装:
openclaw plugins install https://github.com/soimy/clawdbot-channel-dingtalk.gitAI写代码 bash
- 1
等待自动下载、安装依赖和注册完成。
验证插件安装成功:
openclaw plugins list | grep dingtalkAI写代码 bash
- 1
应显示dingtalk | loaded。
4.2 配置钉钉通道
方式A:通过命令行配置(推荐新手)
openclaw config set channels.dingtalk.enabled true openclaw config set channels.dingtalk.clientId "你的Client ID" openclaw config set channels.dingtalk.clientSecret "你的Client Secret" openclaw config set channels.dingtalk.robotCode "你的Client ID" # 与clientId相同 openclaw config set channels.dingtalk.corpId "你的Corp ID" openclaw config set channels.dingtalk.agentId "你的Agent ID" openclaw config set channels.dingtalk.dmPolicy "open" # 私聊策略:open允许所有人 openclaw config set channels.dingtalk.groupPolicy "open" # 群聊策略 openclaw config set channels.dingtalk.messageType "markdown" # 消息格式AI写代码 bash
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
方式B:直接修改配置文件
找到OpenClaw配置文件(通常在~/.openclaw/openclaw.json),在channels节点下添加钉钉配置:
{ "channels": { "dingtalk": { "enabled": true, "clientId": "dingxxxxxxxxx", "clientSecret": "your_app_secret", "robotCode": "dingxxxxxxxxx", "corpId": "your_corp_id", "agentId": "123456789", "dmPolicy": "open", "groupPolicy": "open", "messageType": "markdown", "debug": false } } }AI写代码 json
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
4.3 重启网关使配置生效
openclaw gateway restartAI写代码 bash
- 1
检查网关状态:
openclaw gateway statusAI写代码 bash
- 1
确认状态为running。
4.4 网络代理配置(国内用户注意)
如果服务器使用代理,需要设置环境变量,确保钉钉通信不走代理:
export NO_PROXY="dingtalk.com,.dingtalk.com,api.dingtalk.com,wss-open-connection.dingtalk.com"AI写代码 bash
- 1
将此命令添加到~/.bashrc或~/.zshrc中永久生效。
五、测试与验证
5.1 在钉钉中添加机器人
- 打开钉钉客户端,进入任意群聊的“群设置” → “机器人” → “添加机器人”
- 搜索你创建的机器人名称,点击“添加”完成
- 或者在钉钉顶部搜索栏直接搜索机器人名称,点击进入私聊
5.2 发送测试消息
向机器人发送任意消息,如“你好”。
- 如果一切正常,机器人会回复AI生成的问候语
- 如果显示“处理中”但无回复,请参考第六节常见问题排查
5.3 查看OpenClaw日志
如需调试,可以实时查看日志:
openclaw logs --followAI写代码 bash
- 1
发送消息时观察日志输出,定位问题。
六、常见问题排查
场景1:机器人完全无响应
原因:钉钉应用未发布、配置错误或网关未启动
解决方案:
- 确认应用已发布最新版本(回到钉钉开发者后台重新发布)
- 检查OpenClaw网关状态:
openclaw gateway status - 核对Client ID/Secret配置是否正确
- 新建测试群重新添加机器人(避免使用默认测试群)
场景2:显示“处理中”但无回复
原因:模型API Key错误、服务卡顿
解决方案:
- 验证API Key是否有效(可在OpenClaw Web UI中检查)
- 重启网关:
openclaw gateway restart - 检查模型名称配置是否正确(如使用阿里云百炼,格式应为
alibaba-cloud/qwen3-max-2026-01-23)
场景3:访问Web UI返回{“success”:true}
原因:钉钉插件拦截了非钉钉请求
解决方案:
编辑插件文件~/.openclaw/extensions/dingtalk/src/monitor.ts,在handleDingTalkWebhookRequest函数开头添加判断:
export async function handleDingTalkWebhookRequest( req: import('node:http').IncomingMessage, res: import('node:http').ServerResponse ): Promise<boolean> { const url = req.url || ''; const isDingTalkPath = url.includes('/dingtalk') || url.includes('/webhook'); if (req.method !== 'POST' || !isDingTalkPath) { return false; // 放行非钉钉请求 } // 原有代码保持不变 }AI写代码 typescript
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
修改后重启网关。
场景4:报错“Connection refused”
原因:防火墙未放行端口或公网地址格式错误
解决方案:
- 确认服务器安全组已放行18789端口
- 公网地址格式应为
公网IP:18789(不加http://) - 添加钉钉IP白名单(如果使用云防火墙):
121.40.82.220,47.97.73.42,47.98.226.113,47.96.151.112,118.178.89.160,120.27.202.100
七、进阶玩法
7.1 配置AI卡片消息
如需更美观的流式消息展示,可以配置AI卡片:
- 访问钉钉开放平台
- 点击“新建模板” → 卡片类型选“消息卡片” → 卡片模板场景选“AI卡片” → 关联你的应用
- 直接保存发布(不要使用预设模板)
- 复制模板ID,在OpenClaw配置中添加:
openclaw config set channels.dingtalk.cardTemplateId "你的模板ID" openclaw config set channels.dingtalk.messageType "card"AI写代码 bash
- 1
- 2
重启网关生效。
7.2 多渠道同时接入
OpenClaw支持同时接入多个平台,共享同一个AI智能体。配置示例:
channels: dingtalk: appKey: "xxx" appSecret: "xxx" feishu: appId: "cli_xxx" appSecret: "xxx" wecom: corpId: "xxx" agentId: "xxx" secret: "xxx"AI写代码 yaml
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
八、总结
通过本文的步骤,你已经成功将OpenClaw接入钉钉,拥有了一个完全私有、可定制的AI办公助手。它不仅能在群聊中回答问题,还能通过OpenClaw强大的技能体系执行系统命令、管理文件、处理文档,真正成为你的智能办公伙伴。
遇到问题时,记得查看OpenClaw日志(openclaw logs)和钉钉开发者后台的配置,大多数问题都能快速定位。
现在,去给你的AI助手添加更多酷炫的技能吧!
更多推荐



所有评论(0)