Wecomcli Disk logo

Wecomcli Disk

OrganizationPopular
Pinvou
wecomcli-disk

何时用:仅当用户明确指向企业微信微盘/网盘/共享空间或给出 drive.weixin.qq.com 链接时使用;泛指文件管理默认走本地文件工具。微盘文件级操作:列出、搜索、读取元信息、上传、下载、重命名、新建文件夹;在线文档内容读写走 doc/sheet/smartsheet/smartpage 对应技能,不由本技能接管。

Overview

PublisherPinvou
Repositorypinvou-agent
Skill namewecomcli-disk
Stars
2K
Forks
281
Bundled files
Instructions only
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • Self-contained

    Everything the model needs lives in the instructions — no extra files to sync.

  • Open source

    Published by Pinvou on GitHub. Read the source before you install it.

Installation

Install the Wecomcli Disk AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/Pinvou/pinvou-agent.git /tmp/pinvou-agent
mkdir -p .claude/skills
cp -r /tmp/pinvou-agent/pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-disk .claude/skills/wecomcli-disk
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Wecomcli Disk in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Wecomcli Disk on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Wecomcli Disk is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

企业微信微盘

执行任何 wecom-cli 命令前,必须先读取并完成 wecomcli-shared 技能的公共前置检查。

资源型 skill,负责微盘文件的列出、搜索、读取信息、上传、下载、重命名与新建文件夹。

适用范围

适用

  • 列出微盘最近查看的文件
  • 按关键词/类型/创建者/共享空间搜索微盘文件或文件夹
  • 读取微盘文件基础信息
  • 上传本地文件到微盘指定文件夹
  • 下载微盘文件到本地
  • 重命名微盘文件
  • 在微盘中新建文件夹

不适用

  • 移动微盘文件或文件夹 → 告知用户暂未支持,建议前往企业微信客户端手动操作
  • 删除微盘文件 / 复制微盘文件 → 告知用户暂未支持,建议前往企业微信客户端手动操作
  • 删除 / 重命名微盘文件夹(folder)、调整目录树结构 → 告知用户暂未支持,建议前往企业微信客户端手动操作
  • 创建 / 删除共享空间(space)、修改空间成员与空间设置 → 告知用户暂未支持,建议前往企业微信客户端手动操作
  • 给机器人授予某空间的权限 / 把机器人加入共享空间成员 → 微盘没有该功能,任何渠道都做不到(客户端也不行)。禁止向用户提出这类建议,也不要引导用户"联系空间管理员给机器人授权"
  • 修改文件分享权限、生成分享链接、撤销分享、设置访问密码 / 有效期 → 告知用户暂未支持,建议前往企业微信客户端手动操作
  • 微盘文件版本管理(查看历史版本、恢复旧版本、比对版本) → 告知用户暂未支持
  • 撤销 / 修改已上传的文件(覆盖上传 / 秒传 / 断点续传) → 告知用户暂未支持;如需替换,请重新走「上传文件」上传一份新文件
  • 解析微盘文件的内容(正文提取、OCR、看图问答、PDF/Word/Excel 解析等) → 本 skill 负责把文件下载到本地拿 file_path
  • 视频 / 音频文件的转写或字幕生成 → 告知用户暂未支持
  • 持续监视微盘变更 / 实时通知新文件到达 → 无法主动监视,不要承诺「有新文件时告知你」,请让用户稍后主动再次发起查询

路由决策(判断本 skill / 其他 skill)

用户输入信号路由到
明确提"微盘 / 网盘 / disk / Wecom 网盘"本 skill
提供 https://drive.weixin.qq.com/s?k=... 链接(微盘分享 URL)本 skill(作为 get / downloadurl 入参)
提供 https://doc.weixin.qq.com/<doc|sheet|smartsheet|smartpage>/... 链接对应 wecomcli-doc / wecomcli-sheet / wecomcli-smartsheet / wecomcli-smartpage
在线文档 doc / sheet / smartsheet / smartpage 的读写内容同上对应文档 skill
改文档权限 / 加成员 / 改文档名(针对 doc/sheet/smartsheet/smartpage)wecomcli-doc-manage

注意:doc.weixin.qq.com / page.weixin.qq.com 是在线文档域名,drive.weixin.qq.com 才是微盘域名,切勿混用。

文件类型枚举

