|
| 1 | +# lark-doc 操作入口 Guide |
| 2 | + |
| 3 | +本文件维护执行前的入口判断:先用“操作大类前置”确定必读 reference,再用“命令作用域”确认应走正文、素材、资源还是画板桥接能力。具体参数、示例和工作流仍以各 reference 为准。 |
| 4 | + |
| 5 | +所有操作都默认先读 [`../../lark-shared/SKILL.md`](../../lark-shared/SKILL.md),了解认证、权限、安全规则、全局参数和路径限制。 |
| 6 | + |
| 7 | +## 操作大类前置 |
| 8 | + |
| 9 | +| 操作大类 | 触发场景 | 必读 reference | 条件加读 | |
| 10 | +|-|-|-|-| |
| 11 | +| 读取文档 | 浏览、总结、摘取正文、定位 block、获取直达链接、提取素材或嵌入对象 token | [`lark-doc-fetch.md`](lark-doc-fetch.md) | 需要 Markdown 输出或基于 Markdown 更新时读 [`lark-doc-md.md`](lark-doc-md.md) | |
| 12 | +| 创建文档 | 新建 Docx/Wiki 文档,含短文档、长文档骨架、Markdown 导入 | [`lark-doc-create.md`](lark-doc-create.md), [`lark-doc-xml.md`](lark-doc-xml.md) | 用户提供 `.md` 或明确要求 Markdown 时读 [`lark-doc-md.md`](lark-doc-md.md);长文档读 [`style/lark-doc-create-workflow.md`](style/lark-doc-create-workflow.md);需要根据题材组织文档时读 [`style/topics/topic-router.md`](style/topics/topic-router.md);需要富 block 或美化时读 [`style/lark-doc-style.md`](style/lark-doc-style.md) | |
| 13 | +| 编辑文档 | 替换、插入、删除、移动、复制、追加、覆盖、改写、润色、重排版 | [`lark-doc-update.md`](lark-doc-update.md), [`lark-doc-xml.md`](lark-doc-xml.md) | 用户明确要求 Markdown 或需 Markdown 跨行匹配时读 [`lark-doc-md.md`](lark-doc-md.md);改写/润色读 [`style/lark-doc-update-workflow.md`](style/lark-doc-update-workflow.md);需要富 block 或美化时读 [`style/lark-doc-style.md`](style/lark-doc-style.md) | |
| 14 | +| 正文素材 | 插入、预览或下载正文图片/附件,下载画板缩略图 | 对应操作的 [`lark-doc-media-insert.md`](lark-doc-media-insert.md) / [`lark-doc-media-preview.md`](lark-doc-media-preview.md) / [`lark-doc-media-download.md`](lark-doc-media-download.md) | 需要从文档中提取素材 token 时先读 [`lark-doc-fetch.md`](lark-doc-fetch.md) | |
| 15 | +| 文档级资源 | 下载、更新或删除 Docx 封面图 | [`lark-doc-resource-cover.md`](lark-doc-resource-cover.md) | 无;封面不是正文 `<img>`,不要走 `+media-*` | |
| 16 | +| 画板协作 | 新增 Mermaid/SVG 画板,或更新已有画板 | [`lark-doc-whiteboard.md`](lark-doc-whiteboard.md) | 插入新的 `<whiteboard>` block 时读 [`lark-doc-xml.md`](lark-doc-xml.md);更新已有复杂画板时读 [`../../lark-whiteboard/SKILL.md`](../../lark-whiteboard/SKILL.md);需要美化/结构化表达时读 [`style/lark-doc-style.md`](style/lark-doc-style.md) | |
| 17 | +| 嵌入对象下钻 | 正文中出现 `<sheet>`、`<bitable>`、`<cite file-type=...>`、`<vc-transcribe-tab>`、`<synced_reference>` 等 | [`lark-doc-fetch.md`](lark-doc-fetch.md) | 按对象类型切到 [`../../lark-sheets/SKILL.md`](../../lark-sheets/SKILL.md)、[`../../lark-base/SKILL.md`](../../lark-base/SKILL.md)、[`../../lark-note/SKILL.md`](../../lark-note/SKILL.md) 或继续用 `docs +fetch` 读取源文档 | |
| 18 | +| 非本 skill | 评论、评论回复、reaction、权限、云空间文件管理、导入导出 | 对应目标 skill | 评论/云空间管理走 [`../../lark-drive/SKILL.md`](../../lark-drive/SKILL.md);表格/Base 内部数据走 sheets/base | |
| 19 | + |
| 20 | +## 命令作用域 |
| 21 | + |
| 22 | +不要用命令名是否带 `+` 判断语义;正文内容、正文素材、文档级资源和画板桥接是不同作用域。Shortcut 是高级封装,有 Shortcut 的操作优先使用。 |
| 23 | + |
| 24 | +| 命令 | 类别 | 作用域 | 说明 | |
| 25 | +|-|-|-|-| |
| 26 | +| `docs +create` | workflow | document content | 创建 Docx/Wiki 文档,默认 XML | |
| 27 | +| `docs +fetch` | workflow | document content | 读取正文结构、block id、媒体/资源 token、嵌入对象引用 | |
| 28 | +| `docs +update` | workflow | document content | 修改正文 block 或全文 | |
| 29 | +| `docs +media-insert` | media | body block | 在正文中插入图片或附件 | |
| 30 | +| `docs +media-preview` | media | body asset | 预览正文图片或附件素材 | |
| 31 | +| `docs +media-download` | media | body asset / whiteboard thumbnail | 下载正文图片、附件或画板缩略图 | |
| 32 | +| `docs +resource-download --type cover` | resource/meta | document cover | 下载 Docx 封面图资源 | |
| 33 | +| `docs +resource-update --type cover` | resource/meta | document cover | 更新 Docx 封面图资源 | |
| 34 | +| `docs +resource-delete --type cover` | resource/meta | document cover | 删除 Docx 封面图资源 | |
| 35 | +| `docs +whiteboard-update` | bridge | whiteboard | `whiteboard +update` 的 docs alias;已有画板更新优先按 lark-whiteboard 流程执行 | |
| 36 | + |
| 37 | +## 作用域边界 |
| 38 | + |
| 39 | +### document content |
| 40 | + |
| 41 | +正文内容树。包括标题、段落、列表、表格、callout、grid、正文中的 `<img>` / `<source>` / `<whiteboard>` / `<sheet>` 等 block 或行内节点。 |
| 42 | + |
| 43 | +- 读取:`docs +fetch` |
| 44 | +- 创建:`docs +create` |
| 45 | +- 修改:`docs +update` |
| 46 | +- 格式:XML 默认,Markdown 仅在用户明确要求或导入 `.md` 时使用 |
| 47 | + |
| 48 | +### body media |
| 49 | + |
| 50 | +正文里的图片、附件、画板缩略图等素材。正文素材来自正文 block 或资源 token,不等同于文档封面。 |
| 51 | + |
| 52 | +- 插入图片/附件:`docs +media-insert` |
| 53 | +- 预览图片/附件:`docs +media-preview` |
| 54 | +- 下载图片/附件/画板缩略图:`docs +media-download` |
| 55 | + |
| 56 | +### document resource/meta |
| 57 | + |
| 58 | +文档级资源或元信息,不属于正文 block。当前 docs resource shortcut 重点覆盖 Docx 封面图。 |
| 59 | + |
| 60 | +- 封面图下载:`docs +resource-download --type cover` |
| 61 | +- 封面图更新:`docs +resource-update --type cover` |
| 62 | +- 封面图删除:`docs +resource-delete --type cover` |
| 63 | + |
| 64 | +封面图不是正文里的 `<img>`,不要用 `+media-insert` 或 `+media-download --token <cover.token>` 手动拼步骤。 |
| 65 | + |
| 66 | +### bridge |
| 67 | + |
| 68 | +跨 skill 协作入口。`docs +whiteboard-update` 是已有画板更新的 alias;复杂画板查询、导出、渲染验证和写入以 [`lark-whiteboard`](../../lark-whiteboard/SKILL.md) 的流程为准。 |
| 69 | + |
| 70 | +## 格式选择 |
| 71 | + |
| 72 | +- **创建 / 导入场景**:XML 和 Markdown 都可以。用户提供 `.md` 本地文件、或明确说“导入 Markdown”时直接用 Markdown;否则默认 XML。 |
| 73 | +- **精准编辑场景**:`str_replace` / `block_insert_after` / `block_replace` / `block_delete` / `block_move_after` 等局部精修优先 XML。 |
| 74 | +- **Markdown 限制**:Markdown 不携带 block ID,也无样式。需要按 block ID 定位时,先用 `docs +fetch --detail with-ids` 局部获取目标段落。 |
| 75 | +- **富 block**:callout、grid、table、whiteboard 等结构化表达由内容和用户意图决定;不要为了“丰富”强行套用固定结构。 |
| 76 | + |
| 77 | +## 校验要点 |
| 78 | + |
| 79 | +- 写操作后,如继续 block 级操作,按 [`lark-doc-update.md`](lark-doc-update.md) 的“Block ID 生命周期”判断是否需要重新 fetch。 |
| 80 | +- `overwrite` / `block_replace` / `block_delete` 后不要复用受影响旧 ID。 |
| 81 | +- 插入 / 复制新块后,要操作新块必须重新 fetch 获取新 block ID。 |
| 82 | +- 正文素材走 `+media-*`;文档封面走 `+resource-* --type cover`。 |
0 commit comments