|
|
||
|---|---|---|
| src | ||
| .gitignore | ||
| README.md | ||
| events.ndjson | ||
| generation.json | ||
| pom.xml | ||
README.md
多智能体协同研发辅助系统 - 底座平台
项目简介
本项目是一个基于 Spring Boot 3.x 构建的多智能体协同研发辅助系统底座平台,提供智能体注册与发现、执行流编排、任务调度、上下文管理等核心能力,支持第三方智能体快速接入。
技术栈
- Java 17
- Spring Boot 3.2.5
- Maven
- Knife4j / Swagger OpenAPI 3.0(接口文档)
核心功能
| 模块 | 说明 |
|---|---|
| 智能体管理 | 智能体注册、注销、查询、心跳检测、能力标签发现 |
| 执行流管理 | 执行流创建、查询、删除、触发执行 |
| 任务调度 | 执行流解析、依赖排序、节点状态跟踪(预留扩展) |
| 上下文管理 | 全局数据 + 节点输出 + 元信息分层传递(预留扩展) |
| 接口文档 | 集成 Knife4j + Swagger 3,提供可视化 API 调试页面 |
快速启动
前提条件
- JDK 17+
- Maven 3.6+
编译与运行
# 克隆项目后进入目录
cd multi-agent-platform
# 编译打包
mvn clean package -DskipTests
# 运行
java -jar target/demo-0.0.1-SNAPSHOT.jar
# 或者直接使用 Maven 运行
mvn spring-boot:run
访问接口文档
启动后访问以下地址:
- Knife4j UI: http://localhost:8080/doc.html
- Swagger UI: http://localhost:8080/swagger-ui.html
- OpenAPI JSON: http://localhost:8080/v3/api-docs
健康检查
curl http://localhost:8080/health
# 返回: {"status":"UP","timestamp":"...","service":"multi-agent-platform"}
API 概览
| 接口 | 方法 | 路径 | 说明 |
|---|---|---|---|
| 健康检查 | GET | /health |
系统健康状态 |
| 注册智能体 | POST | /api/v1/agent/register |
注册新智能体 |
| 注销智能体 | DELETE | /api/v1/agent/unregister?id=xxx |
注销指定智能体 |
| 查询智能体列表 | GET | /api/v1/agent/list?capability=xxx |
按能力标签或查询全部 |
| 查询智能体详情 | GET | /api/v1/agent/{id} |
查询单个智能体 |
| 更新心跳 | PUT | /api/v1/agent/{id}/heartbeat |
更新智能体心跳 |
| 创建执行流 | POST | /api/v1/flow |
创建执行流配置 |
| 获取执行流 | GET | /api/v1/flow/{id} |
获取执行流详情 |
| 查询所有执行流 | GET | /api/v1/flow |
获取全部执行流 |
| 删除执行流 | DELETE | /api/v1/flow/{id} |
删除执行流 |
| 触发执行流 | POST | /api/v1/flow/execute |
触发执行流运行 |
| 查询执行状态 | GET | /api/v1/flow/execution/{executionId} |
查询执行进度 |
项目结构
src/main/java/com/example/demo/
├── DemoApplication.java # 启动类
├── config/
│ └── OpenApiConfig.java # Swagger/Knife4j 配置
├── controller/
│ ├── HealthController.java # 健康检查
│ ├── BusinessController.java # 智能体管理 API
│ └── FlowController.java # 执行流管理 API
├── model/
│ ├── BusinessItem.java # 智能体元数据模型
│ ├── ExecutionFlow.java # 执行流配置模型
│ └── dto/
│ ├── ApiResponse.java # 统一响应封装
│ ├── AgentRegisterRequest.java # 注册请求
│ └── FlowExecuteRequest.java # 执行触发请求
├── service/
│ ├── BusinessService.java # 智能体服务接口
│ ├── BusinessServiceImpl.java # 智能体服务实现(内存)
│ ├── FlowService.java # 执行流服务接口
│ └── FlowServiceImpl.java # 执行流服务实现(内存)
src/test/java/com/example/demo/
├── DemoApplicationTests.java # 应用启动测试
└── BusinessServiceTest.java # 智能体服务单元测试
设计说明
当前实现(内存存储)
所有业务数据基于 ConcurrentHashMap 存储在内存中,无需安装任何外部中间件即可启动运行。适用于功能验证、开发调试与接口联调。
后续扩展预留
- Repository 层:当前 Service 直接操作内存 Map,后续可抽取 Repository 接口,对接 MySQL/PostgreSQL
- 缓存层:可引入 Redis 实现分布式缓存与心跳检测
- 消息队列:可引入 MQ 实现异步任务调度与事件通知
- 调度引擎:当前
executeFlow为模拟实现,后续可对接真正的拓扑排序 + 线程池调度 - 认证授权:可集成 Spring Security + JWT + RBAC
- 智能体 SDK:可提供标准 SDK 封装注册、心跳、执行等流程