Skip to content

工作方向与隔离

一个工作空间对应一个项目。在这个项目里,你可以开出多条并行推进、互不干扰的工作方向;每条方向可以绑定项目之外的源码上下文,让 agent 直接读到依赖代码而不必猜。

工作方向

方向是工作空间内的并行工作线。每个工作空间天生带一条 主线,对应项目本身。你可以再开新的方向,让不同任务同时推进而不互相踩踏。

每条方向由自己的编排器负责,拥有独立的台账与成员。

自动隔离

在 git 项目里,一条被命名的方向会自动获得独立的工作副本与分支(git worktree):它的文件改动、提交都与主线和其他方向隔开,谁也不会覆盖谁。这一步对你透明——你看到的是「方向」,不必直接接触分支与 worktree。

  • 主线始终与项目共用同一目录,不做隔离。
  • 新方向在命名后进入「隔离中」,就绪后即为独立副本。
  • 非 git 项目无法隔离,多条方向会共用同一目录(此时界面会给出提示,提醒可能互相覆盖)。

方向卡片会实时显示它的 git 状态:是否有未提交改动、当前分支、相对主线领先/落后多少个提交(纯本地比较,不联网拉取)。

合并回主线

一条独立方向完成后,可以合并回主线。合并会先保全它尚未提交的改动;若出现冲突,swarmx 会派一个 AI 协调者去解决,而不是把冲突丢给你。合并后可清理该方向。

你也可以把一条已有分支作为方向打开,直接在那条分支上工作,而不是新建。

源码上下文

很多任务需要参考项目之外的代码——被依赖的库源码、对等的兄弟项目、某个工具项目。创建工作空间时(或之后),你可以把这些目录作为源码上下文根挂载进来,并标注它们的角色:

  • 主项目——agent 的终端在此工作。
  • 依赖源码——被主项目依赖的库/服务源码。
  • 工具项目——配套的工具或脚本项目。

依赖与工具可以挂到某个父项目之下,形成一棵逻辑依赖树。

挂载后,swarmx 会在工作空间的 CLAUDE.md / AGENTS.md 中写入一段受管理的上下文说明,把这些根的位置与角色告诉编排器——于是它直接去读挂载的源码,而不是凭空猜测接口。这段说明是幂等的:重复挂载只会原地更新,你自己写在标记之外的内容不受影响;移除最后一个根时,这段说明会被清除。隔离方向的独立副本里也会带上同样的上下文说明。

在界面中,方向与源码上下文都在工作空间侧栏管理,详见创建工作空间界面总览

基于 MIT 许可发布