← Biblioteca 📦 Repo · 12 min Ver en GitHub ↗

ECC — el sistema operativo para harnesses de agentes

Una sola capa portátil de skills, agentes, hooks y reglas que corre igual en Claude Code, Codex, Cursor, OpenCode y Gemini.

ia-agentesclaude-codedev-toolsproductividadharnessopen-sourceaffaan-m/ECC
🎧 Escuchar Voz Álvaro (Edge TTS). Si el audio no carga, todavía no está generado.

⚡ En 30 segundos

ECC (Everything Claude Code) es un "operating system" de configuración para agentes de IA-coding. En vez de tener tus prompts, skills y reglas atados a un solo asistente, ECC los empaqueta como una capa reutilizable única (skills + agentes + hooks + rules + configs MCP) que se adapta a cada harness en el borde: el mismo SKILL.md corre en Claude Code, Codex, Cursor, OpenCode, Gemini, Zed y GitHub Copilot.

Por qué importa: es el patrón maduro de "dotfiles para agentes". Resuelve el problema de fragmentación (cada herramienta con su propio formato) con una idea clara: el workflow durable vive una vez en skills/; cada harness solo adapta cómo se carga. Más de 10 meses de uso diario destilados en agentes especializados, instintos auto-aprendidos, optimización de memoria y escaneo de seguridad (AgentShield).

Para quién: cualquiera que use 2+ asistentes de IA y esté harto de reescribir la misma config. Y para quien quiere ver, sin leer código, cómo se diseña un harness de agentes profesional de referencia.

211.9K+
estrellas GitHub
64
agentes especializados
262
skills
84
comandos (legacy shims)
7+
harnesses soportados
12+
ecosistemas de lenguaje

🧠 El problema que resuelve

Cada asistente de IA-coding tiene su propio formato de configuración: Claude Code usa plugins y hooks nativos, Codex lee AGENTS.md y TOML, Cursor tiene su propio layout de .cursor/rules/ y .cursor/hooks/, OpenCode tiene un sistema de eventos... Si trabajas con varios, acabas reescribiendo el mismo workflow tres o cuatro veces y manteniéndolos sincronizados a mano.

ECC parte de una tesis explícita (de docs/architecture/cross-harness.md): "ECC es la capa reutilizable de workflow. Los harnesses son superficies de ejecución." Lo durable —skills, reglas, hooks, configs MCP, manifiestos de instalación— vive en un solo sitio. El harness solo adapta cómo se carga, no qué hace. La regla de oro del repo: "si un cambio requiere editar tres copias del mismo workflow, la fuente compartida está en el sitio equivocado".

Además resuelve problemas operativos reales del trabajo agéntico: optimización de tokens, persistencia de memoria entre sesiones (vía hooks), aprendizaje continuo (auto-extraer patrones de sesiones a skills reutilizables), loops de verificación y seguridad (sandboxing, sanitización, el escáner AgentShield).

🏗 Arquitectura

El corazón es un modelo de "fuente compartida + adaptadores finos". Una capa central de assets se proyecta sobre cada harness mediante carpetas-puente (.claude/, .codex/, .cursor/, .agents/, etc.):

Capa compartida ECC (fuente única) skills/ · rules/ · hooks/ mcp-configs/ · AGENTS.md install manifests · session patterns "SKILL.md es la unidad más portable" Claude Code .claude/ + plugin hooks nativos Codex .codex/ AGENTS.md hooks por instrucción Cursor .cursor/rules .cursor/hooks adapter OpenCode / Gemini .agents/skills plugin/event adapter Capa operativa (ECC 2.0) control-plane Rust (ecc2/) · session adapters · SQLite state store orch-* orchestrators · worktree lifecycle · AgentShield ecc status --markdown → handoff portable · instintos auto-aprendidos

Cómo leer el diagrama: arriba, la fuente única. En el medio, cada harness recibe los mismos assets a través de un adaptador fino — la diferencia clave es la paridad de hooks: nativa en Claude Code/OpenCode/Cursor, basada en instrucción en Codex (no hay motor de hooks, así que las reglas se inyectan como texto). Abajo, la capa 2.0 que convierte ECC de "pack de configs" a sistema operativo: un control-plane en Rust (ecc2/, todavía alpha), almacén de estado SQLite, orquestadores y el escáner de seguridad. El árbol de ficheros confirma esta estructura: verás .claude/, .codex/, .cursor/hooks/ (con ~17 hooks JS por evento) y .agents/skills/ conviviendo en la raíz.

