Token导航 LogoToken导航TokenDH.com
开发敏感数据clawhub未标认证来源可访问clear审计提醒

feishu-openapi-skill飞书 openapi 技巧

Agent Skill

用于辅助 API 设计、接口文档、请求响应结构和服务集成说明。它适合让 Agent 梳理 endpoint、生成 OpenAPI 草稿、检查字段命名、整理错误码或辅助前后端联调。使用时需要确认真实业务语义、鉴权方式、分页和错误处理规则;涉及生成接口文档时,应避免凭空补字段,最好从现有代码、schema 或接口样例中提取事实。

总安装

7,620

周安装

324

GitHub Stars

公开资料未说明

下载量

2,670
OpenClaw

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

MIT-0

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:feishu-openapi-skill(飞书 openapi 技巧)
来源仓库:https://github.com/jolestar/feishu-openapi-skill
安装命令:
openclaw skills install feishu-openapi-skill
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install feishu-openapi-skill

简介

通过 UXC 使用精心设计的 OpenAPI 架构、租户令牌承载身份验证和聊天/消息护栏来操作飞书或 Lark IM API。

SKILL.md

name
feishu-openapi-skill
description
Operate Feishu or Lark IM APIs through UXC with a curated OpenAPI schema, tenant-token bearer auth, and chat/message guardrails.

Feishu / Lark IM Skill

Use this skill to run Feishu or Lark IM operations through uxc + OpenAPI.

Reuse the uxc skill for shared execution, auth, and error-handling guidance.

Prerequisites

  • uxc is installed and available in PATH.
  • Network access to https://open.feishu.cn/open-apis or https://open.larksuite.com/open-apis.
  • Access to the curated OpenAPI schema URL:

- https://raw.githubusercontent.com/holon-run/uxc/main/skills/feishu-openapi-skill/references/feishu-im.openapi.json

  • A Feishu or Lark app with bot capability enabled.
  • A Feishu or Lark app app_id + app_secret, or a current tenant_access_token if you are using the manual fallback path.

Scope

This skill covers an IM-focused request/response surface:

  • chat lookup
  • chat member lookup
  • image and file upload for IM sends
  • message send and reply
  • selected message history reads
  • basic user lookup through contact APIs

This skill does not cover:

  • docs, bitable, approval, or non-IM product families
  • the full Feishu or Lark Open Platform surface

Subscribe Status

Feishu and Lark expose event-delivery models beyond plain request/response APIs, including long-connection event delivery in the platform ecosystem.

Current uxc subscribe status:

  • request/response IM operations are validated
  • inbound message intake is validated through the built-in feishu-long-connection transport
  • live validation confirmed real im.message.receive_v1 events delivered into the subscribe sink for a p2p bot chat

Important runtime notes:

  • feishu-long-connection is a provider-aware transport inside uxc subscribe; it is not a plain raw WebSocket stream
  • the runtime opens a temporary WebSocket URL from /callback/ws/endpoint
  • frames are protobuf binary messages, not text JSON
  • the runtime sends required event acknowledgements and ping control frames automatically

Endpoint Choice

This schema works against either Feishu or Lark Open Platform base URLs:

  • China / Feishu default: https://open.feishu.cn/open-apis
  • International / Lark alternative: https://open.larksuite.com/open-apis

The fixed link example below uses Feishu. For Lark, use the same schema URL against the Lark base host.

Authentication

Feishu and Lark service-side APIs use Authorization: Bearer <tenant_access_token> for these operations.

Preferred setup is to store app_id + app_secret as credential fields and let uxc auth bootstrap fetch and refresh the short-lived tenant token automatically.

Feishu bootstrap-managed setup:

uxc auth credential set feishu-tenant \
  --auth-type bearer \
  --field app_id=env:FEISHU_APP_ID \
  --field app_secret=env:FEISHU_APP_SECRET

uxc auth bootstrap set feishu-tenant \
  --token-endpoint https://open.feishu.cn/open-apis/auth/v3/tenant_access_token/internal \
  --header 'Content-Type=application/json; charset=utf-8' \
  --request-json '{"app_id":"{{field:app_id}}","app_secret":"{{field:app_secret}}"}' \
  --access-token-pointer /tenant_access_token \
  --expires-in-pointer /expire \
  --success-code-pointer /code \
  --success-code-value 0

uxc auth binding add \
  --id feishu-tenant \
  --host open.feishu.cn \
  --path-prefix /open-apis \
  --scheme https \
  --credential feishu-tenant \
  --priority 100

For Lark, use the same bootstrap shape against the Lark host and bind the credential to open.larksuite.com.

To use long-connection subscribe, the credential still needs app_id and app_secret fields because the transport opens its own temporary event URL outside the normal bearer-token request path.

Manual fallback if you already have a tenant token:

curl -sS https://open.feishu.cn/open-apis/auth/v3/tenant_access_token/internal \
  -H 'Content-Type: application/json; charset=utf-8' \
  -d '{"app_id":"cli_xxx","app_secret":"xxxx"}'

Lark uses the same path shape on the Lark host:

curl -sS https://open.larksuite.com/open-apis/auth/v3/tenant_access_token/internal \
  -H 'Content-Type: application/json; charset=utf-8' \
  -d '{"app_id":"cli_xxx","app_secret":"xxxx"}'

