<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Envoy on Boteng Yao</title>
    <link>https://botengyao.github.io/tags/envoy/</link>
    <description>Recent content in Envoy on Boteng Yao</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Mon, 26 Oct 2026 12:00:00 +0800</lastBuildDate>
    <atom:link href="https://botengyao.github.io/tags/envoy/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Envoy AI Protocol Manager by Example</title>
      <link>https://botengyao.github.io/posts/envoy-ai-protocol-manager-examples/</link>
      <pubDate>Mon, 26 Oct 2026 12:00:00 +0800</pubDate>
      <guid>https://botengyao.github.io/posts/envoy-ai-protocol-manager-examples/</guid>
      <description>How Envoy&amp;rsquo;s AI Protocol Manager handles LLM traffic today, and a set of tested configs: observing native APIs, translating between OpenAI, Claude and Gemini (Vertex AI included), retries and failover across APIs, a forward-proxy egress, and model routing with ext_proc.</description>
    </item>
    <item>
      <title>Stateless MCP in Envoy 1.40</title>
      <link>https://botengyao.github.io/posts/stateless-mcp-envoy/</link>
      <pubDate>Tue, 20 Oct 2026 12:00:00 +0800</pubDate>
      <guid>https://botengyao.github.io/posts/stateless-mcp-envoy/</guid>
      <description>MCP&amp;rsquo;s 2026-07-28 revision makes the protocol stateless, so MCP traffic now looks a lot like ordinary HTTP. Envoy 1.40 builds on that: route MCP requests by tool name, stop malformed or spoofed requests at the proxy, control who can call which tool, and turn any REST API into an MCP server using only config.</description>
    </item>
    <item>
      <title>Fifty-Two Notes on Agent Substrate&#39;s Gateway</title>
      <link>https://botengyao.github.io/posts/substrate-gateway-notes/</link>
      <pubDate>Sun, 30 Aug 2026 21:00:00 +0800</pubDate>
      <guid>https://botengyao.github.io/posts/substrate-gateway-notes/</guid>
      <description>I pointed an AI agent at Agent Substrate&amp;rsquo;s networking layer and had it read the whole thing. This is what came back, after a second round of agents tried to knock it all down: 52 items about the ingress and egress gateways, and a note on which parts of the method I would and would not trust.</description>
    </item>
    <item>
      <title>A Copy That Never Stops Copying</title>
      <link>https://botengyao.github.io/posts/envoy-tls-linearize/</link>
      <pubDate>Fri, 14 Aug 2026 10:00:00 +0800</pubDate>
      <guid>https://botengyao.github.io/posts/envoy-tls-linearize/</guid>
      <description>Envoy&amp;rsquo;s TLS write path copies 16 KB for every 16 KB it sends, for the life of a connection. What causes it, and the change that fixes it.</description>
    </item>
    <item>
      <title>Share Mechanisms Broadly, Share Authority Narrowly</title>
      <link>https://botengyao.github.io/posts/trust-boundaries-agent-substrate/</link>
      <pubDate>Sat, 25 Jul 2026 14:00:00 +0800</pubDate>
      <guid>https://botengyao.github.io/posts/trust-boundaries-agent-substrate/</guid>
      <description>Learning notes: a sentence I believed about TLS interception was wrong, and working out why settled a separate architecture question — whether the L7 proxy belongs on every node.</description>
    </item>
  </channel>
</rss>
