AI News HubLIVE
站内改写1 分钟阅读

AgentRail:为网站打造的AI代理友好层

AgentRail 是一个部署在 Cloudflare 边缘的层,它会为已知的 AI 代理提供确定性的 Markdown 响应,而人类和传统爬虫则继续获取原始 HTML。它包含机器人检测、Markdown 提取、爬虫和 Worker 运行时等组件,并支持通过 Cron 触发器进行后台爬取。项目旨在减少 AI 代理对网站造成的负载,并确保内容提取的一致性。

来源Hacker News AI作者: xgharibyan

AgentRail 是一个新颖的 Cloudflare 边缘层解决方案,专门为日益增长的 AI 代理流量而设计。它的核心思想是对已知的 AI 代理(如 GPTBot、ClaudeBot 等)直接返回结构化的 Markdown 内容,而对人类用户和传统搜索引擎爬虫则照常提供原始的 HTML 页面。这种区分处理不仅能显著降低源服务器的负载,还能为 AI 代理提供更为干净、一致的数据源。

项目由多个子包组成:@agentrail/bot-detector 负责精确分类请求来源(AI 代理、搜索爬虫、浏览器等);@agentrail/markdown-extractor 负责将 HTML 转换为确定的 Markdown;@agentrail/crawler 管理站点地图解析、链接发现和爬取流程;@agentrail/worker 则作为 Cloudflare Worker 的运行环境。此外,create-agentrail 脚手架工具可帮助开发者快速搭建项目。

AgentRail 的请求处理流程非常智能:当已知 AI 代理首次请求某个页面时,如果 KV 存储中还没有对应的 Markdown,系统会返回原始 HTML,但同时通过 Cloudflare 的 ctx.waitUntil 机制在后台异步生成 Markdown 并存入 KV。这样,后续来自同一 AI 代理的请求就能直接获得 Markdown,而不会增加额外的延迟。后台的 Cron 触发器还会定期爬取站点地图,主动预热 KV 缓存。

项目还提供了灵活的部署选项。开发者可以通过脚手架工具一键生成包含正确 KV 命名空间配置的 Worker 项目,并自动安装依赖。对于已有 Cloudflare 账户的用户,只需运行 npm run deploy 即可完成部署。同时,项目也支持手动配置 KV 命名空间,以适应不同的开发环境。

值得注意的是,AgentRail 对 AI 代理的默认列表包含了主流的 AI 爬虫,但同时也明确将 Googlebot、Bingbot 等传统搜索引擎爬虫排除在外,确保它们依然获得完整的 HTML 页面。这种设计既满足了 AI 应用对结构化数据的需求,又不影响传统 SEO。

总的来说,AgentRail 为网站所有者提供了一种优雅的方式来管理和优化 AI 代理的访问,无需牺牲用户体验或搜索引擎排名。它的开源特性和 Apache-2.0 许可证也使得社区可以自由使用和贡献。