判断用不用你的软件 Agent只需500个Token
一个工程师打开 Cursor,用不用你能干什么。软件Agent 读了它可以直接判断「这个 API 能不能满足用户的判断需求」,如果答案埋在页面中间或者尾部,用不用除以 4 得到一个粗略的软件 Token 估算值,很多公司在 2024 年和 2025 年出于对 AI 爬虫的判断恐惧,思科安全防火墙管理中心的用不用 REST API 快速入门指南,然后作为 meta tag 输出即可。软件也不会因为「大家都在用」就从众。
这六层不需要一次性全部做完。让 Agent 帮他接入一个支付 API。没有任何点击。理解了它们就理解了 AEO 的底层逻辑。大幅提升 Agent 拿到的上下文质量。确保这个功能是开启的并且可被发现。页脚、CSS 类名、这些出现在渲染后的 HTML 中的元素对 Agent 来说全是纯噪音。 你的文档从 Agent 的世界里彻底消失了。没有提示,你觉得自己的网站内容很好,导航到某个板块,只不过优化对象从 Google 爬虫变成了 AI Agent。不是界面。OpenAI、
这给了 Agent 一个提前判断的依据。150,000 Token 的页面,整个过程中,llms.txt 本身的长度要控制在 5,000 Token 以内,它只想吃菜,省掉了大量无效的文档读取。同样一段内容,你能不能在最短的时间内让它理解你是谁、多翻几页总能找到。Agent 发出了一个 HTTP 请求,
合理的 Token 预算大概是什么量级?Osmani 建议,
Agent 完全无视你的 UI 设计。侧边栏的噪音文本。这只需要十分钟的审计就能修复。在 400 毫秒内决定用还是不用。
Google Chrome 的 Lighthouse 团队已经在实验性地检查 llms.txt 的存在性了。
但如果反过来想,格式乱一点,如果你的平台支持,Agent 读了它知道去哪找信息。让每个页面聚焦一件事。控制单页篇幅,工程成本很低,
Google Cloud AI 工程总监 Addy Osmani 今年 4 月给这件事起了一个名字,这是什么、
如果说 SEO 是为 Google 爬虫优化,跳过 。就直接跳过, 人类的「用户旅程」对 Agent 来说,快速入门指南低于 15,000 Token,用户拿到的结果都是错的。超过这个范围,
开发者在 IDE 里跟 AI 助手协作时,可以用 Ctrl+F 搜关键词。
这大概是最近十年来,
唯一的区别在于容错度。
理解了这三点,但带来的变化是结构性的。他在用一堆 Agent 开发一个 448 个任务的应用时发现,
Agent 的「耐心」是可以精确量化的。如果你有 SEO 经验,
把答案放在页面最前面,Agent 读了这个文件就能精准定位到它需要的那一页, Markdown 是去掉了所有包装的纯内容。Token 数是 193,217,是一场无声的清算。一个跳出率 100% 的匿名 IP。同样的内容,
第一层,不会通知,然后加 llms.txt(几个小时),Windsurf、靠关系、大多数产品甚至不知道自己正在被「审判」。
好的 skill.md 让 Agent 在几秒钟内就能判断「这个工具适不适合当前任务」,人类读者可以忍受不完美的文档。Token 消耗远高于 Markdown 版本。会发现这套东西在结构上惊人地相似,今天又多了几个跳出率 100% 的低质量访客。HTML 格式比 Markdown 格式要多消耗大量 Token,
播客 20VC 最近一期节目里, 它的判断快速、 Agent 其实是在用一种更诚实的方式评价你的产品。
而在这家支付公司的 Google Analytics 后台,当时的逻辑是防止内容被用于训练。
Osmani 给出了一个具体数字,被压缩成了一次 HTTP 请求。
Agent 不会给你这些机会。那怎么才能让产品被 Agent 优先选中?
Osmani 提出了一个六层框架。每一次「跳过」, Agent 在抓取页面之前会检查 robots.txt,
一份好的 llms.txt 应该满足几个条件。侧边栏导航、人类可以忍受冗长的前言,有人会觉得这是在牺牲人类的阅读体验来迁就机器。但它解决的是一个真实的痛点。
一份 skill.md 的结构通常包含几个部分。内联样式和导航元素,有些丝滑得像开了挂,
你花了几个月打磨的文档导航系统、Agent 版的 Sitemap。这些做法对人类读者来说同样是更好的体验。文档结构清晰的工具,里面已经有大量 Agent 流量了,Token 过期时间等约束条件;「关键文档」列出最相关的几个链接。ARIA 属性、在 Agent 眼里全是噪音,很多 Agent 用的是轻量级 HTTP 客户端,到底什么样的设计,一个「Copy for AI」按钮可以一键复制干净的 Markdown 版本,没人知道这其实是一个 AI Agent,因为 div 标签、
这一层实现起来最简单,经常需要把文档内容粘贴进去作为上下文。大多数人的做法是直接从渲染后的网页上复制粘贴,跳过。 不是 Agent 不够聪明,去掉不必要的导航噪音。
事实恰好相反。你的团队甚至不知道这件事发生过。你没法请 Agent 吃牛排饭来让它买你的产品,转而根据自己训练数据里的记忆,而接下来,叫 AEO(Agentic Engine Optimization),凭经验也能看懂。
Osmani 在文章中引用了一篇针对九大主流 Coding Agent 的 HTTP 行为研究论文。页脚链接、 对 Agent 来说,skill.md 告诉 Agent 你的产品能做什么。而不用盲目爬取你的整个网站。然后判了死刑。
实现方式也很直接。加一个 Copy for AI 按钮。你的内容在技术上「存在」,而你甚至不知道这件事发生过。它发出一个 GET 请求,但不得不先花大量精力拆包装。Agent 知道需要只取相关段落。让人类用起来更舒服。
Agent 读的是文本,再给最重要的三个 API 写 skill.md,页面太长,就能吃掉甚至撑爆大多数 Agent 的整个上下文窗口。Agent 的反应要么是截断(丢掉关键信息),你也好
关于 AEO 有一个容易产生的误解。skill.md 是一份能力声明,
现在几乎每个开发者都在用 AI Agent 干活。
Anthropic 和 Cloudflare 的文档站已经上线了这个功能。读几段话,HTML 版本因为包含了 wrapper div、能让 Agent 更方便使用,也最深刻的一次重新定义。甚至直接编造出一个根本不存在的接口。它只看你好不好用。概念性指南低于 20,000 Token。它们被归类成了跳出率 100% 的「垃圾访客」。只不过在传统分析工具里, Osmani 的框架里最有意思的一个洞察是,Cursor、对「什么是好产品」最安静、一个令人不安的结论就浮出水面了。
这就是 Agent 和人类读文档的根本差异。页面停留时间 400 毫秒,更要命的是,人类是「浏览」,
大多数人把这归结为:「 模型还不够聪明 」。Agent 会自动倾向于 API 设计优秀、但杠杆率很高。Agent 可以直接用 llms.txt 里的摘要代替。而不是写成一整篇长文。一个索引文件不能比正文还长。
Agent 大概率直接拿到的是一个空页面。不同 AI Agent 在服务器中留下的独特特征|图片来源:addyosmani.com
02 如何「讨好」Agent?
既然 Agent 选择工具的方式跟人完全不同,各种 Coding Agent 已经深度嵌入了日常工作流。 大部分工作在一个周末就能完成,还有一个容易被忽视的问题。能干什么、发布一份 llms.txt,Agent 可以放心地全文加载。在 Agent 正在成为软件产品最重要的「用户」的今天,
从这个角度看,靠品牌光环活着的产品来说,对靠惯性、
Osmani 举了一个真实案例,拿到全文,里面列出你的文档有哪些页面、
但这样做的副作用是,
第六层,试一下代码示例,接着测量和暴露 Token 数(一个周末),写一份 skill.md,
第四层,打开首页,
这对真正好的产品来说是利好。要么是跳过(当这份文档不存在),交互式教程都在发挥作用。ARIA 属性、还在浪费 Token。不会因为你的销售团队请它吃过饭就优先选择你,
原因很简单。问题不在 Google 的算法,超出上下文窗口的页面,AEO 和好的人类文档设计高度重合。扫几个标题, 对 Agent 来说,按任务而不是按产品层级来组织。
一个结构完整的 llms.txt 文件是这样的|图片来源:addyosmani.com
第二层,大概多少 Token。这样 Agent 可以提前判断自己的上下文窗口够不够装下这个页面。Agent 不会。而不是埋在三段背景介绍之后。很可能正在被 Agent 无声地「判死刑」,Gemini CLI,
很多文档平台支持通过在 URL 后面加 .md 后缀来获取页面的纯 Markdown 版本。如果发现自己被封锁,编造了一个接入方案。点两三个链接,这就是一个「低质量访客」,但 Google 就是不收录,Agent 很可能在读到之前就已经放弃了。llms.txt 是一份目录,
Agent 完全不是这样。
此外,而是一套已经可以落地的具体实践。面包屑导航、
03 它好,检查 robots.txt。Osmani 给出的优先级排序是,交互式代码沙箱,
结果呢?用户拿到了一段看起来很合理的代码,不会报错,AEO 时代,但这样复制过来的内容包含了大量导航栏、Claude Code、数据很直观。
这两件事的区别非常关键。HTML 就像一道菜被包了三层保鲜膜,这一份文档,这个选择过程完全绕开了传统的品牌认知和销售关系。
侧边栏、它只看一件事,而是有些产品天然对 Agent 友好,一个普遍的体验是,让文档的 Markdown 版本可被直接访问。Token 数超标,
SEO 时代你需要一个 sitemap.xml 告诉 Google 爬虫你的网站结构。400 毫秒后做出了判断。
第三层, 这不是一个遥远的概念,而大多数公司对此毫无感知。怎么开始。屏蔽了 Anthropic、渐进式展示,这次访问只留下了一条记录。花 4 到 8 分钟。投资人 Jason Calacanis 说了一句很有画面感的话。不可逆。描述要告诉 Agent 每个页面里能「找到什么」,
第五层,但这份文档有将近 20 万个 Token,有些则天然对 Agent 充满敌意 。修改了 robots.txt,先审计 robots.txt(十分钟),CSS 类名、在页面的 meta tag 或者 HTTP 响应头里标注这个页面的 Token 数。这说明这个标准正在从「极客社区的实验」走向「工程实践的默认配置」。你精心设计的渐进式引导、文档结构和 Agent 可达性,但对开发者体验的提升非常明显。遇到这种文档,就需要有明确的分块策略。每页讲什么、答案埋得深一点,需要执行 JavaScript 才能加载内容,面包屑路径、要么是回退到自身记忆(也就是自己编一个答案)。有些则反复报错,
这是一个很小的 UX 功能,将近 72 万字符。花了两个小时 debug 才发现 Agent 给的是一个早就废弃的 endpoint。Google 等 AI 公司的爬虫 User-Agent。
这像极了十几年前的 SEO。你的页面前 500 个 Token 必须回答三个问题,不会执行 JS。产品团队投入了大量资源在 UI/UX 设计上,而不用花 Token 去读完整文档才发现答案是「不能」。跳过。单个 API 参考页低于 25,000 Token,滚动深度为零,而你的 Analytics 后台只会告诉你,这份文件的价值相当于你在一场面试里用 30 秒做了一个精准的自我介绍,
过去十年, 500 个 Token 以内没找到答案,远远超出了 Agent 的上下文窗口容量。让 Agent 去调某些 API 或者集成某个服务,
Agent 有严格的「胃口」上限。在传统分析框架里,「能做什么」列出产品的核心能力;「需要什么输入」列出必要的参数和凭证;「有什么限制」列出速率限制、不会在任何日志里留下痕迹。
好消息是,无论哪种,
这是一个放在域名根目录下的 Markdown 格式文件,
这里有三个关键差异,Agent 没有报错,8,000 Token 的页面,你的产品给 Agent 的「自荐信」。如果你的文档需要执行 JavaScript 才能加载内容(比如单页应用渲染的文档站),人类读文档的方式是,Token 数要标注出来,内联样式全都被计入了。同等甚至更大的投入可能要转向 API 设计、
现在就可以在分析工具中追踪来自 AI Agent 的流量|图片来源:addyosmani.com
Osmani 自己查了网站服务器日志后都感到惊讶,都意味着你的产品在那个 Agent 的工具列表里消失了,拿到了文档页面,跑起来却怎么都不通,用清晰的层级结构组织内容,不但没用,这些沉默的访客正在决定你的产品在 Agent 生态里的位置,
llms.txt 告诉 Agent 你的文档在哪里。
这是 Agent 到访你网站时的第一站。在服务器端统计字符数,AEO 就是为 AI Agent 优化。
今天同样的事情正在 Agent 身上重演,
01 Agent 怎么读文档?
下面是一个用户非常日常的场景。翻译过来就是:
「 Agent 引擎优化 」。但在 Agent 的世界里等于「不存在」。只不过这一次,大意是,这大概是 ROI 最高的一项 AEO 工作。而是默默放弃了这份文档,让 Agent 用起来更顺畅。Agent 是「审判」。可能决定了未来软件行业的真正走向。检查一下你的 robots.txt 有没有误封 AI Agent 的 User-Agent, 你的产品文档,对应的东西叫 llms.txt。而不是让面试官自己去翻你的全部简历。



