Docker Engineering 于 2026-09-25 发布 docker-agent / cagent v1.144.0。本版把 Agent Client Protocol(ACP)v1 兼容面做宽:会话删除与 elicitation、模型推理/安全选项(session/set_config_option)、经客户端 terminal/create 跑 shell、session 生命周期内挂载 Streamable HTTP/SSE 远程 MCP、主机凭证认证与登出、音频 prompt 与有界历史回放。沙箱新增 --cloud 与 v3 kit,可在无本机 Docker 依赖下跑沙箱。另有多条 TUI 渲染性能与沙箱/文件系统隔离修补。面向要把 Agent 嵌进 IDE/网关并统一 ACP 线的团队,这是一次协议面与运维面的齐套升级。

核心要点速览 (Key Takeaways)

  • ✓发版:v1.144.0;CLI 插件名 `docker agent` / 二进制 `docker-agent`
  • ✓ACP:会话删除、elicitation、`session/set_config_option`、客户端 terminal shell、远程 MCP(Streamable HTTP/SSE)、主机凭证与音频 prompt
  • ✓沙箱:`--cloud` + v3 kit,无本机 Docker 也可跑沙箱;同期关闭多条文件系统隔离缺口
  • ✓安装:Docker Desktop 4.63+ 预装;或 `brew install docker-agent`;文档见 docker.github.io/docker-agent
  • ✓协议对照:Agent Client Protocol;MCP 仍可挂 Docker/本地/远程 server
🔬

深度技术解析与实战评估

核心背景与行业痛点

把编码 Agent 嵌进 IDE、网关或 CI 时,最大摩擦往往不是「再接一个模型 API」,而是会话生命周期、终端执行、远程 MCP 与凭证各走各的私有协议。Agent Client Protocol(ACP)想成为这条控制面的公共线;Docker 的 docker-agent(亦称 cagent)则把 YAML 声明式多 Agent、MCP toolset 与沙箱捆在 docker agent CLI 插件里。若 ACP 只覆盖聊天而不覆盖删除会话、客户端终端、远程 MCP 与主机登录,IDE 侧仍要写一堆专有桥接,沙箱又常被迫依赖本机 Docker 守护进程——在无 Docker Desktop 的 CI/云桌面场景会直接卡死。

架构亮点与底层机制

v1.144.0 把 ACP v1 面做宽:支持 sessionCapabilities.delete(排空自有工作后删会话)、elicitation 桥(form/URL 协商)、session/set_config_option(及遗留 session/set_mode)下发推理与安全选项;shell 工具经客户端 terminal/create 等线执行,而不是只在 agent 进程内瞎起子进程。session/new|resume|load 可挂载客户端提供的 Streamable HTTP 与遗留 SSE MCP;补主机凭证认证与连接级登出、音频 prompt 与有界历史回放、消息身份持久化与工具名暴露。沙箱侧新增 --cloud 与 v3 kit,可在无本机 Docker 依赖下跑沙箱,同时关掉若干文件系统隔离缺口。TUI 则用异步可见性轮询替代 tmux focus 启发式,并在侧栏滚动时复用 chat pane 排版。

权威 Benchmark 与实测跑分对比

发行说明未给出跨版本吞吐或 ACP 合规百分比等公开跑分;验收应以协议能力清单为准——会话删除、terminal/create shell、远程 MCP 挂载、--cloud 沙箱在无本机 Docker 环境可启动,以及既有隔离回归。团队应用 ACP 客户端对打 IDE,确认 elicitation 与 set_config_option 协商路径,而不是只看「能 chat」。

开发者实战落地与开箱指南

Docker Desktop 4.63+ 已预装插件,直接 docker agent;否则 brew install docker-agent 或从 Releases 取二进制并链到 ~/.docker/cli-plugins/docker-agent。设置 OPENAI_API_KEY / ANTHROPIC_API_KEY 等,或走 Docker Model Runner。YAML 里用 toolsets: [{type: mcp, ref: docker:...}] 挂工具;需要无本机 Docker 的沙箱时加上 --cloud。入门见 Set Up a Model 与文档首页 docker.github.io/docker-agent;协议细节对照 agentclientprotocol.com。