为了让 AI (或其它处理流程)能够更好地阅读和理解各类文档,我需要一个能将 PDF 、Word 、HTML 等格式转为 Markdown 的库,并且要求保留原文档的元数据(如页码、标题层级)和资源关联(如图片、附件)。
尝试过 Pandoc 和微软的 MarkItDown:
Pandoc 格式支持广,但输出偏向“纯文本”,元信息和资源关系基本丢失。
MarkItDown 更关注 AI Token 化,对文档内部结构的处理比较简化。
于是基于 unified/mdast 生态设计了一个可扩展的转换架构: @isdk/mdast-plus 。
核心特点:
明确的 pipeline 阶段( parse → normalize → compile → finalize → stringify ),插件可以按阶段插入;
语义化规范,支持表格跨行列、代码块元数据解析、图片尺寸语法、注释框标准化等;
目前内置了 markdown 、html 和 ast (调试)三种格式,其它格式可通过第三方插件实现,方便针对不同格式深度优化;
输出 Markdown 时可保留文档结构、元数据与资源链接,方便下游(如 AI 引用)准确溯源。
和以往项目一样,代码、文档和测试主要由 AI 生成,我主要负责架构设计、规范制定和 review (虽然这次 review 得没那么严)。
如果你也在做文档转换、知识库构建或 AI 文档处理相关的事情,或许可以试试或一起完善。项目已发布 npm ,GitHub 仓库在这里(含 README 和示例): https://github.com/isdk/mdast-plus.js
欢迎交流思路或拍砖。