AI 智能体
每次构建都会在浏览器所用的 HTML 之外,以 AI 智能体最易读取的形式发布你的站点。这无需任何配置,下面的两个键只用于调整它。
构建产出的内容
| 文件 | 用途 |
|---|---|
<page>.md |
每个页面旁都有一份 Markdown 副本:guides/build.html 对应
guides/build/index.md,包含标题、描述和内容,每个组件都简化为纯
Markdown(标注框变为引用,标签页变为粗体标题)
|
/llms.txt |
一个 llms.txt 索引:先是站点标题和描述,然后是每个页面的 Markdown 副本及其描述,按导航的分组方式分组 |
/index.md |
首页的副本;若项目没有 index.html,则为
llms.txt 的副本
|
/robots.txt |
一行 Content-Signal,声明自动化系统可以如何使用你的内容 |
/_headers |
用于 Cloudflare 和 Netlify:首页上的 Link 响应头,指向
llms.txt、index.md 和技能索引
|
/.well-known/agent-skills/index.json |
一个 Agent Skills 发现索引,在设置了
skills 时生成
|
每个页面还带有指向其副本的
<link rel="alternate" type="text/markdown">,旁边的页面工具栏会链接到该副本,并借助其脚本复制副本,或在 ChatGPT 或 Claude
中打开页面。
项目中的同名文件会替换生成的文件。_headers
是唯一的例外:你的规则会被保留,生成的 Link 规则追加在其后。htmlpress start
运行同样的构建,因此也会提供这些文件。
内容信号
contentSignals 控制 robots.txt 中的
Content Signals 行。三个信号默认都是
true:
contentSignals:
search: true # build a search index and show links to your pages
aiInput: true # feed pages to a model answering a question in real time
aiTrain: false # train or fine-tune models on your content
它生成的行位于 User-agent: * 组中:
Content-Signal: search=yes, ai-input=yes, ai-train=no。
智能体技能
如果你的项目附带
Agent Skills,请将
skills 指向它们的 SKILL.md 文件,可以是一个 glob
或一个列表,路径相对于项目:
skills: .skills/*/SKILL.md
每个匹配的技能都会发布在
/.well-known/agent-skills/<name>/SKILL.md,并连同
sha256 摘要列在 index.json 中。其 frontmatter 需要一个
name(小写字母、数字和单个连字符,最多 64 个字符)和一个
description(最多 1024
个字符);若缺少任一字段,或两个技能同名,构建将失败。本站在
/.well-known/agent-skills/ 发布了
htmlpress 自己的技能。
按需提供 Markdown
智能体通过向页面 URL 发送 Accept: text/markdown 来请求
Markdown。静态托管本身无法响应这种请求,但 CDN 上的重写规则可以为这些请求提供页面的
.md 副本,而其他人仍获得
HTML。每个页面都有副本,所以重写永远不会指向缺失的文件。现成的规则请参见
Cloudflare。
另请参阅
- Agent Skills:将 htmlpress 自己的技能安装到你的编程智能体中。
- 配置文件:所有顶层键。
- 自定义路由:与页面一同复制的静态文件。
用 ❤ 和 Htmlpress 构建