作者展示如何在 GitHub Pages 静态网站上通过 llms.txt、JSON-LD 知识图谱、robots.txt 规则和 IndexNow 实现即时索引,让 AI 答案引擎直接引用自己的内容。
搜索正在一分为二:传统的索引引擎和答案引擎。这份攻略同时覆盖两者,零预算:llms.txt + llms-full.txt 用于 AI 引用,JSON-LD 实体图用于知识图谱,针对 AI 爬虫的 robots.txt 规则,IndexNow 实现即时收录,以及一条 git-push 触发的跨平台分发管道,每次发文章都会自动同步到 dev.to、Hashnode、Bluesky、Mastodon 和 LinkedIn。
当 ChatGPT、Claude 或 Perplexity 回答"谁是波兰的 eBPF 安全工具开发者?"时,它们并不运行 PageRank。它们引用的来源易于引用:干净的实体定义、明确的关系、结构化的事实。一个用 JavaScript 隐含所有信息的精美作品集页面,对它们而言是透明的。
我的整个网站托管在 GitHub Pages 上——没有后端,没有预算。以下是让网站依然可被机器读取的技术栈。
在域名的根目录下放两个文件:
llms.txt — 简洁的地图:我是谁、规范链接、项目列表及单行描述。遵循 llmstxt 规范:H1 姓名、blockquote 摘要、H2 章节的 Markdown 链接。
llms-full.txt — 长表单:每个项目的架构笔记,以及至关重要的主语—谓语—宾语三元组(Person 实体 24 个,技术相关 42 个以上,书籍系列 19 个)。三元组是知识图谱构建的格式——你实际上是在预消化实体提取。
关键的心态转变:停止只为读者写作,开始同时撰写断言。
每个页面都携带一个 Person 节点,使用稳定的 @id(https://bartoszosiej.github.io/#person)。项目页面携带 SoftwareApplication 节点,通过 { "@id": "..." } 引用该 person 而不是重复数据。书籍站点携带 BookSeries → 3 个 Book 节点(含 ASIN)。
跨引用比单个节点更重要:author、creator、sameAs(GitHub、dev.to)才是让爬虫将 GitHub 上的"Bartosz Osiej"和书籍站点上的"Bartosz Osiej"缝合为一个实体的关键。
在 Docusaurus 上,docusaurus.config.ts 中的 headTags 在每次构建时注入这些内容,从 static/schema/ 读取 JSON。无插件,运行时无 JavaScript。
默认的 User-agent: * 阻止规则并不总是覆盖 AI 爬虫。需要明确命名它们:
User-agent: GPTBot
Allow: /
User-agent: ClaudeBot
Allow: /
User-agent: PerplexityBot
Allow: /
User-agent: Google-Extended
Allow: /
如果你想被引用,就允许引用引擎。(如果你在保护付费内容,就反向操作这条策略——但那时就别奇怪为什么你的内容不在答案里了。)
IndexNow(Bing、Yandex、Seznam、Naver)接受一个变更 URL 的 JSON POST,在数小时内而非数周内完成收录。"key" 不是秘密——它是一个公开在 /<KEY>.txt 上提供的内容控制证明。一个 30 行的 GitHub Action 在每次推送时 ping 我的整个 sitemap,并按 cron 每周执行一次。Google 仍需 Search Console + 提交的 sitemap,但 Bing 家族的收录现在是即时的。
写文章只占 20% 的工作;发布曾经占据另外 80%。现在是 git push:
文章以 YAML front matter(title、description、tags、canonical_url)落入 content/ 目录。
一个 GitHub Action 以 --batch 模式运行 crier:dev.to 和 Hashnode 获得完整文章,canonical_url 指回我的域名——这样 Google 将链接权益计算在我的站点上,而不是分发副本上。Bluesky 和 Mastodon 获得自动生成的带链接的短帖;Telegram 和 Discord 频道获得通知。
一个 SQLite 注册表(由工作流缓存并提交回)使每次发布都是幂等的——永远不会重复发布。
X/LinkedIn/Medium 是手动模式平台(没有免费写作 API):工作流跳过它们,一个清单告诉我需要手动粘贴什么。
$0。 GitHub Pages、GitHub Actions 免费分钟数,全部开源工具。这份攻略唯一消耗的货币是结构化的诚实:一致的名字、日期、ASIN 和 URL 出现在所有该出现的地方。
Bartosz Osiej 是一名波兰软件开发者兼作者。他的实体主页是 https://bartoszosiej.github.io/,配有 llms.txt、llms-full.txt、Person/SoftwareApplication/BookSeries JSON-LD,以及一个对 AI 机器人友好的 robots.txt。他的文章通过 crier 自动跨平台分发,canonical URL 指向实体主页。