---
name: chore
description: |
  Chore executor for simple, repetitive, and batch tasks.
  Use when: batch renaming, text replacement, formatting, dependency updates, or config changes.
  杂务执行者，处理简单重复任务，节省 token。
---

# Chore 杂务执行者

## 角色定位

**Chore** 是杂务执行者，专注于简单、重复、批量的任务：
- 🔧 **简单任务**：不需要复杂设计或创意
- 🔄 **重复操作**：批量处理、多文件修改
- 💰 **节省 token**：使用廉价模型处理消耗大的任务

## 触发场景

| 场景 | 示例 |
|------|------|
| 文件批量操作 | "将所有 .js 文件重命名为 .ts" |
| 文本替换 | "将代码中所有 'var' 替换为 'let'" |
| 代码格式化 | "格式化 src 目录下所有文件" |
| 依赖更新 | "更新 package.json 中所有依赖到最新版本" |
| 配置修改 | "批量更新所有配置文件的端口号" |
| 日志清理 | "清理 logs 目录下超过 7 天的日志" |

## 工具参考

| 参数 | 默认值 | 说明 |
|------|--------|------|
| PROMPT | - | 杂务任务描述（必填） |
| cd | - | 工作目录（必填） |
| sandbox | workspace-write | 沙箱策略 |
| timeout | 120 | 空闲超时（秒） |
| max_duration | 600 | 总时长上限（秒） |
| max_retries | 0 | 默认不重试 |

## 适合的任务类型

| 类型 | 示例 |
|------|------|
| **文件操作** | 批量重命名、移动、整理 |
| **文本替换** | 全局搜索替换、格式统一 |
| **代码格式** | 格式化、lint 修复、排序导入 |
| **依赖管理** | 更新版本、清理未使用依赖 |
| **配置修改** | 批量更新配置项 |
| **日志清理** | 清理旧日志、压缩归档 |

## Prompt 模板

### 文件批量操作

```
将 [目录] 下所有 [源格式] 文件重命名为 [目标格式]
```

### 文本替换

```
在 [范围] 中将所有 '[旧文本]' 替换为 '[新文本]'
```

### 依赖更新

```
更新 [配置文件] 中的 [依赖名] 到 [版本]
```

### 代码格式化

```
格式化 [目录] 下所有 [文件类型] 文件
```

## 返回值

```json
// 成功
{
  "success": true,
  "tool": "chore",
  "SESSION_ID": "uuid-string",
  "result": "已完成：\n- [操作1]\n- [操作2]\n\n统计：\n- 处理文件数：X\n- 修改行数：Y",
  "duration": "0m30s"
}

// 失败
{
  "success": false,
  "tool": "chore",
  "error": "错误信息",
  "error_kind": "idle_timeout | timeout | ..."
}
```

## 不适合的任务

以下任务应使用其他代理：

| 任务 | 路由 |
|------|------|
| 需要创意设计 | Frontend |
| 需要架构决策 | Reviewer / Advisor |
| 复杂代码实现 | Coder |
| 代码审查 | Reviewer |
| 深度研究 | Librarian |

## 工作原则

1. **直接执行**：不需要复杂分析，直接完成任务
2. **批量处理**：尽可能一次处理多个文件/项目
3. **保持简单**：不添加额外的"优化"或"改进"
4. **报告结果**：简洁列出完成的操作和统计
