feishu-cli-export
npx skills add https://github.com/riba2534/feishu-cli --skill feishu-cli-export
Agent 安装分布
Skill 文档
é£ä¹¦ææ¡£å¯¼åºæè½
å°é£ä¹¦äºææ¡£æç¥è¯åºææ¡£å¯¼åºä¸ºæ¬å° Markdown æä»¶ï¼æå¯¼åºä¸º PDF/Word çæ ¼å¼ã
æ ¸å¿æ¦å¿µ
Markdown ä½ä¸ºä¸é´æï¼æ¬å°ææ¡£ä¸é£ä¹¦äºææ¡£ä¹é´éè¿ Markdown æ ¼å¼è¿è¡è½¬æ¢ï¼ä¸é´æä»¶é»è®¤åå¨å¨ /tmp ç®å½ä¸ã
ä½¿ç¨æ¹æ³
# å¯¼åºæ®éææ¡£
/feishu-export <document_id>
/feishu-export <document_id> ./output.md
# 导åºç¥è¯åºææ¡£
/feishu-export <wiki_url>
æ§è¡æµç¨
-
è§£æåæ°
- 夿 URL ç±»åï¼
/docx/â æ®éææ¡£/wiki/â ç¥è¯åºææ¡£
- document_idï¼å¿ é
- output_pathï¼å¯éï¼é»è®¤
/tmp/<id>.md
- 夿 URL ç±»åï¼
-
æ§è¡å¯¼åº
æ®éææ¡£:
feishu-cli doc export <document_id> --output <output_path>ç¥è¯åºææ¡£:
feishu-cli wiki export <node_token> --output <output_path> -
éªè¯ç»æ
- 读å导åºç Markdown æä»¶
- æ¾ç¤ºæä»¶å¤§å°åå 容é¢è§
åæ°è¯´æ
| åæ° | 说æ | é»è®¤å¼ |
|---|---|---|
| document_id/node_token | ææ¡£ ID æç¥è¯åºèç¹ Token | å¿ é |
| output_path | è¾åºæä»¶è·¯å¾ | /tmp/<id>.md |
| –download-images | ä¸è½½ææ¡£ä¸çå¾çåç»æ¿ï¼ç»æ¿èªå¨å¯¼åºä¸º PNGï¼ | å¦ |
| –assets-dir | å¾çåç»æ¿çä¿åç®å½ | ./assets |
| –front-matter | æ·»å YAML front matterï¼æ é¢åææ¡£ IDï¼ | å¦ |
| –highlight | ä¿çææ¬é¢è²åèæ¯è²ï¼è¾åºä¸º HTML <span> æ ç¾ï¼ |
å¦ |
| –expand-mentions | å±å¼ @ç¨æ·ä¸ºåå¥½æ ¼å¼ï¼éè¦ contact:user.base:readonly æéï¼ | æ¯ï¼é»è®¤å¼å¯ï¼ |
æ¯æç URL æ ¼å¼
| 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 |
è¾åºæ ¼å¼
å·²å¯¼åºææ¡£ï¼
æä»¶è·¯å¾: /path/to/output.md
æä»¶å¤§å°: 2.5 KB
å
容é¢è§:
---
# ææ¡£æ é¢
...
示ä¾
# å¯¼åºæ®éææ¡£
/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 è¾åºæ ¼å¼
ä½¿ç¨ --front-matter æ¶ï¼å¯¼åºç Markdown æä»¶é¡¶é¨ä¼æ·»å ï¼
---
title: "ææ¡£æ é¢"
document_id: ABC123def456
---
é«äº®é¢è²è¾åºæ ¼å¼
ä½¿ç¨ --highlight æ¶ï¼å¸¦é¢è²çææ¬ä¼è¾åºä¸º HTML <span> æ ç¾ï¼
<span style="color: #ef4444">çº¢è²ææ¬</span>
<span style="background-color: #eff6ff">èè²é«äº®èæ¯</span>
æ¯æçé¢è²ï¼7 ç§åä½é¢è²ï¼çº¢/æ©/é»/绿/è/ç´«/ç°ï¼+ 14 ç§èæ¯è²ï¼æµ /æ·±å 7 ç§ï¼ã
å¾çå¤çï¼éè¦ï¼
å¯¼åºææ¡£æ¶å¡å¿ ä¸è½½å¾çï¼ä»¥ä¾¿åç»çè§£å¾çå 容ï¼
导åºå¹¶ä¸è½½å¾ç
# æ®éææ¡£
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
æ¥çåçè§£å¾ç
# æ¥çä¸è½½çå¾çå表
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>/ - 读åå¾çå 容ï¼ä½¿ç¨ Read å·¥å ·é个读åå¾ç
- æ´ååæï¼å°å¾çæè¿°ä¸ææ¡£ææ¬ç»å
é误å¤çä¸è¾¹çæ åµ
1. 常è§é误
| é误 | åå | è§£å³ |
|---|---|---|
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 limit |
API éæµ | çå¾ å ç§åéè¯ |
write /tmp/xxx.md: permission denied |
æä»¶æéé®é¢ | æ£æ¥è¾åºç®å½æéï¼æ´æ¢è¾åºè·¯å¾ |
2. è¾¹çæ åµå¤ç
æ åµ 1ï¼ç®å½èç¹å¯¼åº
- ç¥è¯åºç®å½èç¹å¯¼åºå
容å¯è½æ¾ç¤ºä¸º
[Wiki ç®å½...] - è¿æ¯æ£å¸¸è¡ä¸ºï¼è¡¨ç¤ºè¯¥èç¹æ¯ç®å½èéå®é ææ¡£
- 使ç¨
wiki nodes <space_id> --parent <token>è·ååèç¹
æ åµ 2ï¼ææ¡£å 容为空
- æ£æ¥ææ¡£æ¯å¦çç为空
- æ£æ¥æ¯å¦ææéæ¥çå 容
- æ£æ¥æ¯å¦æ¯ç®å½èç¹
æ åµ 3ï¼å¾çä¸è½½å¤±è´¥
- æ£æ¥
--assets-dirç®å½æ¯å¦åå¨ä¸å¯å - æ£æ¥ç½ç»è¿æ¥
- å¾çå¯è½å·²è¢«å 餿æéä¸è¶³
æ åµ 4ï¼å¯¼åºä¸æ
- 大忿¡£å¯¼åºå¯è½èæ¶è¾é¿
- 妿䏿ï¼å¯ä»¥éæ°æ§è¡å½ä»¤
- 使ç¨
--outputæå®åºå®è·¯å¾ä»¥ä¾¿ç»ä¼
3. éè¯æºå¶
妿éå°ç½ç»é误æ API éæµï¼
# æ·»å --debug æ¥ç详ç»é误信æ¯
feishu-cli doc export <doc_id> --debug
# çå¾
å ç§åéè¯
sleep 5 && feishu-cli doc export <doc_id>
å·²ç¥é®é¢
| é®é¢ | 说æ |
|---|---|
| è¡¨æ ¼å¯¼åº | è¡¨æ ¼å
åå
æ ¼å
容å¯è½æ¾ç¤ºä¸º <!-- Unknown block type: 32 -->ï¼è¿æ¯åç±»å 32ï¼è¡¨æ ¼åå
æ ¼ï¼çå·²ç¥è½¬æ¢é®é¢ |
| ç®å½èç¹ | ç¥è¯åºç®å½èç¹å¯¼åºå
容为 [Wiki ç®å½...]ï¼éåç¬è·ååèç¹ |
导åºåç±»åæ¯æ
| é£ä¹¦åç±»å | 导åºç»æ | 说æ |
|---|---|---|
| æ é¢ (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) | \[Image: url\] |
|
| 龿¥ | [text](url) |
URL ç¹æ®å符èªå¨ç¼ç |
| ç»æ¿ (Board) | [ç»æ¿/Whiteboard](feishu://board/...) æ PNG å¾ç |
ä½¿ç¨ --download-images æ¶èªå¨å¯¼åºä¸º PNG |
| ISV å | ç»æ¿é¾æ¥æ HTML 注é | Mermaid ç»å¾/æ¶é´çº¿ |
| Iframe | <iframe> HTML æ ç¾ |
åµå ¥å 容 |
| AddOns/SyncedBlock | å±å¼ååå 容 | éæå±å¼ |
| Wiki ç®å½ | [Wiki ç®å½...] |
|
| Agenda/AgendaItem | å±å¼ååå 容 | è®®ç¨å |
| LinkPreview | 龿¥ | 龿¥é¢è§ |
| SyncSource/SyncReference | å±å¼ååå 容 | 忥å |
| WikiCatalogV2 | [ç¥è¯åºç®å½ V2] |
|
| AITemplate | HTML 注é | AI 模æ¿å |
Callout é«äº®å导åº
Callout åï¼é£ä¹¦é«äº®åï¼å¯¼åºä¸º GitHub-style alert è¯æ³ï¼
> [!NOTE]
> è¿æ¯ä¸ä¸ªæç¤ºä¿¡æ¯ã
> [!WARNING]
> è¿æ¯ä¸ä¸ªè¦åä¿¡æ¯ã
æ¯æ 6 ç§ Callout ç±»åï¼æèæ¯è²æ å°ï¼ï¼
| èæ¯è² | 导åºç±»å | 说æ |
|---|---|---|
| 2 (红è²) | [!WARNING] |
è¦å |
| 3 (æ©è²) | [!CAUTION] |
è¦ç¤º |
| 4 (é»è²) | [!TIP] |
æå·§ |
| 5 (绿è²) | [!SUCCESS] |
æå |
| 6 (èè²) | [!NOTE] |
æç¤º |
| 7 (ç´«è²) | [!IMPORTANT] |
éè¦ |
Callout å é¨ååï¼æ®µè½ãå表çï¼ä¼å¨å¼ç¨è¯æ³å éè¡å±ç¤ºã
å ¬å¼å¯¼åº
- å级å
¬å¼ï¼ç¬ç«è¡
$formula$ - è¡å
å
¬å¼ï¼æ®µè½å
åµ
$E = mc^2$ - å ¬å¼å å®¹ä¿æ LaTeX åæï¼ä¸å转ä¹
ç¹æ®å符å¤ç
å¯¼åºæ¶èªå¨å¤çä»¥ä¸ Markdown ç¹æ®å符ï¼
- æ®éææ¬ä¸ç
* _ [ ] # ~ $ > |ä¼èªå¨æ·»å\è½¬ä¹ - 代ç åå çææ¬ä¸å转ä¹ï¼ä½¿ç¨åå§ææ¬ï¼
- è¡¨æ ¼åå
æ ¼ä¸ç
|ä¼è½¬ä¹ä¸º\| - URL ä¸çæ¬å·
()ä¼ç¼ç 为%28%29
å·²éªè¯åè½
以ä¸å¯¼åºåè½å·²éè¿æµè¯éªè¯ï¼
- æ®éææ¡£å¯¼åº â
- ç¥è¯åºææ¡£å¯¼åº â
- æ é¢ã段è½ãå表ï¼å«åµå¥å表ï¼ã代ç åãå¼ç¨ãåå²çº¿ â
- ä»»å¡å表ï¼Todoï¼â
- å¾çä¸è½½ â
ï¼ä½¿ç¨
--download-imagesï¼ - Callout é«äº®åï¼6 ç§ç±»åï¼â
- å ¬å¼ï¼å级 + è¡å ï¼â
- Front Matter â
ï¼ä½¿ç¨
--front-matterï¼ - ææ¬é«äº®é¢è² â
ï¼ä½¿ç¨
--highlightï¼ - ISV åï¼Mermaid ç»å¾ï¼â
- AddOns/SyncedBlock å±å¼ â
- ç¹æ®åç¬¦è½¬ä¹ â
- @ç¨æ·å±å¼ â
ï¼ä½¿ç¨
--expand-mentionsï¼é»è®¤å¼å¯ï¼ - æ°åç±»åï¼Agenda/LinkPreview/SyncBlock/WikiCatalogV2/AITemplateï¼â
- è¡¨æ ¼ç»æ â ï¸ï¼å 容å¯è½ä¸¢å¤±ï¼
- é£ä¹¦ç»æ¿ â ç»æ¿é¾æ¥/PNG å¾ç â
åå转æ¢è¯´æ
| å¯¼å ¥ï¼Markdown â é£ä¹¦ï¼ | 导åºï¼é£ä¹¦ â Markdownï¼ |
|---|---|
| Mermaid/PlantUML 代ç å â é£ä¹¦ç»æ¿ | é£ä¹¦ç»æ¿ â ç»æ¿é¾æ¥/PNG å¾ç |
| å¤§è¡¨æ ¼ â èªå¨æå为å¤ä¸ªè¡¨æ ¼ | å¤ä¸ªè¡¨æ ¼ â åå¼çè¡¨æ ¼ |
| 缩è¿å表 â åµå¥ç¶åå | åµå¥å表 â ç¼©è¿ Markdown |
> [!NOTE] â Callout é«äº®å |
Callout é«äº®å â > [!NOTE] |
$formula$ â è¡å
å
¬å¼ |
è¡å
/å级å
¬å¼ â $formula$ |
<u>ä¸å线</u> â ä¸åçº¿æ ·å¼ |
ä¸åçº¿æ ·å¼ â <u>ä¸å线</u> |
注æï¼Mermaid/PlantUML å¾è¡¨å¯¼å ¥åä¼è½¬æ¢ä¸ºé£ä¹¦ç»æ¿ï¼å¯¼åºæ¶çæçæ¯ç»æ¿é¾æ¥èéåå§å¾è¡¨ä»£ç ã
弿¥å¯¼åºä¸º PDF/Word/Excelï¼doc export-fileï¼
å°é£ä¹¦äºææ¡£å¯¼åºä¸º PDFãWord çæ ¼å¼ï¼å¼æ¥ä¸æ¥æµç¨ï¼ï¼
æ§è¡æµç¨
# 䏿¡å½ä»¤å®æå
¨é¨æµç¨ï¼å
é¨èªå¨å建任å¡â轮询âä¸è½½ï¼
feishu-cli doc export-file <doc_token> --type pdf -o output.pdf
æ¯æçå¯¼åºæ ¼å¼
| –type | æ ¼å¼ | 说æ |
|---|---|---|
pdf |
ä¿çæç | |
docx |
Word | å¯ç¼è¾ |
åæ°
| åæ° | 说æ | é»è®¤å¼ |
|---|---|---|
<doc_token> |
ææ¡£ Token | å¿ å¡« |
--type |
å¯¼åºæ ¼å¼ | å¿ å¡« |
-o, --output |
è¾åºæä»¶è·¯å¾ | å¿ å¡« |
示ä¾
# 导åºä¸º 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
仿¬å°æä»¶å¯¼å ¥ä¸ºé£ä¹¦äºææ¡£ï¼doc import-fileï¼
å°æ¬å° DOCX/XLSX çæä»¶å¯¼å ¥ä¸ºé£ä¹¦äºææ¡£ï¼å¼æ¥æµç¨ï¼ï¼
æ§è¡æµç¨
# 䏿¡å½ä»¤å®æå
¨é¨æµç¨ï¼å
é¨èªå¨ä¸ä¼ âå建任å¡â轮询ï¼
feishu-cli doc import-file local_file.docx --type docx --name "ææ¡£åç§°"
æ¯æçå¯¼å ¥æ ¼å¼
| –type | æ ¼å¼ | 说æ |
|---|---|---|
docx |
Word ææ¡£ | 转æ¢ä¸ºé£ä¹¦ææ¡£ |
åæ°
| åæ° | 说æ | é»è®¤å¼ |
|---|---|---|
<local_path> |
æ¬å°æä»¶è·¯å¾ | å¿ å¡« |
--type |
æä»¶ç±»å | å¿ å¡« |
--name |
é£ä¹¦ææ¡£åç§° | æä»¶å |
示ä¾
# 导å
¥ Word ææ¡£
feishu-cli doc import-file ~/Documents/report.docx --type docx --name "å£åº¦æ¥å"