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 許可證也使得社區可以自由使用和貢獻。