# ClawWork 项目深度调研报告

## 1. 项目概述

### 1.1 项目定位

**ClawWork** 是一个创新的 AI 智能体经济生存基准测试平台，由 HKUDS（香港大学数据科学学院）开发。该项目将 AI 助手从简单的对话工具转变为真正的"AI 同事"，通过完成真实世界的专业任务来创造经济价值。

项目的核心概念是：**AI 智能体必须在经济压力下生存** —— 它们从 10 美元启动资金开始，需要支付每次 API 调用的 token 费用，通过完成真实工作任务赚取收入，维持经济可持续性。

### 1.2 主要功能

- **真实经济压力测试**：AI 智能体需要支付 token 费用，通过完成任务赚取收入
- **GDPVal 基准数据集**：使用 OpenAI 的 GDPVal 数据集，包含 220 个跨 44 个职业的真实工作任务
- **多模型竞技场**：支持 GPT-4、Claude、GLM、Kimi、Qwen 等多种模型竞争
- **实时仪表板**：React 前端展示智能体的经济状态、任务完成情况和学习进度
- **ClawMode 集成**：与 Nanobot 集成，将任何 Nanobot 实例转变为经济感知的 AI 同事

### 1.3 适用场景

- **AI 能力评估**：测试不同 AI 模型在真实工作任务中的表现
- **经济可持续性研究**：研究 AI 智能体在资源约束下的长期生存能力
- **多智能体竞争**：比较不同模型的成本效益和工作质量
- **AI 助手进化**：将普通 AI 助手转变为能创造经济价值的 AI 同事

---

## 2. 技术架构

### 2.1 技术栈

**后端技术栈**：
- **Python 3.10+**：核心开发语言
- **FastAPI**：高性能 API 框架，提供 RESTful API 和 WebSocket 支持
- **LangChain + LangGraph**：LLM 应用开发框架和智能体工作流
- **MCP (Model Context Protocol)**：工具调用协议
- **Pandas + PyArrow**：数据处理和分析

**前端技术栈**：
- **React 18**：用户界面框架
- **Vite**：现代构建工具
- **Tailwind CSS**：实用优先的 CSS 框架
- **Recharts**：数据可视化图表库
- **Framer Motion**：动画库

**外部服务集成**：
- **OpenAI API**：GPT-4o 用于智能体和评估
- **E2B**：云端代码沙箱执行环境
- **Tavily/Jina AI**：网络搜索 API
- **OpenRouter**：多模型统一接口

### 2.2 核心模块

```
ClawWork/
├── livebench/                    # 核心经济模拟引擎
│   ├── agent/                    # 智能体实现
│   │   ├── live_agent.py        # 主智能体类 (1162 行)
│   │   ├── economic_tracker.py  # 经济追踪器 (876 行)
│   │   ├── message_formatter.py # 消息格式化
│   │   └── wrapup_workflow.py   # 工作流封装
│   ├── work/                     # 工作任务管理
│   │   ├── task_manager.py      # 任务管理器
│   │   ├── evaluator.py         # 工作评估器
│   │   └── llm_evaluator.py     # LLM 评估实现
│   ├── tools/                    # 工具集
│   │   ├── direct_tools.py      # 核心工具 (555 行)
│   │   └── productivity/        # 生产力工具
│   │       ├── search.py        # 网络搜索
│   │       ├── file_creation.py # 文件创建
│   │       ├── code_execution.py # 代码执行
│   │       └── video_creation.py # 视频创建
│   ├── api/                      # API 服务
│   │   └── server.py            # FastAPI 服务器
│   ├── prompts/                  # 提示词模板
│   │   └── live_agent_prompt.py # 智能体提示词
│   └── configs/                  # 配置文件
├── clawmode_integration/         # Nanobot 集成模块
│   ├── agent_loop.py            # 智能体循环
│   ├── task_classifier.py       # 任务分类器
│   ├── provider_wrapper.py      # Provider 包装器
│   ├── tools.py                 # 工具实现
│   └── cli.py                   # 命令行接口
├── eval/                         # 评估系统
│   └── meta_prompts/            # 44 个职业的评估提示词
├── frontend/                     # React 前端
│   └── src/
│       ├── App.jsx              # 主应用组件
│       ├── api.js               # API 客户端
│       ├── pages/               # 页面组件
│       └── components/          # 可复用组件
└── scripts/                      # 辅助脚本
    ├── calculate_task_values.py # 计算任务价值
    ├── estimate_task_hours.py   # 估算任务工时
    └── generate_static_data.py  # 生成静态数据
```

