Skip to content

narutoZed/agent-arena

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Agent Arena - 多 Agent 实时监控系统

🎯 实时监控多个 Agent 的运行状态、会话管理、任务派发和定时任务。

背景

Agent Arena 是基于 OpenClaw 的多 Agent 管理系统。OpenClaw 是一个开源的 Agent 编排框架,支持:

  • 多 Agent 协作 - 多个 Agent 可以相互配合完成复杂任务
  • 会话管理 - 自动记录 Agent 之间的对话历史
  • 定时任务 - 支持 cron 表达式和时间间隔的定时任务
  • 实时监控 - 监控 Agent 运行状态和 Token 使用量

本项目作为 OpenClaw 的可视化控制台,提供实时分数排名、任务派发、日志查看等功能。

Agent Battle 功能

基于 OpenClaw 的 Agent 对战模块,可以选择两个不同的 Agent 进行互动:

  • 辩论模式 - 两个 Agent 就某个主题展开辩论,正方陈述观点,反方反驳
  • 合作模式 - 两个 Agent 合作解决一个问题,各自贡献想法
  • 问答模式 - 一个 Agent 提问,另一个 Agent 回答

对战过程中会累积对话历史,让 Agent 能够看到对方之前的回复,实现真正的多轮互动。

功能特性

  • 📊 实时分数 - 基于 token 使用量和活跃会话计算分数
  • 💬 会话管理 - 查看每个 Agent 的会话列表和详情
  • 📝 任务派发 - 向指定 Agent 派发任务
  • 定时任务 - 管理 cron 任务(查看、启用、暂停、删除、编辑)
  • 📜 日志查看 - 查看 Agent 后台日志
  • ⚔️ Agent Battle - 两个 Agent 相互对战/讨论/问答

快速开始

cd server
node index.js

访问 http://localhost:18790

API 接口

接口 方法 说明
/api/status GET 获取所有 Agent 状态
/api/refresh-scores GET 强制刷新分数
/api/send-task/:agentId GET 派发任务
/api/tasks/:agentId GET 获取任务列表
/api/cron-jobs GET 获取定时任务列表
/api/cron-toggle/:id?enable=true POST 启用/暂停定时任务
/api/cron-delete/:id POST 删除定时任务
/api/agent-sessions/:agentId GET 获取会话列表
/api/session-detail/:key GET 获取会话详情
/api/gateway-log?agent=xxx GET 获取日志
/api/battle POST 创建对战
/api/battles GET 获取对战列表
/api/battle/:id GET 获取对战详情
/api/battle/:id/stop POST 停止对战

项目结构

agent-arena/
├── public/                 # 前端页面
│   ├── index.html
│   ├── styles.css
│   └── src/
│       ├── app.js         # 前端逻辑
│       └── render.js      # 渲染函数
├── server/                 # 后端服务
│   ├── index.js           # 入口
│   ├── config.js          # 配置
│   ├── api/               # API 路由
│   │   └── routes.js
│   ├── services/          # 业务服务
│   │   ├── scores.js      # 分数计算
│   │   ├── tasks.js       # 任务管理
│   │   ├── cron.js        # 定时任务
│   │   └── battle.js      # Agent 对战
│   └── utils/             # 工具函数
│       ├── paths.js       # 路径配置
│       ├── validation.js  # 输入验证
│       └── errors.js      # 错误处理
├── scripts/               # 脚本
│   └── collector.sh
└── tasks/                 # 任务数据

技术规范

  • ✅ 不可变性 - 不改变现有对象
  • ✅ 文件组织 - 多个小文件,高内聚低耦合
  • ✅ 错误处理 - 全面的错误处理和日志
  • ✅ 输入验证 - 系统边界处验证
  • ✅ 安全检查 - 无硬编码密钥

作者

Agent Arena Team

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors