{
  "markdown": "# 钉钉 Agent 技能库（dingtalk-skills）\n\n[English](README_EN.md) | 中文\n\n---\n\n**已适配 [OpenClaw](https://openclaw.ai) 🦞 & [Hermes](https://github.com/NousResearch/hermes-agent)**，可从 [ClawHub](https://clawhub.ai) · [Skills.sh](https://skills.sh/breath57/dingtalk-skills) 一键安装。\n\n让 AI Agent 直接操作钉钉——无需手写 API 调用，无需手动管理 Token，对话即操作。\n\n基于 [Anthropic skills 规范](https://github.com/anthropics/skills) 构建，**仅依赖 `curl`**，无需安装 Python、SDK 或任何第三方库。安装一行命令，Agent 即可理解\"什么时候该调钉钉 API、该调哪个、参数怎么填\"，并**自动管理配置**、错误处理。\n\n## 为什么用这个\n\n- **对话即操作**：\"帮我在任务表里加三条记录\" → Agent 自动完成，无需你知道任何 API\n- **零依赖**：仅使用 `curl` 发起 HTTP 请求，无需安装 Python、SDK 或任何第三方库\n- **一次配置，永久生效**：首次使用时 Agent 统一询问 appKey/appSecret/operatorId，写入 `~/.dingtalk-skills/config`，后续所有技能直接复用，不再重复问\n\n## 长期目标\n\n本项目有两条并行的长期主线：\n\n**1. 永远只依赖 `curl`**\n不引入任何 SDK、运行时或第三方库。只要系统有 `curl`，技能就能运行。这保证了最大的可移植性，也让技能在任何 Agent 环境中都能免安装直接使用。\n\n**2. 将每次调用消耗的 Token 压到极限**\nAgent 每次执行任务都需要将技能文件装入上下文，**skill 文件本身就是成本**。我们的目标不只是「能用」，而是在保证正确率的前提下，把 `SKILL.md` 和 `references/api.md` 写得尽可能精炼——删掉所有冗余解释，用最短的指令表达最完整的语义。每一个字都要赚回自己的位置。\n\n## 技能纵览\n\n| 技能 | 状态 | 说明 | 已上架平台 |\n|---|---|---|---|\n| [dingtalk-document](#dingtalk-document--钉钉知识库--文档) | ✅ 已上线 | 知识库与文档的创建、查询、目录浏览、内容读写、成员管理 | [🦞 ClawHub](https://clawhub.ai/breath57/dingtalk-document) · [<img src=\"https://avatars.githubusercontent.com/u/108547162?s=200&v=4\" height=\"16\"> Skills.sh](https://skills.sh/breath57/dingtalk-skills/dingtalk-document) |\n| [dingtalk-ai-table](#dingtalk-ai-table--钉钉-ai-表格) | ✅ 已上线 | AI 表格的工作表管理、字段管理、记录增删改查 | [🦞 ClawHub](https://clawhub.ai/breath57/dingtalk-ai-table) · [<img src=\"https://avatars.githubusercontent.com/u/108547162?s=200&v=4\" height=\"16\"> Skills.sh](https://skills.sh/breath57/dingtalk-skills/dingtalk-ai-table) |\n| [dingtalk-message](#dingtalk-message--钉钉消息发送) | ✅ 已上线 | 消息发送：Webhook 机器人、单聊/群聊、工作通知 | [🦞 ClawHub](https://clawhub.ai/breath57/dingtalk-message) · [<img src=\"https://avatars.githubusercontent.com/u/108547162?s=200&v=4\" height=\"16\"> Skills.sh](https://skills.sh/breath57/dingtalk-skills/dingtalk-message) |\n| [dingtalk-todo](#dingtalk-todo--钉钉待办) | ✅ 已上线 | 待办管理：创建、查询、更新、完成、删除 | [🦞 ClawHub](https://clawhub.ai/breath57/dingtalk-todo) · [<img src=\"https://avatars.githubusercontent.com/u/108547162?s=200&v=4\" height=\"16\"> Skills.sh](https://skills.sh/breath57/dingtalk-skills/dingtalk-todo) |\n| [dingtalk-contact](#dingtalk-contact--钉钉通讯录) | ✅ 已上线 | 通讯录：搜索用户/部门、用户详情、部门树、成员列表 | [🦞 ClawHub](https://clawhub.ai/breath57/dingtalk-contact) · [<img src=\"https://avatars.githubusercontent.com/u/108547162?s=200&v=4\" height=\"16\"> Skills.sh](https://skills.sh/breath57/dingtalk-skills/dingtalk-contact) |\n| [dingtalk-ai-web-search](#dingtalk-ai-web-search--网页搜索) | ✅ 已上线 | 网页搜索：关键词搜索、时间过滤、JSON 输出 | [🦞 ClawHub](https://clawhub.ai/breath57/dingtalk-ai-web-search) · [<img src=\"https://avatars.githubusercontent.com/u/108547162?s=200&v=4\" height=\"16\"> Skills.sh](https://skills.sh/breath57/dingtalk-skills/dingtalk-ai-web-search) |\n| [dingtalk-calendar](#dingtalk-calendar--钉钉日程) | ✅ 已上线 | 日程：CRUD、闲忙、视频会议、会议室、签到签退 | [🦞 ClawHub](https://clawhub.ai/breath57/dingtalk-calendar) · [<img src=\"https://avatars.githubusercontent.com/u/108547162?s=200&v=4\" height=\"16\"> Skills.sh](https://skills.sh/breath57/dingtalk-skills/dingtalk-calendar) |\n| [dingtalk-knowledge-search](#dingtalk-knowledge-search--钉钉知识库搜索与读取) | ✅ 已上线 | 知识库搜索、文档读取导出 Markdown、图片/diagram、表格 CSV、文件下载、PDF 转文本 | [🦞 ClawHub](https://clawhub.ai/breath57/dingtalk-knowledge-search) · [<img src=\"https://avatars.githubusercontent.com/u/108547162?s=200&v=4\" height=\"16\"> Skills.sh](https://skills.sh/breath57/dingtalk-skills/dingtalk-knowledge-search) |\n| dingtalk-approval | 🗓️ 计划中 | 审批流程管理 | — |\n| dingtalk-attendance | 🗓️ 计划中 | 考勤打卡管理 | — |\n| dingtalk-meeting | 🗓️ 计划中 | 视频会议管理 | — |\n\n## 快速开始\n\n### 前置条件\n\n1. 在[钉钉开放平台](https://open.dingtalk.com/)创建企业内部应用\n2. 开通对应 API 权限（知识库 / AI 表格 / 机器人消息 / 待办 等）\n3. 准备好 `appKey`、`appSecret`，以及操作人的钉钉 `userId`（Agent 会引导你完成配置）\n\n### 安装技能\n\n每个技能支持三种安装方式（ClawHub / skills.sh / Hermes）：\n\n**1. ClawHub**\n```bash\nclawhub install breath57/dingtalk-document\n```\n\n**2. skills.sh**（全通用方式，支持 Cursor、Claude、Copilot、🦞 OpenClaw 等几乎所有 Agent）\n```bash\nnpx skills add breath57/dingtalk-skills@dingtalk-document\n```\n\n**3. Hermes**\n```bash\nnpx skills add breath57/dingtalk-skills@dingtalk-document --agent hermes-agent -y\n```\n\n**一键安装全部**：\n```bash\nnpx skills add breath57/dingtalk-skills \\\n  --skill dingtalk-document dingtalk-ai-table dingtalk-message dingtalk-todo dingtalk-contact dingtalk-ai-web-search dingtalk-calendar dingtalk-knowledge-search\n```\n\n**一键安装全部（Hermes）**：\n```bash\nnpx skills add breath57/dingtalk-skills \\\n  --skill dingtalk-document dingtalk-ai-table dingtalk-message dingtalk-todo dingtalk-contact dingtalk-ai-web-search dingtalk-calendar dingtalk-knowledge-search \\\n  --agent hermes-agent -y\n```\n\n### 开口说话\n\n安装后，Agent 会在首次运行时检查 `~/.dingtalk-skills/config`，缺什么一次性问清楚，自动写入。之后直接对话：\n\n```\n\"查看我的钉钉知识库列表\"\n\"往 AI 表格的'需求池'工作表添加一条记录：标题=登录优化，优先级=高\"\n\"发群消息说明天上午十点开周会，Markdown 格式\"\n\"帮我建一个待办：下周五前完成竞品分析报告\"\n```\n\n---\n\n## 技能详情\n\n### dingtalk-document — 钉钉知识库 & 文档\n\n🦞 [ClawHub · dingtalk-document](https://clawhub.ai/breath57/dingtalk-document)\n\n**安装**\n```bash\n# 1. ClawHub\nclawhub install breath57/dingtalk-document\n\n# 2. skills.sh（全通用方式，支持 Cursor / Claude / Copilot / 🦞 OpenClaw 等几乎所有 Agent）\nnpx skills add breath57/dingtalk-skills@dingtalk-document\n\n# 3. Hermes\nnpx skills add breath57/dingtalk-skills@dingtalk-document --agent hermes-agent -y\n```\n\n| 能力 | 说明 |\n|---|---|\n| 查询知识库列表 | 获取当前用户有权访问的全部知识库 |\n| 查询知识库信息 | 按 workspaceId 获取知识库详情 |\n| 浏览目录结构 | 列出知识库下的文档/文件夹节点树 |\n| 查询节点信息 | 按 nodeId 或文档链接获取节点详情 |\n| 创建文档/文件夹 | 在指定知识库/目录下新建文档或文件夹 |\n| 读取文档内容 | 获取文档正文的 Block 结构（含标题、段落、列表、表格等） |\n| 写入/覆盖文档内容 | 用 Block 结构替换文档正文 |\n| 删除文档 | 从知识库中删除指定文档 |\n| 成员权限管理 | 添加/移除文档协作成员及权限级别 |\n\n> 示例：\"把这份会议纪要写入知识库'项目文档'下的'2026-03'文件夹\" → Agent 自动查目录、建文档、写内容。\n\n---\n\n### dingtalk-ai-table — 钉钉 AI 表格\n\n🦞 [ClawHub · dingtalk-ai-table](https://clawhub.ai/breath57/dingtalk-ai-table)\n\n**安装**\n```bash\n# 1. ClawHub\nclawhub install breath57/dingtalk-ai-table\n\n# 2. skills.sh（全通用方式，支持 Cursor / Claude / Copilot / 🦞 OpenClaw 等几乎所有 Agent）\nnpx skills add breath57/dingtalk-skills@dingtalk-ai-table\n\n# 3. Hermes\nnpx skills add breath57/dingtalk-skills@dingtalk-ai-table --agent hermes-agent -y\n```\n\n| 能力 | 说明 |\n|---|---|\n| 列出工作表 | 获取 AI 表格内所有工作表及 ID |\n| 查询/新建/删除工作表 | 管理 AI 表格内的工作表 |\n| 列出字段 | 获取工作表全部字段名称与类型（text / number / date 等） |\n| 新建/更新/删除字段 | 管理列定义 |\n| 新增记录 | 批量向工作表插入数据行 |\n| 查询记录列表 | 分页读取所有记录，支持翻页 |\n| 更新记录 | 按 recordId 修改指定字段值 |\n| 删除记录 | 按 recordId 批量删除数据行 |\n\n> 示例：\"查一下任务表里状态是'进行中'的所有记录\" → Agent 自动拉取字段定义、翻页读取、过滤返回。\n\n---\n\n### dingtalk-message — 钉钉消息发送\n\n🦞 [ClawHub · dingtalk-message](https://clawhub.ai/breath57/dingtalk-message)\n\n**安装**\n```bash\n# 1. ClawHub\nclawhub install breath57/dingtalk-message\n\n# 2. skills.sh（全通用方式，支持 Cursor / Claude / Copilot / 🦞 OpenClaw 等几乎所有 Agent）\nnpx skills add breath57/dingtalk-skills@dingtalk-message\n\n# 3. Hermes\nnpx skills add breath57/dingtalk-skills@dingtalk-message --agent hermes-agent -y\n```\n\n| 能力 | 说明 |\n|---|---|\n| Webhook 机器人 - 文本 | 发送纯文本消息到群 |\n| Webhook 机器人 - Markdown | 发送富格式 Markdown 通知到群 |\n| Webhook 机器人 - ActionCard | 发送带按钮的交互卡片（单按钮/多按钮）|\n| Webhook 机器人 - Link/FeedCard | 发送链接消息和多条聚合卡片 |\n| Webhook 加签 | 支持加签安全模式（HMAC-SHA256）|\n| 机器人单聊 | 通过企业内部应用机器人向指定用户发送消息 |\n| 机器人群聊 | 通过机器人向指定群发送消息 |\n| 消息撤回 | 撤回单聊/群聊机器人消息 |\n| 消息已读查询 | 查询单聊消息的已读/未读状态 |\n| 工作通知 | 通过应用向指定用户发送工作通知消息 |\n| 工作通知查询/撤回 | 查询发送结果、撤回已发工作通知 |\n\n> 示例：\"发群消息说今天 v2.1 上线了，Markdown 格式\" → Agent 自动构造消息体并发送。\n\n---\n\n### dingtalk-todo — 钉钉待办\n\n🦞 [ClawHub · dingtalk-todo](https://clawhub.ai/breath57/dingtalk-todo)\n\n**安装**\n```bash\n# 1. ClawHub\nclawhub install breath57/dingtalk-todo\n\n# 2. skills.sh（全通用方式，支持 Cursor / Claude / Copilot / 🦞 OpenClaw 等几乎所有 Agent）\nnpx skills add breath57/dingtalk-skills@dingtalk-todo\n\n# 3. Hermes\nnpx skills add breath57/dingtalk-skills@dingtalk-todo --agent hermes-agent -y\n```\n\n| 能力 | 说明 |\n|---|---|\n| 创建待办 | 新建待办任务，支持标题、描述、截止时间、优先级 |\n| 查询待办详情 | 按 taskId 获取任务详情 |\n| 列出待办/已完成 | 分页获取用户的未完成或已完成任务列表 |\n| 更新待办 | 修改标题、描述、截止时间、优先级等 |\n| 标记完成/撤销 | 将任务标记为已完成或重新打开 |\n| 删除待办 | 删除指定待办任务 |\n\n> 示例：\"帮我新建一个待办：下周五前完成竞品分析\" → Agent 自动设置截止时间并创建任务。\n\n---\n\n### dingtalk-contact — 钉钉通讯录\n\n🦞 [ClawHub · dingtalk-contact](https://clawhub.ai/breath57/dingtalk-contact)\n\n**安装**\n```bash\n# 1. ClawHub\nclawhub install breath57/dingtalk-contact\n\n# 2. skills.sh（全通用方式，支持 Cursor / Claude / Copilot / 🦞 OpenClaw 等几乎所有 Agent）\nnpx skills add breath57/dingtalk-skills@dingtalk-contact\n\n# 3. Hermes\nnpx skills add breath57/dingtalk-skills@dingtalk-contact --agent hermes-agent -y\n```\n\n| 能力 | 说明 |\n|---|---|\n| 按关键词搜索用户 | 按姓名/工号等关键词搜索，返回 userId 列表 |\n| 获取用户完整详情 | 姓名/手机/工号/职位/部门/unionId 等全字段 |\n| unionId → userId 转换 | 通过 unionId 查询对应的 userId |\n| 获取部门成员完整列表 | 按部门分页拉取全体成员详情 |\n| 获取部门成员 userId 列表 | 轻量版，仅返回 userId 列表 |\n| 按关键词搜索部门 | 按名称关键词搜索部门，返回 deptId 列表 |\n| 获取子部门列表 | 获取指定部门的直接子部门（含详情） |\n| 获取部门详情 | 名称/父部门/成员数/排序等完整信息 |\n| 获取用户部门路径 | 从叶部门到根的完整 deptId 路径 |\n| 企业员工总人数 | 统计全部/激活员工总数 |\n\n> 示例：\"查一下张三的手机号和所在部门\" → Agent 搜索用户、获取详情并返回。\n\n---\n\n### dingtalk-ai-web-search — 网页搜索\n\n🦞 [ClawHub · dingtalk-ai-web-search](https://clawhub.ai/breath57/dingtalk-ai-web-search)\n\n**安装**\n```bash\n# 1. ClawHub\nclawhub install breath57/dingtalk-ai-web-search\n\n# 2. skills.sh（全通用方式，支持 Cursor / Claude / Copilot / 🦞 OpenClaw 等几乎所有 Agent）\nnpx skills add breath57/dingtalk-skills@dingtalk-ai-web-search\n\n# 3. Hermes\nnpx skills add breath57/dingtalk-skills@dingtalk-ai-web-search --agent hermes-agent -y\n```\n\n| 能力 | 说明 |\n|---|---|\n| 关键词搜索 | 搜索互联网公开信息，返回标题、链接、摘要 |\n| 时间范围过滤 | 限定搜索时间：一天/一周/一月/一年 |\n| 自定义结果数量 | 指定返回条数（默认 5 条） |\n| JSON 输出 | 结构化输出，便于程序后续处理 |\n\n> 示例：\"帮我搜一下 Python asyncio 最佳实践\" → Agent 自动搜索并返回最新结果摘要。\n\n---\n\n### dingtalk-calendar — 钉钉日程\n\n🦞 [ClawHub · dingtalk-calendar](https://clawhub.ai/breath57/dingtalk-calendar)\n\n**安装**\n```bash\n# 1. ClawHub\nclawhub install breath57/dingtalk-calendar\n\n# 2. skills.sh（全通用方式，支持 Cursor / Claude / Copilot / 🦞 OpenClaw 等几乎所有 Agent）\nnpx skills add breath57/dingtalk-skills@dingtalk-calendar\n\n# 3. Hermes\nnpx skills add breath57/dingtalk-skills@dingtalk-calendar --agent hermes-agent -y\n```\n\n| 能力 | 说明 |\n|---|---|\n| 创建/更新/删除日程 | 主日历 `primary` 下创建会议、修改标题与时间、删除事件 |\n| 查询日程详情与列表 | 按事件 ID 查询；按时间窗分页列出日程 |\n| 查询闲忙 | 对指定 unionId 列表查询忙闲（querySchedule） |\n| 视频会议 / 会议室 | 钉钉视频会议；会议室忙闲查询；日程上添加会议室（需 roomId） |\n| 签到 / 签退 | 获取签到与签退链接；API 签到、签退（见 api.md） |\n| 循环日程 | 创建时带 `recurrence`；订阅日历需额外权限 |\n\n> 示例：\"明天下午三点加一小时日程，标题写评审\" → Agent 按 UTC ISO8601 构造并创建。\n\n---\n\n### dingtalk-knowledge-search — 钉钉知识库搜索与读取\n\n🦞 [ClawHub · dingtalk-knowledge-search](https://clawhub.ai/breath57/dingtalk-knowledge-search)\n\n**安装**\n```bash\n# 1. ClawHub\nclawhub install breath57/dingtalk-knowledge-search\n\n# 2. skills.sh（全通用方式，支持 Cursor / Claude / Copilot / 🦞 OpenClaw 等几乎所有 Agent）\nnpx skills add breath57/dingtalk-skills@dingtalk-knowledge-search\n\n# 3. Hermes\nnpx skills add breath57/dingtalk-skills@dingtalk-knowledge-search --agent hermes-agent -y\n```\n\n| 能力 | 说明 |\n|---|---|\n| 知识库搜索 | 按关键词搜索知识库，返回匹配文档列表 |\n| 读取文档正文 | 导出 Markdown；长内容写入文件并返回路径 |\n| 文件下载 | PDF / Word / PPT / Excel / CSV / 图片 / ZIP 等原文件下载 |\n| PDF 转文本 | `--mode pdf2text`，需系统 `pdftotext`（poppler-utils） |\n| 表格导出 CSV | 钉钉表格 / AI 表格 / 多维表按 sheet 导出 |\n| 图片本地化 | `--with img-local`，图片下载到 `.assets/` |\n| 图片代理 | `--with img`，Markdown 使用代理链接，节省本地空间 |\n| diagram 导出 | `--with diagram`，保留流程图 / 结构图源码 |\n| 输出缓存 | 跨项目复用，按远端 modifiedTime 判断是否复用 |\n| 扫码登录 | 需要确认身份时返回二维码截图路径，扫码后继续执行 |\n\n> 示例：\"帮我了解一下 A 项目的背景，相关文档导出 Markdown 到当前项目\" → Agent 搜索知识库、读取正文、本地化图片并写入目录。\n\n---\n\n## 项目结构\n\n```\n.agents/skills/\n├── dingtalk-document/\n│   ├── SKILL.md          # 技能主文件（触发条件 + 操作指令）\n│   └── references/\n│       └── api.md        # 钉钉 API 参考\n├── dingtalk-ai-table/\n│   ├── SKILL.md\n│   └── references/\n│       └── api.md\n├── dingtalk-message/\n│   ├── SKILL.md\n│   └── references/\n│       └── api.md\n├── dingtalk-todo/\n│   ├── SKILL.md\n│   └── references/\n│       └── api.md\n├── dingtalk-contact/\n│   ├── SKILL.md\n│   └── references/\n│       └── api.md\n├── dingtalk-ai-web-search/\n│   ├── SKILL.md\n│   └── scripts/\n│       └── search.sh\n├── dingtalk-calendar/\n│   ├── SKILL.md\n│   ├── scripts/\n│   │   └── dt_helper.sh\n│   └── references/\n│       └── api.md\n├── dingtalk-knowledge-search/\n│   ├── SKILL.md\n│   ├── scripts/\n│   │   └── cli.py\n│   └── references/\n│       └── browser-login-state.md\n└── dingtalk-skill-creator/\n    └── SKILL.md\n```\n\n## 贡献\n\n欢迎 PR。每个技能存放在 `.agents/skills/<技能名>/` 目录下，遵循标准技能结构，参考 `AGENTS.md`。\n\n## 许可证\n\nMIT\n",
  "bytes": 12358,
  "sha": "e517696f9ca1bea49736bb391f6bcfc8fafe4505b3d7a5c6a1c5afdf7e22ad20",
  "repo_slug": "breath57/dingtalk-skills",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/skl_breath57_dingtalk_skills_dingtalk_messag_612d8687/readme"
}