dws
管理钉钉产品能力(AI表格/AI搜问/日历/通讯录/群聊与机器人/待办/审批/考勤/日志/DING消息/开放平台文档/钉钉文档/钉钉云盘/AI听记/邮箱/在线电子表格/知识库等)。当用户需要操作表格数据、管理日程会议、模糊找人/查谁负责某事项、查询通讯录、管理群聊、机器人发消息、创建待办、提交审批、查看考勤、提交日报周报(钉钉日志模版)、读写钉钉文档、上传下载云盘文件、查询听记纪要、收发邮件、读写在线电子表格(axls)、管理钉钉知识库时使用。
pinned to #fc9acb9updated 2 weeks ago
Ask your AI client: “install skills/dws”.
Requires the metahub MCP server installed in your client. Set up MCP.
mh install skills/dwsmetahub onboarded this repo on the author's behalf.
If you own github.com/DingTalk-Real-AI/dingtalk-workspace-cli on GitHub, claim the listing to take over publishing. Your claim preserves the existing eval history and badges; only the curator label is replaced with verified-publisher on your next publish.
Stars
2,377
Last commit
2 weeks ago
Latest release
published
About this skill
Pulled from SKILL.md at publish time.
通过 `dws` 命令管理钉钉产品能力。
Evaluation report
WarningsAutomated checks the publisher passed at publish time — structure, docs, safety, and whether the artifact behaves as claimed.fc9acb9· 2 weeks ago
Documentation
41Description quality
171 words · 224 chars — "管理钉钉产品能力(AI表格/AI搜问/日历/通讯录/群聊与机器人/待办/审批/考勤/日志/DING消息/开放平台文档/钉钉文档/钉钉云盘/AI听记/邮箱/在线电…"
README is present and substantial
32,991 chars · 12 sections · 25 code blocks
Tags / topics declaredwarn
No manifest tags and no GitHub repo topics
Add tags to the manifest (or GitHub topics on the repo) so the registry's search and category filters surface this artifact.
README has usage / example sections
found: Installation · Getting Started · Quick Start
Homepage / docs URL declared
no homepage declared (registry will use the repo URL) — info-only, not blocking
Release history
1- releasecurrentfc9acb9warn2 weeks ago
Contents
钉钉全产品 Skill
通过 dws 命令管理钉钉产品能力。
⚠️ 命令可用性以当前 dws 二进制为准。服务发现已下线,本文档随内置 skill 发布;如果
dws <cmd> --help不存在,说明当前版本未暴露该命令。若命令存在但调用失败,请按错误中的 endpoint 或 tool 提示确认静态端点目录和后端工具注册。实际调用前可用dws <cmd> --help或--dry-run验证。
严格禁止 (NEVER DO)
- 不要使用 dws 命令以外的方式操作(禁止 curl、HTTP API、浏览器)
- 不要编造 UUID、ID 等标识符,必须从命令返回中提取
- 不要猜测字段名/参数值,操作前必须先查询确认
严格要求 (MUST DO)
- 所有命令必须加
--format json以获取可解析输出 - 危险操作必须先向用户确认,用户同意后才加
--yes执行 - 单次批量操作不超过 30 条记录
- 所有命令必须严格遵循对应产品参考文档里面规定的参数格式(如:如果有参数值,则参数和参数值之间至少用一个空格隔开)
- 脚本优先:scripts/ 下的
python scripts/<name>.py已封装翻页/轮询/批量逻辑,遇到对应场景(如 AI 表格批量导入导出、AI 应用创建轮询、文档创建后写内容、钉盘目录树等)优先调用脚本而非手写多步命令。脚本均支持--dry-run预览、--format json输出,失败时回退到手动步骤 - 实时个人消息事件例外:用户要监听消息、订阅事件、自动回复消息或事件驱动 Agent 时,必须走
dws event consume长连接,不要写脚本轮询消息历史
产品总览
| 产品 | 用途 | 参考文件 |
|---|---|---|
aiapp | AI应用:创建/查询/修改AI应用 | aiapp.md |
aisearch | AI搜问(搜人首选):按姓名/部门/职位/职责/上级/下级/手机号/工号维度找人,"谁负责 XX/XX 的负责人/某事项/某项目的人"统一走本产品 | aisearch.md |
aitable | AI表格:Base/数据表/字段/记录/视图/附件/图表/仪表盘/导入导出/模板搜索 | aitable.md |
attendance | 考勤:打卡结果/打卡流水/考勤组查询/考勤规则/汇总统计/假期类型/假期余额(P0 已落地,部分管理类命令仍属 P1) | attendance.md |
calendar | 日历:日历列表/日程/参与者/附件/响应/会议室/闲忙查询/时间建议 | calendar.md |
chat | 群聊与机器人:搜索群/建群/群成员管理/改群名/消息发送(文本/Markdown/图片/文件)/拉取消息/@我/特别关注/机器人群发/单聊/撤回/转发/引用回复/Webhook/机器人搜索 | chat.md |
contact | 通讯录:用户查询(当前用户/搜索/详情/手机号)/花名册档案(学历/家庭/银行卡/合同)/离职员工查询(姓名/时间范围/部门)/部门查询(搜索/详情/子部门/成员)/角色查询(主管/管理员/财务/HR 等 label)/特别关注列表 | contact.md |
devdoc | 开放平台文档:搜索开发文档 | devdoc.md |
ding | DING消息:发送/撤回(应用内/短信/电话) | ding.md |
doc | 钉钉文档:搜索/浏览/读写/块级编辑/评论/文件创建/复制/移动/重命名/删除/导出 docx/权限管理/媒体上传下载 | doc.md |
drive | 钉钉云盘:文件列表/元数据/文件夹/上传(两步)/下载 | drive.md |
minutes | AI听记:听记列表/摘要/关键词/转写/待办/思维导图/发言人/发言人段落总结/热词/录音控制/成员权限/上传 | minutes.md |
oa | OA审批:待处理/详情/同意/拒绝/撤销/记录/已发起/任务/转交/评论/抄送 | oa.md |
report | 日志:按模版创建/收件箱/已发送/模版查看/详情/已读统计 | report.md |
mail | 邮箱:邮箱地址查询/邮件搜索(KQL)/邮件详情/发送邮件 | mail.md |
sheet | 在线电子表格(axls):工作表 CRUD/区域读写/CSV 批量写入/行列增删/合并/查找替换/筛选视图/全局筛选/排序/下拉列表/条件格式/浮动图片/浮动图表/模板/导出 xlsx(单命令一站式) | sheet.md |
todo | 待办:创建(含优先级/截止时间/循环)/查询/修改/标记完成/删除 | todo.md |
wiki | 知识库:空间创建/详情/列表/搜索 + 成员管理 | wiki.md |
event | 个人消息事件:监听当前用户被 @、指定单聊、指定群聊,NDJSON 输出(实时驱动 Agent) | event.md |
意图判断决策树
用户提到"AI应用/创建应用/生成系统/做工具/管理后台/低代码" → aiapp
用户提到"目标管理/Agoal/战略解码/经营合约/计分卡/目标模板/周月报提交统计" → agoal
用户提到"找人/搜人/谁负责 XX/某事项的负责人/某项目的人/团队成员/上级/下级/按工号找人/按手机号找人" → aisearch
用户提到"表格/多维表/AI表格/记录/数据/视图/图表/仪表盘" → aitable
用户提到"考勤/打卡/排班" → attendance
用户提到"日程/日历/会议室/约会/时间建议" → calendar
用户提到"群聊/建群/群成员/群管理/发消息/发图片消息/发文件消息/发 Markdown 消息/截图发钉钉/转发消息/引用回复/@我/特别关注消息/机器人发消息/Webhook/机器人群发/机器人单聊/通知" → chat
用户提到"通讯录/同事/部门/组织架构/子部门/部门多少人/离职员工/离职名单/离职花名册/花名册/员工档案/学历/家庭/银行卡/紧急联系人/合同/角色/主管角色/管理员角色/财务/HR/特别关注/星标联系人" → contact
用户提到"开发/API/调用错误 文档" → devdoc
用户提到"DING/紧急消息/电话提醒" → ding
用户提到"钉钉文档/云文档/知识库/读写文档/块级编辑/文档评论/文档复制移动" → doc
用户提到"云盘/文件存储/文件上传下载/文件夹" → drive
用户提到"听记/AI听记/会议纪要/转写/摘要/思维导图/发言人/热词" → minutes
用户提到"邮箱/邮件/发邮件/收邮件/搜邮件/查邮件/邮件草稿/转发邮件/回复邮件/邮件附件/抄送" → mail
用户提到"审批/请假/报销/出差/加班/同意/拒绝/撤销审批" → oa
用户提到"日志/日报/周报/日志统计/写日报/提交周报/发日志/填日志" → report
用户提到"在线电子表格/钉钉表格/axls/工作表/单元格读写/合并单元格/筛选视图/导出 xlsx" → sheet
用户提到"待办/TODO/任务提醒/循环待办" → todo
用户提到"创建知识库/知识库列表/搜索知识库空间/wiki/团队空间/知识库成员管理/我的文档个人空间" → wiki
用户提到"监听有人@我/监听我和某人的单聊消息/监听某个群消息/订阅个人消息事件/实时接收钉钉消息事件/个人消息事件流/event consume user_im_message_receive_at/user_im_message_receive_o2o/user_im_message_receive_group/监听并自动回复消息/驱动 Agent 处理消息" → event
关键区分: aitable(数据表格) vs todo(待办任务) 关键区分: report(钉钉日志/日报周报) vs todo(待办任务) 关键区分: chat send-by-bot(机器人身份发消息) vs send-by-webhook(自定义机器人Webhook告警) 关键区分: doc(钉钉文档/富文本协同) vs drive(钉钉云盘/二进制文件) 关键区分: oa tasks(审批 taskId,审批/拒绝用) vs oa list-pending(收件箱 processInstanceId,查看用)
更多易混淆场景见 intent-guide.md
危险操作确认
以下操作为不可逆或高影响操作,执行前必须先向用户展示操作摘要并获得明确同意,同意后才加 --yes 执行。
| 产品 | 命令 | 说明 |
|---|---|---|
aitable | base delete | 删除整个 AI 表格,含全部数据表和记录 |
aitable | table delete | 删除数据表(含全部字段/视图/记录) |
aitable | field delete | 删除字段(该列所有值同步清空) |
aitable | view delete | 删除视图 |
aitable | record delete | 删除记录(支持批量) |
aitable | chart delete / dashboard delete | 删除图表/仪表盘 |
calendar | event delete | 删除日程,所有参与者同步取消 |
calendar | participant delete | 移除日程参与者 |
calendar | room delete | 取消会议室预定 |
chat | group members remove | 移除群成员 |
chat | message recall-by-bot | 撤回机器人已发消息 |
doc | delete | 删除整篇文档/文件到回收站(与 block delete 不同,本命令删除整个 node) |
doc | block delete | 删除文档单个块(不可恢复) |
doc | permission update | 修改协作者权限(降权可能影响他人访问) |
ding | message recall | 撤回已发 DING 消息 |
oa | approval revoke | 撤销自己发起的审批实例 |
oa | approval reject | 拒绝待审批(需加明确理由) |
todo | task delete | 删除待办 |
minutes | replace-text | 全文批量替换转写与摘要 |
确认流程
Step 1 → 展示操作摘要(操作类型 + 目标对象 + 影响范围)
Step 2 → 用户明确回复确认(如 "确认" / "好的")
Step 3 → 加 --yes 执行命令
核心流程
作为一个智能助手,你的首要任务是理解用户的真实、完整的意图,而不是简单地执行命令。在选择 dws 的产品命令前,必须严格遵循以下四步流程:
- URL 预检:输入含
alidocs.dingtalk.comURL 时,该域名下存在多种路径格式(/i/nodes/...、/i/p/...、/spreadsheetv2/...、/document/edit|preview?dentryKey=...等),每种的处理流程不同。必须先读取 url-patterns.md 中的「alidocs URL 分流决策」,按其中规则识别 URL 类型后再选择对应产品。含shanji.dingtalk.comURL 时直接路由到minutes。URL 已识别后直接进入对应产品流程,无需后续步骤。 - 意图分类:首先,判断用户指令的核心 动词/动作 属于哪一类。这比关注名词更重要。
- 歧义处理与信息追问:如果用户指令模糊或包含多个产品的关键字,严禁猜测。必须主动向用户追问以澄清意图。这是你作为智能助手而非命令执行器的核心价值。
- 精准产品映射:在完成前两步,意图已经清晰后,参考产品总览和意图判断决策树 来选择产品。
- 充分阅读产品参考文件,通过编写代码或直接调用指令实现用户意图。
命令发现(flag / 参数以 binary 为准)
产品参考文档(references/products/*.md)里的 flag 列表是便于理解用途的参考,不是权威契约。参数名称、默认值、必填约束以当前二进制编译出的 Cobra 命令为准,--help 是产品命令调用的事实源:
# 人读视图:看 Usage / Example / Flags
dws <command-path> --help
# 例:dws calendar event list --help
# helper-only schema 查询(如 dev.*),普通产品命令不要依赖 schema 推断参数
dws schema "dev app create"
# 注:--jq 对 schema 输出无效(不过滤,仍返回完整对象);schema 结构里必填标在
# .parameters.<字段>.required,没有 .tool 键。要看必填字段自行读 .parameters 即可。
何时用哪条路径:
- 只需看某个命令怎么调用 →
dws <cmd> --help - 构造
--params/--json时不确定字段类型、必填、别名 → 先看dws <cmd> --help,helper-only 命令再看dws schema - 参考文档和
--help冲突时 → 以--help为准,文档视为过期
dws schema 在静态端点模式下只保留 helper-only 子树;普通产品命令和 flag 不再通过远程 schema 动态发现。写/删操作须先向用户确认再加 --yes。
错误处理
- 遇到错误,加
--verbose重试一次 - 若 stderr 出现
RECOVERY_EVENT_ID=<event_id>,优先按 recovery-guide.md 执行 recovery 闭环 - 仍然失败,报告完整错误信息给用户,禁止自行尝试替代方案
- 认证失败时,参考 global-reference.md 中的认证章节处理
- 各产品高频错误及排查流程见 error-codes.md
- 遇到 capability-limits.md 中列出的「已知不支持操作」时,直接告知用户不支持并建议在钉钉客户端操作,不要重试或变通
详细参考 (按需读取)
- references/products/ — 各产品命令详细参考(flag 细节以
--help/dws schema为准) - references/intent-guide.md — 意图路由指南(易混淆场景对照)
- references/url-patterns.md — URL 格式规范 + alidocs URL 分流决策与类型探测流程(含钉盘
document/edit|preview?dentryKey=链接) - references/global-reference.md — 全局标志、认证、输出格式
- references/field-rules.md — AI表格字段类型规则
- references/error-codes.md — 错误码 + 调试流程
- references/recovery-guide.md — recovery 闭环、
RECOVERY_EVENT_ID、execute/finalize规范 - scripts/ — 各产品批量/复合操作脚本(AI表格批量导入导出、AI应用创建轮询、日历、机器人消息、通讯录、考勤、日志、待办、文档创建并写入、钉盘目录树等)
- references/products/aitable/ — AI表格细分章节(单元格值/字段属性/公式/筛选排序/导入导出/仪表盘/记录增删改查/错误恢复/最佳实践)
- references/products/aitable-record-ops.md — AI表格记录操作专项说明
- references/capability-limits.md — 已知能力限制(doc/aitable/chat/minutes,遇到时直接告知用户不支持)
- references/best_practices/ — 全场景 recipe 行动指南(11 个编号场景 + lite 速查)
- 01-messaging.md — 消息沟通
- 02-task.md — 任务管理(todo)
- 03-meeting.md — 会议日程(日历 + 会议室)
- 04-document.md — 文档场景(write-doc / search-docs / migrate-doc / update-doc-section / doc-to-message / delete-old-doc / export-doc-as-docx / grant-doc-access / insert-image-to-doc / template-based-generation 等)
- 05-reporting.md — 工作汇报(钉钉日志 / 文档周报选路)
- 06-data-analytics.md — AI表格数据分析(read-aitable / generate-data-report / create-aitable-record / update-aitable-record / export-aitable-to-xlsx / primary-doc-from-record 等)
- 07-minutes.md — 听记与会后
- 08-directory.md — 通讯录(组织架构)
- 09-mail.md — 邮件
- 10-minutes-speaker-match.md — 听记发言人智能匹配
- 11-minutes-speaker-correct.md — 听记发言人识别与标注
- lite-recipes.md — Lite Recipe 速查(核心流程判定为 lite 后直接执行)
- _common/conventions.md — 批量查询、多源并行采集、字段术语等通用规范
- _common/recipe-conventions.md — recipe 元规范
Reviews
No reviews yet. Be the first.
Related
Verification Before Completion
Evidence before assertions, always
Writing Plans
Turn specs into phased implementation plans
Test-Driven Development
Red → green → refactor discipline for any feature or bugfix
mh install skills/dws