Card Xiaohongshu
nexu-io/open-design
Xiaohongshu-style knowledge cards, arranged as a swipeable multi-card carousel.
Create, edit, and validate DingTalk AI Card (A2UI) JSON files offline.
$ npx skills add DingTalk-Real-AI/dingtalk-workspace-cli --skill dingtalk-aicard -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install DingTalk-Real-AI/dingtalk-workspace-cli dingtalk-aicard --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/DingTalk-Real-AI/dingtalk-workspace-cli.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/multi/dingtalk-aicard .claude/skills/dingtalk-aicard && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "dingtalk-aicard" agent skill from https://github.com/DingTalk-Real-AI/dingtalk-workspace-cli/tree/main/skills/multi/dingtalk-aicard into .claude/skills/dingtalk-aicard/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dingtalk-aicard", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/DingTalk-Real-AI/dingtalk-workspace-cli/tree/main/skills/multi/dingtalk-aicardType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add DingTalk-Real-AI/dingtalk-workspace-cli --skill dingtalk-aicard -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install DingTalk-Real-AI/dingtalk-workspace-cli dingtalk-aicard --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/DingTalk-Real-AI/dingtalk-workspace-cli.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/multi/dingtalk-aicard .agents/skills/dingtalk-aicard && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "dingtalk-aicard" agent skill from https://github.com/DingTalk-Real-AI/dingtalk-workspace-cli/tree/main/skills/multi/dingtalk-aicard into .agents/skills/dingtalk-aicard/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dingtalk-aicard", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add DingTalk-Real-AI/dingtalk-workspace-cli --skill dingtalk-aicard -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install DingTalk-Real-AI/dingtalk-workspace-cli dingtalk-aicard --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/DingTalk-Real-AI/dingtalk-workspace-cli.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/multi/dingtalk-aicard .cursor/skills/dingtalk-aicard && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "dingtalk-aicard" agent skill from https://github.com/DingTalk-Real-AI/dingtalk-workspace-cli/tree/main/skills/multi/dingtalk-aicard into .cursor/skills/dingtalk-aicard/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dingtalk-aicard", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/DingTalk-Real-AI/dingtalk-workspace-cli.git --path skills/multi/dingtalk-aicard--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add DingTalk-Real-AI/dingtalk-workspace-cli --skill dingtalk-aicard -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install DingTalk-Real-AI/dingtalk-workspace-cli dingtalk-aicard --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/DingTalk-Real-AI/dingtalk-workspace-cli.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/multi/dingtalk-aicard .gemini/skills/dingtalk-aicard && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "dingtalk-aicard" agent skill from https://github.com/DingTalk-Real-AI/dingtalk-workspace-cli/tree/main/skills/multi/dingtalk-aicard into .gemini/skills/dingtalk-aicard/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dingtalk-aicard", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install DingTalk-Real-AI/dingtalk-workspace-cli dingtalk-aicardInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add DingTalk-Real-AI/dingtalk-workspace-cli --skill dingtalk-aicard -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/DingTalk-Real-AI/dingtalk-workspace-cli.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/multi/dingtalk-aicard .github/skills/dingtalk-aicard && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "dingtalk-aicard" agent skill from https://github.com/DingTalk-Real-AI/dingtalk-workspace-cli/tree/main/skills/multi/dingtalk-aicard into .github/skills/dingtalk-aicard/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dingtalk-aicard", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add DingTalk-Real-AI/dingtalk-workspace-cli --skill dingtalk-aicard -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install DingTalk-Real-AI/dingtalk-workspace-cli dingtalk-aicard --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/DingTalk-Real-AI/dingtalk-workspace-cli.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/multi/dingtalk-aicard .opencode/skills/dingtalk-aicard && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "dingtalk-aicard" agent skill from https://github.com/DingTalk-Real-AI/dingtalk-workspace-cli/tree/main/skills/multi/dingtalk-aicard into .opencode/skills/dingtalk-aicard/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dingtalk-aicard", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
dingtalk-aicardCreate, edit, and validate DingTalk AI Card (A2UI) JSON files offline.
Dingtalk Aicard is an agent skill from DingTalk-Real-AI/dingtalk-workspace-cli. Create, edit, and validate DingTalk AI Card (A2UI) JSON files offline. Use for cards built from requirements or images, structural protocol errors, and named component or function contract lookup through native DWS commands. Send a card to the current user only when a preview is requested.
Its SKILL.md is about 2.5k tokens, which your agent loads only when the skill is triggered. The skill folder holds 36 other files, including reference files (for example `references/design.md`, `references/index/components.md` and `references/index/functions.md`).
The repository describes itself as: DingTalk Workspace is an officially open-sourced cross-platform CLI tool from DingTalk. It unifies DingTalk’s full suite of product capabilities into a single package, is… The licence is Apache-2.0.
Read from SKILL.md and the folder at commit 0a813a9. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are bash and json).
From the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
dingtalk.comFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Dingtalk Aicard loads about 2.5k tokens when it runs, and up to ~102k if it reads all its reference files. Until then it costs about 77 tokens; SKILL.md has 1,150 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from DingTalk-Real-AI/dingtalk-workspace-cli at commit 0a813a9, republished under its Apache-2.0 licence (© DingTalk-Real-AI). 1,150 words, ~2,546 tokens.
.claude/skills/dingtalk-aicard/SKILL.md (or your agent's skills folder). This skill also uses 32 other files; get the full folder from GitHub.Create or edit an A2UI file from the user's content or image, look up only the contracts needed, and distinguish local validation from delivery and client rendering. This Skill uses the DingTalk V0.8 package based on A2UI 1.0: message version is "v1.0" and send API protocolVersion is "1.0".
Follow the user's requested lookup, file, send or update directly; the references are not a mandatory sequence. Obey command and protocol requirements. Ask only when missing facts, interaction meaning or the target affect the outcome.
Read only the relevant reference. Do not preload the complete protocol, every pattern, or the whole guide.
| Intent | First reference | Optional follow-up |
|---|---|---|
| Set up lookup and validation | Execution environment | Installed command help |
| Create or redesign from content or images | Visual focus and layout | One relevant pattern or example |
| Query a known name | Query a named contract | The result's source pointer |
| Find an unknown name | Component, function, or Token index | Query only the selected names |
| Construct or repair a card | Construct and validate | Diagnostic pointer and named contract |
| Send, preview, or update | Delivery boundary | Installed command help |
Use patterns for composition guidance and linked JSON for message shapes. Read a named example directly; use the example index only to choose one.
| Content | Reference |
|---|---|
| Notifications and reminders | Notification |
| Object facts and decisions | Detail |
| Illustrated content and attachments | Content |
| Metrics and reports | Report |
| Editable inputs and submission | Form |
| Generation and execution updates | Progress |
For editable inputs, also consult the form pattern for bindings and submission, even when another pattern describes the card. When replaying an execution example, read Examples and replay for its batch boundaries, even if the JSON was selected directly.
This edition uses native DWS commands, not Python. Confirm dws aicard --help exposes explain, lint, and preview; copying the Skill does not install commands. Lookup and lint are offline and need no Profile. Check each command's current help and structured envelope (ok, outcome, data, or error.details). If unavailable, references can guide a draft, but do not claim DWS validation.
dws aicard explain Tabs --format json
dws aicard explain Text Row Column --compact --format jsonQuery only needed names. Compact $contractRef and definitions are lookup metadata, not A2UI fields. Query without --compact for expanded fields; source locates omitted details.
Use references/protocol/ as the contract. Write an ordered JSON message array.
Within one card, keep the same surfaceId; choose an ID suitable for that card
when creating it. A complete new card requires Surface creation, root data
initialization (even {} for static content), and a component with ID root.
The recommended explicit form is:
[
{"version":"v1.0","createSurface":{"surfaceId":"example-surface","catalogId":"https://dingtalk.com/card/a2ui/catalogs/public/catalog.json"}},
{"version":"v1.0","updateDataModel":{"surfaceId":"example-surface","path":"/","value":{}}},
{"version":"v1.0","updateComponents":{"surfaceId":"example-surface","components":[{"id":"root","component":"Text","text":"Example"}]}}
]This is a structural example, not a business card to send. Protocol-valid inline
initialization in createSurface.dataModel and createSurface.components is also
accepted; three separate messages are not the only valid representation.
| Scenario | Messages and checks |
|---|---|
| Complete new card | Create and initialize as above; use --preflight new-card |
| Host-created empty Surface | Initialize its existing ID without createSurface; use Schema and resource checks |
| Existing card update | Keep IDs and send only intentional changes; use Schema and resource checks, then check against known current state |
Removing createSurface from a complete file does not make it a safe delta.
Do not replay form defaults or unrelated initial data: that can overwrite user
input. Resource checks alone cannot prove an update preserves state or references.
Preserve unrelated styling when editing. For ordinary new cards, prefer a root Column without background fields. If a root Card is needed, use backgroundColor: "#00FFFFFF" and no background token. Honor explicit surface designs; see design guidance.
Prefer Markdown for rich text and static tables; Text for short titles and labels. Omit root padding for ordinary cards. Do not default to CardHeader; preserve it when requested and check insets.
Preserve supplied facts and requested interactions; label demonstration data. Replace REPLACE_* placeholders before delivery. Do not present unverified resources, unconnected actions, or simulated states as real and working.
Choose literals or bindings as the field contract permits. Initialize bound data with the required types and update it through updateDataModel; change component literals through updateComponents. sendDataModel controls whether A2A messages include the full data model, not whether bindings work.
dws aicard lint --file card.a2ui.json --format jsonChoose --preflight new-card or --preflight resources for the selected scenario, and use --emit only when serialized message strings are needed; it cannot be combined with --fragment. Check exit status and data.valid plus data.preflight.valid when selected. dws aicard lint --self-check --format json verifies the full package.
Lint checks syntax and Schema fields. New-card preflight additionally checks initialization, root, duplicate IDs within a message, static references and cycles in the final component snapshot, not every intermediate streaming frame. Unreachable components are warnings. Resource preflight checks inline encoding; neither mode evaluates bindings or proves image loading. --fragment checks component/message fragments; it is not a way to bypass new-card initialization. Do not silently rewrite user data, remove requested components, or downgrade interactions to pass a check.
A successful named lookup is not a full package check. Use the self-check supported by the selected execution environment; local checks do not establish client behavior.
With native --emit, read data.a2uiMessages.
Send only when requested. Resolve exactly one target under the sending profile: --conversation-id for a conversation or --open-dingtalk-id for a person. Names are not target IDs. Inspect installed command help, JSON-encode the emitted message-string array as one --content argument, and call dws chat message send-a2ui-card. Preserve the request, target, profile and returned bizId. An uncertain result must be checked before another create; do not resend automatically.
Creation starts in PROCESSING. Update with dws chat message update-a2ui-card --biz-id <bizId> --content <message-strings> --flow-status <state> under the original profile. Keep the same surfaceId and component IDs; send only intended updateDataModel or updateComponents changes, not another createSurface or unrelated defaults. Static cards require --flow-status FINISH with a nonempty valid delta; prepare it before sending and preserve business data. Stream complete messages, not JSON tokens. Resource preflight checks only the delta. If current state is known, validate it with the delta; Schema validity does not prove business safety.
dws aicard preview --file card.a2ui.json sends a self-preview in PROCESSING; --dry-run does not send. For a completed static preview, finish it under the same profile with dws chat message update-a2ui-card --biz-id <data.bizId> --content <message-strings> --flow-status FINISH, using a nonempty state-preserving delta for the same Surface. Do not replay form defaults. Use server-issued data.bizId, never request-side bizCardId. If absent, inspect updateWarning and the receipt; do not recreate automatically. openTaskId cannot be used with query-send-status.
After sending, use the available readback capability under the same profile and target to identify this exact card from returned instance/message identifiers. Generic card text and a nearby timestamp are not sufficient. Report request acceptance, same-target readback, client rendering and interaction separately. If readback is unavailable or inconclusive, mark it unverified; do not claim the user received or correctly rendered the card from API acceptance alone.
Report the file, checks actually run, and delivery result when requested. Local validation and request acceptance do not prove client rendering.
© DingTalk-Real-AI, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 32 other files (references) in skills/multi/dingtalk-aicard of DingTalk-Real-AI/dingtalk-workspace-cli.
Open the folder on GitHubat commit 0a813a9
Dingtalk Aicard next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Dingtalk Aicard this skillDingTalk-Real-AI/dingtalk-workspace-cli | 3.2k | — | ~2.5k | Automated safety check: Pass | Apache-2.0 | |
| Card Xiaohongshunexu-io/open-design | 100k | — | ~402 | Automated safety check: Pass | Apache-2.0 | |
| Token Cardaffaan-m/ECC | 276k | — | ~1.3k | Automated safety check: Pass | MIT | |
| Orbit Cardheygen-com/hyperframes | 60k | 1 repos | ~887 | Automated safety check: Pass | Apache-2.0 | |
| Cardly AutomationComposioHQ/awesome-claude-skills | 77k | 3 repos | ~727 | Automated safety check: Pass | None | |
| Social X Post Cardnexu-io/open-design | 100k | — | ~696 | Automated safety check: Pass | Apache-2.0 |
nexu-io/open-design
Xiaohongshu-style knowledge cards, arranged as a swipeable multi-card carousel.
affaan-m/ECC
Render a token-usage stat card from local Claude Code, Codex, Gemini CLI, and OpenCode session logs and commit it into the repository as a file.
heygen-com/hyperframes
HyperFrames block with one feature card that circles a dot sphere, driven by camera and card motion exported from an approved Blender rig.
ComposioHQ/awesome-claude-skills
Automate Cardly tasks via Rube MCP (Composio). An agent skill from ComposioHQ/awesome-claude-skills.
nexu-io/open-design
Realistic X post card with engagement metrics (likes, reposts, views), suited to video overlays or shareable image cards.
nexu-io/open-design
Realistic Reddit post card with vote rail and comment count, suited to video overlays or story sharing.
DingTalk-Real-AI/dingtalk-workspace-cli
钉钉 AI 听记。Use when 查询或修改听记摘要、完整逐字稿、关键词、标签、行动项、录音、上传、思维导图、发言人洞察、ASR 热词/识别词配置或分享权限。写文档走 dingtalk-doc;建待办走 dingtalk-todo;日程走 dingtalk-calendar。命令前缀:dws minutes。
DingTalk-Real-AI/dingtalk-workspace-cli
钉钉 AI 表格(多维表)业务操作。Use when 用户需要操作 AI 表格/多维表/Base/Table、应用模式/App 页面/Widget、建表、查写记录、字段、记录评论、评论回复、访问密钥(API Key)、SQL/PostgreSQL/SELECT/JOIN、筛选、排序、公式、模板、批量导入 CSV 或 JSON、导出、仪表盘、图表、上传附件、数据源配置与同步、按任务 ID…
DingTalk-Real-AI/dingtalk-workspace-cli
AI搜问:人员语义搜索、跨源主题检索与行为回溯。Use when 语义找人,或目标未知时按主题或行为发现内容。原生最近列表走所属产品;完整手机号精确反查走 dingtalk-contact。前缀:dws aisearch。
DingTalk-Real-AI/dingtalk-workspace-cli
钉钉日历与会议室。Use when 用户说 约会议/查日程/订会议室/查闲忙/加参会人/改期/取消会议/今天的日程/本周日程/共同空闲。不做视频会议发起/邀请入会/会中控制(走 dingtalk-misc)、AI 听记(走 dingtalk-minutes)、待办任务(走 dingtalk-todo)。命令前缀:dws calendar。
DingTalk-Real-AI/dingtalk-workspace-cli
钉钉通讯录精确查询。Use when 已有 userId 后查详情、部门、职位或邮箱,按完整手机号反查用户,或查询自己、部门成员及角色。姓名模糊搜索、工号、职责、上下级走 dingtalk-aisearch,拿到 userId 后用本 skill 补详情。命令前缀:dws contact。
DingTalk-Real-AI/dingtalk-workspace-cli
钉钉邮箱读写、搜索、回复与转发。Use when 用户说发邮件/查邮件/回邮件/转发邮件/未读邮件/邮件搜索/邮箱附件。一句话发邮件时先用 dingtalk-contact 解析并确认收件人,再由本 skill 发送;不做钉钉消息(走 dingtalk-chat)、紧急通知(走 dingtalk-misc)。命令前缀:dws mail。
Create, edit, and validate DingTalk AI Card (A2UI) JSON files offline. Dingtalk Aicard is an agent skill from DingTalk-Real-AI/dingtalk-workspace-cli. Create, edit, and validate DingTalk AI Card (A2UI) JSON files offline.
Dingtalk Aicard fits situations like: cards built from requirements; structural protocol errors; named component; function contract lookup through native DWS commands.
Run `npx skills add DingTalk-Real-AI/dingtalk-workspace-cli --skill dingtalk-aicard -a claude-code`. Or copy the skill folder (skills/multi/dingtalk-aicard in DingTalk-Real-AI/dingtalk-workspace-cli) into .claude/skills/dingtalk-aicard in your project. Claude Code loads it when a task matches its description.
Run `npx skills add DingTalk-Real-AI/dingtalk-workspace-cli --skill dingtalk-aicard -a codex`. Or copy the skill folder (skills/multi/dingtalk-aicard in DingTalk-Real-AI/dingtalk-workspace-cli) into .agents/skills/dingtalk-aicard in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add DingTalk-Real-AI/dingtalk-workspace-cli --skill dingtalk-aicard -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/dingtalk-aicard, .gemini/skills/dingtalk-aicard, .github/skills/dingtalk-aicard and .opencode/skills/dingtalk-aicard in your project.
SKILL.md names no scripts, command-line tools or credentials: Dingtalk Aicard is instructions for the agent only.
SKILL.md names 1 domain. In commands or code: dingtalk.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Dingtalk Aicard is published under the Apache-2.0 licence (from the LICENSE file in the skill folder). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.5k tokens (SKILL.md is roughly 10k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 99k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Dingtalk Aicard: Card Xiaohongshu (nexu-io/open-design, 100k stars), Token Card (affaan-m/ECC, 276k stars), Orbit Card (heygen-com/hyperframes, 60k stars) and Cardly Automation (ComposioHQ/awesome-claude-skills, 77k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
DingTalk-Real-AI (a GitHub organization) maintains it in DingTalk-Real-AI/dingtalk-workspace-cli, which has 3,246 GitHub stars. The repository holds 17 skills in this directory. The repository was last updated on October 10, 2026.
Source: DingTalk-Real-AI/dingtalk-workspace-cli on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.