一、不同Code Agent架构及商业设计
不同 Code Agent 有不同的设计架构,不都强依赖云端服务。商业化产品(如 Claude Code、Cursor)通常依赖云端服务提供完整能力,而开源方案(如 OpenCode)则被设计为可在本地独立运行,只需连接大模型 API。
产品 | Agent服务端依赖情况 | 大模型API依赖(推理计算) |
|---|---|---|
Claude Code | Anthropic 云端(闭源,厂商控制) | Anthropic 官方云/AWS Bedrock/GCP Vertex/Azure Foundry(官方多云选项) |
Cursor | Anysphere 云端(闭源,厂商控制) | 可配置多家云(如阿里百炼)或自研 Composer 模型(用户自行对接) |
OpenCode | 完全本地运行(开源,Node.js 进程) | 完全可选(支持 OpenAI、Anthropic、本地 Ollama 等,通过配置 baseURL) |
Codex (OpenAI) | 完全本地运行(开源,CLI Harness) | 完全可选(默认 OpenAI 云,可配置 Azure 云,或通过 |
二、客户端 / 服务端包含的主要功能
当前的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 等外部系统调用
安全沙箱:权限控制、高危操作拦截、执行超时管控
任务调度中心
异步任务队列
长任务状态管理、失败重试、并发控制
存储层
业务库:用户、会话、任务、操作日志
向量库:代码 / 文档向量索引
对象存储:代码产物、附件、快照
安全与审计
代码脱敏、漏洞检测、敏感信息过滤
全链路操作审计、行为日志留存