Vibe Ensemble:解决AI编码代理上下文漂移问题的团队协作框架

Vibe Ensemble是一个创新的AI编码团队协作框架,通过协调员与专门工作者的分工,有效解决大型语言模型在编程任务中的上下文漂移和注意力稀释问题,提高复杂项目的开发效率。

Vibe Ensemble - 您的个人开发团队

编码代理正在成为开发人员的日常工具。但它们存在固有的局限性,主要问题是上下文漂移和注意力稀释。

这个问题直接与上下文窗口相关——模型能够安全保持活跃的上下文量。一旦传入信息溢出上下文窗口,模型的行为就会像经历了不成功的脑部手术一样。每个使用LLM的人都深知这个问题,并试图找到解决方案或变通方法。例如,Claude Code会跟踪上下文大小并自动执行上下文压缩。不幸的是,压缩不是无损过程,重要的信息——特别是那些不常提及但必要的规则或指导——经常被冲刷掉。

让我们看看当编码代理处理一些较大任务时,额外的上下文来自哪里。

我们从高级上下文开始:规划、提供重要细节、规则、模式、要求等等。但随后编码代理开始逐个处理任务。每个任务包含大量低级细节,这些也会添加到上下文中。这导致上下文向次要细节漂移。这也导致注意力稀释:编码代理不再关注高级方面,而是专注于手头的实际任务,高级规则不再实际和重要。上下文压缩有一定帮助,但随着每个新任务的进行,上下文漂移和注意力稀释变得越来越明显。

Vibe Ensemble是我解决这个问题的尝试。它不是试图将所有内容都塞进上下文窗口,而是防止低级细节首先进入上下文窗口。这是通过实现"团队模式"来完成的:有一个协调员——面向用户的Claude Code实例,执行高级任务,如规划或协调。但它不处理单个任务。相反,它配置工作者——无头编码代理(也是Claude Code),处理单个任务。每个任务被分成多个阶段。系统为每个阶段维护专门的工作者。工作者只处理一个阶段,从新鲜上下文开始,并在阶段完成时退出。没有低级细节会泄漏到协调员上下文中。这使得可以使用单个协调员管理多个项目。

Vibe-Ensemble如何工作

整体概览

当您向Vibe-Ensemble描述项目时,幕后会发生以下情况:

  • 您描述项目 → 协调员将其分解为主要部分(史诗/故事)
  • 规划工作者创建详细工单 → 每个都有分步流水线
  • 工作者自动执行流水线 → 将工单从一个阶段移动到另一个阶段
  • 进度被跟踪和报告 → 每个步骤都有注释记录

可以将其想象成一条装配线,每个工作者都是专门人员,完成自己的部分后将工作传递给下一个专门人员。

工单系统

什么是工单?

工单代表需要完成的具体工作项。例如:

  • “创建用户登录页面”
  • “设置数据库模式”
  • “编写API文档”
  • “将应用程序部署到生产环境”

什么是流水线?

每个工单都有一个流水线——从开始到结束经历的一系列阶段:

1
2
工单:"用户登录页面"
流水线:规划 → 设计 → 实施 → 审查 → 测试 → 完成

每个阶段由具有特定专业知识的不同类型的工作者处理。

工作流程过程

步骤1:项目分解

当您描述项目时,协调员与规划工作者一起:

  • 将项目分解为主要组件(史诗)
  • 为每个组件创建具体的工作项(故事/工单)
  • 设计每个工单将遵循的流水线

示例:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
您的请求:"构建具有用户账户的待办事项应用"
协调员创建:
├── 史诗:用户认证
│   ├── 工单:"用户注册系统"
│   └── 工单:"登录/注销功能"
├── 史诗:待办事项管理
│   ├── 工单:"待办事项CRUD操作"
│   └── 工单:"待办事项列表UI"
└── 史诗:部署
    └── 工单:"生产环境部署设置"

步骤2:流水线设计

规划工作者根据复杂性为每个工单设计自定义流水线:

1
2
3
4
5
6
7
8
简单工单流水线:
规划 → 实施 → 审查 → 完成

复杂工单流水线:
规划 → 设计 → 实施 → 审查 → 测试 → 文档 → 完成

关键系统流水线:
规划 → 研究 → 设计 → 实施 → 安全审查 → 测试 → 部署 → 完成

步骤3:自动执行

一旦创建了工单和流水线,Vibe-Ensemble自动:

  • 为每个阶段生成正确的工作者(规划工作者、实施工作者等)
  • 在每个阶段完成时将工单移过流水线
  • 处理不同类型工作者之间的交接
  • 用详细注释跟踪所有进度

工作者如何协作

工作者类型和职责

规划工作者:

  • 分析需求并分解复杂任务
  • 创建详细的实施计划
  • 为每个工单设计流水线

实施工作者:

  • 编写实际代码
  • 遵循规划中的规范
  • 记录实施内容

审查工作者:

  • 检查代码质量和标准遵循情况
  • 识别需要修复的问题
  • 如果发现问题,可以将工单发送回实施阶段

测试工作者:

  • 创建并运行测试
  • 验证一切正常工作
  • 报告发现的任何错误

