CodexQA

行业与实践研究与基准测试

Agent = Model + Harness:腾讯云 ADP 的云端智能体工程实践

CodexQA 团队阅读约 9 分钟

腾讯云 ADP 团队拆解 Agent 从 Demo 走向生产的工程抽象:把 Agent Loop、Memory、Sandbox、Tools 与可观测解耦,用最小权限、沙箱隔离、轨迹记录和评估反馈闭环支撑长任务稳定运行。

本文目录

Agent = Model + Harness:腾讯云 ADP 的云端智能体工程实践

腾讯云 ADP(Agent Development Platform,腾讯云面向企业的智能体开发平台)团队在 2026 年 7 月 17 日发布了一篇工程实践文章,系统回答了 Agent 从 Demo 走向生产必须解决的一类问题:模型只负责推理,那工具、状态、权限、上下文、执行环境、恢复、评估、观测和反馈闭环由谁负责?团队给出的答案是 Harness——Agent 的运行时加工具层、状态层、安全层、反馈层与评估层的总称。这篇文章完整拆解了腾讯云 ADP 如何围绕 Harness 做解耦设计,对正在搭建 Agent 测试与评测体系的团队有很直接的参考价值。

为什么需要 Harness

文章首先梳理了真实生产环境中 Agent 会遇到的问题:

  1. 真实任务不是一次模型调用能完成的。修改整个代码仓库、调试失败测试、分析线上日志、操作浏览器完成业务流程、跨系统调用多个 API,都需要「观察环境 → 思考下一步 → 调用工具 → 读取结果 → 调整计划 → 继续执行」的多轮循环。
  2. 模型需要「手」而不只是「大脑」。模型只能生成文本或结构化输出,真正干活需要读写文件、执行 shell、调用 API、查询数据库、提交 PR、跑测试、读日志、调用 MCP 工具(MCP,Model Context Protocol,一种让 Agent 以统一协议发现和调用外部工具与资源的标准)。
  3. 长周期任务需要状态管理。上下文会满、进程会挂、容器会重启,任务可能跨小时甚至跨天。如果状态散落在模型上下文、临时文件、容器内存、工具返回结果和聊天记录里,就非常脆弱,必须有 session 日志、任务计划、中间结果、上下文压缩、失败恢复和 wake/resume 机制。
  4. Agent 需要反馈闭环,而不是盲目执行。Coding Agent 的常见错误包括改错文件、编译不过、测试失败、引入架构违规、误删用户改动、过度重构。人类工程师依赖编译器、单元测试、linter、类型检查、code review、运行时日志和产品验收这些反馈源,Agent 同样需要接入。
  5. 安全和权限管理。Agent 一旦能执行工具,就要回答能不能读敏感文件、能不能访问生产数据库、能不能调用付费 API、凭证是否暴露给模型、工具调用是否需要人工审批。文章强调,把 token、代码、shell、网络访问全部丢进同一个环境风险很高,提示注入(Prompt Injection)可能诱导模型读取密钥或执行危险命令。
  6. 多 Agent 协作需要编排。planner 拆任务、executor 执行、reviewer 检查、evaluator 验收,谁有权限执行工具、失败后谁重试、什么时候终止,都是 Harness 或 Agent Runtime 的职责。
  7. 产品化 Agent 需要可观测性。团队需要知道它为什么做这个决策、调了哪些工具、哪一步失败、token 花在哪里、哪些工具失败率最高、用户能否回放整个过程。

文章用一张表总结 Harness 的价值:模型只能输出文本,Harness 提供工具和执行环境;任务太长,Harness 管理 session、状态和恢复;容易犯错,Harness 接入测试、lint、日志等反馈;工具有风险,Harness 做权限、安全、审批和隔离;Agent 难评估,Harness 记录轨迹并支持 replay 和 eval;生产不可观测,Harness 提供 tracing、metrics 和审计。

解耦设计:把大脑和手分开

文章指出业界客户端型 Harness(如 claude code、codex 等把 memory、沙箱、agent loop 全部打包进容器执行的方案)在长任务和复杂任务上会暴露六个问题:容器变成不能随便重建的「宠物」;harness 卡住或容器崩溃后难以从外部恢复;排障需要进入用户容器带来安全合规风险;代码、凭证、数据混在同一个容器里安全边界不清晰;每个 session 绑定一个容器导致扩展性差;harness 与容器强绑定导致难以演进。