Configure one bearer credential and bind it to the Feishu API host:

uxc auth credential set feishu-tenant \
  --auth-type bearer \
  --secret-env FEISHU_TENANT_ACCESS_TOKEN

uxc auth binding add \
  --id feishu-tenant \
  --host open.feishu.cn \
  --path-prefix /open-apis \
  --scheme https \
  --credential feishu-tenant \
  --priority 100

For Lark, create the same binding against open.larksuite.com:

uxc auth binding add \
  --id lark-tenant \
  --host open.larksuite.com \
  --path-prefix /open-apis \
  --scheme https \
  --credential feishu-tenant \
  --priority 100

Inspect or pre-warm bootstrap state when auth looks wrong:

uxc auth bootstrap info feishu-tenant
uxc auth bootstrap refresh feishu-tenant

Validate the active binding when auth looks wrong:

uxc auth binding match https://open.feishu.cn/open-apis

Core Workflow

  1. Use the fixed link command by default:

- command -v feishu-openapi-cli - If missing, create it: uxc link feishu-openapi-cli https://open.feishu.cn/open-apis --schema-url https://raw.githubusercontent.com/holon-run/uxc/main/skills/feishu-openapi-skill/references/feishu-im.openapi.json - feishu-openapi-cli -h

  1. Inspect operation schema first:

- feishu-openapi-cli get:/im/v1/chats -h - feishu-openapi-cli post:/im/v1/images -h - feishu-openapi-cli post:/im/v1/files -h - feishu-openapi-cli post:/im/v1/messages -h - feishu-openapi-cli get:/im/v1/messages -h

  1. Prefer read/setup validation before writes:

- feishu-openapi-cli get:/im/v1/chats page_size=20 - feishu-openapi-cli get:/im/v1/chats/{chat_id} chat_id=oc_xxx - feishu-openapi-cli get:/contact/v3/users/{user_id} user_id=ou_xxx user_id_type=open_id

  1. Execute with key/value or positional JSON:

- key/value: feishu-openapi-cli get:/im/v1/messages container_id_type=chat container_id=oc_xxx page_size=20 - multipart upload: feishu-openapi-cli post:/im/v1/images image_type=message image=/tmp/example.png - positional JSON: feishu-openapi-cli post:/im/v1/messages receive_id_type=chat_id '{"receive_id":"oc_xxx","msg_type":"text","content":"{\"text\":\"Hello from UXC\"}"}'

  1. For inbound message intake, use uxc subscribe directly:

- uxc subscribe start https://open.feishu.cn/open-apis --transport feishu-long-connection --auth feishu-tenant --sink file:$HOME/.uxc/subscriptions/feishu.ndjson - send a bot-visible message, then inspect the sink for header.event_type = "im.message.receive_v1"

Operation Groups

Chat Reads

  • get:/im/v1/chats
  • get:/im/v1/chats/{chat_id}
  • get:/im/v1/chats/{chat_id}/members

Message Reads / Writes

  • get:/im/v1/messages
  • get:/im/v1/messages/{message_id}
  • post:/im/v1/messages
  • post:/im/v1/messages/{message_id}/reply

Uploads

  • post:/im/v1/images
  • post:/im/v1/files

User Lookup

  • get:/contact/v3/users/{user_id}
  • post:/contact/v3/users/batch_get_id

Guardrails

  • Keep automation on the JSON output envelope; do not use --text.
  • Parse stable fields first: ok, kind, protocol, data, error.
  • Prefer uxc auth bootstrap over manual token management. Manual tenant_access_token setup is still supported as a fallback.
  • feishu-long-connection requires the app credential fields app_id and app_secret; a plain bearer-only credential is not enough for event intake.
  • post:/im/v1/images and post:/im/v1/files use multipart/form-data. File fields must be local path strings; help output marks them as multipart file fields.
  • post:/im/v1/messages requires the receive_id_type query parameter and the body content field is a JSON-encoded string, not a nested JSON object.
  • Upload first, then send by returned key:

- image sends use msg_type=image with content='{\"image_key\":\"img_xxx\"}' - file sends use msg_type=file with content='{\"file_key\":\"file_xxx\"}'

  • post:/im/v1/messages/{message_id}/reply is for explicit replies to an existing message. Treat it as a high-risk write.
  • History reads only return chats and messages visible to the bot/app configuration. Auth success does not imply access to every chat.
  • Long-connection message intake is validated for Feishu bot chats; webhook-style callbacks and non-IM products are still out of scope.
  • feishu-openapi-cli <operation> ... is equivalent to uxc https://open.feishu.cn/open-apis --schema-url <feishu_openapi_schema> <operation> ....

References

  • Usage patterns: references/usage-patterns.md
  • Curated OpenAPI schema: references/feishu-im.openapi.json
  • Feishu Open Platform docs: https://open.feishu.cn/document/
  • Lark Open Platform docs: https://open.larksuite.com/document/

适合场景

01

OpenClaw 用户查找和安装 Skill 时

02

用户想查找某类 Agent Skill 时

03

需要根据任务场景推荐可安装能力包时

04

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

OpenClaw

83.11%
按下载量换算2,219

安全审计

VirusTotal

通过

ClawScan

可疑

Static analysis

通过

权限和风险

敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills