<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Agent on Miao Kong</title><link>https://miaok.ong/tags/agent/</link><description>Recent content in Agent on Miao Kong</description><generator>Hugo</generator><language>zh</language><lastBuildDate>Wed, 01 Apr 2026 07:25:00 +0800</lastBuildDate><atom:link href="https://miaok.ong/tags/agent/index.xml" rel="self" type="application/rss+xml"/><item><title>深度解构 Claude Code (二)：代码骨架与核心逻辑机制</title><link>https://miaok.ong/posts/claude-code-source-study-2/</link><pubDate>Wed, 01 Apr 2026 07:25:00 +0800</pubDate><guid>https://miaok.ong/posts/claude-code-source-study-2/</guid><description>&lt;h1 id="深度解构-claude-code-二代码骨架与核心逻辑机制"&gt;
 深度解构 Claude Code (二)：代码骨架与核心逻辑机制
 &lt;a class="heading-link" href="#%e6%b7%b1%e5%ba%a6%e8%a7%a3%e6%9e%84-claude-code-%e4%ba%8c%e4%bb%a3%e7%a0%81%e9%aa%a8%e6%9e%b6%e4%b8%8e%e6%a0%b8%e5%bf%83%e9%80%bb%e8%be%91%e6%9c%ba%e5%88%b6"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="链接到标题"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;链接到标题&lt;/span&gt;
 &lt;/a&gt;
&lt;/h1&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;引言&lt;/strong&gt;：在&lt;a href="../claude-code-source-study-1/" &gt;《深度解构 Claude Code (一)：产品形态与技术架构演进》&lt;/a&gt;中，我们梳理了 Claude Code 这一“终端伪装者”的 React 渲染引擎、KAIROS 持久化后台与核心的 Context 防爆机制。&lt;/p&gt;
&lt;p&gt;接下来，我们将沿着其约 330 个底层 TypeScript 模块，直击那些让大模型在终端“既自由又守规矩”的&lt;strong&gt;核心代码逻辑与控制机制（Core Logic Mechanisms）&lt;/strong&gt;。本文将揭示其如何通过一套极致防御的 Tool 系统，让终端 Agent 真正达到“生产级”。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id="1-代码架构-code-architecture领域驱动的沙箱世界"&gt;
 1. 代码架构 (Code Architecture)：领域驱动的沙箱世界
 &lt;a class="heading-link" href="#1-%e4%bb%a3%e7%a0%81%e6%9e%b6%e6%9e%84-code-architecture%e9%a2%86%e5%9f%9f%e9%a9%b1%e5%8a%a8%e7%9a%84%e6%b2%99%e7%ae%b1%e4%b8%96%e7%95%8c"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="链接到标题"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;链接到标题&lt;/span&gt;
 &lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Claude Code 拥有超过 60 个内置工具和近 100 条斜杠（Slash）命令。与其说它是一个提示词外壳，不如说它是一个为大语言模型打造的&lt;strong&gt;虚拟机（VM）沙箱&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;在它的 &lt;code&gt;src/tools/&lt;/code&gt; 目录下，每一个 &lt;code&gt;Tool&lt;/code&gt; 都严格遵循着高度一致的泛型接口：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-typescript" data-lang="typescript"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kr"&gt;interface&lt;/span&gt; &lt;span class="nx"&gt;Tool&lt;/span&gt;&lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;Input&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;Output&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;Progress&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nx"&gt;name&lt;/span&gt;: &lt;span class="kt"&gt;string&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nx"&gt;prompt&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="kt"&gt;string&lt;/span&gt; &lt;span class="c1"&gt;// 动态挂载的安全规则
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;&lt;/span&gt; &lt;span class="nx"&gt;inputSchema&lt;/span&gt;: &lt;span class="kt"&gt;ZodSchema&lt;/span&gt;&lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;Input&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt; &lt;span class="c1"&gt;// 用于强类型验证
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;&lt;/span&gt; 
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nx"&gt;call&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;input&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;context&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;Promise&lt;/span&gt;&lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;ToolResult&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nx"&gt;checkPermissions&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;input&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;PermissionResult&lt;/span&gt; &lt;span class="c1"&gt;// 执行前权限预检
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;&lt;/span&gt; &lt;span class="nx"&gt;isConcurrencySafe&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;input&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="kr"&gt;boolean&lt;/span&gt; &lt;span class="c1"&gt;// 并发锁，判定它能否并行执行
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;&lt;/span&gt; &lt;span class="c1"&gt;// ...以及用于终端 React 渲染的 4 个 render 方法
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="11-isconcurrencysafe大模型并发执行引擎"&gt;
 1.1 &lt;code&gt;isConcurrencySafe&lt;/code&gt;：大模型并发执行引擎
 &lt;a class="heading-link" href="#11-isconcurrencysafe%e5%a4%a7%e6%a8%a1%e5%9e%8b%e5%b9%b6%e5%8f%91%e6%89%a7%e8%a1%8c%e5%bc%95%e6%93%8e"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="链接到标题"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;链接到标题&lt;/span&gt;
 &lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;大模型并非线性执行代码的单核机器。
