---
id: daily-lark-doc
name: "lark-doc"
url: https://skills.yangsir.net/skill/daily-lark-doc
author: larksuite
domain: ai-productivity-automation
tags: ["api-integration", "documentation", "saas"]
install_count: 156700
rating: 4.80 (1196 reviews)
github: https://github.com/larksuite/cli
---

# lark-doc

> 操作飞书文档，支持添加评论、下载文件等，需正确获取不同文档类型的file_token

**Stats**: 156,700 installs · 4.8/5 (1196 reviews)

## Before / After 对比

### 飞书文档操作

**Before**:

手动解析不同类型文档的URL格式，查找对应的API接口和Token获取方法，容易混淆不同文档类型的调用方式

**After**:

自动识别文档类型并获取正确的file_token，统一调用文档操作接口，支持评论、下载等功能

| Metric | Before | After | Change |
|---|---|---|---|
| 开发时间 | 120分钟 | 15分钟 | -88% |

## Readme

# lark-doc

# docs (v1)

**CRITICAL — 开始前 MUST 先用 Read 工具读取 [`../lark-shared/SKILL.md`](https://github.com/larksuite/cli/blob/HEAD/skills/lark-doc/../lark-shared/SKILL.md)，其中包含认证、权限处理**

## 核心概念

### 文档类型与 Token

飞书开放平台中，不同类型的文档有不同的 URL 格式和 Token 处理方式。在进行文档操作（如添加评论、下载文件等）时，必须先获取正确的 `file_token`。

### 文档 URL 格式与 Token 处理

URL 格式
示例
Token 类型
处理方式

`/docx/`
`https://example.larksuite.com/docx/doxcnxxxxxxxxx`
`file_token`
URL 路径中的 token 直接作为 `file_token` 使用

`/doc/`
`https://example.larksuite.com/doc/doccnxxxxxxxxx`
`file_token`
URL 路径中的 token 直接作为 `file_token` 使用

`/wiki/`
`https://example.larksuite.com/wiki/wikcnxxxxxxxxx`
`wiki_token`
⚠️ **不能直接使用**，需要先查询获取真实的 `obj_token`

`/sheets/`
`https://example.larksuite.com/sheets/shtcnxxxxxxxxx`
`file_token`
URL 路径中的 token 直接作为 `file_token` 使用

`/drive/folder/`
`https://example.larksuite.com/drive/folder/fldcnxxxx`
`folder_token`
URL 路径中的 token 作为文件夹 token 使用

### Wiki 链接特殊处理（关键！）

知识库链接（`/wiki/TOKEN`）背后可能是云文档、电子表格、多维表格等不同类型的文档。**不能直接假设 URL 中的 token 就是 file_token**，必须先查询实际类型和真实 token。

#### 处理流程

- 

**使用 `wiki.spaces.get_node` 查询节点信息**

```
lark-cli wiki spaces get_node --params '{"token":"wiki_token"}'

```

- 

**从返回结果中提取关键信息**

`node.obj_type`：文档类型（docx/doc/sheet/bitable/slides/file/mindnote）

- `node.obj_token`：**真实的文档 token**（用于后续操作）

- `node.title`：文档标题

- 

**根据 `obj_type` 使用对应的 API**

obj_type
说明
使用的 API

`docx`
新版云文档
`drive file.comments.*`、`docx.*`

`doc`
旧版云文档
`drive file.comments.*`

`sheet`
电子表格
`sheets.*`

`bitable`
多维表格
`bitable.*`

`slides`
幻灯片
`drive.*`

`file`
文件
`drive.*`

`mindnote`
思维导图
`drive.*`

#### 查询示例

```
# 查询 wiki 节点
lark-cli wiki spaces get_node --params '{"token":"wiki_token"}'

```

返回结果示例：

```
{
   "node": {
      "obj_type": "docx",
      "obj_token": "xxxx",
      "title": "标题",
      "node_type": "origin",
      "space_id": "12345678910"
   }
}

```

### 资源关系

```
Wiki Space (知识空间)
└── Wiki Node (知识库节点)
    ├── obj_type: docx (新版文档)
    │   └── obj_token (真实文档 token)
    ├── obj_type: doc (旧版文档)
    │   └── obj_token (真实文档 token)
    ├── obj_type: sheet (电子表格)
    │   └── obj_token (真实文档 token)
    ├── obj_type: bitable (多维表格)
    │   └── obj_token (真实文档 token)
    └── obj_type: file/slides/mindnote
        └── obj_token (真实文档 token)

Drive Folder (云空间文件夹)
└── File (文件/文档)
    └── file_token (直接使用)

```

## 重要说明：画板编辑

**⚠️ lark-doc skill 不能直接编辑已有画板内容，但 `docs +update` 可以新建空白画板**

### 场景 1：已通过 docs +fetch 获取到文档内容和画板 token

如果用户已经通过 `docs +fetch` 拉取了文档内容，并且文档中已有画板（返回的 markdown 中包含 `<whiteboard token="xxx"/>` 标签），请引导用户：

- 记录画板的 token

- 查看 [`../lark-whiteboard/SKILL.md`](https://github.com/larksuite/cli/blob/HEAD/skills/lark-doc/../lark-whiteboard/SKILL.md) 了解如何编辑画板内容

### 场景 2：刚创建画板，需要编辑

如果用户刚通过 `docs +update` 创建了空白画板，需要编辑时：
**步骤 1：按空白画板语法创建**

- 在 `--markdown` 中直接传 `<whiteboard type="blank"></whiteboard>`

- 需要多个空白画板时，在同一个 `--markdown` 里重复多个 whiteboard 标签
**步骤 2：从响应中记录 token**

- `docs +update` 成功后，读取响应字段 `data.board_tokens`

- `data.board_tokens` 是新建画板的 token 列表，后续编辑直接使用这里的 token
**步骤 3：引导编辑**

- 记录需要编辑的画板 token

- 查看 [`../lark-whiteboard/SKILL.md`](https://github.com/larksuite/cli/blob/HEAD/skills/lark-doc/../lark-whiteboard/SKILL.md) 了解如何编辑画板内容

### 注意事项

- 已有画板内容无法通过 lark-doc 的 `docs +update` 直接编辑

- 编辑画板需要使用专门的 [`../lark-whiteboard/SKILL.md`](https://github.com/larksuite/cli/blob/HEAD/skills/lark-doc/../lark-whiteboard/SKILL.md)

## 快速决策

- 用户说“找一个表格”“按名称搜电子表格”“找报表”“最近打开的表格”，先用 `lark-cli docs +search` 做资源发现。

- `docs +search` 不是只搜文档 / Wiki；结果里会直接返回 `SHEET` 等云空间对象。

- 拿到 spreadsheet URL / token 后，再切到 `lark-sheets` 做对象内部读取、筛选、写入等操作。

## 补充说明

`docs +search` 除了搜索文档 / Wiki，也承担“先定位云空间对象，再切回对应业务 skill 操作”的资源发现入口角色；当用户口头说“表格 / 报表”时，也优先从这里开始。

## Shortcuts（推荐优先使用）

Shortcut 是对常用操作的高级封装（`lark-cli docs +<verb> [flags]`）。有 Shortcut 的操作优先使用。

Shortcut
说明

[`+search`](https://github.com/larksuite/cli/blob/HEAD/skills/lark-doc/references/lark-doc-search.md)
Search Lark docs, Wiki, and spreadsheet files (Search v2: doc_wiki/search)

[`+create`](https://github.com/larksuite/cli/blob/HEAD/skills/lark-doc/references/lark-doc-create.md)
Create a Lark document

[`+fetch`](https://github.com/larksuite/cli/blob/HEAD/skills/lark-doc/references/lark-doc-fetch.md)
Fetch Lark document content

[`+update`](https://github.com/larksuite/cli/blob/HEAD/skills/lark-doc/references/lark-doc-update.md)
Update a Lark document

[`+media-insert`](https://github.com/larksuite/cli/blob/HEAD/skills/lark-doc/references/lark-doc-media-insert.md)
Insert a local image or file at the end of a Lark document (4-step orchestration + auto-rollback)

[`+media-download`](https://github.com/larksuite/cli/blob/HEAD/skills/lark-doc/references/lark-doc-media-download.md)
Download document media or whiteboard thumbnail (auto-detects extension)

[`+whiteboard-update`](https://github.com/larksuite/cli/blob/HEAD/skills/lark-doc/references/lark-doc-whiteboard-update.md)
Update an existing whiteboard in lark document with whiteboard dsl. Such DSL input from stdin. refer to lark-whiteboard skill for more details.

Weekly Installs3.6KRepository[larksuite/cli](https://github.com/larksuite/cli)GitHub Stars1First SeenTodaySecurity Audits[Gen Agent Trust HubPass](/larksuite/cli/lark-doc/security/agent-trust-hub)[SocketWarn](/larksuite/cli/lark-doc/security/socket)[SnykFail](/larksuite/cli/lark-doc/security/snyk)Installed oncodex3.6Kopencode3.6Kgithub-copilot3.6Kcursor3.6Kgemini-cli3.6Kcline3.6K

---
*Source: https://skills.yangsir.net/skill/daily-lark-doc*
*Markdown mirror: https://skills.yangsir.net/api/skill/daily-lark-doc/markdown*