ECC:跨多个编码智能体的 harness 优化系统
ECC 是给 Claude Code、Codex、Cursor 这类编码智能体用的跨 harness 性能优化系统,把技能、记忆、安全门禁与发布门禁收敛成一套可复用资产。这篇文章讲清它装上之后能做什么、第一次上手要注意什么、配置和结果分别落在哪里,以及它在哪几种情况下不如更窄的同类工具。
同时用 Claude Code、Codex 和 Cursor 的人往往在同一个地方重复干活:把规则文件、hooks、MCP 配置和技能定义从一个工具搬到另一个工具,换一次 harness 就重写一遍。项目一多,这些散落的配置还会互相打架。
ECC 是一套跨 harness 的智能体性能优化系统,用 JavaScript 写成,给 Claude Code、Codex、Cursor 等编码工具统一提供技能、记忆、安全与发布门禁,装一次即可复用同一套配置。
它把 harness 当成可被共享的执行面。Claude Code 仍是一等公民,Codex、OpenCode、Cursor、Gemini、Zed 和纯终端工作流共享同一套 skills、rules、hooks、MCP 约定与发布门禁。仓库在 https://github.com/affaan-m/ECC,MIT 许可证,主要语言 JavaScript(67.0%),另有 Rust 17.3%、Python 12.4%、Shell 2.1%、TypeScript 1.0%、Swift 0.1%。抓取时 268345 star、40093 fork、240 个开放 issue。

