<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Agent Engineering on 卓琪的开发笔记</title>
    <link>https://zhuoqidev.com/categories/agent-engineering/</link>
    <description>Recent content in Agent Engineering on 卓琪的开发笔记</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>zh-CN</language>
    <copyright>© 2026 Liu ZhuoQi</copyright>
    <lastBuildDate>Mon, 03 Aug 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://zhuoqidev.com/categories/agent-engineering/index.xml" rel="self" type="application/rss+xml" />
    
    <item>
      <title>Five Codex Harness Designs Worth Copying After Reading the Source</title>
      <link>https://zhuoqidev.com/en/posts/codex-agent-design/</link>
      <pubDate>Sun, 02 Aug 2026 00:00:00 +0000</pubDate>
      
      <guid>https://zhuoqidev.com/en/posts/codex-agent-design/</guid>
      <description>&lt;div class=&#34;lead text-neutral-500 dark:text-neutral-400 !mb-9 text-xl&#34;&gt;&#xA;  Think of Codex as a small construction crew. The model is the site lead deciding what should happen next. The agent harness is everything around that lead: dispatch desk, access control, job records, and the progress board. The source is valuable not merely because the lead can issue commands, but because the surrounding system keeps work safe, recoverable, and understandable to the customer.&#xA;&lt;/div&gt;&#xA;&#xA;&lt;p&gt;Many agent tutorials reduce the loop to this:&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>OpenClaw in Practice: One File Path Eliminated 84% of Tool Calls — A Cron Job Debugging Story</title>
      <link>https://zhuoqidev.com/en/posts/openclaw-cron-skill-optimization/</link>
      <pubDate>Sat, 20 Jun 2026 00:00:00 +0000</pubDate>
      
      <guid>https://zhuoqidev.com/en/posts/openclaw-cron-skill-optimization/</guid>
      <description>OpenClaw&amp;rsquo;s daily-ai-news cron job kept timing out. The root cause: a missing absolute path in the SKILL.md caused the Agent to spend 15 exec calls searching for a tool every run. Messages 165→54, exec calls 44→7 — one file path beat any algorithm optimization.</description>
      
    </item>
    
    <item>
      <title>OpenClaw Memory in Practice: From &#39;Vector Search Is Down But Everything Still Works&#39; to Zero-Cost NVIDIA Embeddings</title>
      <link>https://zhuoqidev.com/en/posts/openclaw-memory-text-to-vector/</link>
      <pubDate>Sat, 20 Jun 2026 00:00:00 +0000</pubDate>
      
      <guid>https://zhuoqidev.com/en/posts/openclaw-memory-text-to-vector/</guid>
      <description>OpenClaw&amp;rsquo;s vector retrieval silently failed — but BM25 text search kept the memory system running for two weeks unnoticed. Should you even bother fixing it? Here&amp;rsquo;s how I used NVIDIA&amp;rsquo;s free embedding API to complete the picture at zero cost.</description>
      
    </item>
    
    <item>
      <title>Claude&#39;s Tool Calling Paradigm Shift: A Deep Dive into Programmatic Tool Calling and Dynamic Filtering</title>
      <link>https://zhuoqidev.com/en/posts/claude-programmatic-tool-calling-dynamic-filter/</link>
      <pubDate>Sat, 13 Jun 2026 00:00:00 +0000</pubDate>
      
      <guid>https://zhuoqidev.com/en/posts/claude-programmatic-tool-calling-dynamic-filter/</guid>
      <description>&lt;div class=&#34;lead text-neutral-500 dark:text-neutral-400 !mb-9 text-xl&#34;&gt;&#xA;  The important change is not “two more tool features.” It is the movement of multi-step orchestration into a code-execution environment, with only a compact result returning to model context.&#xA;&lt;/div&gt;&#xA;&#xA;&#xA;&lt;h2 class=&#34;relative group&#34;&gt;Background: The Cost Problem in Agent Tool Calling&#xA;    &lt;div id=&#34;background-the-cost-problem-in-agent-tool-calling&#34; class=&#34;anchor&#34;&gt;&lt;/div&gt;&#xA;    &#xA;    &lt;span&#xA;        class=&#34;absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none&#34;&gt;&#xA;        &lt;a class=&#34;text-primary-300 dark:text-neutral-700 !no-underline&#34; href=&#34;#background-the-cost-problem-in-agent-tool-calling&#34; aria-label=&#34;Anchor&#34;&gt;#&lt;/a&gt;&#xA;    &lt;/span&gt;&#xA;    &#xA;&lt;/h2&gt;&#xA;&lt;p&gt;In traditional agent tool-calling, every tool invocation requires a full cycle of &amp;ldquo;model inference → tool execution → result return → model re-inference.&amp;rdquo; This seemingly natural loop breaks down at scale in three ways:&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>OpenClaw in Production: When the Most Advanced Memory System Meets the Quietest Failure</title>
      <link>https://zhuoqidev.com/en/posts/openclaw-pitfalls/</link>
      <pubDate>Wed, 27 May 2026 00:00:00 +0000</pubDate>
      
      <guid>https://zhuoqidev.com/en/posts/openclaw-pitfalls/</guid>
      <description>A full-chain production battle log: from startup failures and Feishu message silent drops to production stability — compaction safeguard, five-layer debugging, model-harness fit, and memory system comparison.</description>
      
    </item>
    
    <item>
      <title>Why We Moved from Celery to Temporal for Production Agent Pipelines</title>
      <link>https://zhuoqidev.com/en/posts/why-temporal-not-celery/</link>
      <pubDate>Sat, 16 May 2026 00:00:00 +0000</pubDate>
      
      <guid>https://zhuoqidev.com/en/posts/why-temporal-not-celery/</guid>
      <description>&lt;div class=&#34;lead text-neutral-500 dark:text-neutral-400 !mb-9 text-xl&#34;&gt;&#xA;  In April 2026, we migrated seo-project&amp;rsquo;s task queue from Celery to Temporal. We dropped exactly one dependency (&lt;code&gt;celery&lt;/code&gt;), wrote 11 new files (&lt;code&gt;src/infrastructure/temporal/&lt;/code&gt;), and renamed our containers from &lt;code&gt;api/worker/beat&lt;/code&gt; to &lt;code&gt;api/temporal_worker_blue/green&lt;/code&gt; with blue-green deployment.&#xA;&lt;/div&gt;&#xA;&#xA;&lt;p&gt;The most common question afterward: &lt;strong&gt;why not just keep using Celery? If it&amp;rsquo;s already running, what&amp;rsquo;s the point?&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;This article is the answer. It doesn&amp;rsquo;t come from documentation comparisons. It comes from production bugs we hit running Agent pipelines at scale.&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>RAG vs LLM Wiki vs Plain Text — A Decision Framework for Agent Long-Term Memory</title>
      <link>https://zhuoqidev.com/en/posts/memory-choice-framework/</link>
      <pubDate>Mon, 11 May 2026 00:00:00 +0000</pubDate>
      
      <guid>https://zhuoqidev.com/en/posts/memory-choice-framework/</guid>
      <description>&lt;div class=&#34;lead text-neutral-500 dark:text-neutral-400 !mb-9 text-xl&#34;&gt;&#xA;  Every Agent builder hits this question eventually: &lt;em&gt;where do I store user data so the agent remembers it next session?&lt;/em&gt;&#xA;&lt;/div&gt;&#xA;&#xA;&lt;p&gt;Three approaches dominate the landscape: RAG (vector retrieval), LLM Wiki (structured knowledge injection), and plain-text context memory (the CLAUDE.md / Cursor Rules pattern). Each has vocal advocates. But picking wrong is expensive — do RAG too light and it&amp;rsquo;s a noise generator; do plain text too heavy and it&amp;rsquo;s a token incinerator.&lt;/p&gt;</description>
      
    </item>
    
  </channel>
</rss>
