当前位置: 首页 > article >正文

Coding Agent底层架构全解(极其详细),吃透6大核心组件,收藏这篇就够了!

为什么同样的模型在 Chat 界面和 Coding Agent 里表现完全不同最近读到 Sebastian Raschka 的一篇深度文章拆解了 Coding Agent代码智能体的核心架构。Sebastian 是《Build a Large Language Model (From Scratch)》的作者也是 AI 领域最会写技术博客的人之一。这篇文章回答了一个我长期困惑的问题为什么 Claude Code 或 Codex CLI 里的模型感觉比网页版 Chat 强那么多答案很简单模型还是那个模型但周围的系统完全不同。今天这篇文章我结合自己的理解带你拆解 Coding Agent 的 6 大核心组件。一、先厘清概念LLM、Reasoning Model、Agent 的区别Sebastian 在文章开头做了一个很好的区分概念定义类比LLM基础的 next-token 模型引擎Reasoning Model训练/提示后会花更多计算在推理过程上加强版引擎Agent包裹在模型外的控制循环自动驾驶系统Agent HarnessAgent 的软件脚手架车身传感器控制系统Coding Harness专门用于代码任务的 Harness赛车专用套件关键洞察Coding Agent 的强大不在于用了什么模型而在于 Harness 怎么管理上下文、工具、状态和反馈循环。二、Coding Agent 的 6 大核心组件Sebastian 开源了一个 Mini Coding Agent纯 Python 实现零依赖开源地址见文末参考链接用代码注释标注了 6 个核心组件。我逐一解读组件 1实时仓库上下文Live Repo Context问题当你说修复测试时模型需要知道什么这是 Git 仓库吗当前在哪个分支有哪些未提交的修改项目文档README、AGENTS.md里有什么指令解决方案 Harness 在每次交互前先构建一个 Workspace Summary工作区摘要包含Git 状态分支、未提交更改、最近提交项目结构关键文件位置文档内容README、配置说明效果模型不是从零开始而是带着上下文工作。组件 2Prompt 结构与缓存复用Prompt Shape Cache Reuse问题Coding 会话是重复的但每次都重建整个 Prompt 很浪费。解决方案把 Prompt 分成两部分┌─────────────────────────────────────┐│ Stable Prompt Prefix (稳定前缀) │ ← 缓存不重复计算│ - 通用指令 ││ - 工具描述 ││ - 工作区摘要 │├─────────────────────────────────────┤│ Dynamic Session State (动态状态) │ ← 每次更新│ - 短期记忆 ││ - 最近对话历史 ││ - 最新用户请求 │└─────────────────────────────────────┘效果缓存稳定前缀只计算变化部分大幅降低延迟和成本。组件 3结构化工具、验证与权限Structured Tools, Validation, and Permissions问题模型可能生成任意命令怎么保证安全解决方案预定义工具列表 严格验证流程# 工具定义示例tools { read_file: { description: 读取文件内容, params: {path: string}, approval: False# 低风险自动执行 }, write_file: { description: 写入文件, params: {path: string, content: string}, approval: True # 高风险需要确认 }, run_shell: { description: 执行 shell 命令, params: {command: string}, approval: True # 高风险需要确认 }}验证流程模型输出结构化动作JSONHarness 检查是否是已知工具参数是否合法判断是否需要用户确认执行并返回结果效果模型不能随意执行命令安全性和可靠性大幅提升。组件 4上下文缩减与输出管理Context Reduction Output Management问题对话长了之后上下文窗口不够用怎么办解决方案Clip截断保留最近的 N 轮对话丢弃旧的Summary摘要对早期对话生成摘要替代原始内容优先级排序系统消息 工具结果 用户输入 模型输出效果在有限上下文窗口内保留最有价值的信息。组件 5对话记录、记忆与恢复Transcripts, Memory, and Resumption问题会话中断后怎么恢复长期记忆怎么管理解决方案SessionStore持久化存储每次交互Transcript对话记录完整的交互历史可回放Memory记忆提取的关键信息如用户偏好、项目约定Resumption恢复从任意点恢复会话状态效果Coding Agent 可以跨会话保持上下文像人类开发者一样记住项目细节。组件 6委托与有界子 AgentDelegation and Bounded Subagents问题复杂任务怎么分解怎么避免 Agent 陷入无限循环解决方案子 AgentSubagent把子任务委托给专门的 Agent 实例有界Bounded设置时间限制、步骤限制、范围限制父 Agent 协调管理多个子 Agent汇总结果示例用户重构这个模块 ↓父 Agent 分析任务 ↓├─ 子 Agent 1分析依赖关系限制5分钟├─ 子 Agent 2生成新接口限制10分钟└─ 子 Agent 3更新调用点限制15分钟 ↓父 Agent 汇总、验证、提交效果复杂任务可分解避免单 Agent 过载提高成功率。三、为什么 Harness 比模型更重要Sebastian 提出了一个有趣的观点“如果我把最新的开源模型如 GLM-5放进类似的 Harness它可能在 Coding 任务上表现与 GPT-5.4 in Codex 或 Claude Opus 4.6 in Claude Code 相当。”这意味着什么模型能力在收敛顶级模型的基础能力差距在缩小Harness 是差异化关键上下文管理、工具设计、缓存策略决定用户体验垂直优化空间大针对 Coding 场景的专门优化比通用 Chat 体验好得多四、实战启示基于这 6 个组件我总结了几个实用建议如果你在用 Claude Code / Codex✅ 利用.claude.md/AGENTS.md提供项目上下文✅ 允许 Agent 访问完整的 repo不要只给单个文件✅ 利用缓存机制相似任务连续做更高效如果你在构建自己的 Coding Agent✅ 先构建 Workspace Context别让模型盲猜✅ 设计好工具边界安全第一✅ 投资缓存策略降低延迟和成本✅ 考虑会话恢复用户体验更完整如果你在选择 AI 编程工具✅ 不要只看模型看 Harness 完整度✅ 上下文管理能力比模型参数更重要✅ 工具生态测试、调试、版本控制决定上限学AI大模型的正确顺序千万不要搞错了2026年AI风口已来各行各业的AI渗透肉眼可见超多公司要么转型做AI相关产品要么高薪挖AI技术人才机遇直接摆在眼前有往AI方向发展或者本身有后端编程基础的朋友直接冲AI大模型应用开发转岗超合适就算暂时不打算转岗了解大模型、RAG、Prompt、Agent这些热门概念能上手做简单项目也绝对是求职加分王给大家整理了超全最新的AI大模型应用开发学习清单和资料手把手帮你快速入门学习路线:✅大模型基础认知—大模型核心原理、发展历程、主流模型GPT、文心一言等特点解析✅核心技术模块—RAG检索增强生成、Prompt工程实战、Agent智能体开发逻辑✅开发基础能力—Python进阶、API接口调用、大模型开发框架LangChain等实操✅应用场景开发—智能问答系统、企业知识库、AIGC内容生成工具、行业定制化大模型应用✅项目落地流程—需求拆解、技术选型、模型调优、测试上线、运维迭代✅面试求职冲刺—岗位JD解析、简历AI项目包装、高频面试题汇总、模拟面经以上6大模块看似清晰好上手实则每个部分都有扎实的核心内容需要吃透我把大模型的学习全流程已经整理好了抓住AI时代风口轻松解锁职业新可能希望大家都能把握机遇实现薪资/职业跃迁这份完整版的大模型 AI 学习资料已经上传CSDN朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

