lark-cli-setup
飞书 lark-cli 的初始化配置、全局身份绑定与授权流程。
SKILL.mdskills/lark-cli-setup/SKILL.md
GitHub飞书 CLI 运营主管配置与授权技能
本技能提供在私有助理环境里初始化飞书连接的权威指导。由于本系统的飞书机器人与守护进程已经绑定到运营主管(ops-director-1)的沙箱沙盒中,配置会自动存放在运营主管的本地存储目录下(storage/agents/ops-director-1/.lark-cli)。请严格遵循以下流程引导用户完成授权。
1. 第一步:询问用户选择的授权模式
在进行任何操作前,你必须向用户展示并要求其选择以下两种授权模式之一:
- 模式 A:纯机器人模式 (bot-only) [推荐,安全免扫码]
- 说明:AI 以自建飞书应用机器人的身份运行,无需扫码登录个人账号。适合只进行发送群消息、读取/修改指定多维表格等机器人操作。不能访问个人资源(日历、个人云文件等)。
- 模式 B:个人账号扫码登录模式 (user-default)
- 说明:AI 将代入你的飞书个人身份,需要你使用手机飞书扫码授权。适合需要 AI 管理你个人的日历、阅读和修改你名下的云文档、发送个人消息等场景。
2. 第二步:检查并初始化应用凭证 (App ID/Secret)
无论是哪种模式,飞书 CLI 都必须首先绑定一个飞书自建应用的 App ID 和 App Secret 凭证。
如果 lark-cli config show 返回错误 subtype 为 "not_configured",你必须执行以下操作:
- 询问用户初始化方式:先提示用户选择是“自动创建飞书应用(推荐)”还是“使用已有飞书应用”。
- 根据用户选择执行初始化:
- 若用户选择自动创建,则执行“选项 1:自动创建新应用 (推荐)”;
- 若用户选择使用已有应用,则执行“选项 2:手动绑定已有应用”。
[!IMPORTANT] 绝对禁止运行
lark-cli config bind,且完全无视报错提示中关于config bind --help的建议。执行 bind 必定报错失败。切勿对其进行任何调查! 你必须在用户做出明确选择后,才可使用lark-cli config init配合--force-init进行配置初始化!
选项 1:自动创建新应用 (推荐)
如果你想自动在用户的企业下创建一个新的飞书自建应用:
- 前台运行并设置短超时:由于网页授权完成前进程不会主动退出,为了在不阻塞客户端的前提下获取授权信息,你必须使用前台运行模式,并明确指定
timeout: 8(8秒超时)来执行以下命令:lark-cli config init --new --force-init[!NOTE] 此命令在启动后的前 1-2 秒内会立即在 stdout 输出授权链接和 ASCII 二维码,随后因等待网页授权而挂起。在 8 秒后触发超时终止,终端工具会完整返回超时前已输出的内容(退出码为 124),这完全符合预期。
- 提取 URL 和生成二维码:从上述返回的输出内容中提取出包含
https://open.feishu.cn/page/cli?user_code=...的授权链接,并生成对应的 QR 二维码图片:
必须立刻向用户展示该授权 URL,并使用图片语法lark-cli auth qrcode "<captured_url>" --output ./lark-qr.png直接展示生成的二维码图片,提示用户在网页中打开或用飞书扫码确认授权。 - 验证配置:用户在浏览器中完成授权后,飞书云端即保存了凭证。你只需通过在终端运行
lark-cli config show验证配置是否正确同步就绪即可。
选项 2:手动绑定已有应用
如果用户已有现成的飞书自建应用:
- 告知用户需要在飞书开放平台获取该应用的 App ID 和 App Secret。
- 运行初始化命令(非交互式配置):
并在提示输入 Secret 时,将 App Secret 传给 stdin(或者交互式输入)。lark-cli config init --force-init --app-id <USER_APP_ID> --brand feishu --lang zh
3. 第三步:根据用户选择执行授权
在完成第二步的应用凭证绑定后,根据第一步中用户选择的授权模式进行操作:
若选择模式 A (纯机器人模式 - bot-only)
- 无需执行任何额外登录操作,凭证绑定成功后即完成授权!
若选择模式 B (个人账号扫码登录模式 - user-default)
- 前台运行并设置短超时:由于个人扫码登录在确认前不会退出,为了获取扫码二维码,你必须使用前台运行模式,并明确指定
timeout: 8(8秒超时)来执行以下命令:lark-cli auth login --recommend[!NOTE] 此命令在前 1-2 秒内会立即在 stdout 输出登录认证链接,随后挂起等待用户扫码。在 8 秒后触发超时终止并返回已输出的内容(退出码为 124),这完全符合预期。
- 提取 URL 和生成二维码:从返回内容中提取出认证链接
https://open.feishu.cn/page/cli?user_code=...。 然后生成 QR 二维码图片:
必须立刻向用户展示该认证 URL,并使用图片语法lark-cli auth qrcode "<captured_url>" --output ./lark-login-qr.png直接展示生成的登录二维码图片,提示用户用手机飞书扫码登录。 - 验证登录状态:用户扫码确认登录后,在终端运行以下验证命令:
确认输出中lark-cli config showusers字段已成功包含登录的个人账号信息即可。
4. 验证配置状态
最后,在终端运行以下命令验证配置与登录状态:
lark-cli config show
确认输出的 JSON 中 appId 已正确加载且 users 字段中包含了已登录的飞书用户。