<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Ethan Yan</title><description>Engineer building AI agents — the planning, memory, and tool-use that make models genuinely useful. Projects, writing, and notes on calm software.</description><link>https://ethanyan.me/</link><item><title>Inside Kimi Code: a teardown of its agent engine</title><link>https://ethanyan.me/writing/inside-kimi-code-agent-engine/</link><guid isPermaLink="true">https://ethanyan.me/writing/inside-kimi-code-agent-engine/</guid><description>I cloned a shipping coding agent and read it the way I read a paper — to see which design decisions survive contact with production. Here are the ones worth stealing.</description><pubDate>Mon, 22 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Don&apos;t put symptoms in the prompt</title><link>https://ethanyan.me/writing/dont-put-symptoms-in-the-prompt/</link><guid isPermaLink="true">https://ethanyan.me/writing/dont-put-symptoms-in-the-prompt/</guid><description>When an agent misses a case, the reflex is to teach it that case in the system prompt. That&apos;s whack-a-mole. The fix is structural.</description><pubDate>Sat, 20 Jun 2026 00:00:00 GMT</pubDate></item><item><title>The verifier is the hard part</title><link>https://ethanyan.me/writing/the-verifier-is-the-hard-part/</link><guid isPermaLink="true">https://ethanyan.me/writing/the-verifier-is-the-hard-part/</guid><description>Loop engineering took off in coding because coding ships with a free oracle. Everywhere else, you have to build one.</description><pubDate>Tue, 16 Jun 2026 00:00:00 GMT</pubDate></item><item><title>The day my agent lied about its job</title><link>https://ethanyan.me/writing/the-day-my-agent-lied/</link><guid isPermaLink="true">https://ethanyan.me/writing/the-day-my-agent-lied/</guid><description>A daily digest agent reported &quot;all sources fetched&quot; — while quietly dropping one. The bug wasn&apos;t the fetch. It was the missing guardrail.</description><pubDate>Fri, 12 Jun 2026 00:00:00 GMT</pubDate></item><item><title>From context to loop engineering</title><link>https://ethanyan.me/writing/from-context-to-loop-engineering/</link><guid isPermaLink="true">https://ethanyan.me/writing/from-context-to-loop-engineering/</guid><description>The thing worth getting right keeps moving up a level — prompt, context, harness, loop. The hard part was never the while-loop.</description><pubDate>Mon, 08 Jun 2026 00:00:00 GMT</pubDate></item><item><title>The agentic composition stack</title><link>https://ethanyan.me/writing/the-agentic-composition-stack/</link><guid isPermaLink="true">https://ethanyan.me/writing/the-agentic-composition-stack/</guid><description>Stop adding a tool for every request. Autonomy is a stack of composition types with two layers of glue, not a single trick.</description><pubDate>Sun, 24 May 2026 00:00:00 GMT</pubDate></item><item><title>Why my agent runtime stays in-process</title><link>https://ethanyan.me/writing/why-my-runtime-stays-in-process/</link><guid isPermaLink="true">https://ethanyan.me/writing/why-my-runtime-stays-in-process/</guid><description>I migrated a production agent onto a server runtime, ran the whole playbook, then rolled it all back. Sometimes the senior move is not adopting the thing.</description><pubDate>Sat, 16 May 2026 00:00:00 GMT</pubDate></item><item><title>Code-action: write code, don&apos;t collect tools</title><link>https://ethanyan.me/writing/code-action-not-more-tools/</link><guid isPermaLink="true">https://ethanyan.me/writing/code-action-not-more-tools/</guid><description>Standard tool-calling can&apos;t express composition. So stop picking tools — let the model write the code that calls them.</description><pubDate>Sun, 10 May 2026 00:00:00 GMT</pubDate></item><item><title>Designing for the model&apos;s mistakes</title><link>https://ethanyan.me/writing/designing-for-mistakes/</link><guid isPermaLink="true">https://ethanyan.me/writing/designing-for-mistakes/</guid><description>Reliable agent UX isn&apos;t about preventing errors — it&apos;s about making the wrong answer cheap to notice and undo.</description><pubDate>Tue, 28 Apr 2026 00:00:00 GMT</pubDate></item><item><title>The four layers of agent memory</title><link>https://ethanyan.me/writing/four-layers-of-agent-memory/</link><guid isPermaLink="true">https://ethanyan.me/writing/four-layers-of-agent-memory/</guid><description>Everyone treats agent memory as one framework, and compares the options as if they&apos;re rivals. They answer different questions — here&apos;s the map.</description><pubDate>Fri, 24 Apr 2026 00:00:00 GMT</pubDate></item><item><title>Six ways to give a model knowledge — and what each is for</title><link>https://ethanyan.me/writing/four-ways-to-give-a-model-knowledge/</link><guid isPermaLink="true">https://ethanyan.me/writing/four-ways-to-give-a-model-knowledge/</guid><description>Vector RAG, RAGFlow, GraphRAG, PageIndex, an LLM wiki, Obsidian — they get lumped together as rivals. They aren&apos;t even at the same layer. A field guide to which one fits which job.</description><pubDate>Sat, 18 Apr 2026 00:00:00 GMT</pubDate></item><item><title>There&apos;s no best agent framework, only yours</title><link>https://ethanyan.me/writing/no-best-agent-framework/</link><guid isPermaLink="true">https://ethanyan.me/writing/no-best-agent-framework/</guid><description>I scored two agent frameworks across eleven dimensions. Strip the weights and they tie. The gap was never about quality — it was about who I am.</description><pubDate>Thu, 16 Apr 2026 00:00:00 GMT</pubDate></item><item><title>Your knowledge base wants to be a notebook, not a warehouse</title><link>https://ethanyan.me/writing/knowledge-base-notebook/</link><guid isPermaLink="true">https://ethanyan.me/writing/knowledge-base-notebook/</guid><description>Everyone is racing to build a smarter index. The labs that build the models quietly went the other way — toward plain text the agent reads and tidies itself.</description><pubDate>Sun, 12 Apr 2026 00:00:00 GMT</pubDate></item><item><title>Why agents need memory, not just context</title><link>https://ethanyan.me/writing/agents-need-memory/</link><guid isPermaLink="true">https://ethanyan.me/writing/agents-need-memory/</guid><description>A bigger context window buys you a better goldfish. Persistence is a different problem — and most of the work happens between the prompts.</description><pubDate>Mon, 06 Apr 2026 00:00:00 GMT</pubDate></item><item><title>The quiet cost of tool-use loops</title><link>https://ethanyan.me/writing/tool-use-loops/</link><guid isPermaLink="true">https://ethanyan.me/writing/tool-use-loops/</guid><description>Every retry feels free in isolation. Stacked across a session, they are where latency, cost, and confusion quietly accumulate.</description><pubDate>Sun, 15 Mar 2026 00:00:00 GMT</pubDate></item></channel></rss>