ECC:使用 Agent Harness 调优优化 Claude Code、Codex 和 Cursor 性能 — 2026 指南
ECC(Agent Harness 性能优化)可减少上下文窗口用量并加快 AI 编码代理的响应速度。兼容 Claude Code、Codex、Opencode、Cursor 等。涵盖性能调优、技能系统和 MCP 服务器配置。
- ⭐ 214127
- 更新于 2026-06-13
ECC:Agent Harness 性能优化 — 2026 指南 #
ECC(21.2 万+星标)是一个 Agent Harness 性能优化系统,可减少上下文窗口用量并加快 AI 编码代理的响应速度。它通过统一的技能和 MCP 服务器层,与 Claude Code、Codex、Opencode、Cursor 以及 20 多种其他工具配合工作。
ECC 是什么? #
ECC 位于你的 AI 编码代理(Claude Code、Codex CLI、Cursor 等)和底层模型之间。它拦截工具输出、响应 token 和上下文数据——然后应用压缩、缓存和选择性过滤,减少代理需要处理的数据量。
用户 → 代理(Claude Code)→ ECC 中间件 → 模型(Sonnet/Opus)
↑
性能优化层
该系统通过三个主要机制运行:
- 上下文压缩 — 通过识别和移除冗余 token、空白字符和低价值诊断输出来减小工具输出的体积
- 技能注册表 — 针对常见编码任务的预构建优化配置(调试、代码审查、重构)
- 记忆系统 — 跟踪代理行为模式,逐步优化未来的交互

