飞书 lark-cli 是什么:让编程 Agent 直接操作飞书

飞书团队在 GitHub 开源了官方命令行工具 lark-cli(larksuite/cli),一并附带一组 Agent Skill:装好后,Claude Code、Codex 这类编程 Agent 可以在终端里替你查日程、发消息、读写云文档和多维表格。截至 2026-11-01(北京时间),最新版 v1.0.98,MIT 许可证,GitHub 约 1.8 万星。
它是什么
lark-cli 是飞书开放平台的官方 CLI,用 Go 写,通过 npm 分发。README 的定位是「让人类和 AI Agent 都能在终端中操作飞书」:人直接敲命令用,Agent 读 Skill 学会怎么调这些命令。每个 Skill 是一个 SKILL.md,写明什么场景该用、先读哪份参考文档、哪些操作必须先找用户确认。
| 仓库 | github.com/larksuite/cli |
|---|---|
| 作者 | 飞书 / Lark 开放平台团队(larksuite) |
| 许可证 | MIT(调用飞书 API 时另需遵守飞书用户协议与隐私政策) |
| 热度 | GitHub 17,901 星(GitHub API,2026-11-01 北京时间约 15:15);npm 10-23 至 10-29 周下载 177,084;skills.sh 上 lark-doc 累计安装 839,131 |
| 运行要求 | Node.js(npm / npx);源码构建另需 Go 1.23+ 与 Python 3;一个飞书或 Lark 账号 |
| 最新版本 | v1.0.98(GitHub 发布于 2026-10-14 01:46,北京时间) |
解决什么问题
想让 Agent 处理飞书里的事,以前要么自己写开放平台 API 调用,要么找第三方 MCP。前者要处理 token、分页、错误码,后者权限和维护都没保证。lark-cli 把这些收进官方工具:凭证存进系统密钥链,输出统一成结构化 JSON,Agent 照着 Skill 调命令就行。
README 列的 Skill 按业务拆分,主要几类:
| Skill | 能做什么 |
|---|---|
| lark-shared | 配置、登录、身份切换、权限和安全规则,其他 Skill 都会加载它 |
| lark-calendar / lark-task | 查议程、建日程、查忙闲、找会议室;建任务、清单、子任务和提醒 |
| lark-im / lark-mail | 发消息、管群、搜聊天记录;读、搜、发、回邮件,管理草稿 |
| lark-doc / lark-wiki / lark-drive | 按 Markdown 读写云文档;管理知识库节点;上传下载文件、管评论和权限 |
| lark-base / lark-sheets | 多维表格的表、字段、记录、视图、仪表盘;电子表格读写和导出 |
| lark-approval / lark-okr | 同意、拒绝、转交审批;查询和更新 OKR |
| 两个 workflow | 会议纪要汇总;把当天日程和未完成待办合成一份开工摘要 |
README 写的是 26 个 Skill。2026-11-01 查看 main 分支,skills/ 目录下有 28 个子目录,比 README 多出 lark-minutes、lark-note 等,新 Skill 还在陆续加进来。
怎么用
官方推荐的安装方式只有一行:
npx @larksuite/cli@latest install
按安装脚本的源码,这条命令依次做四件事:全局安装 @larksuite/cli;从飞书官方源安装 AI Skills;运行应用配置;最后询问是否允许 AI 以你的名义访问消息、文档、日历等数据。哪一步失败,它会打印单独重试的命令,比如 Skill 装失败时提示 npx skills add larksuite/cli -y -g(用的是 Vercel 的 skills CLI)。
分步手动执行也可以:
# 1. 配置应用凭证(只需一次,会给出浏览器链接)
lark-cli config init --new
# 2. 登录授权;--recommend 自动选常用权限
lark-cli auth login --recommend
# 只开日历和任务
lark-cli auth login --domain calendar,task
# 3. 确认状态,然后试一条
lark-cli auth status
lark-cli calendar +agenda
给 Agent 用时,README 建议后台跑 config init --new 和 auth login,把输出里的授权链接发给你,你在浏览器里点完命令自动退出。lark-shared 还规定 Agent 要用 lark-cli auth qrcode 把链接转成二维码,和原链接一起给你。登录后直接对 Agent 说「看看我今天有什么安排」,它会按 standup-report 工作流调 calendar +agenda 和 task +get-my-tasks --complete=false,再合成一份摘要。
三层命令的区别:快捷命令以 + 开头,有默认值和表格输出,例如 docs +create --doc-format markdown;API 命令和开放平台端点一一对应,例如 calendar calendars list;通用调用 lark-cli api GET /open-apis/... 能打任意接口。判断成功看 JSON 里的 ok == true 或退出码 0,不要沿用开放平台老格式的 code == 0,成功响应里没有这个字段。
护栏和要注意的地方
官方文档把风险写得很直白:授权后 Agent 以你的身份操作,模型幻觉、提示词注入都可能造成数据泄露或越权。默认带了几层保护:
- 高风险门禁:删除这类
high-risk-write操作,缺--yes时退出码 10。lark-shared 规定 Agent 必须把 action 和关键参数给你看,你明确同意后才能加确认参数重试,不许静默绕过。 - 先预览:支持
--dry-run的命令会打印完整请求而不执行,例如发消息前先跑一遍。 - 身份要分清:
--as user代表你本人,--as bot代表应用。用 bot 身份查你的个人资源会返回空结果而不报错,看到空列表先检查身份。 - 别拉进群:README 建议把对接的机器人当私人助手,不要拉进群聊或让别人和它交互。
- 风控信号:CLI 访问飞书官方域名时默认附带操作系统类型和硬件型号,不想发可以运行
lark-cli config risk-control off。v1.0.98 新加 DPoP,新签发的凭证默认preferred,可用lark-cli config set dpop required改成强制。
退出码 10 的意思是「先问人」:Agent 该停下来,把要执行的操作和参数摆给你看。
适合谁,不适合谁
适合:日常在飞书里办公、又在用 Claude Code、Codex 或 Cursor 的人,比如让 Agent 把周报写进云文档、把表格数据导进多维表格、早上汇总日程和待办。企业 IT 或 ISV 想把飞书能力嵌进自研 Agent,可以看开放平台文档《自研 Agent 接入飞书 CLI》:它提供凭证、网络等六个扩展点,在 wrapper 里实现接口重新编译,不用改 CLI 源码。
不适合:不用飞书的团队;也不建议在别人的账号或共享机器上用,所有操作都记在授权人名下。只想要个桌面 AI 助手、不碰终端的人,可以看本站写过的 WorkBuddy,它支持从飞书、钉钉给 Agent 派任务。
最后
先用 lark-cli auth login --domain calendar,task 只开日历和任务两个权限,让 Agent 给你出一份今天的日程待办摘要,跑顺了再按需加其他业务的权限。
- GitHub · larksuite/cli(README、skills/ 目录、安装脚本;星数取自 API 2026-11-01)
- Release v1.0.98(DPoP、多维表格默认 ndjson 等改动)
- lark-shared SKILL.md(身份、授权与高风险确认规则)
- npm · @larksuite/cli
- 飞书开放平台 · 自研 Agent 接入飞书 CLI