SuperAPI AI 工具集

lark-contact

办公与效率

查看项目

更新于 10-16 10:28

技能介绍

lark-contact 是面向飞书通讯录场景的技能(contact v1),主要解决组织架构、人员信息与员工搜索类需求。

用途

该技能用于:查看个人信息、查找同事的 open_id 或联系方式、按姓名搜索员工、查询部门结构。

主要能力

  • 获取当前用户或指定用户的详细信息。
  • 通过关键词搜索员工,支持按姓名、邮箱、手机号。
  • 查询组织架构与部门结构。

使用方式

开始前 MUST 先用 Read 工具读取 ../lark-shared/SKILL.md,其中包含认证、权限处理相关信息。

推荐优先使用 Shortcuts(对常用操作的高级封装,命令形式为 lark-cli contact +<verb> [flags]):

  • +search-user:搜索用户(结果按相关度排序)。
  • +get-user:获取用户信息(省略 user_id 表示查询本人;提供 user_id 表示查询指定用户)。

已知限制

外部租户用户无法通过 API 搜索。+search-user、+get-user 以及 GET /contact/v3/users 只返回同一租户内的用户。

其他组织的飞书账号(外部 Lark 账号)不会出现在搜索结果中,其 open_id / user_id 也无法通过通讯录 API 获取——即使使用租户访问令牌(机器人身份)也不行。

可选的变通方案:

  • 将外部用户加入 Wiki/文档:通过管理后台邀请其为访客,然后使用邀请后返回的 open_id。
  • 与外部用户共享文档:使用 open_sharing: anyone_readable(基于链接,无需飞书账号)。
  • 获取外部用户的 open_id:请用户在飞书个人资料设置中自行查看 open_id。

管理后台邀请后,可直接使用 openid:

lark-cli wiki members create \
  --params '{"space_id":"<space_id>"}' \
  --data '{"member_id":"ou_XXXXXX","member_type":"openid","member_role":"member"}'

参考:docs/known-issues/lark-external-user-api-gap.md