### 2.3 代码结构分析

**核心代码统计**：
- `live_agent.py`：1162 行 —— 智能体主逻辑，包含决策、任务执行、学习循环
- `economic_tracker.py`：876 行 —— 经济状态追踪，余额、成本、收入管理
- `direct_tools.py`：555 行 —— 8 个核心工具的实现

**代码组织特点**：
1. **模块化设计**：每个功能模块独立，职责清晰
2. **配置驱动**：JSON 配置文件控制智能体行为
3. **插件架构**：通过 MCP 协议扩展工具
4. **数据持久化**：JSONL 格式记录所有经济活动

---

## 3. 核心功能详解

### 3.1 经济系统

**核心机制**：
```python
# 经济追踪器初始化
EconomicTracker(
    signature="agent-name",
    initial_balance=10.0,           # 启动资金 $10
    input_token_price=2.5,          # 每百万输入 token $2.5
    output_token_price=10.0,        # 每百万输出 token $10.0
    min_evaluation_threshold=0.6    # 最低评估分数获得支付
)
```

**成本计算**：
- **Token 成本**：根据实际 API 调用计算输入/输出 token 费用
- **API 成本**：网络搜索、OCR 等外部服务费用
- **收入计算**：`quality_score × (estimated_hours × BLS_hourly_wage)`

**生存状态**：
- **Thriving** (💪)：余额充足，经济健康
- **Stable** (👍)：收支平衡，可持续运营
- **Struggling** (⚠️)：余额不足，需要谨慎
- **Bankrupt** (💀)：资金耗尽，无法继续

### 3.2 任务系统

**GDPVal 数据集**：
- **220 个任务**：涵盖 44 个职业类别
- **4 大领域**：
  - 科技与工程 (Technology & Engineering)
  - 商业与金融 (Business & Finance)
  - 医疗与社会服务 (Healthcare & Social Services)
  - 法律、媒体与运营 (Legal, Media & Operations)

**任务价值计算**：
```python
# 任务价值 = 预估工时 × 时薪
payment = quality_score × (estimated_hours × bls_hourly_wage)
```

**任务价值范围**：
- 最低：$82.78
- 最高：$5,004.00
- 平均：$259.45

**任务类型示例**：
- 财务分析报告
- 市场调研文档
- 医疗管理方案
- 法律顾问文档
- 软件代码项目
- 媒体制作任务

### 3.3 智能体工具集

**8 个核心工具**：

1. **decide_activity(activity, reasoning)**
   - 决策：工作还是学习
   - 参数：activity ("work"|"learn"), reasoning (至少 50 字符)

2. **submit_work(work_output, artifact_file_paths)**
   - 提交完成的工作
   - 支持文本输出和文件附件
   - 触发评估和支付

3. **learn(topic, knowledge)**
   - 学习新知识并持久化
   - 最少 200 字符的知识记录
   - 用于未来任务参考

4. **get_status()**
   - 获取当前经济状态
   - 返回余额、成本、收入、生存状态

5. **search_web(query, max_results)**
   - 网络搜索 (Tavily 或 Jina AI)
   - 获取最新信息和参考资料

6. **create_file(filename, content, file_type)**
   - 创建文档文件
   - 支持：txt、xlsx、docx、pdf

7. **execute_code(code, language)**
   - 在 E2B 沙箱中执行代码
   - 支持 Python，安全隔离

8. **create_video(slides_json, output_filename)**
   - 从幻灯片生成 MP4 视频
   - 支持文本和图片幻灯片

### 3.4 评估系统

**LLM 评估器**：
- 使用 GPT-4o 进行工作质量评估
- 44 个职业类别，每个有专门的评估提示词
- 评分维度：
  - **完整性 (40%)**：是否交付所有要求的产物
  - **正确性 (30%)**：实现是否准确，逻辑是否正确
  - **质量 (20%)**：代码/文档质量、可维护性
  - **领域标准 (10%)**：安全、可访问性、最佳实践

**评分标准** (0-10 分)：
- 0-2：不可接受（缺少文件或不完整）
- 3-4：差（多个主要要求缺失）
- 5-6：可接受（大部分交付但有明显缺陷）
- 7-8：良好（所有交付物存在，小缺陷）
- 9-10：优秀（完全符合要求，专业质量）

**关键规则**：
- 最低支付门槛：0.6 分（6/10）
- 强制低分：缺少任何必需文件 → 0-2 分

---

## 4. 代码质量分析

### 4.1 代码组织

