返回 Skills 目录
wecomteam/wecom-cli已通过检查

SKILL DETAIL

wecomcli-contact

wecomteam/wecom-cli/wecomcli-contact

该技能通过 wecom-cli 命令行工具,根据用户提供的关键词(如姓名、拼音、英文名或别名)在企业微信通讯录中进行模糊搜索,并返回匹配人员的详细信息,包括 userid、姓名、英文名/别名、邮箱、管理职务和部门路径。适用于查找联系人、区分同名人员、获取用户 userid,以及列出全部同名人员等场景。 搜索支持最多 10 个关键词,多个关键词之间为 OR 关系。默认返回最相关的候选结果,适合常规查询;当用户明确要求获取完整名单时,可传入 search_mode 为 "list" 以返回全量命中列表。结果展示遵循原始顺序,若同一关键词下候选超过 5 位,仅展示前 5 位,并提示用户可要求查看更多。

安装量 · 150查看来源

Installation

npx skills add https://github.com/wecomteam/wecom-cli --skill wecomcli-contact

技能文件

SKILL.md

最近同步 · 2026年9月16日

SKILL.md›
---
name: wecomcli-contact
description: 使用 wecom-cli 按姓名、拼音、英文名或别名搜索企业微信通讯录中的人员,并查询匹配人员的 userid、部门和职务。适用于查找联系人、区分同名人员、获取用户 userid,以及列出全部同名人员。
metadata:
  requires:
    bins: ["wecom-cli"]
---

# 企业微信联系人搜索

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

使用 `wecom-cli` 按关键词搜索企业微信通讯录中的人员。

## 接口

按关键词批量模糊搜索人员,一次最多 10 个关键词,返回命中 `users` 数组(姓名 / 英文名 / 职务 / 部门)。关键词可匹配的字段包括:姓名(用户名)、姓名拼音、英文名、别名,而不仅限于中文名和别名。

### 命令

```bash
wecom-cli contact users search --json '<JSON 参数>'
```

### 参数

| 字段 | 类型 | 必填 | 默认值 | 语义 |
|---|---|---|---|---|
| `keywords` | string[] | 是 | — | 搜索关键词列表,可按姓名(用户名)/ 拼音 / 英文名 / 别名匹配,最多 10 个;多个关键词之间是 OR 关系 |
| `search_mode` | string | 否 | — | 搜索模式,默认不传该参数;仅当需要拿到完整人员名单时,才显式传 `"list"` |

- 默认(不传 `search_mode`):返回最相关的候选结果,用于常规按名 / 拼音等查单个人的场景,绝大多数场景走此分支。
- 传 `search_mode = "list"`:返回全量命中列表。仅当用户明确要"完整名单"时才传,典型话术如"一共有几个张三 / 所有叫李四的人 / 列出全部同名 / 全部同名人员"等清点、穷举意图;此时不受"前 5 位"展示上限约束。

### 返回

| 字段 | 类型 | 说明 |
|---|---|--|
| `users` | array | 命中的用户列表 |
| `users[].userid` | string | 用户唯一标识 |
| `users[].name` | string | 中文姓名 |
| `users[].alias` | string | 英文名 / 别名(可能为空) |
| `users[].email` | string | 邮箱(可能为空) |
| `users[].position` | string | 管理职务(如"负责人"),**不是**"职位"(可能为空) |
| `users[].matched_keywords` | string[] | 本条 user 命中的请求关键词|
| `users[].departments` | string[] | 所在部门路径列表(从大到小),主部门靠前 |
| `hint` | string | 结果限制提示(可能为空):当某个关键词的命中结果因限制未完整返回时,接口会在此字段给出说明 |
| `users_count` | integer | `users` 数组元素数量 |

### 使用规则

- 歧义展示上限:同一关键词下候选超过 5 位时,只展示前 5 位(附姓名 / 英文名 / 职务等区分信息),告知用户"若目标不在其中可要求『查看更多』",仅在用户明确要求时再展开下一批;
- 展示顺序:必须严格按照接口返回 `users` 数组的原始顺序展示,不得自行随机排序、重排或打乱次序。
- 结果限制提示:当返回中 hint 字段非空时,必须在回复中告知用户"当前返回内容有限,仅返回了部分结果",并可结合 hint 内容说明受限原因。

## 缺少参数

> 必填参数缺失(未提供搜索关键词)且上下文无法推断时,用简洁自然语言向用户追问缺失信息,不得猜测默认值。