lark-skill-maker
Helps you build your own custom Feishu automation skill out of Feishu's API building blocks.
Installation
Paste this into Claude Code, Cursor, or any agent that can run commands.
What this skill does
What it does:
This skill teaches how to build brand new custom skills for lark-cli, the command line tool used to control Feishu (Lark), a workplace chat and office app. It walks through checking what commands and shortcuts already exist, looking up what information each command needs, and then writing a new instruction file that teaches an AI assistant how to complete a specific Feishu task using those commands. It covers wrapping a single command into an easy shortcut, or chaining several commands together into a multi-step process, such as looking something up first and then using that result in the next step. It also reminds the skill writer to clearly describe when the new skill should be used, to list what permissions it needs, and to double check with the user before doing anything that changes or deletes data.
When to use it:
- Someone wants to package a repeated Feishu task into a reusable skill
- Someone wants to combine several Feishu commands into one smooth workflow
- Not for actually doing everyday Feishu tasks, only for building new tools that do them
SKILL.mdShow the author's original SKILL.md (not in English)
---
name: lark-skill-maker
version: 1.0.0
description: "创建 lark-cli 的自定义 Skill。当用户需要把飞书 API 操作封装成可复用的 Skill(包装原子 API 或编排多步流程)时使用。"
metadata:
requires:
bins: ["lark-cli"]
---
# Skill Maker
基于 lark-cli 创建新 Skill。Skill = 一份 `SKILL.md`,教 AI 用 CLI 命令完成任务。
## CLI 核心能力
```bash
lark-cli <service> <resource> <method> # 已注册 API
lark-cli <service> +<verb> # Shortcut(高级封装)
lark-cli api <METHOD> <path> [--data/--params] # 任意飞书 OpenAPI
lark-cli schema <service.resource.method> # 查参数定义
```
优先级:Shortcut > 已注册 API > `api` 裸调。
## 调研 API
```bash
# 1. 查看已有的 API 资源和 Shortcut
lark-cli <service> --help
# 2. 查参数定义
lark-cli schema <service.resource.method>
# 3. 未注册的 API,用 api 直接调用
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](../lark-openapi-explorer/SKILL.md) 从飞书官方文档库逐层挖掘原生 OpenAPI 接口,获取完整的方法、路径、参数和权限信息,再通过 `lark-cli api` 裸调完成任务。
通过以上流程确定需要哪些 API、参数和 scope。
## SKILL.md 模板
文件放在 `skills/lark-<name>/SKILL.md`:
```markdown
---
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` 预览
- **编排** — 说明数据传递、失败回滚、可并行步骤
Mirrored from the author's public source. Install counts from the open skills registry.