doc(在线文档)、sheet(在线表格)、ppt(在线幻灯片)、collect(收集表)、mind(思维导图)、flow(流程图)、smartsheet(智能表格)、smartpage(智能主页)、journal(汇报)、pdf(PDF)、offline_word(离线 Word)、offline_excel(离线 Excel)、offline_ppt(离线 PPT)、offline_pdf(离线 PDF)、image(图片)、videoaudio(视频音频)、design(设计稿)。在线文档保持原名,离线文件用 offline_ 前缀区分。腾讯文档不在本 skill 范围,按【路由决策】表改走对应文档 skill。

在线/离线模糊时同时搜:用户说「Excel」「Word」「PPT」「PDF」等未明确在线还是离线时,file_types 同时传入在线版和离线版(如 ["sheet", "offline_excel"]),避免遗漏。其余类型按上方枚举名按字面对应传入即可。

接口详述

列出文件

获取用户微盘最近查看的文件列表,支持分页。

命令

bash
wecom-cli disk files list --json '{"limit": 10}'

入参

字段类型必填默认值说明
cursorstring""分页游标;不传或传空串则获取首页数据
limitnumber10每页返回的最大条数;不传则使用服务默认值,最大 100

返回

字段类型说明
has_moreboolean是否还有更多数据;true 时用 next_cursor 续取
next_cursorstring下一页游标
files[].idstring文件 ID 或文件夹 ID
files[].file_namestring文件名称
files[].docidstring文档 ID,仅 type=smartsheet / smartpage / sheet / word / ppt / collect / journal 时有意义
files[].typestring文件类型:file / folder / space / smartsheet / smartpage / sheet / word / ppt / collect / journal / flow / mind
files[].file_sizenumber文件大小(字节);仅 type=file 时有意义
files[].creator_useridstring创建者 userid
files[].space_idstring所属共享空间 ID
files[].space_namestring所在共享空间名称
files[].folder_idstring所在文件夹 ID
files[].folder_namestring所在文件夹名称
files[].create_timestring创建时间,YYYY-MM-DD HH:mm:ss
files[].update_timestring最后更新时间,YYYY-MM-DD HH:mm:ss
files[].pathstring文件完整路径
files[].doc_urlstring文档打开链接,仅在线文档类型(smartsheet / smartpage / sheet / word / ppt / collect / journal)时填充

搜索文件

按关键词、文件类型、创建者、共享空间、排序等条件搜索微盘文件、文件夹或共享空间。

命令

bash
wecom-cli disk files search --json '{"keywords": ["季度汇报"], "search_type": "file", "sort_by": "modify_time", "sort_order": "desc", "limit": 10}'

入参

字段类型必填默认值说明
keywordsstring[]选填字面关键词数组,长度 0~20(or 关系);与 creator_userids / search_type / file_types 四选一,至少传一个
creator_useridsstring[]选填限定创建者 userid 列表,长度 0~50,不传则不过滤;与 keywords / search_type / file_types 四选一,至少传一个;用户给的是姓名时通过 wecomcli-contact 解析为 userid
search_typestring选填all查询范围枚举:all / file(文件)/ folder(文件夹)/ space(共享空间);与 keywords / creator_userids / file_types 四选一,至少传一个
file_typesstring[]选填限定文件类型,长度 0~10;可选 doc / sheet / ppt / collect / mind / flow / smartsheet / smartpage / journal / pdf / offline_word / offline_excel / offline_ppt / offline_pdf / image / videoaudio / design(在线文档保持原名,离线文档用 offline_ 前缀区分);不得传枚举外的值;与 keywords / creator_userids/ search_type 四选一,至少传一个
space_keywordsstring[]限定所在空间名称的关键词,长度 0~10,or 关系;命中的 space 会被作为搜索范围;不传则不限空间;附加过滤条件,不能单独触发搜索
sort_bystringbest_match排序方式:best_match / modify_time / file_size;不得传枚举外的值
sort_orderstringdesc排序方向:asc / desc;仅在 sort_by=modify_timefile_size 时需传
cursorstring分批拉取增量 key,上一次请求返回的 next_cursor;不传则从头开始
limitnumber10每页最大返回条数,最大 100

返回

