尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
Cumora 开源贡献指南:AI Agent 团队聊天开发环境搭建、CI 门禁与必须知道的 2 条架构不变量
Cumora 开源贡献指南AI Agent 团队聊天开发环境搭建、CI 门禁与必须知道的 2 条架构不变量【免费下载链接】cumoraWhere agent teams gather. Cross-platform team chat where AI agents are first-class teammates — with cloud or bring-your-own (Claude Code / Codex) brains.项目地址: https://gitcode.com/gh_mirrors/cu/cumoraCumora 是一个 AI Agent 团队聊天开源项目——在这里AI 智能体与人类共享同一名单、同群同聊。本文是 Cumora 开源贡献指南带你 3 步搭建开发环境、看懂 CI 门禁清单并掌握 CI 强制执行的 2 条架构不变量快速贡献出第一份合格的 PR。30 秒认识 CumoraCumora 是一款跨平台团队聊天工具Electron 桌面 / PWA / iOS / AndroidAI Agent 是一等队友它们拥有独立人格与记忆、会主动认领任务、彼此协作互不打架还能收发真实邮件。每个 Agent 的大脑有两种来源Cumora Cloud云端托管每个 Agent 跑在独立的 Kubernetes Pod 里BYOABring Your Own Agent绑定你自己的 Mac/VPS大脑就是你本地的 Claude Code 或 Codex。开发环境搭建3 步跑通本地开发环境要求Node ≥ 18CI 使用 Node 24、本地 Postgres、本地 RedisHomebrew 服务即可。# 第 1 步克隆仓库 git clone https://gitcode.com/gh_mirrors/cu/cumora cd cumora # 第 2 步建库 配置唯一的硬性环境变量 createdb -h localhost cumora export OPENAI_API_KEYsk-... # 第 3 步安装依赖并启动 npm run setup # 安装根目录 Email Worker 依赖 npm run dev:all # Vite 前端 :5180 API 服务 :5181打开 http://localhost:5180 即可看到 Web 版跑npm run electron:dev则是桌面窗口。几个容易踩的坑事项说明用npm run setup而非npm install根目录的npm test会运行workers/email-gate的测试其依赖在 Worker 独立的 package.json 里数据库自动建表Schema 启动时幂等创建空库会预置一个起始团队6 Agent 3 人类 9 会话其他环境变量除OPENAI_API_KEY外均可缺省——OAuth、邮件、推送等未配置时自动软禁用详见.env.exampleCI 门禁清单提 PR 前必须全绿的 7 道检查CI 的配置在.github/workflows/pr.ymlPR 快速反馈与.github/workflows/build.yml完整质量门禁。提 PR 前在本地跑同一套检查全部通过再请求评审npm run lint # Biome 静态检查可用 npm run lint:fix 自动修复 npm run typecheck # 前端类型检查strict 模式 npm run server:typecheck # 服务端类型检查strict 模式 npm test # 单元测试node:test覆盖 server workers npm run test:integration # 集成测试需要本地 Postgres Redis npm run guard:big-brain # 架构守护 1大模型使用门禁 npm run guard:llm-tracked # 架构守护 2LLM 调用记账门禁 注意Biome 在这里只当 linter 用、不是 formatter不会重排你已有的代码。服务端与 Worker 逻辑由server/src/__tests__和server/src/__integration__覆盖。必须知道的 2 条架构不变量这两条不是风格偏好——它们是 Cumora 的核心成本模型被 CI 里的守护脚本硬编码强制。违反会直接让构建失败别指望先合了再说。不变量一只有 Agent 回合才允许用大模型便宜的小脑模型负责分诊、分类、摘要等一切辅助调用昂贵的大模型只留给真正的 Agent 推理回合。新增任何 LLM 调用必须走正确的档位云路径realTaskModel()必须被enforceModelPolicy(..., purpose)包裹策略层会为非真实任务强制降级到小模型见server/src/agents/model-policy.tsBYOA 路径引擎启动只允许发生在分诊判定为需要大模型的守护进程路径中。守护脚本scripts/guard-big-brain.mjs会静态扫描源码任何逃出闸门的大模型选择都会以P0 事故级别报告并失败。它甚至是 CI 里第一个运行的任务——不装依赖、秒级出结果让回归响亮地变红。不变量二每一次 LLM 调用都必须入账所有 LLM 开销云端或 BYOA必须落到统一的llm_calls成本账本。未入账的开销在这个项目里是正确性 bug不是小疏忽——按业务目的汇总的账单会悄悄算错。规则很简单服务端出站调用必须走getTrackedLlmClient()自动记账流式场景则手动recordLlmCall()。守护脚本scripts/guard-llm-tracked.mjs扫描所有直接getLlmClient()的调用点不在显式白名单内的一律失败。想新增合法调用点把它加入白名单本身就该是一次经过评审的显式动作。动手前值得读的文档与约定docs/COORDINATION.md—— 多 Agent 协作不打架的完整设计防御层次 血泪教训的反模式。修改 Agent 回合循环、分诊闸门或守护进程前必读docs/BYOA.md—— 本地引擎守护进程本地 Claude Code / Codex 如何接入组件级文档docs/email.md真实邮件、docs/MOBILE_IOS.md、docs/PUSH_NOTIFICATIONS.md、docs/SHIPPING.md。代码约定上记住三点跟文件走与你编辑的文件风格保持一致代码注释解释为什么约束、权衡、历史而不是下一行做什么。如果你的改动推翻了一条注释记载的决策记得更新注释协作提示词保持极简glance-protocol.ts与守护进程的系统提示只保留形状级约束——为修一个观察到的 bug 就加场景示例是这里最贵的改动类型拒绝 any前后端 tsconfig 都是 strict这不是偶然的。前端src/含desktop/、mobile/、web/、admin/四个壳共用组件与后端server/无状态 Node 服务职责分离清晰新贡献者可以从单测覆盖充分的server/src/__tests__入手。第一次贡献的推荐路径 ✅步骤动作1按上文 3 步跑通本地开发确认能看到预置起始团队2通读CONTRIBUTING.md与docs/COORDINATION.md3选一个小而完整的改动一个逻辑改动 一个 PR4本地跑完 7 道门禁全绿后再请求评审5Commit message 解释为什么而不只是做了什么最后提醒安全漏洞请勿提公开 issue按SECURITY.md私下报告功能与 bug 则附清晰的复现步骤。祝你在 Cumora 的第一次贡献顺利 【免费下载链接】cumoraWhere agent teams gather. Cross-platform team chat where AI agents are first-class teammates — with cloud or bring-your-own (Claude Code / Codex) brains.项目地址: https://gitcode.com/gh_mirrors/cu/cumora创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
RELATED

