Files
market/skills/wecom-cli/entry.json
Yige aec2e7c28b feat: 新增企业微信助手 Agent,并修正 wecom-cli 条目 ref 漂移 (#112)
## 概述 / Overview

两件事:新增「企业微信助手」Agent(自带 15 个技能),并修正 `wecom-cli` 条目钉在 6 月快照的 ref 漂移。

Two changes: adds the **WeCom Assistant** agent (bundling 15 skills),
and fixes the `wecom-cli` entry whose pinned ref was stuck on a June
snapshot.

## 1. 新增企业微信助手 Agent

覆盖企业微信 **14 类服务、95
个方法**:消息、群聊历史、通讯录、日程、会议、待办、邮件、在线文档、在线表格、智能表格、智能文档、文档管理、微盘、媒体文件。

**采用内联形态 + 自带私有技能**:Agent 安装对 `agents/<id>/` 整目录递归复制且 `skills/`
不在排除集合里,因此装 Agent 即带全部技能,用户无需再单独获取技能合集。

### 技能集(15 个,约 5000 行)

- 基于上游 [wecom-cli](https://github.com/WecomTeam/wecom-cli) 官方
Skill(MIT,© WecomTeam)改写,每个技能末尾保留归属声明
- **新增 `wecom-chat`**:补齐上游零覆盖的群聊历史读取
- 补齐上游未覆盖的 `message.send`、`doc.create`,方法覆盖达 **95/95**
- 修正上游三处文档漂移:邮件能力描述与实际相反、会议室参数名已过时、`title_highlight` 字段不存在

### 相对上游的核心增量:风险治理

- 26 个对外可见或不可逆的方法逐个写明**执行前确认要求**
- 4 个条件升级方法给出**参数级判据**,而非按方法名一刀切
- 文档权限扩散两项加重处理,涉及**企业外可见**时单独再确认一次
- 内部标识禁止外露,不因用户索要而放宽
- 拒绝导出可识别到具体自然人的隐私字段

### 三条真机实测得出、上游未覆盖的硬约束

1. 机器人**只能写入/修改自己创建的数据**,真人创建的只能读
2. 每次响应携带的 `extra_identity_context` **禁止透露给用户**
3. 权限错误(`850002`/`851008`/`853006`)**不得重试**,须将 `help_message`
**逐字原样**转给用户

## 2. 修正 wecom-cli 条目 ref 漂移

`source.ref` 原钉在 2026-06-28 的 `72e14f7`,该快照只有 7
个子技能且用已废弃的旧命名(`msg`/`schedule`)。上游 v1.2.0 已扩展到 **14 个**技能。按旧 ref
安装的用户拿到的是三个月前的快照。

- `source.ref` → `78c514b2afee7c0d3d7be715628478421f37ee63`
- `children` 由 `scripts/gen-collection-children.py` 重新生成,**7 → 14**
- sidecar 同步 `provenance.content.ref`、`childCount` 与 `children`

## 验证 / Verification

**静态**
- 215 条示例命令追加 `--dry-run` 实跑,**215/215 退出码 0**
- 未知方法 0、未知参数 0、`--json` 未知字段 0、枚举违规 0
- 15 个 `SKILL.md` 的 frontmatter 经客户端 `skillFrontmatterSchema` 校验全部通过
- `validate_catalog_metadata.py --require-complete` 与
`gen-collection-children.py`:**0 error**

**真机(在真实企业微信账号上端到端)**
- **待办域 6/6 方法全通**(含 2 个 write-high),`items` 必填的隐蔽坑实测证实
- **日程域 5 个方法全通**(含 3 个 write-high)
- 消息发送、通讯录解析、微盘列表、邮件搜索、文档搜索、会议列表、智能表格创建均已实测通过
- 测试数据已全部清理,未污染真实账号

**尚未实测**:群聊历史(机器人未开通该品类)。相关文档已明确标注验证状态,未实测的能力不写「实际效果」段落。
2026-09-03 03:50:00 -04:00

208 lines
14 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"id": "wecom-cli",
"name": "WeCom CLI",
"category": "communication",
"icon": "<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\"><rect x=\"4\" y=\"5\" width=\"16\" height=\"14\" rx=\"3\" stroke=\"#2563EB\" stroke-width=\"1.7\"/><path d=\"m8 10 2 2-2 2m4 0h4\" stroke=\"#2563EB\" stroke-width=\"1.7\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>",
"tags": [
"WecomTeam"
],
"i18n": {
"zh-CN": {
"name": "企业微信 CLI",
"shortDesc": "企业微信官方命令行工具,让人与 AI Agent 在终端操作企业微信文档、智能表格、消息等核心业务"
},
"en-US": {
"name": "WeCom CLI",
"shortDesc": "Official WeCom (Enterprise WeChat) CLI for humans and AI agents to operate docs, smart sheets and messaging in the terminal"
}
},
"maintainer": {
"name": "WecomTeam",
"verified": false,
"account": "WecomTeam",
"url": "https://github.com/WecomTeam/wecom-cli"
},
"stewardship": "community",
"license": "MIT",
"redistribution": "allowed",
"source": {
"kind": "git",
"repoUrl": "https://github.com/WecomTeam/wecom-cli.git",
"repoBranch": "main",
"ref": "78c514b2afee7c0d3d7be715628478421f37ee63"
},
"children": [
{
"id": "wecomcli-calendar",
"path": "skills/wecomcli-calendar",
"i18n": {
"zh-CN": {
"shortDesc": "企业微信日程管理。当用户需要预约日程、预订会议室、查看/更新/取消日程或查忙闲时触发。本技能负责『日程』——即不含在线会议链接的安排(也涵盖纯线下面对面碰头);若用户要的是『在线会议』(含会议号/入会链接、可远程或视频参会),改用 wecomcli-meeting 技能。用户仅说'开会/约个会/某会'等、未明确要创建的…"
},
"en-US": {
"shortDesc": "企业微信日程管理。当用户需要预约日程、预订会议室、查看/更新/取消日程或查忙闲时触发。本技能负责『日程』——即不含在线会议链接的安排(也涵盖纯线下面对面碰头);若用户要的是『在线会议』(含会议号/入会链接、可远程或视频参会),改用 wecomcli-meeting 技能。用户仅说'开会/约个会/某会'等、未明确要创建的…"
}
}
},
{
"id": "wecomcli-contact",
"path": "skills/wecomcli-contact",
"i18n": {
"zh-CN": {
"shortDesc": "使用 wecom-cli 按姓名、拼音、英文名或别名搜索企业微信通讯录中的人员,并查询匹配人员的 userid、部门和职务。适用于查找联系人、区分同名人员、获取用户 userid以及列出全部同名人员。"
},
"en-US": {
"shortDesc": "使用 wecom-cli 按姓名、拼音、英文名或别名搜索企业微信通讯录中的人员,并查询匹配人员的 userid、部门和职务。适用于查找联系人、区分同名人员、获取用户 userid以及列出全部同名人员。"
}
}
},
{
"id": "wecomcli-disk",
"path": "skills/wecomcli-disk",
"version": "1.0.0",
"i18n": {
"zh-CN": {
"shortDesc": "企业微信微盘Disk / 网盘)文件操作技能。承接\"微盘 / 网盘\"里的文件列出、搜索、读取元信息、上传、下载、重命名、新建文件夹操作。用户明确提到\"微盘\"/\"网盘\"/\"共享空间\"时必须先读取本技能获取完整指引,不得凭记忆处理。用户说\"上传到微盘\"、\"帮我在微盘里搜一下 xxx\"、\"微盘那个 PPT 在哪\"、\"下载微…"
},
"en-US": {
"shortDesc": "企业微信微盘Disk / 网盘)文件操作技能。承接\"微盘 / 网盘\"里的文件列出、搜索、读取元信息、上传、下载、重命名、新建文件夹操作。用户明确提到\"微盘\"/\"网盘\"/\"共享空间\"时必须先读取本技能获取完整指引,不得凭记忆处理。用户说\"上传到微盘\"、\"帮我在微盘里搜一下 xxx\"、\"微盘那个 PPT 在哪\"、\"下载微…"
}
}
},
{
"id": "wecomcli-doc",
"path": "skills/wecomcli-doc",
"i18n": {
"zh-CN": {
"shortDesc": "企微 doc 内容操作技能,包含新建在线文档、导入、读取、追加、覆盖写入等功能。仅当用户明确指定 'doc'、'docx'、'word'、'在线文档'、'office文档',或提供 https://doc.weixin.qq.com/doc/xxx 链接时触发。本技能不处理未指明类型的“文档”请求;凡是“创建文档 /…"
},
"en-US": {
"shortDesc": "企微 doc 内容操作技能,包含新建在线文档、导入、读取、追加、覆盖写入等功能。仅当用户明确指定 'doc'、'docx'、'word'、'在线文档'、'office文档',或提供 https://doc.weixin.qq.com/doc/xxx 链接时触发。本技能不处理未指明类型的“文档”请求;凡是“创建文档 /…"
}
}
},
{
"id": "wecomcli-doc-manage",
"path": "skills/wecomcli-doc-manage",
"i18n": {
"zh-CN": {
"shortDesc": "企业微信文档公共管理:搜索文档(最近浏览/创建、文档改名、添加文档成员权限、设置文档加入规则。适用于所有文档类型doc文档 / 在线表格 / 智能表格 / 智能文档。新建或导入doc文档请使用 wecomcli-doc新建或导入在线表格请使用 wecomcli-sheet智能表格内容 CRUD 请使用 wec…"
},
"en-US": {
"shortDesc": "企业微信文档公共管理:搜索文档(最近浏览/创建、文档改名、添加文档成员权限、设置文档加入规则。适用于所有文档类型doc文档 / 在线表格 / 智能表格 / 智能文档。新建或导入doc文档请使用 wecomcli-doc新建或导入在线表格请使用 wecomcli-sheet智能表格内容 CRUD 请使用 wec…"
}
}
},
{
"id": "wecomcli-email",
"path": "skills/wecomcli-email",
"version": "2.1.0",
"i18n": {
"zh-CN": {
"shortDesc": "企业微信邮件:发送/回复/转发邮件、搜索邮件列表、获取邮件详情(正文、附件、内嵌图片解析),支持通过邮件发送日程邀约和会议预定。当用户涉及内部邮件收发、邮件查询、邮件管理等需求时使用。注意:日程和会议有单独的技能,仅当用户明确提到\"邮箱\"或\"邮件\"时(如\"通过邮箱发送会议邀请\"、\"发封会议邮件\"),才使用本技能处理会议…"
},
"en-US": {
"shortDesc": "企业微信邮件:发送/回复/转发邮件、搜索邮件列表、获取邮件详情(正文、附件、内嵌图片解析),支持通过邮件发送日程邀约和会议预定。当用户涉及内部邮件收发、邮件查询、邮件管理等需求时使用。注意:日程和会议有单独的技能,仅当用户明确提到\"邮箱\"或\"邮件\"时(如\"通过邮箱发送会议邀请\"、\"发封会议邮件\"),才使用本技能处理会议…"
}
}
},
{
"id": "wecomcli-media",
"path": "skills/wecomcli-media",
"version": "1.0.0",
"i18n": {
"zh-CN": {
"shortDesc": "企业微信媒体文件上传/下载技能。承接基于 media_id 下载媒体文件到本地,以及上传本地文件获取 media_id 两类操作。当其他技能(微盘、邮件等)返回了 media_id 需要落地为本地文件,或已有本地文件需要转换为 media_id 供其他技能使用时,必须先读取本技能获取完整指引,不得凭记忆处理。本技能不解…"
},
"en-US": {
"shortDesc": "企业微信媒体文件上传/下载技能。承接基于 media_id 下载媒体文件到本地,以及上传本地文件获取 media_id 两类操作。当其他技能(微盘、邮件等)返回了 media_id 需要落地为本地文件,或已有本地文件需要转换为 media_id 供其他技能使用时,必须先读取本技能获取完整指引,不得凭记忆处理。本技能不解…"
}
}
},
{
"id": "wecomcli-meeting",
"path": "skills/wecomcli-meeting",
"i18n": {
"zh-CN": {
"shortDesc": "企业微信会议管理。本技能负责『在线会议』——即含在线会议链接(含会议号/入会链接、可远程或视频参会)的会议的创建、查询、搜索、获取详情(含会议信息、纪要、待办)、查询会议转写原文(逐字发言记录)、更新、取消等全部操作;若用户要的是不含在线会议链接的『日程』(也涵盖纯线下面对面碰头),改用 wecomcli-calend…"
},
"en-US": {
"shortDesc": "企业微信会议管理。本技能负责『在线会议』——即含在线会议链接(含会议号/入会链接、可远程或视频参会)的会议的创建、查询、搜索、获取详情(含会议信息、纪要、待办)、查询会议转写原文(逐字发言记录)、更新、取消等全部操作;若用户要的是不含在线会议链接的『日程』(也涵盖纯线下面对面碰头),改用 wecomcli-calend…"
}
}
},
{
"id": "wecomcli-message",
"path": "skills/wecomcli-message",
"i18n": {
"zh-CN": {
"shortDesc": "查询当前可以发送消息的聊天会话范围并向会话列表中的单聊或群聊发送文本、Markdown、图片、文件、语音、视频消息。用户要求“给某人发消息”“在某个群里通知”“给最近会话发消息”或“把图片/文件/语音/视频发到企业微信”时使用。"
},
"en-US": {
"shortDesc": "查询当前可以发送消息的聊天会话范围并向会话列表中的单聊或群聊发送文本、Markdown、图片、文件、语音、视频消息。用户要求“给某人发消息”“在某个群里通知”“给最近会话发消息”或“把图片/文件/语音/视频发到企业微信”时使用。"
}
}
},
{
"id": "wecomcli-shared",
"path": "skills/wecomcli-shared",
"i18n": {
"zh-CN": {
"shortDesc": "wecom-cli 业务技能的公共前置检查、获取机器人及授权真人身份,以及通用输出约束。任何 wecomcli-* 技能准备执行 wecom-cli 命令前,都必须同时读取本技能,检查 CLI 是否安装、版本是否不低于 1.1.0,以及企业微信凭证是否已授权;仅在缺失、版本过低或未授权时执行安装或初始化。本技能还定义所…"
},
"en-US": {
"shortDesc": "wecom-cli 业务技能的公共前置检查、获取机器人及授权真人身份,以及通用输出约束。任何 wecomcli-* 技能准备执行 wecom-cli 命令前,都必须同时读取本技能,检查 CLI 是否安装、版本是否不低于 1.1.0,以及企业微信凭证是否已授权;仅在缺失、版本过低或未授权时执行安装或初始化。本技能还定义所…"
}
}
},
{
"id": "wecomcli-sheet",
"path": "skills/wecomcli-sheet",
"i18n": {
"zh-CN": {
"shortDesc": "企业微信在线表格文档管理:新建在线表格、导入 CSV/Excel 为在线表格、读取表格信息与数据、修改表格内容、追加行数据、子表管理。当用户提到'表格'、'在线表格'、'excel表格'这些关键词触发,或链接形如 https://doc.weixin.qq.com/sheet/xxx 时触发。文档公共操作请使用 wec…"
},
"en-US": {
"shortDesc": "企业微信在线表格文档管理:新建在线表格、导入 CSV/Excel 为在线表格、读取表格信息与数据、修改表格内容、追加行数据、子表管理。当用户提到'表格'、'在线表格'、'excel表格'这些关键词触发,或链接形如 https://doc.weixin.qq.com/sheet/xxx 时触发。文档公共操作请使用 wec…"
}
}
},
{
"id": "wecomcli-smartpage",
"path": "skills/wecomcli-smartpage",
"i18n": {
"zh-CN": {
"shortDesc": "使用 wecom-cli 创建企业微信智能文档读取页面内容调整页面树结构获取内置智能表格信息。适用于用户明确提到企业微信智能文档、智能主页、smartpage或提供形如 https://doc.weixin.qq.com/smartpage/xxx 或 https://page.weixin.qq.com/sm…"
},
"en-US": {
"shortDesc": "使用 wecom-cli 创建企业微信智能文档读取页面内容调整页面树结构获取内置智能表格信息。适用于用户明确提到企业微信智能文档、智能主页、smartpage或提供形如 https://doc.weixin.qq.com/smartpage/xxx 或 https://page.weixin.qq.com/sm…"
}
}
},
{
"id": "wecomcli-smartsheet",
"path": "skills/wecomcli-smartsheet",
"i18n": {
"zh-CN": {
"shortDesc": "企业微信智能表格内容操作技能——专注于智能表格smartsheet的数据、结构与样式管理读取表结构与记录、管理子表/字段/记录/视图/图表,以及修改行列样式(填色/高亮);记录新增或更新遇到 851003 / no authority 时通过 Webhook 兜底写入。触发条件用户提到智能表格、企微表格、sma…"
},
"en-US": {
"shortDesc": "企业微信智能表格内容操作技能——专注于智能表格smartsheet的数据、结构与样式管理读取表结构与记录、管理子表/字段/记录/视图/图表,以及修改行列样式(填色/高亮);记录新增或更新遇到 851003 / no authority 时通过 Webhook 兜底写入。触发条件用户提到智能表格、企微表格、sma…"
}
}
},
{
"id": "wecomcli-todo",
"path": "skills/wecomcli-todo",
"i18n": {
"zh-CN": {
"shortDesc": "管理企业微信待办,支持创建、删除或退出、完成、查询和筛选,以及修改标题、描述、参与人名单和截止时间。"
},
"en-US": {
"shortDesc": "管理企业微信待办,支持创建、删除或退出、完成、查询和筛选,以及修改标题、描述、参与人名单和截止时间。"
}
}
}
]
}