CRITICAL — 开始前 MUST 先用 Read 工具读取 ../lark-shared/SKILL.md,其中包含认证、权限处理
身份:Markdown 文件通常属于用户云空间资源,优先使用 --as user。如为自动化场景,或应用已创建并持有目标文件权限,可按场景使用 --as bot。首次以 user 身份访问前执行 lark-cli auth login
markdown +create / +overwrite 失败时,先判断是不是身份和权限问题:bot 更常见的是 app scope 或目标目录 ACL,user 更常见的是用户授权或用户 ACL;不要不加判断地来回切身份重试。
用户要上传、创建一个原生 .md 文件,使用 lark-cli markdown +create
用户要比较原生 .md 文件的历史版本差异,或比较远端 Markdown 与本地草稿,使用 lark-cli markdown +diff
用户要读取 Drive 里某个 .md 文件内容,使用 lark-cli markdown +fetch
用户要对 Markdown 文件做局部文本替换 / 正则替换,优先使用 lark-cli markdown +patch
用户要覆盖更新 Drive 里某个 .md 文件内容,使用 lark-cli markdown +overwrite
用户要先拿 Markdown 文件的历史版本号,再做比较/下载/回滚,先用 lark-drive 的 lark-cli drive +version-history
用户要把本地 Markdown 导入成在线新版文档(docx),不要用本 skill,改用 lark-drive 的 lark-cli drive +import --type docx
用户要对 Markdown 文件做rename / move / delete / 搜索 / 权限 / 评论等云空间(云盘/云存储)操作,不要留在本 skill,切到 lark-drive
markdown +create / +overwrite 命中 missing scope、permission denied、not found、version limit 时,默认停止重试并按报错 hint 处理;只有 rate limit 或临时网络错误才做有限重试。
--name 和本地 --file 文件名都必须显式带 .md 后缀;不满足时 shortcut 会直接报错--content 支持:
@file 从本地文件读取内容- 从 stdin 读取内容markdown +patch 的内部语义是:先完整下载 Markdown,再本地替换,再整文件覆盖上传
markdown +patch 不是服务端原子 patch;它是 CLI 侧编排出来的局部更新能力markdown +patch 当前只支持单组 --pattern / --content
markdown +patch 替换后的最终内容不能为空;CLI 会拒绝上传空文件,因为 Drive 不支持零字节 Markdown,且空文件通常是误操作--file 只接受本地 .md 文件路径正则替换时要特别注意 --pattern 的转义:
# BAD: 未转义正则特殊字符,可能匹配到错误位置
lark-cli markdown +patch --file-token boxcnxxxx --regex --pattern "version (1.0)" --content "version (2.0)"
# GOOD: 显式转义括号和点号
lark-cli markdown +patch --file-token boxcnxxxx --regex --pattern "version \\(1\\.0\\)" --content "version (2.0)"
Shortcut 是对常用操作的高级封装(lark-cli markdown +<verb> [flags])。有 Shortcut 的操作优先使用。
| Shortcut | 说明 |
|---|---|
+create |
Create a Markdown file in Drive |
+diff |
Compare two remote Markdown versions, or compare remote Markdown against a local file |
+fetch |
Fetch a Markdown file from Drive |
+patch |
Patch a Markdown file in Drive via fetch-local-replace-overwrite |
+overwrite |
Overwrite an existing Markdown file in Drive |