dws

dws is a skill for Claude Code, Codex from Pinvou/pinvou-agent. It costs 193 tokens per session (10,749 once invoked), scanned A, original, MIT.

A command-line guide for DingTalk, a workplace platform with chat, documents, calendars, approvals, tasks, and other business tools.

In plain words
What is it for?
It helps manage DingTalk chats, files, documents, calendars, contacts, tasks, approvals, attendance, reports, and related workplace data.
Why use it?
It provides rules for finding real records and identifiers, using the current command options, and confirming risky actions before they happen.

Skill for Claude CodeCodex

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

Good fit It helps manage DingTalk chats, files, documents, calendars, contacts, tasks, approvals, attendance, reports, and related workplace data.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/pinvou/pinvou-agent/dws
About the project

Pinvou/pinvou-agent is an open-source desktop workspace where an AI agent helps with work, visual design, and software development. People use it to work with files and knowledge, create editable visual artifacts, connect coding agents to projects, and extend the workspace with tools, MCP servers, skills, and workflows; the catalogue skills add capabilities to that environment.

Pinvou/pinvou-agent · 2,585 stars · on GitHub · pinvou.com

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 Pinvou/pinvou-agent --skill dws
Clone the repo
git clone --depth 1 https://github.com/Pinvou/pinvou-agent

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 dws

README.md
[![agentmods](https://agentmods.dev/badge/skills/pinvou/pinvou-agent/dws/github.svg)](https://agentmods.dev/skills/pinvou/pinvou-agent/dws)
Your own site
<a href="https://agentmods.dev/skills/pinvou/pinvou-agent/dws"><img src="https://agentmods.dev/badge/skills/pinvou/pinvou-agent/dws/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 dws

Your own site · 80×15
<a href="https://agentmods.dev/skills/pinvou/pinvou-agent/dws"><img src="https://agentmods.dev/badge/skills/pinvou/pinvou-agent/dws.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 193 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 10,749 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. Third-party audits
  • NVIDIA SkillSpector pass 7 Sept 2026
How audits are shown
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.00193 $0.10749
Opus 5.5 $0.00077 $0.04300
Sonnet 5.5 $0.00039 $0.02150
Haiku 4.5 $0.00019 $0.01075

Measured 3d ago against content hash 7fa7c0852035, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

dws 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 3d ago.

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.

- 不要使用 dws 命令以外的方式操作钉钉业务数据(禁止 curl、HTTP API、浏览器)。**例外**:① aitable 导入/导出/附件上传链路返回的预签名 `uploadUrl`/`downloadUrl`(`import upload` 申请的上传凭证、`export data` 返回的下载地址、`attachment upload` 返回的上传地址)允许用 curl 直传/直下(见 [aitable-export-im
pinvou3-app/src-tauri/resources/common/bundle/dingtalk-skills/dws/SKILL.md · 347 lines

How it starts

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

钉钉全产品 Skill

通过 dws 命令管理钉钉产品能力。

⚠️ 命令与 flag 以当前 dws 二进制为准:dws <cmd> --help 是 Cobra flags 事实源,Agent 选命令/参数约束/安全确认以 leaf Schema(--compact)为准,与本文档冲突时以二者为准。

🔑 首次使用先认证:命令报 AUTH_TOKEN_EXPIRED / 未登录时,不要在会话内直接跑 dws auth login——它是阻塞式扫码设备流,会一直等待授权直至超时,用户看不到扫码链接。把命令交给用户在其终端自行执行(流程见 global-reference.md 认证章节),完成后再继续;不要因未登录直接断定技能不可用。

严格禁止 (NEVER DO)

  • 不要使用 dws 命令以外的方式操作钉钉业务数据(禁止 curl、HTTP API、浏览器)。例外:① aitable 导入/导出/附件上传链路返回的预签名 uploadUrl/downloadUrl(import upload 申请的上传凭证、export data 返回的下载地址、attachment upload 返回的上传地址)允许用 curl 直传/直下(见 aitable-export-import.md 与 aitable-attachment.md);② 按 openapi-explorer.md 读取官方 open.dingtalk.com/llms.txt 文档并生成受限的 dws api 调用。除此之外禁止
  • 不要编造 UUID、ID 等标识符,必须从命令返回中提取
  • 不要猜测字段名/参数值,操作前必须先查询确认

严格要求 (MUST DO)

  • 所有命令必须加 --format json(默认输出即 json,显式携带以防默认值变化,确保可解析)
  • 用户明确要登录钉钉国际版、海外版或 .io 区域时,必须执行 dws auth login --intl(无头环境再加 --device),不得回退到国内 .com;--intl 只用于登录,后续业务命令按所选 profile 自动路由
  • 危险操作必须先向用户确认,用户同意后才加 --yes 执行
  • 直接调用 dws 批量接口(如 record update)时单次硬上限 100 条(各 record 分册同);Agent 直连建议每批 ≤30 条以便失败重试;使用 scripts/import_records.py 批量导入时按脚本默认 50 条/批(其 DEFAULT_BATCH_SIZE=50,上限 100)
  • 所有命令必须严格遵循对应产品参考文档里面规定的参数格式(参数与参数值之间用空格隔开)
  • 脚本只用于明确覆盖的复合任务:scripts/ 下的脚本可封装 AI 表格批量导入导出、钉盘目录树等流程;当公开 + Shortcut 已提供目标唯一解析、分页/部分失败 ledger 和确认语义时,优先 Shortcut。Chat 历史导出与机器人广播已完全下沉 Runtime,不再发布兼容脚本
  • 脚本调用约定:统一用 python3 调用(多数 macOS/Linux 环境没有裸 python 命令);文档中的 scripts/... 是相对本 Skill 根目录(SKILL.md 所在目录)的路径,实际执行时应拼成完整路径(如 python3 <Skill根目录>/scripts/attendance_report_monthly.py ...),不要假设当前工作目录(CWD)已在 Skill 根目录
  • 实时个人事件例外:普通 IM 消息、reaction、已读和撤回默认走 dws event +listen-im ...;OA 审批、VoIP 通话邀请、Todo、互动卡片回调、群生命周期、明确的原始 EventKey、Filter DSL、subscribe_id 或原始 envelope 使用 dws event consume ... --flatten。不要写脚本轮询消息历史、审批列表、通话记录或待办列表

Read the full file on GitHub · 347 lines

Files

What ships with it

60 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. 3d ago Changed · +13 lines · +6 tokens per session 7fa7c0852035
  2. 13d ago Changed · +2 lines f75a7bdf4966
  3. 1mo ago Changed · +11 lines 06b4f2ee6431
  4. 1mo ago Changed · +6 lines d33da665f146
  5. 1mo ago Changed · +1 lines cd0371dd04f7
  6. 1mo ago First seen · 314 lines · 187 tokens per session scan A 3102390ff32f

Subscribe to this mod's changes

dws is a skill published in the GitHub repository Pinvou/pinvou-agent (2,585 stars, last pushed today), licensed MIT. It adds 193 tokens to every session and 10,749 once invoked, about $0.0008 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.