Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

NickCharlie/ubothub

Repository files navigation

UBotHub

Go React TypeScript PostgreSQL License

Bot + Avatar 开放平台 — 让每个 AI 机器人都有自己的虚拟形象

English | 简体中文

参与贡献 · 安全策略 · 开源许可


我们是什么

UBotHub 是一个面向 AI 机器人生态的开放平台。我们提供从机器人接入、虚拟形象管理到实时交互的全链路基础设施,让开发者可以在几分钟内将自己的聊天机器人与 3D/Live2D 虚拟角色绑定,创造有温度的 AI 交互体验。

无论你是个人开发者、企业客户还是内容创作者,UBotHub 都能让你的 AI 从「纯文字对话」进化为「有形象、有表情、有动作」的虚拟伙伴。

核心能力

对用户

能力 说明
一键接入 Bot 注册平台账号,创建 Bot,获取 Access Token,即可通过 多种渠道 接入你的聊天机器人
上传虚拟形象 支持 VRM、glTF/GLB、FBX(3D)和 Cubism 2/3/4(Live2D)等主流格式
实时互动 用户发送消息 → Bot 回复 → 虚拟形象自动做出对应表情和动作,全程 WebSocket 实时推送
Bot 广场 浏览和体验其他开发者创建的 Bot,发现有趣的 AI 角色

对 Bot 开发者

能力 说明
多框架适配 原生支持 AstrBot 等主流框架,也支持通用 Webhook
收益变现 设置按次计费或订阅制定价,平台 80/20 分成直接结算到你的账户
OpenAPI 文档 完整的 Swagger API 文档,集成只需几行代码
实时监控 WebSocket 连接状态、消息吞吐量、调用计费一目了然

对合作伙伴

优势 说明
差异化定位 业内首个「Bot + 虚拟形象」开放平台,解决 AI 交互「只有文字没有形象」的痛点
开发者生态 通过 Bot 广场、收益分成、API 开放能力吸引 Bot 开发者入驻,形成内容飞轮
技术壁垒 自研动作映射引擎、高并发 WebSocket 网关、服务商模式支付体系
变现能力 平台抽成 + 虚拟形象资产交易 + 企业级 SaaS 定制,多元化收入模型
生产级架构 微服务分离部署、断路器容错、异步任务队列、水平扩展能力

技术亮点

┌──────────────────────────────────────────────────────────────────┐
│ UBotHub 架构 │
├──────────────┬───────────────────┬───────────────────────────────┤
│ Frontend │ React 19 + Vite │ Glassmorphic Dark UI │
│ │ Tailwind CSS │ Framer Motion 动画 │
│ │ Three.js │ 3D/Live2D 实时渲染 │
├──────────────┼───────────────────┼───────────────────────────────┤
│ API Layer │ Gin Framework │ JWT Auth + RBAC │
│ │ Swagger/OpenAPI │ 52+ 个 RESTful 端点 │
│ │ WebSocket Hub │ 万级并发连接 │
├──────────────┼───────────────────┼───────────────────────────────┤
│ Business │ Bot 管理/网关 │ 适配器工厂模式 │
│ │ 钱包/计费/分成 │ 服务商模式支付(微信/支付宝) │
│ │ 资产/形象管理 │ 动作映射引擎 │
├──────────────┼───────────────────┼───────────────────────────────┤
│ Infra │ PostgreSQL 16 │ GORM + 软删除 │
│ │ Redis 7 │ 缓存 / 限流 / 队列 │
│ │ MinIO / OSS │ S3 兼容对象存储 │
│ │ asynq │ 异步任务(邮件/资产处理) │
│ │ Docker Compose │ 生产 / 调试双环境部署 │
└──────────────┴───────────────────┴───────────────────────────────┘

快速开始

环境要求

  • Go 1.25+
  • Node.js 22+ (LTS)
  • pnpm 9+
  • Docker & Docker Compose

方式一:本地开发(推荐)

# 克隆仓库
git clone git@github.com:NickCharlie/ubothub.git
cd ubothub
# 启动基础设施(PostgreSQL, Redis, MinIO, asynqmon)
make docker-up
# 终端 1:启动后端(air 热重载)
make dev-backend
# 终端 2:启动前端(Vite HMR)
make dev-frontend

