若WorkBuddy调用钉钉功能无响应,需依次检查:一、ACTIVE_PROFILES是否含dingtalk;二、删除.dingtalk_token_cache.json并校准系统时间;三、钉钉开放平台补全API权限;四、确认应用可见范围覆盖目标人员;五、核对DINGTALK_Client_ID与Client_Secret配置正确。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜

如果您已完成WorkBuddy与钉钉的连接配置,但实际调用钉钉相关功能时无响应、指令失败或提示工具不可用,则可能是服务模块未加载、权限未生效或凭证配置异常所致。以下是针对性的解决步骤:
一、检查并修正ACTIVE_PROFILES配置
WorkBuddy需明确启用对应钉钉功能的运行环境(Profile),若ACTIVE_PROFILES未包含钉钉模块标识,AI将无法识别和调用钉钉工具。
1、打开WorkBuddy安装目录下的application.yml或.env配置文件。
2、查找ACTIVE_PROFILES字段,确认其值为"ALL",或至少包含"dingtalk"或具体模块如"dingtalk-contacts"、"dingtalk-chat"等。
3、保存文件后,必须完全退出WorkBuddy进程并重新启动,否则配置不生效。
二、验证并刷新钉钉Access Token
即使连接成功,过期或损坏的Access Token会导致API调用返回invalid access_token错误,表现为指令静默失败或报错“认证失败”。
1、关闭WorkBuddy程序。
2、进入WorkBuddy项目工作区根目录,定位并删除文件:.dingtalk_token_cache.json。
3、检查本地系统时间是否准确:打开系统设置 → 日期与时间 → 确保已启用“自动设置时间”并与网络时间同步。
4、重新启动WorkBuddy,等待登录完成后自动触发Token重获取流程。
三、确认并补全钉钉开放平台权限
WorkBuddy执行具体操作(如查用户、发消息)依赖钉钉应用后台授予的细粒度API权限;仅完成OAuth连接不代表权限已就绪。
1、登录钉钉开放平台,进入对应应用的管理后台。
2、点击左侧菜单“权限管理”,核对已申请并审批通过的权限点,确保包含所需能力,例如:
• Contact.User.Read(用于搜索成员)
• Chat.ChatMessage.Send(用于发送群消息)
• Department.Department.Read(用于获取部门结构)
3、若权限未勾选,立即申请并提交审批;审批通过后,等待3–5分钟平台策略同步完成。
4、同步完成后,再次执行第二步中的Token清理与重启操作。
四、排查应用可见范围与组织架构匹配性
即使权限齐全,若钉钉应用的“可见范围”未覆盖目标人员或部门,搜索、消息推送等功能仍将返回空结果或拒绝访问。
1、在钉钉开放平台应用后台,进入“版本管理与发布”页面。
2、点击当前上线版本右侧的“编辑”按钮。
3、在“应用可见范围”设置中,确认已勾选全部员工,或明确包含您要操作的部门/人员标签。
4、保存修改后,等待钉钉端策略更新(通常1–2分钟),无需重启WorkBuddy。
五、验证DINGTALK_Client_ID与Client_Secret配置
客户端ID与密钥是WorkBuddy向钉钉身份认证服务发起请求的基础凭证;任意一项错误均导致服务启动失败或后续调用中断。
1、回到钉钉开放平台应用详情页,复制“AppKey”作为DINGTALK_Client_ID,复制“AppSecret”作为DINGTALK_Client_Secret。
2、在WorkBuddy配置文件(application.yml或.env)中,严格比对以下字段值:
• dingtalk.app-key = 上述AppKey
• dingtalk.app-secret = 上述AppSecret
3、确认无多余空格、不可见字符或半角/全角符号混用;所有字符须为ASCII标准格式。
4、保存后,彻底关闭WorkBuddy并重新启动,观察启动日志是否仍提示“DINGTALK_Client_ID is required”或“认证失败”。