相关推荐

MiniOB 从 0 到 1 完整指南:手把手编译、运行并看懂一个迷你数据库

MiniOB 从 0 到 1 完整指南:手把手编译、运行并看懂一个迷你数据库

MiniOB 从 0 到 1 完整指南:手把手编译、运行并看懂一个迷你数据库 【免费下载链接】miniob MiniOB is a compact database that assists developers in understanding the fundamental workings of a database. 项目地址: https://gitcode.com/GitHub_Trending/m…

📅 2026/10/16 17:11:03
set-simulator-location如何把地名变成坐标?macOS上MKLocalSearch搜索实现深度解析

set-simulator-location如何把地名变成坐标?macOS上MKLocalSearch搜索实现深度解析

set-simulator-location如何把地名变成坐标?macOS上MKLocalSearch搜索实现深度解析 【免费下载链接】set-simulator-location CLI for setting location in the iOS simulator 项目地址: https://gitcode.com/gh_mirrors/se/set-simulator-location set-simu…

📅 2026/10/11 5:20:19
FGO-py:3步上手的FGO全自动助手部署指南

FGO-py:3步上手的FGO全自动助手部署指南

FGO-py:3步上手的FGO全自动助手部署指南 【免费下载链接】FGO-py 自动爬塔! 自动每周任务! 全自动免配置跨平台的Fate/Grand Order助手.启动脚本,上床睡觉,养肝护发,满加成圣诞了解一下? 项目地址: https://gitcode.com/GitHub_Trending/fg/FGO-py FGO-py是…

📅 2026/10/11 5:59:37
MORE NEWS

更多资讯

📰

可直接运行的数据库系统概论课程设计包:MySQL导入建表与事务实验避坑

简介:山东科技大学数据库系统概论课程设计是一份面向高校数据库课程学习者与初学者的实践资料,围绕数据表的创建与修改展开,帮助读者把SQL建表、改表等课堂概念落到可运行的程序中。压缩包共5个文件,以2个txt说明与测试数据、1个c…

📰

从用例图到双账本:超市进销存系统库存一致性设计

简介:这份超市进销存管理系统源码与用例图资料,面向学习零售业务系统开发的学生、课程设计者及初级开发者,围绕商品进货、销售、库存、订单等流程提供可运行参考。压缩包共103个文件、约2.03MB,以aspx页面、cs后台代码、jpg/gif界…

📰

重复文件清理技术:原理、工具与最佳实践

1. 重复文件清理痛点与解决方案 作为一名长期与数字文件打交道的从业者,我深刻理解重复文件带来的困扰。在日常工作中,我们经常会遇到这样的情况:同一份文档被多次保存到不同文件夹,下载的图片在不同设备间同步时产生副本&#xf…

📰

ModelSim老工程救星:GCC 4.2.1 MinGW32 VC9编译包详解与避坑指南

简介:这份资源是面向32位Windows环境下硬件仿真开发的GCC编译器集成包,专为ModelSim与QuestaSim用户准备,解决仿真环境中缺少可用C/C编译与链接工具的问题,适合从事Verilog/VHDL验证、嵌入式软件协同调试的工程师与学习者。压缩包…

📰

Delphi老项目数据库层拆解:MyDAC v5.10源码精读与二次开发实践

简介:MySQL Data Access Components(MyDAC)v5.10 源文件面向使用 Delphi 7 至 2007 及 CBuilder 的数据库开发者,用于在不依赖第三方库或中间件的前提下直接连接 MySQL 服务器,完成数据读取、写入、更新与删除等操作。…

📰

Android Gradle 依赖治理:Version Catalogs 四层协同实践

简介:本资源是一套面向Android开发者的Gradle依赖统一管理实践方案,聚焦Windows平台下的Gradle命令高效执行与工程化配置优化。针对开发者常因环境差异(如Windows下需去除./前缀)导致命令执行失败、依赖管理混乱等问题&#xff0c…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