方式二:Docker 调试环境(全栈容器化)

# 一键启动全栈(含热重载 + Delve 远程调试)
make docker-debug-up
# 查看日志
make docker-debug-logs

方式三:Docker 生产环境

# 配置环境变量
cp .env.example .env
vim .env
# 构建并启动(多阶段构建 + nginx 前端 + API/Worker 分离)
make docker-prod-up

服务地址

服务 本地开发 Docker 调试
前端 http://localhost:5173 http://localhost:5173
后端 API http://localhost:8080/api/v1 http://localhost:8080/api/v1
Swagger 文档 http://localhost:8080/swagger/index.html 同左
MinIO 控制台 http://localhost:9001 http://localhost:9001
asynqmon http://localhost:8081 http://localhost:8081
Delve 调试 localhost:2345

项目结构

ubothub/
├── backend/ # Go 后端服务
│ ├── cmd/server/ # 应用入口(API / Worker / All 模式)
│ ├── internal/
│ │ ├── adapter/ # Bot 框架适配器(AstrBot, Webhook)
│ │ ├── config/ # 配置管理(Viper + 环境变量)
│ │ ├── handler/ # HTTP 处理器(12 个模块)
│ │ ├── middleware/ # 中间件(JWT, CORS, CSRF, 限流, 安全头)
│ │ ├── model/ # GORM 数据模型
│ │ ├── payment/ # 支付集成(微信/支付宝服务商模式)
│ │ ├── repository/ # 数据访问层
│ │ ├── router/ # 路由注册
│ │ ├── service/ # 业务逻辑层
│ │ ├── ws/ # WebSocket Hub(gorilla/websocket)
│ │ └── queue/ # 异步任务处理器
│ ├── pkg/ # 公共工具(JWT, 日志, 邮件, HTTP 连接池)
│ ├── configs/ # 配置文件(开发/调试/生产)
│ └── docs/ # Swagger 自动生成文档
├── frontend/ # React 前端
│ └── src/
│ ├── api/ # API 客户端
│ ├── components/ # 通用组件(Layout, Sidebar)
│ ├── pages/ # 页面(Auth, Dashboard, Bot, Avatar, Asset)
│ ├── stores/ # Zustand 状态管理
│ └── styles/ # 全局样式 + Glassmorphic 设计系统
├── .github/ # CI/CD(Commit Lint + AI Issue Triage)
├── docker-compose.yml # 本地基础设施
├── docker-compose.debug.yml # Docker 调试环境
├── docker-compose.prod.yml # Docker 生产环境
└── Makefile # 开发/构建/部署命令

API 文档

启动后端后访问 Swagger UI:

http://localhost:8080/swagger/index.html

覆盖 52+ 个 API 端点,包括:认证、用户、Bot 管理、资产管理、虚拟形象、钱包计费、支付、网关、WebSocket、管理后台。

路线图

  • 用户认证系统(JWT + 邮箱验证 + 密码重置)
  • Bot 管理与网关(CRUD + Webhook + 消息推送)
  • 3D/Live2D 资产与虚拟形象管理
  • 钱包、计费、收益分成系统
  • 微信/支付宝服务商模式支付
  • WebSocket 实时消息网关
  • 管理后台 API
  • Swagger/OpenAPI 文档
  • Docker 多环境部署(开发/调试/生产)
  • 前端 Bot 广场与聊天界面
  • 3D/Live2D 实时渲染引擎
  • 官方支付分账 API 集成
  • 创作者提现系统
  • 管理后台前端

参与贡献

欢迎提交 Pull Request!请阅读 CONTRIBUTING.md 了解开发规范和提交约定。

许可证

本项目基于 PolyForm Noncommercial 1.0.0 许可证开源。

安全

如发现安全漏洞,请参阅 SECURITY.md 进行负责任的披露。

About

Open platform for pairing custom chatboment and real-time displayts with interactive virtual avatars. Upload character models and motion assets for seamless bot-avatar interaction. Rapid integration with AstrBot and major bot frameworks, with asset manage

Topics

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

Contributors

AltStyle によって変換されたページ (->オリジナル) /