360 Secure SkillHub
360 安全技能中心

lark-contact

通过 lark-cli contact 以 user 身份查询飞书/Lark 通讯录:把姓名或邮箱解析成 open_id,或用 open_id(也可用 union_id/user_id)反查员工的姓名、部门、邮箱与联系方式。适用于发消息、加群、排日程前先拿 ID,或把输出中的 open_id 还原成姓名。不负责部门树遍历、按部门列员工和组织架构图。

gu2003li
gu2003li
热度 21.27
最近更新 2026-06-16 09:33:40
分类:协作依赖:代码执行 / 第三方 API应用场景:工作流

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add lark-contact
Metadata
name
lark-contact
version
1.0.0
description
飞书 / Lark 通讯录,用于按姓名 / 邮箱把员工解析成 open_id,以及按 open_id 反查员工的姓名 / 部门 / 邮箱 / 联系方式。当用户说出某人姓名而下一步需要发消息 / 加群 / 排日程时,先用本 skill 把姓名换成 ID;当输出里出现 open_id 需要展示成姓名给用户看,或用户直接询问某人的部门 / 邮箱 / 联系方式时,用本 skill 查。不负责部门树遍历、按部门列员工、组织架构图,这类需求走原生 OpenAPI。
metadata
{"requires":{"bins":["lark-cli"]},"cliHelp":"lark-cli contact --help"}

lark-contact

选哪个命令

统一以 user 身份运行,按下表选命令:

想做什么 命令
按姓名 / 邮箱搜员工拿 open_id +search-user
已知 open_id 取他人资料 +search-user --user-ids <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 受当前身份的可见范围限制(两条命令都可能遇到)。让管理员调整可见范围,或根据错误响应中的 console_url 引导用户解决。
  • 跨租户用户(is_cross_tenant=true)多数业务字段为空字符串,这是飞书可见性规则,下游做空值兜底。
  • ID 类型:默认 open_id。+get-user 可改 --user-id-type union_id|user_id;+search-user 只接受 open_id。

不在本 skill 范围