如果大模型在一次 Turn 中同时发出了读取 &lt;code&gt;A.ts&lt;/code&gt;, &lt;code&gt;B.ts&lt;/code&gt; 和覆写 &lt;code&gt;C.ts&lt;/code&gt; 的指令，Claude Code 底层的执行器会自动进行分组排序：&lt;/p&gt;</description></item><item><title>深度解构 Claude Code (一)：产品形态与技术架构演进</title><link>https://miaok.ong/posts/claude-code-source-study-1/</link><pubDate>Wed, 01 Apr 2026 07:20:00 +0800</pubDate><guid>https://miaok.ong/posts/claude-code-source-study-1/</guid><description>&lt;h1 id="深度解构-claude-code-一产品形态与技术架构演进"&gt;
 深度解构 Claude Code (一)：产品形态与技术架构演进
 &lt;a class="heading-link" href="#%e6%b7%b1%e5%ba%a6%e8%a7%a3%e6%9e%84-claude-code-%e4%b8%80%e4%ba%a7%e5%93%81%e5%bd%a2%e6%80%81%e4%b8%8e%e6%8a%80%e6%9c%af%e6%9e%b6%e6%9e%84%e6%bc%94%e8%bf%9b"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="链接到标题"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;链接到标题&lt;/span&gt;
 &lt;/a&gt;
&lt;/h1&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;引言&lt;/strong&gt;：作为当前最为强大的原生终端智能体，Anthropic 发布的 Claude Code 绝不仅是一个“套壳大模型”。通过对其底层约 330 个工具文件、100+ Slash 命令以及 146 个 UI 组件（纯 TypeScript + React 编写，运行在 Bun 上）的深度逆向分析，我们得以窥探到一款&lt;strong&gt;生产级终端 Agent&lt;/strong&gt; 是如何从零构建的。&lt;/p&gt;
&lt;p&gt;本文拒绝浮于表面的功能体验，我们将从产品架构与核心技术底座两个维度，深度解剖 Claude Code 的工业级设计。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id="1-产品架构-product-architecture超越-repl-的终端操作系统"&gt;
 1. 产品架构 (Product Architecture)：超越 REPL 的终端操作系统
 &lt;a class="heading-link" href="#1-%e4%ba%a7%e5%93%81%e6%9e%b6%e6%9e%84-product-architecture%e8%b6%85%e8%b6%8a-repl-%e7%9a%84%e7%bb%88%e7%ab%af%e6%93%8d%e4%bd%9c%e7%b3%bb%e7%bb%9f"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="链接到标题"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;链接到标题&lt;/span&gt;
 &lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Claude Code 在产品定义上彻底打破了传统 CLI 工具“一问一答（阻塞式 REPL）”的枯燥模式。它的核心产品架构可以划分为以下几个主要防区：&lt;/p&gt;
&lt;h3 id="11-伪装成终端的富应用-terminal-as-a-react-app"&gt;
 1.1 “伪装成终端”的富应用 (Terminal as a React App)
 &lt;a class="heading-link" href="#11-%e4%bc%aa%e8%a3%85%e6%88%90%e7%bb%88%e7%ab%af%e7%9a%84%e5%af%8c%e5%ba%94%e7%94%a8-terminal-as-a-react-app"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="链接到标题"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;链接到标题&lt;/span&gt;
 &lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;这是 Claude Code 在交互层面最降维打击的一点。它并没有使用常规的 &lt;code&gt;console.log&lt;/code&gt; 打印文本，而是&lt;strong&gt;在终端环境里手搓了一个完整的 React 渲染器与 Yoga 布局引擎&lt;/strong&gt;（Facebook 的 Flexbox 实现）。&lt;/p&gt;</description></item></channel></rss>