Skip to main content
Harness 是 VeADK 的执行增强扩展,提供两种互斥的接入模式:进程内插件模式和受管 Sidecar 模式。进程内模式在应用进程中加载 Harness 插件,为每轮调用准备上下文、压缩工具结果并校验回答;受管 Sidecar 模式在独立的受控运行时中执行全部增强行为,应用进程不加载相关插件。
两种模式不得混用。受管 Sidecar 模式启用时,HarnessExtension.plugins() 始终返回空列表,应用进程不会加载 veadk.extensions.harness.plugins 的实现。

何时使用

安装

基础 Harness 扩展已随 VeADK 内置,无需额外安装。需要 Headroom 压缩实现时安装 harness 依赖组:

进程内插件模式

进程内模式通过 build_harness_plugins() 构建插件列表,挂载到 Runner:

插件能力

通过环境变量配置

使用 build_harness_plugins_from_env() 从环境变量构建插件:
相关环境变量: HARNESS_ENHANCE_* 与 HARNESS_* 前缀的环境变量均被读取;带 ENHANCE 前缀的优先。

受管 Sidecar 模式

受管 Sidecar 模式通过 HarnessExtension 启动受控运行时,由运行时负责执行全部 Harness 增强行为。HarnessExtension 仅负责启动运行时、应用模型与 MCP 绑定并管理生命周期。

通过环境变量启用

设置 HARNESS_SIDECAR_ENABLED=true 后,HarnessExtension.from_env() 会读取相关环境变量并启动 Sidecar:
HarnessExtension 支持上下文管理器协议,退出时自动关闭 Sidecar:

通过构造参数启用

也可以通过 sidecar 参数直接启用:
sidecar 接受布尔值或配置字典。传入配置字典时,其中的字段会用于解析 Sidecar 计划;传入 True 时使用默认配置。
Sidecar 模式启用时不能同时传入 components 参数;组件选择通过 Sidecar 配置中的 component_overrides 控制。

通过配置对象启用

使用 HarnessSidecarConfig 构建完整配置,再传给 HarnessExtension:
HarnessSidecarConfig.from_env() 也可以从环境变量构建配置对象。

Sidecar 状态

Sidecar 环境变量

受管 Sidecar 模式通过以下环境变量配置。未显式设置时使用默认值。

通用配置

模型代理配置

MCP 网关配置

HarnessExtension 参数

profile 为 ops 时,进程内模式的默认组件会增加 long_run_control。
受管 Sidecar 模式需要 AgentKit 管理的云端运行时环境。在不含 Sidecar Runtime 的环境中启用时,启动会报错或以降级模式运行(取决于 HARNESS_SIDECAR_FAIL_OPEN 的值)。

直接使用模块

进程内模式的各个模块也可以直接使用:
最后修改于 2026年9月19日