注释轨迹

每个工作者都在工单上留下详细注释,创建完整的历史记录:

1
2
3
4
5
6
7
8
9
工单:"用户登录页面"

[规划工作者]:"分析了需求。将使用React组件实现表单验证和JWT认证。估计4小时工作。"

[实施工作者]:"创建了LoginForm组件,包含电子邮件/密码字段。添加了电子邮件格式验证。与认证API集成。代码已准备好审查。"

[审查工作者]:"代码整体看起来不错。小建议:在登录期间添加加载状态。没有阻塞问题。批准测试。"

[测试工作者]:"所有测试通过。验证了使用有效凭据登录有效,对无效凭据显示错误,并能正常处理网络故障。准备好部署。"

依赖关系和协调

当工单相互需要时

有时一个工单必须等到另一个工单完成后才能开始:

1
2
3
工单A:"数据库模式设置" → 必须先完成
工单B:"用户API端点" → 等待工单A
工单C:"前端登录表单" → 等待工单B

Vibe-Ensemble自动:

  • 保留等待依赖项的工单
  • 当其依赖项完成时释放工单
  • 并行运行独立的工单以节省时间

质量门

当发现问题时,工作者可以将工单发送回流水线中的前一个阶段:

1
2
实施 → 审查 → ❌ 发现问题 → 返回实施
实施 → 审查 → ✅ 批准 → 测试

这确保了质量,同时允许迭代改进。

用户看到的内容

实时监控

您可以使用协调员命令跟踪进度:

  • /vibe-status - 查看整体项目健康状况和工单进度
  • /vibe-events - 处理任何问题或工作者的指导请求
  • /vibe-poll - 持续监控,直到所有工作完成

透明过程

您可以看到:

  • 哪些工单处于哪个阶段
  • 每个工作者完成了什么
  • 任何阻塞或需要注意的问题
  • 预计完成时间

最小干预要求

大多数时候,系统自动运行。您只需要:

  • 提供初始项目需求
  • 回答工作者的澄清问题
  • 在请求时批准重大决策
  • 监控进度并处理任何升级的问题

专业化的力量

每种工作者类型都针对其特定角色进行了优化:

  • 规划工作者擅长分解复杂需求
  • 实施工作者专注于高效编写优质代码
  • 审查工作者发现问题并维护标准
  • 测试工作者确保一切可靠工作

这种专业化意味着每个工作部分都得到专家关注,同时在整个项目中保持协调。

如何使用Vibe Ensemble

为方便起见,Vibe Ensemble使用简单的基于脚本的安装过程(对于Windows,您可以在网站上找到说明):

1
curl -fsSL https://vibeensemble.dev/install.sh | sh

确保~/.local/bin在PATH中,然后创建Vibe Ensemble工作目录并将工作目录更改为它:

1
mkdir vibe-ensemble && cd vibe-ensemble

现在让我们启动Vibe Ensemble

1
vibe-ensemble-mcp

现在我们需要设置协调员工作目录:

1
mkdir coordinator && cd coordinator

Claude Code和Vibe Ensemble之间的便捷集成需要几个配置文件。为简化此任务,有一个专门的命令用于生成所有这些文件。让我们使用它来配置协调员:

1
vibe-ensemble-mcp --configure-claude-code

现在我们可以启动Claude Code。

1
claude

要将Claude Code配置为协调员,请使用/vibe-ensemble斜杠命令。Claude会回应类似这样的内容:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
⏺ 我现在已初始化为您的vibe-ensemble协调员!我准备通过智能任务委派和实时监控帮助您管理项目。

在我们开始之前,我需要了解您的项目范围以提供正确的协调级别:

您正在处理什么类型的项目?
- 🔧 仅本地开发(简单脚本、个人工具、快速原型)
- 🚀 初创级别(最小DevOps、精益方法、快速迭代)
- 🏢 企业级(全面测试、监控、文档)
- 🎯 介于两者之间(请告诉我您的具体需求)

这是现有项目还是新项目?
- 如果现有:请提供项目路径,以便我了解结构
- 如果新:我将帮助您从头开始设置

一旦我了解您的范围,我将把您的请求分解为专注的工单,并协调专门的工作者处理所有技术实施。我将实时监控进度,确保一切顺利通过流水线。

您想处理什么?

从这一点开始,我们可以使用传统工作流程:只需输入提示或执行详细规划,然后开始执行——就像您以前做的那样。主要区别是协调员不自己执行任务(如果它尝试,请停止它并刷新其记忆:“您是协调员;委派任务”)。要监控过程并处理持续的问题,请使用以下两个斜杠命令:

1
2
3
/vibe-events
/vibe-status
/vibe-poll

/vibe-events处理系统中发生的事件。其中一些只是通知(如工单在阶段之间转换)。有些需要协调员关注。我希望最终能自动完成这一点,但目前事件处理需要手动干预。

/vibe-status生成关于每个项目进度和当前状态的全面报告。

/vibe-poll启用持续轮询事件和状态,直到所有活动项目完成。

一些链接: 网站:https://vibeensemble.dev/ 源代码:https://github.com/siy/vibe-ensemble-mcp/

编码愉快!

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计