CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

dingtalk-event

钉钉个人 IM、OA 审批、VoIP 通话邀请、待办、互动卡片与好友事件长连接监听。Use when 用户说监听消息/@我/某人/某群/全部消息、已读/撤回/reaction、群成员加入/群成员退出,监听审批任务创建/完成/转交、审批实例发起/抄送/终止/完成、VoIP 通话邀请、待办创建/更新/删除、好友申请/好友添加成功,或互动卡片回调。命令前缀:dws event。

Quality

94%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Low

Low-risk findings worth noting

SKILL.md
Quality
Evals
Security

Quality

Content

93%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

An exemplarily dense, action-oriented skill body: exact commands with flags, pre-flight and destructive-operation checkpoints, explicit failure/retry policy, and a clean one-level-deep reference structure with per-topic 'when to read' guidance. The only gap is that the full consume lifecycle is distributed across sections and references rather than presented as one explicit sequenced workflow.

DimensionReasoningScore

Conciseness

The body is extremely dense and operational — no concept explanations, no padding, no restating what Claude already knows. Constraints are maximally compressed (e.g., "OA 七个 EventKey 使用 `ruleType=all`、`filterRule={}`,不接受目标或消息过滤"), and parallel routing rules are stated once per domain rather than duplicated. Every token earns its place, matching the 5 anchor.

5 / 5

Actionability

Fully executable, copy-paste-ready commands with exact flags and placeholders throughout: "`dws event +listen-im --kind sender --user-query <姓名>`", "`dws event consume user_card_action_triggered --flatten -f ndjson`", "`dws event stop <subscribe_id> --dry-run`", "`dws schema --cli-path "event +listen-im" --compact`"). It also gives concrete field paths ("`payload.body.actionData.context`:`questions[].id` 关联 `answers[question_id]`") and exact state-file paths with permissions, covering the common cases per the 5 anchor.

5 / 5

Workflow Clarity

The workflow is present and mostly checkpointed: prerequisite read of dingtalk-shared first, Golden Route table for entry selection, "姓名/群名必须唯一解析,零命中或多候选在创建订阅前停止" as a pre-flight checkpoint, "等 ready,不用 `sleep` 猜测" as a readiness checkpoint, and stop with "先 `--dry-run`,确认后 `--yes`" as a destructive-operation validation. It falls short of the 5 anchor because the end-to-end lifecycle sequence is distributed across sections and deferred to references (event-im-lifecycle.md, event-im-operations.md) rather than given as one explicit sequenced workflow with feedback loops in the body.

4 / 5

Progressive Disclosure

The ~100-line body is a clear overview routing to 10 real one-level-deep reference files (all verified present in references/), each clearly signaled with a '何时读取' column in the Reference table and inline pointers from Golden Route rows (e.g., "读取 [OA 事件参考](references/event-oa.md)"). Content is appropriately split — key contracts inline, detail in references — matching the 5 anchor for navigation and structure.

5 / 5

Total

19

/

20

Passed

Description

96%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A highly specific, trigger-rich description: it states the concrete capability (real-time event listening across six DingTalk domains), gives an explicit 'Use when' clause with natural user phrases, and includes the command prefix. The only weakness is mild keyword overlap with closely related sibling DingTalk skills (todo/approval terms).

DimensionReasoningScore

Specificity

The description names the concrete action ("长连接监听" — long-connection listening) and enumerates specific event types across six domains: "已读/撤回/reaction", "群成员加入/群成员退出", "审批任务创建/完成/转交", "审批实例发起/抄送/终止/完成", "待办创建/更新/删除", "好友申请/好友添加成功". This is comprehensive, multi-action coverage with no vague filler, matching the 5 anchor; the 4 anchor requires minor gaps in coverage, which is not the case here.

5 / 5

Completeness

It explicitly answers both: 'what' — "钉钉个人 IM、OA 审批、VoIP 通话邀请、待办、互动卡片与好友事件长连接监听" — and 'when' via an explicit "Use when 用户说…" clause listing concrete trigger phrases, plus the command prefix "命令前缀:dws event". This matches the 5 anchor exactly; the 4 anchor requires the 'when' to be less explicit, which it is not.

5 / 5

Trigger Term Quality

Trigger terms are natural user phrasings: "监听消息/@我/某人/某群/全部消息", "已读/撤回", "群成员加入/群成员退出", "好友申请/好友添加成功", "互动卡片回调" — covering variations and synonyms (某人/某群/全部) a user would actually say. Not below (4) because common variations are not missing; there are no file extensions in this domain to include.

5 / 5

Distinctiveness Conflict Risk

The listening (监听) verb, real-time event vocabulary, and "命令前缀:dws event" carve out a clear niche distinct from sibling DingTalk skills for sending/querying/operating. However, terms like "待办", "审批", and "VoIP 通话邀请" overlap with sibling dingtalk-todo / dingtalk-oa / dingtalk-misc skill descriptions, leaving minor overlap risk with closely related skills — the 4 anchor rather than 5's 'minimal conflict risk'.

4 / 5

Total

19

/

20

Passed

Validation

81%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 13 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_version

'metadata.version' is missing

Warning

metadata_field

'metadata' should map string keys to string values

Warning

relative_links

Relative link issues: 1 suspicious

Warning

Total

13

/

16

Passed

Repository

DingTalk-Real-AI/dingtalk-workspace-cli

Path

skills/multi/dingtalk-event/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.