字段类型说明
has_moreboolean是否还有更多数据;true 时用 next_cursor 续取
next_cursorstring下一页游标
files[].idstring微盘文件 ID / 文件夹 ID / 空间 ID
files[].typestring命中项类型:file / folder / space / smartsheet / smartpage / sheet / word / ppt / flow / mind / journal / collect
files[].file_namestring名称(文件名 / 文件夹名 / 空间名)
files[].file_sizenumber文件大小(字节),仅 type=file 时有意义
files[].creator_useridstring创建者 userid
files[].space_idstring所在共享空间 ID
files[].space_namestring所在共享空间名称
files[].folder_idstring所在父文件夹 ID;位于空间根目录时等于 space_id
files[].folder_namestring所在文件夹名称
files[].pathstring文件完整路径;space_namefolder_name 同名时不一定是父子关系,可能平级,以 path 为准判断层级
files[].create_timestring创建时间,YYYY-MM-DD HH:mm:ss
files[].update_timestring最近更新时间,YYYY-MM-DD HH:mm:ss
files[].docidstring文档 ID,仅 type=smartsheet / smartpage / sheet / word / ppt / collect / journal 时有意义
files[].doc_urlstring文档打开链接,仅在线文档类型时填充;可直接作为在线文档分享链接发送给用户/群,无需额外处理
files[].title_highlightstring[]标题命中关键词的高亮摘要片段;type=space 时为空
files[].text_highlightstring[]正文命中关键词的高亮摘要片段;type=space 时为空

在线文档命中项处理约束——极重要:搜索返回的 type 若为 smartsheet / smartpage / sheet / word / ppt / journal / collect / mind / flow,这些是在线协作文档(正文存云端,非二进制文件),禁止disk files download(会失败或拿到空壳),也不适合走 disk files get。其中 smartsheet / smartpage / sheet / word 有对应的下游 skill 可读正文,路由见文末【跨技能依赖】表;ppt / journal / collect / mind / flow 目前没有任何下游 skill 或 CLI 能读取正文,命中这些类型且用户要看内容时,直接告知暂不支持读取,引导用户用 doc_url 在企业微信客户端内打开查看。仅当 type=file 时才可用 id 作为 file_iddisk files download 拿本地文件。

