粘贴或获取 · 逐行诊断
llms.txt 验证器
粘贴的内容会在您的浏览器中分析。检查公开 URL 时,我们的 Cloudflare 函数会获取文件,然后由您的浏览器分析其结构。
最近更新:
验证器
输入域名(我们会获取其 /llms.txt)或完整文件
URL。请求会通过我们的边缘函数发出,因此目标网站的 CORS 限制不适用。
我们的检查内容
验证器实现了来自 llmstxt.org:
- 必须包含 H1。 在可选的 UTF-8 BOM 之后,恰好只有一个一级标题。
- 引用块摘要。 建议紧接在 H1 之后。
- H2 文件列表部分。 每个章节都是一个 Markdown 列表,其中包含
- [name](url)条目,并可选择添加: notes. - 绝对 URL。 相对 URL 会被标记为警告。
- 章节之外不得有内容。 第一个 H2 之后只能出现文件列表。
- 不要添加前导标题。 第一个 H2 之前的自由格式上下文不能添加 H3 至 H6 标题。
- 大小防护。 大于 50 KB 的文件会收到一条信息级提示,建议使用
llms-full.txt.
每项诊断都包含规则代码(例如 H1_REQUIRED, URL_RELATIVE),
因此您可以在 CI 日志中用 grep 搜索它。
在 CI 中使用
驱动此页面的同一解析器也可以接入您的构建流程:以下规则代码是稳定的,因此脚本可以在 CI 日志中用 grep 搜索它们。一个最小的 Node 检查示例:
import { readFileSync } from 'node:fs';
import { parseLlmsTxt, summarize } from './validator/validate'; // same parser as this validator
const input = readFileSync('public/llms.txt', 'utf8');
const parsed = parseLlmsTxt(input);
const sum = summarize(parsed);
if (!sum.passes) {
for (const d of parsed.diagnostics) {
console.error(`${d.severity.toUpperCase()} [${d.rule}] line ${d.line}: ${d.message}`);
}
process.exit(1);
}
console.log(`OK, ${parsed.sections.length} sections, ${parsed.sizeBytes} bytes`); 后续步骤
通过验证的文件仍可能不是正确的文件。 十项最佳实践规则 涵盖验证器无法检查的内容:您列出的页面是否确实是模型需要的页面, 而这些页面往往并非访问量最高的页面。要从零开始?请使用 生成器 会根据您的站点地图生成一个有效文件,并 如何创建 llms.txt 按技术栈分别说明部署。关于语法本身,请参见 格式参考,或者阅读 真实文件 ,这些文件由 Anthropic、Cloudflare 和 Stripe 发布。