Skip to content

jinjunfn/AgentPivot

Repository files navigation

Muti-Agent - 多 Agent 协作工作台

一个使用 Rust + Tauri + React + Three.js 构建的多 Agent 协作系统。 image

功能特性

1. 大模型配置中心

  • 卡片式展示已添加的大模型配置
  • 支持添加/编辑/删除模型配置
  • 支持自定义 API 地址和模型名称
  • 配置项包括:名称、提供商、API Key、Base URL、模型名称、最大 Token、温度等

2. MCP & Skills 管理

  • Skills:原子化能力单元,如文件读写、命令执行等
  • MCP:统一的上下文协议,确保不同模型可以统一接入
  • 支持启用/禁用各项功能
  • 卡片式展示,便于管理

3. 任务列表(房间系统)

  • 每个任务是一个独立的协作房间
  • 房间内可以添加多个 Agent
  • Agent 之间可以通过 @ 提及进行协作
  • 任务卡片显示运行状态、Agent 数量、消息数等

4. 任务详情页

  • 3D 房间展示:使用 Three.js 渲染 Agent 3D 模型
  • Agent 状态可视化:
    • 空闲:轻微上下浮动
    • 思考中:头顶显示气泡动画
    • 工作中:有工作动画
    • Token 消耗过高:头顶冒烟效果
  • 聊天界面:Agent 之间的对话记录
  • 分屏模式:同时查看 3D 房间和聊天
  • 快捷 @ 提及按钮

5. Agent 模板库

  • 预定义常用的 Agent 角色模板
  • 支持快速创建新任务时使用模板
  • 模板包含:角色描述、颜色、提示词、默认 Skills 和 MCP

技术栈

前端

  • React 19 - UI 框架
  • TypeScript - 类型安全
  • Tailwind CSS - 样式框架
  • Three.js - 3D 渲染
  • @react-three/fiber & drei - React 3D 库
  • Framer Motion - 动画效果
  • Lucide React - 图标
  • React Router - 路由管理

后端

  • Rust - 系统编程语言
  • Tauri 2.0 - 桌面应用框架
  • Tokio - 异步运行时
  • Serde - 序列化/反序列化
  • Chrono - 时间处理
  • UUID - 唯一标识符生成

项目结构

muti-agent/
├── src/                          # 前端源代码
│   ├── components/              # 通用组件
│   │   └── Sidebar.tsx         # 侧边栏导航
│   ├── pages/                  # 页面组件
│   │   ├── ModelConfigPage.tsx    # 大模型配置页
│   │   ├── MCPConfigPage.tsx      # MCP & Skills 页
│   │   ├── TasksPage.tsx          # 任务列表页
│   │   ├── TaskDetailPage.tsx     # 任务详情页
│   │   └── AgentTemplatesPage.tsx # Agent 模板页
│   ├── types/                  # TypeScript 类型定义
│   │   └── index.ts
│   ├── App.tsx                 # 主应用组件
│   ├── main.tsx                # 应用入口
│   └── index.css               # 全局样式
├── src-tauri/                  # Rust 后端代码
│   ├── src/
│   │   └── main.rs            # 主程序文件
│   ├── Cargo.toml             # Rust 依赖配置
│   └── tauri.conf.json        # Tauri 配置
├── index.html
├── package.json
├── vite.config.ts
├── tsconfig.json
├── tailwind.config.js
└── postcss.config.js

快速开始

前置要求

  • Node.js >= 20
  • Rust >= 1.70
  • Cargo (随 Rust 一起安装)

安装依赖

npm install

开发模式运行

npm run tauri dev

这会启动 Vite 开发服务器和 Tauri 应用窗口。

构建生产版本

npm run tauri build

构建产物会输出到 src-tauri/target/release/bundle/ 目录。

使用说明

1. 配置大模型

  1. 点击侧边栏的「模型配置」
  2. 点击「添加模型」按钮
  3. 填写模型信息(名称、提供商、API Key 等)
  4. 保存配置

2. 管理 Skills 和 MCP

  1. 点击侧边栏的「MCP & Skills」
  2. 切换 Skills 或 MCP 标签
  3. 启用/禁用需要的功能

3. 创建任务

  1. 点击侧边栏的「任务列表」
  2. 点击「创建任务」按钮
  3. 填写任务信息
  4. 从模板添加或创建自定义 Agent

4. Agent 协作

  1. 进入任务详情页
  2. 在聊天框输入消息
  3. 使用快捷按钮或手动 @ 提及 Agent
  4. 在 3D 房间观察 Agent 状态和交互

核心概念

Agent

  • 每个 Agent 有独立的角色、提示词、Skills、MCP
  • 运行在独立的任务房间内
  • 有自己的状态(空闲/思考/工作/等待/错误)
  • 可以使用配置的大模型

Task Room(任务房间)

  • 一个独立的协作环境
  • 包含多个 Agent
  • 有聊天历史和任务状态
  • 房间之间完全隔离

Skill(技能)

  • 可被 Agent 调用的能力
  • 如:文件读写、命令执行、网络请求等
  • 可以启用/禁用

MCP (Model Context Protocol)

  • 统一的消息格式
  • 确保不同模型可以统一接入
  • 提供工具调用标准

开发计划

  • 持久化存储(SQLite/PostgreSQL)
  • 真实的 LLM API 集成
  • Skill 执行引擎
  • Agent 状态持久化
  • 任务历史记录
  • 更多 3D 动画和交互
  • 插件系统(第三方 Skills)
  • 多机协作(网络通信)

许可证

MIT

About

本项目是一套多智能体(Agent)协同交互可视化平台,支持多个 AI Agent 同空间实时协作、自由对话沟通,全程可追溯查看 Agent 间聊天交互记录;同时可视化呈现每个 Agent 在独立房间内的实时生存状态,包含休眠、思考、工作执行等行为模式,完整复刻智能体群居栖息、自主流转、分工协作的运行生态。

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages