ECC is an MIT-licensed open-source agent harness performance optimization system that gives AI coding agents a coordinated engineering workflow — plan, test, implement, review, verify, remember, improve — for developers working in Claude Code, Codex, OpenCode, Cursor, and other harnesses.
What it is
ECC is a JavaScript developer tool that installs a structured engineering process into an AI coding agent instead of leaving that process to be rebuilt in every prompt. It is distributed as the ecc@ecc plugin and as the npm package ecc-universal, and it lives in the agent-harness ecosystem: Claude Code first, with a supported sync path for Codex and capability-limited adapters for Cursor, OpenCode, Gemini, Zed, GitHub Copilot, Antigravity, Qwen, and others. The project frames its job as optimizing the context window while persisting everything else, including memory, session summaries, continuous learning, and instincts.
The concrete problem it solves is workflow repetition. Rather than re-describing planning, testing, review, and verification in every prompt, a user installs ECC once and the agent plans before it builds, verifies changes with tests, reviews its own work from a fresh context, and turns repeated wins into reusable skills and workflows. It replaces ad hoc prompt scaffolding with a packaged set of 68 agents, 292 skills, and 94 legacy command shims, alongside hooks, rules, memory, and the AgentShield security scanner. The documented loop is plan -> test -> implement -> review -> verify -> remember -> improve.
Key capabilities
- Ships 68 specialized agents covering planning, review, build repair, security, architecture, and domain work.
- Provides 292 skills spanning TDD, research, security, docs, frontend, data, ML, and operations.
- Includes 94 legacy command shims as convenient entry points while the project moves to a skills-first surface.
- Adds runtime hooks and memory for enforcement, session summaries, continuous learning, instincts, and context controls.
- Supports selective, always-loaded rules chosen by language or project.
- Bundles AgentShield, which scans prompts, hooks, MCP config, permissions, secrets, and agent files.
- Distributed through npm packages
ecc-universal and ecc-agentshield, the GitHub App, and the plugin slug ecc@ecc.
Who users it and how
- Teams and solo developers using Claude Code as their primary harness, where ECC reaches full feature support.
- Codex users relying on the supported sync path for a mirrored workflow.
- Developers on Cursor, OpenCode, Gemini, Zed, GitHub Copilot, Antigravity, or Qwen who want partial ECC capability through adapters rather than full parity.
- Projects that want the plan-build-review-verify loop enforced without rewriting prompts each time.
- Security-conscious shops running AgentShield across prompts, hooks, MCP config, permissions, secrets, and agent files.
Getting started
Run guided setup with npx [email protected] setup, or pnpm dlx [email protected] setup, which requires Node.js 18 or newer. The Claude Code plugin path also needs Git and Claude Code 2.1 or newer on PATH, and ECC 2.2 provides guided package setup for Claude Code, Codex, and Kimi Code.
How it compares
Among the harnesses named by the project, Claude Code is the strongest target: ECC works best there today, offers a supported sync path for Codex, and provides capability-limited adapters elsewhere, so feature parity should not be assumed across Cursor, OpenCode, Gemini, Zed, GitHub Copilot, Antigravity, or Qwen. ECC Pro and the GitHub App are the project's own hosted offering for private repositories, free at the entry tier and from $19 per seat per month beyond it, and that revenue funds the MIT-licensed work maintained by a single maintainer shipping weekly across 7 harnesses.
When to use it — and when not to
Self-hosters must supply Node.js 18 or newer, and the Claude Code plugin path also needs Git and Claude Code 2.1 or newer on PATH; no database, storage, or SMTP component is documented. Skip ECC if the primary harness is Cursor, Gemini, Zed, Copilot, Antigravity, or Qwen and full feature parity is required, because those paths are described as capability-limited. The repository carries 228 open issues and is maintained by one person, and unofficial mirrors are not reviewed, so installation should stay on the verified channels.