使用规则

  • 触发条件(唯一权威描述)keywords / creator_userids / search_type / file_types 四选一,至少传一个space_keywords 只是附加过滤条件,不能单独触发搜索。若四者全空则用自然语言追问后再发起搜索。若用户仅给出空间关键词(如「在 XX 空间里搜一下」),可用自然语言追问具体搜索内容。

  • 多次搜不到就如实告知:多次调整关键词/类型后仍无结果时,停止搜索,如实告知用户是「搜不到文件」还是「搜不到该空间」,不要反复换词硬搜。

  • 可选参数传值策略——默认不传,仅在用户明确点名时才传

    参数何时不传(后端默认)何时传(用户明确表达时)
    search_type用户笼统说"搜一下 xxx / 找 xxx / 文件 / 资料"等未明确对象类型 → 后端按 all明确说"只搜文件夹 / 目录"→folder;"只搜共享空间 / 团队空间"→space;"只要文件,不要文件夹"→file
    sort_by用户无排序偏好 → 后端按 best_match"最新 / 最近改 / 最早"→modify_time;"最大 / 最小"→file_size
    sort_ordersort_by=best_match 时无需传modify_time / file_size 时按新→旧用 desc、旧→新用 asc;不传则默认 desc
    file_types用户笼统说"文档 / 文件 / 资料 / 材料"或业务概念(合同 / 报告 / 会议纪要)→ 不过滤,靠 keywords 兑现用户明确点到具体形态(PPT / Excel / PDF / 图片 / 智能表格 等),把对应枚举一并塞入数组
    space_keywords不限空间时用户说"在 XX 空间 / XX 团队盘里搜" → 填空间名关键词(本接口不接受 space_id
  • keywords 不要混入文件类型后缀:用户说「搜一下 Excel 报告」「找 PPT 方案」时,文件类型后缀(Excel/PPT/Word/PDF)交给 file_types 过滤,keywords 只保留业务关键词(如「报告」「方案」)。例:「Excel 报告」→ keywords:["报告"] + file_types:["sheet","offline_excel"]

  • file_types 口语→枚举映射:见上方「可选参数传值策略」表的 file_types 行(用户口语 → file_types 取值的映射)。

  • 分页续传has_more=true 时用 next_cursor 作为下一次调用的 cursor;首次调用 cursor 传空串。

  • 不支持时间范围过滤:本接口没有 begin_time / end_time 字段,禁止伪造;若用户给出"最近 3 天 / 上周 / 本月"等时间范围,先按 sort_by=modify_time, sort_order=desc 拉取,再由客户端根据 update_time 二次筛选。

  • 结果总结顺序跟随排序方向sort_order=desc(默认,新→旧)时,向用户总结结果也应从最新到最旧展示,不要颠倒顺序。

读取文件信息

根据 file_id 或微盘文件 URL 读取文件基础信息。

命令

bash
wecom-cli disk files get --json '{"file_id": "FILE_ID"}'

入参

字段类型必填默认值说明
file_idstring二选一文件 ID;与 url 二选一;同时提供时优先使用 file_id
urlstring二选一微盘文件分享 URL(形如 https://drive.weixin.qq.com/s?k=AJEAIQdfAAoN4N17GM);与 file_id 二选一

返回

字段类型说明
file.idstring文件 ID 或文件夹 ID
file.file_namestring文件名称
file.docidstring文档 ID,仅 type=smartsheet / smartpage / sheet / word / ppt / collect / journal 时有意义
file.typestring文件类型:file / folder / space / smartsheet / smartpage / sheet / word / ppt / collect / journal / flow / mind
file.file_sizenumber文件大小(字节);仅 type=file 时有意义
file.creator_useridstring创建者 userid
file.space_idstring所属共享空间 ID
file.space_namestring所在共享空间名称
file.folder_idstring所在文件夹 ID,可能为文件夹 file_id 或空间 space_id
file.folder_namestring所在文件夹名称
file.create_timestring创建时间,YYYY-MM-DD HH:mm:ss
file.update_timestring最后更新时间,YYYY-MM-DD HH:mm:ss
file.pathstring文件完整路径
file.doc_urlstring文档打开链接,仅在线文档类型(smartsheet / smartpage / sheet / word / ppt / collect / journal)时填充

上传文件

将本地文件上传到微盘指定目录。支持两种上传方式:A. 素材方式 上下文中已有 media_id 时直接传 file_content_mediaB. 本地路径方式 直接传 file_path。两者二选一。

命令

bash
wecom-cli disk files upload --json '{"folder_id": "FOLDER_ID", "file_name": "季度汇报.pptx", "file_content_media": "mcxxx"}'

或直接使用本地文件路径:

bash
wecom-cli disk files upload --json '{"folder_id": "FOLDER_ID", "file_name": "季度汇报.pptx", "file_path": "/tmp/季度汇报.pptx"}'

入参

字段类型必填默认值说明
folder_idstring目标文件夹 ID;可传文件夹 file_id 或空间 space_id;不传则默认上传到默认空间
file_namestring条件必填文件名称(含扩展名);长度 1~255;禁止包含字符 / \ : * ? " < > |;传 file_path 时不传则从路径自动提取,传 file_content_media 时必填
file_content_mediastring二选一文件素材的 media_id(前缀 mc),禁止自行构造或猜测;与 file_path 二选一
file_pathstring二选一本地文件绝对路径;与 file_content_media 二选一,两者必须提供其一

返回

字段类型说明
file.idstring上传后的文件 ID
file.file_namestring文件名称
file.docidstring文档 ID,仅 type=smartsheet / smartpage / sheet / word / ppt / collect / journal 时有意义
file.typestring文件类型
file.file_sizenumber文件大小(字节);仅 type=file 时有意义
file.creator_useridstring创建者 userid
file.space_idstring所属共享空间 ID
file.space_namestring所在共享空间名称
file.folder_idstring所在文件夹 ID
file.folder_namestring所在文件夹名称
file.create_timestring创建时间
file.update_timestring最后更新时间
file.pathstring文件完整路径
file.doc_urlstring文档打开链接,仅在线文档类型时填充

使用规则

上传分两条路径,按用户手上的素材形态选一条即可:

路径 A:素材方式(file_content_media

适用场景:上下文中已有可用的 media_id(前置技能返回的、或用户直接给出的),无需再走 media +upload

  1. 确认 folder_id:用户没提供时不传则默认上传到默认空间
  2. 直接把已有的 media_id 填入 file_content_media,调 disk files upload

路径 B:本地路径方式(file_path

  1. 用户已经明确给出本地文件路径(或前置技能返回了本地 file_path,例如 disk files download 下载后的路径)时可直接使用
  2. 确认 folder_id:用户没提供时不传则默认上传到默认空间
  3. 直接把本地路径填入 file_path,调 disk files upload(不需要再走 wecomcli-media

二选一互斥file_content_mediafile_path 只能选其中之一,不能同时传,也不能都不传。用户既没给 media_id 也没给本地文件路径时用自然语言追问,禁止靠搜索/幻觉凑一个文件。

下载文件

将微盘文件下载到本地,返回本地文件路径。

命令

bash
wecom-cli disk files download --json '{"file_id": "FILE_ID"}'

入参

字段类型必填默认值说明
file_idstring二选一要下载的文件 ID,与 url 二选一;不传则必须传 url
urlstring二选一文件 URL,与 file_id 二选一;不传则必须传 file_id

返回

字段类型说明
file_pathstring框架保存为本地文件后返回的文件路径
file_contentstring文件内容(内容不长时直接返回字符串)
sizenumber文件大小,单位字节

使用规则

  • 仅适用于离线二进制文件:只有 type=file(对应 file_types 中的 offline_word / offline_excel / offline_ppt / offline_pdf / image / videoaudio / design)才能通过本接口下载到本地。
  • 在线文档形态一律不走下载:若搜索返回的 typesmartsheet / smartpage / sheet / word / ppt / journal / collect / mind / flow禁止把它们的 iddoc_urlfile_id / url 传入本接口,会失败或拿到无效文件。其中 smartsheet / smartpage / sheet / word 要读取内容请按文末【跨技能依赖】表用 docid 路由到对应的下游文档技能;ppt / journal / collect / mind / flow 目前没有下游技能可读正文,直接告知用户暂不支持,引导其用 doc_url 在企业微信客户端内打开查看。
  • URL 形态识别:只有 https://drive.weixin.qq.com/s?k=... 是微盘文件分享 URL,可作为 url 参数;https://doc.weixin.qq.com/... / https://page.weixin.qq.com/... 都是在线文档链接,禁止传入本接口。

重命名文件

修改微盘文件名称。

命令

bash
wecom-cli disk files rename --json '{"file_id": "FILE_ID", "new_name": "新文件名称.xlsx"}'

入参

字段类型必填默认值说明
file_idstring文件 ID(必填)
new_namestring新的文件名称(必填,含扩展名);长度 1~255;禁止包含字符 / \ : * ? " < > |

返回

字段类型说明
statusstring操作结果,成功时为 "success"

本接口不返回 file 对象;如需最新元数据,可再走「读取文件信息」。

创建文件夹

在微盘指定目录下创建新文件夹。

命令

bash
wecom-cli disk folders create --json '{"folder_id": "FOLDER_ID", "folder_name": "新建文件夹"}'

入参

字段类型必填默认值说明
folder_idstring选填目标父文件夹 ID;可传文件夹 file_id 或空间 space_id,不传则默认创建到个人空间根目录
folder_namestring文件夹名称

返回

字段类型说明
folder.idstring文件夹 ID
folder.file_namestring文件夹名称
folder.docidstring文档 ID,仅在线文档类型时有意义
folder.typestring文件类型:folder
folder.file_sizenumber文件大小(字节);仅 type=file 时有意义
folder.creator_useridstring创建者 userid
folder.space_idstring所属共享空间 ID
folder.space_namestring所在空间名;对空间有权限时才返回,与 space_id 同时出现
folder.folder_idstring所在父文件夹 ID,可能为文件夹 file_id 或空间 space_id
folder.folder_namestring所在父文件夹名;对父文件夹有权限时才返回,与 folder_id 同时出现
folder.create_timestring创建时间,YYYY-MM-DD HH:mm:ss
folder.update_timestring最后更新时间,YYYY-MM-DD HH:mm:ss
folder.pathstring文件夹完整路径
folder.doc_urlstring文档打开链接,仅在线文档类型时填充

关键约束

  • 文件名不是 file_id:用户给的是文件名/关键词时,先走 disk files searchfile_id,禁止把文件名直接当 file_id 拼接。
  • 上传素材来源约束uploadfile_content_mediafile_path 二选一,两者必须提供其一,不能同时传。file_content_media 必须是合法的 media_id(前缀 mc),禁止自行构造或猜测;file_path 只能是用户明确给出或前置技能返回的真实本地文件路径,禁止编造。两者都没有时用自然语言追问,禁止靠搜索/幻觉凑一个文件。
  • 搜索必须有界:一组条件搜完必要时再调整一次;2~3 轮仍无结果就停下来如实告知用户"未搜到",并请用户提供更准确的关键词/文件类型/创建者,禁止无限换关键词硬搜。
  • CLI 报错原样转达:命令返回明确错误码时如实告知用户并给替代建议,禁止用 curl / python 等通用手段绕过 CLI 强行完成。
  • 内部 ID 不外露creator_userid / space_id / folder_id / file_id / docid 等任何 ID 仅用于后续接口调用,禁止直接展示给用户;creator_userid 若需展示创建者信息,先用 wecomcli-contact 解析为姓名。
  • 重名空间/文件夹时追问:搜索返回多个同名空间或文件夹时,用自然语言追问让用户选择具体目标,禁止随意选第一个或猜一个。
  • 参数缺失 / 多候选 / 意图确认:用自然语言追问让用户明确,不要瞎猜。

结果展示规范

向用户展示 list / search 结果时严格遵守:

  • 用 markdown 无序列表逐条展示,禁止使用表格——最多展示 10 条。
  • 每条首行:该项返回的 doc_url 非空时(在线文档),写成 - [文件名](doc_url) 形式的 markdown 链接;doc_url 为空时(离线文件、文件夹、空间等),写成 - 文件名,不得编造链接。副行可展示 path / update_time / 可读的 file_size(如 2.4 MB),字段之间用 · 或空格分隔。
  • 禁止直接展示原始 JSON、creator_userid / space_id / folder_id / id 等内部 ID。

跨技能依赖

依赖技能何时触发使用被依赖 skill 做什么
wecomcli-doc搜索命中项 type=word(在线文档;入参 file_types 才用 doc),用户要"读一下内容"拿返回的 docid 交给 wecom-cli doc 'contents get' 读取正文(docida1_ / b1_ 开头的除外,走 wecomcli-smartpage
wecomcli-sheet搜索命中项 type=sheet(在线表格),用户要读内容拿返回的 docid 交给 wecomcli-sheet 对应读取接口
wecomcli-smartsheet搜索命中项 type=smartsheet(智能表格),用户要读内容拿返回的 docid 交给 wecomcli-smartsheet 对应读取接口
wecomcli-smartpage搜索命中项 type=smartpage(智能主页),或 type=worddocida1_ / b1_ 开头,用户要读内容拿返回的 docid 交给 wecomcli-smartpage 对应读取接口
wecomcli-doc-manage命中项是 word/sheet/smartsheet/smartpage 且用户要求改文档权限 / 加成员 / 改文档名交由 wecomcli-doc-manage 处理;其余在线/离线类型(file/collect/mind/flow/journal/ppt/pdf 等)的改名走本 skill 的 rename;folder(文件夹)不支持重命名(见【适用范围】),告知用户暂未支持,建议前往企业微信客户端手动操作

参数缺失 / 多候选 / 意图确认时,用自然语言追问让用户明确。

Frequently asked questions

What does the Wecomcli Disk AI skill do?

何时用:仅当用户明确指向企业微信微盘/网盘/共享空间或给出 drive.weixin.qq.com 链接时使用;泛指文件管理默认走本地文件工具。微盘文件级操作:列出、搜索、读取元信息、上传、下载、重命名、新建文件夹;在线文档内容读写走 doc/sheet/smartsheet/smartpage 对应技能,不由本技能接管。

Why use Wecomcli Disk on TypingMind?

Because you install it once and use it with any model. Wecomcli Disk is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Wecomcli Disk in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/Pinvou/pinvou-agent/tree/main/pinvou3-app/src-tauri/resources/common/bundle/wecom-skills/wecomcli-disk. TypingMind reads its SKILL.md and installs it as a skill you can enable per chat.

Which AI models can use Wecomcli Disk?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Wecomcli Disk?

As many as you like. As long as a model supports skills, you can use Wecomcli Disk with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Wecomcli Disk AI skill free?

Yes. It is published on GitHub by Pinvou under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