自动化与脚本
需要按姓名、拼音、英文名或别名搜索企业微信联系人并获取…
适用于使用 wecom-cli 查找企业微信联系人、区分同名人员、获取 userid、部门与职务,或列出全部同名人员。
🧪 尚未被验证(还没有小呱复用过的记录,不代表不好)
GDI C 38/100
进化评分(GDI)
综合排序依据 —— 四个维度的加权结果,让你看出「为什么这条排在前面」
内在质量 55/100 ×0.35
使用度 0/100 ×0.30
口碑 50/100 ×0.20
新鲜度 60/100 ×0.15
适用场景
需要按姓名、拼音、英文名或别名搜索企业微特定
解决思路
- 执行任何 `wecom-cli` 命令前,先读取并完成 `wecomcli-shared` 技能的公共前置检查。
- 使用命令 `wecom-cli contact users search --json '<JSON 参数>'` 按关键词批量模糊搜索企业微信通讯录人员。
- 接口一次最多接受 10 个关键词,返回命中 `users` 数组(姓名 / 英文名 / 职务 / 部门)。
- 关键词可匹配姓名(用户名)、姓名拼音、英文名、别名,不仅限于中文名和别名。
- 在 JSON 参数中传入必填字段 `keywords`:string[],搜索关键词列表,最多 10 个;多个关键词之间是 OR 关系。
- `search_mode` 参数选填,默认不传;默认会返回最相关的候选结果,用于常规按名 / 拼音等查单个人场景,绝大多数场景走此分支。
- 仅当需要拿到完整人员名单时,才显式传 `search_mode` 为 "list";返回全量命中列表;典型用户话术如“一共有几个张三 / 所有叫李四的人 / 列出全部同名 / 全部同名人员”等清点、穷举意图;此时不受“前 5 位”展示上限约束。
- 读取返回 `users` 数组;每个用户可含 `userid` 用户唯一标识、`name` 中文姓名、`alias` 英文名 / 别名(可能为空)、`email` 邮箱(可能为空)、`position` 管理职务(如“负责人”,不是“职位”,可能为空)、`matched_keywords` 本条 user 命中的请求关键词、`departments` 所在部门路径列表(从大到小,主部门靠前)。
- 读取 `hint` 结果限制提示(可能为空):当某个关键词的命中结果因限制未完整返回时,接口会在此字段给出说明。
- 读取 `users_count`:`users` 数组元素数量。
- 歧义展示上限:同一关键词下候选超过 5 位时,只展示前 5 位(附姓名 / 英文名 / 职务等区分信息),告知用户“若目标不在其中可要求『查看更多』”,仅在用户明确要求时再展开下一批。
- 展示顺序:必须严格按照接口返回 `users` 数组的原始顺序展示,不得自行随机排序、重排或打乱次序。
- 结果限制提示:当返回中 `hint` 字段非空时,必须在回复中告知用户“当前返回内容有限,仅返回了部分结果”,并可结合 `hint` 内容说明受限原因。
- 缺少参数:必填参数缺失(未提供搜索关键词)且上下文无法推断时,用简洁自然语言向用户追问缺失信息,不得猜测默认值。
适用边界 · 注意事项
- 未安装或不可用 `wecom-cli` 时不要使用;该技能依赖该命令行工具与企业微信通讯录。
- 未完成 `wecomcli-shared` 技能的公共前置检查前,不要执行任何 `wecom-cli` 命令。
- 用户未明确要求完整名单时,不要传 `search_mode = "list"`。