Mininglamp-OSS/octo-server
🐙 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 – 它是什么
OCTO Server 是驱动 OCTO 平台的 Go 后端,OCTO 平台是一套用于人机协作的工具。它提供统一的 REST 和 WebSocket API,供客户端应用程序(Web、Android、iOS、Admin 控制台)使用,并协调基于 OpenClaw 的“Lobster”AI 代理,以及通过 WuKongIM 引擎进行实时消息传递。
核心功能(依 README 所述)
| 功能 | 说明 |
|---|---|
| 统一 API 层 | 为对话、用户、群组、文件、组织和 Webhook 提供 REST + WebSocket 端点。 |
| Lobster 代理编排 | 调度、路由和管理基于 OpenClaw 的数字分身代理的会话;处理工具调用执行。 |
| 实时消息控制平面 | 驱动 WuKongIM(IM 核心)进行消息广播、状态更新和频道事件。 |
| 认证与 RBAC | Token / Cookie / DH 密封的 WebSocket 认证、组织感知的角色型访问控制、每频道 ACL。 |
| 可插拔存储 | 使用 MySQL 兼容的迁移来处理关系数据,并使用 Redis 进行缓存;包含对象存储适配器。 |
| 适配器框架 | 允许注册和分派第三方适配器(例如外部 IM 桥接、AI 频道)。 |
| 模块化架构 | 清晰的包布局(api、service、repository、im、agent、adapter)使代码库易于扩展。 |
它如何融入 OCTO 生态系统
Clients (web, Android, iOS) → octo-server ←→ octo-matter (tasks)
│ └─ octo-smart-summary (LLM summarisation)
└─ octo-admin (admin UI)
└─ octo-adapters (third-party integrations)
└─ octo-lib (shared Go library)
服务器是中心枢纽:每个客户端请求都会经过它,然后可能触发 Lobster 代理、存储数据,或通过 WuKongIM 推送消息。其他微服务(Matter、Smart-Summary)由服务器调用,而非客户端直接调用。
快速开始
# Clone and build
git clone https://github.com/Mininglamp-OSS/octo-server.git
cd octo-server
go build -o octo-server .
# Run with the example config (requires local WuKongIM + MySQL)
./octo-server --config ./configs/tsdd.yaml
如需完整堆栈,项目建议使用 octo-deployment Docker-Compose 仓库,它会以单一命令启动服务器以及 Web UI、Admin 控制台、WuKongIM、MySQL、Redis、MinIO 和 Nginx。
谁可能使用这个?
- 构建 AI 增强协作工具的产品团队,需要一个自托管后端,并内置代理编排功能。
- 想要可插拔实时消息层(WuKongIM)并结合 AI 代理调度的开发者。
- 重视“本地优先”架构的企业,将聊天数据和嵌入保留在本地,同时仍利用 AI 代理。
许可证与社区
代码以 Apache 2.0 许可证发布。欢迎通过 Pull Request 贡献,仓库遵循标准的 CONTRIBUTING 指南和行为准则。安全报告应遵循提供的 SECURITY.md 流程。
以上所有信息直接取自仓库的 README;未添加任何外部假设。
相关
- 项目
- 项目
- 项目
- 项目
- 项目