直接结论
Cloudflare在2026年10月9日升级Markdown for Agents:HTML现在由边缘进程内的流式引擎转换,不再先缓冲再送往独立转换服务;解压后HTML上限从2 MiB提高到6 MiB;转换响应不再生成`x-markdown-tokens`、`x-original-tokens`和`Content-Length`。这扩大了长篇产品页、知识库和技术文档的可转换范围,但不意味着页面越长越好,也不保证任何AI系统会请求Markdown、抓取、索引或引用。品牌应把HTML与Markdown视为同一URL的两种协商表示,分别验证`Vary: Accept`、Content Signal、标题与描述、主体事实、链接、JSON-LD、缓存行为和客户端流式读取。
事实与背景
Cloudflare在2026年10月9日发布Markdown for Agents转换更新。启用该功能的Cloudflare站点收到包含Accept: text/markdown的请求后,边缘网络可以获取源站HTML并返回Markdown表示。此次升级把转换过程改为边缘进程内流式处理:HTML到达时即开始转换,不再缓冲完整响应并交给独立转换服务。Cloudflare称这样可以降低转换开销和内存使用。
与架构变化同时生效的还有三个接口边界:可转换上限从2 MiB提高到6 MiB(6,291,456字节),按解压后的HTML计算;转换响应不再生成x-markdown-tokens或x-original-tokens;由于Markdown正文采用流式传输,响应不再重新计算Content-Length。这是一项内容表示与交付能力更新,不是新的搜索排名、AI引用或索引机制。
这次更新改变了什么,又没有改变什么
| 观察项 | 10月9日后的当前行为 | 不能据此推断 |
|---|---|---|
| 转换架构 | 边缘进程内流式转换,HTML到达时即处理 | 所有AI客户端都会更快或一定采用Markdown |
| 页面上限 | 最多处理6 MiB解压后HTML,原上限为2 MiB | 品牌应该把单页扩写到接近6 MiB |
| 令牌响应头 | 不再返回x-markdown-tokens与x-original-tokens | Markdown没有令牌成本,或上下文预算无需管理 |
| 正文长度 | 流式响应不返回重新计算的Content-Length | 客户端可以忽略超时、最大读取量和中途断流 |
| 搜索与AI结果 | 为支持内容协商的客户端提供更精简的页面表示 | 自动获得抓取、收录、引用、排名或转化 |
6 MiB是转换门槛,不是内容质量目标。超过2 MiB的页面现在可能进入转换范围,适合包含大量技术表格、产品系列、长篇文档或帮助中心内容的站点;但导航、模板、内嵌状态、追踪脚本和重复组件造成的HTML膨胀仍会增加源站、边缘和客户端成本。页面能被转换,只证明它没有触发当前尺寸上限,不证明Markdown结果完整、重点明确或适合引用。
把HTML和Markdown当作同一URL的两个表示
Markdown for Agents使用HTTP内容协商,而不是为每个页面创建新的.md URL。请求方在Accept头中表达对text/markdown的偏好;Cloudflare从源站获取HTML,转换后返回Content-Type: text/markdown; charset=utf-8。当前文档说明,Vary会包含Accept,源站已有的其他Vary维度会被保留,使缓存能够区分HTML与Markdown版本。
| 请求 | 应验收的响应 | 常见失败 |
|---|---|---|
| 普通浏览器请求 | 仍返回可用HTML、正确canonical与完整交互 | 配置规则误把人类访问也改成Markdown |
Accept: text/markdown | 返回Markdown类型、Vary: Accept与完整核心事实 | 缓存键未区分表示,HTML与Markdown互相污染 |
| AI Bot并请求Markdown | 访问策略、内容协商和用途信号同时符合预期 | 只按User-Agent放行,却没有验证实际返回表示 |
| AI Bot但只接受HTML | 仍得到正常HTML;功能不应强制客户端改用Markdown | 把“支持Markdown”误解为“所有Bot都会请求Markdown” |
转换响应会保留源站的安全、跨域与缓存相关响应头,但会修改或移除与新正文不再匹配的字段。Content-Type改为Markdown,Vary加入Accept,Content-Length因流式传输被移除;Content-Encoding、Content-Range、Transfer-Encoding、ETag和Last-Modified也会被移除。依赖这些字段做条件请求、完整性判断或缓存命中的客户端,需要按当前接口重新设计,而不是继续假设旧响应头存在。
转换会重组页面,核心事实必须在结果里重新验收
Cloudflare当前输出由三部分组成:从页面meta标签提取的YAML frontmatter、从正文转换的Markdown,以及附在末尾代码块中的JSON-LD。标题优先读取meta name="title",缺失时才回退到og:title;描述遵循相同优先级,图片来自og:image。非内容元素,如页头、页脚、导航、脚本和样式,会在预处理时被剥离;JSON-LD是唯一会被保留的脚本内容。
这意味着HTML页面“看起来正确”仍不足以验收Markdown。品牌需要逐页对照转换结果:H1与frontmatter标题是否指向同一实体,描述是否过期,产品型号、参数、市场、日期和限制是否仍完整,表格是否可读,站内链接是否解析为正确绝对地址,JSON-LD是否与可见内容一致。若关键事实只在客户端脚本执行后才出现,源站返回的初始HTML可能不包含这些事实;Cloudflare把Markdown for Agents限定为HTML转换,并把需要真实浏览器渲染的场景另行指向Browser Run的/markdown能力。因此,团队不能用“浏览器最终能看到”替代对协商响应的实际检查。
启用前先决定Content Signal,而不是接受未知默认值
当前文档说明:如果源站已经设置content-signal响应头,Markdown for Agents会保留它,源站策略具有权威性;如果源站没有设置,该功能会在转换响应中加入默认值ai-train=yes, search=yes, ai-input=yes。三个用途分别涉及AI训练、搜索结果和AI输入(包括代理式使用)。
因此,启用转换不只是格式开关,也可能让原本没有明确用途声明的页面出现一组默认允许信号。出海品牌应先按内容类别核对权利:自有公开产品与知识内容、第三方授权素材、客户案例、付费内容、经销商资料和用户生成内容不应默认采用同一策略。若内容含受限授权或第三方权利,应在源站明确设置适用的Content Signal,并继续使用认证、授权、网络隔离和WAF保护非公开资源。Content Signal是用途表达,不是保密机制。
移除令牌响应头后,调用方要自建预算与失败分类
Cloudflare最初的产品说明展示过x-markdown-tokens,调用方可借此估算上下文或分块;10月9日后,Markdown for Agents转换响应不再生成这个头,也不再生成x-original-tokens。任何依赖这两个字段进行配额、路由、分块或成本估算的采集器都需要迁移:在读取流式正文时设置最大字节数和超时,完成或按块计算令牌数,并记录所用分词器与模型上下文。
| 失败类型 | 建议记录 | 不要误判为 |
|---|---|---|
| 内容协商失败 | 请求头、状态码、Content-Type、Vary | 页面没有被索引 |
| 尺寸或转换失败 | 解压后HTML字节、页面模板、返回正文与错误信息 | AI系统拒绝品牌内容 |
| 流式读取中断 | 已读字节、持续时间、连接状态、重试次数 | 服务器一定返回了完整Markdown |
| 语义缺失 | 缺失标题、字段、表格、链接、JSON-LD与来源版本 | 只要HTTP 200就算成功 |
| 外部来源未出现 | 固定问题、平台、时间、答案与来源URL | Markdown功能配置错误的直接证据 |
用一套可重复协议验收“AI可读”,不要只跑一次curl
最低验收应同时覆盖普通HTML和Markdown表示,并按首页、产品页、长篇知识页、表格密集页、JavaScript依赖页和接近尺寸上限的页面抽样。每个样本保留请求头、响应头、最终URL、状态码、原始HTML字节、解压后字节、Markdown字节、正文哈希和检查时间。把标题、直接答案、核心参数、限制、来源、相关链接与JSON-LD列成字段表,逐项比较两个表示。
10月12日,Cloudflare又发布了Agents SDK的web_fetch工具,为这种验收提供了一个具体消费端:工具会优先请求网站原生Markdown,遇到支持Markdown for Agents的站点可直接读取该表示;返回结果包含最终URL、HTTP状态、内容类型、总字符数和续读信息,长页面按偏移量分段。调用方还可以设置允许主机、最大响应字节、超时与重定向次数。这说明Markdown协商已进入可复用的Agent读取链路,但也再次表明“AI可读”必须同时记录最终URL、状态、类型、分段完整性和请求边界,不能只看一次成功响应。
| 验收层 | 通过条件 | 不能证明 |
|---|---|---|
| 准入 | 目标客户端可访问,状态码与WAF策略正确 | 搜索或AI平台一定会抓取 |
| 协商 | HTML与Markdown按Accept正确分流,缓存不串版 | 所有爬虫都支持内容协商 |
| 完整性 | 关键事实、表格、链接、frontmatter与JSON-LD可用且一致 | 页面质量或事实本身正确 |
| 权限 | Content Signal与页面权利、公开范围和用途政策一致 | 恶意抓取或超范围使用一定被阻止 |
| 外部结果 | 固定问题集记录抓取、来源呈现、准确性与日期 | 某次引用由Markdown单独造成 |
上线后还要按真实日志区分哪些客户端请求了text/markdown、哪些仍取HTML、不同表示的状态码与字节量,以及是否存在异常高频或超长读取。Cloudflare Radar或站点日志可以帮助观察流量,但最终仍要把“被访问”“转换成功”“被索引”“被引用”和“产生业务结果”分开记录。
对企业的影响
6 MiB上限降低了大型知识库、复杂产品目录和长篇技术文档因HTML体积超过2 MiB而无法转换的风险,也让边缘流式处理更适合持续输出较长页面。对出海品牌而言,真正的机会不是发布更长的内容,而是让同一权威URL同时为人类浏览器和支持内容协商的AI客户端提供结构清晰、事实一致的表示,减少导航与脚本噪声,并保留标题、描述和JSON-LD。 与此同时,接口变化会暴露旧集成的脆弱性:依赖令牌响应头的采集器会失去预算输入,依赖`Content-Length`的下载器可能误判流式响应,忽略`Vary: Accept`的缓存可能串版,未设置源站Content Signal的页面会接受当前默认允许值。品牌需要把这项功能同时交给内容、CDN、合规、数据与AI测量团队验收,而不是只由SEO或开发打开一个开关。
智核增长的判断
Markdown for Agents应被视为“表示层优化”,不是新的GEO捷径。它能降低特定客户端读取HTML噪声的成本,却不会修复错误事实、薄弱证据、混乱canonical、缺失的实体关系或不可访问的源站。6 MiB上限的价值是扩大容错范围,不是鼓励单页膨胀;优秀页面仍应让结论、条件、字段、来源和下一步在较小的信息预算内自洽。 智核增长建议品牌采用“先策略、后启用、再双表示验收”的顺序:先决定哪些页面允许搜索、AI输入和训练用途;再按主机名或路径逐步启用;最后用固定字段表比较HTML与Markdown,并在真实日志和固定AI问题集中观察外部结果。只有当内容完整性、权限信号、缓存分流和客户端读取同时通过,才能把该功能视为技术准入完成;引用率与业务增长仍需独立、持续测量。
建议行动
- 盘点Cloudflare上的主域、语言站、文档站、商店和SaaS自定义主机名,明确哪些路径适合启用Markdown for Agents。
- 测量代表性页面的压缩传输大小与解压后HTML大小,单独标记超过2 MiB、接近6 MiB和超过6 MiB的页面。
- 分别用普通请求和`Accept: text/markdown`请求抽样页面,保存状态码、`Content-Type`、`Vary`、Content Signal和完整正文。
- 检查CDN、反向代理和下游缓存是否按`Accept`区分HTML与Markdown,避免人类与机器表示互相污染。
- 把`x-markdown-tokens`、`x-original-tokens`和`Content-Length`从依赖项改为可选字段;在客户端实现流式读取、超时、最大字节与本地令牌计算。
- 对照HTML与Markdown中的标题、描述、H1、直接答案、产品字段、限制、表格、链接和JSON-LD,记录缺失与差异。
- 为不同内容类别明确`ai-train`、`search`和`ai-input`策略,并在源站设置需要的`content-signal`,不要无评估接受默认允许值。
- 对依赖客户端渲染的页面检查初始HTML是否包含核心事实;若不包含,优先修复服务端可见内容或单独评估浏览器渲染转换路径。
- 在日志中分开统计HTML与Markdown请求的客户端、状态码、字节量、延迟、失败和重试,不把转换成功等同于索引或引用。
- 用同一组品牌与非品牌问题持续记录来源URL、事实准确性、引用语境和业务行为,并保留未启用路径或页面作为方向性对照。
限制条件
本文能确认的是Cloudflare在2026年10月9日公开的Markdown for Agents架构、6 MiB解压后HTML上限和响应头变化,以及当前文档中的内容协商、输出结构、Content Signal和可用范围。Cloudflare仍把Markdown for Agents标注为Beta,接口、限制、套餐与默认行为可能继续变化。 Markdown for Agents只转换HTML。它不会自动执行所有客户端JavaScript,也不替代PDF、图片、Office文档或登录后内容的专门处理。6 MiB限制按解压后HTML计算,不是压缩传输大小;本文没有把该门槛外推为页面质量、搜索抓取或模型上下文限制。 源站Content Signal会被保留,但Content Signal不是身份认证、授权、访问控制或法律意见。默认`ai-train=yes, search=yes, ai-input=yes`不代表品牌已拥有所有素材权利,也不保证所有第三方系统遵守这些信号。返回Markdown、HTTP 200或可解析JSON-LD均不保证抓取、索引、排名、AI引用、流量或转化。