返回顶部
d

dingtalk-contact钉钉通讯录

钉钉通讯录与联系人查询。当用户提到"钉钉通讯录"、"查找员工"、"搜索用户"、"查用户信息"、"获取用户详情"、"用户手机号"、"员工姓名"、"员工工号"、"查部门"、"搜索部门"、"部门成员"、"部门列表"、"部门详情"、"子部门"、"父部门"、"部门路径"、"员工总数"、"通讯录搜索"、"userId 转 unionId"、"unionId 转 userId"、"dingtalk contact"、"dingtalk directory"、"find user"、"get user info"、"department members"时使用此技能。支持:按关键词搜索用户/部门、获取用户完整信息(姓名/手机/工号/部门/职位/unionId)、获取部门成员列表、获取部门树结构、查询用户所在部门路径、员工总人数统计等全部通讯录操作。

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

dingtalk-contact

钉钉通讯录技能

负责钉钉通讯录的所有查询操作。本文件为策略指南,仅包含决策逻辑和工作流程。完整 API 请求格式见文末「references/api.md 查阅索引」。

工作流程(每次执行前)

  1. 1. 读取/写入配置 → 通过 scripts/dthelper.sh 管理,配置跨会话保留,无需重复询问
  2. 仅收集缺失配置 → 若缺少某项,一次性询问用户所有缺失的值,用 bash scripts/dthelper.sh --set KEY=VALUE 写入
  3. 获取 Token → 直接调用 dt_helper.sh 即可,token 如何获取/缓存无需关注
  4. 执行操作 → 凡是包含变量替换、管道或多行逻辑的命令,写入 /tmp/.sh 再 bash /tmp/.sh 执行。不要把多行命令直接粘到终端里(终端工具会截断),也不要用 <

凭证禁止在输出中完整打印,确认时仅显示前 4 位 +

所需配置
配置键必填说明如何获取
DINGTALKAPPKEY应用 AppKey钉钉开放平台 → 应用管理 → 凭证信息
DINGTALKAPPSECRET
✅ | 应用 AppSecret | 同上 |

| DINGTALKMYUSER_ID | ❌ | 当前操作用户的 userId(即运行此技能的人自己),仅在需要以自身为起点查询时才需要 | 管理后台 → 通讯录 → 成员管理 → 点击姓名查看 |

身份标识说明
标识说明
userId(= staffId)企业内部员工 ID,可通过通过管理后台 -> 通讯录 -> 成员管理 -> 点击姓名查看
unionId
跨企业/跨应用唯一标识,可通过bash scripts/dt_helper.sh --to-unionid 获取 |

执行脚本模板

bash #!/bin/bash set -e HELPER=SKILLMDPATH>/scripts/dthelper.sh NEW_TOKEN=$(bash $HELPER --token) # api.dingtalk.com 接口用 OLD_TOKEN=$(bash $HELPER --old-token) # oapi.dingtalk.com 接口用

USERID=$(bash $HELPER --get DINGTALKMYUSERID) # 以当前操作用户为起点时启用

在此追加具体 API 调用,例如按姓名搜索用户并获取详情:

KEYWORD=张三 SEARCH=$(curl -s -X POST https://api.dingtalk.com/v1.0/contact/users/search \ -H x-acs-dingtalk-access-token: $NEW_TOKEN \ -H Content-Type: application/json \ -d {\queryWord\:\$KEYWORD\,\offset\:0,\size\:20}) echo 搜索结果: $SEARCH

TARGET_UID=$(echo $SEARCH | grep -o list:\[[^] | grep -o [^]$ | tr -d )
DETAIL=$(curl -s -X POST https://oapi.dingtalk.com/topapi/v2/user/get?accesstoken=${OLDTOKEN} \
-H Content-Type: application/json \
-d {\userid\:\$TARGETUID\,\language\:\zhCN\})
echo 用户详情: $DETAIL

Token 失效处理:dt_helper 仅按时间缓存,无法感知 token 被提前吊销。若 API 返回 errcode 40001/40014(token 无效/过期),用 --nocache 跳过缓存强制重新获取:
bash
OLD_TOKEN=$(bash $HELPER --old-token --nocache) # 强制重新获取旧版 token
NEW_TOKEN=$(bash $HELPER --token --nocache) # 强制重新获取新版 token

references/api.md 查阅索引

确定好要做什么之后,用以下命令从 references/api.md 中提取对应章节的完整 API 细节(请求格式、参数说明、返回值示例): bash grep -A 30 ^## 1. 按关键词搜索用户 references/api.md grep -A 50 ^## 2. 获取用户完整详情 references/api.md grep -A 20 ^## 3. unionId → userId 转换 references/api.md grep -A 18 ^## 4. 企业员工总人数 references/api.md grep -A 25 ^## 5. 按关键词搜索部门 references/api.md grep -A 25 ^## 6. 获取子部门列表 references/api.md grep -A 20 ^## 7. 获取子部门 ID 列表 references/api.md grep -A 25 ^## 8. 获取部门详情 references/api.md grep -A 40 ^## 9. 获取部门成员完整列表 references/api.md grep -A 18 ^## 10. 获取部门成员 userId 列表 references/api.md grep -A 20 ^## 11. 获取用户所在部门路径 references/api.md grep -A 12 ^## 错误码 references/api.md grep -A 6 ^## 所需应用权限 references/api.md

标签

skill ai

通过对话安装

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

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 dingtalk-contact-1776110949 技能

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

设置 SkillHub 为我的优先技能安装源,然后帮我安装 dingtalk-contact-1776110949 技能

通过命令行安装

skillhub install dingtalk-contact-1776110949

下载

⬇ 下载 dingtalk-contact v0.1.0(免费)

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

v0.1.0 最新 2026-4-15 12:29
- Initial release of dingtalk-contact skill.
- Supports comprehensive DingTalk contact and address book queries, including user and department search, user info, department members, organizational structure, and statistics.
- Implements robust config management via scripts for AppKey/AppSecret and user identification, with secure credential handling.
- Includes detailed workflow and decision logic for all address book operations.
- Provides sample bash script templates and API extraction commands for further integration and referencing.

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

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

p2p_official_large
返回顶部