重要前提
安装AI Skills的关键前提是:必须科学上网,且开启TUN模式,这一点至关重要,直接决定安装能否顺利完成,在此郑重提醒三遍:科学上网,科学上网,科学上网。查看完整安装教程 →
npx skills add https://github.com/aliramw/dingtalk-docs --skill dingtalk-docs用户可能要求你创建、搜索、读取或编辑钉钉云文档。操作之间存在严格依赖关系:必须先获取 ID 才能执行后续操作。
https://alidocs.dingtalk.com/i/nodes/{dentryUuid}| 方法 | 用途 | 必填参数 | 可用性 |
|---|---|---|---|
get_my_docs_root_dentry_uuid |
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
| 获取"我的文档"根目录 ID |
| 无 |
| 稳定可用 |
list_accessible_documents | 搜索有权限的文档 | 无 (keyword 选填) | 稳定可用 |
create_doc_under_node | 创建在线文档 | name, parentDentryUuid | 稳定可用 |
create_dentry_under_node | 创建节点 (文档/表格/文件夹等) | name, accessType, parentDentryUuid | 稳定可用 |
write_content_to_document | 写入文档内容 (覆盖或续写) | content, updateType, targetDentryUuid | 稳定可用 |
get_document_content_by_url | 通过 URL 获取文档 Markdown 内容 | docUrl | 灰度中,部分实例不可见 |
根据 GitHub issue #1 下维护者的明确回复:get_document_content_by_url 目前在灰度中,全量还需要一点时间 。
因此你必须按下面规则处理:
get_document_content_by_url,不要先判断为权限缺失用户说"创建文档/新建文档/写个文档/帮我建个文档":
用户说"建文件夹/新建目录/整理一下文档":
用户说"创建表格/建个PPT/做个脑图":
关键区分: 在线表格(accessType="1") vs 多维表(accessType="7") vs 文档(用 create_doc_under_node)
用户说"搜索/找文档/查一下/有没有某个文档":
用户说"读文档/看看内容/打开文档/这个文档写了什么":
get_document_content_by_urlget_document_content_by_url → 明确告诉用户:该读取能力目前仍在官方灰度中,你的实例暂未放开 ,不要把原因归咎于用户配置用户说"写入/更新内容/编辑文档/往文档里加点东西":
创建文档并写入:
搜索并读取(仅当 get_document_content_by_url 已放量可用时):
如果当前实例没有 get_document_content_by_url:
创建文件夹并整理:
| 操作 | 从返回中提取 | 用于 |
|---|---|---|
| get_my_docs_root_dentry_uuid | rootDentryUuid | create_doc_under_node / create_dentry_under_node 的 parentDentryUuid |
| create_doc_under_node | dentryUuid | write_content_to_document 的 targetDentryUuid,拼 URL 读内容 |
| create_dentry_under_node | dentryUuid | 作为子节点的 parentDentryUuid |
| list_accessible_documents | docs[].dentryUuid | 拼成 https://alidocs.dingtalk.com/i/nodes/{dentryUuid} 用于读取 |
// [正确] docUrl 必须是完整 URL
{"docUrl": "https://alidocs.dingtalk.com/i/nodes/DnRL6jAJ..."}
// [错误] 只传 ID → 报错
{"docUrl": "DnRL6jAJ..."}
// [正确] accessType 是字符串
{"name": "报表", "accessType": "1", "parentDentryUuid": "xxx"}
// [错误] accessType 传数字 → 静默失败
{"name": "报表", "accessType": 1, "parentDentryUuid": "xxx"}
// [正确] updateType 是数字
{"content": "...", "updateType": 0, "targetDentryUuid": "xxx"}
// [错误] updateType 传字符串 → 静默失败
{"content": "...", "updateType": "0", "targetDentryUuid": "xxx"}
scripts/ 目录中的辅助脚本会处理本地文件输入 / 输出:
import_docs.py 会读取工作区内的 .md / .txt / .markdown 文件并导入到钉钉文档export_docs.py 会将钉钉文档内容导出为工作区内的本地 Markdown 文件create_doc.py 会调用 mcporter 创建文档并写入内容这些脚本都受以下规则约束:
resolve_safe_path() 防止目录遍历mcporter 调用 MCP 服务,不直接发起网络请求get_document_content_by_url:按官方灰度未放量 处理,不要误报为本地配置错误Weekly Installs
18
Repository
GitHub Stars
18
First Seen
9 days ago
Security Audits
Installed on
opencode17
gemini-cli17
github-copilot17
codex17
amp17
cline17
Skills CLI 使用指南:AI Agent 技能包管理器安装与管理教程
48,700 周安装