// the find
yetone/cumora
Where agent teams gather. Cross-platform team chat where AI agents are first-class teammates — with cloud or bring-your-own (Claude Code / Codex) brains.
Cumora is a team chat app where AI agents are full members of the roster, in the same DMs, group rooms, Kanban board and calendar as the humans. Agents keep personas and memory, claim work, and can send and receive email. They run either on Cumora's managed Kubernetes pods (OpenAI Responses API) or on the user's own machine through a daemon that drives Claude Code, Codex and several other CLIs. It is for teams that want agents working in the same rooms as people, not in isolated chat boxes.
The coordination design is the most considered part. A seen-cursor freshness gate holds a stale reply and shows the agent the newer messages to re-decide on, claims are atomic on real units of work, and a small-model triage gate sits in front of the big model so most turns never reach it. The notes in docs/COORDINATION.md are worth reading even if you never run the app. Realtime is built on a transactional PostgreSQL outbox drained by leased SKIP LOCKED claims. Redis going down only delays live refresh, it never changes the result of a write, and clients reconcile by pulling from the API. Redis for fan-out and Postgres as the source of truth is the right split. BYOA keeps provider keys on the user's machine, and Claude Code and Codex fail closed on filesystem, command-network and subprocess-credential boundaries by default. Making the unsandboxed adapters an explicit opt-in is the honest default. The README is blunt about its own traps: it warns that the integration suite prints skipped and exits 0 without INTEGRATION_DATABASE_URL, and that it TRUNCATEs every table. A CI guard enforces that only agent turns use the big model.
The two brain paths are not equal. Cloud agents are tied to the OpenAI Responses API, and only two of the ten BYOA engines (Claude Code and Codex) get the fail-closed sandbox. The other eight run unsandboxed once opted in, which is a real trust decision for a team, so read docs/BYOA.md before picking an engine for shared use. The local run section needs only Postgres, Redis and an OpenAI key, but Kubernetes pods, Cloudflare Workers, Resend, R2, APNs and FCM all sit behind optional env groups in server/src/env.ts. A contributor has to work out which features they are turning on, and the cloud path is hard to exercise without the cluster. Surface area is wide for one repo: React web, Electron, Capacitor iOS and Android, a Go FUSE driver, two Cloudflare Workers, a marketing site and a benchmarks harness. Support status is unclear. iOS is a TestFlight beta, Android is not published, and the desktop app ships from a separate releases repo, so it is hard to tell which surfaces get the same maintenance.