在Windows上跑一个编码代理,它的shell命令通常带着你的完整用户权限执行:你的SSH密钥、浏览器配置、整个主目录,全在它的可及范围内。微软现在把操作系统级的边界套到了代理身上,而且相当一部分能力先落在开发者这一侧。
微软执行容器(Microsoft Execution Containers,MXC)是一套开源SDK,提供Rust、.NET、Node三种语言版本,让代理工作负载跑在你定义的策略里——文件、网络、界面以及进程本身。微软宣布它于2026年10月7日正式可用。
MXC的核心主张只有一句:代理不能成为自己的安全权威。策略活在代理之外,模型和它写出的代码都无法给自己追加权限。
微软自己举的例子很能说明问题。一个编码代理被要求更新网站,它需要仓库的读写权限和构建工具,可能需要读生产服务器配置来理解部署方式,但它永远不该改动那份配置。没有边界时,代理可能判断“直接改配置”是完成任务最快的路径——从模型的角度看这很合理,从你的角度看就是一次线上故障。
五种策略区域,四种后端
MXC是一个编译进你的应用或代理框架的库。你描述容器和规则,MXC挑选后端并把工作负载装进去,覆盖Windows、Linux和macOS。仓库采用MIT许可,SDK分别发布在crates.io、NuGet和npm上。
Windows上的主要后端选项:
- 进程容器:默认选项,也是快的那一个,在Windows上基于AppContainer,适合编码代理和模型生成的脚本这类需要保持内循环速度的场景。
- 会话容器(SDK中为isolation_session):在独立的Windows账户和会话下运行代理,拥有自己的桌面、剪贴板、界面和输入,仅限Windows。适合长时运行的代理和界面自动化,也是能给你一个可审计独立身份的后端。
- WSL容器(wslc):面向需要Linux软件包的Linux优先工具链。
- MicroVM:为运行不可信代码等高风险工作提供硬件级隔离,标记为实验性,仓库中的Windows Sandbox和Hyperlight后端同样如此。
有最低Windows版本要求。按仓库的版本表,进程容器需要Windows 11 24H2/25H2 build 26100.9278/26200.9278(2026年8月更新)或更高;会话容器需要26100.9550/26200.9550(2026年9月更新);在26H2上两者都需要26300.9550。CI运行器或测试虚拟机更新滞后的,先查这一条。
策略可以边跑边学
没人能在运行前知道代理会碰哪些路径,所以MXC给了三种模式:
- 强制执行:拦截一切未授权项,用于生产。
- 学习:照样拦截,但把每次拒绝记录进JSON活动报告。
- 宽松:全部放行,同时记录本应被拦截的动作。
活动报告只在Windows的进程容器下有效。微软给出的建议是:先跑学习模式,读拒绝记录,只授予工作负载真正需要的权限。
两个坑要留意。仓库README警告,测试执行器wxc-exec.exe上的--audit标志会在该次运行中“关闭所有沙箱安全”,绝不能用它跑不可信代码。README也直说:在沙箱里跑,应用会撞上访问问题,直到你花时间把容器规则调顺——做好来回调几轮的准备。
微软还要求代理开发者预设组织策略比自己的更严。资源被拦时,代理应当解释并申请正确权限,而不是静默失败。这个体验要求现在就该写进产品里。
Copilot已经在用了
GitHub Copilot在Windows上使用ProcessContainer后端的BaseContainer层级。开启沙箱后,shell命令、本地MCP服务器和语言服务器默认在进程边界内运行。在Copilot CLI里输入/sandbox可以查看或修改设置;在Copilot应用里点齿轮图标进设置,选项目并打开“Sandbox new sessions”。默认工作目录可读写,系统其余部分大多只读或被拦截。
两个影响威胁建模的细节:Copilot内置的文件工具跑在Copilot自身内部,由代理框架对照策略检查,而非操作系统进程隔离;远程MCP服务器则在本地沙箱之外。
微软列出的已支持MXC的产品还包括OpenClaw、OpenAI Codex、Replit、LM Studio和Unsloth AI。Claude Code、Manus、Perplexity、Raycast等标注为“将发布支持”,未给时间。
代理工作区是另一回事
这两件事很容易混。代理工作区来自“实验性代理功能”设置,供Copilot Actions使用。它默认关闭,只有管理员能开启,开启后对设备上所有用户生效;它会创建独立的代理账户和带自己桌面的代理工作区,与用户会话分开。代理可申请访问六个已知文件夹:文档、下载、桌面、音乐、图片和视频;代理账户也能访问所有已认证用户可访问的文件夹,比如公共用户配置。在26100.7344及之后的预览版本中,可在“设置 > 系统 > AI组件 > 代理”下按代理设置文件访问,选项为始终允许、每次询问、永不允许。
MCP服务器这边,Windows加入了设备端代理注册表(ODR)。通过ODR注册的打包服务器在独立代理账户下的独立代理会话中运行,默认碰不到你的文件、设置、凭据和窗口。要受容器约束,服务器必须是带包标识(MSIX)和有效清单的.exe二进制,.mcpb打包格式目前无法受容器运行。受容器约束的服务器仍可访问互联网——这里限制的是本地访问,不是网络。文件权限按宿主应用授予而非按服务器,一个宿主用到的某个服务器拿到文件访问权,该宿主用到的所有服务器都会拿到。这些全部标记为预发布。
还缺的那块
按微软的说法,面向MXC进程容器的Intune策略“即将”提供,用于区分代理活动与用户活动的Entra支持“即将推出”,面向设备端代理的Agent 365管控同样在路上。今天跨机群跑代理,你能把它们关进容器,但集中治理还没完全到位。现阶段适合先做试点,而不是全面铺开。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.