当前位置:首页 > 文章列表 > 科技周边 > 业界新闻 > VS Code Agent Host 为持久智能体会话提供了什么

VS Code Agent Host 为持久智能体会话提供了什么

来源:17golang原创 2026-10-09 13:42:14 0浏览 收藏

VS Code Agent Host 的核心价值,是把智能体会话从某一个编辑器窗口的生命周期里拿出来,交给独立进程持有。这样,同一会话可以在编辑器窗口、Agents 窗口和浏览器客户端之间继续查看与控制,也可以把执行位置放到靠近工作区的远程机器上。

官方介绍:https://code.visualstudio.com/blogs/2026/08/26/agent-host-architecture

架构文档:https://code.visualstudio.com/docs/agents/concepts/agent-host

Agent Host 解决的不是“换一个更聪明的模型”,而是长时间智能体任务的会话归属、状态同步和执行位置问题。AHP 统一客户端看到的会话状态,但不会统一不同 agent harness 的推理方式、上下文策略和工具实现。

旧边界的问题:会话跟着编辑器窗口走

一个常见场景是:开发者在项目窗口里启动较长的重构任务,随后关闭该项目、切去另一个工作区,或想在独立的 Agents 窗口继续观察。过去,本地 agent harness 运行在每个编辑器窗口的 extension host 中,窗口关闭会让相应运行时失去依托,而且多个窗口会各自加载一套智能体基础设施。

这对短对话影响不大,但对持续数十分钟、需要多次审批和审查改动的任务很不自然。会话数据、运行循环和界面展示被绑在同一个进程边界里,导致“关掉展示界面”和“停止实际任务”很难分开。

新的所有权:Agent Host 持有会话

Agent Host 是专门运行智能体会话的进程。它可以作为本地 VS Code utility process 运行,也可以作为远程机器上的独立服务器运行。编辑器窗口、Agents 窗口和浏览器不再各自拥有一份会话,而是作为客户端连接同一个 Host。

这个调整带来五个直接变化:

  • 会话与窗口解耦:关闭启动会话的文件夹或窗口后,会话不必随之消失;
  • 多客户端共享:多个 VS Code 窗口可以观察和控制同一会话,而不是复制一份;
  • 执行靠近工作区:Host 可以在本机、远程主机或 Dev Container 中运行,文件修改和命令发生在 Host 所在环境;
  • 独立进程资源边界:智能体不会因为 extension host 忙于其他扩展而处在同一条关键路径上;
  • 多 harness 基础:Copilot、Claude、Codex 等运行时可保留各自能力,再通过适配器映射到共同会话模型。
编辑器窗口、Agents窗口和浏览器客户端共同连接专用Agent Host及工作区的架构关系图
图1:客户端负责展示与控制,Agent Host 持有会话并连接工作区和 harness 适配器;这是一张原创架构说明图,不是 VS Code 截图。

这里的“持久”需要准确理解。官方说明中,本地会话关闭文件夹后仍可继续,但本地 Host 由 VS Code 管理,因此本地任务要继续运行,VS Code 本身仍需保持运行。远程 Host 则可以在远程开发机上保持活动,客户端断开后,运行中的会话仍由远端 Host 持有。

AHP 如何让多个客户端看到同一状态

Agent Host Protocol(AHP)是 Host 与客户端之间的开放、agent-agnostic 协议。它把 Host 设为权威状态源,客户端订阅 URI 可寻址的资源通道,例如 sessions、chats、terminals 和 changesets。

客户端连接时先获得当前状态快照,随后接收有顺序的状态动作;断线重连后,可以补收遗漏动作,或重新取得快照。这样,编辑器窗口、Agents 窗口和浏览器客户端可以收敛到同一会话视图,不需要各自理解 Copilot SDK、Claude Agent SDK 或其他 harness 的内部事件格式。

AHP以Host权威状态、URI资源通道、状态快照和顺序动作同步多个客户端的关系图
图2:AHP 以 Host 为权威状态源,通过资源通道分发快照与顺序动作,让多个客户端保持一致;这是一张原创状态关系说明图。

当前文档还给出了通信边界:本地 VS Code 与 Host 使用 message port,远程连接使用基于 WebSocket 的 AHP JSON-RPC。协议强调同步后的会话状态,而不是把某个厂商 SDK 的原始事件直接暴露给所有客户端。

本地、远程和浏览器各自扮演什么角色

位置主要职责需要注意
本地 Agent Host在本机工作区运行会话与基础工具本地 Host 由 VS Code 管理,VS Code 退出后不能假设任务继续
远程 Agent Host在 SSH、Tunnel、WSL 或远程开发环境附近执行文件、命令和依赖以远程 Host 环境为准
Dev Container 中的 Host在项目容器内部访问依赖和工作区官方仍将部分容器支持标为实验性能力
编辑器与 Agents 窗口展示、控制、审批、审查改动它们是客户端,不是权威会话状态源
浏览器 Agents 窗口通过 dev tunnel 连接开发机上的 Host浏览器不承载实际工作区执行

独立 Host 还可以通过 code agent host 启动;默认监听本机并使用连接令牌保护,使用 --tunnel 时可通过开发隧道暴露。真正部署前仍应按官方文档确认连接方式、令牌管理和网络边界,不应把“能远程连接”理解成默认对公网开放。

多 harness 统一的是会话体验,不是智能体大脑

