Open-source instant messaging server in Go that developers integrate into their own apps, with SDK, REST API and webhooks.
Mininglamp-OSS/octo-server
Go backend for OCTO, an open workplace where humans and AI agents collaborate, with REST and WebSocket APIs and WuKongIM-based real-time messaging.
Open-source alternative to:Slack
- Stars
- 1,100
- Forks
- 173
- Open issues
- 8
- Last commit
- yesterday
What is it?
octo-server is the backend service of OCTO, a self-hosted workplace where people and AI agents work in the same conversations. It exposes REST and WebSocket APIs consumed by the OCTO web, admin and mobile clients, and handles business logic such as access control, organisation-aware permissions, and per-channel access rules.
The server also schedules Lobster agents, which are OpenClaw-powered digital doubles that can take part in conversations, manage sessions and execute tool calls. Real-time message delivery is handled by WuKongIM, which octo-server drives through a control-plane client for channels, messages and presence.
Storage uses MySQL-compatible SQL migrations with Redis caching, and object storage adapters are included. The project is written in Go, ships under Apache 2.0, and is a derivative of TangSengDaoDaoServer.
Key features
- 01REST and WebSocket APIs for conversations, users, groups, files and organisations.
- 02Lobster agent orchestration covering routing, sessions and tool-call execution.
- 03Real-time messaging through a WuKongIM control-plane client.
- 04Org-aware RBAC, per-channel ACL and agent-identity gating.
- 05MySQL-compatible SQL migrations with Redis and object-storage adapters.
Use cases
- Running a self-hosted workplace chat where AI agents participate alongside staff.
- Building a messaging backend that integrates WuKongIM for real-time delivery.
- Studying how an agent-aware IM server handles auth, permissions and message fan-out.
Quick start
- 1
Clone the repository
git clone https://github.com/Mininglamp-OSS/octo-server.git - 2
Enter the project directory
cd octo-server - 3
Build the binary
go build -o octo-server . - 4
Run the server with the bundled config (needs a local WuKongIM and MySQL-compatible database)
./octo-server --config ./configs/tsdd.yaml
Things to know
- Running it requires a separate WuKongIM instance and a MySQL-compatible database.
- Full stack deployment is handled by a different repository, octo-deployment.
Topics
FAQ
- What is octo-server?
- Go backend for OCTO, an open workplace where humans and AI agents collaborate, with REST and WebSocket APIs and WuKongIM-based real-time messaging. octo-server is the backend service of OCTO, a self-hosted workplace where people and AI agents work in the same conversations. It exposes REST and WebSocket APIs consumed by the OCTO web, admin and mobile clients, and handles business logic such as access control, organisation-aware permissions, and per-channel access rules.
- Is octo-server free to use? What license does it have?
- octo-server is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
- Is octo-server still maintained?
- Actively maintained. The last commit to octo-server was on Oct 21, 2026.
- What can I use octo-server for?
- Running a self-hosted workplace chat where AI agents participate alongside staff. Building a messaging backend that integrates WuKongIM for real-time delivery. Studying how an agent-aware IM server handles auth, permissions and message fan-out.
- How do I install octo-server?
- Clone the repository: git clone https://github.com/Mininglamp-OSS/octo-server.git Enter the project directory: cd octo-server Build the binary: go build -o octo-server . Run the server with the bundled config (needs a local WuKongIM and MySQL-compatible database): ./octo-server --config ./configs/tsdd.yaml
- Where can I get octo-server?
- The source code and installation instructions are on GitHub: https://github.com/Mininglamp-OSS/octo-server
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Self-hosted team chat running on Cloudflare Workers, with realtime messaging, a two-way Telegram bridge, and server-side encrypted messages and files.
The Rust backend services and libraries that power the Stoat chat platform, including its REST API, WebSocket events server and file server.
A self-hostable workspace where humans and AI agents share channels, messages, workflows and git events on a Nostr relay you run.
Open core, self-hosted collaboration platform offering chat, workflow automation, voice calling, screen sharing and AI integration.
Open-source, self-hostable team chat platform for secure internal and external communications, built in TypeScript.