第16章:Agent 算法思想的升华

“我们不是在建造一个工具,而是在定义人与智能体协作的范式。” 16.1 回望来路:从代码到思想 当你翻到这一页时,我们已经共同走过了一段漫长的旅程。从第1章的感知-推理-行动循环,到第15章的性能优化深渊,我们逐行审视了 Claude Code 近两千个源码文件、数十万行 TypeScript 代码中蕴含的工程智慧。 然而,如果这本书仅仅停留在"Claude Code 是怎么写的"这个层面,那它的价值将随着下一个版本的发布而褪色。代码会过时,API 会变迁,框架会更替——但算法思想不会。正如 Donald Knuth 在《计算机程序设计艺术》中所言,真正值得学习的不是某个具体的程序,而是程序背后的思维方式。 让我们从 Claude Code 的具体实现中抽身而出,提炼出那些具有普适价值的 Agent 算法思想。这些思想,将在未来无数的 Agent 系统中以不同的形式反复出现。 16.2 七大核心算法模式 纵览全书,我们可以从 Claude Code 的架构中提炼出七个核心算法模式。它们不是孤立的技巧,而是一套完整的 Agent 设计语言。 模式一:感知-推理-行动循环(Perception-Reasoning-Action Loop) 源自第1、4章的核心发现。 Claude Code 的 query.ts 中的主循环是整个系统的心脏。它不是一个简单的 request-response 模型,而是一个持续运转的 while(true) 循环: // query.ts — 简化的核心循环结构 async function* queryLoop(params: QueryParams) { let state: State = { messages, toolUseContext, turnCount: 1, ... } while (true) { let { toolUseContext } = state const { messages, turnCount } = state yield { type: 'stream_request_start' } // 感知:收集上下文、附件、记忆 // 推理:调用 LLM 获取响应 // 行动:执行工具调用 // 判断:是否继续循环 } } 这个模式的精妙之处在于它的生成器(AsyncGenerator)设计。query 函数不是返回一个结果,而是 yield 出一个事件流——流式事件、消息、工具结果——让调用者可以逐步消费。这是一个经典的协程模式:循环的每一轮既是一次完整的感知-推理-行动周期,又是一个可被外部中断、恢复的协作点。 ...

June 9, 2026