腾讯云 ADP 的方案是把 Agent Loop(大脑)、Memory、Sandbox、Tools、可观测五个部分解耦,具体对比如下:

  • 恢复能力:Session 与 Memory 独立持久化,和 Sandbox 算力解耦,崩溃后可通过 SessionId 重新读取历史继续执行;执行框架异步化,基于 AGUI 事件协议(一种 Agent 与界面之间回传状态与结果的标准事件协议)支持流式反馈、断线重连和过程恢复。
  • 安全边界:Sandbox 只负责隔离执行,凭证放在 Vault / Proxy 中,敏感信息不进入执行环境。
  • 扩展性:各组件独立伸缩,只有真正需要执行时才创建 Sandbox。
  • 运维复杂度:Sandbox 可替换、可重建,问题更容易隔离和恢复。
  • 演进能力:通过稳定接口连接各组件,底层策略可独立升级,业务接口保持稳定。

Agent Loop:上下文与长任务稳定性

Agent Loop 是核心执行循环,把用户目标不断转成「模型调用 → 工具调用 → 状态更新 → 再次决策」。文章列出的上下文管理难点包括:tool result 太大、历史会话太长、中间过程污染主上下文、压缩后丢关键信息、压缩摘要和真实状态不一致。ADP 的做法是每轮请求前做工具裁剪、微压缩、自动压缩、长期记忆异步提取和按需注入;用 fork 隔离中间工具噪音,用 dream 整理长期记忆;摘要 prompt 强制结构化保留关键信息;保留最近消息原文,不全靠摘要;压缩后恢复最近读过的文件。

长任务稳定性方面,模型超时、工具超时、网络错误、MCP 连接断开、shell 卡住、用户中断、上下文超限、token budget 超限都可能发生。ADP 用状态机驱动 Agent 运行时,配合任务驱动的自动续跑机制,并在五个层次做异常处理:API 层做 retry / backoff / fallback / credential refresh;Loop 层补 tool_result、compact recovery、abort reason;Tool 层做 timeout、progress、error tool_result;Task 层做 background、kill、notification、cleanup;Context 层做 budget、compact、collapse。

多 Agent 协作上,ADP 参考 claude code 的 SubAgent 设计:主 Agent 通过 AgentTool 启动子 Agent,子 Agent 复用同一套 agent loop,但拥有独立上下文和生命周期。内置四种 agentType:general-purpose(通用研究与复杂多步任务,工具权限最宽)、Explore(快速探索代码库,只读,禁止 Edit / Write / Agent)、verification(实现后验证,跑测试、构建和检查,必须给出 PASS/FAIL/PARTIAL 结论)、fork(继承父上下文的特殊 agent)。文章还预告了即将上线的 Agent Team 能力:team lead 创建团队,teammate 持续运行、领取任务、发消息、可被中断和恢复,适合大型功能开发、代码库大规模改造、多模块排障等并行场景。

Memory:跨会话长期记忆

文章总结了记忆系统的五个核心难点:存什么(区分短期 session、长期 memory、项目规则、用户偏好)、何时存(避免把临时信息和错误推断写入长期记忆)、怎么取(检索要准确、相关、不过量)、如何更新与遗忘(版本、时间、作用域、冲突处理和删除机制)、如何安全可信(权限隔离、脱敏、来源记录、置信度管理,避免跨用户污染)。

ADP 的 Memory 设计包括:跨会话长期记忆自动提取用户偏好、反馈风格、项目背景、关键事实四类信息;Part / Message / Session 三级存储结构,以 Part 为最小语义单元完整保留多模态消息流与工具调用链路,支持细粒度回放与审计;Session 级智能压缩把同步压缩的响应耗时由秒级降至毫秒级;run → todo_list → todo 三层任务记忆模型支持长任务的中断恢复;提取与召回解耦,写入侧异步增量提取不阻塞主链路,读取侧按需召回并保留来源会话、来源 run、命中记忆 ID 等元信息;以 Memory Resource 作为顶层租户单元做多租户隔离与业务级灰度。

Sandbox:AGS Cube 安全沙箱

Sandbox 给 Agent 一个可操作但受控的工作空间。ADP 基于 AGS Cube 安全沙箱(腾讯云提供的虚拟机级隔离沙箱服务),文章列出的能力包括:内核级强隔离,每实例独立 Guest OS,LLM 生成的代码与 Bash 命令在 VM 级边界内执行;AGS 镜像预热实现 100ms 级冷启动,进程级快照支持 Pause/Resume;Serverless 弹性伸缩,并发数十万实例每分钟;空闲超 5 分钟自动 Pause、调用自动 Resume,长期不用自动销毁并把 workspace 数据打包到 COS(腾讯云对象存储),恢复时自动加载;凭证零落地,沙箱内环境变量看到的只是占位符,真凭证留在可信域。

Tools:把工具执行从 Agent 进程里抽离

ADP 把工具执行做成独立的 HTTP 服务(HTTP-as-Boundary),相比 LangChain / LangGraph 把工具函数定义在 Agent 进程里、Cursor / Aider 把工具能力和界面紧耦合的做法,好处是跨语言(Agent 可用任何语言实现)、跨部署(工具服务独立扩缩容和升级)、可复用(多个 Agent 框架共享同一套工具实现)。工程细节包括:Adapter 模式加编译期模板替换,支持 OpenCode 和 ClaudeCode 两套工具运行时并通过环境变量切换,运行时零开销;双层 AsyncLocalStorage 实现并发隔离,业务代码像单进程同步代码一样写,底层天然按请求隔离 workdir、sessionId 和 cwd;DirectoryContextRegistry 用引用计数、空闲计时器和 LRU 限额三层生命周期精细回收资源;文件操作执行 Read-before-Write 契约和 mtime 防覆盖,Edit 和 Write 必须先 Read 过目标文件,Read 之后磁盘 mtime 变化就拒绝写入;COS 集成全流式,tar 输出直接 pipe 到分片上传,下载用 Range GET 边下边解,大目录传输不落盘。

权限与安全

文章给出的原则是:安全重点不是「让模型保证不犯错」,而是模型负责建议和决策,Harness 负责边界、权限、隔离、审计和最终执行控制,即最小权限 + 工具校验 + 沙箱隔离 + 人工审批 + 全链路审计。ADP 实现企业级、空间级、应用级三级分层权限架构,配合角色权限矩阵与资源配额管控。数据安全方面,Skill 内容安全融合腾讯科恩实验室与云鼎实验室的检测能力,注册阶段异步扫描 Skill 描述、Prompt、脚本、依赖、配置和工具声明,执行阶段对工具调用、命令执行、网络访问、文件读写做实时检测和拦截,输出内容通过天御安全实时审核。Prompt Injection 防护的做法包括:system prompt 明确外部内容不能覆盖系统指令;外部消息标记为 untrusted;高风险工具调用不能只因外部文本要求而执行;connector 返回内容不直接拼进 tool policy;对请求泄露密钥、改权限、关闭安全策略等意图做拦截。多 Agent 安全上,不同 agentType 有不同的工具权限,新建的 subagent 零上下文启动,不自动继承主会话全部上下文,降低敏感信息扩散。

可观测与评估数据

可观测部分包括:Transcript 记录完整会话、工具调用、工具结果和执行轨迹;Sidechain Transcript 为 subagent 和 background agent 单独记录,避免污染主会话并支持恢复;LLM Gateway Transcript 记录每次模型调用的完整请求与响应,包含 prompt、messages、model、参数、token、耗时和错误;Agent 身份追踪记录 agentId、agentType、teamName、parentSessionId;每次 API 请求带 traceid 并在微服务内部透传;Usage 统计 token、工具调用次数和耗时。这套轨迹数据正是评估层(Evaluation / Feedback)的输入——文章在关键概念表中明确,评估层通过测试集、人工反馈、任务成功率、安全拦截率、成本和延迟指标衡量 Agent 表现,而轨迹记录、replay 和 eval 数据采集都由 Harness 承担。

两种集成方式与限制

文章最后介绍了 ADP 的两种使用形态:面向普通使用者的智能工作台(开箱即用),和面向企业开发者的 Claw 模式(托管智能体,企业预配置提示词、工具、skill、MCP、权限和发布版本后,通过 API、控制台、工作流或业务系统调用)。集成上分为「Agent 构建在 ADP 平台、业务系统只集成运行时对话 API」和「配置端 API 加运行时 API 全部集成」两条路径,分别适合 Agent 数量有限、关注快速上线的企业,和要自建智能体平台、需要多租户批量管理的大型集团与 SaaS 厂商。

需要说明的限制:文章描述的是腾讯云 ADP 平台自身的架构设计与工程取舍,其中的性能数字(如 100ms 级冷启动、秒级降至毫秒级的压缩耗时)来自平台方自述,未经第三方复测;Agent Team 与长期记忆整理(auto-dream)在发布时标注为「即将上线」,实际形态以产品最新版本为准;文中的 Harness 概念表和业界对照部分引用了 OpenAI、Anthropic、Martin Fowler、LangChain、Google、Microsoft 等公开文章的观点,属于业界共识的整理而非 ADP 独有的实验数据。

出处:腾讯,腾讯云 ADP 团队,《Harness Engineering 如何驱动云端智能体:腾讯云ADP 的设计实践》,2026-07-17,https://adp.tencent.com/zh/blog/agent-harness-engineering-adp-practice

觉得有用,转给同事

微信扫码

用微信扫一扫,在手机上打开后即可转发。

用 RSS 订阅

提交勘误