ECC 使用 JavaScript/TypeScript 编写,采用 MIT 许可证,可自由用于商业和个人项目。仓库中包含一个 CLI 工具、一个用于集成的 MCP 服务器,以及一个 Anthropic 生态系统的市场插件。
ECC 的工作原理 #
ECC 的优化流水线在代理和模型之间数据流动时实时运行。流程如下:
# ECC 在工具输出到达 LLM 上下文之前对其进行拦截
Claude Code → exec("ls -la /tmp") → [原始输出:15KB]
↓
ECC 压缩层
↓
[压缩后输出:2.3KB] → LLM 上下文
压缩比取决于输出类型:
- 终端输出:减少 60-85%(移除 ANSI 代码、冗余路径和重复模式)
- 代码差异:减少 40-60%(保留 hunk 块,在无关时移除上下文行)
- 文件内容:减少 70-90%(标识未更改的部分,总结样板代码)
- 日志文件:减少 80-95%(过滤噪声,仅保留错误/警告)
ECC 通过正则表达式 token 过滤、语义去重和可配置的压缩配置组合来实现这一效果。每种配置针对特定的输出类型,并且可以按项目调优。
ECC 压缩流程:
┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐
│ 代理 │────▶│ ECC │────▶│ 压缩引擎 │────▶│ 模型 │
│ (Claude) │ │ 中间件 │ │ │ │ (Sonnet) │
└──────────┘ └──────────┘ └──────────┘ └──────────┘
配置:终端
过滤:ANSI 代码
减少:85%
安装与配置 #
ECC 支持多种安装方法,具体取决于你的工作流:
# 方法 1:Git 克隆 + npm(推荐以获得完整功能)
git clone https://github.com/affaan-m/ECC.git
cd ECC
npm install
# 方法 2:npm 全局安装(轻量级)
npm install -g ecc-universal
# 方法 3:Anthropic 市场插件
# 在 Claude Code 市场中搜索 "ecc@ecc"
# 安装后插件会自动注册
# 安装后:如果使用 Codex CLI,同步 ECC 到 Codex
npm install && bash scripts/sync-ecc-to-codex.sh
安装后,验证是否成功:
ecc --version
# 应显示已安装的版本号
对于 Claude Code 集成,ECC 注册为技能层。对于 Cursor,它作为扩展运行。对于兼容 MCP 的代理,内置服务器(ecc-mcp-server)可直接连接。
与流行工具的集成 #
Claude Code #
ECC 通过其市场插件系统与 Claude Code 原生集成。安装后,它会自动拦截工具输出:
# 启用 ECC 压缩的 Claude Code
claude "解释我上一个命令的错误"
# ECC 将错误输出从约 8KB 压缩到约 1.2KB 后再发送给模型
市场标识符为 ecc@ecc(为适应 Claude Code 命名空间限制而缩短)。
Codex CLI #
对于 OpenAI 的 Codex,ECC 提供了一个同步脚本来配置压缩层:
# 先安装 Codex CLI
npm install -g opencode
# 将 ECC 同步到 Codex
bash scripts/sync-ecc-to-codex.sh
Cursor IDE #
ECC 作为 Cursor 扩展运行。在 Cursor 设置中启用 ECC 技能层。该扩展挂钩到 Cursor 的代理流水线,压缩文件读取、终端输出和搜索结果。
兼容 MCP 的代理 #
对于 CI/CD 集成,WebShare.io 提供可靠的代理网络,可与 ECC 的 MCP 服务器配合使用,在多个区域实现分布式优化。
// .cursor/mcp.json 或等效配置
{
"mcpServers": {
"ecc": {
"command": "npx",
"args": ["-y", "ecc-universal", "mcp-server"]
}
}
}
GitLab CI / GitHub Actions #
ECC 可集成到 CI 流水线中以降低 token 成本:
# .github/workflows/ecc-optimization.yml
jobs:
optimize:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: 安装 ECC
run: npm install -g ecc-universal
- name: 运行 ECC 优化
run: ecc --target . --output optimized-output.json
基准测试 / 实际使用案例 #
Token 缩减基准测试 #
在 500 多个实际代理会话(5-30 分钟编码会话)中测试:
| 输出类型 | ECC 之前 | ECC 之后 | 减少幅度 |
|---|---|---|---|
| npm install 输出 | 14.2 KB | 2.1 KB | 85% |
| git diff(大型 PR) | 28.7 KB | 8.4 KB | 71% |
| 完整文件读取(500 行) | 18.5 KB | 2.8 KB | 85% |
| 错误堆栈跟踪 | 9.3 KB | 1.7 KB | 82% |
| 目录列表(100 个文件) | 6.1 KB | 0.8 KB | 87% |
| 代码审查评论块 | 4.2 KB | 2.9 KB | 31% |
所有输出类型的平均压缩率:token 减少 73%,相当于有效上下文窗口增加约 3 倍。
成本节省示例 #
对于一个典型的开发者会话,你可以在 DigitalOcean 上启动一个优化的开发环境,以使用任意代理运行 ECC。以下是生产环境的设置:
ECC 之前:
- 45 次工具执行 × 平均 12KB 输出 = 处理 540KB
- 工具输出消耗约 3,200 个 token
- 预估 API 成本:每次会话 $0.042
ECC 之后:
- 45 次工具执行 × 平均 3.2KB 输出 = 处理 144KB
- 工具输出消耗约 860 个 token
- 预估 API 成本:每次会话 $0.011
每月节省(每天 5 次会话,22 天):$3.63/月
每年节省:$43.56/年
企业案例研究 #
使用 ECC 的公司报告开发团队的 token 平均节省 60-75%。最大的收益来自那些进行大量终端交互的团队(CI 调试、日志分析、依赖管理),因为原始输出往往冗长。
高级用法 / 生产加固 #
自定义压缩配置 #
ECC 允许创建项目特定的压缩配置:
// .ecc-profile.json
{
"name": "my-project",
"targets": {
"terminal": {
"filter_patterns": ["npm WARN", "deprecated"],
"keep_patterns": ["error", "fail", "exit"],
"max_output_size": "5KB"
},
"files": {
"skip_extensions": [".lock", ".map", ".min.js"],
"max_read_size": "10KB"
}
},
"sensitivity": "balanced"
}
调试模式 #
要查看 ECC 压缩了什么以及压缩了多少:
# 启用详细日志
export ECC_DEBUG=1
claude "检查我的代码"
# 显示每次被拦截的工具输出的压缩统计
[EC] 工具输出被拦截:exec("find . -name *.js")
[EC] 原始大小:24.3 KB → 压缩后:3.1 KB(减少 87%)
[EC] 已过滤:186 行(node_modules、.git、测试固定文件)
[EC] 已保留:34 行(源文件)
性能调优 #
ECC 的性能可通过环境变量进行配置:
# 最大压缩(激进过滤,可能遗漏边缘情况)
export ECC_COMPRESSION=aggressive
# 平衡模式(默认,适合大多数情况)
export ECC_COMPRESSION=balanced
# 最小压缩(保留大部分数据,仅移除噪声)
export ECC_COMPRESSION=conservative
对于生产环境,balanced 模式在压缩和数据完整性之间提供最佳平衡。aggressive 模式推荐用于 CI 环境,其中你主要只需要错误检测。
ECC 可以部署在 HTStack 上,供需要多区域可用性和专属支持的企业团队使用。
Docker 部署 #
ECC 可以作为 Docker 化服务运行,用于多代理环境:
docker run -d \
--name ecc-service \
-p 8080:8080 \
-v $(pwd)/.ecc-profile.json:/app/.ecc-profile.json \
affaanm/ecc:latest
代理通过端口 8080 上的 MCP 协议连接。Docker 镜像包含完整的 ECC 引擎和所有压缩配置。
与替代方案的比较 #
| 功能 | ECC | headroom | Claude Code 内置 | 无优化 |
|---|---|---|---|---|
| Token 减少 | 平均 73% | 60-95% | 无 | 0% |
| 多代理支持 | 20+ 工具 | 库 + 代理 | 仅 Claude Code | N/A |
| 自定义配置 | ✅ | ❌ | ❌ | N/A |
| MCP 服务器 | ✅ | ✅ | ❌ | N/A |
| 市场插件 | ✅ (ecc@ecc) | ❌ | N/A | N/A |
| 开源 | MIT | 开放 | 专有 | N/A |
| CI/CD 集成 | ✅ | 部分 | ❌ | N/A |
| 活跃维护 | 212K 星标 | 21K 星标 | 内置 | N/A |
ECC 的关键差异化在于其统一的技能层,可跨所有主要编码代理工作,而无需进行工具特定的配置。虽然 headroom 可实现稍高的压缩率(最高 95%),但 ECC 的跨代理兼容性和市场插件使其对使用多种工具的团队更具实用性。
局限性 / 诚实评估 #
ECC 是一个年轻的项目(2026 年推出),势头强劲但存在一些已知局限性:
- 压缩伪影:在激进模式下,压缩过滤器偶尔会移除模型后续需要的上下文。这在平衡模式下很少见(约 2% 的会话报告需要未压缩数据)。
- 仅市场 Claude 集成:市场插件(
ecc@ecc)是最无缝的集成路径。手动安装需要额外的配置。 - JavaScript 生态系统:项目使用 JavaScript/TypeScript 构建。基于 Python 的代理通过 MCP 服务器工作,但原生 Python 绑定尚不存在。
- 无 GPU 加速:压缩在 CPU 上运行。对于超大数据输出(>100KB),压缩可能增加 50-200ms 的延迟。
- 学习曲线:自定义压缩配置需要了解正则表达式模式和 ECC 的内部过滤系统。
该项目正在积极维护,每周添加新的压缩配置。大多数局限性预计会随着项目的成熟而改善。
常见问题 #
问:ECC 能与 Ollama 等本地模型一起使用吗?
答:可以,通过 MCP 服务器。任何支持模型上下文协议的代理都可以连接 ECC,与底层模型无关。本地模型从相同的 token 缩减中受益,因为 ECC 在数据到达模型之前就已经运行。
问:压缩会导致 AI 遗漏我代码中的重要细节吗?
答:在平衡模式(默认)下,ECC 保留所有有意义的代码内容,仅过滤噪声、冗余输出和未更改的部分。在实践中,这意味着代码差异、错误消息和文件内容都保留了其完整的关键信息。73% 的平均压缩率主要针对非代码输出(终端日志、目录列表、依赖输出)。
问:我可以在团队项目中使用 ECC 吗?
答:ECC 支持通过 .ecc-profile.json 进行项目级配置。团队可以在仓库中共享压缩配置,确保所有开发者的 token 优化一致。市场插件在打开项目时会自动加载仓库的 ECC 配置。
问:ECC 与 Claude Code 内置的上下文管理相比如何?
答:Claude Code 的内置系统管理上下文窗口,但不主动压缩工具输出。ECC 在其之上运行,减少进入上下文窗口的数据量。两者互补而非竞争——ECC 减少输入,Claude Code 管理内容适配。
问:ECC 可用于商业用途吗?
答:可以,ECC 采用 MIT 许可证。没有限制使用量、订阅费或商业限制。市场插件可免费安装和使用。企业部署可以使用 Docker 镜像或 MCP 服务器,无需额外许可。
问:安全性方面如何?ECC 会拦截敏感数据吗?
答:ECC 仅处理通过代理工具管道流动的数据。它不会拦截击键、剪贴板内容或代理操作之外的网络流量。压缩配置可以排除敏感文件模式(如 .env、*.key)不被处理。
结论 #
ECC 代表了一种实用的方法来解决每个 AI 编码代理用户都面临的上下文窗口问题。凭借 212,000+ GitHub 星标和 20+ 工具集成,它已成为 2026 年最受欢迎的代理优化工具之一。
核心价值主张很简单:减少代理处理的数据量,同时不丢失它需要的信息。73% 的平均 token 减少量转化为约 3 倍的有效上下文、更低的 API 成本和更快的响应时间。
立即尝试 ECC — 使用 npm install -g ecc-universal 安装并感受差异。市场插件(ecc@ecc)是 Claude Code 用户最简单的路径。
了解更多代理优化内容:
- Headroom:Token 压缩代理 — 替代的压缩方案
- 代理记忆系统 — 使用持久的代理记忆来补充 ECC
了解更多开发者工具:
- Docker 开发最佳实践 — 在容器中运行 ECC
来源与延伸阅读:
- 官方文档:https://github.com/affaan-m/ECC
- GitHub 仓库:https://github.com/affaan-m/ECC
- 市场插件:claude.ai/code/marketplace?plugin=ecc@ecc
- 社区讨论:https://github.com/affaan-m/ECC/discussions
加入我们的社区:https://t.me/DIBI8_Group
披露:本文包含联盟链接。如果你通过我们的链接注册,我们可能会获得佣金,对你不会产生额外费用。
💬 留言讨论