🔑 Conceptos / técnicas clave

SKILL.md = unidad portable — La pieza que viaja sin cambios. YAML frontmatter con name, description, origin (ECC vs community), sección "When to Use" y ejemplos repo-relativos. Sin secretos ni rutas absolutas. El mismo archivo se instala en todos los harnesses.
Agent-First orchestration — Delegar a especialistas proactivamente, sin que el usuario lo pida: feature compleja → planner; código recién escrito → code-reviewer; bug → tdd-guide; código sensible → security-reviewer; build roto → *-build-resolver. 64 agentes en total, muchos por lenguaje (go/rust/kotlin/java/python/cpp reviewer + build-resolver).
Instintos + aprendizaje continuo/learn y /learn-eval extraen patrones de la sesión actual; /evolve los convierte en estructuras de skill; /instinct-status muestra los instintos aprendidos con confidence scores; /promote sube instintos de proyecto a global. Es un loop de auto-mejora del propio harness.
Persistencia de memoria vía hooks — Hooks de SessionStart/Stop/pre-compact que guardan y recargan contexto entre sesiones automáticamente. /save-session + /resume-session + /sessions sobre un store canónico. Controles de runtime: ECC_HOOK_PROFILE=minimal|standard|strict y ECC_DISABLED_HOOKS.
Verification loops + quality gates/verify (build→lint→test→type-check), /quality-gate, /eval (harness de evaluación con grader types y pass@k). TDD obligatorio: RED→GREEN→REFACTOR con 80%+ cobertura, declarado en AGENTS.md como principio no negociable.
Skills-first > commands — Política explícita: skills/ es la superficie canónica. commands/ (84 slash commands) son shims de compatibilidad legacy que solo se tocan para parity cross-harness. Nuevo trabajo aterriza en skills primero.

Agentes/comandos más representativos:

RolQué hace
planner / architectPlanificación de implementación y diseño de sistema antes de tocar código
tdd-guideFuerza el ciclo test-first en cualquier lenguaje
code-reviewer / security-reviewerCalidad, mantenibilidad y detección de vulnerabilidades
*-build-resolverArregla errores de build por lenguaje (go, rust, kotlin, java, cpp, pytorch...)
loop-operatorEjecuta loops autónomos, monitoriza stalls e interviene
harness-optimizerTunea la config del harness por fiabilidad, coste y throughput
mle-reviewerRevisa pipelines ML de producción (evals, serving, monitoring, rollback)

🗂 Mapa de ficheros importantes

Fichero / carpetaPara qué sirve
AGENTS.mdInstrucciones maestras: principios, los 64 agentes, reglas de orquestación, seguridad, estilo. Léelo primero.
docs/architecture/cross-harness.mdEl "por qué" del proyecto: modelo de portabilidad, qué viaja sin cambios y qué se adapta, la regla de oro del repo.
COMMANDS-QUICK-REF.mdReferencia rápida de los slash commands agrupados por workflow + guía de decisión rápida.
RULES.md"Must Always / Must Never" + formato exacto de agentes, skills, hooks y commits.
SOUL.mdIdentidad y filosofía núcleo (versión condensada de los principios).
skills/<name>/SKILL.mdSuperficie canónica de workflow. 262 skills (deep-research, eval-harness, tdd-workflow, frontend-slides, mcp-server-patterns...).
.agents/skills/*/Skills empaquetadas para harnesses genéricos, con agents/openai.yaml por skill.
.claude/Superficie Claude Code: commands, rules, identity, homunculus/instincts, team config.
.codex/Superficie Codex: AGENTS.md, config.toml y agentes TOML (explorer, reviewer, docs-researcher).
.cursor/hooks/~17 hooks JS por evento (before-shell, after-file-edit, session-start/end, pre-compact, subagent-*) — paridad de hooks en Cursor.
ecc2/Prototipo Rust del control-plane (dashboard, start, sessions, status, daemon). Alpha.
.claude-plugin/ · .codex-plugin/Manifiestos de plugin + marketplace para instalación en cada ecosistema.

🎯 Qué puedes aplicar tú

⚠️ Limitaciones / cuándo NO usarlo