将飞书文档或知识库文档导出为 Markdown 文件,或导出为 PDF/Word 等格式(异步任务)。 当用户请求"导出文档"、"导出为 Markdown"、"转换为 Markdown"、"保存为 md"、 "导出 PDF"、"导出 Word"、"下载文档"时使用。 本技能专注于导出操作。从本地 DOCX 文件导...
将飞书云文档或知识库文档导出为本地 Markdown 文件,或导出为 PDF/Word 等格式。
FEISHU_APP_ID / FEISHU_APP_SECRET),通过环境变量或 ~/.feishu-cli/config.yaml 设置docx:document 或 docx:document:readonly(文档导出)、 wiki:wiki:readonly(知识库导出)feishu-cli auth login --scopes "docx:document:readonly offline_access" 授权, doc export 会自动读取保存的 User Token--expand-mentions 展开 @用户时,还需 contact:user.base:readonly 权限Markdown 作为中间格式:飞书云文档的内容通过 Markdown 格式导出到本地。选择 Markdown 作为中间格式,是因为它结构清晰、便于 Claude 理解和处理文档内容,同时也方便用户进行二次编辑或版本管理。中间文件默认存储在 /tmp 目录中。
bash
# 导出普通文档
/feishu-export <document_id>
/feishu-export <document_id> ./output.md
# 导出知识库文档
/feishu-export <wiki_url>
解析参数
/docx/ → 普通文档/wiki/ → 知识库文档/tmp/<id>.md执行导出
普通文档: bash
feishu-cli doc export <document_id> --output <output_path>
知识库文档: bash
feishu-cli wiki export <node_token> --output <output_path>
验证结果
参数说明默认值document_id/node_token文档 ID 或知识库节点 Token必需output_path输出文件路径/tmp/<id>.md--download-images下载文档中的图片和画板到本地(图片在飞书服务器以 token 形式存储,不下载则无法本地查看;画板自动导出为 PNG)否--assets-dir图片和画板的保存目录./assets--front-matter添加 YAML front matter(标题和文档 ID)否--highlight保留文本颜色和背景色(输出为 HTML <span> 标签)否--expand-mentions展开 @用户为友好格式(需要 contact:user.base:readonly 权限)是(默认开启)--user-access-tokenUser Access Token(用于访问无 App 权限的文档,未指定时自动从 auth login 读取)自动读取
URL 格式类型命令https://xxx.feishu.cn/docx/<id>普通文档doc export``https://xxx.feishu.cn/wiki/<token>知识库wiki export``https://xxx.larkoffice.com/docx/<id>普通文档doc export``https://xxx.larkoffice.com/wiki/<token>知识库wiki export
text
已导出文档!
文件路径: /path/to/output.md
文件大小: 2.5 KB
内容预览:
---
# 文档标题
...
bash
# 导出普通文档
/feishu-export <document_id>
/feishu-export <document_id> ~/Documents/doc.md
# 导出知识库文档
/feishu-export https://xxx.feishu.cn/wiki/<node_token>
/feishu-export <node_token> ./wiki_doc.md
# 导出并下载图片
/feishu-export <document_id> --download-images
# 导出并添加 YAML front matter
/feishu-export <document_id> -o doc.md --front-matter
# 导出并保留文本高亮颜色
/feishu-export <document_id> -o doc.md --highlight
使用 --front-matter 时,导出的 Markdown 文件顶部会添加:
yaml
---
title: "文档标题"
document_id: ABC123def456
---
使用 --highlight 时,带颜色的文本会输出为 HTML <span> 标签:
html
<span style="color: #ef4444">红色文本</span>
<span style="background-color: #eff6ff">蓝色高亮背景</span>
支持的颜色:7 种字体颜色(红/橙/黄/绿/蓝/紫/灰)+ 14 种背景色(浅/深各 7 种)。
导出文档时务必下载图片,以便后续理解图片内容:
bash
# 普通文档
feishu-cli doc export <document_id> \
--output /tmp/doc.md \
--download-images \
--assets-dir /tmp/doc_assets
# 知识库文档
feishu-cli wiki export <node_token> \
--output /tmp/wiki.md \
--download-images \
--assets-dir /tmp/wiki_assets
bash
# 查看下载的图片列表
ls -la /tmp/doc_assets/
# 使用 Read 工具读取图片(Claude 支持多模态)
# Read /tmp/doc_assets/image_1.png
# Read /tmp/doc_assets/image_2.png
--download-images --assets-dir <dir>ls <assets_dir>/错误原因解决code=1770032, msg=forBiddenApp Token 无权限访问该文档通过 auth login --scopes "docx:document:readonly offline_access" 授权 User Token, doc export 会自动读取code=99991679, msg=UnauthorizedUser Token 缺少 docx:document:readonly scope重新执行 feishu-cli auth login --scopes "docx:document:readonly offline_access"``code=131002, param err参数错误检查 token 格式code=131001, node not found节点不存在检查 token 是否正确code=131003, no permission无权限访问确认应用有 docx:document 或 wiki:wiki:readonly 权限code=99991672, open api request rate limitAPI 限流等待几秒后重试write /tmp/xxx.md: permission denied文件权限问题检查输出目录权限,更换输出路径
情况 1:目录节点导出
[Wiki 目录...]wiki nodes <space_id> --parent <token> 获取子节点情况 2:文档内容为空
情况 3:图片下载失败
--assets-dir 目录是否存在且可写情况 4:导出中断
--output 指定固定路径以便续传如果遇到网络错误或 API 限流:
bash
# 添加 --debug 查看详细错误信息
feishu-cli doc export <doc_id> --debug
# 等待几秒后重试
sleep 5 && feishu-cli doc export <doc_id>
问题说明表格导出表格内单元格内容可能显示为 <!-- Unknown block type: 32 -->,这是块类型 32(表格单元格)的已知转换问题目录节点知识库目录节点导出内容为 [Wiki 目录...],需单独获取子节点
以下导出功能已通过测试验证:
--download-images)--front-matter)--highlight)--expand-mentions,默认开启)导入(Markdown → 飞书)导出(飞书 → Markdown)Mermaid/PlantUML 代码块 → 飞书画板飞书画板 → 画板链接/PNG 图片大表格 → 自动拆分为多个表格多个表格 → 分开的表格缩进列表 → 嵌套父子块嵌套列表 → 缩进 Markdown> [!NOTE] → Callout 高亮块Callout 高亮块 → > [!NOTE]``$formula$ → 行内公式行内/块级公式 → $formula$``<u>下划线</u> → 下划线样式下划线样式 → <u>下划线</u>
注意:
将飞书云文档导出为 PDF、Word 等格式(异步三步流程):
bash
# 一条命令完成全部流程(内部自动创建任务→轮询→下载)
feishu-cli doc export-file <doc_token> --type pdf -o output.pdf
--type格式说明pdfPDF保留排版docxWord可编辑
参数说明默认值<doc_token>文档 Token必填--type导出格式必填-o, --output输出文件路径必填--user-access-tokenUser Access Token(用于导出无 App 权限的文档)自动读取
bash
# 导出为 PDF
feishu-cli doc export-file JKbxdRez1oNWEKxPz14cWMpBnKh --type pdf -o /tmp/report.pdf
# 导出为 Word
feishu-cli doc export-file JKbxdRez1oNWEKxPz14cWMpBnKh --type docx -o /tmp/report.docx
# 使用 User Token 导出(无 App 权限的文档)
feishu-cli doc export-file JKbxdRez1oNWEKxPz14cWMpBnKh --type pdf -o /tmp/report.pdf --user-access-token u-xxx
将本地 DOCX/XLSX 等文件导入为飞书云文档(异步流程):
bash
# 一条命令完成全部流程(内部自动上传→创建任务→轮询)
feishu-cli doc import-file local_file.docx --type docx --name "文档名称"
--type格式说明docxWord 文档转换为飞书文档
参数说明默认值<local_path>本地文件路径必填--type文件类型必填--name飞书文档名称文件名--folder目标文件夹 Token( 必须提供,飞书 API 要求指定文档挂载点,不传会报 field validation failed)—
bash
# 导入 Word 文档(必须指定 --folder)
feishu-cli doc import-file ~/Documents/report.docx --type docx --name "季度报告" --folder fldcnXXX
问题原因解决方法code=131003, no permission应用未授权访问该文档确认应用有 docx:document 或 wiki:wiki:readonly 权限,且文档对应用可见code=99991672, rate limitAPI 请求频率超限等待几秒后重试field validation failed(import-file)未传 --folder 参数始终指定 --folder fldcnXXX导出的 Markdown 中图片显示为 token 而非内容未使用 --download-images添加 --download-images --assets-dir <dir> 参数表格单元格内容显示为 <!-- Unknown block type: 32 -->块类型 32(TableCell)的已知转换问题暂无修复,手动补充内容--expand-mentions 报权限错误缺少 contact:user.base:readonly 权限在飞书开放平台为应用申请该权限,或使用 --expand-mentions=false 关闭
以下是飞书文档块类型与导出 Markdown 格式的完整映射关系。
飞书块类型导出结果说明标题 (Heading 1-6)# ~ ######标题 (Heading 7-9)###### 或粗体段落超出 H6 时降级段落 (Text)普通文本无序列表 (Bullet)- item支持无限深度嵌套有序列表 (Ordered)1. item保留原始编号序列任务列表 (Todo)- [x] / - [ ]代码块 (Code)```lang ```使用原始文本,无转义引用 (Quote)> text引用容器 (QuoteContainer)> text支持嵌套引用Callout 高亮块> [!TYPE]6 种类型公式 (Equation)$formula$块级公式行内公式$formula$段落内嵌公式分割线 (Divider)---表格 (Table)Markdown 表格管道符自动转义图片 (Image) 或本地路径使用 --download-images 时下载到本地链接[text](url)URL 特殊字符自动编码画板 (Board)[画板/Whiteboard](feishu://board/...) 或 PNG 图片使用 --download-images 时自动导出为 PNGISV 块画板链接或 HTML 注释Mermaid 绘图/时间线Iframe<iframe> HTML 标签嵌入内容AddOns/TextDrawingMermaid/PlantUML 代码块文本绘图小组件自动还原为图表源码AddOns/SyncedBlock展开子块内容透明展开Wiki 目录[Wiki 目录...]Agenda/AgendaItem展开子块内容议程块LinkPreview链接链接预览SyncSource/SyncReference展开子块内容同步块WikiCatalogV2[知识库目录 V2]AITemplateHTML 注释AI 模板块
Callout 块(飞书高亮块)导出为 GitHub-style alert 语法:
markdown
> [!NOTE]
> 这是一个提示信息。
> [!WARNING]
> 这是一个警告信息。
支持 6 种 Callout 类型(按背景色映射):
背景色导出类型说明2 (红色)[!WARNING]警告3 (橙色)[!CAUTION]警示4 (黄色)[!TIP]技巧5 (绿色)[!SUCCESS]成功6 (蓝色)[!NOTE]提示7 (紫色)[!IMPORTANT]重要
Callout 内部子块(段落、列表等)会在引用语法内逐行展示。
$formula$$E = mc^2$导出时自动处理以下 Markdown 特殊字符:
* _ [ ] # ~ $ > | 会自动添加 \ 转义| 会转义为 \|( ) 会编码为 %28 %29