跳到主要内容

Workspace 架构

你正在调试一个后端 API。与此同时,前端同事希望你看一下一个 CSS 问题。还有一个基础设施告警要处理。

在大多数 AI 工具里,你要么把所有事都挤进一个混乱的对话,要么反复开新对话再丢失上下文。在 Helix 里,你只需要打开三个 Workspace,每个完全独立、零干扰。

Workspace 是 Helix 中最基础的执行边界。


为什么 Workspace 隔离很重要

工程师从来不会一次只做一件事。没有隔离,下面这些问题就会反复出现:

  • 在同一个对话中讨论两个项目——AI 给出的代码建议指向了错误的仓库
  • 工具配置冲突——前后端项目需要不同的 shell 环境与 LSP 配置
  • 模型选择混乱——DeepSeek 在代码生成上更有性价比,Claude 在架构评审上更准确,但切换很麻烦
  • 上下文交叉污染——后端调试的日志输出干扰了前端代码分析

Workspace 从根本上解决了这些问题:每个 Workspace 都是一个完全独立的执行沙箱。


每个 Workspace 独立持有的内容

隔离维度描述
会话历史每个 Workspace 独立维护自己的对话与消息历史
上下文状态Cache 与 Compact 策略按 Workspace 独立运行
工具配置Shell、文件系统、LSP 等内置 MCP server 按 Workspace 实例化
模型与 Profile每个 Workspace 可选择不同的默认模型与系统提示词
MCP Servers用户自定义的 MCP server 按 Workspace 绑定
SubAgent 任务SubAgent 在所属 Workspace 的边界内运行

也就是说:切换 Workspace 就像切换到完全不同的工位——干净、迅速、零上下文残留。


本地与远程 Workspace

Workspace 不仅限于本地目录。Helix 支持两种目标类型:

本地 Workspace

指向你机器上的一个项目目录。内置 MCP server(Shell、文件系统、LSP)直接操作本地文件与终端。

这是最常见的用法——打开你的代码仓库,开始工作。

远程 Workspace

通过 SSH 连接到远程服务器,命令与文件操作在远程机器上执行,而 UI 交互与会话管理保留在本地。

适用场景:

  • 在服务器上调试生产环境
  • 在 GPU 机器上监控模型训练
  • 在远程代码库上工作,无需本地环境依赖

你可以在 Helix UI 中同时打开一个本地 Workspace 与一个远程 Workspace,用完全相同的交互模型操作两个截然不同的环境。


Workspace 生命周期

每个 Workspace 都有清晰的生命周期:

创建 / 连接


惰性加载 Session Manager
│ (首次使用时初始化,避免启动开销)


活跃使用
│ ├─ 多个会话并行
│ ├─ 工具调用与 SubAgent 执行
│ └─ Cache / Compact 持续维护上下文

├─ 用户手动断开
│ ▼
│ 保存状态,释放资源

└─ 长时间无活动

空闲超时(默认 30 分钟)→ 自动关闭
下次连接时重新加载

关键设计选择:

  • 惰性加载 —— Workspace 创建时不会初始化所有资源;Session Manager 与 MCP server 在首次使用时才加载
  • 空闲超时 —— 默认 30 分钟无活动自动关闭,释放内存与连接资源
  • 状态持久化 —— 断开后重新连接,会话历史与上下文完整恢复

Worktree 绑定:保护主分支

当 AI Agent 需要修改代码时,直接在 main 分支上操作是有风险的。Helix 提供了 Git Worktree 绑定机制:

  • 写操作自动在隔离的 git worktree 分支上执行
  • 主分支保持干净,不受 Agent 改动影响
  • Agent 完成后,你可以审查分支变更,再决定是否合并

当多个 Agent 并行修改同一个仓库时,这一点尤为重要——每个 Agent 在自己的分支上工作,避免冲突。


Agent Profile:预设工作模板

不同任务类型需要不同的 Agent 配置。Helix 通过 Agent Profile(YAML 格式)让你为 Workspace 预设工作模板:

# 示例:代码审查专家 profile
name: code-reviewer
model: claude-sonnet-4
system_prompt: |
You are a meticulous code reviewer focused on security,
performance, and maintainability. Always explain the
reasoning behind your suggestions.
thinking_enabled: true
mcp_servers:
- serena-lsp
- shell
- filesys

你可以为不同的 Workspace 选择不同的 Profile——一个用于代码生成,一个用于代码审查,再来一个用于文档编写。


实际使用模式

模式 1:多项目并行工作

最常见的模式。每个项目对应一个 Workspace,互不干扰。

Workspace A: frontend-app
└─ 模型:Claude Sonnet · Profile:前端开发
└─ 会话:"实现新的用户设置页"

Workspace B: backend-api
└─ 模型:DeepSeek · Profile:后端开发
└─ 会话:"优化数据库查询性能"

Workspace C: infra-config
└─ 模型:GPT-4o · Profile:运维分析
└─ 会话:"分析部署日志中的异常"

模式 2:本地 + 远程 同时工作

当你需要同时操作本地代码与远程服务器时:

Workspace A: 本地代码仓库
└─ 修改代码、运行测试

Workspace B: 远程生产服务器(SSH)
└─ 分析日志、检查配置、验证部署

模式 3:不同的安全域

在企业场景下,不同项目可能有不同的安全要求:

Workspace A: 内部核心服务(自托管模型 + 严格的 MCP 权限)
Workspace B: 开源贡献项目(云端模型 + 完整工具集)

与其他能力的关系

能力与 Workspace 的关系
多 AgentSubAgent 在父 Workspace 内运行,从不跨越 Workspace 边界
上下文管理Cache 与 Compact 按 Workspace 隔离,不会交叉干扰
多模型每个 Workspace 可独立选择模型与 Profile
MCP 工具内置 MCP server 按 Workspace 实例化,用户 MCP 按 Workspace 绑定

相关文档