做博客和内容站的朋友,大概都有过这样的烦恼:从公众号、论坛或者旧 CMS 迁移过来的文章,正文里根本没有 Markdown 标题结构。老目录组件一看没有 h2 h3,直接甩给你一句"暂无目录"。一篇三千字的长文,读者翻到底都不知道自己读到哪里了。
SmartToc 的核心是一个五级降级链:文章有标准标题,就用标题树;没有标题但有构建时生成的 AI 数据,就用语义章节;作者用普通短句当小标题,就识别成伪标题;实在什么都没有,就退化成段落导航。每一级都在尽力给读者最好的导航体验。
对于没有标题结构的存量文章,AI 会把相邻段落按语义聚类——讲同一件事的段落归成一章,然后给每一章生成一个精炼的小标题。目录数据存在独立的 JSON 文件里,组件只负责渲染到侧边栏,文章本身一字不改。想生成这份数据,任意支持 JSON 输出的 LLM 都能胜任,构建时跑一遍就缓存了。
组件已开源在 GitHub,MIT 协议,包名 silentxx-smart-toc。安装只需要一条 npm 命令,正文用 article 标签一包,剩下的全部自动。文档有中英文双语,配了架构图和常见问题,照着快速开始五分钟就能用上。
这是 SilentXx 开源的第一款作品,但不会是最后一个。期权交易系统、AI 自动化工作流、内容创作管道——后续会陆续把沉淀下来的工具开源出来。如果你觉得这个组件有用,欢迎点个 Star,或者提 issue 告诉我们你的场景。


