lark-doc
Manage and edit Lark/Feishu cloud documents and resources via natural language commands.
Install
mkdir -p .claude/skills/lark-doc-rabbit-ivan && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/11836" && unzip -o skill.zip -d .claude/skills/lark-doc-rabbit-ivan && rm skill.zipInstalls to .claude/skills/lark-doc-rabbit-ivan
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
飞书云文档:创建和编辑飞书文档。从 Markdown 创建文档、获取文档内容、更新文档(追加/覆盖/替换/插入/删除)、上传和下载文档中的图片和文件、搜索云空间文档。当用户需要创建或编辑飞书文档、读取文档内容、在文档中插入图片、搜索云空间文档时使用;如果用户是想按名称或关键词先定位电子表格、报表等云空间对象,也优先使用本 skill 的 docs +search 做资源发现。Key capabilities
- →Create Lark documents from Markdown
- →Get content of Lark documents
- →Update Lark documents (append, overwrite, replace, insert, delete)
- →Upload and download images and files within documents
- →Search for documents in Lark cloud space
- →Resolve `wiki_token` to `obj_token` for Wiki links
How it works
This skill interfaces with Lark cloud documents to create, update, and search for documents. It handles specific token resolution for Wiki links and supports media management within documents.
Inputs & outputs
When to use lark-doc
- →Creating documents from Markdown
- →Updating cloud doc content
- →Searching for cloud resources
- →Uploading images to documents
About this skill
docs (v1)
CRITICAL — 开始前 MUST 先用 Read 工具读取 ../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使用对应的 APIobj_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了解如何编辑画板内容
场景 2:刚创建画板,需要编辑
如果用户刚通过 docs +update 创建了空白画板,需要编辑时:
步骤 1:按空白画板语法创建
- 在
--markdown中直接传<whiteboard type="blank"></whiteboard> - 需要多个空白画板时,在同一个
--markdown里重复多个 whiteboard 标签 步骤 2:从响应中记录 token docs +update成功后,读取响应字段data.board_tokensdata.board_tokens是新建画板的 token 列表,后续编辑直接使用这里的 token 步骤 3:引导编辑- 记录需要编辑的画板 token
- 查看
../lark-whiteboard/SKILL.md了解如何编辑画板内容
注意事项
- 已有画板内容无法通过 lark-doc 的
docs +update直接编辑 - 编辑画板需要使用专门的
../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 | Search Lark docs, Wiki, and spreadsheet files (Search v2: doc_wiki/search) |
+create | Create a Lark document |
+fetch | Fetch Lark document content |
+update | Update a Lark document |
+media-insert | Insert a local image or file at the end of a Lark document (4-step orchestration + auto-rollback) |
+media-download | Download document media or whiteboard thumbnail (auto-detects extension) |
+whiteboard-update | Update an existing whiteboard in lark document with whiteboard dsl. Such DSL input from stdin. refer to lark-whiteboard skill for more details. |
When not to use it
- →When directly editing existing whiteboard content within Lark documents
- →When the user wants to perform operations specific to spreadsheets (e.g., cell editing) after discovering them
- →When the `lark-cli` tool is not available
Prerequisites
Limitations
- →Cannot directly edit existing whiteboard content
- →Requires `lark-cli` to be installed
- →Wiki links require an additional step to query node information and extract the real `obj_token`
How it compares
This skill provides direct command-line interaction for Lark cloud document management, including complex token resolution for various document types, unlike manual web interface operations.
Compared to similar skills
lark-doc side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| lark-doc (this skill) | 0 | 3mo | Review | Intermediate |
| docx | 93 | 5mo | Review | Advanced |
| transcription | 1 | 6mo | Review | Intermediate |
| granola-core-workflow-a | 1 | 25d | No flags | Beginner |
Try saying
Example prompts that trigger this skill in your AI assistant.
You might also like
docx
anthropics
Comprehensive document creation, editing, and analysis with support for tracked changes, comments, formatting preservation, and text extraction. When Claude needs to work with professional documents (.docx files) for: (1) Creating new documents, (2) Modifying or editing content, (3) Working with tracked changes, (4) Adding comments, or any other document tasks
transcription
MadAppGang
Audio/video transcription using OpenAI Whisper. Covers installation, model selection, transcript formats (SRT, VTT, JSON), timing synchronization, and speaker diarization. Use when transcribing media or generating subtitles.
granola-core-workflow-a
jeremylongshore
Meeting preparation and template setup workflow with Granola. Use when preparing for important meetings, setting up note templates, or configuring meeting-specific capture settings. Trigger with phrases like "granola meeting prep", "granola template", "prepare granola meeting", "granola agenda", "granola setup meeting".
re0
LowyShin
Refresh an existing artifact into the current best v0. Use when the user asks to clean up, sync up, dedupe, de-noise, smooth, rewrite, or update an artifact after iteration; when nearby artifacts may have drifted; or when changes in one place should be reflected across related artifacts while keepin
kb-meeting-protocol
kvcop
Build meeting protocols from transcripts in tmp/: validate inputs (Voice Recognition transcript required), generate artifacts under notes/meetings/artifacts/, create a meeting note under notes/meetings/ (YYYY-MM-DD-slug.md) with a copy-ready Russian protocol block, and update notes/work/typos.md via
docs-write
metabase
Write documentation following Metabase's conversational, clear, and user-focused style. Use when creating or editing documentation files (markdown, MDX, etc.).