章节 01
导读 / 主楼:Fireside:本地多Agent协作工作空间
Fireside是一个开源的多Agent协作平台,支持Claude、Codex和Gemini CLI在同一个聊天室中协同工作。它提供任务协调、权限管理、运行遥测和上下文共享等功能,让多个AI Agent能够在本地环境中高效协作。
正文
Fireside是一个开源的多Agent协作平台,支持Claude、Codex和Gemini CLI在同一个聊天室中协同工作。它提供任务协调、权限管理、运行遥测和上下文共享等功能,让多个AI Agent能够在本地环境中高效协作。
章节 01
Fireside是一个开源的多Agent协作平台,支持Claude、Codex和Gemini CLI在同一个聊天室中协同工作。它提供任务协调、权限管理、运行遥测和上下文共享等功能,让多个AI Agent能够在本地环境中高效协作。
章节 02
\n@codex 帮我重构这个函数\n@claude 解释一下这段代码的逻辑\n@gemini 生成单元测试\n\n\nAgent的回复会实时显示在聊天室中,所有参与者都能看到对话历史,形成真正的协作氛围。\n\n### 任务与运行管理\n\nFireside引入了"任务轨道"的概念,用于管理正在进行的Agent工作。当用户请求Agent执行任务时,该任务会出现在"活跃工作轨道"中,显示执行状态和进度。这种可视化的任务管理让用户能够同时跟踪多个Agent的工作,避免任务混乱。\n\n### 权限控制与YOLO模式\n\n安全是多Agent协作的重要考量。Fireside提供了细粒度的权限控制,用户可以:\n\n- 为每个Agent配置独立的权限级别\n- 启用"YOLO模式"让特定Agent自主执行多轮任务\n- 通过权限提示(Permission Prompts)审查敏感操作\n\nYOLO模式是Fireside的一个特色功能。当启用后,Agent可以在不需要人工确认的情况下自主执行多步骤任务,大大提高工作效率。当然,这种模式应该只在可信的环境中使用。\n\n### 运行遥测与审计\n\nFireside会记录每个Agent的运行遥测数据,包括执行时间、资源消耗、操作日志等。这些数据不仅有助于性能优化,也为安全审计提供了依据。用户可以回顾Agent的历史操作,了解系统状态。\n\n### 上下文共享与Artifacts\n\n为了让Agent更好地协作,Fireside支持上下文共享功能:\n\n- Saved Briefings:保存和复用常用的任务简报\n- Context Artifacts:在Agent之间共享文件、代码片段等上下文\n- Task/Checklist Coordination:任务清单协调,确保多Agent工作不冲突\n\n这些功能让Agent能够基于共享的上下文进行协作,而不是孤立地工作。\n\n## 技术架构\n\nFireside采用前后端分离的架构:\n\n### 后端(Node.js/TypeScript)\n\n后端负责核心业务逻辑,包括:\n\n- WebSocket服务器:实现实时通信\n- Agent管理:与Claude、Codex、Gemini CLI的集成\n- 任务调度:协调多Agent任务执行\n- 数据持久化:SQLite数据库存储\n\n后端通过shell命令调用本地安装的Provider CLI,这意味着用户需要先在本地安装并认证这些CLI工具。\n\n### 前端(Angular)\n\n前端提供用户界面,包括:\n\n- 聊天室界面\n- 任务管理面板\n- Agent配置界面\n- 文件选择器\n\n前端使用WebSocket与后端实时通信,确保消息和状态更新的即时性。\n\n### 原生文件选择器\n\nFireside实现了跨平台的原生文件选择器:\n\n- Windows:使用PowerShell的FolderBrowserDialog/OpenFileDialog\n- macOS:使用osascript的choose folder/choose file\n- Linux:使用zenity(优先)或kdialog作为备选\n\n这种设计让用户能够以熟悉的方式选择文件和文件夹,而不必手动输入路径。\n\n## 安装与配置\n\n### 系统要求\n\n- Node.js 20.10或更高版本\n- npm\n- Git\n- Claude Code CLI(已安装并认证)\n- Codex CLI(已安装并认证)\n- Gemini CLI(已安装并认证)\n\n### 安装步骤\n\nbash\ngit clone https://github.com/mattnb/fireside.git\ncd fireside\nnpm install\n\n# 复制环境配置\ncp .env.example .env\n\n# 验证CLI可用性\nnpm run verify:clis\n\n# 构建并启动\nnpm run build\nnpm start\n\n\n启动后,打开浏览器访问http://127.0.0.1:8787即可使用。\n\n### 环境配置\n\nFireside通过.env文件进行配置,主要选项包括:\n\n| 变量 | 默认值 | 说明 |\n|-----|-------|-----|\n| FIRESIDE_HOST | 127.0.0.1 | HTTP/WebSocket绑定主机 |\n| FIRESIDE_PORT | 8787 | HTTP/WebSocket端口 |\n| FIRESIDE_DATA_DIR | ./data | 数据目录(SQLite、日志等) |\n| FIRESIDE_MAX_PROMPT_CHARS | 16000 | 生成Agent提示的最大字符数 |\n| FIRESIDE_RESUME_CLI_SESSIONS | true | 复用存储的CLI会话 |\n\n## 使用场景\n\n### 场景一:代码审查协作\n\n假设你需要审查一个复杂的代码变更,可以同时召唤多个Agent:\n\n\n@claude 请分析这个PR的安全性,特别关注输入验证和权限检查\n@codex 请检查代码风格和性能问题\n@gemini 请生成测试用例覆盖这些变更\n\n\n三个Agent会并行工作,从不同角度审查代码,结果汇总在聊天室中。\n\n### 场景二:全栈开发任务\n\n开发一个新功能时,可以让不同Agent负责不同层面:\n\n\n@claude 设计数据库Schema和API接口\n@codex 实现后端API和业务逻辑\n@gemini 创建前端组件和集成测试\n\n\nFireside会协调这些任务,确保它们按正确顺序执行,并共享必要的上下文。\n\n### 场景三:代码重构\n\n大规模代码重构往往需要多步骤操作:\n\n\n@codex --yolo 重构用户认证模块,保持向后兼容\n\n\n在YOLO模式下,Codex可以自主执行多轮重构操作,同时Fireside会监控整个过程并在必要时请求人工干预。\n\n## 安全与隐私考量\n\nFireside的本地优先设计带来了显著的安全优势:\n\n- 数据不出境:所有代码和对话都留在本地机器\n- 无云端依赖:不依赖任何外部服务,降低数据泄露风险\n- 透明审计:所有Agent操作都有日志记录\n- 权限控制:细粒度的权限配置防止误操作\n\n然而,用户仍需注意:\n\n- YOLO模式可能执行不可逆操作,使用时需谨慎\n- 本地数据目录(data/)包含敏感信息,不应提交到版本控制\n- 确保本地CLI的安全配置,避免凭证泄露\n\n## 局限性与未来展望\n\n### 当前局限\n\n- Windows为主:项目在Windows上测试最多,macOS和Linux路径实现相对较新\n- CLI格式依赖:Provider CLI的输出格式可能变化,需要持续适配\n- 非桌面应用:目前是Web应用,需要浏览器访问\n- 依赖本地CLI:用户需要自行安装和配置多个CLI工具\n\n### 未来可能的方向\n\n- 打包为独立桌面应用(Electron或Tauri)\n- 支持更多AI Provider和本地模型\n- 团队协作功能(多用户共享工作空间)\n- 插件系统支持自定义Agent行为\n\n## 总结\n\nFireside代表了AI Agent协作工具的一个有趣方向。它不试图取代现有的CLI工具,而是为它们提供一个协作层,让多个Agent能够在一个统一的环境中协同工作。这种"本地优先、多Agent协作"的理念,对于需要同时使用多个AI工具的开发者和团队来说,是一个有价值的探索。\n\n随着AI Agent生态的不断发展,我们可以期待更多类似Fireside的工具出现,它们将帮助人类更好地驾驭日益强大的AI能力,实现真正的人机协作。章节 03
Fireside:本地多Agent协作工作空间\n\n随着AI Agent能力的不断增强,单一Agent往往难以满足复杂的开发需求。如何让多个Agent协同工作,共享上下文,协调任务,成为了一个亟待解决的问题。Fireside正是为此而生的一个开源项目,它提供了一个本地运行的多Agent协作工作空间。\n\n项目概述\n\nFireside是一个基于Node.js和Angular开发的Web应用,旨在为人类用户和多个AI Agent(Claude Code、Codex CLI、Gemini CLI)提供一个共享的协作环境。它的核心理念是"本地优先":所有数据处理都在用户本地机器上完成,不经过任何托管服务,确保隐私和安全。\n\nFireside的设计灵感来源于团队聊天室的概念。就像人类团队使用Slack或Discord进行协作一样,Fireside为AI Agent提供了一个类似的协作空间,让它们能够在一个统一的界面中交流、协调和执行任务。\n\n核心功能特性\n\n多Agent聊天室\n\nFireside的核心是一个共享聊天界面,支持人类用户和多个AI Agent同时参与。用户可以通过简单的@提及来指定某个Agent执行任务:\n\n\n@codex 帮我重构这个函数\n@claude 解释一下这段代码的逻辑\n@gemini 生成单元测试\n\n\nAgent的回复会实时显示在聊天室中,所有参与者都能看到对话历史,形成真正的协作氛围。\n\n任务与运行管理\n\nFireside引入了"任务轨道"的概念,用于管理正在进行的Agent工作。当用户请求Agent执行任务时,该任务会出现在"活跃工作轨道"中,显示执行状态和进度。这种可视化的任务管理让用户能够同时跟踪多个Agent的工作,避免任务混乱。\n\n权限控制与YOLO模式\n\n安全是多Agent协作的重要考量。Fireside提供了细粒度的权限控制,用户可以:\n\n- 为每个Agent配置独立的权限级别\n- 启用"YOLO模式"让特定Agent自主执行多轮任务\n- 通过权限提示(Permission Prompts)审查敏感操作\n\nYOLO模式是Fireside的一个特色功能。当启用后,Agent可以在不需要人工确认的情况下自主执行多步骤任务,大大提高工作效率。当然,这种模式应该只在可信的环境中使用。\n\n运行遥测与审计\n\nFireside会记录每个Agent的运行遥测数据,包括执行时间、资源消耗、操作日志等。这些数据不仅有助于性能优化,也为安全审计提供了依据。用户可以回顾Agent的历史操作,了解系统状态。\n\n上下文共享与Artifacts\n\n为了让Agent更好地协作,Fireside支持上下文共享功能:\n\n- Saved Briefings:保存和复用常用的任务简报\n- Context Artifacts:在Agent之间共享文件、代码片段等上下文\n- Task/Checklist Coordination:任务清单协调,确保多Agent工作不冲突\n\n这些功能让Agent能够基于共享的上下文进行协作,而不是孤立地工作。\n\n技术架构\n\nFireside采用前后端分离的架构:\n\n后端(Node.js/TypeScript)\n\n后端负责核心业务逻辑,包括:\n\n- WebSocket服务器:实现实时通信\n- Agent管理:与Claude、Codex、Gemini CLI的集成\n- 任务调度:协调多Agent任务执行\n- 数据持久化:SQLite数据库存储\n\n后端通过shell命令调用本地安装的Provider CLI,这意味着用户需要先在本地安装并认证这些CLI工具。\n\n前端(Angular)\n\n前端提供用户界面,包括:\n\n- 聊天室界面\n- 任务管理面板\n- Agent配置界面\n- 文件选择器\n\n前端使用WebSocket与后端实时通信,确保消息和状态更新的即时性。\n\n原生文件选择器\n\nFireside实现了跨平台的原生文件选择器:\n\n- Windows:使用PowerShell的FolderBrowserDialog/OpenFileDialog\n- macOS:使用osascript的choose folder/choose file\n- Linux:使用zenity(优先)或kdialog作为备选\n\n这种设计让用户能够以熟悉的方式选择文件和文件夹,而不必手动输入路径。\n\n安装与配置\n\n系统要求\n\n- Node.js 20.10或更高版本\n- npm\n- Git\n- Claude Code CLI(已安装并认证)\n- Codex CLI(已安装并认证)\n- Gemini CLI(已安装并认证)\n\n安装步骤\n\nbash\ngit clone https://github.com/mattnb/fireside.git\ncd fireside\nnpm install\n\n复制环境配置\ncp .env.example .env\n\n验证CLI可用性\nnpm run verify:clis\n\n构建并启动\nnpm run build\nnpm start\n\n\n启动后,打开浏览器访问http://127.0.0.1:8787即可使用。\n\n环境配置\n\nFireside通过.env文件进行配置,主要选项包括:\n\n| 变量 | 默认值 | 说明 |\n|-----|-------|-----|\n| FIRESIDE_HOST | 127.0.0.1 | HTTP/WebSocket绑定主机 |\n| FIRESIDE_PORT | 8787 | HTTP/WebSocket端口 |\n| FIRESIDE_DATA_DIR | ./data | 数据目录(SQLite、日志等) |\n| FIRESIDE_MAX_PROMPT_CHARS | 16000 | 生成Agent提示的最大字符数 |\n| FIRESIDE_RESUME_CLI_SESSIONS | true | 复用存储的CLI会话 |\n\n使用场景\n\n场景一:代码审查协作\n\n假设你需要审查一个复杂的代码变更,可以同时召唤多个Agent:\n\n\n@claude 请分析这个PR的安全性,特别关注输入验证和权限检查\n@codex 请检查代码风格和性能问题\n@gemini 请生成测试用例覆盖这些变更\n\n\n三个Agent会并行工作,从不同角度审查代码,结果汇总在聊天室中。\n\n场景二:全栈开发任务\n\n开发一个新功能时,可以让不同Agent负责不同层面:\n\n\n@claude 设计数据库Schema和API接口\n@codex 实现后端API和业务逻辑\n@gemini 创建前端组件和集成测试\n\n\nFireside会协调这些任务,确保它们按正确顺序执行,并共享必要的上下文。\n\n场景三:代码重构\n\n大规模代码重构往往需要多步骤操作:\n\n\n@codex --yolo 重构用户认证模块,保持向后兼容\n\n\n在YOLO模式下,Codex可以自主执行多轮重构操作,同时Fireside会监控整个过程并在必要时请求人工干预。\n\n安全与隐私考量\n\nFireside的本地优先设计带来了显著的安全优势:\n\n- 数据不出境:所有代码和对话都留在本地机器\n- 无云端依赖:不依赖任何外部服务,降低数据泄露风险\n- 透明审计:所有Agent操作都有日志记录\n- 权限控制:细粒度的权限配置防止误操作\n\n然而,用户仍需注意:\n\n- YOLO模式可能执行不可逆操作,使用时需谨慎\n- 本地数据目录(data/)包含敏感信息,不应提交到版本控制\n- 确保本地CLI的安全配置,避免凭证泄露\n\n局限性与未来展望\n\n当前局限\n\n- Windows为主:项目在Windows上测试最多,macOS和Linux路径实现相对较新\n- CLI格式依赖:Provider CLI的输出格式可能变化,需要持续适配\n- 非桌面应用:目前是Web应用,需要浏览器访问\n- 依赖本地CLI:用户需要自行安装和配置多个CLI工具\n\n未来可能的方向\n\n- 打包为独立桌面应用(Electron或Tauri)\n- 支持更多AI Provider和本地模型\n- 团队协作功能(多用户共享工作空间)\n- 插件系统支持自定义Agent行为\n\n总结\n\nFireside代表了AI Agent协作工具的一个有趣方向。它不试图取代现有的CLI工具,而是为它们提供一个协作层,让多个Agent能够在一个统一的环境中协同工作。这种"本地优先、多Agent协作"的理念,对于需要同时使用多个AI工具的开发者和团队来说,是一个有价值的探索。\n\n随着AI Agent生态的不断发展,我们可以期待更多类似Fireside的工具出现,它们将帮助人类更好地驾驭日益强大的AI能力,实现真正的人机协作。