Skip to content
AI & Agents
Skill

/dingtalk-wiki

钉钉知识库与空间管理。Use when 用户明确说 知识库/wiki/创建、查找或列出知识库/命名的团队知识空间/个人知识库/知识库成员/库内节点创建、列表、搜索、复制、移动、删除或知识库动态。仅说“文档空间/我的文档”不触发:普通存储管理与全局文件搜索走 dingtalk-drive;节点正文读写走 dingtalk-doc。命令前缀:dws wiki。

BOOST
From plugin
dingtalk-workspace-cli
3.2k17 skills
Install
$ npx -y skills add dingtalk-real-ai/dingtalk-workspace-cli --skill dingtalk-wiki --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/dingtalk-wiki

Context preview

The summary Claude sees to decide when to auto-load this skill.

钉钉知识库与空间管理。Use when 用户明确说 知识库/wiki/创建、查找或列出知识库/命名的团队知识空间/个人知识库/知识库成员/库内节点创建、列表、搜索、复制、移动、删除或知识库动态。仅说“文档空间/我的文档”不触发:普通存储管理与全局文件搜索走 dingtalk-drive;节点正文读写走 dingtalk-doc。命令前缀:dws wiki。

SKILL.md

dingtalk-wiki.SKILL.md
name: dingtalk-wiki
description: 钉钉知识库与空间管理。Use when 用户明确说 知识库/wiki/创建、查找或列出知识库/命名的团队知识空间/个人知识库/知识库成员/库内节点创建、列表、搜索、复制、移动、删除或知识库动态。仅说“文档空间/我的文档”不触发:普通存储管理与全局文件搜索走 dingtalk-drive;节点正文读写走 dingtalk-doc。命令前缀:dws wiki。
metadata:
  cli_version: ">=0.2.14"
  category: product
  requires:
    bins:
      - dws

钉钉知识库 Skill

<!-- DWS_RUNTIME_CONTRACT_START -->

最小 DWS 执行契约

  • 只用 `dws`;结构化读取加 `--format json`,按真实返回判断。
  • 已知命令直调;参数/约束/安全不明查 leaf 窄 Schema。Schema 不可用才读已知 leaf Help 一次;`unknown flag` 用同 leaf Help 修正一次。`unknown command` 不查 Help:优先错误中的明确 suggestion,其次已加载 Skill/reference 中的明确兼容入口;均无则报漂移并停,禁全 Catalog。低频 reference 不默认 Help,禁 root/parent/product Help。发现后必须执行或说明阻塞。
  • 不猜命令/flag/字段/ID/账号/业务事实;ID 来自真实返回。目标零命中/多候选/类型不明先消歧;仅可选时间/展示范围用契约默认,缺必需信息即停。
  • 解析/读/写同一 profile,ID 不跨组织。多账号只用唯一 `isOrgCurrent=true`;否则用户指定,禁止选择第一项、最近登录或最近使用账号。
  • 不输出/记录 token、refresh token、appSecret、webhook token;已注入认证时不索要。
  • 写须符合明确意图;确认以最终 Runtime gate/Schema 为准,确认后才加 `--yes`。
  • 写后验证结果,不凭退出码宣称成功。退出须最终答复,区分完成、部分、阻塞、待确认、失败;保留已有数据及 `complete/hasMore/stopReason/failures`。
  • 时间戳按会话时区展示,必要时保留原值。
  • 认证/权限/profile/confirmation/未知错误只读 `dingtalk-shared` 对应 reference,禁连续猜替代命令。

<!-- DWS_RUNTIME_CONTRACT_END -->

下方自动清单的“唯一”仅指单页匹配;`+resolve-space/+wiki-new-doc` 不承担写入前的权威唯一解析,按 Golden Route 解析后使用真实 workspaceId。

<!-- VISIBLE_SHORTCUTS_START -->

Shortcuts(无专用脚本/recipe 时优先)

