---
created: "2026-04-06"
type: resource
tags: [resource, claude-code, AI-tools, autonomous-agent, agent-harness, ECC, windows-compatible]
source: "~/.claude/skills/autonomous-agent-harness/SKILL.md"
---

# Autonomous Agent Harness 自主代理框架

把 Claude Code 变成持久化、自驱动的 Agent 系统，替代 AutoGPT/Hermes。核心理念：不需要额外框架，用 Claude Code 原生能力（crons + dispatch + MCP + memory）就能构建自主 Agent。

相关笔记：[[Autonomous Loops 自主循环模式]]、[[dmux 多Agent并行编排]]、[[ECC 编排替代方案 (orchestrate 迁移)]]

## 架构

```
┌─────────────────────────────────────────────────────┐
│              Claude Code Runtime                     │
│                                                     │
│  Crons (定时)  Dispatch (远程)  Memory  Computer Use │
│      │              │            │          │       │
│      ▼              ▼            ▼          ▼       │
│  ┌───────────────────────────────────────────────┐  │
│  │         ECC Skill + Agent Layer               │  │
│  │  autonomous-loops / eval-harness / santa...   │  │
│  │  loop-operator / harness-optimizer agents     │  │
│  └───────────────────────────────────────────────┘  │
│      │              │            │          │       │
│      ▼              ▼            ▼          ▼       │
│  ┌───────────────────────────────────────────────┐  │
│  │           MCP Server Layer                    │  │
│  │  memory   github   exa   browser-use   ...    │  │
│  └───────────────────────────────────────────────┘  │
└─────────────────────────────────────────────────────┘
```

## 5 大核心组件

### 1. 三层记忆系统

| 层级 | 机制 | 生命周期 | 用途 |
|------|------|----------|------|
| 短期 | `TodoWrite` | 单次会话内 | 任务追踪 |
| 中期 | `~/.claude/projects/*/memory/*.md` | 跨会话 | 项目上下文 |
| 长期 | MCP Memory Server (知识图谱) | 永久 | 实体、关系、观察 |

### 2. 定时操作 (Crons)

```bash
# Claude Code 内置 cron 能力
# 例：每 30 分钟检查新 PR 并审查
Cron: every 30 min during work hours
1. Check for new PRs on watched repos
2. For each new PR: pull branch, run tests, review
3. Post review comments via GitHub MCP
4. Update memory with review status
```

### 3. 远程 Agent (Dispatch)

通过 `claude dispatch` 或 remote trigger 启动远程 Agent 实例。

### 4. Computer Use (MCP)

通过 MCP browser/desktop 服务器实现屏幕交互、浏览器操作。

### 5. 任务队列

基于 memory 的持久化任务队列，跨会话保持任务状态。

---

## 关键 Agent

### loop-operator

运行自主循环的安全操作员：

- 跟踪进度 checkpoint
- 检测停滞和重试风暴
- 失败重复时暂停并缩小范围
- 验证通过后才恢复

**升级条件**（任何一个为 true 则升级到人类）：
- 连续 2 个 checkpoint 无进展
- 重复相同 stack trace 的失败
- 成本漂移超出预算窗口
- merge 冲突阻塞队列

### harness-optimizer

优化 Agent 框架配置的专家：

1. 运行 `/harness-audit` 收集基线分数
2. 识别 top 3 杠杆点（hooks, evals, routing, context, safety）
3. 提出最小可逆配置变更
4. 应用并验证
5. 报告前后对比

---

## 核心设计原则

### 1. Eval-First（评估先行）

执行前定义完成标准。Eval 是 "AI 开发的单元测试"。

```
目标 pass@3 > 90%
- 定义 capability eval (新功能能做什么)
- 定义 regression eval (不破坏已有功能)
```

### 2. De-Sloppify（去粗糙化）

**永远不要给生成器加负面约束**（"不要做 X"）。让它自由生成，然后加独立清理 agent。

