lark-openapi-explorer
作者: larksuite
飞书/Lark 原生 OpenAPI 探索:从官方文档库中挖掘未经 CLI 封装的原生 OpenAPI 接口。当用户的需求无法被现有 lark-* skill 或 lark-cli 已注册命令满足,需要查找并调用原生飞书 OpenAPI 时使用。
npx skills add https://github.com/larksuite/cli --skill lark-openapi-explorerOpenAPI Explorer
前置条件: 先阅读
../lark-shared/SKILL.md了解认证、身份切换和安全规则。
当用户的需求无法被现有 skill 或 CLI 已注册 API 覆盖时,使用本技能从飞书官方 markdown 文档库中逐层挖掘原生 OpenAPI 接口,然后通过 lark-cli api 裸调完成任务。
文档库结构
飞书 OpenAPI 文档以 markdown 层级组织:
llms.txt ← 顶层索引,列出所有模块文档链接
└─ llms-<module>.txt ← 模块文档,包含功能概述 + 底层 API 文档链接
└─ <api-doc>.md ← 单个 API 的完整说明(方法/路径/参数/响应/错误码)
文档入口:
| 品牌 | 入口 URL |
|---|---|
| 飞书 (Feishu) | https://open.feishu.cn/llms.txt |
| Lark | https://open.larksuite.com/llms.txt |
所有文档以中文编写。如果用户使用英文交流,需将文档内容翻译为英文后输出。
挖掘流程
严格按以下步骤逐层检索,不要跳步或猜测 API:
Step 1:确认现有能力不足
# 先检查是否已有对应的 skill 或已注册 API
lark-cli <可能的service> --help
如果已有对应命令或 shortcut,直接使用,不需要继续挖掘。
Step 2:从顶层索引定位模块
用 WebFetch 获取顶层索引,找到与需求相关的模块文档链接:
WebFetch https://open.feishu.cn/llms.txt
→ 提取问题:"列出所有模块文档链接,找出与 <用户需求关键词> 相关的链接"
- 飞书品牌使用
open.feishu.cn - Lark 品牌使用
open.larksuite.com - 如不确定用户品牌,默认使用飞书
Step 3:从模块文档定位具体 API
用 WebFetch 获取模块文档,找到具体 API 的文档链接:
WebFetch https://open.feishu.cn/llms-docs/zh-CN/llms-<module>.txt
→ 提取问题:"找出与 <用户需求> 相关的 API 说明和文档链接"
Step 4:获取 API 完整规范
用 WebFetch 获取具体 API 文档,提取完整的调用规范:
WebFetch https://open.feishu.cn/document/server-docs/.../<api>.md
→ 提取问题:"返回完整 API 规范:HTTP 方法、URL 路径、路径参数、查询参数、请求体字段(名称/类型/必填/说明)、响应字段、所需权限、错误码"
Step 5:通过 CLI 调用 API
使用 lark-cli api 裸调:
# GET 请求
lark-cli api GET /open-apis/<path> --params '{"key":"value"}'
# POST 请求
lark-cli api POST /open-apis/<path> --data '{"key":"value"}'
# PUT 请求
lark-cli api PUT /open-apis/<path> --data '{"key":"value"}'
# DELETE 请求
lark-cli api DELETE /open-apis/<path>
输出规范
向用户呈现挖掘结果时,按以下格式组织:
- API 名称与功能:一句话描述
- HTTP 方法与路径:
METHOD /open-apis/... - 关键参数:列出必填和常用可选参数
- 所需权限:scope 列表
- 调用示例:给出
lark-cli api的完整命令 - 注意事项:频率限制、特殊约束等
如果用户使用英文交流,将以上所有内容翻译为英文。
安全规则
- 写入/删除类 API(POST/PUT/DELETE)调用前必须确认用户意图
- 建议先用
--dry-run预览请求(如支持) - 不要猜测 API 路径或参数——必须从文档中获取确认
- 涉及敏感操作(删除群、移除成员等)时,向用户说明影响范围
使用场景示例
场景 1:用户需要拉人进群(未被 CLI 封装)
# Step 1: 确认 CLI 没有封装
lark-cli im --help
# → 发现没有 chat_members 相关的 create 命令
# Step 2-4: 通过文档挖掘获得 API 规范
# → POST /open-apis/im/v1/chats/:chat_id/members
# Step 5: 调用
lark-cli api POST /open-apis/im/v1/chats/oc_xxx/members \
--data '{"id_list":["ou_xxx","ou_yyy"]}' \
--params '{"member_id_type":"open_id"}'
场景 2:用户需要设置群公告
# Step 1: 确认 CLI 没有封装
lark-cli im --help
# → 没有 announcement 相关命令
# Step 2-4: 挖掘文档
# → PATCH /open-apis/im/v1/chats/:chat_id/announcement
# Step 5: 调用
lark-cli api PATCH /open-apis/im/v1/chats/oc_xxx/announcement \
--data '{"revision":"0","requests":["<html>公告内容</html>"]}'
参考
- lark-shared — 认证和全局参数
- lark-skill-maker — 如需将挖掘到的 API 固化为新 Skill
來自 larksuite 的更多技能
lark-doc
larksuite
飛書雲文檔 / Docx / 知識庫 Wiki 文檔(v2):建立、開啟、讀取、取得、檢視、總結、整理、改寫、翻譯、審閱和編輯飛書文檔內容。當使用者提供飛書文檔 URL/token,或要求檢視/讀取/開啟某個文檔、提取文檔內容、總結文檔、生成/建立文檔、追加/取代/刪除/移動內容、調整排版、插入或下載文檔圖片/附件/素材/畫板縮圖時使用。文檔內容中出現嵌入試算表、多維表格、需要將重要資訊視覺化為畫板(含 SVG 畫板)、引用或同步區塊時,也先使用本 skill 讀取和提取 token,再切換至對應 skill 深入處理。使用本 skill 時,docs +create、docs +fetch、docs +update 必須攜帶 --api-version v2;預設使用 DocxXML,也
documentapiproductivity
lark-im
larksuite
飛書即時通訊:收發訊息和管理群聊。發送和回覆訊息、搜尋聊天記錄、管理群聊成員、上傳下載圖片和檔案(支援大檔案分片下載)、管理表情回覆。當用戶需要發訊息、查看或搜尋聊天記錄、下載聊天中的檔案、查看群成員、搜尋群、建立群聊或話題群、管理標記資料時使用。
communicationproductivityapi
lark-shared
larksuite
首次設定 lark-cli、執行 auth login、切換使用者/機器人身份(--as)、處理權限拒絕或範圍錯誤、需要更新 lark-cli,或是在 JSON 輸出中看到 _notice 時使用。
developmentapicommunication
lark-base
larksuite
當需要用 lark-cli 操作飛書多維表格(Base)時調用:搜尋 Base、建表、欄位管理、記錄讀寫、記錄分享連結、檢視配置、歷史查詢,以及角色/表單/儀表板管理/工作流程;也適用於把舊的 +table / +field / +record 寫法改成當前命令寫法。涉及欄位設計、公式欄位、查找引用、跨表計算、行級派生指標、資料分析需求時也必須使用本 skill。
databasedata-analysisapi
lark-drive
larksuite
飛書雲空間:管理雲端空間中的檔案與資料夾。可上傳與下載檔案、建立資料夾、複製/移動/刪除檔案、檢視檔案元資料、管理文件評論、管理文件權限、訂閱使用者評論變更事件、修改檔案標題(docx、sheet、bitable、file、folder、wiki);同時也負責將本機的 Word/Markdown/Excel/CSV 以及 Base 快照(.base)匯入為飛書線上雲端文件(docx、sheet、bitable)。當使用者需要上傳或下載檔案、整理雲端空間目錄、檢視檔案詳細資訊、管理評論、管理文件權限、修改檔案標題、訂閱使用者評論變更事件,或將本機檔案匯入為新版文件、電子表格、多維表格/Base 時使用。
documentproductivityapi
lark-whiteboard
larksuite
飛書畫板:查詢和編輯飛書雲文檔中的畫板。支援匯出畫板為預覽圖片、匯出原始節點結構、使用多種格式更新畫板內容。當用戶需要查看畫板內容、匯出畫板圖片、編輯畫板時使用此 skill。不負責:飛書雲文檔內容編輯(lark-doc)、文檔內嵌電子表格/Base(lark-sheets / lark-base)。
documentcreativeproductivity
lark-mail
larksuite
飛書郵箱 — 起草、撰寫、發送、回覆、轉發、閱讀及搜尋郵件;管理草稿、資料夾、標籤、聯絡人、附件及郵件規則。當使用者提及 起草郵件、寫一封郵件、擬郵件、草稿、發通知郵件、發送郵件、發郵件、回覆郵件、轉發郵件、查看郵件、看郵件、讀郵件、搜尋郵件、查郵件、收件箱、郵件會話、編輯草稿、管理草稿、下載附件、郵件資料夾、郵件標籤、郵件聯絡人、監聽新郵件、收信規則、郵件規則、draft、compose、send email、reply、forward、inbox、mail thread、mail rules 時使用。
communicationproductivityapi
lark-workflow-meeting-summary
larksuite
會議紀要整理工作流:彙總指定時間範圍內的會議紀要並生成結構化報告。當用戶需要整理會議紀要、生成會議週報、回顧一段時間內的會議內容時使用。
productivitydocumentcommunication