以下 shortcut 同时进入公开 catalog 与 Runtime Schema。按本 skill/recipe 路由,命中时 Shortcut 优先于原子命令。参数只查 `dws schema --cli-path "wiki +<shortcut>" --compact --jq '{cli_path,parameters,constraints,confirmation}' -f json`;仅需且已发布 `result` 时查 `--jq '{cli_path,outcomes:.result.outcomes,pagination}'`,字段级再查 `data_schema`;缺失不以 Help/样例推断。Schema 不可用才读一次已知 leaf Help;`unknown flag` 用同 leaf Help 修正一次。`unknown command` 禁 Help:错误 suggestion → 已加载 Skill/reference 明确入口;均无则报漂移。禁全 Catalog/root/parent/product Help;仅映射、接口或 provenance 审计省略 `--compact`。现有路由和 reference 均无法定位低频能力时,才用 `dws shortcut list --service wiki --format json` 发现。

| Shortcut | 风险 | 适用场景 | |---|---|---| | `dws wiki +resolve-space` | read | 按名称搜索知识空间并解析单次结果中的唯一 spaceId(只读) | | `dws wiki +wiki-new-doc` | write | 在指定名称的知识库下新建一个文档节点(按单次名称搜索解析 workspaceId) | <!-- VISIBLE_SHORTCUTS_END -->

Golden Route

| 用户意图 | 唯一推荐入口 | 关键边界 | |---|---|---| | 按名称解析唯一知识库 | `+space-list --type <orgWikiSpace\|myWikiSpace> --limit 50 --page-all` 后精确匹配名称 | 先明确组织/个人范围;结果的 requestedType 必须等于请求范围;仅 `autoPageComplete=true` 且全量中恰好一个同名项时取 workspaceId | | 搜索或列出知识库 | `+space-search --query <关键词>` / `+space-list [--type orgWikiSpace\|myWikiSpace]` | 用户要求全部时加 `--page-all`;个人知识库必须明确语义 | | 为 Drive 发现钉盘存储空间 | `dws wiki space list --type <orgSpace\|mySpace> --format json` | managed 只读前置;返回 spaceId/rootFolderId 后切回 Drive,不进入 Wiki node/member 路由 | | 已知 workspace 查看详情 | `dws wiki +space-get --workspace <ID或URL>` | 已知 ID 不重复搜索 | | 创建或删除知识库 | `+space-create --name <名称>` / `+delete-space --workspace <ID>` | 创建会读回并验证空间类型;仅 `spaceTypeVerified=true` 时可断言类型。删除整个空间是高风险操作 | | 浏览或搜索库内节点 | `+node-list --workspace <ID> [--folder <ID>]` / `+node-search --workspace <ID> --query <词>` | 列目录与关键词搜索分开;需要完整列表或完整搜索结果都加 `--page-all` | | 查看节点元数据 | `dws wiki +node-get --node <ID或URL>` | 正文读写随后切 Doc | | 已知 workspace 创建节点 | `+node-create --workspace <ID> --name <名称> [--type <类型>]` | 支持 adoc/axls/able/appt/adraw/amind/folder;创建后验证 ID、workspace、名称、类型及显式父文件夹 | | 只有知识库名称时新建空文档 | 先按全量 `+space-list` 唯一解析,再 `+node-create --workspace <ID> --name <标题> --type adoc` | 不用单页 `+wiki-new-doc` 猜空间;正文另走 Doc | | 用本地文件在新知识库建文档后移到“我的文档” | `+space-create` → `doc +import --file <相对路径> --workspace <新workspaceId>` → `+move-to-drive --workspace <新workspaceId> --node <导入nodeId>` | 必须先把文档真实导入新知识库再移出;禁止先查 `mySpace`、禁止 `doc +create` 在个人域创建后用 `drive +move` 冒充该流程 | | 复制、移入知识库或将 Wiki 在线节点移出到“我的文档” | `+node-copy` / `+move` / `+move-to-drive` | “Wiki 节点 → 我的文档”固定使用 `+move-to-drive`,已知来源 workspace 时可传 `--workspace` 作写前归属断言;不可改用 mySpace/rootFolderId + `drive +move` | | 知识库首页放独立普通附件 | `dws drive upload --file <本地文件> --workspace <ID> --format json` | 不加 `--convert`;子目录加 `--folder <目录nodeId>`。正文内附件切 Doc 媒体,转换在线文档切 Doc 导入 | | 删除库内节点 | `+node-delete --workspace <ID> --node <ID>` | 删除前核对归属并确认 | | 列出、添加、修改或移除知识库成员 | `member list` / `+member-add` / `+member-update` / `+member-remove` | 写入 users 为 1-30 个;添加/修改须指定角色,移除不传角色;多类型、逐成员角色或通知用原生 member | | 设置知识库空间分享范围 | `dws wiki permission set-share-scope --workspace <ID> --visibility <PRIVATE\|ORGANIZATION\|PUBLIC>` | [危险] 作用于整个空间及其下未打断继承节点;PRIVATE 关闭会抹除未打断继承节点原有档位,空间如需恢复公开须重设;PUBLIC 仅 READER/DOWNLOADER;返回体已回显写入结果 | | 查看知识库动态 | `+feed-list --workspace <ID> [--exclude-file]` | 全部动态加 `--page-all`;仅用户明确要求核对过滤效果时比较两组结果,未过滤结果须实际包含该文件事件 |

