From fb6005cd7bf55560e1e5e342bed76ff0deabc69f Mon Sep 17 00:00:00 2001 From: Yige Date: Wed, 2 Sep 2026 06:25:24 -0400 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=96=B0=E5=A2=9E=E9=92=89=E9=92=89?= =?UTF-8?q?=E5=AE=98=E6=96=B9=20CLI=20=E5=B8=82=E5=9C=BA=E5=85=A5=E5=8F=A3?= =?UTF-8?q?=EF=BC=88=E5=90=AB=2014=20=E4=B8=AA=E5=AE=98=E6=96=B9=E5=AD=90?= =?UTF-8?q?=E6=8A=80=E8=83=BD=EF=BC=89=20(#104)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## 中文 补齐官方市场里唯一缺失的主流 IM CLI 条目:**钉钉官方命令行工具 `dws`**(npm 包 `dingtalk-workspace-cli`,Apache-2.0,Copyright 2026 Alibaba Group),与已有的 `wecom-cli`、`larksuite-cli` 形成对称。市场此前只有社区的 `dingtalk-api`,覆盖面远小于官方 CLI。 ### 变更 | 文件 | 说明 | | --- | --- | | `skills/dingtalk-cli/entry.json` | 合集指针条目 + 14 个官方子技能 `children` | | `skills/dingtalk-cli/catalog-metadata.v1.json` | 治理 sidecar | | `manifest.json` | `stats.totalSkills` 62 → 63;`version` 1.2.30 → 1.2.31;`lastUpdated` | | `README.md` | 外部条目计数与清单同步 | ### 14 个子技能 `dingtalk-aisearch`、`dingtalk-aitable`、`dingtalk-calendar`、`dingtalk-chat`、`dingtalk-contact`、`dingtalk-doc`、`dingtalk-drive`、`dingtalk-event`、`dingtalk-mail`、`dingtalk-minutes`、`dingtalk-misc`、`dingtalk-shared`、`dingtalk-todo`、`dingtalk-wiki` ### 外部依赖披露 CLI 是**独立分发的第三方软件**,本条目只是市场登记,四处均已声明: - **discovery description**(`entry.json#i18n..shortDesc`):需自行用 npm 安装 `dingtalk-workspace-cli`,需完成钉钉 OAuth 授权登录(**不支持账号密码登录**),DesireCore 不打包、不授权、不安装也不代运营钉钉或该 CLI - **`compatibility.requirements`**(4 条):CLI 需在 PATH 上、Node.js >= 16.7.0、`dws auth login` 建立的授权会话(缺失时必须在外部调用前停止,禁止编造成功结果)、能力覆盖取决于组织授予的 OAuth 范围与钉钉权益 - **本地化市场文案**:sidecar `presentation.i18n` 与 `entry.json#i18n` 逐字一致,zh-CN / en-US 双语 - **执行说明**:随 CLI 分发的上游 `SKILL.md`,不在本仓库 `redistribution: verify-package-terms` 会让客户端在安装响应里带出条款提示。 ### 来源与治理的取舍(诚实声明) 上游 git 仓库 `https://github.com/open-dingtalk/dingtalk-workspace-cli`(该 URL 是发布方在 npm `package.json#repository` 里自己声明的)**当前对外返回 404,不可公开访问**,因此: - `source` 用 `kind: git` + 该声明 URL,**不写 `ref`**——没有可观察的 commit,不编造固定版本 - 相应地 `provenance.content` 不可变,`governance.availability` 只能是 `listing-only`(`validate_catalog_metadata.py` 的 installable 强证据门禁要求不可变 ref + 已知 license + `reviewedAt` + `compliance`,本条目一样都拿不出) - `governance.license` 保持 `{state: "unknown"}`(`entry.json#license: "Apache-2.0"` 取自发布方声明与包内 LICENSE/NOTICE,但仓库内没有许可证据文件,只产生既有的 `legacy-license-unverified` warning) - `timestamps.reviewedAt` / `releasePublishedAt` 保持 `unknown`;只有 `catalogUpdatedAt` 与 `upstreamObservedAt` 写入真实观察时刻 - `branding` 声明 `independent-listing` / `nominative` / `not-used`:独立登记、名称为指代性使用、未使用对方 Logo(图标是通用终端窗形) - 因为来源未固定,`gen-collection-children.py --check` 会输出 `SKIP`(与既有的 `mattpocock-skills` 同一路径),`children` 由人工按分发件内实际布局 `multi//` 撰写 ### 校验(已实际执行,全部 exit 0) ``` uv run --quiet scripts/i18n/test_validate_i18n.py exit=0 uv run --quiet scripts/catalog/test_validate_catalog_metadata.py exit=0 uv run --quiet scripts/catalog/test_collection_generator.py exit=0 uv run --quiet scripts/catalog/validate_catalog_metadata.py --require-complete 0 error(s), 117 warning(s). agents=1, builtinSkills=34, pointerSkills=29, publishableSkills=63, collections=8, collectionChildren=161, sidecars=64 exit=0 uv run --quiet scripts/i18n/validate-i18n.py 0 error(s) exit=0 uv run --quiet scripts/i18n/translate.py --check exit=0 uv run --quiet scripts/gen-collection-children.py --check exit=0 ``` 本条目产生的唯一 warning 是 `legacy-license-unverified`,与其余全部 pointer 条目一致。`entry.json` 另经客户端 `marketSkillEntrySchema` 的 Ajv 校验通过。 发布前公开信息边界检查已按 `CLAUDE.md` 执行并通过(工作树全量扫描含隐藏文件、路径名、分支名、commit 文案与本 PR 文本,零结果;令牌清单保存在仓库之外)。 --- ## English Adds the one mainstream IM CLI the official market was still missing: the **official DingTalk CLI `dws`** (npm package `dingtalk-workspace-cli`, Apache-2.0, Copyright 2026 Alibaba Group), making it symmetric with the existing `wecom-cli` and `larksuite-cli` entries. Until now the market only carried the community `dingtalk-api`, whose surface is far smaller. ### Changes | File | Purpose | | --- | --- | | `skills/dingtalk-cli/entry.json` | Collection pointer entry with 14 official sub-skill `children` | | `skills/dingtalk-cli/catalog-metadata.v1.json` | Governance sidecar | | `manifest.json` | `stats.totalSkills` 62 → 63; `version` 1.2.30 → 1.2.31; `lastUpdated` | | `README.md` | External-entry count and list kept in sync | ### External dependency disclosure The CLI is **separately distributed third-party software**; this entry is a marketplace listing only. The dependency is disclosed in all four required places: - **Discovery description** (`entry.json#i18n..shortDesc`): the operator installs `dingtalk-workspace-cli` from npm and completes DingTalk OAuth sign-in (**no username-and-password login**); DesireCore does not bundle, license, install or operate DingTalk or this CLI. - **`compatibility.requirements`** (4 entries): the `dws` binary on PATH, Node.js >= 16.7.0, an operator-authorized session from `dws auth login` (without it the skills must stop before the external call and must never fabricate a successful result), and the fact that capability coverage depends on the organization's granted OAuth scopes and DingTalk entitlements. - **Localized marketplace text**: sidecar `presentation.i18n` matches `entry.json#i18n` verbatim, in both zh-CN and en-US. - **Execution instructions**: the upstream `SKILL.md` files shipped with the CLI, outside this repository. `redistribution: verify-package-terms` makes the client surface a terms notice on install. ### Source and governance trade-off (stated plainly) The upstream git repository `https://github.com/open-dingtalk/dingtalk-workspace-cli` — the URL the publisher itself declares in the npm `package.json#repository` — **currently returns 404 and is not publicly readable**. Therefore: - `source` uses `kind: git` with that declared URL and **no `ref`**: there is no observable commit, and inventing a pinned one is not acceptable. - Content provenance is consequently not immutable, so `governance.availability` can only be `listing-only` (the installable evidence gate in `validate_catalog_metadata.py` requires an immutable ref, a known license, `reviewedAt` and `compliance`; none of these exist here). - `governance.license` stays `{state: "unknown"}`. `entry.json#license: "Apache-2.0"` reflects the publisher's declaration and the LICENSE/NOTICE shipped in the package, but there is no license evidence file in this repository, so only the existing `legacy-license-unverified` warning is produced. - `timestamps.reviewedAt` and `releasePublishedAt` stay `unknown`; only `catalogUpdatedAt` and `upstreamObservedAt` carry real observed values. - `branding` declares `independent-listing` / `nominative` / `not-used`: an independent listing, nominative use of the product name, and no third-party logo (the icon is a generic terminal-window glyph). - Because the source is unpinned, `gen-collection-children.py --check` reports `SKIP` (the same path the existing `mattpocock-skills` entry takes). The `children` list was written by hand against the `multi//` layout actually observed in the distributed skill bundle. ### Validation (actually executed, all exit 0) All seven checks from `.github/workflows/i18n-validate.yml` were run locally and passed; the only warning attributable to this entry is `legacy-license-unverified`, matching every other pointer entry. `entry.json` additionally validates against the client's `marketSkillEntrySchema` under Ajv. The pre-publication public-information-boundary check in `CLAUDE.md` was performed and passed with a zero-result scan across the working tree (hidden files included), path names, branch name, commit text and this PR text. The search tokens are kept outside the repository. --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: yi-ge --- README.md | 6 +- manifest.json | 4 +- skills/dingtalk-cli/catalog-metadata.v1.json | 459 +++++++++++++++++++ skills/dingtalk-cli/entry.json | 204 +++++++++ 4 files changed, 668 insertions(+), 5 deletions(-) create mode 100644 skills/dingtalk-cli/catalog-metadata.v1.json create mode 100644 skills/dingtalk-cli/entry.json diff --git a/README.md b/README.md index 4995a5c..db16ba7 100644 --- a/README.md +++ b/README.md @@ -28,8 +28,8 @@ The market currently contains: - `1` Agent: `desirecore` - `1` Team: `contract-review-team` - `34` local built-in skills with `SKILL.md` -- `28` external skill entries with `entry.json` -- `62` publishable skills in total (`SKILL.md` + `entry.json`) +- `29` external skill entries with `entry.json` +- `63` publishable skills in total (`SKILL.md` + `entry.json`) ## Skill Sources @@ -54,7 +54,7 @@ External entries are marketplace pointers to Git/Web/ZIP sources: ```text agent-reach, ai-news-radar, amap-jsapi-skill, baoyu-skills, dingtalk-api, -flyai-skill, follow-builders, humanizer, humanizer-zh, +dingtalk-cli, flyai-skill, follow-builders, humanizer, humanizer-zh, ian-xiaohei-illustrations, impeccable, karpathy-guidelines, khazix-skills, larksuite-cli, last30days, luckin-my-coffee, marketingskills, mattpocock-skills, minimax-image-gen, minimax-tts, mt-paotui-for-client, diff --git a/manifest.json b/manifest.json index 5541701..3cfb4f6 100644 --- a/manifest.json +++ b/manifest.json @@ -1,6 +1,6 @@ { "name": "DesireCore Official Market", - "version": "1.4.0", + "version": "1.4.1", "schemaVersion": "1.1.0", "supportedLocales": ["zh-CN", "en-US"], "defaultLocale": "en-US", @@ -28,7 +28,7 @@ "stats": { "totalAgents": 1, "totalTeams": 1, - "totalSkills": 62, + "totalSkills": 63, "lastUpdated": "2026-09-01" }, "features": [ diff --git a/skills/dingtalk-cli/catalog-metadata.v1.json b/skills/dingtalk-cli/catalog-metadata.v1.json new file mode 100644 index 0000000..4a9aca7 --- /dev/null +++ b/skills/dingtalk-cli/catalog-metadata.v1.json @@ -0,0 +1,459 @@ +{ + "$schema": "../../schemas/catalog-metadata.v1.schema.json", + "schemaVersion": 1, + "identity": { + "kind": "skill", + "id": "dingtalk-cli" + }, + "presentation": { + "defaultLocale": "en-US", + "i18n": { + "en-US": { + "name": "DingTalk Workspace CLI", + "summary": "Official DingTalk CLI (dws) for humans and AI agents, covering messaging, documents, drive, calendar, to-do, mail and AI minutes across 29 product domains and 1200+ tools. You install the dingtalk-workspace-cli npm package and complete DingTalk OAuth sign-in yourself (no username-and-password login); DesireCore does not bundle, license, install or operate DingTalk or this CLI." + }, + "zh-CN": { + "name": "钉钉 CLI", + "summary": "钉钉官方命令行工具 dws,面向人与 AI Agent,覆盖消息、文档、钉盘、日历、待办、邮件、AI 听记等 29 个产品域、1200+ 工具。需自行用 npm 安装 dingtalk-workspace-cli 并完成钉钉 OAuth 授权登录(不支持账号密码登录);DesireCore 不打包、不授权、不安装也不代运营钉钉或该 CLI。" + } + }, + "category": "communication", + "tags": [ + "open-dingtalk" + ] + }, + "release": { + "state": "unknown" + }, + "timestamps": { + "catalogUpdatedAt": { + "state": "known", + "value": "2026-08-31T11:41:31Z", + "precision": "second" + }, + "releasePublishedAt": { + "state": "unknown" + }, + "reviewedAt": { + "state": "unknown" + }, + "upstreamObservedAt": { + "state": "known", + "value": "2026-08-31T11:41:31Z", + "precision": "second" + } + }, + "provenance": { + "content": { + "kind": "git", + "url": "https://github.com/open-dingtalk/dingtalk-workspace-cli.git" + } + }, + "governance": { + "stewardship": "partner", + "availability": "listing-only", + "license": { + "state": "unknown" + }, + "redistribution": "verify-package-terms", + "branding": { + "relationship": "independent-listing", + "nameUsage": "nominative", + "logoStatus": "not-used" + }, + "upstreamMaintainer": { + "name": "open-dingtalk", + "url": "https://www.npmjs.com/package/dingtalk-workspace-cli", + "verified": false + } + }, + "compatibility": { + "platforms": { + "state": "known", + "values": [ + "macos", + "windows", + "linux" + ] + }, + "requirements": [ + { + "kind": "runtime", + "value": "DingTalk Workspace CLI (dws), a separately distributed third-party program. The operator installs it from the public npm package dingtalk-workspace-cli and keeps it on PATH. DesireCore does not bundle, license, install, pay for or operate the CLI or any DingTalk service." + }, + { + "kind": "runtime", + "value": "Node.js >= 16.7.0 on the operator's machine to install the npm package, which unpacks a prebuilt platform binary during postinstall." + }, + { + "kind": "connection", + "value": "A DingTalk session the operator authorizes with `dws auth login` (OAuth QR code or device flow). Account-and-password sign-in is not supported. Without an authorized session the skills must stop before the external call and must never fabricate a successful result." + }, + { + "kind": "permission", + "value": "Capability coverage depends on the OAuth scopes and DingTalk entitlements the operator's organization has granted; commands outside them fail explicitly instead of degrading silently." + } + ] + }, + "spec": { + "kind": "skill", + "skillType": "procedural", + "riskLevel": "high", + "collection": { + "role": "parent", + "childCount": 14, + "children": [ + { + "identity": { + "kind": "skill", + "id": "dingtalk-aisearch", + "parentId": "dingtalk-cli" + }, + "path": "multi/dingtalk-aisearch", + "presentation": { + "defaultLocale": "en-US", + "i18n": { + "en-US": { + "name": "dingtalk-aisearch", + "summary": "AI Search: find people by name, staff ID, department, duty or reporting line, and search across documents, messages, mail and AI minutes. Command prefix: dws aisearch." + }, + "zh-CN": { + "name": "dingtalk-aisearch", + "summary": "AI 搜问:按姓名、工号、部门、职责或上下级线索找人,并跨文档、消息、邮件与听记检索。命令前缀 dws aisearch。" + } + }, + "tags": [] + }, + "release": { + "state": "unknown" + } + }, + { + "identity": { + "kind": "skill", + "id": "dingtalk-aitable", + "parentId": "dingtalk-cli" + }, + "path": "multi/dingtalk-aitable", + "presentation": { + "defaultLocale": "en-US", + "i18n": { + "en-US": { + "name": "dingtalk-aitable", + "summary": "DingTalk AI Table (multi-dimensional base): create tables, manage fields and records, filter and sort, bulk import and export, dashboards and data-source sync. Command prefix: dws aitable." + }, + "zh-CN": { + "name": "dingtalk-aitable", + "summary": "钉钉 AI 表格(多维表):建表、字段与记录增删改查、筛选排序、批量导入导出、仪表盘图表与数据源同步。命令前缀 dws aitable。" + } + }, + "tags": [] + }, + "release": { + "state": "unknown" + } + }, + { + "identity": { + "kind": "skill", + "id": "dingtalk-calendar", + "parentId": "dingtalk-cli" + }, + "path": "multi/dingtalk-calendar", + "presentation": { + "defaultLocale": "en-US", + "i18n": { + "en-US": { + "name": "dingtalk-calendar", + "summary": "DingTalk calendar and meeting rooms: list events, create or reschedule meetings, book rooms, check free/busy and shared availability, and manage attendees. Command prefix: dws calendar." + }, + "zh-CN": { + "name": "dingtalk-calendar", + "summary": "钉钉日历与会议室:查询日程、创建或改期会议、预订会议室、查闲忙与共同空闲、增删参会人。命令前缀 dws calendar。" + } + }, + "tags": [] + }, + "release": { + "state": "unknown" + } + }, + { + "identity": { + "kind": "skill", + "id": "dingtalk-chat", + "parentId": "dingtalk-cli" + }, + "path": "multi/dingtalk-chat", + "presentation": { + "defaultLocale": "en-US", + "i18n": { + "en-US": { + "name": "dingtalk-chat", + "summary": "DingTalk chats and messages: send, edit and recall messages, create and manage groups, threaded replies, chat history search, bots and webhook notices. Command prefix: dws chat." + }, + "zh-CN": { + "name": "dingtalk-chat", + "summary": "钉钉群聊与消息:收发、编辑与撤回消息,建群与群成员管理,话题回复,搜索聊天记录,机器人与 Webhook 通知。命令前缀 dws chat。" + } + }, + "tags": [] + }, + "release": { + "state": "unknown" + } + }, + { + "identity": { + "kind": "skill", + "id": "dingtalk-contact", + "parentId": "dingtalk-cli" + }, + "path": "multi/dingtalk-contact", + "presentation": { + "defaultLocale": "en-US", + "i18n": { + "en-US": { + "name": "dingtalk-contact", + "summary": "Precise DingTalk directory lookups: user detail, department, title and email by userId, reverse lookup by full phone number, own profile, department members and roles. Command prefix: dws contact." + }, + "zh-CN": { + "name": "dingtalk-contact", + "summary": "钉钉通讯录精确查询:按 userId 查用户详情、部门、职位与邮箱,按完整手机号反查用户,查询本人、部门成员与角色。命令前缀 dws contact。" + } + }, + "tags": [] + }, + "release": { + "state": "unknown" + } + }, + { + "identity": { + "kind": "skill", + "id": "dingtalk-doc", + "parentId": "dingtalk-cli" + }, + "path": "multi/dingtalk-doc", + "presentation": { + "defaultLocale": "en-US", + "i18n": { + "en-US": { + "name": "dingtalk-doc", + "summary": "DingTalk online documents: find, create, read and edit content and blocks; comments, attachments, versions, templates, collaborator permissions, sharing and docx/markdown/pdf export. Command prefix: dws doc." + }, + "zh-CN": { + "name": "dingtalk-doc", + "summary": "钉钉在线文档:查找、创建、读取与编辑正文和块,评论、附件、版本、模板、协作者权限与分享,以及 docx/markdown/pdf 导出。命令前缀 dws doc。" + } + }, + "tags": [] + }, + "release": { + "state": "unknown" + } + }, + { + "identity": { + "kind": "skill", + "id": "dingtalk-drive", + "parentId": "dingtalk-cli" + }, + "path": "multi/dingtalk-drive", + "presentation": { + "defaultLocale": "en-US", + "i18n": { + "en-US": { + "name": "dingtalk-drive", + "summary": "DingTalk file storage (DingDrive and document spaces): find, upload, download, copy, move, rename, delete, recycle bin, permissions, comments, and local folder compare and sync. Command prefix: dws drive." + }, + "zh-CN": { + "name": "dingtalk-drive", + "summary": "钉钉文件管理(钉盘与文档空间):查找、上传下载、复制移动、重命名删除、回收站、权限与评论,以及本地目录比较与同步。命令前缀 dws drive。" + } + }, + "tags": [] + }, + "release": { + "state": "unknown" + } + }, + { + "identity": { + "kind": "skill", + "id": "dingtalk-event", + "parentId": "dingtalk-cli" + }, + "path": "multi/dingtalk-event", + "presentation": { + "defaultLocale": "en-US", + "i18n": { + "en-US": { + "name": "dingtalk-event", + "summary": "Long-lived DingTalk event streaming: personal IM messages, read receipts, recalls, reactions, group membership and state changes, plus OA approval task and instance events. Command prefix: dws event." + }, + "zh-CN": { + "name": "dingtalk-event", + "summary": "钉钉事件长连接监听:个人 IM 消息、已读与撤回、表情回应、群成员与群状态变化,以及 OA 审批任务与实例事件。命令前缀 dws event。" + } + }, + "tags": [] + }, + "release": { + "state": "unknown" + } + }, + { + "identity": { + "kind": "skill", + "id": "dingtalk-mail", + "parentId": "dingtalk-cli" + }, + "path": "multi/dingtalk-mail", + "presentation": { + "defaultLocale": "en-US", + "i18n": { + "en-US": { + "name": "dingtalk-mail", + "summary": "DingTalk Mail: compose, send, read, search, reply to and forward mail, and handle unread items and attachments; resolve recipients with dingtalk-contact first. Command prefix: dws mail." + }, + "zh-CN": { + "name": "dingtalk-mail", + "summary": "钉钉邮箱:撰写发送、查阅、搜索、回复与转发邮件,处理未读邮件与附件;收件人先由 dingtalk-contact 解析确认。命令前缀 dws mail。" + } + }, + "tags": [] + }, + "release": { + "state": "unknown" + } + }, + { + "identity": { + "kind": "skill", + "id": "dingtalk-minutes", + "parentId": "dingtalk-cli" + }, + "path": "multi/dingtalk-minutes", + "presentation": { + "defaultLocale": "en-US", + "i18n": { + "en-US": { + "name": "dingtalk-minutes", + "summary": "DingTalk AI Minutes: read or edit summaries, transcripts, keywords, action items and recordings; upload audio, build mind maps, and review speaker insights and sharing permissions. Command prefix: dws minutes." + }, + "zh-CN": { + "name": "dingtalk-minutes", + "summary": "钉钉 AI 听记:查询或修改摘要、逐字稿、关键词、行动项与录音,上传音频、生成思维导图、查看发言人洞察与分享权限。命令前缀 dws minutes。" + } + }, + "tags": [] + }, + "release": { + "state": "unknown" + } + }, + { + "identity": { + "kind": "skill", + "id": "dingtalk-misc", + "parentId": "dingtalk-cli" + }, + "path": "multi/dingtalk-misc", + "presentation": { + "defaultLocale": "en-US", + "i18n": { + "en-US": { + "name": "dingtalk-misc", + "summary": "Long-tail product bundle: OA approvals, attendance, work reports, urgent DING messages, live streams, recruiting, goal management, sheets, whiteboards, native Markdown and a raw OpenAPI escape hatch. Command prefixes come from the skill's own product index." + }, + "zh-CN": { + "name": "dingtalk-misc", + "summary": "长尾产品集合:OA 审批、考勤、日志日报、DING 紧急消息、直播、招聘、目标管理、电子表格、白板、原生 Markdown 与 OpenAPI 逃生舱。命令前缀见技能内产品索引表。" + } + }, + "tags": [] + }, + "release": { + "state": "unknown" + } + }, + { + "identity": { + "kind": "skill", + "id": "dingtalk-shared", + "parentId": "dingtalk-cli" + }, + "path": "multi/dingtalk-shared", + "presentation": { + "defaultLocale": "en-US", + "i18n": { + "en-US": { + "name": "dingtalk-shared", + "summary": "Lightweight shared entry point for the DingTalk MultiSkill set: global execution contract, URL type pre-checks and product-boundary disambiguation for generic or cross-product requests." + }, + "zh-CN": { + "name": "dingtalk-shared", + "summary": "钉钉 MultiSkill 的轻量共享入口:提供全局执行契约、URL 类型预检与产品边界消歧,适用于泛称 DWS 操作或跨产品编排。" + } + }, + "tags": [] + }, + "release": { + "state": "unknown" + } + }, + { + "identity": { + "kind": "skill", + "id": "dingtalk-todo", + "parentId": "dingtalk-cli" + }, + "path": "multi/dingtalk-todo", + "presentation": { + "defaultLocale": "en-US", + "i18n": { + "en-US": { + "name": "dingtalk-todo", + "summary": "DingTalk To-Do: create, assign, batch-create and repeat tasks, mark them complete, and query open, urgent and overdue items. Command prefix: dws todo." + }, + "zh-CN": { + "name": "dingtalk-todo", + "summary": "钉钉待办:创建、指派、批量新建与循环待办,标记完成,查询待办、紧急待办与逾期待办。命令前缀 dws todo。" + } + }, + "tags": [] + }, + "release": { + "state": "unknown" + } + }, + { + "identity": { + "kind": "skill", + "id": "dingtalk-wiki", + "parentId": "dingtalk-cli" + }, + "path": "multi/dingtalk-wiki", + "presentation": { + "defaultLocale": "en-US", + "i18n": { + "en-US": { + "name": "dingtalk-wiki", + "summary": "DingTalk Wiki and space management: create and find knowledge bases, manage space members, and create, list, search, copy, move, delete and track nodes. Command prefix: dws wiki." + }, + "zh-CN": { + "name": "dingtalk-wiki", + "summary": "钉钉知识库与空间管理:创建与查找知识库、管理成员,以及库内节点的创建、列举、搜索、复制、移动、删除与动态查询。命令前缀 dws wiki。" + } + }, + "tags": [] + }, + "release": { + "state": "unknown" + } + } + ] + } + } +} diff --git a/skills/dingtalk-cli/entry.json b/skills/dingtalk-cli/entry.json new file mode 100644 index 0000000..fac15bf --- /dev/null +++ b/skills/dingtalk-cli/entry.json @@ -0,0 +1,204 @@ +{ + "id": "dingtalk-cli", + "name": "DingTalk Workspace CLI", + "category": "communication", + "icon": "", + "tags": [ + "open-dingtalk" + ], + "i18n": { + "zh-CN": { + "name": "钉钉 CLI", + "shortDesc": "钉钉官方命令行工具 dws,面向人与 AI Agent,覆盖消息、文档、钉盘、日历、待办、邮件、AI 听记等 29 个产品域、1200+ 工具。需自行用 npm 安装 dingtalk-workspace-cli 并完成钉钉 OAuth 授权登录(不支持账号密码登录);DesireCore 不打包、不授权、不安装也不代运营钉钉或该 CLI。" + }, + "en-US": { + "name": "DingTalk Workspace CLI", + "shortDesc": "Official DingTalk CLI (dws) for humans and AI agents, covering messaging, documents, drive, calendar, to-do, mail and AI minutes across 29 product domains and 1200+ tools. You install the dingtalk-workspace-cli npm package and complete DingTalk OAuth sign-in yourself (no username-and-password login); DesireCore does not bundle, license, install or operate DingTalk or this CLI." + } + }, + "maintainer": { + "name": "open-dingtalk", + "verified": false, + "account": "open-dingtalk", + "url": "https://www.npmjs.com/package/dingtalk-workspace-cli" + }, + "stewardship": "partner", + "license": "Apache-2.0", + "redistribution": "verify-package-terms", + "riskLevel": "high", + "source": { + "kind": "git", + "repoUrl": "https://github.com/open-dingtalk/dingtalk-workspace-cli.git", + "repoBranch": "main" + }, + "children": [ + { + "id": "dingtalk-aisearch", + "path": "multi/dingtalk-aisearch", + "i18n": { + "zh-CN": { + "shortDesc": "AI 搜问:按姓名、工号、部门、职责或上下级线索找人,并跨文档、消息、邮件与听记检索。命令前缀 dws aisearch。" + }, + "en-US": { + "shortDesc": "AI Search: find people by name, staff ID, department, duty or reporting line, and search across documents, messages, mail and AI minutes. Command prefix: dws aisearch." + } + } + }, + { + "id": "dingtalk-aitable", + "path": "multi/dingtalk-aitable", + "i18n": { + "zh-CN": { + "shortDesc": "钉钉 AI 表格(多维表):建表、字段与记录增删改查、筛选排序、批量导入导出、仪表盘图表与数据源同步。命令前缀 dws aitable。" + }, + "en-US": { + "shortDesc": "DingTalk AI Table (multi-dimensional base): create tables, manage fields and records, filter and sort, bulk import and export, dashboards and data-source sync. Command prefix: dws aitable." + } + } + }, + { + "id": "dingtalk-calendar", + "path": "multi/dingtalk-calendar", + "i18n": { + "zh-CN": { + "shortDesc": "钉钉日历与会议室:查询日程、创建或改期会议、预订会议室、查闲忙与共同空闲、增删参会人。命令前缀 dws calendar。" + }, + "en-US": { + "shortDesc": "DingTalk calendar and meeting rooms: list events, create or reschedule meetings, book rooms, check free/busy and shared availability, and manage attendees. Command prefix: dws calendar." + } + } + }, + { + "id": "dingtalk-chat", + "path": "multi/dingtalk-chat", + "i18n": { + "zh-CN": { + "shortDesc": "钉钉群聊与消息:收发、编辑与撤回消息,建群与群成员管理,话题回复,搜索聊天记录,机器人与 Webhook 通知。命令前缀 dws chat。" + }, + "en-US": { + "shortDesc": "DingTalk chats and messages: send, edit and recall messages, create and manage groups, threaded replies, chat history search, bots and webhook notices. Command prefix: dws chat." + } + } + }, + { + "id": "dingtalk-contact", + "path": "multi/dingtalk-contact", + "i18n": { + "zh-CN": { + "shortDesc": "钉钉通讯录精确查询:按 userId 查用户详情、部门、职位与邮箱,按完整手机号反查用户,查询本人、部门成员与角色。命令前缀 dws contact。" + }, + "en-US": { + "shortDesc": "Precise DingTalk directory lookups: user detail, department, title and email by userId, reverse lookup by full phone number, own profile, department members and roles. Command prefix: dws contact." + } + } + }, + { + "id": "dingtalk-doc", + "path": "multi/dingtalk-doc", + "i18n": { + "zh-CN": { + "shortDesc": "钉钉在线文档:查找、创建、读取与编辑正文和块,评论、附件、版本、模板、协作者权限与分享,以及 docx/markdown/pdf 导出。命令前缀 dws doc。" + }, + "en-US": { + "shortDesc": "DingTalk online documents: find, create, read and edit content and blocks; comments, attachments, versions, templates, collaborator permissions, sharing and docx/markdown/pdf export. Command prefix: dws doc." + } + } + }, + { + "id": "dingtalk-drive", + "path": "multi/dingtalk-drive", + "i18n": { + "zh-CN": { + "shortDesc": "钉钉文件管理(钉盘与文档空间):查找、上传下载、复制移动、重命名删除、回收站、权限与评论,以及本地目录比较与同步。命令前缀 dws drive。" + }, + "en-US": { + "shortDesc": "DingTalk file storage (DingDrive and document spaces): find, upload, download, copy, move, rename, delete, recycle bin, permissions, comments, and local folder compare and sync. Command prefix: dws drive." + } + } + }, + { + "id": "dingtalk-event", + "path": "multi/dingtalk-event", + "i18n": { + "zh-CN": { + "shortDesc": "钉钉事件长连接监听:个人 IM 消息、已读与撤回、表情回应、群成员与群状态变化,以及 OA 审批任务与实例事件。命令前缀 dws event。" + }, + "en-US": { + "shortDesc": "Long-lived DingTalk event streaming: personal IM messages, read receipts, recalls, reactions, group membership and state changes, plus OA approval task and instance events. Command prefix: dws event." + } + } + }, + { + "id": "dingtalk-mail", + "path": "multi/dingtalk-mail", + "i18n": { + "zh-CN": { + "shortDesc": "钉钉邮箱:撰写发送、查阅、搜索、回复与转发邮件,处理未读邮件与附件;收件人先由 dingtalk-contact 解析确认。命令前缀 dws mail。" + }, + "en-US": { + "shortDesc": "DingTalk Mail: compose, send, read, search, reply to and forward mail, and handle unread items and attachments; resolve recipients with dingtalk-contact first. Command prefix: dws mail." + } + } + }, + { + "id": "dingtalk-minutes", + "path": "multi/dingtalk-minutes", + "i18n": { + "zh-CN": { + "shortDesc": "钉钉 AI 听记:查询或修改摘要、逐字稿、关键词、行动项与录音,上传音频、生成思维导图、查看发言人洞察与分享权限。命令前缀 dws minutes。" + }, + "en-US": { + "shortDesc": "DingTalk AI Minutes: read or edit summaries, transcripts, keywords, action items and recordings; upload audio, build mind maps, and review speaker insights and sharing permissions. Command prefix: dws minutes." + } + } + }, + { + "id": "dingtalk-misc", + "path": "multi/dingtalk-misc", + "i18n": { + "zh-CN": { + "shortDesc": "长尾产品集合:OA 审批、考勤、日志日报、DING 紧急消息、直播、招聘、目标管理、电子表格、白板、原生 Markdown 与 OpenAPI 逃生舱。命令前缀见技能内产品索引表。" + }, + "en-US": { + "shortDesc": "Long-tail product bundle: OA approvals, attendance, work reports, urgent DING messages, live streams, recruiting, goal management, sheets, whiteboards, native Markdown and a raw OpenAPI escape hatch. Command prefixes come from the skill's own product index." + } + } + }, + { + "id": "dingtalk-shared", + "path": "multi/dingtalk-shared", + "i18n": { + "zh-CN": { + "shortDesc": "钉钉 MultiSkill 的轻量共享入口:提供全局执行契约、URL 类型预检与产品边界消歧,适用于泛称 DWS 操作或跨产品编排。" + }, + "en-US": { + "shortDesc": "Lightweight shared entry point for the DingTalk MultiSkill set: global execution contract, URL type pre-checks and product-boundary disambiguation for generic or cross-product requests." + } + } + }, + { + "id": "dingtalk-todo", + "path": "multi/dingtalk-todo", + "i18n": { + "zh-CN": { + "shortDesc": "钉钉待办:创建、指派、批量新建与循环待办,标记完成,查询待办、紧急待办与逾期待办。命令前缀 dws todo。" + }, + "en-US": { + "shortDesc": "DingTalk To-Do: create, assign, batch-create and repeat tasks, mark them complete, and query open, urgent and overdue items. Command prefix: dws todo." + } + } + }, + { + "id": "dingtalk-wiki", + "path": "multi/dingtalk-wiki", + "i18n": { + "zh-CN": { + "shortDesc": "钉钉知识库与空间管理:创建与查找知识库、管理成员,以及库内节点的创建、列举、搜索、复制、移动、删除与动态查询。命令前缀 dws wiki。" + }, + "en-US": { + "shortDesc": "DingTalk Wiki and space management: create and find knowledge bases, manage space members, and create, list, search, copy, move, delete and track nodes. Command prefix: dws wiki." + } + } + } + ] +}