Agent Host 内部通过 adapter 连接不同 agent harness。适配器把各自的 sessions、tools、permissions、subagents 等能力映射到 AHP 的共同会话模型,但 harness 仍保留自己的 SDK、agent loop、上下文管理、命令和 provider 特性。

这一区分很重要:AHP 不是用来替代 MCP,也不是新的模型调用协议。MCP 关注模型如何接入外部工具和数据;AHP 关注多个客户端如何围绕同一长时间会话共享状态、发送动作和恢复连接。两者可以同时存在于一套智能体开发环境中。

客户端还能贡献自己的工具,Host 会把工具定义加入活动会话,并把调用路由回提供该工具的客户端。但这也意味着:依赖浏览器能力或某个扩展提供的工具时,相关客户端和扩展仍需要在线;不能因为会话在 Host 中持久存在,就假设所有客户端工具也永久可用。

采用前先看清这些边界

  • 仍在持续演进:VS Code 官方明确标注 Agent Host 与 AHP 正在积极开发,能力和设置会继续变化;
  • 改动审查方式不同:Agent Host 会话可直接把编辑写入会话文件夹或 worktree,完成后应审查 diff,再决定提交、合并或丢弃;
  • 旧会话不会自动迁移:仍在 extension host 中运行的既有会话会继续留在那里,两种运行方式可能同时存在;
  • 自定义配置位置有差异:Host 更倾向读取 harness-agnostic 的配置目录,不能假设所有只存于 VS Code profile 的旧配置都会被运行时读取;
  • 远程执行改变信任边界:Host 靠近代码和依赖运行,远程主机的权限、凭据、网络和日志都应纳入审查。

哪些团队最能感受到收益

如果任务只是几秒钟的补全或一次性问答,Agent Host 的架构优势不一定明显。真正受益的是长时间重构、多分支并行、远程构建、需要多次人工审批,以及希望在桌面与浏览器之间接力管理会话的团队。

评估时可以观察三个指标:关闭项目窗口后任务是否能按预期延续;多个客户端看到的状态和审批是否一致;远程 Host 的文件、命令与变更审查是否落在正确环境。三个条件都满足,才说明会话所有权、同步链路和执行位置真正分离成功。

从更大的开发工具趋势看,Agent Host 把“智能体聊天”推进成了可被多个界面共同管理的持续会话。它提供的是运行和协作底座,而不是替开发者消除权限、审查与环境治理;越是长时间、跨设备的任务,越需要把这些边界设计清楚。

版本声明
本文转载于:17golang原创 如有侵犯,请联系study_golang@163.com删除
maps.Keys 与 slices.Sorted 怎样输出稳定键顺序maps.Keys 与 slices.Sorted 怎样输出稳定键顺序
上一篇
maps.Keys 与 slices.Sorted 怎样输出稳定键顺序
maps.DeleteFunc 遍历删除是否安全
下一篇
maps.DeleteFunc 遍历删除是否安全
查看更多
最新文章
查看更多
课程推荐
  • 前端进阶之JavaScript设计模式
    前端进阶之JavaScript设计模式
    设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
    543次学习
  • GO语言核心编程课程
    GO语言核心编程课程
    本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
    516次学习
  • 简单聊聊mysql8与网络通信
    简单聊聊mysql8与网络通信
    如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
    500次学习
  • JavaScript正则表达式基础与实战
    JavaScript正则表达式基础与实战
    在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
    487次学习
  • 从零制作响应式网站—Grid布局
    从零制作响应式网站—Grid布局
    本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
    485次学习
查看更多
AI推荐
  • PubMedQA数据集详解:生物医学问答基准、功能与应用指南
    PubMedQA
    深入了解PubMedQA生物医学问答数据集,涵盖其核心功能、使用方法及在临床决策、药物研发等场景的应用,助力提升NLP模型性能。
    388次使用
  • H2O EvalGPT:开源LLM大模型评估与排行榜工具
    H2O EvalGPT
    H2O EvalGPT是H2O.ai推出的开源LLM评估平台,提供详细的大模型性能排行榜、行业特定基准测试及A/B测试功能,助您快速选择最适合项目的高性能大语言模型。
    469次使用
  • LMArena是什么?伯克利AI模型评估平台使用指南与功能解析
    LMArena
    LMArena是加州大学伯克利分校推出的AI模型匿名评测平台。通过盲测投票机制,用户可对比不同大模型回答并生成实时排行榜,助力开发者优化模型及用户选择最佳AI工具。
    476次使用
  • 斯坦福HELM:大语言模型Holistic Evaluation整体评估框架详解
    HELM
    深入了解斯坦福推出的HELM(Holistic Evaluation of Language Models)大模型评测体系。本文解析其核心功能、安装配置步骤及应用场景,涵盖准确性、公平性、鲁棒性等多维度指标,助力开发者全面优化语言模型性能。
    420次使用
  • MMBench详解:多模态大模型基准测试、功能特点与使用指南
    MMBench
    MMBench是由上海人工智能实验室等机构联合推出的多模态基准测试平台,提供细粒度能力评估、大规模数据集及VLMEvalKit工具。本文详细介绍其核心功能、安装使用方法及应用场景,助力开发者全面评估多模态模型性能。
    244次使用
微信登录更方便
  • 密码登录
  • 注册账号
登录即同意 用户协议 和 隐私政策
返回登录
  • 重置密码