钉钉 OA 审批处理插件,支持查询待办任务和执行审批操作。 **当以下情况时使用此 Skill**: (1) 用户需要查询钉钉 OA 审批待办任务列表 (2) 用户需要执行审批操作(同意或拒绝) (3) 用户提到"钉钉审批"、"OA 审批"、"待办任务"、"审批单据" (4) 用户要求处理钉钉工作通知或审批流程...
get_pending_tasks 获取任务列表,返回包含 task_idexecute_approval_task 时必须传入从 get_pending_tasks 获取的 task_id| 用户意图 | 工具 | 必填参数 | 常用可选 |
|---|---|---|---|
| 查询我的待办审批 | get_pending_tasks | 无 | - |
| 查看审批单详情 | get_task_details | task_id | - |
| 同意某个审批 | execute_approval_task | task_id, action="AGREE" | remark(审批意见) |
| 拒绝某个审批 | execute_approval_task | task_id, action="REFUSE" | remark(拒绝原因) |
| 查询我的假期余额 | get_vacation_balance | 无 | - |
调用时机:用户询问"有什么待办"、"我的审批任务"等
工具:get_pending_tasks
参数:无
返回示例:
1. 请假申请 - 张三 (任务 ID: task_12345)
2. 报销审批 - 李四 (任务 ID: task_67890)
3. 合同审批 - 王五 (任务 ID: task_abcde)
调用时机:用户想要了解审批单的详细信息(申请人、申请内容、审批流程等)
工具:get_task_details
参数:
task_id:从 get_pending_tasks 返回中获取的任务 ID返回示例:
📋 **审批单详情**
**单据标题**: 请假申请 - 张三
**申请人**: 张三
**申请时间**: 2026-03-11 10:30:00
**当前状态**: 审批中
**审批类型**: 请假申请
📝 **申请内容**:
- 请假类型:年假
- 请假天数:3 天
- 开始时间:2026-03-15
- 结束时间:2026-03-17
- 请假事由:家庭事务
🔄 **审批流程**:
- ✅ 同意 | 李四(部门经理)| 2026-03-11 11:00:00
- ⏳ 待审批 | 王五(HR)|
调用时机:用户明确要求同意或拒绝某个审批
工具:execute_approval_task
必填参数:
task_id:从 get_pending_tasks 返回中获取的任务 IDaction:"AGREE"(同意)或 "REFUSE"(拒绝)可选参数:
remark:审批意见或备注(建议填写,特别是拒绝时)返回示例:
审批成功:已同意任务 task_12345
在 openclaw.json 中添加以下配置:
{
"plugins": {
"entries": {
"dingtalk-approval": {
"config": {
"dingtalkUserId": "your-dingtalk-user-id",
"appKey": "your-app-key",
"appSecret": "your-app-secret"
}
}
}
}
}
配置项说明:
dingtalkUserId:钉钉用户 ID(用于执行审批操作)appKey:钉钉开放平台应用的 AppKeyappSecret:钉钉开放平台应用的 AppSecret获取方式:
查询当前用户的 OA 审批待办任务列表。
Parameters: 无
Returns: 任务列表字符串,每行包含任务标题和 task_id
错误处理:
执行 OA 审批的同意或拒绝操作。
Parameters:
task_id (string, required): 待办任务的唯一 ID(从 get_pending_tasks 获取)action (string, required): 审批动作,枚举值 ["AGREE", "REFUSE"]remark (string, optional): 审批意见/备注Returns: 成功或失败消息
错误处理:
用户:我有什么待办审批吗?
助手:调用 get_pending_tasks → 返回 3 个待办
助手:您有 3 个待办:
1. 请假申请 - 张三 (task_12345)
2. 报销审批 - 李四 (task_67890)
3. 合同审批 - 王五 (task_abcde)
用户:同意第一个请假申请
助手:调用 execute_approval_task(task_id="task_12345", action="AGREE", remark="同意")
助手:✅ 已同意张三的请假申请
用户:拒绝李四的报销,发票不齐全
助手:调用 execute_approval_task(task_id="task_67890", action="REFUSE", remark="发票不齐全,请补充后重新提交")
助手:❌ 已拒绝李四的报销审批,备注:发票不齐全,请补充后重新提交
用户:帮我查一下还有多少年假
助手:调用 get_vacation_balance
助手:年假: 5天 (总10天, 已用5天)
错误:[dingtalk-approval] 配置不完整!
解决:检查 openclaw.json 配置路径是否正确,确保在 plugins.entries.dingtalk-approval.config 下
错误:invalid appkey or appsecret
解决:检查 appKey 和 appSecret 是否正确,确认应用状态正常
错误:permission denied
解决:在钉钉开放平台为应用添加 OA 审批相关 API 权限
错误:invalid task id
解决:确保 task_id 是从 get_pending_tasks 返回的最新数据,任务可能已被处理
错误:应用尚未开通假期查询权限(qyapi_holiday_readonly)
解决:在钉钉开放平台为当前应用申请 qyapi_holiday_readonly 权限后重试
Yang
MIT
ZIP package — ready to use