第一次用它需要知道的事
npm 是主要分发通道。仓库以 ecc-universal 和 ecc-agentshield 两个包发布到 npm,同时提供 ecc@ecc 插件 slug 和 ecc-tools GitHub App。仓库根目录有 .tool-versions 锁定工具链版本,但事实表没有给出具体版本号。
OpenCode 这条线上要额外留意 bun。曾有一条 Issue 记录 OpenCode TUI 频繁报 bun: command not found,环境是 Windows 11 加 PowerShell,OpenCode 版本 1.15.11,目前状态已解决。
安装渠道有官方范围。README 用 WARNING 标出:只有 GitHub 仓库、npm 上的 ecc-universal 与 ecc-agentshield、GitHub App、插件 slug ecc@ecc 和官网 ecc.tools 属于官方来源,第三方重新上传的镜像不经项目维护与审查,可能夹带恶意代码。
仓库体积不小。52909 KB 的体量意味着完整 clone 一次比多数工具类仓库慢,如果只想试一下,走 npm 包比拉源码更省事。
私有仓库的托管能力是收费项。开源部分永久 MIT 免费,ECC Pro 的 GitHub App 面向私有仓库,从 $19/seat/mo 起。
最短上手路径
- 先确认目标 harness 就位,v2.2.0 的引导安装器覆盖 Claude Code、Codex 和 Kimi 三套。
- 在 Claude Code 里走引导安装,或者用原生插件命令装
ecc@ecc,两条路装的是同一个插件,二选一,不要再叠一层完整的手动 Claude 安装。 - 需要额外配置时对照仓库根目录的
.env.example填环境变量;.mcp.json管 MCP 约定,.claude-plugin/与.codex-plugin/分别是两个 harness 的插件定义目录。 - 记不住命令写法就翻
COMMANDS-QUICK-REF.md(12.8 KB),它集中列了常用命令。 - 验证是否装好,在会话里触发一次技能或 hooks,看它是否按预期响应。仓库里没有说明这一步的标准验收方式。
它实际上能做哪些事
跨 harness 复用
- 共享资产层:同一套 skills、rules、hooks、MCP 约定和发布门禁被多个 harness 共用。2.0 起把 Claude Code、Codex、OpenCode、Cursor、Gemini、Zed 与纯终端工作流都算作执行面。仓库根目录为每个 harness 各留了一份隐藏目录,
.claude/、.codex/、.cursor/、.gemini/、.kimi/、.kiro/、.opencode/、.qwen/、.trae/、.zed/都在其中。 - 插件化分发:以
ecc@ecc插件形态装进 Claude Code。历史上有过一条 Issue,装插件时报plugins.0.source: Invalid input,属于 schema 校验问题,状态已解决。 - Hermes 与 OpenClaw 的自动化迁移:把 Hermes 的 cron/scheduler、gateway dispatch、memory_tool 等能力迁到 Claude 原生路径上,用
/loop、/schedule和 MCP 记忆服务承担原来的角色,状态已解决。
记忆与自我学习
- Instincts(本能):会话里学到的行为会沉淀下来供后续复用。早期版本所有 instincts 全局存储,跨多个项目时会互相污染,后来加了项目级隔离,状态已解决。
- 跨会话记忆与 SQLite 共享上下文图:2.0 吸收了 Hermes 与 OpenClaw 的记忆架构,让会话知识跨 session 累积;共享上下文图用 SQLite 存储,agent 可读写,存的是文件、函数这类实体。该项目在 Issue 中被列为已交付。
编排、审查与治理
- Agent orchestrator:一个 lead agent 协调 2 到 20 个 teammate agent,负责委派任务、监控进度、合并结果。Issue 里标注评论 54 条,状态已解决。
- 多会话 TUI 与可视化 worktree 管理:前者用分屏界面同时启动、监控、停止、恢复多个 agent session;后者给每个 agent 自动建 git worktree,带 diff 查看,完成后自动合并。
- Plan Canvas 与 diff 感知审查:Plan Canvas 让你在浏览器里审查 agent 的计划,指着某一段说事,不用在对话里重新打一遍。diff 感知的上游审查会分析真实 diff、审查评论的解决情况、预判后续问题,并生成针对性的 issue 与 PR,属于 ECC Tools 的工作流。
- 安全与治理门禁:v2.2.1 是 2.2 的 bug 与安全补丁,其中 GateGuard 与治理门禁被列入安全与数据保护条目。同一版本的发布流程要求 npm 归档包在 Linux、macOS 和 Windows 上全部通过生命周期测试才能发布。
参数速查
仓库里没有给出集中式的可调参数清单。能直接接触到的配置文件是这些:.env.example(3.1 KB)是环境变量模板,.mcp.json(0.1 KB)管 MCP 约定,.tool-versions(0.2 KB)锁工具链版本,.coderabbit.yaml(1.7 KB)配 CodeRabbit,.gitleaksignore 是密钥扫描的白名单,hooks/hooks.json 定义 hooks 条目。这些字段各自的取值范围,仓库里没有逐项说明。
输出与结果位置
装好之后,skills、hooks 与门禁在 harness 内部生效,结果直接出现在你的编码会话里。Plan Canvas 渲染在浏览器中。多会话 TUI 管理器是终端里的分屏界面。ECC Tools 这条线走的是 GitHub App,审查结果以 PR 评论和生成的 issue 形式落回仓库。仓库里没有说明是否有独立的报告目录或本地输出文件。
实际使用中的坑
插件的 schema 校验踩过两次。一次是 plugins.0.source: Invalid input,装插件直接失败,16 条评论、23 个 reaction;另一次是 hooks/hooks.json 里全部 27 条 hooks 在 Claude Code 2.1.x 下加载失败,原因是 schema 期望 command 是字符串,仓库里写的是 argv 数组。两条目前都是已解决状态。
instincts 的作用域问题值得单独提。所有学到的本能原先不分项目全局存储,同时开几个项目就会互相干扰,后来补上了项目级隔离,已解决。
跨平台环境变量的坑有一条:OpenCode TUI 在 Windows 11 + PowerShell 下频繁报 bun: command not found,说明这条路径对外部运行时版本敏感,已解决。
上面这几条 Issue 在事实表里都标注为已解决。240 个开放 issue 说明项目迭代频率高,升级前后最好先看 CHANGELOG.md(14.6 KB)。
同类项目对比
| 项目 | 适合谁 | 部署方式 | 主要限制 | 什么情况下选它更合适 | 项目地址 |
|---|---|---|---|---|---|
| ECC | 同时在用 Claude Code、Codex、Cursor 等多套 harness,想把规则、技能和门禁统一起来的团队 | 以 ecc@ecc 插件装进 harness,npm 上另有 ecc-universal 与 ecc-agentshield 两个包;仓库本体约 52 MB | 插件安装依赖 harness 的插件市场,早期版本出现过 schema 报错;ECC Pro 的私有仓库能力按 $19/seat/mo 收费;npm 之外只有官网与 GitHub App 属官方渠道,第三方镜像不受审查 | 需要的不只是记忆或技能中的某一项,而是跨 harness 共享的整套约定与发布门禁 | ECC |
| thedotmack/claude-mem | 只想要跨会话持久上下文、不想引入整套 harness 抽象的单个开发者 | 仓库里没有说明部署细节 | 定位集中在跨会话记忆这一件事上,不覆盖技能分发与发布门禁;其余能力未逐一核实 | 你的痛点只有「会话之间上下文丢失」,装一个更窄的工具就够 | thedotmack/claude-mem |
| ComposioHQ/awesome-claude-skills | 想先翻一遍现成 Claude Skills 再决定装什么的人 | 仓库里没有说明部署细节 | 它是整理好的清单与资源集合,不提供安装器,也不会替你把技能装进 harness;其余能力未逐一核实 | 你处在选型阶段,需要先横向看有哪些技能可用 | ComposioHQ/awesome-claude-skills |
如果你的问题只是「会话之间记不住东西」,claude-mem 这类专注单一能力的工具装起来比 ECC 轻得多,不用背上跨 harness 的抽象层与 52 MB 仓库。ECC 的价值出现在你同时维护多个 harness、且需要一个地方统一规则与门禁的时候;只用一个工具、又不打算扩展到第二个的人,引入它的收益有限。awesome-claude-skills 与 ECC 解决的不是同一件事,前者是清单,后者是可安装的系统,放在这里只是给选型阶段的读者一个参照。
合规边界
ECC 会在代码库上自动跑 agent、建 worktree、合并分支、生成 PR,ECC Tools 还要把 GitHub App 装到仓库上并授权访问。这些动作只应作用在自有仓库或已获授权的目标上。把自动化审查、自动提交或自动合并挂到不属于自己的仓库,可能触及平台的服务条款,也可能带来代码泄露与误合并的风险。开启自动合并之前,先确认分支保护规则与审查流程还在生效。
什么时候值得用它
同时使用两套以上编码 harness,并且已经感到规则、hooks 和技能在重复维护时,ECC 的共享资产层能直接省掉这部分搬运工作。
团队需要在多个 harness 之间维持同一套发布门禁和安全策略时,把门禁做成跨 harness 的公共层比在每个工具里各配一遍更容易对齐。
已经开始用 agent 并行处理任务、需要 lead agent 协调多个 teammate 或者按 worktree 隔离改动时,ECC 内置的编排与 worktree 管理能覆盖这段流程。
焚评:这个项目的量化评分
本项目的选题来自 焚.com(一个按公开公式给 GitHub 项目打分的站)。焚评当前总分 10.0 分(满分 10)。下表是各维度的得分:
| 评分维度 | 得分 |
|---|---|
| 热度动量(权重 25%) | 10.0 / 10 |
| 开发活跃(权重 25%) | 10.0 / 10 |
| 社区响应(权重 15%) | 10.0 / 10 |
| 文档质量(权重 15%) | 10.0 / 10 |
| 发布节奏(权重 10%) | 9.6 / 10 |
| 风险控制(权重 10%) | 10.0 / 10 |
评分口径、权重与计算方式见焚.com 的评分方法页;数据随 GitHub 指标刷新,具体数值以焚.com 当前页面为准。本文正文为诀.com 独立撰写,评分数据由焚.com 授权引用。
内容核验说明
ECC 的价值在于把跨 harness 的重复配置摆上台面:skills、rules、hooks 与发布门禁收敛成一套共享资产,并把插件 schema 报错、hooks 加载失败、instincts 跨项目污染这些坑一并写清。适合同时用两套以上编码 harness、已在重复维护规则的团队。仓库约 52 MB,安装依赖插件市场,Pro 的私有仓库能力收费;
文中的 star、fork、开放 issue 数、仓库体积、许可证、价格与各 Issue 状态,均来自仓库与原作者公开披露,诀.com 未独立验证;文末焚评 10.0 分及各维度得分引自焚.com,口径以其评分方法页为准。未做装机或运行测试。用户反馈摘要
根据仓库 Issue 来看,反馈集中在安装与环境适配:插件市场添加时报 plugins.0.source schema 无效、ecc@ecc 找不到、plugin.json 的 agents 字段校验失败;Claude Code 2.1.x 下 hooks.json 全部 27 条因 command 期望字符串、仓库却写成 argv 数组而加载失败;README 引用的 opencode-ecc 在 npm 上不存在;OpenCode TUI 在 Windows 11 加 PowerShell 下频繁报 bun: command not found;另有 GateGuard hook 反复阻止 Write 工具的提示。这些 Issue 状态均为已解决。另有数条由维护者提交的 2.0 功能记录,涉及 orchestrator、多会话 TUI 与 worktree 管理。
基于该仓库公开 Issue 整理,只反映提交者报告的现象与诉求,不代表诀.com 立场,也不代表问题已被确认。项目来源与说明
开源项目:affaan-m(affaan-m)
本文由诀.com 编辑基于该项目的公开信息独立撰写,属原创解读,不是对项目文档的翻译或转载;文中提到的功能与参数以官方仓库为准,代码与文档版权归原作者所有。
查看项目仓库