522 字
3 分钟
给博客补上面向AI的入口
打开 MD 版本

给博客补上 llms.txt#

最近给博客补了一点面向大语言模型的入口,也就是 llms.txt

llms.txt 是一个为大型语言模型(LLM)设计的网站文件标准,目的是让 AI 在需要时能快速、准确地理解并利用网站内容。用一份简洁的 Markdown 文件告诉模型:这个网站是什么、哪些页面比较重要、哪些内容适合优先阅读。按照规范,它通常放在站点根路径 /llms.txt,内容尽量清晰、克制,不需要把整个网站都塞进去。

这次我给博客补了两类入口:站点根目录的 /llms.txt,以及每篇文章对应的 Markdown 原文地址,比如 /posts/docker.md。这样正常读者还是看原来的博客页面,而模型、阅读工具或者其他自动化程序,可以直接读取更干净的文本内容。

一开始直接引入astro现成库 @nuasite/llm-enhancements。但是过程中发现和我当前这个 Astro 项目不太合拍:它对 Vite、TypeScript 的版本要求过高,还会因为可选依赖解析导致本地开发服务启动失败。

为了不强行升级整套 Astro 生态,最后还是改成自己写一个很小的 Astro integration。开发环境里通过中间件提供 /llms.txt/posts/*.md;正式构建时,再把这些文件写进最终产物。内容直接来自 src/content/posts,所以不用手动维护,也不用把生成文件提前塞进 public

文章页也顺手加了两个小入口:复制 MD 链接,以及打开 MD 版本。位置放在文章元信息下面,不太显眼,但需要的时候能很快找到。

中间还遇到一个小坑:博客用了Swup做页面切换,而 .md 是纯文本资源,不是普通 HTML 页面。如果让 Swup 接管这个链接,返回时页面状态可能会乱,样式也会像丢了一样。最后给 MD 链接加了 data-no-swup,让浏览器原生打开这个资源,问题就解决了。

给博客补上面向AI的入口
https://emohe.cn/posts/42/
作者
阿涛の小破站
发布于
2026-05-18
许可协议
CC BY-NC-SA 4.0