返回顶部
d

ding-skills钉钉助手

钉钉操作助手(DingTalk)。当用户通过钉钉对话、或提到以下任何场景时必须使用此技能:查人(查下某某、搜一下某人、找一下谁谁)、查部门、查手机号、查工号、约会议(预约会议、创建会议、安排会议、开个会)、发消息(给某人发消息、群里发个通知)、查审批(我的审批、待审批、审批状态)、发起审批、同意/拒绝审批、查日程、创建日程、查员工数、查离职、开视频会议、钉钉知识库(查钉钉知识库、在钉钉创建文档、搜索钉钉文档、覆写钉钉文档)。注意:当用户从钉钉渠道发送消息时,"知识库"默认指钉钉知识库,不是飞书知识库。Use when user mentions anything about DingTalk or when the message comes from a DingTalk channel: looking up people, searching users/departments, scheduling meetings, creating conferences, sending messages, managing approvals, checking calendar ev

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 2.3.1
安全检测
已通过
336
下载量
免费
免费
1
收藏
概述
安装方式
版本历史

ding-skills

Ding Skills

钉钉全功能技能集:用户管理、部门管理、消息发送、OA审批、视频会议、日程管理。

前置要求

  • - 已设置环境变量 DINGTALKAPPKEY 和 DINGTALKAPPSECRET
  • 钉钉应用已创建并拥有相应 API 权限

环境变量配置

bash
export DINGTALKAPPKEY=
export DINGTALKAPPSECRET=
export DINGTALKROBOTCODE= # 可选,发消息时使用

重要:常用工作流(必读)

大部分钉钉 API 需要 userId 或 unionId,但用户通常只会说人名。遇到人名时,必须先查人再执行操作。

工作流1:按人名预约会议 / 创建视频会议

当用户说帮我和张三、李四开个会或预约一个会议,参会人:张三、李四时:

步骤1: python scripts/search_user.py 张三 → 得到 userId
步骤2: python scripts/get_user.py → 得到 unionId
步骤3: 对每个参会人重复步骤1-2
步骤4: python scripts/createscheduleconference.py <主题> <发起人unionId> <开始时间> <结束时间> <参会人unionId1,unionId2> [会议地点]

工作流2:按人名发消息

当用户说给张三发个消息时:

步骤1: python scripts/search_user.py 张三 → 得到 userId
步骤2: python scripts/sendusermessage.py <消息内容>

注意:robotCode 自动从环境变量 DINGTALKROBOTCODE 读取,也可作为第3个参数手动传入。

工作流3:按人名查审批

当用户说查下张三的待审批时:

步骤1: python scripts/search_user.py 张三 → 得到 userId
步骤2: python scripts/listusertodo_approvals.py

工作流4:按人名查日程

当用户说查下张三今天的日程时:

步骤1: python scripts/search_user.py 张三 → 得到 userId
步骤2: python scripts/get_user.py → 得到 unionId
步骤3: python scripts/list_events.py [开始时间] [结束时间]

工作流5:在知识库中创建文档

当用户说在知识库里创建一个文档时:

步骤1: python scripts/search_user.py 张三 → 得到 userId
步骤2: python scripts/get_user.py → 得到 unionId
步骤3: python scripts/list_workspaces.py → 得到 workspaceId
步骤4: python scripts/create_doc.py <文档名>

工作流6:搜索知识库文档获取链接

当用户说帮我找一下知识库里的《周报》时:

步骤1: python scripts/search_user.py 张三 → 得到 userId
步骤2: python scripts/get_user.py → 得到 unionId
步骤3: python scripts/search_doc.py 周报 → 得到文档链接

通用规则

  • - 用户说人名 → 必须先调用 searchuser.py 获取 userId
  • 需要 unionId 的 API(日历、会议相关) → 再调用 getuser.py 从 userId 获取 unionId
  • 需要 userId 的 API(消息、审批、部门相关) → search_user.py 的结果可直接使用
  • 可以并行查询多个用户以提高效率

