dingtalk-document

dingtalk-document is a skill for Claude Code, Codex from chuancyzhang/deepseek-cowork. It costs 127 tokens per session (1,702 once invoked), scanned A, original, Apache-2.0.

A tool for managing DingTalk documents and knowledge bases, including their folders, content, and members.

In plain words
What is it for?
It helps create knowledge bases, folders, and documents; read and update document text; and manage member permissions.
Why use it?
It removes the need to manage DingTalk document spaces manually when working with the coding agent.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one.

Good fit It helps create knowledge bases, folders, and documents; read and update document text; and manage member permissions.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/chuancyzhang/deepseek-cowork/dingtalk-docs
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add chuancyzhang/deepseek-cowork --skill dingtalk-docs
Clone the repo
git clone --depth 1 https://github.com/chuancyzhang/deepseek-cowork

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for dingtalk-document

README.md
[![agentmods](https://agentmods.dev/badge/skills/chuancyzhang/deepseek-cowork/dingtalk-docs/github.svg)](https://agentmods.dev/skills/chuancyzhang/deepseek-cowork/dingtalk-docs)
Your own site
<a href="https://agentmods.dev/skills/chuancyzhang/deepseek-cowork/dingtalk-docs"><img src="https://agentmods.dev/badge/skills/chuancyzhang/deepseek-cowork/dingtalk-docs/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for dingtalk-document

Your own site · 80×15
<a href="https://agentmods.dev/skills/chuancyzhang/deepseek-cowork/dingtalk-docs"><img src="https://agentmods.dev/badge/skills/chuancyzhang/deepseek-cowork/dingtalk-docs.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 127 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,702 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 1 finding. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00127 $0.01702
Opus 5.5 $0.00051 $0.00681
Sonnet 5.5 $0.00025 $0.00340
Haiku 4.5 $0.00013 $0.00170

Measured 1mo ago against content hash e3e25158f5ba, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

dingtalk-document scanned grade A with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.

The scan reads SKILL.md. This mod also ships 1 executable file (scripts/dt_helper.sh), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Makes network callslowCapability

Not a fault in itself. Listed so you know the mod talks to something, and to what.

WORKSPACES=$(curl -s -X GET "https://api.dingtalk.com/v2.0/wiki/workspaces?operatorId=${OPERATOR_ID}&maxResults=20" \
ai_skills/dingtalk-docs/SKILL.md · 89 lines

How it starts

The opening of the file, as written. The whole thing — 89 lines — stays where its author put it; the contents beside it link to each section on GitHub.

钉钉文档技能

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

dt_helper.sh 位于本 SKILL.md 同级目录的 scripts/dt_helper.sh。

核心概念

  • 知识库(Workspace):文档容器,有 workspaceId 和 rootNodeId
  • 节点(Node):文件或文件夹,type 为 FILE 或 FOLDER
  • 文档标识(用于 /v1.0/doc/suites/documents/{id}):可用 docKey 或 dentryUuid
    • 创建文档响应会返回:docKey、dentryUuid、nodeId
    • 其中 docKey / dentryUuid 可用于读写正文;nodeId 用于删除和文档管理类接口
    • wiki/nodes 返回的 nodeId 实际上是 dentryUuid,可直接用于正文读写
  • operatorId:所有接口必须的 unionId 参数,通过 bash scripts/dt_helper.sh --to-unionid 自动转换

工作流程(每次执行前)

  1. 先识别本次任务类型 → 例如:列知识库、读文档、写文档、创建文档、成员管理
  2. 按本次任务校验所需配置 → 通过 bash scripts/dt_helper.sh --get KEY 读取;仅校验本任务必须项
  3. 仅收集缺失配置 → 若缺少某项,一次性询问用户所有缺失值,用 bash scripts/dt_helper.sh --set KEY=VALUE 写入
  4. 获取 Token / operatorId → 直接调用 bash scripts/dt_helper.sh,token 获取与缓存细节无需关心
  5. 执行操作 → 凡是包含变量替换、管道或多行逻辑的命令,写入 /tmp/<task>.sh 再 bash /tmp/<task>.sh 执行。不要把多行命令直接粘到终端里(终端工具会截断),也不要用 <<'EOF' 语法(heredoc 在工具中同样会被截断导致变量丢失)

按任务校验配置(必须先做)

  • 所有任务通用必需:DINGTALK_APP_KEY、DINGTALK_APP_SECRET、DINGTALK_MY_USER_ID
  • 涉及任何文档/知识库 API 调用:必须有 DINGTALK_MY_OPERATOR_ID(若缺失,先用 bash scripts/dt_helper.sh --to-unionid 自动转换并写回)
  • 创建/读取/写入/删除/成员管理:除上述通用项外,无额外固定配置键;workspaceId/nodeId/docKey 属于任务参数,运行时从用户输入或 API 响应中获取

规则:未通过“本次任务配置校验”前,不得进入 API 调用步骤。

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

所需配置

配置键 必填 说明 如何获取
DINGTALK_APP_KEY ✅ 应用 AppKey 钉钉开放平台 → 应用管理 → 凭证信息
DINGTALK_APP_SECRET ✅ 应用 AppSecret 同上
DINGTALK_MY_USER_ID ✅ 当前用户的企业员工 ID(userId) 管理后台 → 通讯录 → 成员管理 → 点击姓名查看
DINGTALK_MY_OPERATOR_ID ✅ 当前用户的 unionId(operatorId) 首次由 bash scripts/dt_helper.sh --to-unionid 自动转换并写入

身份标识说明

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

执行脚本模板

#!/bin/bash
set -e
HELPER="./scripts/dt_helper.sh"
NEW_TOKEN=$(bash "$HELPER" --token)
OPERATOR_ID=$(bash "$HELPER" --get DINGTALK_MY_OPERATOR_ID)

# 在此追加具体 API 调用,例如查询知识库列表:
WORKSPACES=$(curl -s -X GET "https://api.dingtalk.com/v2.0/wiki/workspaces?operatorId=${OPERATOR_ID}&maxResults=20" \
  -H "x-acs-dingtalk-access-token: $NEW_TOKEN")
echo "知识库列表: $WORKSPACES"

Read the full file on GitHub · 89 lines

Files

What ships with it

4 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 1mo ago First seen · 89 lines · 127 tokens per session scan A e3e25158f5ba

Subscribe to this mod's changes

dingtalk-document is a skill published in the GitHub repository chuancyzhang/deepseek-cowork (18 stars, last pushed today), licensed Apache-2.0. It adds 127 tokens to every session and 1,702 once invoked, about $0.0005 per session on Opus 5.5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

orbit-notion

Open Orbit briefing skill — selected by the Orbit pipeline when Notion is the user's only connected connector, or when the user explicitly scopes their daily digest to Notion. Pulls the past 24 hours of document edits, comments, mentions, and database row changes from the user's authenticated Notion connection and…

nexu-io/open-design · 117 tokens

instrument-data-to-allotrope

Convert laboratory instrument output files (PDF, CSV, Excel, TXT) to Allotrope Simple Model (ASM) JSON format or flattened 2D CSV. Use this skill when scientists need to standardize instrument data for LIMS systems, data lakes, or downstream analysis. Supports auto-detection of instrument types. Outputs include full…

anthropics/knowledge-work-plugins · 123 tokens

apify-youtube-transcript-scraper

Get YouTube captions, timestamped quotations, SRT/VTT and translated transcripts for videos, channels and playlists through the harshmaur/youtube-transcript-scraper Apify Actor.

sickn33/agentic-awesome-skills · 48 tokens

legal-hold

Issue, refresh, release, or report on legal holds — drafts the hold notice as .docx, updates legalhold fields in log.yaml, and calendars the next refresh. Use when the user says "issue a hold", "refresh hold", "release hold", or asks for a portfolio-wide hold status report.

anthropics/claude-for-legal · 68 tokens

baoyu-youtube-transcript

A tool for downloading the written captions, subtitles, chapter information, speaker labels, and cover image from a YouTube video using its URL or ID.

JimLiu/baoyu-skills · 107 tokens

feishu

Work with Feishu or Lark bots, docs, sheets, bitables, approval flows, and OpenAPI/MCP setup without hardcoding credentials.

Hmbown/CodeWhale · 33 tokens