← 返回博客

在 Zed 中为本地沙盒化后台代理使用容器

2025年7月30日

虽然大多数人尚未通过 AI 编码代理获得神级的 10 倍开发能力,但我们许多人正在试验并权衡利弊。在某些情况下,您希望代理直接处理您的本地文件,通常作为同步 AI“副驾驶”在前端工作。Zed 代理面板和内置工具为您提供了所需的一切。

其他时候,您希望代理在后台异步处理问题。您绝对不希望后台代理干扰您的前端工作,尤其是当您的所有代理都在同一个代码库(例如您的单体仓库)上工作时。除了让一组代理并行处理代码库的不同部分外,您可能还需要一个具备并行能力的模型,例如 Claude 4,以便从单个提示中生成三种不同的可能解决方案。理想情况下,您希望拥有一切。

但要让这些代理并行工作,通常意味着管理具有仓库克隆的不同目录,或者与 git stash 搏斗。您可能已经发现了 git worktree 的奇妙之处,它允许您拥有并行的 Git 历史记录,但您仍然在本地机器上运行不受信任的 AI 生成代码,而没有隔离的沙盒。容器似乎是实现隔离的正确技术,但是您应该如何将它们与 Git Worktrees 集成,以获得一个涵盖所有用例(并具有出色的开发体验)的完整解决方案呢?这可能超出了您的预期。

尽管如此,理想情况下,您希望拥有一切——Zed 前端代理体验和隔离的后台并行代理。事实证明,您可以通过 Zed + 容器使用 来实现这一切。

什么是容器使用?

An overview of Container Use
容器使用概述

容器使用是一个开源项目,具有简单的开发体验,通过编排为编码代理提供自己的容器化沙盒环境

  • 用于与您的系统隔离的容器、终端访问、服务隧道(由 Dagger 提供)
  • Git Worktrees 用于易于合并的并行 Git 历史记录

容器使用如何工作?

通过 为容器使用配置的 Zed(通过 MCP),当您启动代理任务时,将创建一个具有随机名称的新环境,其中包含用于隔离的 Dagger 容器(默认为带 gitcurl 等工具的 ubuntu但您可以自定义此项)以及由容器使用管理的 Git 工作树。您可以拥有任意数量的环境,并通过 container-use list 查看所有环境。

您还可以使用 container-use CLI 通过 container-use watchcontainer-use log <env name>container-use diff <env name> 等命令检查代理的进度。

由于 Dagger 容器原生支持临时服务和终端调试,因此通过提示请求连接到环境中运行的服务 URL 非常容易——您将获得从 localhost 到沙盒容器的隧道,此外,您还可以运行 container-use terminal <env name> 进入交互式终端会话,以便探索和运行命令。

如何以最佳方式在 Zed 中设置容器使用

容器使用文档 将帮助您启动并运行,无论是通过使用新的 Zed 容器使用扩展 还是 手动配置。除此之外,为了充分利用前端和后台代理,最重要的是设置 Zed 代理面板的 自定义配置文件

这些用户配置的配置文件超越了代理面板中内置的“写入”、“询问”和“最小”配置文件。我建议使用两个:foregroundcontainer-use(或者如果您喜欢,background)。

foreground 配置文件将所有内置 Zed 工具设置为活动状态。

Foreground profile
前台配置文件

container-use 配置文件没有激活任何内置工具,只激活容器使用工具。

Container Use profile
容器使用配置文件

这个系统的妙处在于,现在您的前台和后台代理不会发生冲突。您可以切换到 container-use 配置文件并启动一个后台并行代理实验(也许是请求三种新的 UI 设计),然后切换到 foreground 配置文件,并借助代理支持交互式编辑一些棘手的服务器逻辑。

即使您将视线从 Zed 移开,在网络浏览器中进行一些研究,当您的后台代理任务完成时,Zed 也会给您一个可爱的通知。

我还建议将 Zed 规则库 与您的自定义配置文件一起使用。这样您就可以自定义您的容器使用规则并将其包含在后台任务中。

Zed Rules Library
Zed 规则库

下一步是什么?

无论您是想在前端完全手动操作,还是在后台使用代理,或者介于两者之间,容器使用都可以融入您的 Zed 代理工作流程。要开始使用,请尝试 快速入门容器使用文档中的 Zed 设置。或者查看 视频演示

并请务必在 Dagger Discord 服务器 中的 #container-use 频道与我们分享您的成功经验和建议。很快再见!


正在寻找更好的编辑器吗?

您今天就可以在 macOS、Windows 或 Linux 上试用 Zed。立即下载


我们正在招聘!

如果您对我们博客中涵盖的主题充满热情,请考虑加入我们的团队,帮助我们实现软件开发的未来。