功能列表

1. 搜索用户 (search-user)

根据姓名搜索用户,返回匹配的 UserId 列表。

bash
python scripts/search_user.py <搜索关键词>

输出:

json
{
success: true,
keyword: 张三,
totalCount: 3,
hasMore: false,
userIds: [123456789, 987654321]
}

2. 查询用户详情 (get-user)

获取指定用户的详细信息。

bash
python scripts/get_user.py

输出:

json
{
success: true,
user: {
userid: user001,
name: 张三,
mobile: 1381234,
deptidlist: [12345],
unionid: xxxxx
}
}

3. 根据手机号查询用户 (get-user-by-mobile)

bash
python scripts/getuserby_mobile.py <手机号>

输出:

json
{ success: true, mobile: 13800138000, userId: user001 }

4. 根据 unionid 查询用户 (get-user-by-unionid)

bash
python scripts/getuserby_unionid.py

输出:

json
{ success: true, unionid: xxxxx, userId: user001 }

5. 获取员工人数 (get-user-count)

bash
python scripts/getusercount.py [--onlyActive]

输出:

json
{ success: true, onlyActive: false, count: 150 }

6. 获取用户待审批数量 (get-user-todo-count)

bash
python scripts/getusertodo_count.py

输出:

json
{ success: true, userId: user001, count: 5 }

7. 获取未登录用户列表 (list-inactive-users)

bash
python scripts/listinactiveusers.py [--deptIds id1,id2] [--offset 0] [--size 100]

queryDate 格式: yyyyMMdd

输出:

json
{ success: true, queryDate: 20240115, userIds: [user001], hasMore: false }

8. 查询离职记录列表 (list-resigned-users)

bash
python scripts/listresignedusers.py [] [--nextToken xxx] [--maxResults 100]

startTime/endTime 格式: ISO8601

输出:

json
{
success: true,
startTime: 2024-01-01T00:00:00+08:00,
records: [{ userId: user001, name: 张三, leaveTime: 2024-01-15T10:00:00Z }]
}

9. 搜索部门 (search-department)

bash
python scripts/search_department.py <搜索关键词>

输出:

json
{ success: true, keyword: 技术部, totalCount: 2, departmentIds: [12345, 67890] }

10. 获取部门详情 (get-department)

bash
python scripts/get_department.py

输出:

json
{ success: true, department: { deptId: 12345, name: 技术部, parentId: 1 } }

11. 获取子部门列表 (list-sub-departments)

根部门 deptId = 1。

bash
python scripts/listsubdepartments.py

输出:

json
{ success: true, deptId: 1, subDepartmentIds: [12345, 67890] }

12. 获取部门用户列表 (list-department-users)

自动分页获取所有用户(简略信息)。

bash
python scripts/listdepartmentusers.py

输出:

json
{
success: true,
deptId: 12345,
users: [{ userId: user001, name: 张三 }, { userId: user002, name: 李四 }]
}

13. 获取部门用户详情 (list-department-user-details)

分页获取,支持 cursor 和 size。

bash
python scripts/listdepartmentuser_details.py [--cursor 0] [--size 100]

输出:

json
{ success: true, deptId: 12345, users: [...], hasMore: true, nextCursor: 100 }

14. 获取部门用户 ID 列表 (list-department-user-ids)

bash
python scripts/listdepartmentuser_ids.py

输出:

json
{ success: true, deptId: 12345, userIds: [user001, user002] }

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 ding-skills-1776096853 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 ding-skills-1776096853 技能

通过命令行安装

skillhub install ding-skills-1776096853

下载

⬇ 下载 ding-skills v2.3.1(免费)

文件大小: 46.08 KB | 发布时间: 2026-4-15 12:29

v2.3.1 最新 2026-4-15 12:29
优化 SKILL.md description,钉钉渠道消息自动匹配钉钉知识库

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部