[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M7CEQBWKXT6PV6D68GPR2CC2":3,"skill-same:01M7CEQBWKXT6PV6D68GPR2CC2":75},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":19,"linkOnly":20,"markdownContent":21,"markdownBody":22,"frontMatter":23,"refName":29,"commitSha":30,"skillDirectory":31,"forksCount":14,"repositoryHtmlUrl":32,"repositoryHomepageUrl":6,"ownerHtmlUrl":33,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":34,"install":35,"resources":48},"01M7CEQBWKXT6PV6D68GPR2CC2","lark-shared",null,"Use for lark-cli setup\u002Fauth tasks: auth login\u002Fstatus\u002Flogout, user vs bot identity, business-domain permissions (--domain, including all\u002Fdocs\u002Fdrive), missing scopes, revoking authorization, or handling _notice JSON.","whofly2016\u002Flark-cli","whofly2016","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F18972786?v=4","01M7CEMFN12RGN0W6HXR0W309B","SkylarHu","01M7CEMFNKH1BWS0PMEPP8F8FT",0,"MIT","https:\u002F\u002Fgithub.com\u002Fwhofly2016\u002Flark-cli\u002Fblob\u002Fmain\u002Fskills\u002Flark-shared\u002FSKILL.md",[],[],"2026-11-15 14:19:17",false,"---\nname: lark-shared\nversion: 1.1.0\ndescription: \"Use for lark-cli setup\u002Fauth tasks: auth login\u002Fstatus\u002Flogout, user vs bot identity, business-domain permissions (--domain, including all\u002Fdocs\u002Fdrive), missing scopes, revoking authorization, or handling _notice JSON.\"\nmetadata:\n  requires:\n    bins: [\"lark-cli\"]\n---\n\n# lark-cli 共享规则\n\n所有 `lark-*` skill 共享的底座：身份、认证、输出契约与高风险操作。\n\n## 通用准则\n\n1. **调用前先确认用法**：执行前读对应 reference 或跑 `--help`，别猜 flag 盲调。\n\n2. **身份决定你代表谁操作**：`--as user` 代表用户本人（能看到、也能操作其日历、云空间\u002F云盘\u002F云存储等个人资源），`--as bot` 代表应用自己，应用级操作，只能访问bot自己的资源，bot 查用户资源会返回空成功而非报错。动手前先搞清楚身份`identity`。身份模型和权限管理 → [`lark-shared-identity-and-permissions.md`](references\u002Flark-shared-identity-and-permissions.md)。\n\n3. **授权 \u002F 配置类 URL 必须配二维码**：当命令输出 `verification_url`、`verification_uri_complete`、`console_url` 等 URL 字段时，必须用 `lark-cli auth qrcode` 生成并在回复中展示，URL 在前二维码在后；优先生成 PNG（`--output`），仅当用户明确要求时才使用 ASCII（`--ascii`）。URL 原样转发——不编解码、不加标点、不重拼 query，二维码和链接请一起展示给用户。\n\n4. **`--format json`（默认）下，判断成功用 `ok == true`（或进程退出码 0），不要用 `code == 0`**：成功信封没有顶层 `code` \u002F `msg` 字段，`code` 只出现在错误信封的 `error` 内。按 OpenAPI 老格式 `{\"code\": 0, \"msg\": \"ok\"}`判断会把所有成功调用误判为失败——封装写入类命令时尤其危险。JSON 输出契约 → [`lark-shared-output-contract.md`](references\u002Flark-shared-output-contract.md)。\n\n\n## 安全规则\n\n1. **禁止输出密钥**（appSecret、accessToken等）到终端明文。\n\n2. **写入\u002F删除操作前必须确认用户意图**。\n\n3. 目标命令支持 `--dry-run` 时，用 `--dry-run` 预览危险请求。\n\n4. **退出码 10 是高风险确认门禁（`risk: \"high-risk-write\"`），不是错误**：停下 → **向用户确认**（展示 `action`、`risk` 和关键参数）→ 取得**用户显式同意**后，将 `hint` 指出的确认 flag **追加到你原始 argv 的末尾**后重试；**绝不**静默加确认 flag 绕过 → [`lark-shared-high-risk-approval.md`](references\u002Flark-shared-high-risk-approval.md)。\n\n5. **文件路径只接受相对路径**：`--file`、`--output`、`--output-dir`、`@file` 等路径参数只接受 cwd 下的相对路径，传绝对路径会报 `unsafe file path`。数据输入（`@file`、大 JSON）优先用 stdin 传入，避免路径和转义问题。\n\n\n## Reference 强触发索引\n\n命中任一触发条件时，**MUST 在执行下一步前读取对应 reference**。命中多条时按表中顺序读取，同一reference只读取一次。\n\n| 强触发条件（命中任一即必读） | Reference |\n|---|---|\n| 查看自己是谁(user\u002Fbot)、获取当前身份详细字段信息、身份诊断、`--as`选择逻辑、身份延续、登录态、认证、scope、授权和权限管理、`missing_scopes` 或 `console_url`、Agent 准备发起或完成 `auth login` | [`lark-shared-identity-and-permissions.md`](references\u002Flark-shared-identity-and-permissions.md) |\n| 需要依赖 JSON 输出契约判断成功 \u002F 失败、读取 stdout \u002F stderr，或为命令编写脚本与封装 | [`lark-shared-output-contract.md`](references\u002Flark-shared-output-contract.md) |\n| 准备执行high-risk-write(高风险操作)、判断命令风险等级、遇到退出码 exit 10、`confirmation_required`、确认后重试 | [`lark-shared-high-risk-approval.md`](references\u002Flark-shared-high-risk-approval.md) |\n| 首次使用CLI需运行 `lark-cli config init` 完成应用配置、或 CLI 明确提示 `config init --new` | [`lark-shared-config-init.md`](references\u002Flark-shared-config-init.md) |\n| 用户询问 notice、CLI版本更新、或输出含 `_notice`（升级 \u002F skills 落后 \u002F 废弃命令提示）| [`lark-shared-update-notice.md`](references\u002Flark-shared-update-notice.md) |\n","# lark-cli 共享规则\n\n所有 `lark-*` skill 共享的底座：身份、认证、输出契约与高风险操作。\n\n## 通用准则\n\n1. **调用前先确认用法**：执行前读对应 reference 或跑 `--help`，别猜 flag 盲调。\n\n2. **身份决定你代表谁操作**：`--as user` 代表用户本人（能看到、也能操作其日历、云空间\u002F云盘\u002F云存储等个人资源），`--as bot` 代表应用自己，应用级操作，只能访问bot自己的资源，bot 查用户资源会返回空成功而非报错。动手前先搞清楚身份`identity`。身份模型和权限管理 → [`lark-shared-identity-and-permissions.md`](references\u002Flark-shared-identity-and-permissions.md)。\n\n3. **授权 \u002F 配置类 URL 必须配二维码**：当命令输出 `verification_url`、`verification_uri_complete`、`console_url` 等 URL 字段时，必须用 `lark-cli auth qrcode` 生成并在回复中展示，URL 在前二维码在后；优先生成 PNG（`--output`），仅当用户明确要求时才使用 ASCII（`--ascii`）。URL 原样转发——不编解码、不加标点、不重拼 query，二维码和链接请一起展示给用户。\n\n4. **`--format json`（默认）下，判断成功用 `ok == true`（或进程退出码 0），不要用 `code == 0`**：成功信封没有顶层 `code` \u002F `msg` 字段，`code` 只出现在错误信封的 `error` 内。按 OpenAPI 老格式 `{\"code\": 0, \"msg\": \"ok\"}`判断会把所有成功调用误判为失败——封装写入类命令时尤其危险。JSON 输出契约 → [`lark-shared-output-contract.md`](references\u002Flark-shared-output-contract.md)。\n\n\n## 安全规则\n\n1. **禁止输出密钥**（appSecret、accessToken等）到终端明文。\n\n2. **写入\u002F删除操作前必须确认用户意图**。\n\n3. 目标命令支持 `--dry-run` 时，用 `--dry-run` 预览危险请求。\n\n4. **退出码 10 是高风险确认门禁（`risk: \"high-risk-write\"`），不是错误**：停下 → **向用户确认**（展示 `action`、`risk` 和关键参数）→ 取得**用户显式同意**后，将 `hint` 指出的确认 flag **追加到你原始 argv 的末尾**后重试；**绝不**静默加确认 flag 绕过 → [`lark-shared-high-risk-approval.md`](references\u002Flark-shared-high-risk-approval.md)。\n\n5. **文件路径只接受相对路径**：`--file`、`--output`、`--output-dir`、`@file` 等路径参数只接受 cwd 下的相对路径，传绝对路径会报 `unsafe file path`。数据输入（`@file`、大 JSON）优先用 stdin 传入，避免路径和转义问题。\n\n\n## Reference 强触发索引\n\n命中任一触发条件时，**MUST 在执行下一步前读取对应 reference**。命中多条时按表中顺序读取，同一reference只读取一次。\n\n| 强触发条件（命中任一即必读） | Reference |\n|---|---|\n| 查看自己是谁(user\u002Fbot)、获取当前身份详细字段信息、身份诊断、`--as`选择逻辑、身份延续、登录态、认证、scope、授权和权限管理、`missing_scopes` 或 `console_url`、Agent 准备发起或完成 `auth login` | [`lark-shared-identity-and-permissions.md`](references\u002Flark-shared-identity-and-permissions.md) |\n| 需要依赖 JSON 输出契约判断成功 \u002F 失败、读取 stdout \u002F stderr，或为命令编写脚本与封装 | [`lark-shared-output-contract.md`](references\u002Flark-shared-output-contract.md) |\n| 准备执行high-risk-write(高风险操作)、判断命令风险等级、遇到退出码 exit 10、`confirmation_required`、确认后重试 | [`lark-shared-high-risk-approval.md`](references\u002Flark-shared-high-risk-approval.md) |\n| 首次使用CLI需运行 `lark-cli config init` 完成应用配置、或 CLI 明确提示 `config init --new` | [`lark-shared-config-init.md`](references\u002Flark-shared-config-init.md) |\n| 用户询问 notice、CLI版本更新、或输出含 `_notice`（升级 \u002F skills 落后 \u002F 废弃命令提示）| [`lark-shared-update-notice.md`](references\u002Flark-shared-update-notice.md) |\n",{"name":5,"version":24,"metadata":25,"description":7},"1.1.0",{"requires":26},{"bins":27},[28],"lark-cli","main","4203560c761baef3021f4ecc7afbdd919f3b06ca","skills\u002Flark-shared","https:\u002F\u002Fgithub.com\u002Fwhofly2016\u002Flark-cli","https:\u002F\u002Fgithub.com\u002Fwhofly2016","2026-09-10 14:41:23",{"source":8,"skillName":5,"commands":36,"prompt":46,"zipAvailable":47},[37,40,43],{"tool":38,"command":39},"npx","npx skills add whofly2016\u002Flark-cli --skill lark-shared",{"tool":41,"command":42},"bunx","bunx skills add whofly2016\u002Flark-cli --skill lark-shared",{"tool":44,"command":45},"pnpm","pnpm dlx skills add whofly2016\u002Flark-cli --skill lark-shared","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fwhofly2016\u002Flark-cli\u002Fblob\u002Fmain\u002Fskills\u002Flark-shared\u002FSKILL.md",true,[49,55,59,63,67,71],{"path":50,"resourceType":51,"resourceTypeDesc":52,"sizeBytes":53,"sourceHtmlUrl":54},"references\u002Flark-shared-config-init.md","REFERENCE","参考文档",980,"https:\u002F\u002Fgithub.com\u002Fwhofly2016\u002Flark-cli\u002Fblob\u002Fmain\u002Fskills\u002Flark-shared\u002Freferences\u002Flark-shared-config-init.md",{"path":56,"resourceType":51,"resourceTypeDesc":52,"sizeBytes":57,"sourceHtmlUrl":58},"references\u002Flark-shared-high-risk-approval.md",2070,"https:\u002F\u002Fgithub.com\u002Fwhofly2016\u002Flark-cli\u002Fblob\u002Fmain\u002Fskills\u002Flark-shared\u002Freferences\u002Flark-shared-high-risk-approval.md",{"path":60,"resourceType":51,"resourceTypeDesc":52,"sizeBytes":61,"sourceHtmlUrl":62},"references\u002Flark-shared-identity-and-permissions.md",5805,"https:\u002F\u002Fgithub.com\u002Fwhofly2016\u002Flark-cli\u002Fblob\u002Fmain\u002Fskills\u002Flark-shared\u002Freferences\u002Flark-shared-identity-and-permissions.md",{"path":64,"resourceType":51,"resourceTypeDesc":52,"sizeBytes":65,"sourceHtmlUrl":66},"references\u002Flark-shared-output-contract.md",933,"https:\u002F\u002Fgithub.com\u002Fwhofly2016\u002Flark-cli\u002Fblob\u002Fmain\u002Fskills\u002Flark-shared\u002Freferences\u002Flark-shared-output-contract.md",{"path":68,"resourceType":51,"resourceTypeDesc":52,"sizeBytes":69,"sourceHtmlUrl":70},"references\u002Flark-shared-update-notice.md",1040,"https:\u002F\u002Fgithub.com\u002Fwhofly2016\u002Flark-cli\u002Fblob\u002Fmain\u002Fskills\u002Flark-shared\u002Freferences\u002Flark-shared-update-notice.md",{"path":72,"resourceType":51,"resourceTypeDesc":52,"sizeBytes":73,"sourceHtmlUrl":74},"references\u002Flark-wiki-token-routing.md",2026,"https:\u002F\u002Fgithub.com\u002Fwhofly2016\u002Flark-cli\u002Fblob\u002Fmain\u002Fskills\u002Flark-shared\u002Freferences\u002Flark-wiki-token-routing.md",[76,83,90,97,104,111],{"skillNo":77,"name":78,"nameZh":6,"description":79,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":80,"categories":81,"keywords":82,"publishedAt":19},"01M7CERFTV4EX237V9MR6BB03W","cli-e2e-testcase-writer","Use when adding or updating Go CLI E2E coverage for one `tests\u002Fcli_e2e\u002F{domain}` domain of the compiled `lark-cli`, especially when the work requires live `--help` or `schema` exploration, scenario-based `clie2e.RunCmd` workflows, and per-domain `coverage.md` maintenance.","https:\u002F\u002Fgithub.com\u002Fwhofly2016\u002Flark-cli\u002Fblob\u002Fmain\u002Ftests\u002Fcli_e2e\u002Fcli-e2e-testcase-writer\u002FSKILL.md",[],[],{"skillNo":84,"name":85,"nameZh":6,"description":86,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":87,"categories":88,"keywords":89,"publishedAt":19},"01M7CERDX726ZB3ZQD96KY478Q","lark-workflow-standup-report","日程待办摘要：编排 calendar +agenda 和 task +get-my-tasks，生成指定日期的日程与未完成任务摘要。适用于了解今天\u002F明天\u002F本周的安排。","https:\u002F\u002Fgithub.com\u002Fwhofly2016\u002Flark-cli\u002Fblob\u002Fmain\u002Fskills\u002Flark-workflow-standup-report\u002FSKILL.md",[],[],{"skillNo":91,"name":92,"nameZh":6,"description":93,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":94,"categories":95,"keywords":96,"publishedAt":19},"01M7CERB9BG534VGT8ENM8M13V","lark-workflow-meeting-summary","会议纪要整理工作流：汇总指定时间范围内的会议纪要并生成结构化报告。当用户需要整理会议纪要、生成会议周报、回顾一段时间内的会议内容时使用。","https:\u002F\u002Fgithub.com\u002Fwhofly2016\u002Flark-cli\u002Fblob\u002Fmain\u002Fskills\u002Flark-workflow-meeting-summary\u002FSKILL.md",[],[],{"skillNo":98,"name":99,"nameZh":6,"description":100,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":101,"categories":102,"keywords":103,"publishedAt":19},"01M7CER77VT3N7KCG1YF9NKM2G","lark-wiki","飞书知识库：管理知识空间、空间成员和文档节点。创建和查询知识空间、查看和管理空间成员、管理节点层级结构、在知识库中组织文档和快捷方式。当用户需要在知识库中查找或创建文档、浏览知识空间结构、查看或管理空间成员、移动或复制节点时使用。当用户给出 doubao.com 的 \u002Fwiki\u002F URL\u002Ftoken 时，也应直接使用本 skill，不要因为域名不是飞书而回退到 WebFetch；路由依据是 URL 路径模式和 token，而不是域名。不负责：上传文件到知识库节点下（走 lark-drive）、编辑文档\u002F表格\u002FBase 内容（走 lark-doc \u002F lark-sheets \u002F lark-base）。","https:\u002F\u002Fgithub.com\u002Fwhofly2016\u002Flark-cli\u002Fblob\u002Fmain\u002Fskills\u002Flark-wiki\u002FSKILL.md",[],[],{"skillNo":105,"name":106,"nameZh":6,"description":107,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":108,"categories":109,"keywords":110,"publishedAt":19},"01M7CER49G6PQWW6M5657FHMZY","lark-whiteboard","飞书画板：查询和编辑飞书云文档中的画板。支持导出画板为预览图片、导出原始节点结构、使用多种格式更新画板内容。 当用户需要查看画板内容、导出画板图片、编辑画板时使用此 skill。不负责：飞书云文档内容编辑（lark-doc）、文档内嵌电子表格\u002FBase（lark-sheets \u002F lark-base）。","https:\u002F\u002Fgithub.com\u002Fwhofly2016\u002Flark-cli\u002Fblob\u002Fmain\u002Fskills\u002Flark-whiteboard\u002FSKILL.md",[],[],{"skillNo":112,"name":113,"nameZh":6,"description":114,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":115,"categories":116,"keywords":117,"publishedAt":19},"01M7CER2B7RD9Z936GEJ3EN95H","lark-vc","仅当用户或上游配置显式指定 lark-vc 时使用，相关请求统一交由 lark-meeting 技能处理。","https:\u002F\u002Fgithub.com\u002Fwhofly2016\u002Flark-cli\u002Fblob\u002Fmain\u002Fskills\u002Flark-vc\u002FSKILL.md",[],[]]