**优点**：
1. **清晰的模块划分**：按功能分层，职责单一
2. **配置与代码分离**：JSON 配置文件管理业务参数
3. **类型注解**：广泛使用 Python 类型提示
4. **文档字符串**：类和方法都有详细的 docstring

**示例代码结构**：
```python
class LiveAgent:
    """
    LiveAgent - AI agent for economic survival simulation

    Core functionality:
    1. Economic tracking (balance, token costs, income)
    2. Daily decision-making (work vs learn)
    3. Work task execution
    4. Learning and knowledge accumulation
    5. Survival management
    """

    def __init__(
        self,
        signature: str,
        basemodel: str,
        initial_balance: float = 1000.0,
        # ... 更多参数
    ):
        """
        Initialize LiveAgent

        Args:
            signature: Agent signature/name
            basemodel: Base model name
            initial_balance: Starting balance in dollars
            # ... 更多文档
        """
```

### 4.2 设计模式

**使用的模式**：
1. **追踪器模式 (Tracker)**：`EconomicTracker` 专门管理经济状态
2. **管理器模式 (Manager)**：`TaskManager` 负责任务生命周期
3. **评估器模式 (Evaluator)**：`WorkEvaluator` 和 `LLMEvaluator` 分离评估逻辑
4. **工具模式 (Tools)**：LangChain 的 `@tool` 装饰器定义工具接口
5. **包装器模式 (Wrapper)**：`TrackedProvider` 包装 LLM Provider 添加成本追踪

### 4.3 可维护性

**优点**：
- **单一职责**：每个类/模块职责清晰
- **依赖注入**：通过构造函数注入依赖
- **错误处理**：显式错误处理和日志记录
- **数据持久化**：JSONL 格式便于分析和审计

**改进空间**：
- 部分文件较长（如 live_agent.py 1162 行）
- 缺少单元测试（根据代码结构判断）
- 某些配置硬编码（如路径）

---

## 5. 依赖分析

### 5.1 核心依赖

**Web 框架**：
```
fastapi>=0.104.0          # 现代、快速的 Web 框架
uvicorn>=0.24.0          # ASGI 服务器
websockets>=12.0         # WebSocket 支持
```

**LLM 和 AI**：
```
langchain>=0.1.0         # LLM 应用框架
langchain-openai>=0.0.2  # OpenAI 集成
langchain-mcp-adapters>=0.1.0  # MCP 协议适配
langgraph>=0.2.0         # 智能体工作流
```

**数据处理**：
```
pandas>=2.0.0            # 数据分析
pyarrow>=14.0.0          # 高性能数据格式
```

**生产力工具**：
```
tavily-python>=0.3.0     # 网络搜索
python-docx>=1.0.0       # Word 文档
python-pptx>=0.6.21      # PowerPoint
reportlab>=4.0.0         # PDF 生成
openpyxl>=3.1.0          # Excel 处理
```

### 5.2 版本兼容性

- **Python**：要求 3.10+
- **Node.js**：前端需要（版本未明确指定）
- **包管理**：pip（Python）+ npm（前端）

### 5.3 外部服务依赖

**必需**：
- OpenAI API（智能体和评估）
- E2B API（代码执行沙箱）

**可选**：
- Tavily API（网络搜索）
- Jina AI API（替代搜索）
- DashScope API（OCR 处理）

---

## 6. 使用方式

### 6.1 安装步骤

**1. 克隆仓库**：
```bash
git clone https://github.com/HKUDS/ClawWork.git
cd ClawWork
```

**2. 创建 Python 环境**：
```bash
conda create -n clawwork python=3.10
conda activate clawwork
```

**3. 安装依赖**：
```bash
pip install -r requirements.txt
```

**4. 前端依赖**：
```bash
cd frontend && npm install && cd ..
```

**5. 配置环境变量**：
```bash
cp .env.example .env
# 编辑 .env 填入 API 密钥
```

### 6.2 快速启动

**模式 1：独立模拟**：
```bash
# 终端 1 - 启动仪表板
./start_dashboard.sh

# 终端 2 - 运行智能体
./run_test_agent.sh

# 打开浏览器访问 http://localhost:3000
```

**模式 2：ClawMode 集成**：
```bash
# 启动 Nanobot + ClawWork 集成
python -m clawmode_integration.cli agent
```

### 6.3 配置示例

