为代理优化内容
Source: Hacker News
概览
和 LLMs.txt 那个想法一样毫无用处。
这全是 AI 不需要的愚蠢抽象,因为 AI 和人类一样聪明,所以它们可以直接使用已有的——API。
LLMs.txt 确实毫无用处,但这也是这句话唯一正确的地方。我再次被挑衅,来回应社交媒体上更多的脑残言论。这一次是关于内容优化的。
简短直截了当: 你应该像为人类优化一样为代理(agents)优化内容。如何做到这一点是一个不断演进的课题,但我们看到了一些共通的做法:
- 内容顺序
- 内容大小
- 节点深度
前沿模型及其上构建的代理行为相似,面临相似的约束和优化。例如,为了避免上下文膨胀,它们已知会只读取文件的部分——前 N 行、字节或字符。它们在被告知信息存在于某处时的行为,与必须自行发现时截然不同。这两点正是 LLMs.txt 曾是个有价值想法的原因,但实现方式错误。
如今的实现很简单:content negotiation。当请求带有 Accept: text/markdown 时,你可以自信地假设请求来自代理。这就是你的切入点,接下来由你决定如何优化。以下是我们在 Sentry 的一些做法示例。
文档
我们已经投入大量时间来优化面向代理的文档,这很显然。主要的优化大多很简单:
- 提供真实的 Markdown 内容 —— 大幅节省分词开销并提升准确性
- 去除仅在浏览器环境下有意义的内容,尤其是导航和 JavaScript 相关的部分
- 优化各页面以更关注链接层级 —— 例如我们的索引基本上是站点地图,完全不同于非 Markdown 页面
curl -H "Accept: text/markdown" https://docs.sentry.io/---
title: "Sentry Documentation"
url: https://docs.sentry.io/
---
# Sentry Documentation
Sentry 是面向开发者的应用监控平台,帮助您实时识别并修复问题。它提供错误跟踪、性能监控、会话回放等功能,覆盖所有主流平台和框架。关键特性
- 错误监控:捕获并诊断错误,提供完整的堆栈跟踪、面包屑信息和上下文
- 追踪:跨服务跟踪请求,以识别性能瓶颈
- 会话回放:观看真实用户会话,了解导致错误的原因
- 性能分析:识别慢函数并优化应用性能
- 定时任务:监控计划任务并检测失败
- 日志:在上下文中收集并分析应用日志
…
In our case we actually use MDX to render these, so it involved a handful of parsing changes and overrides to allow certain key pages to render differently. The result: agents fetch pages that are much more actionable.Sentry
如果一个无头机器人在抓取网站,最没有用的做法就是返回一个需要身份验证的页面。相反,我们会告知代理程序通过编程方式访问应用信息(MCP、CLI、API 等):
curl -H "Accept: text/markdown" https://sentry.io# Sentry
You've hit the web UI. It's HTML meant for humans, not machines.
Here's what you actually want:
MCP Server(推荐)
为您的代理提供结构化访问 Sentry 的最快方式。
OAuth 认证,HTTP 流式传输,无需 HTML 解析。
{
"mcpServers": {
"sentry": {
"url": "https://mcp.sentry.dev/mcp"
}
}
}Docs: https://mcp.sentry.devCLI
查询问题并从终端分析错误。
…
## Warden
> 评审您代码的代理。可以在本地或每次 PR 时使用。
Warden 通过对您的更改运行 **skills** 来监视代码。Skills 是定义要查找内容的提示:安全漏洞、API 设计问题、性能问题,或任何您希望保持一致覆盖的内容。
Skills 遵循 [agentskills.io](https://agentskills.io) 规范。它们是包含提示的 markdown 文件,告诉 AI 需要关注什么。您可以使用社区提供的 skills,自己编写,或两者结合使用。
- 文档: https://warden.sentry.dev
- GitHub: https://github.com/getsentry/warden
- npm: https://www.npmjs.com/package/@sentry/warden
### 工作原理
每次运行 Warden 时,它会:
1. 确定哪些内容发生了变化(文件、代码块或整个目录)
2. 将更改与已配置的触发器匹配
3. 对匹配的代码运行相应的 skills
4. 报告发现,包括严重程度、位置以及可选的修复建议
Warden 在两种情境下工作:
- **本地** – 在推送之前审查更改,获取即时反馈
- **CI 中** – 自动审查拉取请求,将发现以评论形式发布
### 快速开始
...
## 那就这样
它很简单,而且有效。你应该这么做。同时要关注代理的模式如何变化,并随着行为演变更新你的优化。