完美解决飞书的小龙虾插件文件交互困难
如果你通过飞书使用小龙虾,发送文件到飞书,机器人总是很难拿到这个文件,总会有各种权限问题,这个应该当时为了安全设计的问题,通过lark cli可以很好的解决这个问题,快来试试吧
一、什么是 lark-cli Skills
lark-cli 是飞书官方开发的命令行工具,专为 AI Agent 设计。
核心能力:
- 200+ curated commands
- 11 个业务领域(消息/文档/云空间/日历/邮件/任务/会议等)
- 19 个 AI Agent Skills(实际可用 13 个)
- MIT 开源许可证
二、安装步骤
步骤 1:安装 lark-cli
# 安装 CLI 工具
npm install -g @larksuite/cli
# 安装 AI Agent Skills(必需)
npx skills add larksuite/cli -y -g安装时间:约 3 分钟
输出示例:
✓ ~/.agents/skills/lark-base
✓ ~/.agents/skills/lark-calendar
✓ ~/.agents/skills/lark-contact
✓ ~/.agents/skills/lark-doc
✓ ~/.agents/skills/lark-drive
... (共 19 个)步骤 2:配置认证
# 交互式配置(一键完成)
lark-cli config init流程:
1. 命令执行后输出授权 URL
2. 在浏览器打开 URL
3. 登录飞书账号
4. 授权应用权限
5. 自动完成配置
配置文件位置:
~/.lark-cli/config.json步骤 3:登录授权
# 登录(推荐自动选择常用 scope)
lark-cli auth login --recommend需要的权限:
- 云空间:drive:file
- 云文档:docs:doc
- 即时通讯:im:message
- 日历:calendar:calendar.event
- 邮箱:mail:mail
- 任务:task:task
- 会议:vc:meeting
- 联系人:contact:contact
三、验证安装
测试 1:下载云空间文件
cd /path/to/target/dir
lark-cli drive +download --file-token "GaN6b9DjcoXyJAxs07ScfQk2nEg" --output "musk-book.epub"成功输出:
{
"ok": true,
"identity": "bot",
"data": {
"saved_path": "/path/to/musk-book.epub",
"size_bytes": 2999617
}
}测试 2:查看帮助
# 查看某服务帮助
lark-cli drive --help
# 查看具体命令帮助
lark-cli drive +download --help
# 查看 schema
lark-cli schema drive --format pretty四、在 OpenClaw 中使用
方式一:直接调用命令
在 OpenClaw 会话中执行:
lark-cli drive +download --file-token "xxx" --output "xxx.epub"适用场景:
- 单次文件下载
- 快速测试
- 脚本自动化
方式二:通过 AI Agent Skills
OpenClaw 会自动识别并调用已安装的 skills。
触发示例:
| 用户指令 | 调用的 skill |
|---|---|
| "下载飞书云空间文件" | lark-drive |
| "获取云文档内容" | lark-docs |
| "读取电子表格数据" | lark-sheets |
| "查看我的任务" | lark-task |
| "搜索会议记录" | lark-vc |
| "浏览邮件" | lark-mail |
| "创建多维表格" | lark-base |
五、可用 Skills 清单
完全可用(7 个)
| Skill | 功能 | 常用命令 |
|---|---|---|
| lark-drive | 云空间文件 | +download, +upload |
| lark-docs | 云文档 | +fetch, +update |
| lark-sheets | 电子表格 | +read, +append |
| lark-task | 任务管理 | +get-my-tasks, +create |
| lark-vc | 视频会议 | +search, +notes |
| lark-mail | 邮箱 | +triage, +message |
| lark-base | 多维表格 | +base-create, +field-create |
有限制(6 个)
| Skill | 限制 | 说明 |
|---|---|---|
| lark-im | bot 不能 cross app | 只能在自己应用内发消息 |
| lark-calendar | 需要 scope | 需要申请权限 |
| lark-contact | 需要 user 身份 | 不支持 bot 身份 |
| lark-minutes | 子命令特殊 | minutes minutes |
| lark-wiki | 子命令特殊 | wiki spaces get_node |
| lark-event | 仅订阅 | 只有事件订阅 |
命令不存在(6 个)
| Skill | 说明 |
|---|---|
| lark-openapi-explorer | 文档概念,非实际命令 |
| lark-shared | 文档概念 |
| lark-skill-maker | 文档概念 |
| lark-whiteboard | 文档概念 |
| lark-workflow-meeting-summary | 文档概念 |
| lark-workflow-standup-report | 文档概念 |
六、常用命令速查
云空间(lark-drive)
# 下载文件
lark-cli drive +download --file-token "xxx" --output "xxx.epub"
# 上传文件
lark-cli drive +upload --folder-token "xxx" --file "xxx.pdf"
# 查看帮助
lark-cli drive --help云文档(lark-docs)
# 获取文档内容
lark-cli docs +fetch --doc "https://xxx.feishu.cn/docx/xxx"
# 查看帮助
lark-cli docs --help电子表格(lark-sheets)
# 读取表格
lark-cli sheets +read --url "https://xxx.feishu.cn/sheets/xxx" --range "A1:D10"
# 查看帮助
lark-cli sheets --help任务管理(lark-task)
# 查看我的任务
lark-cli task +get-my-tasks
# 创建任务
lark-cli task +create --title "xxx"
# 查看帮助
lark-cli task --help会议管理(lark-vc)
# 搜索会议
lark-cli vc +search --query "xxx"
# 查询妙记
lark-cli vc +notes --minute-token "xxx"
# 查看帮助
lark-cli vc --help邮箱管理(lark-mail)
# 浏览邮件
lark-cli mail +triage
# 读取邮件
lark-cli mail +message --message-id "xxx"
# 查看帮助
lark-cli mail --help多维表格(lark-base)
# 创建 base
lark-cli base +base-create --name "xxx"
# 创建字段
lark-cli base +field-create --app-token "xxx" --table-id "xxx"
# 查看帮助
lark-cli base --help七、与现有 feishu skill 对比
功能对比
| 功能 | feishu skill | lark-cli skills | 建议 |
|---|---|---|---|
| 消息发送 | ✅ message 工具 | ⚠️ lark-im(bot 限制) | 保留 message 工具 |
| 文件下载 | ❌ 不支持 | ✅ lark-drive | 使用 lark-drive |
| 文件上传 | ❌ 不支持 | ✅ lark-drive +upload | 使用 lark-drive |
| 文档管理 | ✅ feishu-doc | ✅ lark-docs | 使用 lark-docs(官方) |
| 多维表格 | ✅ feishu_bitable | ✅ lark-base | 使用 lark-base(官方) |
| 知识库 | ✅ feishu_wiki | ✅ lark-wiki | 使用 lark-wiki(官方) |
| 日历 | ❌ 不支持 | ✅ lark-calendar | 使用 lark-calendar |
| 邮箱 | ❌ 不支持 | ✅ lark-mail | 使用 lark-mail |
| 任务 | ❌ 不支持 | ✅ lark-task | 使用 lark-task |
| 会议 | ❌ 不支持 | ✅ lark-vc | 使用 lark-vc |
推荐方案
优先使用 lark-cli skills(官方、全面、持续更新):
- lark-drive(云空间)
- lark-docs(云文档)
- lark-base(多维表格)
- lark-wiki(知识库)
- lark-calendar(日历)
- lark-mail(邮箱)
- lark-task(任务)
- lark-vc(会议)
- lark-sheets(电子表格)
保留现有 feishu skill(特殊功能):
- message 工具(OpenClaw 原生,更灵活)
- wechat-auto-pipeline / wx-publisher(公众号发布)
- feishu-image-sender(飞书图片发送)
- feishu-file-sender(飞书文件发送)
八、常见问题
Q1:安装失败怎么办?
检查 Node.js 版本:
node --version # 需要 v18+
npm --version重新安装:
npm uninstall -g @larksuite/cli
npm install -g @larksuite/cli
npx skills add larksuite/cli -y -gQ2:认证失败怎么办?
检查配置文件:
cat ~/.lark-cli/config.json重新配置:
lark-cli config init --new
lark-cli auth login --recommendQ3:bot 不能发消息怎么办?
原因:bot 只能在自己应用内发消息,不能 cross app 发私信
解决方案:
1. 在群聊中使用(需要 chat-id)
2. 用户先与 bot 建立对话
3. 使用 OpenClaw 原生 message 工具
Q4:需要申请 scope 权限怎么办?
查看缺失的 scope:
lark-cli calendar +agenda
# 输出:required scope calendar:calendar.event:read申请链接:
命令输出中会包含申请链接,点击前往飞书开放平台申请
Q5:如何查看完整的命令列表?
# 查看某服务的所有命令
lark-cli drive --help
# 查看 schema
lark-cli schema drive --format pretty九、最佳实践
1. 文件下载
# 切换到目标目录
cd /path/to/target/dir
# 下载文件(使用相对路径)
lark-cli drive +download --file-token "xxx" --output "xxx.epub"注意:--output 必须是相对路径
2. 文档获取
# 直接使用 URL
lark-cli docs +fetch --doc "https://xxx.feishu.cn/docx/xxx"
# 或使用 token
lark-cli docs +fetch --doc "doxcnxxx"3. 批量操作
# 使用 shell 脚本批量下载
for token in "token1" "token2" "token3"; do
lark-cli drive +download --file-token "[公式]token.epub"
done4. 错误处理
# 使用 --dry-run 先测试
lark-cli drive +download --file-token "xxx" --output "xxx.epub" --dry-run
# 检查输出再执行十、资源链接
| 资源 | 链接 |
|---|---|
| GitHub 仓库 | https://github.com/larksuite/cli |
| 飞书开放平台 | https://open.feishu.cn/ |
| 官方文档 | https://open.feishu.cn/document/ |
| 问题反馈 | https://github.com/larksuite/cli/issues |
总结
lark-cli Skills 核心价值:
1. 官方开发,持续更新
2. 覆盖 11 个业务领域
3. 专为 AI Agent 设计
4. 开源免费,MIT 许可证
推荐使用场景:
- 云空间文件管理
- 云文档获取
- 多维表格操作
- 任务/会议/邮箱管理
注意事项:
- bot 身份有发消息限制
- 部分功能需要申请 scope
- --output 必须是相对路径
参考资料:
https://github.com/larksuite/cli
https://open.feishu.cn/document/
夜雨聆风