企业微信操作
通过本机官方 wecom-cli 操作企微云端能力。把它与只读本地数据库 Skill $wecom-local-vault 分开使用。
强制边界
- 绝不点击、启动、退出或控制企业微信客户端,绝不调用
wecom-cli msg或发送消息。 - 读取、帮助和 schema 查询可直接执行;创建、覆写、更新、邀请、取消和删除必须来自用户当轮明确指令。
- 取消会议/日程、删除待办、覆写已有文档前,先只读确认精确目标和当前状态,再取得用户对该目标的明确确认。
- 不读取或输出
~/.config/wecom/中的加密凭证,不在回复、日志、报告或记忆中保存 Bot ID、Secret、内部 userid、docid、meetingid、todo_id 或带授权参数的 URL。 - 若
~/.config/wecom/{.encryption_key,bot.enc,mcp_config.enc}已存在,不得重新运行wecom-cli init覆盖配置。 - 每次先运行目标 category 的
--help。若返回“当前企业暂不支持授权”,立即停止该 category,不得改用客户端自动化或非官方协议绕过。 - 远程业务结果以
errcode == 0为成功;失败最多低频重试一次。返回help_instruction时,按要求逐字展示help_message。 - 不自动删除本地上传副本、回执或失败后已创建的企微资源;需要清理时先征得用户明确同意。
开始前检查
SKILL_ROOT="${WECOM_OPERATIONS_SKILL_ROOT:-$HOME/.agents/skills/yichen-wecom-operations}"
python3 "$SKILL_ROOT/scripts/doctor.py"
python3 "$SKILL_ROOT/scripts/doctor.py" --category doc
doctor.py 只检查版本、加密配置文件权限和 category 可用性,不读取凭证内容。
路由
- 本地 Markdown、普通文档、智能文档、图片证据:读取 references/documents.md。
- 预约/查询/取消会议,或企微日程:读取 references/meetings.md。
- 创建、查询、更新或删除待办:读取 references/todos.md。
不要为无关任务读取所有参考文件。
文档快速入口
默认只预检,不产生企微写操作:
SKILL_ROOT="${WECOM_OPERATIONS_SKILL_ROOT:-$HOME/.agents/skills/yichen-wecom-operations}"
python3 "$SKILL_ROOT/scripts/create_smartpage.py" \
--source "/absolute/path/report.md" \
--title "报告标题"
用户当轮明确要求创建后再传 --execute:
SKILL_ROOT="${WECOM_OPERATIONS_SKILL_ROOT:-$HOME/.agents/skills/yichen-wecom-operations}"
python3 "$SKILL_ROOT/scripts/create_smartpage.py" \
--source "/absolute/path/report.md" \
--title "报告标题" \
--execute
无本地图片时只创建最终智能文档;存在本地图片时额外创建一个明确命名的“图片资源”普通文档,上传图片并生成企微 CDN 链接,再创建最终智能文档。两者都必须在结果中向用户披露。
运行时能力检查
- 依赖企业微信官方
@wecom/cli,安装后运行wecom-cli init完成用户自己的机器人配置。 - 文档、待办、会议、日程和通讯录的授权范围取决于企业与机器人配置,必须用
doctor.py和目标 category 的--help动态检查。 - 官方 CLI 可以处理文本和远程图片;本地图片上传依赖另行提供、带
doc +doc_upload_image能力的 helper,并通过WECOM_UPLOAD_HELPER指向其可执行文件。本仓库不分发该本地扩展。 - 智能文档回读权限可能返回
851008;创建成功不能冒充回读验证成功。
交付
只向用户展示可读名称、时间、状态和最终访问链接。内部 ID 仅保存在权限为 0600 的本机回执中,不在对话里展开。