← 返回聊天
📖 项目简介
Hermes Cluster 是一个多 Agent 协作的 AI 助手集群系统,由一个 Master 节点和多个 Worker 节点组成。通过 H5 聊天界面,可以同时与多个 AI Agent 对话。
🏗️ 系统架构
- Master 节点:运行 hermes-master(Docker 容器),提供 Flask 服务和 H5 聊天界面
- Worker 节点:各机器运行 Hermes Agent(HTTP API,端口 8642),Master 通过 HTTP 转发请求到对应 Worker,再由 Worker 上的 Hermes Agent 处理并返回结果
- LLM 模型:支持 MiniMax-M2.7、Ollama Cloud (gemma3:27b-cloud)、本地模型 (qwen3.5:9b)
- 公网访问:frpc 内网穿透,Master 端口 5000 → 154.221.21.243:23088
💬 H5 聊天
- 访问地址:154.221.21.243:23088/chat
- 当前成员:墨斯-管理员 (MiniMax-M2.7)、小智 (MiniMax-M2.7)、呆呆 (Owl, gpt-oss:120b-cloud)、米粒 (Cat, gemma3:27b-cloud)
- 支持响应式(手机/PC)
- 聊天记录存储在 SQLite 数据库
🔌 主要 API
- GET /api/members — 成员列表
- POST /api/history/<id> — 发送消息
- GET /api/workers — Worker 列表
- POST /api/notify — 发送推送通知
- GET /api/subscribe — SSE 订阅推送
- POST /api/admin/members/<id>/delete — 删除成员
🚀 部署方式
Master 节点(已在运行):
docker-compose up -d hermes-master
添加新 Worker 节点:
给我 SSH 地址(IP + 端口 + 密码),我会自动完成:安装配置 hermes-worker → 启动 → 向 Master 注册心跳。
🛠️ 运维命令
# 查看容器状态
docker ps
# 查看 Master 日志
docker logs hermes-master -f
# 重启 Master(代码修改后)
echo 'bjy123' | sudo -S docker restart hermes-master
# 进入容器
docker exec -it hermes-master bash
# 测试推送通知
curl -X POST http://localhost:5000/api/notify \
-H "Content-Type: application/json" \
-d '{"type":"info","title":"标题","body":"内容"}'
# 测试 API
curl http://192.168.1.14:5000/api/members
📁 文件结构
/home/bjy/hermes-cluster/
├── master.py Flask 主程序 (H5 聊天路由 + API)
├── app.py 应用入口
├── models.py 数据模型 (消息/Members/Workers)
├── database.py SQLite 数据库封装
├── config.py 配置文件
├── requirements.txt Python 依赖
├── Dockerfile 容器镜像定义
├── docker-compose.yml Docker 编排 (master + frpc)
├── frpc.ini / frpc.toml frpc 内网穿透配置
├── cron_mosi_messages.py 定时消息脚本 (systemd timer)
├── hermes-worker.py Worker 主程序
├── hermes-worker-agent.py Worker Agent 核心
├── hermes-worker-simple.py 简化版 Worker
├── hermes-worker.service systemd 服务文件
├── start_cluster.py 集群启动脚本
├── worker.py Worker 封装
├── debug_run.sh 调试启动脚本
├── backup/ 备份目录
│ ├── routes_api_2026-04-24.py
│ ├── routes_chat_2026-04-24.py
│ └── models_2026-04-24.py
├── routes/ 路由模块
│ ├── api.py API 路由 (历史/轮询/注入)
│ ├── chat.py 聊天页面路由 + JS
│ ├── web.py Web 页面路由
│ └── admin.py 管理路由
├── results/chat_history/ 聊天历史 (JSON)
│ ├── members.json 成员配置
│ ├── members.db Members SQLite 数据库
│ ├── admin.json 墨斯-管理员 历史
│ ├── daidai.json 呆呆 历史
│ ├── mili.json 米粒 历史
│ └── Hermes-21.json 小智 历史
├── WORK_SUMMARY_*.md 工作日志
└── docs/
├── ARCHITECTURE.md 详细架构文档
├── AGENT_INTEGRATION.md Agent 集成文档
├── CSS_THEMES.md CSS 主题文档
├── help.html 帮助页面 (版本号写死在页面中)
├── VERSION 版本号文件 (v20260424t1)
└── *.pptx 项目介绍 PPT
📥 下载 PPT
📦 下载源码