mcpField
L
lark-skill-maker

lark-skill-maker

larksuiteAgent 工作流17.9k466.8k 次安装今天更新
代码仓库

关于 lark-skill-maker

lark-skill-maker 是基于 lark-cli 创建新 Skill 的指南技能。Skill 以一份 SKILL.md 文件描述如何用 CLI 命令完成任务,面向需要扩展飞书相关 Skill 的开发者。

主要功能

  1. 01SKILL.md 模板与 frontmatter 字段说明
  2. 02按 Shortcut、已注册 API、api 裸调的优先级调研
  3. 03使用 schema 查看参数定义
  4. 04说明认证 scope、写入前确认和多步编排
  5. 05描述 skill 触发的 description 写法

适用场景

  1. 01为飞书某个业务场景编写新的 lark-cli Skill
  2. 02梳理未注册 OpenAPI 的调用方式与所需权限
  3. 03规范已有 Skill 的编排、回滚和安全约束

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/larksuite/cli --skill lark-skill-maker

安装后在 Claude Code 中输入/lark-skill-maker确认已加载。

详细介绍

来自项目 README

Skill Maker

基于 lark-cli 创建新 Skill。Skill = 一份 SKILL.md,教 AI 用 CLI 命令完成任务。

CLI 核心能力

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

# 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 从飞书官方文档库逐层挖掘原生 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 预览
  • 编排 — 说明数据传递、失败回滚、可并行步骤

评论

支持 Markdown