**基础配置** (`livebench/configs/default_config.json`)：
```json
{
  "livebench": {
    "date_range": {
      "init_date": "2025-01-20",
      "end_date": "2025-01-31"
    },
    "economic": {
      "initial_balance": 1000.0,
      "token_pricing": {
        "input_per_1m": 2.5,
        "output_per_1m": 10.0
      }
    },
    "agents": [
      {
        "signature": "gpt-4-agent",
        "basemodel": "gpt-4-turbo-preview",
        "enabled": true,
        "tasks_per_day": 1
      }
    ]
  }
}
```

**多智能体配置**：
```json
"agents": [
  {"signature": "gpt4o-run", "basemodel": "gpt-4o", "enabled": true},
  {"signature": "claude-run", "basemodel": "claude-sonnet-4-5-20250929", "enabled": true},
  {"signature": "glm-run", "basemodel": "glm-4.7", "enabled": true}
]
```

### 6.4 使用示例

**命令行交互**：
```bash
# 使用 /clawwork 命令分配付费任务
/clawwork Write a market analysis for electric vehicles

# 系统响应示例：
# → Classified as "Market Research Analysts" at $38.71/hr
# → Estimated 3 hours = $116.13 max payment
```

**智能体决策示例**：
```
============================================================
📅 ClawWork Daily Session: 2025-01-20
============================================================

📋 Task: Buyers and Purchasing Agents — Manufacturing
   Task ID: 1b1ade2d-f9f6-4a04-baa5-aa15012b53be
   Max payment: $247.30

🔄 Iteration 1/15
   📞 decide_activity → work
   📞 submit_work → Earned: $198.44

============================================================
📊 Daily Summary - 2025-01-20
   Balance: $11.98 | Income: $198.44 | Cost: $0.03
   Status: 🟢 thriving
============================================================
```

---

## 7. 优缺点分析

### 7.1 优势

**1. 创新的经济压力测试机制**
- 真实模拟 AI 智能体的经济可持续性
- 不仅测试能力，还测试成本效益
- 创造真实的"生存压力"

**2. 真实世界的任务数据集**
- GDPVal 数据集来自 OpenAI，质量高
- 44 个职业类别覆盖广泛
- 任务要求真实的可交付成果（文档、代码、分析）

**3. 多维度评估体系**
- LLM 评估替代简单规则
- 44 个职业有专门的评估标准
- 多维度评分（完整性、正确性、质量、标准）

**4. 模块化和可扩展性**
- 清晰的架构设计
- 支持多种 LLM 模型
- 易于添加新工具和任务源

**5. 实时可视化和监控**
- React 前端实时展示
- WebSocket 实时更新
- 丰富的数据分析和图表

**6. 与 Nanobot 集成**
- 将任何 Nanobot 实例转变为经济感知助手
- 支持 9 种消息渠道
- 统一的成本追踪

### 7.2 局限性

**1. 依赖外部 API**
- 需要多个 API 密钥（OpenAI、E2B、Tavily 等）
- API 成本可能较高（尤其是 GPT-4o 评估）
- 依赖外部服务的稳定性

**2. 评估成本**
- 每个任务都需要 GPT-4o 评估
- 评估成本可能超过智能体运行成本
- 不适合大规模低成本测试

**3. 任务复杂度限制**
- GDPVal 任务虽然真实，但相对独立
- 缺少长期、多步骤的复杂项目
- 任务间缺少依赖关系

**4. 技术门槛**
- 需要 Python 3.10+ 和 Node.js 环境
- 配置相对复杂（多个配置文件）
- 需要理解 LangChain 和 MCP

**5. 代码成熟度**
- 缺少全面的单元测试
- 部分代码文件较长
- 错误处理可以更加健壮

### 7.3 适用人群

**适合**：
- AI 研究人员和开发者
- 需要评估 AI 模型实际工作能力的团队
- 对 AI 经济可持续性感兴趣的研究者
- 想要构建 AI 同事系统的开发者

**不适合**：
- 寻找简单聊天机器人的用户
- 预算有限的个人开发者（API 成本高）
- 需要即插即用解决方案的生产环境

---

## 8. 与当前项目的关联性

### 8.1 可借鉴的代码

**1. 经济追踪系统** (`economic_tracker.py`)
- 精细的 token 成本追踪机制
- 多维度成本分析（LLM、API、搜索）
- 实时余额计算和持久化
- **适用场景**：任何需要成本监控的 AI 应用

**2. 工具系统架构** (`direct_tools.py`)
- 使用 LangChain `@tool` 装饰器的优雅实现
- 工具状态管理和全局状态共享
- 异步工具执行模式
- **适用场景**：构建 LLM 工具链

