Agent Skills
› fanfan-de/anybox
› lark-contact
lark-contact
GitHub用于飞书通讯录管理,支持按姓名/邮箱解析open_id及反查员工资料。适用于发消息、排日程前的ID转换或查询联系人信息。不包含部门树遍历等组织架构图功能。
Trigger Scenarios
根据姓名查找员工open_id
根据open_id查询员工详情
询问某人的部门或联系方式
Install
npx skills add fanfan-de/anybox --skill lark-contact -g -y
SKILL.md
Frontmatter
{
"name": "lark-contact",
"version": "1.0.0",
"metadata": {
"cliHelp": "lark-cli contact --help",
"requires": {
"bins": [
"lark-cli"
]
}
},
"description": "飞书 \/ Lark 通讯录,用于按姓名 \/ 邮箱把员工解析成 open_id,以及按 open_id 反查员工的姓名 \/ 部门 \/ 邮箱 \/ 联系方式。当用户说出某人姓名而下一步需要发消息 \/ 加群 \/ 排日程时,先用本 skill 把姓名换成 ID;当输出里出现 open_id 需要展示成姓名给用户看,或用户直接询问某人的部门 \/ 邮箱 \/ 联系方式时,用本 skill 查。不负责部门树遍历、按部门列员工、组织架构图,这类需求走原生 OpenAPI。"
}
lark-contact
选哪个命令
user 身份和 bot 身份是两条完全独立的路径。先确定当前身份,再按下表选命令:
| 想做什么 | user 身份 | bot 身份 |
|---|---|---|
| 按姓名 / 邮箱搜员工拿 open_id | +search-user |
不支持 |
| 已知 open_id 取他人资料 | +search-user --user-ids <id> |
+get-user --user-id <id> |
| 查看自己 | +get-user 或 +search-user --user-ids me |
不支持 |
已知 open_id 只是想发消息 / 排日程,不必经过 contact —— 直接 lark-im / lark-calendar。
典型场景
# 找张三给他发消息:先搜,确认 open_id,再发
lark-cli contact +search-user --query "张三" --has-chatted --as user
lark-cli im +messages-send --user-id ou_xxx --text "Hi!"
搜索命中多条且后续操作有副作用(发消息、邀请会议等),把候选列给用户挑;不要擅自选第一条。
注意事项
- 41050 / Permission denied 受当前身份的可见范围限制(两条命令都可能遇到)。换 bot 身份或让管理员调整可见范围,细节见
lark-shared。 - 跨租户用户(
is_cross_tenant=true)多数业务字段为空字符串,这是飞书可见性规则,下游做空值兜底。 - ID 类型:默认
open_id。+get-user可改--user-id-type union_id|user_id;+search-user只接受open_id。
不在本 skill 范围
- 发消息 / 查聊天记录 →
lark-im - 排日程 / 邀请会议 →
lark-calendar - 部门树 / 按部门列员工 / 组织架构 ,通过
lark-openapi-explorer查找原生接口
Version History
- 08dc189 Current 2026-07-05 18:58