相关文章:

Coding Agent底层架构全解(极其详细),吃透6大核心组件,收藏这篇就够了!

为什么同样的模型,在 Chat 界面和 Coding Agent 里表现完全不同? 最近读到 Sebastian Raschka 的一篇深度文章,拆解了 Coding Agent(代码智能体)的核心架构。Sebastian 是《Build a Large Language Model (From Scratc…...

35岁程序员必看:收藏这份智能体(Agent)开发指南,开启你的“第二曲线”!

35岁,已经成为职场人的魔咒。 尤其是IT行业打工人。 很多人到了35岁,被裁了。 没被裁的,也在担心被裁。 还没到35岁的,已经开始焦虑—— “到了那时候,我该怎么办?” 以前,还真没什么好办法。 但…...

从安全工具开发视角看驱动遍历:如何用C语言在Windows内核里‘看见’所有sys文件

从安全工具开发视角看驱动遍历:如何用C语言在Windows内核里‘看见’所有sys文件 在安全攻防的战场上,内核层始终是兵家必争之地。当恶意软件试图通过加载隐藏驱动来逃避检测时,安全工程师需要一双能穿透迷雾的"眼睛"——这就是驱动…...

从MCAS系统失效到监管失察:波音737MAX空难的工程伦理再审视

1. MCAS系统:一个被简化的技术补丁 当波音工程师面对737MAX机型发动机安装位置带来的气动特性变化时,他们选择了一个看似聪明的解决方案——机动特性增强系统(MCAS)。这个系统的设计初衷非常简单:当飞机仰角过大时&…...

不用装软件!这款MicroPython浏览器 IDE :让你在手机上也能调试树莓派 Pico拐

1、普通的insert into 如果(主键/唯一建)存在,则会报错 新需求:就算冲突也不报错,用其他处理逻辑 回到顶部 2、基本语法(INSERT INTO ... ON CONFLICT (...) DO (UPDATE SET ...)/(NOTHING)) 语…...

ESP32/ESP8266接入Ambient云平台实战指南

1. Ambient ESP32/ESP8266 库技术解析:面向嵌入式物联网的数据上云实践Ambient 是一款专为物联网设备设计的轻量级云端数据可视化服务,其核心价值在于将嵌入式终端采集的传感器数据,通过极简协议上传至云端,并自动生成实时、可配置…...

STM32裸机4-bit驱动HD44780字符LCD库

1. 项目概述CharLcd4bit是一款专为 STM32F103RB 微控制器(如 NUCLEO-F103RB 开发板)设计的轻量级字符型液晶显示驱动库,面向标准 HD44780 兼容的 162 字符 LCD 模块(典型型号:JHD162A、LM016L、PC1602 等)&…...

Beyond Compare 5 开源密钥生成工具:从评估模式到专业授权的完整解决方案

Beyond Compare 5 开源密钥生成工具:从评估模式到专业授权的完整解决方案 【免费下载链接】BCompare_Keygen Keygen for BCompare 5 项目地址: https://gitcode.com/gh_mirrors/bc/BCompare_Keygen 当你在使用Beyond Compare 5进行文件对比或同步工作时&…...

告别Qt Creator!在VSCode里配置Qt 6.8.3 + MSVC2022开发环境(附完整settings.json)

在VSCode中构建Qt 6.8.3开发环境:从零配置到高效开发 Qt Creator曾经是Qt开发者的标配IDE,但随着VSCode在代码编辑、插件生态和跨语言支持上的突飞猛进,越来越多的开发者开始转向这个轻量级但功能强大的编辑器。本文将带你从零开始&#xff0…...

3步掌握XUnity.AutoTranslator:Unity游戏实时翻译实战指南

3步掌握XUnity.AutoTranslator:Unity游戏实时翻译实战指南 【免费下载链接】XUnity.AutoTranslator 项目地址: https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator XUnity.AutoTranslator是一款专为Unity游戏设计的智能实时翻译插件,能够…...

L6599A VCO工作原理深度解析:为什么你的LLC闭环仿真总是不稳定?

L6599A VCO工作原理深度解析:为什么你的LLC闭环仿真总是不稳定? 在LLC谐振变换器的设计中,闭环仿真的稳定性往往是工程师面临的最大挑战之一。许多经验丰富的电源工程师都曾遇到过这样的困境:明明按照芯片手册设计了所有外围电路&…...

【51单片机】【Proteus仿真】 十字路口交通灯系统:从仿真到代码的实战解析

1. 项目背景与核心功能 十字路口交通灯系统是嵌入式开发的经典练手项目,它完美融合了硬件控制、定时器中断和状态机设计三大核心技能。我当年第一次用51单片机做这个项目时,整整调了两天黄灯闪烁频率才稳定下来。这个仿真系统最实用的地方在于&#xff0…...

打字不如说话,说话不如截图——AI 代码助手的多模态输入实践捶

整体排查思路 我们的目标是验证以下三个环节是否正常: 登录成功时:服务器是否正确生成了Session并返回了包含正确 JSESSIONID的Cookie给浏览器。 浏览器端:浏览器是否成功接收并存储了该Cookie。 后续请求:浏览器在执行查询等操作…...

CAN BLF包解析实战:从原始报文到可读数据的Python解码之旅

1. 初识CAN BLF文件:汽车电子的数据宝库 第一次拿到BLF文件时,我盯着那一堆十六进制数据直发懵。这就像拿到一本用外星文字写的日记,明明知道里面记录着重要信息,却完全看不懂内容。BLF文件其实是Vector公司CANoe工具录制的CAN总线…...

过温保护电路设计避坑指南:从LM358偏移电压到三极管测温精度的5个关键点

过温保护电路设计避坑指南:从LM358偏移电压到三极管测温精度的5个关键点 在工业控制领域,过温保护电路的设计往往被视为"简单任务",但实际调试中工程师常会遇到仿真完美而实测偏差大的困境。某电机驱动项目就曾因PCB热耦合问题导致…...

从零组装一台能联网的电脑:手把手记录我的南邮电装实习全过程(含BIOS设置与网络配置)

从零组装一台能联网的电脑:手把手记录我的南邮电装实习全过程 第一次亲手组装电脑的体验,远比想象中更令人兴奋。作为电子信息工程专业的学生,这次电装实习让我从理论走向实践,完整经历了从零配件到联网主机的全过程。如果你也和我…...

一文搞懂 Spring Cloud:从入门到实战的微服务全景指南(建议收藏)诨

一、中间件是啥?咱用“餐厅”打个比方 想象一下,你的FastAPI应用是个高级餐厅。 ?? 顾客(客户端请求)来到门口。- 迎宾(CORS中间件):先看你是不是从允许的街区(域名)来…...

【OpenClaw】通过 Nanobot 源码学习架构---()总体淮

核心摘要:这篇文章能帮你 ?? 1. 彻底搞懂条件分支与循环的适用场景,告别选择困难。 ?? 2. 掌握遍历DOM集合修改属性的标准姿势与性能窍门。 ?? 3. 识别流程控制中的常见“坑”,并学会如何优雅地绕过去。 ?? 主要内容脉络 ?? 一、痛…...

SLAM 技术路线已收敛:这几条才是未来主流!

当前SLAM技术路线已完成收敛,未来主流方向清晰且无争议:激光-IMU紧耦合SLAM凭借厘米级定位与高鲁棒性,仍是工业移动机器人、自动驾驶的核心基石,并向固态激光雷达方向持续降本迭代。激光-视觉-IMU多传感器紧耦合融合为全场景通用标…...

数据库分库分表实战

数据库分库分表实战:应对海量数据的高效策略 随着互联网业务的快速发展,单库单表的数据库架构逐渐暴露出性能瓶颈。当数据量达到千万甚至亿级时,查询延迟、写入拥堵等问题频发,分库分表成为解决这一难题的核心方案。本文将深入探…...

【IIC通信】Chap.2 (I2C)IIC协议的特点;为什么IIC需要开漏输出、上拉电阻?

1. IIC协议的核心特点解析 第一次接触IIC总线时,我被它简洁的两线设计惊艳到了。作为工程师最常用的串行通信协议之一,IIC(Inter-Integrated Circuit)确实在很多嵌入式系统中扮演着重要角色。记得当年调试第一个IIC设备时&#xf…...

Python asyncio 并发下载任务设计

Python asyncio 并发下载任务设计 在当今互联网时代,高效下载大量文件是许多应用场景的常见需求。无论是爬取网页数据、批量下载图片,还是同步云端资源,传统的同步下载方式往往因网络延迟而效率低下。Python的asyncio库提供了一种基于协程的…...

NeurIPS 2024新作SOFTS实战:用PyTorch复现这个高效的多元时间序列预测模型

NeurIPS 2024新作SOFTS实战:用PyTorch复现高效的多元时间序列预测模型 多元时间序列预测在能源管理、交通流量分析和金融市场预测等领域具有广泛应用。2024年NeurIPS会议上提出的SOFTS模型,通过创新的Series-cOre Fusion机制,在预测精度和计算…...

嵌入式三角函数查表法:原理、实现与工业优化

1. 三角函数查表法技术原理与嵌入式实现详解1.1 查表法在嵌入式系统中的工程价值在资源受限的嵌入式MCU(如Cortex-M0/M3、8051、AVR)上,实时计算sin/cos/tan等三角函数存在显著瓶颈:浮点运算单元缺失或性能低下、数学库&#xff0…...

SparkFun SPI SerialFlash Arduino库深度解析:嵌入式SPI Flash驱动开发指南

1. SparkFun SPI SerialFlash Arduino 库深度解析:面向嵌入式工程师的串行 Flash 驱动开发指南1.1 库定位与工程价值SparkFun SPI SerialFlash Arduino Library 是一款面向硬件工程师的底层 SPI 闪存驱动库,其核心目标并非提供高级抽象接口,而…...

聊一聊 C# 中的闭包陷阱:foreach 循环的坑你还记得吗?嘲

. GIF文件结构 相比于 WAV 文件的简单粗暴,GIF 的结构要精密得多,因为它天生是为了网络传输而设计的(包含了压缩机制)。 当我们用二进制视角观察 GIF 时,它是由一个个 数据块(Block) 组成的&…...

MySQL语句执行深度剖析:从连接到执行的全过程滞

开发个什么Skill呢? 通过 Skill,我们可以将某些能力进行模块化封装,从而实现特定的工作流编排、专家领域知识沉淀以及各类工具的集成。 这里我打算来一次“套娃式”的实践:创建一个用于自动生成 Skill 的 Skill,一是用…...

Ubuntu 配置 Claude Code + MiniMax融

先唠两句:参数就像餐厅点单 把API想象成一家餐厅的“后厨系统”。 ? 路径参数/dishes/{dish_id} -> 好比你要点“宫保鸡丁”这道具体的菜,它是菜单(资源路径)的一部分。查询参数/dishes?spicytrue&typeSichuan -> 好比…...

TMC4671电机驱动调试避坑指南:从SPI通信失败到电机抖动的实战排查

TMC4671电机驱动调试避坑指南:从SPI通信失败到电机抖动的实战排查 调试TMC4671电机驱动芯片时,工程师常会遇到各种"坑"和"雷区"。本文将聚焦实际调试过程中最常见的问题,提供一套从现象到原因的逆向排查方法,…...

可变形卷积实战:从原理到PyTorch实现

1. 可变形卷积的核心原理 第一次接触可变形卷积这个概念时,我正被一个目标检测项目困扰着。传统卷积神经网络在处理形变物体时表现不佳,比如检测不同姿态的行人或者被部分遮挡的车辆。直到发现了可变形卷积这个"黑科技",问题才迎刃…...