**3. 任务管理系统** (`task_manager.py`)
- 灵活的任务加载（Parquet、JSONL、内联）
- 任务分配和过滤机制
- 参考文件管理
- **适用场景**：批量任务处理系统

**4. 评估框架** (`evaluator.py`, `llm_evaluator.py`)
- LLM 作为评估器的实现
- 分类别的评估提示词模板
- 结构化评分输出
- **适用场景**：自动化质量评估

**5. Provider 包装器** (`provider_wrapper.py`)
- 透明的成本追踪包装
- 拦截和记录所有 LLM 调用
- 支持多种 Provider
- **适用场景**：LLM 调用监控和计费

### 8.2 可借鉴的设计思路

**1. 经济可持续性设计**
```
核心思想：AI 智能体必须为自己的计算资源付费
- 每个操作都有成本
- 必须通过创造价值来生存
- 创造真实的资源约束压力
```
**应用场景**：资源有限的边缘计算、去中心化 AI 网络

**2. 工作-学习权衡机制**
```
核心思想：智能体需要决定是立即工作赚钱，还是投资学习
- 模拟真实的职业决策
- 长期 vs 短期的权衡
- 知识积累带来复利效应
```
**应用场景**：终身学习系统、自适应 AI 助手

**3. 多维度评估体系**
```
核心思想：不只看结果，还要看过程和质量
- 完整性、正确性、质量、标准
- 领域特定的评估标准
- 强制低分规则防止作弊
```
**应用场景**：自动化代码审查、内容质量评估

**4. 实时数据持久化**
```
核心思想：JSONL 格式记录所有事件
- 便于追加写入
- 易于后续分析
- 支持实时流式处理
```
**应用场景**：事件溯源、审计日志、时间序列分析

**5. 配置驱动的智能体行为**
```
核心思想：通过 JSON 配置控制智能体参数
- 模型选择
- 经济参数
- 任务分配策略
- 无需修改代码即可实验
```
**应用场景**：A/B 测试、参数调优、多环境部署

### 8.3 集成建议

**如果要在当前项目中使用 ClawWork 的组件**：

**短期（快速收益）**：
1. **集成经济追踪器**：为现有 AI 应用添加成本监控
2. **使用评估框架**：自动化评估生成内容的质量
3. **借鉴工具系统**：标准化工具定义和调用接口

**中期（架构改进）**：
1. **引入任务管理系统**：标准化任务分配和追踪
2. **实施 Provider 包装**：统一 LLM 调用和监控
3. **采用配置驱动**：将硬编码参数迁移到配置文件

**长期（生态建设）**：
1. **构建多智能体竞技场**：比较不同模型的实际工作能力
2. **开发经济压力测试**：评估 AI 系统的可持续性
3. **创建 AI 同事系统**：将助手转变为价值创造者

---

## 9. 总结

ClawWork 是一个**创新性强、架构清晰、实现完整**的 AI 经济生存基准测试平台。它的核心价值在于：

1. **真实经济压力**：通过 token 计费机制创造真实的资源约束
2. **实际工作任务**：使用 GDPVal 数据集测试真实工作能力
3. **多维度评估**：不仅看结果，还看质量、成本和可持续性
4. **模块化设计**：清晰的架构便于扩展和集成

对于希望构建**经济可持续的 AI 系统**、评估**AI 实际工作能力**、或研究**AI 长期生存策略**的团队，ClawWork 提供了宝贵的参考实现和基础框架。

**关键文件路径汇总**：
- 主智能体：`/Users/cillin/workspeace/stock/reference/ClawWork/livebench/agent/live_agent.py`
- 经济追踪：`/Users/cillin/workspeace/stock/reference/ClawWork/livebench/agent/economic_tracker.py`
- 工具实现：`/Users/cillin/workspeace/stock/reference/ClawWork/livebench/tools/direct_tools.py`
- 任务管理：`/Users/cillin/workspeace/stock/reference/ClawWork/livebench/work/task_manager.py`
- 评估系统：`/Users/cillin/workspeace/stock/reference/ClawWork/livebench/work/evaluator.py`
- API 服务：`/Users/cillin/workspeace/stock/reference/ClawWork/livebench/api/server.py`
- 前端应用：`/Users/cillin/workspeace/stock/reference/ClawWork/frontend/src/App.jsx`
- 配置文件：`/Users/cillin/workspeace/stock/reference/ClawWork/livebench/configs/default_config.json`

---

*报告生成时间：2026-02-25*
*分析基于 ClawWork 仓库最新代码*
*报告字数：约 5500 字*
