今天claude code开源了,51万行代码。
对于这种优秀的产品,其实最该学的是它架构设计。
核心架构展示了Anthropic对「AI工程师」的终极理解。
而一旦理解了其架构,对于应用也会更加游刃有余。
根据最新的技术资料,Claude Code 的架构设计理念非常清晰:它没有采用复杂的多智能体系统,而是回归简单——核心是一个单线程主循环,结合强大的工具集和严谨的安全机制,以此来实现可控且高效的自动化。
其核心架构可以拆解为以下四个层面:
🤖 1. 核心工作模式:单线程主循环 (Master Loop)
· 核心机制:系统内部代号为“nO”。它运行一个简单的 while 循环,不断执行“思考-调用工具-观察结果”的步骤,直到模型判断任务完成且不再调用新工具时终止。
· 状态管理:维持单一、扁平的消息历史记录,主动避免复杂的对话分支或多代理冲突,这让系统行为更易于理解和调试。
· 实时操控:通过“h2A”异步双缓冲队列实现实时转向,用户可以在 Claude Code 执行过程中随时插入新指令或调整方向,无需重启。
2. 核心能力引擎:Agentic 智能体机制
· 上下文构建:区别于传统工具的索引方式,它像人一样通过grep、ls等命令动态探索代码库,逐步建立对项目的理解。
· 工具集:配备了文件编辑、命令执行等基础工具,并支持通过 MCP (Model Context Protocol) 连接数据库、API 等外部服务,极大扩展了能力边界。
· 并行处理:通过 Subagents 机制实现有限的并行。主代理可拆解任务并派发子代理并行执行,同时严格控制递归深度,防止资源失控。
🧠 3. 规划与记忆系统
· 任务规划:通过 TodoWrite 工具将复杂任务拆解为结构化列表,并适时“提醒”自己当前进度,确保长任务不跑偏。
· 上下文压缩:当对话长度达到限制(如92%)时,自动触发 Compressor 将历史总结为摘要,以轻量级 Markdown 文件形式保存为长期记忆,替代了复杂的向量数据库方案。
4. 安全与可观测性设计
· 权限系统:对所有写操作和敏感命令实施“请求-授权”机制,支持用户设置命令白名单(如 npm run test)以实现自动化。
· 防御机制:内置沙箱环境执行命令,并过滤 curl|bash 等高危操作及注入攻击尝试。
· 工作流:推崇“先计划,后执行”模式(Plan Mode),AI 在执行前会输出方案供用户审核,确保可控。
架构全景图
这一“开源”恐怕要带来国内更多“新产品”涌现啊!
搬好小板凳吧。