> 核心洞察：两个聚焦的 Agent 优于一个被约束的 Agent。

### 3. Santa Method（收敛循环）

```
Generator 生成
  → Reviewer A（安全+正确性）独立评估
  → Reviewer B（架构+测试）独立评估
  → 两者都 PASS 才算收敛
  → FAIL 则修复后用全新 Agent 重跑两个 Reviewer
  → 最多 3 轮，超过则上报人类
```

关键：Reviewer 从未看过 Generator 的推理过程，消除作者偏见。

### 4. 15 分钟单元规则

每个任务单元必须：
- 独立可验证
- 单一主要风险
- 明确的完成条件
- 约 15 分钟可完成

### 5. 分离上下文窗口

每个管道阶段在独立 Agent 进程中运行。不同阶段用不同模型：

| 阶段 | 模型 |
|------|------|
| Research | Sonnet |
| Plan | Opus |
| Implement | Sonnet / Codex |
| Review | Opus |

### 6. 循环安全

- **必须有退出条件**：max-runs / max-cost / max-duration / completion signal
- **检测停滞和重试风暴**
- **质量门必须活跃**：eval baseline 必须存在
- **回滚路径必须存在**

---

## Hermes 组件替代表

| Hermes 组件 | ECC 替代 |
|-------------|---------|
| Task Queue | MCP Memory + TodoWrite |
| Long-term Memory | MCP Memory Server (知识图谱) |
| Tool Execution | MCP Server Layer |
| Planning | /ecc:plan + /ecc:feature-dev |
| Scheduling | Claude Code Crons |
| Computer Use | MCP Playwright / Desktop |
| Web Browsing | MCP Browser + Exa Search |

---

## Windows 可用性

| 组件 | Windows | 说明 |
|------|---------|------|
| 三层记忆 | 可用 | 文件系统 + MCP |
| Crons | 可用 | Claude Code 原生 |
| Dispatch | 可用 | Claude Code 原生 |
| loop-operator agent | 可用 | Claude Code 内部 |
| 外部脚本（auto-pilot.sh） | 可用 | Git Bash |
| dmux 并行编排 | **不可用** | 需要 tmux（Linux/Mac） |

Windows 上的并行替代：Claude Code 内置 Agent/Task tool 实现进程内并行子 agent。

---

## 实际例子

### Sequential Pipeline（最常用）

```bash
#!/bin/bash
set -e
claude -p "读取 spec，实现功能，先写测试"
claude -p "审查改动，清理 slop，运行测试"
claude -p "运行构建 + lint + 测试，修复失败"
claude -p "创建 conventional commit"
```

### Cron 定时 PR 审查

```
Cron: 工作时间每 30 分钟
1. gh pr list --state open
2. 对每个 PR: 拉分支、运行测试、code-reviewer 审查
3. GitHub MCP 发布评论
4. memory 更新审查状态
```

### 带成本控制的持续循环

```bash
continuous-claude --prompt "为未测试函数添加单元测试" --max-runs 10
continuous-claude --prompt "修复所有 linter 错误" --max-cost 5.00
continuous-claude --prompt "提升测试覆盖率" --max-duration 8h
```

---

## 反模式

| 反模式 | 问题 | 正确做法 |
|--------|------|---------|
| 无退出条件的循环 | 无限烧钱 | 始终设 max-runs/max-cost |
| 单 agent 自审自 | 作者偏见 | Santa Method 双独立 reviewer |
| 用否定指令约束生成 | 质量下降 | De-Sloppify 独立 pass |
| 迭代间无上下文桥 | 重复劳动 | SHARED_TASK_NOTES.md |
| 所有阶段同一上下文 | 偏见累积 | 每阶段独立进程 |

## Related

- [[Autonomous Loops 自主循环模式]]
- [[dmux 多Agent并行编排]]
- [[Ralphinho RFC-DAG 编排模式]]
- [[ECC 编排替代方案 (orchestrate 迁移)]]
- [[Everything Claude Code 完整指南]]
