乐于分享
好东西不私藏

把任何文档「榨」成干净 Markdown

把任何文档「榨」成干净 Markdown
用 Claude Code、Codex 处理各种文档,提取内容效率低、质量还参差不齐 —— 表格丢了、公式乱了、甚至压根提不出来?
Firecrawl 团队刚开源了一个纯 Rust 工具 anydoc,把 Word/PPT/Excel/PDF/EPUB 一键转成干净 Markdown。开源 10 天破 1.5 万 star,现在已经超过 17K。

10 天暴涨 1.5 万 Star:
Firecrawl 开源 anydoc,把任何文档「榨」成干净 Markdown

firecrawl/anydoc · ⭐ 17.4K · MIT · 纯 Rust · 14 种格式全支持

平时用 Claude Code、Codex 干活,总免不了让 AI 帮忙处理各种文件 —— 把里面的内容提取出来。可每种格式都得换不同的工具,效率低得让人抓狂。

更糟的是质量参差不齐:有时表格丢了一半,有时公式全乱了,甚至有的文件根本提不出来

这事对做 RAG 知识库、给大模型喂文档训练的人来说,影响特别大 —— 文档解析这一环最容易出问题,还最不容易被发现。表格转丢一半,检索直接就不准了。最近 Firecrawl 团队开源的 anydoc,就是冲着这个痛点来的,短短 10 天狂揽 15000+ star。

任何格式的文档
一键转成干净的 Markdown

01它到底是什么

很多人认识 Firecrawl,是因为它能抓网页、转成大模型易读的 Markdown。这次的 anydoc,在我看来是把「本地文档」这一块的处理也给补上了

一句话概括:把 Word、PPT、Excel、PDF、EPUB 等本地文件,一键转成干净的 Markdown,直接喂给 AI 或 RAG 知识库。

核心信息:

仓库:firecrawl/anydoc(2026-08-03 建仓)
协议:MIT · 语言:纯 Rust 实现
覆盖:8 大类格式、14 种扩展名
速度:不依赖 ML 模型和外部服务,最快仅 4.4 毫秒
热度:开源 10 天破 1.5 万 star,现已超过 17K(fork 997)
母项目 firecrawl(网页转 Markdown 那个)已 16.9 万 star,团队分量摆在这

连 2003 年的老 .doc.ppt 这些古老文件都吃得下;docx/pptx/xlsx 常见格式自不必说,连 rtf、odt、epub 这些小众冷门格式,也照样能转成干净的 Markdown。

02实现思路才是亮点

我看了下它的实现思路,觉得这才是最值得聊的地方。它没有对每种格式都硬写一套「XX 转 Markdown」,而是搞了一步中间稿:

① 先把文件读懂
不管你丢进来的是什么格式,第一步都是把它彻底读明白

② 整理成一份「统一格式中间稿」
这份中间稿只记内容和结构 —— 哪里是标题、哪里是表格、哪里是列表,全部标得清清楚楚

③ 再把中间稿转成 Markdown
所有格式最后都汇到这一条出口,统一产出干净的 Markdown

这样设计的好处很实在:维护变得容易多了。比如转 Markdown 时发现某个表格转换有 Bug,直接跟着内容随手就能修好,不用在一堆格式解析里翻来翻去。

所有格式先归一到一份中间稿
解析和输出解耦,Bug 跟着内容随手修

还有个细节挺妙:它识别文件格式压根不看扩展名,而是读文件字节里的特征标记。所以哪怕文件名标错了(把 xlsx 存成了 .doc 这种),它也照样认得出来、不会翻车。

03又快又全:官方横评拿双第一

速度是它的强项。得益于纯 Rust 实现,不依赖任何 ML 模型和外部服务,转换最快仅需 4.4 毫秒

官方做了个实测:拿 100 份真实文档,和 libreoffice、markitdown、pandoc、docling 这些同类工具横向对比 ——

结果 anydoc 是唯一一个把 14 种格式全支持到的工具,
而且质量和速度双双拿下第一名
全支持 + 又快又准,这个组合在同类里确实少见

细节处理也没含糊:

✅ 合并单元格的表格,能正确保留结构
✅ 脚注、代码块,都不丢
✅ 连 PPT 里的备注都能保留下来
✅ 文档里的图片以引用文本形式呈现,原图留在缓存目录,需要的话自己取

04三种用法,总有一款适合你

▸ 方式一:当依赖包集成进项目

提供 Node、Python、Rust 三种语言的依赖包,想把文档转换能力嵌进自己的应用,直接装包调用。

▸ 方式二:以 Skill 装进 Agent

一行命令,装到 Claude Code、Codex 等 Agent 工具里。装完之后,Agent 就能更容易读懂任何格式的文件,也能直接转成 Markdown。

npx skills add firecrawl/anydoc

▸ 方式三:在线网页版,不上传服务器

打开浏览器就能用,而且全在本地转换完成,不会上传到服务器。偶尔转一两份文件,或者文档比较敏感、不敢往在线工具传的朋友,用这个最合适。

05如实说说它的局限

① 扫描件 PDF 读不出。本地只能处理常规 PDF,对于扫描件这种纯图片的 PDF 提不出内容 —— 官方给了方案:用他们的托管 API,接上自家 OCR 模型就能搞定。
② 加密/带密码的文档转不了,会直接报错。这个我觉得也算正常。

06写在最后

这两年身边不少朋友都在做 RAG 知识库、开发 Agent 应用。文档解析这块,最容易出问题、还最不容易被发现 —— 表格转丢一半,检索直接就不准了,你还蒙在鼓里。

Firecrawl 的路子挺清晰:先把网页转 Markdown 这个入口占了,现在又补上本地文档转 Markdown。这两个「给 AI 喂数据」的重要入口,算是都被它握在手里了。

往后,它会不会像 ffmpeg 在音视频领域那样,成为 AI 数据管道里的默认底座?还未可知。但从目前看,大家的选择很朴素 —— 谁家工具做得又快又干净,就用谁的

网页转 Markdown 之后
本地文档转 Markdown 也被它占上了
GitHub 搜 firecrawl/anydoc 就能找到

👇 评论区聊聊:

① 你现在都用什么工具把文档转给 AI?踩过哪些坑?
② 做知识库时,你觉得文档解析和检索,哪个更卡脖子?
③ 你赌 anydoc 会成为 AI 数据管道的「ffmpeg」吗?

觉得有用 → 点「在看」转发给正在做 RAG / Agent 的朋友 📄
关注我,下期继续挖好用的开源工具。

信息来源
GitHub 仓库 firecrawl/anydoc(MIT,纯 Rust):功能特性、格式覆盖、实现思路、横评结论、使用方式与局限。star 17392(约 17.4K)、fork 997、建仓 2026-08-03,均为发文时 GitHub API 实时数据;母项目 firecrawl star 约 16.9 万。仓库地址:https://github.com/firecrawl/anydoc 。