breath57 729e4c4c42 fix(dt_helper): replace --clear-old-token with --force flag on --token/--old-token
- --token and --old-token now accept --force to skip cache and force refresh
- Removes --clear-old-token (use --old-token --force for 401 recovery instead)
- SKILL.md updated to document --force for token failure handling
2026-03-13 16:34:26 +08:00
2026-03-11 18:21:44 +08:00

dingtalk-skills

中文 | English


Adapted for OpenClaw 🦞 — install from ClawHub with one click.

Let your AI Agent operate DingTalk directly — no manual API calls, no token management, just conversation.

Built on the Anthropic skills spec, with zero dependencies — only curl for HTTP requests, no Python, no SDK, nothing extra to install. Install with one command and your agent automatically understands when to call DingTalk APIs, which endpoint to use, and how to fill in the parameters — including automatic config management, and error handling.

Why use this

  • Talk, don't code: "Add three records to the task table" → Agent handles it end-to-end, no API knowledge required
  • Zero dependencies: Only curl for HTTP requests — no Python, no SDK, no extra languages to install
  • Configure once, use everywhere: On first run, the agent collects appKey/appSecret/operatorId in a single prompt, saves to ~/.dingtalk-skills/config, and reuses across all skills automatically
  • Production-ready from day one: Full CRUD coverage for DingTalk's most-used document and table APIs, with live tests verifying every endpoint

Skills

Available

dingtalk-document — Knowledge Base & Documents

ClawHub

npx skills add breath57/dingtalk-skills@dingtalk-document
Capability Description
List workspaces Get all knowledge bases the user can access
Get workspace info Fetch workspace details by workspaceId
Browse directory List document/folder nodes under a workspace
Get node info Fetch node details by nodeId or document URL
Create document/folder Create a new document or folder in a workspace
Read document content Get document body as Block structure (headings, paragraphs, lists, tables, etc.)
Write document content Replace document body with Block structure
Delete document Remove a document from a workspace
Manage members Add/remove collaborators and set permission levels

Example: "Write this meeting summary into the '2026-03' folder under the 'Project Docs' workspace" → Agent finds the directory, creates the document, and writes the content.

dingtalk-ai-table — AI Table (Notable)

🦞 ClawHub · dingtalk-ai-table

npx skills add breath57/dingtalk-skills@dingtalk-ai-table
Capability Description
List sheets Get all sheets and IDs in an AI table
Get / create / delete sheet Manage sheets within an AI table
List fields Get all field names and types (text / number / date, etc.)
Create / update / delete field Manage column definitions
Insert records Batch-insert data rows into a sheet
List records Paginated read of all records
Update record Modify specific field values by recordId
Delete records Batch-delete rows by recordId

Example: "Show me all records in the task sheet where status is 'In Progress'" → Agent fetches field definitions, paginates through all records, and filters the results.

dingtalk-message — Message Sending

🦞 ClawHub · dingtalk-message

npx skills add breath57/dingtalk-skills@dingtalk-message
Capability Description
Webhook robot - text Send plain text messages to a group
Webhook robot - Markdown Send rich Markdown notifications to a group
Webhook robot - ActionCard Send interactive cards with buttons (single/multi)
Webhook robot - Link/FeedCard Send link messages and aggregated feed cards
Webhook signing Support HMAC-SHA256 signature security mode
Robot single chat Send messages to specific users via internal app robot
Robot group chat Send messages to groups via robot
Message recall Recall single-chat / group-chat robot messages
Read status query Query read/unread status of single-chat messages
Work notification Send work notifications to specific users via app
Work notification query/recall Query send results and recall sent notifications

Example: "Send a group message saying v2.1 is live today, use Markdown" → Agent constructs the message body and sends it.

dingtalk-todo — DingTalk Todo

npx skills add breath57/dingtalk-skills@dingtalk-todo
Capability Description
Create todo Create a task with title, description, due date, and priority
Get todo detail Fetch task details by taskId
List todos / completed Paginated list of undone or completed tasks
Update todo Modify title, description, due date, priority, etc.
Mark done / reopen Mark a task as complete or reopen it
Delete todo Remove a specific todo task

Example: "Create a todo: finish competitive analysis by next Friday" → Agent auto-sets the due date and creates the task.

dingtalk-contact — DingTalk Directory

npx skills add breath57/dingtalk-skills@dingtalk-contact
Capability Description
Search users by keyword Search by name/job number, returns userId list
Get full user details Name, mobile, job number, title, department, unionId, etc.
unionId → userId lookup Resolve userId from a given unionId
List department members Paginated full member details for a department
List member userId list Lightweight version — userId list only
Search departments by keyword Search by name, returns deptId list
List sub-departments Direct child departments with details
Get department details Name, parent dept, member count, order, etc.
Get user's department path Full deptId chain from leaf to root
Total employee count Count all or active employees in the org

Example: "Find Zhang San's mobile number and department" → Agent searches the user, fetches details, and returns the info.

Capability Description
Create todo Create a task with title, description, due date, and priority
Get todo detail Fetch task details by taskId
List todos / completed Paginated list of undone or completed tasks
Update todo Modify title, description, due date, priority, etc.
Mark done / reopen Mark a task as complete or reopen it
Delete todo Remove a specific todo task

Example: "Create a todo: finish competitive analysis by next Friday" → Agent auto-sets the due date and creates the task.

🗓️ Planned

dingtalk-approval · dingtalk-calendar · dingtalk-attendance · dingtalk-meeting

Quick Start

Step 1: Install skills

npx skills add breath57/dingtalk-skills@dingtalk-document
npx skills add breath57/dingtalk-skills@dingtalk-ai-table
npx skills add breath57/dingtalk-skills@dingtalk-message
npx skills add breath57/dingtalk-skills@dingtalk-todo
npx skills add breath57/dingtalk-skills@dingtalk-contact

Step 2: Just talk

On first run, the agent checks ~/.dingtalk-skills/config, asks for anything missing in one go, and saves it. Then:

"List my DingTalk knowledge bases"
"Add a record to the 'Backlog' sheet: title=Login fix, priority=High"
"Send a group message saying v2.1 is live, use Markdown format"
"Create a todo: finish competitive analysis by next Friday"

Prerequisites

  1. A DingTalk enterprise internal app on DingTalk Open Platform
  2. Relevant API permissions enabled (Knowledge Base / AI Table / Robot Message / Todo, etc.)
  3. Your appKey, appSecret, and DingTalk userId — the agent will walk you through the setup

License

MIT

S
Description
dingtalk-document: 钉钉知识库和文档管理操作。当用户提到"钉钉文档"、"知识库"、"新建文档"、"查看文档目录"、"读取文档内容"、"写入文档"、"更新文档"、"文档成员"、"dingtalk doc"、"knowledge…; dingtalk-message: 钉钉消息发送。当用户提到"钉钉消息"、"发消息"、"发通知"、"群通知"、"群消息"、"Webhook"、"机器人消息"、"机器人发消息"、"工作通知"、"单聊消息"、"群聊消息"、"撤回消息"、"消息已读"、"发送Markdown"、"发卡片消息"、"ActionCard"、"@某人"、"@员工"、"at某人"、"提…
Readme 415 KiB
Languages
Python 69.4%
Shell 20.9%
HTML 9.7%