Hi, I’m Boteng 👋

Welcome to my blog. I write about things I’m learning and building.

Envoy AI Protocol Manager by Example

How Envoy’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.

October 26, 2026 · 23 min · 4855 words · Boteng Yao

Stateless MCP in Envoy 1.40

MCP’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.

October 20, 2026 · 11 min · 2159 words · Boteng Yao

Fifty-Two Notes on Agent Substrate's Gateway

I pointed an AI agent at Agent Substrate’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.

August 30, 2026 · 37 min · 7787 words · Boteng Yao

A Copy That Never Stops Copying

Envoy’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.

August 14, 2026 · 10 min · 2126 words · Boteng Yao

Share Mechanisms Broadly, Share Authority Narrowly

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.

July 25, 2026 · 20 min · 4051 words · Boteng Yao

Agent Substrate: Running a Million Sleeping Agents on Kubernetes

A first-principles tour of the open-source Agent Substrate project — the problem it solves, the four-plane architecture it builds on top of Kubernetes, how nodes, pods, and actors relate, and the design tensions it still has to resolve.

July 11, 2026 · 11 min · 2266 words · Boteng Yao

Hello, World

First post — this blog is now live.

July 11, 2026 · 1 min · 40 words · Boteng Yao