AgentHub 是一个企业级AI智能体管理平台,采用领域驱动设计(DDD)架构模式,基于Spring Boot + Next.js全栈技术栈构建。平台提供了完整的AI智能体生命周期管理,从开发、测试到部署的全流程支持。
- 智能驱动: 不仅仅是聊天机器人,而是具备任务分解、工作流自动化能力的智能体
- 企业级: DDD架构设计,支持高并发、水平扩展和企业级安全
- 开放生态: 支持多种LLM提供商,提供工具市场生态
- 生产就绪: 容器化部署,完整的监控、日志和错误处理机制
- 邮箱注册/登录: 完整的用户注册和登录流程
- 密码重置: 基于邮箱验证的密码重置功能
- 验证码系统: 图形验证码防止恶意注册
- JWT认证: 无状态的用户认证机制
- 用户信息管理: 个人资料编辑和头像上传
- GitHub OAuth登录: 第三方账号快速登录
- 智能体创建: 支持聊天助手型和功能型智能体
- 版本控制系统: 完整的智能体版本管理
- 审核工作流: 草稿 → 审核 → 发布的完整流程
- 工作区管理: 用户个人智能体配置和模型设置
- 智能体市场: 浏览和使用已发布的智能体
- 实时对话: 基于SSE的流式对话输出
- 多轮对话: 支持复杂的多步骤交互
- 上下文管理: 智能的对话历史管理和总结
- Markdown渲染: 支持富文本消息显示
- 消息类型: 支持文本等多种消息类型
- 8阶段工作流: 初始化 → 问题分析 → 任务分解 → 执行 → 汇总
- 任务分解器: 智能分解复杂任务为可执行步骤
- 进度跟踪: 实时显示任务执行进度和状态
- 结果汇总: 自动汇总各子任务执行结果
- 事件驱动架构: AgentEventBus异步处理机制
- 工具上传: 支持多种工具上传方式
- 版本管理: 工具版本控制和更新机制
- 质量审核: 工具质量和安全性审核流程
- 市场浏览: 工具搜索、分类和推荐功能
- 工具安装: 一键安装工具到智能体工作区
- 多提供商支持: OpenAI、阿里云百炼、智谱AI等
- 统一抽象层: 屏蔽不同LLM提供商的技术差异
- 配置管理: 灵活的API密钥和模型参数配置
- 模型切换: 运行时动态切换模型和提供商
- 基础MCP支持: Model Context Protocol基础集成
- DDD架构: 基于领域驱动设计的四层架构
- 数据库设计: 完整的PostgreSQL数据库结构
- 容器化部署: Docker + Docker Compose一键部署
- API文档: RESTful API接口规范和文档
- 日志系统: 完整的请求和操作日志记录
- MCP协议服务器: 统一的MCP服务网关
- 工具集成管理: MCP工具的统一管理和调度
- 性能监控: MCP服务的性能指标监控
- 图像理解: 支持图片输入和图像分析
- 语音交互: 语音输入和语音合成功能
- 文档解析: PDF、Word等文档内容解析
- 多模态融合: 文本、图像、语音的综合处理
- 文档管理: 知识库文档的创建、编辑、删除
- 版本控制: 知识库文档的版本管理
- 向量化存储: 文档内容的向量化存储
- 相似度检索: 基于向量相似度的内容检索
- 上下文增强: 检索内容与对话上下文的智能融合
- 检索优化: 检索结果的相关性和准确性优化
- 知识图谱: 结构化知识表示和推理
- Token统计: 精确的用户Token使用量统计
- 计费规则: 灵活的计费策略和规则配置
- 账单管理: 用户账单生成和查看
- 支付集成: 支付宝、微信支付集成
- 套餐管理: 多种计费套餐和优惠方案
- Agent协作: 多个智能体的协同工作机制
- 任务分配: 智能任务分配和负载均衡
- 通信协议: Agent间通信协议和数据交换
- 冲突解决: 多Agent决策冲突的解决机制
- 协作优化: 协作效率和结果质量优化
- 监控告警: 系统运行状态监控和异常告警
- 性能优化: 数据库查询优化和缓存策略
- 安全加固: 安全漏洞扫描和防护措施
- API限流: 接口访问频率限制和防护
- 数据备份: 自动化数据备份和恢复机制
- 版本控制系统: 完整的智能体版本管理,支持发布审核工作流
- 多类型支持: 聊天助手型和功能型智能体
- 工作区管理: 用户自定义智能体配置和模型参数
- 生命周期管理: 草稿 → 审核 → 发布 → 下架的完整流程
平台核心的8阶段智能工作流,实现复杂任务的自动化处理:
初始化 → 问题分析 → 任务分解 → 分解完成 → 任务执行 → 执行完成 → 结果汇总 → 完成/失败
核心组件:
- 问题分析器: 智能判断用户请求类型
- 任务分解器: 将复杂任务分解为可执行的子任务
- 上下文管理器: 自动检测信息完整性,询问缺失信息
- 事件驱动架构: 基于AgentEventBus的异步处理机制
- 智能上下文窗口: 自动对话历史管理和智能总结
- 多轮对话支持: 处理复杂的多步骤交互场景
- 信息完整性检查: 自动识别并请求缺失的关键信息
- Token精确管理: 消息令牌计数和上下文优化策略
- 统一抽象层: 屏蔽不同LLM提供商的技术差异
- 热插拔支持: 运行时动态切换模型和提供商
- 配置管理: 灵活的API密钥和模型参数配置
- 成本优化: 智能模型选择和成本控制策略
- 层次化任务结构: 支持父子任务关系和依赖管理
- 进度跟踪: 完整的任务生命周期状态追踪
- 结果聚合: 自动收集和汇总子任务执行结果
- 失败恢复: 智能错误处理和任务重试机制
- 工具发布: 用户可以上传和分享自定义工具
- 版本管理: 工具版本控制和更新机制
- 审核机制: 工具质量和安全性审核
- 安装使用: 一键安装工具到智能体工作区
基于**领域驱动设计(DDD)**的四层架构模式:
┌─────────────────────────────────────────────────────────────┐
│ Interface Layer (接口层) │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ REST API │ │ DTO │ │Validation │ │
│ │ Controllers │ │ Conversion │ │ & Auth │ │
│ └─────────────┘ └─────────────┘ └─────────────┘ │
└─────────────────────────────────────────────────────────────┘
│
┌─────────────────────────────────────────────────────────────┐
│ Application Layer (应用层) │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │Agent Service│ │Conversation │ │ Workflow │ │
│ │Management │ │ Service │ │ Service │ │
│ └─────────────┘ └─────────────┘ └─────────────┘ │
└─────────────────────────────────────────────────────────────┘
│
┌─────────────────────────────────────────────────────────────┐
│ Domain Layer (领域层) │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ Entities │ │ Value Objects│ │Domain Events│ │
│ │ & Aggregates│ │ │ │ │
│ └─────────────┘ └─────────────┘ └─────────────┘ │
└─────────────────────────────────────────────────────────────┘
│
┌─────────────────────────────────────────────────────────────┐
│ Infrastructure Layer (基础设施层) │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ PostgreSQL │ │LangChain4j │ │ External │ │
│ │ Database │ │ Integration │ │ Services │ │
│ └─────────────┘ └─────────────┘ └─────────────┘ │
└─────────────────────────────────────────────────────────────┘
- Java 17 + Spring Boot 3.5.3 - 现代化Java企业级框架
- MyBatis-Plus 3.5.7 - 高性能ORM框架
- PostgreSQL 15 - 企业级关系型数据库
- LangChain4j 1.3.0 - AI模型集成框架
- 支持OpenAI、阿里云百炼、智谱AI等多种LLM提供商
- 集成MCP (Model Context Protocol)支持
- JWT认证 - 安全的用户认证和授权机制
- 事件驱动架构 - AgentEventBus异步消息处理
- Next.js 15 + React 19 - 现代化React全栈框架
- TypeScript 5 - 类型安全的JavaScript超集
- Tailwind CSS 4.1.9 - 原子化CSS框架
- Ant Design 5.26.7 - 企业级UI组件库
- Radix UI - 无头组件库,提供完全的可定制性
- Zustand - 轻量级状态管理方案
- React Hook Form + Zod - 高性能表单处理和验证
- AI SDK - Vercel AI对话集成支持
- react-markdown - Markdown内容渲染支持
- Docker + Docker Compose - 容器化部署方案
- Maven - Java项目依赖管理
- ESLint + Prettier - 代码质量保证
- PostgreSQL - 数据库初始化和管理
-
企业级DDD架构
- 清晰的领域边界和分层架构
- 高内聚低耦合,易于维护和扩展
- 支持水平扩展和高并发访问
-
智能化工作流引擎
- 业界领先的8阶段智能工作流
- 自适应任务分解和执行机制
- 基于事件驱动的异步处理架构
-
多模型统一管理
- 支持多种LLM提供商的无缝集成
- 统一的模型管理和配置界面
- 智能的模型选择和成本优化策略
-
生产就绪特性
- 完整的错误处理和异常恢复机制
- 详细的操作日志和审计追踪
- 容器化部署和自动化运维支持
-
提升开发效率
- 可视化的智能体开发工具
- 预构建的工作流模板库
- 快速的模型测试和部署流程
-
降低AI使用门槛
- 统一的多模型管理界面
- 智能的任务自动化处理
- 友好的用户交互体验设计
-
企业级安全保障
- 完整的权限管理体系
- 安全的API密钥管理机制
- 数据加密和隐私保护方案
- Docker 20.10+
- Docker Compose 2.0+
- 内存: 至少4GB RAM
- 存储: 至少2GB可用空间
# 1. 克隆项目
git clone https://github.com/the-wayee/AgentHub.git
cd AgentHub
# 2. 启动所有服务
docker compose up -d --build
# 3. 查看服务状态
docker compose ps
# 4. 访问应用
echo "前端界面: http://localhost:3000"
echo "后端API: http://localhost:8080/api"
echo "数据库: localhost:5432"# 确保PostgreSQL运行在localhost:5432
# 创建数据库agenthub
psql -U postgres -c "CREATE DATABASE agenthub;"
# 启动后端服务
mvn spring-boot:run
# 或使用Maven构建
mvn clean package
java -jar target/AgentHub-0.0.1-SNAPSHOT.jarcd AgentHub-Front
# 安装依赖
npm install
# 启动开发服务器
npm run dev
# 构建生产版本
npm run build
# 启动生产服务器
npm start┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ Users │ │ Agents │ │ AgentVersions │
│─────────────────│ │─────────────────│ │─────────────────│
│ id (PK) │ │ id (PK) │ │ id (PK) │
│ nickname │ │ name │ │ agent_id (FK) │
│ email │ │ description │ │ version_number │
│ password │ │ system_prompt │ │ system_prompt │
│ github_id │ │ agent_type │ │ publish_status │
│ created_at │ │ user_id (FK) │ │ user_id (FK) │
└─────────────────┘ │ created_at │ │ created_at │
└─────────────────┘ └─────────────────┘
│ │
│ │
└───────────┬───────────┘
│
┌─────────────────┐
│ Sessions │
│─────────────────│
│ id (PK) │
│ title │
│ user_id (FK) │
│ agent_id (FK) │
│ created_at │
└─────────────────┘
│
┌─────────────────┐
│ Messages │
│─────────────────│
│ id (PK) │
│ session_id (FK) │
│ role │
│ content │
│ message_type │
│ created_at │
└─────────────────┘
- users: 用户信息表,支持邮箱和GitHub登录
- agents: 智能体基本信息表
- agent_versions: 智能体版本管理表,支持审核流程
- sessions: 对话会话表
- messages: 消息记录表,支持多种消息类型
- context: 上下文管理表,智能对话历史管理
- agent_tasks: 任务执行表,支持层次化任务结构
- providers: LLM服务提供商表
- models: 模型信息表
- tools: 工具市场表
- tool_versions: 工具版本管理表
- user_tools: 用户工具关联表
DB_HOST=localhost # 数据库主机
DB_PORT=5432 # 数据库端口
DB_NAME=agenthub # 数据库名称
DB_USERNAME=postgres # 数据库用户名
DB_PASSWORD=postgres # 数据库密码# OpenAI配置
OPENAI_API_KEY=your_openai_key
OPENAI_BASE_URL=https://api.openai.com/v1
# 阿里云百炼配置
DASHSCOPE_API_KEY=your_dashscope_key
# 智谱AI配置
ZHIPUAI_API_KEY=your_zhipuai_key
# SiliconFlow配置
SILICONFLOW_API_KEY=your_siliconflow_key
SILICONFLOW_MODEL=Qwen/Qwen3-32BMAIL_HOST=smtp.gmail.com # SMTP服务器
MAIL_PORT=587 # SMTP端口
MAIL_USERNAME=your_email # 邮箱用户名
MAIL_PASSWORD=your_password # 邮箱密码- 多种登录方式: 邮箱注册/登录
- 密码重置: 基于邮箱验证的密码重置功能
- 验证码系统: 图形验证码防止恶意注册
- JWT认证: 无状态的用户认证机制
- 智能体创建: 支持聊天助手和功能型两种类型
- 版本控制: 完整的版本管理和发布流程
- 审核机制: 管理员审核智能体发布
- 工作区: 用户个人智能体配置和模型设置
- 实时对话: 基于sse的流式输出
- 上下文管理: 智能的对话历史管理和总结
- 多媒体支持: 支持文本、图片等多种消息类型
- Markdown渲染: 支持富文本消息显示
- 智能分析: 自动分析用户请求复杂度
- 任务分解: 将复杂任务分解为可执行步骤
- 进度跟踪: 实时显示任务执行进度
- 结果汇总: 自动汇总各子任务执行结果
- 工具上传: 支持多种工具上传方式
- 版本管理: 工具版本控制和更新
- 质量审核: 工具质量和安全性审核
- 市场浏览: 工具搜索、分类和推荐
- Fork项目 到个人GitHub仓库
- 创建功能分支 (
git checkout -b feature/amazing-feature) - 提交代码更改 (遵循项目代码规范)
- 推送分支 (
git push origin feature/amazing-feature) - 创建Pull Request 并填写详细的PR描述
<type>(<scope>): <subject>
<body>
<footer>提交类型说明:
feat: 新功能开发fix: Bug修复docs: 文档更新style: 代码格式调整(不影响功能)refactor: 代码重构perf: 性能优化test: 测试相关chore: 构建工具、依赖管理等
提交示例:
feat(back): 开发Agent问题分析处理器
- 实现问题复杂度分析工作流
- 添加问题分类和优先级判断功能
- 集成LangChain4j进行智能处理
Closes #123
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>- 后端代码: 遵循阿里巴巴Java开发规范,使用Maven进行构建管理
- 前端代码: 遵循TypeScript/React最佳实践,使用ESLint和Prettier保证代码质量
- 测试要求: 保持高测试覆盖率,包含单元测试和集成测试
- 文档要求: 重要的功能模块需要编写详细的技术文档
本项目采用 MIT许可证 - 查看 LICENSE 文件了解详情。
感谢以下优秀的开源项目:
- Spring Boot - 企业级Java开发框架
- Next.js - React全栈开发框架
- LangChain4j - Java AI应用开发框架
- Ant Design - 企业级UI设计语言
- Tailwind CSS - 实用优先的CSS框架
- PostgreSQL - 强大的开源数据库
- Docker - 容器化平台