CtrlK
BlogDocsLog inGet started
Tessl Logo

dingtalk-sheet

钉钉电子表格。Use when 用户说 电子表格/导入Excel为在线表格/工作表/单元格读写/单元格追加/查找/公式/超链接/插入图片/浮动图片/sheet。Distinct from dingtalk-aitable(AI表格/多维表/字段类型)、dingtalk-doc(普通文档)。命令前缀:dws sheet。

73

Quality

92%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

钉钉电子表格 Skill

🧪 EXPERIMENTAL · 试验版 / Preview — multi 模式当前未达 stable 标准。全部 dingtalk-* skill 已通过 dispatch verifier,但接口、命名、跨 skill 引用后续可能调整;生产 / 共享环境请优先使用 mono 模式(dws skill setup --mode mono)。问题请提 issue 反馈。

PREREQUISITE: Read the dws-shared skill first for auth, global flags, product routing, URL preflight, error codes, and safety rules. The dws binary must be on PATH.

⚠️ 命令可用性以当前 dws 二进制为准。服务发现已下线,本文档随内置 skill 发布;如果 dws <cmd> --help 不存在,说明当前版本未暴露该命令。若命令存在但调用失败,请按错误中的 endpoint 或 tool 提示确认静态端点目录和后端工具注册。实际调用前可用 dws <cmd> --help--dry-run 验证。

命令参考:sheet.md;URL 识别与类型探测:url-patterns.md

URL 预检(含 alidocs URL 时必读)

输入含 alidocs.dingtalk.com URL 时,该域名下存在多种路径格式:/i/p/...(分享短链)、/i/nodes/...(节点链接,类型需探测)、/spreadsheetv2/...(电子表格直链,直接路由到 sheet)、/document/edit|preview?dentryKey=...(文档链接,路由到 dingtalk-doc)等。必须先读 url-patterns.md 中的「alidocs URL 分流决策」,按规则识别 URL 类型;仅当确认是在线电子表格(/spreadsheetv2/...i/nodes/ 且 probe 出 contentType=ALIDOC + extension=axls)时,才继续走本 skill 的命令。

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

以下 shortcut 同时进入公开 catalog 与 Runtime Schema。先按本 skill 的意图表、脚本和 recipe 路由:存在精确覆盖该场景的专用脚本/recipe 时按其执行;否则用户意图命中时,shortcut 优先于手写原子命令。用 leaf Schema(例如 dws schema --cli-path "sheet +<shortcut>" --format json)读取 Agent 选择、参数、约束、风险和确认语义;用 dws shortcut list --service sheet --format json 批量发现;最后以 dws sheet <shortcut> --help 核对当前 Cobra flags。

Shortcut风险适用场景
dws sheet +list-sheetsread获取表格文档中全部工作表列表
dws sheet +readread读取工作表指定范围的结构化单元格数据

意图表

用户说命令
"创建电子表格"dws sheet create --name "<标题>"
"导入本地 Excel 为在线表格"dws sheet import create --file <xlsx或xls> --folder-token <ID>--workspace <ID>
"新建工作表"dws sheet new --node <nodeId或URL> --name "<sheet名>"
"读取单元格"dws sheet range read --node <nodeId或URL> --sheet-id <sheetId> --range A1:B2
"写入单元格"dws sheet range update --node <nodeId或URL> --sheet-id <sheetId> --range A1:B2 --values '[[..]]'
"结构化读取 / DataFrame 读取"dws sheet table-get --node <nodeId或URL> [--sheet-id <sheetId>]
"结构化写入 / DataFrame 写入"dws sheet table-put --node <nodeId或URL> --sheets '<JSON>'
"创建透视表 / 数据透视"dws sheet pivot-table create --node <nodeId或URL> --source "'Sheet1'!A1:D100" --properties '<JSON>'
"查看透视表"dws sheet pivot-table list --node <nodeId或URL> --sheet-id <sheetId>
"显示 / 隐藏网格线"`dws sheet show-gridline
"追加一行"dws sheet append --node <nodeId或URL> --sheet-id <sheetId> --values '[[..]]'
"查找 / 替换"dws sheet find --node <nodeId或URL> --sheet-id <sheetId> --find "<关键词>" / dws sheet replace --node <nodeId或URL> --sheet-id <sheetId> --find "<旧值>" --replacement "<新值>"
"插入图片到单元格"dws sheet write-image --node <nodeId或URL> --sheet-id <sheetId> --range A1:A1 --file <本地图片路径>(CLI 自动上传本地图片并写入单元格;没有 --resource-id/--resource-url 这两个 flag)

URL 与 ID 前置

  • 用户直接粘贴 alidocs.dingtalk.com URL 时,先执行 dws doc info --node "<URL>" --format json 探测;只有 contentType=ALIDOCextension=axls 才继续走 sheet
  • spreadsheetv2 链接不要截取短 path segment,必须把完整 URL 原样传给 --node
  • 写入类命令必须先用 dws sheet list --node <nodeId或URL> --format json 取得真实 sheetId;不要猜 Sheet1sheet10
  • 所有 sheet 子命令使用 --node 参数;不要写 --node-id--file-id 或把 JSON 字段名 id 当成节点值传入。

评测高频硬约束

  • sheet create 后必须从返回结果提取真实 nodeId 或文档 URL,后续 range update/read 原样传给 --node;如果返回里同时有 nodeIdurl,优先用 nodeId
  • 写入区域前先 sheet list --node <nodeId> --format json 获取真实 sheetId;写入后立即 range read 同一区域验证。
  • range update--values 必须是二维 JSON,行列数量与 --range 完全一致;批量样式用 range batch-set-style --batch <json文件>
  • 同一参数错误最多纠正 2 次;若持续 nodeId 格式不合法,回到 doc info --node <URL>sheet create 返回重新取 ID,不要无意义重试。

跨产品协作

  • 多维表 / 字段类型 → 切到 dingtalk-aitable
  • 把表数据写进文档 → 切到 dingtalk-doc
Repository
DingTalk-Real-AI/dingtalk-workspace-cli
Last updated
First committed

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.