当前最短路径

  • 已知 workspaceId(含本轮创建回执):直接执行 space/node/member/feed 目标命令,不再 resolve,也不把名称传给 `--workspace`。用户另要求“按名称查找”时仍完成该查找步骤;已有 ID 不等于可以省略明确要求。
  • 只有知识库名称:先明确组织/个人范围,按 Golden Route 对应分支核对完整名称;未知范围先消歧,不同时扫描两个范围并猜测。
  • `+space-search` 只用于快速浏览候选;当前 `+resolve-space/+wiki-new-doc` 不暴露名称搜索的分页完成证据,不作为权威唯一解析或写入 Golden Route。
  • 已知 nodeId/URL:元数据直接 `+node-get`;正文直接切 Doc,不先 list/search。
  • 创建节点后返回的 nodeId 直接传给 Doc;不通过同名搜索重新定位。创建文件夹的 `nodeId` 才是后续 `--folder`,回执 `folderId` 是它的父目录;`+node-copy/+move` 的“本库首页”使用当前 workspace 并省略 `--folder`,移出另用 `+move-to-drive`。
  • “本地文件 → 新知识库 → 我的文档”是有序跨产品流程:创建空间返回 workspaceId 后,必须 `doc +import --workspace` 取得库内 nodeId,再 `wiki +move-to-drive --workspace`;任何一步都不得在个人域提前创建或用 Drive 根目录移动替代。
  • move/copy/delete 已含预检或读回时,不由 Agent 重复拼装原子命令。
  • 普通“文档空间/我的文档”的文件操作按存储意图走 Drive;但源对象已确定是 Wiki workspace 中的在线节点、目标是移出到“我的文档”时是明确例外,直接用 `wiki +move-to-drive`,不查询 `mySpace`、不调用 `drive +move`。仅普通 Drive 节点缺少 spaceId/rootFolderId 时才用 managed `wiki space list --type orgSpace|mySpace` 发现空间。

关键结果语义

  • `+space-list/+node-list/+node-search/+feed-list` 默认单页;全量请求显式加 `--page-all`,并检查 `autoPageComplete/autoPageStopReason/pagesFetched` 与分页元数据。
  • `+space-list` 顶层 `requestedType` 是本次服务端查询的类型范围;条目级 `spaceType` 只在服务端真实返回时出现,不能用请求值伪造。用列表缺席证明空间不存在前,必须同时满足范围正确和 `autoPageComplete=true`。
  • `+space-create` 只有返回 `spaceTypeVerified=true` 时才能使用 `spaceType`;类型验证失败会保留已创建的 workspaceId,禁止重试创建或按名称猜类型
Read more
Ships withdingtalk-workspace-cli

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 designed for both human users and AI agent scenarios.

Get the whole plugin
Stats
3,210
Stars
251
Forks
Active
Maintenance
Go
Language
Apache-2.0
License
2d ago
Last commit
6mo ago
Created
6h ago
Added

Repo: dingtalk-real-ai/dingtalk-workspace-cli

Other skills on dingtalk-workspace-cli.