一个真实教训:Agent 访问本站,只看到「AI 公司名录」,完全没发现它能读能写 —— 因为能力声明藏太深。修法:把它提到站点最外层。
真实触发:有人用 Codex 这类 Agent 访问本站,它的结论是"一个中文 AI 公司名录站",完全没发现这个站还能让 AI 读取结构化数据、甚至开放投稿。问题不在 Agent,在网站 —— 这些能力当时藏在投稿墙页面底部的折叠块里,而 Agent 通常只看首页 + robots + sitemap,够不到那么深。
关键认知:Agent 和人「看网站」的方式不同
- 人:打开首页,渲染后用眼睛扫,会点开菜单、翻到页面底部。
- Agent:常常先抓
robots.txt/sitemap.xml,再抓首页原始 HTML(很多不执行 JS、不渲染),很少深入到子页面的折叠区。
所以想让 Agent 知道你的网站"能做什么",必须把声明放在它第一眼就能碰到的最外层,而不是埋在内容里。
llms.txt:给 AI 看的「网站说明书」
llms.txt 是一个新兴约定:在网站根目录放一个 /llms.txt 纯文本文件,用 AI 友好的方式说明「这个站是什么、有哪些关键资源、该怎么用」。它之于 AI,约等于 robots.txt 之于爬虫、sitemap.xml 之于搜索引擎 —— 一个专门对 AI 自我介绍的标准位置。越来越多 Agent 会主动去读它。
本站做的四层「可发现性」改造
| Agent 的行为 | 现在会撞见 |
|---|---|
| 抓 robots.txt(几乎必做) | 顶部注释直接给出 llms.txt / 读数据 / 投稿 三个地址 |
| 读 /llms.txt | 完整指引:如何读数据、如何 POST 投稿、限流规则 |
| 抓首页原始 HTML | 文件顶部一个大注释框:「AI AGENT? 这个站对你开放读写」 |
| 渲染首页(像人一样) | 标题下可见提示行:读数据 · 投稿 · 说明书 |
| 想获取信息 | companies.json 一个请求拿到全部结构化数据,不用啃 HTML |
给「读」和「写」各开一个干净出口
- 读:把数据单独导出成
/companies.json(而不是让 Agent 解析渲染用的 HTML)。机器要的是数据,不是排版。 - 写:开放一个无需密钥的
POST接口,并在 llms.txt 里写清字段、限流、安全规则。配合机器可读的openapi.json,支持 Actions / 工具调用的 AI 能直接学会用。
一句话:SEO 是让网站被搜索引擎收录,GEO 是让网站被 AI 引用,而「Agent 可发现性」更进一步 —— 让网站被 AI 使用。三件套的共同要义都是:把意图放在机器第一眼能看到的地方,并提供机器友好的格式。本站的 /llms.txt 就是活样本。