Vibe Ensemble - 您的个人开发团队
编码代理正在成为开发人员的日常工具。但它们存在固有的局限性,主要问题是上下文漂移和注意力稀释。
这个问题直接与上下文窗口相关——模型能够安全保持活跃的上下文量。一旦传入信息溢出上下文窗口,模型的行为就会像经历了不成功的脑部手术一样。每个使用LLM的人都深知这个问题,并试图找到解决方案或变通方法。例如,Claude Code会跟踪上下文大小并自动执行上下文压缩。不幸的是,压缩不是无损过程,重要的信息——特别是那些不常提及但必要的规则或指导——经常被冲刷掉。
让我们看看当编码代理处理一些较大任务时,额外的上下文来自哪里。
我们从高级上下文开始:规划、提供重要细节、规则、模式、要求等等。但随后编码代理开始逐个处理任务。每个任务包含大量低级细节,这些也会添加到上下文中。这导致上下文向次要细节漂移。这也导致注意力稀释:编码代理不再关注高级方面,而是专注于手头的实际任务,高级规则不再实际和重要。上下文压缩有一定帮助,但随着每个新任务的进行,上下文漂移和注意力稀释变得越来越明显。
Vibe Ensemble是我解决这个问题的尝试。它不是试图将所有内容都塞进上下文窗口,而是防止低级细节首先进入上下文窗口。这是通过实现"团队模式"来完成的:有一个协调员——面向用户的Claude Code实例,执行高级任务,如规划或协调。但它不处理单个任务。相反,它配置工作者——无头编码代理(也是Claude Code),处理单个任务。每个任务被分成多个阶段。系统为每个阶段维护专门的工作者。工作者只处理一个阶段,从新鲜上下文开始,并在阶段完成时退出。没有低级细节会泄漏到协调员上下文中。这使得可以使用单个协调员管理多个项目。
Vibe-Ensemble如何工作
整体概览
当您向Vibe-Ensemble描述项目时,幕后会发生以下情况:
- 您描述项目 → 协调员将其分解为主要部分(史诗/故事)
- 规划工作者创建详细工单 → 每个都有分步流水线
- 工作者自动执行流水线 → 将工单从一个阶段移动到另一个阶段
- 进度被跟踪和报告 → 每个步骤都有注释记录
可以将其想象成一条装配线,每个工作者都是专门人员,完成自己的部分后将工作传递给下一个专门人员。
工单系统
什么是工单?
工单代表需要完成的具体工作项。例如:
- “创建用户登录页面”
- “设置数据库模式”
- “编写API文档”
- “将应用程序部署到生产环境”
什么是流水线?
每个工单都有一个流水线——从开始到结束经历的一系列阶段:
|
|
每个阶段由具有特定专业知识的不同类型的工作者处理。
工作流程过程
步骤1:项目分解
当您描述项目时,协调员与规划工作者一起:
- 将项目分解为主要组件(史诗)
- 为每个组件创建具体的工作项(故事/工单)
- 设计每个工单将遵循的流水线
示例:
|
|
步骤2:流水线设计
规划工作者根据复杂性为每个工单设计自定义流水线:
|
|
步骤3:自动执行
一旦创建了工单和流水线,Vibe-Ensemble自动:
- 为每个阶段生成正确的工作者(规划工作者、实施工作者等)
- 在每个阶段完成时将工单移过流水线
- 处理不同类型工作者之间的交接
- 用详细注释跟踪所有进度
工作者如何协作
工作者类型和职责
规划工作者:
- 分析需求并分解复杂任务
- 创建详细的实施计划
- 为每个工单设计流水线
实施工作者:
- 编写实际代码
- 遵循规划中的规范
- 记录实施内容
审查工作者:
- 检查代码质量和标准遵循情况
- 识别需要修复的问题
- 如果发现问题,可以将工单发送回实施阶段
测试工作者:
- 创建并运行测试
- 验证一切正常工作
- 报告发现的任何错误
注释轨迹
每个工作者都在工单上留下详细注释,创建完整的历史记录:
|
|
依赖关系和协调
当工单相互需要时
有时一个工单必须等到另一个工单完成后才能开始:
|
|
Vibe-Ensemble自动:
- 保留等待依赖项的工单
- 当其依赖项完成时释放工单
- 并行运行独立的工单以节省时间
质量门
当发现问题时,工作者可以将工单发送回流水线中的前一个阶段:
|
|
这确保了质量,同时允许迭代改进。
用户看到的内容
实时监控
您可以使用协调员命令跟踪进度:
/vibe-status- 查看整体项目健康状况和工单进度/vibe-events- 处理任何问题或工作者的指导请求/vibe-poll- 持续监控,直到所有工作完成
透明过程
您可以看到:
- 哪些工单处于哪个阶段
- 每个工作者完成了什么
- 任何阻塞或需要注意的问题
- 预计完成时间
最小干预要求
大多数时候,系统自动运行。您只需要:
- 提供初始项目需求
- 回答工作者的澄清问题
- 在请求时批准重大决策
- 监控进度并处理任何升级的问题
专业化的力量
每种工作者类型都针对其特定角色进行了优化:
- 规划工作者擅长分解复杂需求
- 实施工作者专注于高效编写优质代码
- 审查工作者发现问题并维护标准
- 测试工作者确保一切可靠工作
这种专业化意味着每个工作部分都得到专家关注,同时在整个项目中保持协调。
如何使用Vibe Ensemble
为方便起见,Vibe Ensemble使用简单的基于脚本的安装过程(对于Windows,您可以在网站上找到说明):
|
|
确保~/.local/bin在PATH中,然后创建Vibe Ensemble工作目录并将工作目录更改为它:
|
|
现在让我们启动Vibe Ensemble
|
|
现在我们需要设置协调员工作目录:
|
|
Claude Code和Vibe Ensemble之间的便捷集成需要几个配置文件。为简化此任务,有一个专门的命令用于生成所有这些文件。让我们使用它来配置协调员:
|
|
现在我们可以启动Claude Code。
|
|
要将Claude Code配置为协调员,请使用/vibe-ensemble斜杠命令。Claude会回应类似这样的内容:
|
|
从这一点开始,我们可以使用传统工作流程:只需输入提示或执行详细规划,然后开始执行——就像您以前做的那样。主要区别是协调员不自己执行任务(如果它尝试,请停止它并刷新其记忆:“您是协调员;委派任务”)。要监控过程并处理持续的问题,请使用以下两个斜杠命令:
|
|
/vibe-events处理系统中发生的事件。其中一些只是通知(如工单在阶段之间转换)。有些需要协调员关注。我希望最终能自动完成这一点,但目前事件处理需要手动干预。
/vibe-status生成关于每个项目进度和当前状态的全面报告。
/vibe-poll启用持续轮询事件和状态,直到所有活动项目完成。
一些链接: 网站:https://vibeensemble.dev/ 源代码:https://github.com/siy/vibe-ensemble-mcp/