feishu-cli-read
npx skills add https://github.com/riba2534/feishu-cli --skill feishu-cli-read
Agent 安装分布
Skill 文档
é£ä¹¦ææ¡£é 读æè½
ä»é£ä¹¦äºææ¡£æç¥è¯åºè¯»åå 容ï¼è½¬æ¢ä¸º Markdown æ ¼å¼åè¿è¡åæåå±ç¤ºã
æ ¸å¿æ¦å¿µ
Markdown ä½ä¸ºä¸é´æï¼æ¬å°ææ¡£ä¸é£ä¹¦äºææ¡£ä¹é´éè¿ Markdown æ ¼å¼è¿è¡è½¬æ¢ï¼ä¸é´æä»¶åå¨å¨ /tmp ç®å½ä¸ã
ä½¿ç¨æ¹æ³
/feishu-read <document_id>
/feishu-read <node_token>
/feishu-read <url>
æ§è¡æµç¨
-
è§£æåæ°
- 夿 URL ç±»åï¼
/docx/â æ®éææ¡£ï¼ä½¿ç¨doc export/wiki/â ç¥è¯åºææ¡£ï¼ä½¿ç¨wiki export
- å¦ææ¯ Tokenï¼æ ¹æ®æ ¼å¼å¤æç±»å
- 夿 URL ç±»åï¼
-
导åºä¸º Markdownï¼å«å¾çä¸è½½ï¼
æ®éææ¡£:
feishu-cli doc export <document_id> --output /tmp/feishu_doc.md --download-images --assets-dir /tmp/feishu_assetsç¥è¯åºææ¡£:
feishu-cli wiki export <node_token> --output /tmp/feishu_wiki.md --download-images --assets-dir /tmp/feishu_assetséè¦ï¼å¡å¿ 使ç¨
--download-imagesåæ°ä¸è½½ææ¡£ä¸çå¾çå°æ¬å°ãå¯éåæ°ï¼
--front-matterï¼å¨ Markdown 顶鍿·»å YAML front matterï¼å«æ é¢åææ¡£ IDï¼--highlightï¼ä¿çææ¬é¢è²åèæ¯è²ï¼è¾åºä¸º HTML<span>æ ç¾ï¼
-
è¯»åææ¬å 容
- ä½¿ç¨ Read å·¥å ·è¯»å导åºç Markdown æä»¶
- åæææ¡£ç»æåææ¬å 容
-
读åå¹¶çè§£å¾çå 容
- æ£æ¥
/tmp/feishu_assetsç®å½æ¯å¦æä¸è½½çå¾ç - ä½¿ç¨ Read å·¥å ·é个读åå¾çæä»¶ï¼çè§£å¾çå 容
- å°å¾çå 容æ´åå°ææ¡£åæä¸
# ååºä¸è½½çå¾ç ls /tmp/feishu_assets/ # ä½¿ç¨ Read å·¥å ·æ¥çå¾çï¼Claude æ¯æå¤æ¨¡æï¼ # Read /tmp/feishu_assets/image_1.png - æ£æ¥
-
æ¥åç»æ
- æä¾ææ¡£æè¦ï¼å å«å¾çå 容æè¿°ï¼
- ä¿ç Markdown æä»¶åå¾çä¾ç¨æ·è¿ä¸æ¥æä½
è¾åºæ ¼å¼
åç¨æ·æ¥åï¼
- ææ¡£æ é¢
- ææ¡£ç»ææ¦è¦ï¼æ é¢å±çº§ï¼
- å 容æè¦ï¼å ³é®ä¿¡æ¯ï¼
- å¾çå 容æè¿°ï¼å¦æå¾çï¼
- Markdown æä»¶è·¯å¾ï¼ä¾åç»ä½¿ç¨ï¼
- å¾çæä»¶è·¯å¾ï¼å¦æä¸è½½ï¼
æ¯æç 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 |
示ä¾
# è¯»åæ®éææ¡£
/feishu-read <document_id>
/feishu-read https://xxx.feishu.cn/docx/<document_id>
# 读åç¥è¯åºææ¡£
/feishu-read <node_token>
/feishu-read https://xxx.feishu.cn/wiki/<node_token>
å¾çå¤çæµç¨ï¼éè¦ï¼
ææ¡£ä¸çå¾çéè¦ç¹å«å¤çæè½çè§£å ¶å 容ï¼
æ¥éª¤ 1ï¼å¯¼åºæ¶ä¸è½½å¾ç
# ç¥è¯åºææ¡£
feishu-cli wiki export <node_token> \
--output /tmp/doc.md \
--download-images \
--assets-dir /tmp/doc_assets
# æ®éææ¡£
feishu-cli doc export <document_id> \
--output /tmp/doc.md \
--download-images \
--assets-dir /tmp/doc_assets
æ¥éª¤ 2ï¼æ£æ¥ä¸è½½çå¾ç
ls -la /tmp/doc_assets/
# è¾åºç¤ºä¾ï¼
# image_1.png (403KB)
# image_2.png (394KB)
æ¥éª¤ 3ï¼ä½¿ç¨ Read å·¥å ·æ¥çå¾ç
Claude æ¯æå¤æ¨¡æï¼å¯ä»¥ç´æ¥çè§£å¾çå 容ï¼
# å¨ Claude ä¸ä½¿ç¨ Read å·¥å
·è¯»åå¾ç
Read /tmp/doc_assets/image_1.png
Read /tmp/doc_assets/image_2.png
æ¥éª¤ 4ï¼æ´ååæ
å°å¾çå å®¹ä¸ææ¡£ææ¬ç»åï¼æä¾å®æ´çææ¡£åæã
宿´ç¤ºä¾
# 1. å¯¼åºææ¡£åå¾ç
feishu-cli wiki export <node_token> \
-o /tmp/wiki_doc.md \
--download-images \
--assets-dir /tmp/wiki_assets
# 2. æ¥çå¾çå表
ls /tmp/wiki_assets/
# 3. 读å Markdown å
容
# Read /tmp/wiki_doc.md
# 4. è¯»åæ¯å¼ å¾ççè§£å
容
# Read /tmp/wiki_assets/image_1.png
# Read /tmp/wiki_assets/image_2.png
# 5. 综ååæååç¨æ·æ¥å
ç®å½èç¹è¯å«ä¸å¤ç
ç¥è¯åºææ¡£å¯è½æ¯ç®å½èç¹ï¼å å«åèç¹ï¼ï¼éè¿ä»¥ä¸æ¹å¼è¯å«ï¼
1. è¯å«ç®å½èç¹
å½å¯¼åºç¥è¯åºææ¡£æ¶ï¼å¦æ Markdown å 容æ¾ç¤ºä¸ºï¼
[Wiki ç®å½ - ä½¿ç¨ 'wiki nodes <space_id> --parent <node_token>' è·ååèç¹å表]
说æè¿æ¯ä¸ä¸ªWiki ç®å½èç¹ï¼block_type=42ï¼ï¼åææ¡£å表åå¨å¨ç¥è¯åºå æ°æ®ä¸ã
2. è·ååèç¹å表
# 1. å
è·åèç¹ä¿¡æ¯ï¼è®°å½ space_id
feishu-cli wiki get <node_token>
# 2. ååºè¯¥èç¹ä¸çåèç¹
feishu-cli wiki nodes <space_id> --parent <node_token>
3. 宿´å¤çæµç¨
# æ¥éª¤ 1ï¼å°è¯å¯¼åºææ¡£
feishu-cli wiki export <node_token> -o /tmp/doc.md
# æ¥éª¤ 2ï¼æ£æ¥å
容
# 妿æ¾ç¤º "[Wiki ç®å½...]"ï¼è¯´ææ¯ç®å½èç¹
# æ¥éª¤ 3ï¼è·åèç¹ä¿¡æ¯
feishu-cli wiki get <node_token>
# è®°å½ space_id å has_child åæ®µ
# æ¥éª¤ 4ï¼è·ååèç¹
feishu-cli wiki nodes <space_id> --parent <node_token>
# æ¥éª¤ 5ï¼é个导åºåèç¹
feishu-cli wiki export <child_node_token_1> -o /tmp/child1.md
feishu-cli wiki export <child_node_token_2> -o /tmp/child2.md
é误å¤çä¸è¾¹çæ åµ
1. 常è§é误
| é误 | åå | è§£å³ |
|---|---|---|
code=131002, param err |
åæ°é误 | æ£æ¥ token æ ¼å¼ |
code=131001, node not found |
èç¹ä¸åå¨ | æ£æ¥ token æ¯å¦æ£ç¡® |
code=131003, no permission |
æ æéè®¿é® | 确认åºç¨æ wiki:wiki:readonly æé |
code=131004, space not found |
ç¥è¯ç©ºé´ä¸åå¨ | æ£æ¥ space_id æ¯å¦æ£ç¡® |
空å
容æ Unknown block type |
ç¹æ®åç±»å | è§ãç®å½èç¹è¯å«ãç« è |
2. è¾¹çæ åµå¤ç
æ åµ 1ï¼ææ¡£å 容为空
- æ£æ¥ææ¡£æ¯å¦çç为空
- æ£æ¥æ¯å¦ææéæ¥çå 容
- æ£æ¥æ¯å¦æ¯ç®å½èç¹ï¼è§ä¸æï¼
æ åµ 2ï¼å¾çä¸è½½å¤±è´¥
- æ£æ¥
--assets-dirç®å½æ¯å¦å¯å - æ£æ¥ç½ç»è¿æ¥
- å¾çå¯è½å·²è¢«å é¤æè¿æ
æ åµ 3ï¼é¨ååç±»åæ æ³è¯å«
- é£ä¹¦ API å¯è½è¿åæªç¥çåç±»å
- è¿äºå伿¾ç¤ºä¸º
<!-- Unknown block type: XX --> - è¿æ¯æ£å¸¸ç°è±¡ï¼ä¸å½±åå ¶ä»å 容ç读å
æ åµ 4ï¼å¤§åææ¡£
- è¶ è¿ 1000 个åçææ¡£å¯è½éè¦å页è·å
- 使ç¨
feishu-cli doc blocks <doc_id> --allèªå¨å页
3. éè¯æºå¶
妿éå°ç½ç»é误æ API éæµï¼
# æ·»å --debug æ¥ç详ç»é误信æ¯
feishu-cli wiki export <token> --debug
# çå¾
å ç§åéè¯
sleep 5 && feishu-cli wiki export <token>
å¯¼åºæ ¼å¼è¯´æ
导åºç Markdown æ¯æä»¥ä¸é£ä¹¦ç¹æåç±»åç转æ¢ï¼
| é£ä¹¦åç±»å | Markdown è¡¨ç° |
|---|---|
| Callout é«äº®å | > [!NOTE]ã> [!WARNING] ç 6 ç§ GitHub-style alert |
| å级/è¡å å ¬å¼ | $formula$ï¼LaTeX æ ¼å¼ï¼ |
| ç»æ¿ (Board) | [ç»æ¿/Whiteboard](feishu://board/...) 龿¥ |
| ISV å (Mermaid) | ç»æ¿é¾æ¥ |
| QuoteContainer | > å¼ç¨è¯æ³ï¼æ¯æåµå¥ï¼ |
| AddOns/SyncedBlock | éæå±å¼ååå 容 |
| Iframe | <iframe> HTML æ ç¾ |
ä½¿ç¨ --highlight åæ°æ¶ï¼å¸¦é¢è²çææ¬è¾åºä¸º <span style="color:..."> æ ç¾ã
注æäºé¡¹
- å¡å¿
ä¸è½½å¾çï¼ä¸ä¸è½½å¾çåªè½çå°
feishu://media/<token>å¼ç¨ï¼æ æ³çè§£å¾çå 容 - é个读åå¾çï¼ä½¿ç¨ Read å·¥å ·è¯»åæ¯å¼ å¾çï¼Claude ä¼èªå¨çè§£å¾çå 容
- æ´ååæï¼å°å¾çæè¿°ä¸ææ¡£ææ¬ç»åï¼æä¾å®æ´çå 容æè¦
- è¯å«ç®å½èç¹ï¼ç®å½èç¹çå 容æ¯åèç¹å表ï¼ä¸æ¯å®é ææ¡£å 容
- å ¬å¼å 容ï¼å¯¼åºç LaTeX å ¬å¼ä¿æåæï¼å¯ç´æ¥è¢« Markdown 渲æå¨æ¾ç¤º
- Callout ç±»åï¼æ¯æ NOTE/WARNING/TIP/CAUTION/IMPORTANT/SUCCESS å ç§é«äº®åç±»å