SuperAPI AI 工具集

lark-shared

办公与效率

查看项目

更新于 10-13 21:31

技能介绍

用途

lark-shared 是 lark-cli 所有 lark-* skill 共享的底座规则,用于统一身份、认证、输出契约与高风险操作的处理方式。它本身不是独立工具,而是其他 lark 技能运行前需要遵循的通用准则与参考索引。

主要能力与规则

通用准则

  • 调用前先确认用法:执行前读对应 reference 或运行 --help,不要猜测 flag 盲调。
  • 身份决定操作主体的代表关系:--as user 代表用户本人,可看到并操作其日历、云空间/云盘/云存储等个人资源;--as bot 代表应用自己,属于应用级操作,只能访问 bot 自己的资源。bot 查询用户资源时会返回空成功而非报错。动手前需先明确身份。身份模型和权限管理见 lark-shared-identity-and-permissions.md。
  • 授权/配置类 URL 必须配二维码:当命令输出 verification_url、verification_uri_complete、console_url 等 URL 字段时,必须用 lark-cli auth qrcode 生成并在回复中展示,URL 在前、二维码在后;优先生成 PNG(--output),仅当用户明确要求时才使用 ASCII(--ascii)。URL 需原样转发,不编解码、不加标点、不重拼 query,二维码和链接一起展示给用户。
  • 在 --format json(默认)下,判断成功用 ok == true 或进程退出码 0,不要用 code == 0:成功信封没有顶层 code / msg 字段,code 只出现在错误信封的 error 内。按 OpenAPI 老格式 {"code": 0, "msg": "ok"} 判断会把所有成功调用误判为失败,封装写入类命令时尤其危险。JSON 输出契约见 lark-shared-output-contract.md。

安全规则

  • 禁止输出密钥(appSecret、accessToken 等)到终端明文。
  • 写入/删除操作前必须确认用户意图。
  • 目标命令支持 --dry-run 时,用 --dry-run 预览危险请求。
  • 退出码 10 是高风险确认门禁(risk: "high-risk-write"),不是错误:停下 → 向用户确认(展示 action、risk 和关键参数)→ 取得用户显式同意后,将 hint 指出的确认 flag 追加到原始 argv 末尾后重试;绝不静默加确认 flag 绕过。详见 lark-shared-high-risk-approval.md。
  • 文件路径只接受相对路径:--file、--output、--output-dir、@file 等路径参数只接受 cwd 下的相对路径,传绝对路径会报 unsafe file path。数据输入(@file、大 JSON)优先用 stdin 传入,避免路径和转义问题。

使用方式:Reference 强触发索引

命中任一触发条件时,必须在执行下一步前读取对应 reference。命中多条时按表中顺序读取,同一 reference 只读取一次。

强触发条件与对应 reference:

  • 查看自己是谁(user/bot)、获取当前身份详细字段信息、身份诊断、--as 选择逻辑、身份延续、登录态、认证、scope、授权和权限管理、missing_scopes 或 console_url、Agent 准备发起或完成 auth login → lark-shared-identity-and-permissions.md
  • 需要依赖 JSON 输出契约判断成功/失败、读取 stdout/stderr,或为命令编写脚本与封装 → lark-shared-output-contract.md
  • 准备执行 high-risk-write(高风险操作)、判断命令风险等级、遇到退出码 exit 10、confirmation_required、确认后重试 → lark-shared-high-risk-approval.md
  • 首次使用 CLI 需运行 lark-cli config init 完成应用配置,或 CLI 明确提示 config init --new → lark-shared-config-init.md
  • 用户询问 notice、CLI 版本更新,或输出含 _notice(升级/skills 落后/废弃命令提示)→ lark-shared-update-notice.md

适用场景

适用于所有基于 lark-cli 的 lark-* skill 的调用过程,尤其是在处理身份选择、认证授权、JSON 输出判断、高风险写入操作、配置文件初始化以及更新提示等场景时作为前置参考。

限制

具体支持的完整命令清单、各 reference 文档的详细内容、收费与价格信息、平台支持范围以及实际使用效果,资料中暂未提供。