CodeAgent 技术架构简易介绍

CodeAgent 技术架构简易介绍
一、不同Code Agent架构及商业设计不同 Code Agent 有不同的设计架构不都强依赖云端服务。商业化产品如 Claude Code、Cursor通常依赖云端服务提供完整能力而开源方案如 OpenCode则被设计为可在本地独立运行只需连接大模型 API。产品Agent服务端依赖情况大模型API依赖推理计算Claude CodeAnthropic 云端闭源厂商控制Anthropic 官方云/AWS Bedrock/GCP Vertex/Azure Foundry官方多云选项CursorAnysphere 云端闭源厂商控制可配置多家云如阿里百炼或自研 Composer 模型用户自行对接OpenCode完全本地运行开源Node.js 进程完全可选支持 OpenAI、Anthropic、本地 Ollama 等通过配置 baseURLCodex (OpenAI)完全本地运行开源CLI Harness完全可选默认 OpenAI 云可配置 Azure 云或通过--oss指向本地 Ollama/LM Studio二、客户端 / 服务端包含的主要功能当前的CodeAgent基本都采用客户端/服务端分离的架构前后端进程解耦。其架构更通用、更能长期迭代也匹配不同的部署模式。Claude Code与OpenCode这种区分在于服务端是只能依赖固定云还是可以在普通的通用服务器上都可以运行。执行opencode直接打开终端界面时程序会自动在本机后台拉起独立服务端进程客户端本地localhost通信只是对用户屏蔽了多进程细节视觉上像 “一体化软件”底层仍是两套独立模块。对于极简 CLI 单进程工具或者一体式 IDE 内置单体智能体这种一般没有按照BS架构实现但不是当前CodeAgent的主流实现方式。一客户端独立桌面客户端主界面框架AI 对话、代码编辑、工程管理、任务看板本地工程解析项目结构扫描、代码语法树解析、文件读写Git 集成本地 diff、分支、提交记录读取、代码快照通信模块HTTP/gRPC/WebSocket支持流式结果渲染本地能力会话缓存、历史记录、配置管理、权限校验IDE 插件客户端代码上下文采集当前文件、选中代码、依赖、报错信息交互面板行内补全、对话窗口、diff 预览IDE 联动保存、跳转、重构、运行等事件触发 AI 能力Web 客户端前端界面 在线编辑器会话管理、任务进度、结果预览CLI 客户端命令行交互、批量处理、脚本调用、CI 接入二服务端接入网关认证鉴权、租户隔离限流、熔断、负载均衡协议转换、日志审计、安全过滤Agent 核心调度引擎意图理解模块对用户需求做分类代码生成 / 缺陷修复 / 单元测试 / 代码评审 / 文档生成 / 接口对接等。任务规划与拆解复杂需求拆分为多步执行计划如理解需求 → 检索知识库 → 生成代码 → 编译检查 → 格式化输出。多种 Agent 调度根据任务类型调度专用子 Agent编码 Agent重构优化 Agent测试生成 Agent代码评审 Agent缺陷定位与修复 Agent文档与注释生成 Agent。上下文记忆与管理维护多轮对话历史、项目结构记忆、依赖关系、修改历史支持上下文压缩与截断。Prompt 工程中心内置行业模板、动态拼接上下文与知识库内容、输出格式约束。人机协同控制关键变更需人工确认、支持任务中断 / 继续 / 回滚、多轮反馈修正。代码 RAG 服务文档 / 代码解析层支持代码、PDF/Word/Markdown、API 文档、MBSE/FMEA 规范、企业标准库解析提取结构化信息。分块与向量化代码按函数 / 类 / 模块切块文本按段落切块调用 Embedding 模型生成向量。向量检索与召回在向量库中做语义检索召回最相关的代码样例、接口规范、历史实现、最佳实践。重排序与增强对召回结果相关性排序、去重、过滤拼接进 Prompt 提升生成准确性。知识库管理支持私有代码库、企业规范、项目文档的增量入库、更新、删除、权限管理。工具执行服务代码工具文件读写、代码格式化、语法检查、静态扫描工程工具Git、编译构建、单元测试、沙箱运行系统对接PLM/SAP/MES/CI 等外部系统调用安全沙箱权限控制、高危操作拦截、执行超时管控任务调度中心异步任务队列长任务状态管理、失败重试、并发控制存储层业务库用户、会话、任务、操作日志向量库代码 / 文档向量索引对象存储代码产物、附件、快照安全与审计代码脱敏、漏洞检测、敏感信息过滤全链路操作审计、行为日志留存