finds.dev← search

// the find

Mininglamp-OSS/octo-server

★ 1,061 · Go · Apache-2.0 · updated Sep 2026

🐙 The Go backend powering OCTO — an open workplace built for humans × AI agents. REST & WebSocket APIs, Lobster (AI agent) orchestration, and WuKongIM real-time messaging control plane.

octo-server is the Go backend for OCTO, a self-hosted chat/collaboration platform where AI agents ('Lobsters') sit alongside human users as first-class participants. It's a derivative of TangSengDaoDaoServer wired to WuKongIM for real-time messaging, with REST/WebSocket APIs, MySQL storage, and an agent orchestration layer on top. Aimed at teams wanting a self-hosted Slack-like tool with agent automation built in, not people who just want a plain IM backend.

The internal package layout is genuinely modular — api/service/repository/im/agent/adapter are separated cleanly enough that you could swap the IM core or storage backend without touching business logic, and CI backs that up with CodeQL, osv-scanner, gitleaks, and dependency-review running on every PR. Building on TangSengDaoDaoServer and WuKongIM instead of writing an IM core from scratch is a reasonable bet — you inherit a working messaging system rather than debugging your own WebSocket fan-out. The multi-repo split (server, matter, smart-summary, admin, web, lib, adapters) mirrors real service boundaries instead of being one repo pretending to be a monorepo.

The 'Lobster'/'OpenClaw' agent layer — the actual differentiator over any other self-hosted chat backend — is undocumented beyond marketing language in the README; there's no explanation of the tool-call protocol, session model, or how agent identity is separated from human identity in the RBAC layer. Standing up the full stack means MySQL, Redis, MinIO, and a separate WuKongIM instance, and the real one-command path lives in a different repo (octo-deployment) — the quickstart here just gets you a binary that won't do much alone. It ships as a squashed 'release-as-product' history, so there's no visibility into how the WuKongIM integration actually evolved or what broke along the way — you're trusting the current snapshot with no paper trail.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →