# AgentEvalTool

> **当前版本**：v1.0.0 · 已部署至 t480 开发线与 volcengine-102 正式线 · [发布说明](docs/release-notes-v1.0.md)

智能体质量评估工具集平台。

## 功能

- 评测对象管理（AI 数字员工 / AI 助手）
- 评测场景管理（YAML/JSON 配置 + 模板库 + 动态用例生成）
- 异步评测执行引擎（真并发 / 真取消 / 可配置超时 / WS 实时进度）
- 评测通道：tutu-api / HTTP / OpenClaw
- 评估规则：关键词、响应时间、LLM 评分、语义相似度、JSON Schema、安全检测 + all/any/weighted 组合
- 模型配置中心（统一凭据管理 + Fernet 加密 + OpenAI/Anthropic/DashScope/Gemini 协议）
- 报告生成（JSON / HTML / Markdown / 同场景对比报告）+ Webhook 通知
- 触发来源标记（手动 / AI 助手 / CLI）+ AI 助手标准化评测链路
- 简单登录（访问密码 + 会话 token，未配置零打扰）
- 运营仪表盘（指标卡 / 趋势 / 场景表现 / 触发来源分布）
- 文件管理（分类树 + 上传下载）
- OpenClaw 免登录 iframe 集成 + 标准 agenteval-run 技能
- 周期评估活动（耐久调度、探索式评测、智能分析、周期对比）
- OpenClaw 驱动的独立智能评估（规划、审批、会话执行、结构化报告）
- Web 管理后台（FastAPI + React）

## v1.0 亮点

- **双评测体系**：静态评估以考纲和规则为权威；智能评估由 OpenClaw 规划并模拟真实用户行为。
- **周期质量运营**：Campaign 支持耐久调度、探索发现、智能分析和跨周期对比。
- **耐久架构**：数据库保存运行与智能作业权威状态，进程重启后可按明确边界恢复。
- **统一管理后台**：详情与报告采用 Drawer/页内视图，列表、轮询、反馈和危险操作遵循一致交互基线。
- **双线部署**：t480 用于开发验证，volcengine-102 通过不可变镜像、数据备份和迁移发布正式服务。
- **测试基线**：后端 744 项、前端 15 项自动化测试通过。

## 快速开始

### 安装

```bash
pip install -e ".[dev]"
```

### CLI 使用

```bash
# 查看帮助
agenteval --help

# 添加评测对象
agenteval target add --name "社区医院AI客服" --config config/config.json

# 导入评测场景
agenteval scenario import data/scenarios/health_basic.yaml

# 执行评测
agenteval run start --target <target-id> --scenario <scenario-id>

# 查看报告
agenteval report show <run-id> --format json
agenteval report generate <run-id> --format html
```

### 启动 Web 后台

```bash
agenteval server start --host 0.0.0.0 --port 8000
```

### 启动 Web 前端

```bash
cd frontend/web
npm install
npm run dev
```

## 文档

完整的文档集位于 `docs/` 目录：

- **[文档索引](docs/README.md)** - 文档导航和快速查找
- **[v1.0 发布说明](docs/release-notes-v1.0.md)** - 当前发布能力与验收基线
- **[需求分析](docs/requirements-v1.0.md)** - 项目背景、功能需求、验证标准
- **[架构设计](docs/architecture-v1.0.md)** - 系统架构、核心抽象、项目结构
- **[数据模型](docs/data-models-v1.0.md)** - 数据库表结构、模型关系
- **[API 参考](docs/api-reference/)** - CLI 命令和 Web API 文档
- **[部署文档](docs/deployment/)** - 部署指南和运维说明
- **[使用指南](docs/guides/)** - 快速开始和详细使用指南
- **[外部参考](docs/external-references/)** - tutu-api 等外部文档

## 项目结构

```
AgentEvalTool/
├── backend/                # Python 后端代码
│   ├── agenteval/          # 核心 Python 库
│   │   ├── channels/       # 消息通道适配器
│   │   ├── agents/         # 评测智能体适配器
│   │   ├── scenarios/      # 评测场景模型和加载
│   │   ├── evaluation/     # 评估引擎和规则
│   │   ├── storage/        # 数据持久化（SQLite）
│   │   └── web/            # FastAPI Web 后台
│   ├── cli/                # CLI 命令入口
│   └── plugins/            # 外部平台插件
│       └── openclaw/       # OpenClaw 插件示例
├── frontend/               # React 前端
│   └── web/                # Web 管理界面
├── config/                 # 配置文件
│   └── config.json         # tutu-api 配置
├── scripts/                # 工具脚本
│   └── mock_call.py        # API 测试脚本
├── docs/                   # 完整文档集
│   ├── requirements-v1.0.md
│   ├── architecture-v1.0.md
│   ├── data-models-v1.0.md
│   ├── api-reference/
│   ├── deployment/
│   ├── guides/
│   └── external-references/
├── deploy/                 # 部署配置
│   └── t480/               # t480 服务器部署
├── data/                   # 本地数据和报告
│   ├── scenarios/          # 场景 YAML 文件
│   ├── reports/            # 生成的 HTML/JSON 报告
│   └── agenteval.db        # SQLite 数据库
└── tests/                  # 测试
    ├── unit/
    └── integration/
```

## 架构说明

AgentEvalTool 采用"CLI 工具集 + Web 后台"的交付方式：

- CLI 是核心能力入口，OpenClaw 可通过插件调用 CLI 完成评测自闭环。
- Web 后台提供可视化的对象、场景、执行、报告管理。
- 消息通道、评测智能体、评估规则均通过抽象接口定义，便于后续扩展。

## 许可证

MIT
