Agent Skillsyokingma/weclaws › lark-openapi-explorer

lark-openapi-explorer

GitHub

当飞书现有技能或CLI无法覆盖需求时,通过WebFetch从官方文档挖掘原生OpenAPI规范,并指导用户调用lark-cli api执行。

resources/skills/managed/lark-openapi-explorer/SKILL.md yokingma/weclaws

Trigger Scenarios

用户需要飞书功能但无现成Skill 现有CLI命令不包含所需API

Install

npx skills add yokingma/weclaws --skill lark-openapi-explorer -g -y
More Options

Non-standard path

npx skills add https://github.com/yokingma/weclaws/tree/main/resources/skills/managed/lark-openapi-explorer -g -y

Use without installing

npx skills use yokingma/weclaws@lark-openapi-explorer

指定 Agent (Claude Code)

npx skills add yokingma/weclaws --skill lark-openapi-explorer -a claude-code -g -y

安装 repo 全部 skill

npx skills add yokingma/weclaws --all -g -y

预览 repo 内 skill

npx skills add yokingma/weclaws --list

SKILL.md

Frontmatter
{
    "name": "lark-openapi-explorer",
    "version": "1.0.0",
    "metadata": {
        "requires": {
            "bins": [
                "lark-cli"
            ]
        }
    },
    "description": "飞书\/Lark 原生 OpenAPI 探索:从官方文档库中挖掘未经 CLI 封装的原生 OpenAPI 接口。当用户的需求无法被现有 lark-* skill 或 lark-cli 已注册命令满足,需要查找并调用原生飞书 OpenAPI 时使用。"
}

OpenAPI 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>

输出规范

向用户呈现挖掘结果时,按以下格式组织:

  1. API 名称与功能:一句话描述
  2. HTTP 方法与路径METHOD /open-apis/...
  3. 关键参数:列出必填和常用可选参数
  4. 所需权限:scope 列表
  5. 调用示例:给出 lark-cli api 的完整命令
  6. 注意事项:频率限制、特殊约束等

如果用户使用英文交流,将以上所有内容翻译为英文。

安全规则

  • 写入/删除类 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>"]}'

参考

Version History

  • 63e7996 Current 2026-07-24 16:06

Same Skill Collection

.codex/skills/ui-ux-pro-max/SKILL.md
resources/skills/managed/editorial-card-screenshot/SKILL.md
resources/skills/managed/github/SKILL.md
resources/skills/managed/lark-base/SKILL.md
resources/skills/managed/lark-calendar/SKILL.md
resources/skills/managed/lark-contact/SKILL.md
resources/skills/managed/lark-doc/SKILL.md
resources/skills/managed/lark-drive/SKILL.md
resources/skills/managed/lark-event/SKILL.md
resources/skills/managed/lark-im/SKILL.md
resources/skills/managed/lark-mail/SKILL.md
resources/skills/managed/lark-markdown/SKILL.md
resources/skills/managed/lark-minutes/SKILL.md
resources/skills/managed/lark-okr/SKILL.md
resources/skills/managed/lark-shared/SKILL.md
resources/skills/managed/lark-sheets/SKILL.md
resources/skills/managed/lark-skill-maker/SKILL.md
resources/skills/managed/lark-slides/SKILL.md
resources/skills/managed/lark-task/SKILL.md
resources/skills/managed/lark-vc/SKILL.md
resources/skills/managed/lark-whiteboard/SKILL.md
resources/skills/managed/lark-wiki/SKILL.md
resources/skills/managed/lark-workflow-meeting-summary/SKILL.md
resources/skills/managed/lark-workflow-standup-report/SKILL.md
resources/skills/managed/personal-planner/SKILL.md
resources/skills/managed/ppt-skill/SKILL.md
resources/skills/managed/skill-creator/SKILL.md
resources/skills/managed/video-frames/SKILL.md
resources/skills/managed/weather/SKILL.md
resources/skills/managed/lark-approval/SKILL.md
resources/skills/managed/lark-attendance/SKILL.md

Metadata

Files
0
Version
63e7996
Hash
ae89debc
Indexed
2026-07-24 16:06

inicio - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-08-20 01:54
浙ICP备14020137号-1 $mapa de visitantes$