| name | lark-skill-maker |
| description | 创建 lark-cli 的自定义 Skill。当用户需要把飞书 API 操作封装成可复用的 Skill(包装原子 API 或编排多步流程)时使用。 |
Wegent 本地运行
- 当前
SKILL.md 所在目录的 ../.. 是插件根目录。首次调用前,macOS/Linux 运行 sh "<插件根目录>/scripts/ensure-lark-ready.sh";Windows 运行 powershell -NoProfile -ExecutionPolicy Bypass -File "<插件根目录>\scripts\ensure-lark-ready.ps1"。
- 下文的
lark-cli ... 是逻辑命令。实际执行时,macOS/Linux 使用 sh "<插件根目录>/scripts/run-lark-cli.sh" ...;Windows 使用 powershell -NoProfile -ExecutionPolicy Bypass -File "<插件根目录>\scripts\run-lark-cli.ps1" ...。
- 配置和用户 OAuth 均由官方 CLI 在本机管理。不要要求用户在对话中粘贴 App Secret 或 Access Token,也不要读取、记录或上传
~/.lark-cli 或系统钥匙串中的认证信息。配置、扫码、企业审批或增量授权需要用户操作时,展示 CLI 原样输出的 URL/二维码并暂停等待。
Skill Maker
基于 lark-cli 创建新 Skill。Skill = 一份 SKILL.md,教 AI 用 CLI 命令完成任务。
CLI 核心能力
lark-cli <service> <resource> <method>
lark-cli <service> +<verb>
lark-cli api <METHOD> <path> [--data/--params]
lark-cli schema <service.resource.method>
优先级:Shortcut > 已注册 API > api 裸调。
调研 API
lark-cli <service> --help
lark-cli schema <service.resource.method>
lark-cli api GET /open-apis/vc/v1/rooms --params '{"page_size":"50"}'
lark-cli api POST /open-apis/vc/v1/rooms/search --data '{"query":"5F"}'
如果以上命令无法覆盖需求(CLI 没有对应的已注册 API 或 Shortcut),使用 lark-openapi-explorer 从飞书官方文档库逐层挖掘原生 OpenAPI 接口,获取完整的方法、路径、参数和权限信息,再通过 lark-cli api 裸调完成任务。
通过以上流程确定需要哪些 API、参数和 scope。
SKILL.md 模板
文件放在 skills/lark-<name>/SKILL.md:
---
name: lark-<name>
version: 1.0.0
description: "<功能描述>。当用户需要<触发场景>时使用。"
metadata:
requires:
bins: ["lark-cli"]
---
# <标题>
> **前置条件:** 先阅读 [`../lark-shared/SKILL.md`](../lark-shared/SKILL.md)。
## 命令
\```bash
# 单步操作
lark-cli api POST /open-apis/xxx --data '{...}'
# 多步编排:说明步骤间数据传递
# Step 1: ...(记录返回的 xxx_id)
# Step 2: 使用 Step 1 的 xxx_id
\```
## 权限
| 操作 | 所需 scope |
|------|-----------|
| xxx | `scope:name` |
关键原则
- description 决定触发 — 包含功能关键词 + "当用户需要...时使用"
- 认证 — 说明所需 scope,登录用
lark-cli auth login --domain <name>
- 安全 — 写入操作前确认用户意图,建议
--dry-run 预览
- 编排 — 说明数据传递、失败回滚、可并行步骤