dws

Original🇨🇳 Chinese
Translated
13 scripts

Manage DingTalk product capabilities (AI Table/Calendar/Address Book/Group Chat & Bots/Todo/Approval/Attendance/Logs/DING Messages/Workbench/Open Platform Documents, etc.). Use this when users need to operate table data, manage schedules and meetings, query address books, manage group chats, send messages via bots, create todos, submit approvals, check attendance, and submit daily/weekly reports (DingTalk log templates).

5installs

NPX Install

npx skill4agent add dingtalk-real-ai/dingtalk-workspace-cli dws

SKILL.md Content (Chinese)

View Translation Comparison →

DingTalk Full Product Skill

Manage DingTalk product capabilities via the
dws
command.

STRICTLY PROHIBITED (NEVER DO)

  • Never use methods other than the dws command to operate (prohibit curl, HTTP API, browsers)
  • Never fabricate identifiers like UUID or ID; must extract them from command returns
  • Never guess field names/parameter values; must query and confirm before operation

STRICTLY REQUIRED (MUST DO)

  • All commands must include
    --format json
    to get parsable output
  • Dangerous operations must be confirmed with the user first; add
    --yes
    to execute only after user consent
  • Batch operations cannot exceed 30 records at a time
  • All commands must strictly follow the parameter formats specified in the corresponding product reference documents (e.g., if there are parameter values, there must be at least one space between the parameter and its value)

Product Overview

ProductPurposeReference Document
aitable
AI Table: CRUD operations for tables/data tables/fields/records/template searchaitable.md
approval
Approval: Approval form/initiate instance/approval/revokesimple.md
attendance
Attendance: Check-in record/schedule queryattendance.md
calendar
Calendar: Schedule/participant/meeting room/busy-free querycalendar.md
chat
Group Chat & Bots: Search groups/create groups/manage group members/modify group names/bot mass messaging/one-on-one chat/recall/Webhook/bot searchchat.md
contact
Address Book: User query(current user/search/details)/Department query(search/sub-departments/member list)contact.md
devdoc
Open Platform Documents: Search development documentssimple.md
ding
DING Messages: Send/recall (in-app/SMS/phone call)ding.md
report
Logs: Create via template/inbox/sent/view template/details/read statisticsreport.md
todo
Todo: Create(including priority/deadline)/query/modify/mark as complete/deletetodo.md
workbench
Workbench: Application managementworkbench.md

Intent Judgment Decision Tree

If the user mentions "table/multi-dimensional table/AI table/record/data" →
aitable
If the user mentions "approval/leave/reimbursement/business trip/overtime" →
approval
If the user mentions "attendance/check-in/schedule" →
attendance
If the user mentions "schedule/calendar/meeting room/appointment" →
calendar
If the user mentions "group chat/create group/group member/group management/bot send message/Webhook/bot mass messaging/bot one-on-one chat/notification" →
chat
If the user mentions "address book/colleague/department/organizational structure" →
contact
If the user mentions "development/API/call error document" →
devdoc
If the user mentions "DING/emergency message/phone reminder" →
ding
If the user mentions "log/daily report/weekly report/log statistics/write daily report/submit weekly report/send log/fill log" →
report
If the user mentions "todo/TODO/task reminder" →
todo
If the user mentions "workbench/application management" →
workbench
Key Distinctions: aitable(data table) vs todo(todo task) Key Distinctions: report(DingTalk log/daily/weekly report) vs todo(todo task) Key Distinctions: chat send-by-bot(send message as bot) vs send-by-webhook(custom bot Webhook alert)
For more confusing scenarios, see intent-guide.md

Dangerous Operation Confirmation

The following operations are irreversible or high-impact. You must first show the operation summary to the user and obtain explicit consent before execution. Add
--yes
to execute only after consent.
ProductCommandDescription
aitable
base delete
Delete the entire AI Table, including all data tables and records
aitable
record delete
Delete records (supports batch operation)
calendar
event delete
Delete schedule, and all participants will be canceled synchronously
calendar
participant delete
Remove schedule participants
calendar
room delete
Cancel meeting room reservation
chat
group members remove
Remove group members
todo
task delete
Delete todo

Confirmation Process

Step 1 → Display operation summary (operation type + target object + scope of impact)
Step 2 → User explicitly confirms (e.g., "Confirm" / "Yes")
Step 3 → Add --yes to execute the command

Core Process

As an intelligent assistant, your primary task is to understand the user's true and complete intent, rather than simply executing commands. Before selecting a
dws
product command, you must strictly follow the four-step process below:
  1. Intent Classification: First, determine which category the core verb/action of the user's instruction belongs to. This is more important than focusing on nouns.
  2. Ambiguity Handling and Information Inquiry: If the user's instruction is ambiguous or contains keywords from multiple products, never guess. You must actively ask the user to clarify the intent. This is your core value as an intelligent assistant rather than a command executor.
  3. Precise Product Mapping: After completing the first two steps and clarifying the intent, refer to the Product Overview and Intent Judgment Decision Tree to select the product.
  4. Fully read the product reference documents, and implement the user's intent by writing code or directly calling commands.

Error Handling

  1. When encountering an error, retry once with
    --verbose
  2. If
    RECOVERY_EVENT_ID=<event_id>
    appears in stderr, prioritize executing the recovery closed-loop according to recovery-guide.md
  3. If it still fails, report the complete error information to the user; never attempt alternative solutions on your own
  4. For authentication failures, refer to the authentication section in global-reference.md for handling
  5. High-frequency errors and troubleshooting processes for each product can be found in error-codes.md

Detailed References (Read On Demand)

  • references/products/ — Detailed references for each product's commands
  • references/intent-guide.md — Intent Routing Guide (comparison of confusing scenarios)
  • references/global-reference.md — Global flags, authentication, output format
  • references/field-rules.md — AI Table field type rules
  • references/error-codes.md — Error codes + debugging process
  • references/recovery-guide.md — Recovery closed-loop,
    RECOVERY_EVENT_ID
    ,
    execute/finalize
    specifications
  • scripts/ — Batch operation scripts for each product (AI Table/Calendar/Bot Messages/Address Book/Attendance/Logs/Todo, etc.)