快速判断
- 01这个 Skill 是干嘛的
- 整合 Agent 配置、上下文管理、工程执行和调试相关的编码能力。
- 02它能解决什么问题
- 解决 AI 编码会话上下文混乱、配置分散、排错与交付步骤不稳定的问题。
- 03它适合谁来用
- 适合频繁使用编码 Agent、希望统一个人工程工作台的开发者。
Everything Claude Code
140K+ stars | 21K+ forks | 170+ 贡献者 | 12+ 语言系统 | Anthropic黑客松获胜者
---
<div align="center">
Language / 语言 / 語言 / Dil / Язык / Ngôn ngữ
English | Português (Brasil) | 简体中文 | 繁體中文 | 日本語 | 한국어 | Türkçe | Русский | Tiếng Việt | ไทย | Deutsch
</div>
---
来自 Anthropic 黑客马拉松获胜者的完整 Claude Code 配置集合。
不止是配置文件,而是一整套完整系统:技能体系、本能行为、记忆优化、持续学习、安全扫描,以及研究优先的开发模式。 包含可直接用于生产环境的智能体、技能模块、钩子、规则、MCP 配置,以及兼容传统命令的适配层——所有内容均经过 10 个多月高强度日常使用与真实产品开发迭代打磨而成。
可在 Claude Code、Codex、Cursor、OpenCode、Gemini 及其他 AI 智能体框架中通用。
---
指南
这个仓库只包含原始代码。指南解释了一切。
<table> <tr> <td width="33%"> <a href="https://x.com/affaanmustafa/status/2012378465664745795"> <img src="https://github.com/user-attachments/assets/1a471488-59cc-425b-8345-5245c7efbcef" alt="The Shorthand Guide to Everything Claude Code" /> </a> </td> <td width="33%"> <a href="https://x.com/affaanmustafa/status/2014040193557471352"> <img src="https://github.com/user-attachments/assets/c9ca43bc-b149-427f-b551-af6840c368f0" alt="The Longform Guide to Everything Claude Code" /> </a> </td> <td width="33%"> <a href="https://x.com/affaanmustafa/status/2033263813387223421"> <img src="./assets/images/security/security-guide-header.png" alt="The Shorthand Guide to Everything Agentic Security" /> </a> </td> </tr> <tr> <td align="center"><b>精简指南</b><br/>设置、基础、理念。<b>先读这个。</b></td> <td align="center"><b>详细指南</b><br/>Token 优化、内存持久化、评估、并行化。</td> <td align="center"><b>安全指南</b><br/>攻击向量、沙箱技术、数据净化、CVE漏洞、Agent防护</td> </tr> </table>
| 主题 | 你将学到什么 |
|---|---|
| Token 优化 | 模型选择、系统提示精简、后台进程 |
| 内存持久化 | 自动跨会话保存/加载上下文的钩子 |
| 持续学习 | 从会话中自动提取模式到可重用的技能 |
| 验证循环 | 检查点 vs 持续评估、评分器类型、pass@k 指标 |
| 并行化 | Git worktrees、级联方法、何时扩展实例 |
| 子代理编排 | 上下文问题、迭代检索模式 |
---
最新动态
v2.0.0 — 智能体 Harness 操作系统(2026年6月)
2.0 主线稳定版:261 个技能、control-pane 基底(会话适配器 + MCP 清单)、worktree 生命周期服务,以及 ECC Discord 社区。
v2.0.0-rc.1 — 表面同步、运营工作流与 ECC 2.0 Alpha(2026年4月)
- 公共表面已与真实仓库同步 —— 元数据、目录数量、插件清单以及安装文档现在都与实际开源表面保持一致。
- 运营与外向型工作流扩展 ——
brand-voice、social-graph-ranker、customer-billing-ops、google-workspace-ops等运营型 skill 已纳入同一系统。 - 媒体与发布工具补齐 ——
manim-video、remotion-video-creation以及社媒发布能力让技术讲解和发布流程直接在同一仓库内完成。 - 框架与产品表面继续扩展 ——
nestjs-patterns、更完整的 Codex/OpenCode 安装表面,以及跨 harness 打包改进,让仓库不再局限于 Claude Code。 - ECC 2.0 alpha 已进入仓库 ——
ecc2/下的 Rust 控制层现已可在本地构建,并提供dashboard、start、sessions、status、stop、resume与daemon命令。 - 生态加固持续推进 —— AgentShield、ECC Tools 成本控制、计费门户工作与网站刷新仍围绕核心插件持续交付。
快速开始
在 2 分钟内快速上手:
第一步:安装插件
注意:插件安装方式较为便捷,但如果你的 Claude Code 版本无法正常解析自托管市场条目,建议使用下方的开源安装脚本,稳定性更高。
# 添加市场
/plugin marketplace add https://github.com/affaan-m/ECC
# 安装插件
/plugin install ecc@ecc
安装名称说明:较早的帖子里可能还会出现较长的旧标识符。Anthropic 的 marketplace/plugin 安装是按规范化插件标识符寻址的,因此 ECC 现在统一为
ecc@ecc,让工具名和 slash command 命名空间保持简短。
第二步:仅在需要时安装规则
WARNING: 重要提示: Claude Code 插件无法自动分发
rules。 如果你已经通过/plugin install安装了 ECC,不要再运行./install.sh --profile full、.\install.ps1 --profile full或npx ecc-install --profile full。插件已经会自动加载 ECC 的技能、命令和 hooks;此时再执行完整安装,会把同一批内容再次复制到用户目录,导致技能重复以及运行时行为重复。 对于插件安装路径,请只手动复制你需要的rules/目录。只有在你完全不走插件安装、而是选择“纯手动安装 ECC”时,才应该使用完整安装器。
# 首先克隆仓库
git clone https://github.com/affaan-m/everything-claude-code.git
cd everything-claude-code
# 安装依赖(选择你常用的包管理器)
npm install # 或:pnpm install | yarn install | bun install
# 插件安装路径:只复制规则
mkdir -p ~/.claude/rules
cp -R rules/common ~/.claude/rules/
cp -R rules/typescript ~/.claude/rules/
# 纯手动安装 ECC(不要和 /plugin install 叠加)
# ./install.sh --profile full
# Windows 系统(PowerShell)
# 插件安装路径:只复制规则
New-Item -ItemType Directory -Force -Path "$HOME/.claude/rules" | Out-Null
Copy-Item -Recurse rules/common "$HOME/.claude/rules/"
Copy-Item -Recurse rules/typescript "$HOME/.claude/rules/"
# 纯手动安装 ECC(不要和 /plugin install 叠加)
# .\install.ps1 --profile full
# npx ecc-install --profile full
如需手动安装说明,请查看 rules/ 文件夹中的 README 文档。手动复制规则文件时,请直接复制整个语言目录(例如 rules/common 或 rules/golang),而非目录内的单个文件,以保证相对路径引用正常、文件名不会冲突。
第三步:开始使用
# 尝试一个命令(插件安装使用命名空间形式)
/ecc:plan "添加用户认证"
# 手动安装(选项2)使用简短形式:
# /plan "添加用户认证"
# 查看可用命令
/plugin list ecc@ecc
完成! 你现在可以使用 67 个代理、278 个技能和 94 个命令。
multi-* 命令需要额外配置
WARNING: 上面的基础插件 / rules 安装不包含
multi-*命令所需的运行时。 如果要使用/multi-plan、/multi-execute、/multi-backend、/multi-frontend和/multi-workflow,还需要额外安装ccg-workflow运行时。 可通过npx ccg-workflow完成初始化安装。 该运行时会提供这些命令依赖的关键组件,包括: -~/.claude/bin/codeagent-wrapper-~/.claude/.ccg/prompts/*未安装ccg-workflow时,这些multi-*命令将无法正常运行。
---
跨平台支持
该插件现已全面支持 Windows、macOS 和 Linux,并与主流 IDE(Cursor、OpenCode、Antigravity)及命令行工具深度集成。所有钩子与脚本均已使用 Node.js 重写,以实现最佳兼容性。
包管理器检测
插件自动检测你首选的包管理器(npm、pnpm、yarn 或 bun),优先级如下:
- 环境变量:
CLAUDE_PACKAGE_MANAGER - 项目配置:
.claude/package-manager.json - package.json:
packageManager字段 - 锁文件: 从 package-lock.json、yarn.lock、pnpm-lock.yaml 或 bun.lockb 检测
- 全局配置:
~/.claude/package-manager.json - 回退: 第一个可用的包管理器
要设置你首选的包管理器:
# 通过环境变量
export CLAUDE_PACKAGE_MANAGER=pnpm
# 通过全局配置
node scripts/setup-package-manager.js --global pnpm
# 通过项目配置
node scripts/setup-package-manager.js --project bun
# 检测当前设置
node scripts/setup-package-manager.js --detect
或在 Claude Code 中使用 /setup-pm 命令。
钩子运行时控制
使用运行时标记调整严格度或临时禁用特定钩子:
# 钩子严格度配置文件(默认值:standard)
export ECC_HOOK_PROFILE=standard
# 以英文逗号分隔的钩子 ID 列表,用于禁用指定钩子
export ECC_DISABLED_HOOKS="pre:bash:tmux-reminder,post:edit:typecheck"
---
里面有什么
这个仓库是一个 Claude Code 插件 - 直接安装或手动复制组件。
everything-claude-code/
|-- .claude-plugin/ # 插件与应用商店清单
| |-- plugin.json # 插件元数据与组件路径
| |-- marketplace.json # 用于 /plugin marketplace add 的自托管应用商店目录
|
|-- agents/ # 36 个专用子智能体,用于任务委派
| |-- planner.md # 功能实现规划
| |-- architect.md # 系统架构设计决策
| |-- tdd-guide.md # 测试驱动开发
| |-- code-reviewer.md # 代码质量与安全审查
| |-- security-reviewer.md # 漏洞分析
| |-- build-error-resolver.md # 构建错误修复
| |-- e2e-runner.md # Playwright 端到端测试
| |-- refactor-cleaner.md # 无效代码清理
| |-- doc-updater.md # 文档同步更新
| |-- docs-lookup.md # 文档 / API 查阅
| |-- chief-of-staff.md # 沟通梳理与文稿起草
| |-- loop-operator.md # 自主循环执行
| |-- harness-optimizer.md # 执行框架配置调优
| |-- cpp-reviewer.md # C++ 代码审查
| |-- cpp-build-resolver.md # C++ 构建错误修复
| |-- go-reviewer.md # Go 代码审查
| |-- go-build-resolver.md # Go 构建错误修复
| |-- python-reviewer.md # Python 代码审查
| |-- database-reviewer.md # 数据库 / Supabase 审查
| |-- typescript-reviewer.md # TypeScript/JavaScript 代码审查
| |-- java-reviewer.md # Java/Spring Boot 代码审查
| |-- java-build-resolver.md # Java/Maven/Gradle 构建错误修复
| |-- kotlin-reviewer.md # Kotlin/Android/KMP 代码审查
| |-- kotlin-build-resolver.md # Kotlin/Gradle 构建错误修复
| |-- rust-reviewer.md # Rust 代码审查
| |-- rust-build-resolver.md # Rust 构建错误修复
| |-- pytorch-build-resolver.md # PyTorch/CUDA 训练错误修复
|
|-- skills/ # 工作流定义与领域知识库
| |-- coding-standards/ # 各语言最佳实践
| |-- clickhouse-io/ # ClickHouse 分析、查询与数据工程
| |-- backend-patterns/ # API、数据库、缓存设计模式
| |-- frontend-patterns/ # React、Next.js 开发模式
| |-- frontend-slides/ # HTML 幻灯片与 PPTX 转网页工作流(新增)
| |-- article-writing/ # 长文本写作,保留指定风格、避免通用 AI 腔调(新增)
| |-- content-engine/ # 多平台社交内容创作与复用工作流(新增)
| |-- market-research/ # 带来源引用的市场、竞品与投资方研究(新增)
| |-- investor-materials/ # 融资路演 PPT、单页摘要、备忘录与财务模型(新增)
| |-- investor-outreach/ # 定制化融资触达与跟进(新增)
| |-- continuous-learning/ # 从会话中自动提取模式(长文本指南)
| |-- continuous-learning-v2/ # 基于本能的学习,附带置信度评分
| |-- iterative-retrieval/ # 为子智能体渐进式优化上下文
| |-- strategic-compact/ # 手动上下文精简建议(长文本指南)
| |-- tdd-workflow/ # 测试驱动开发方法论
| |-- security-review/ # 安全检查清单
| |-- eval-harness/ # 验证循环评估(长文本指南)
| |-- verification-loop/ # 持续验证机制(长文本指南)
| |-- videodb/ # 音视频采集、检索、编辑、生成与推流(新增)
| |-- golang-patterns/ # Go 语言惯用写法与最佳实践
| |-- golang-testing/ # Go 测试模式、TDD 与基准测试
| |-- cpp-coding-standards/ # 遵循 C++ Core Guidelines 的编码规范(新增)
| |-- cpp-testing/ # 基于 GoogleTest、CMake/CTest 的 C++ 测试(新增)
| |-- django-patterns/ # Django 模式、模型与视图(新增)
| |-- django-security/ # Django 安全最佳实践(新增)
| |-- django-tdd/ # Django TDD 工作流(新增)
| |-- django-verification/ # Django 验证循环(新增)
| |-- laravel-patterns/ # Laravel 架构模式(新增)
| |-- laravel-security/ # Laravel 安全最佳实践(新增)
| |-- laravel-tdd/ # Laravel TDD 工作流(新增)
| |-- laravel-verification/ # Laravel 验证循环(新增)
| |-- python-patterns/ # Python 惯用写法与最佳实践(新增)
| |-- python-testing/ # 基于 pytest 的 Python 测试(新增)
| |-- quarkus-patterns/ # Java Quarkus 模式(新增)
| |-- quarkus-security/ # Quarkus 安全(新增)
| |-- quarkus-tdd/ # Quarkus TDD(新增)
| |-- quarkus-verification/ # Quarkus 验证(新增)
| |-- springboot-patterns/ # Java Spring Boot 模式(新增)
| |-- springboot-security/ # Spring Boot 安全(新增)
| |-- springboot-tdd/ # Spring Boot TDD(新增)
| |-- springboot-verification/ # Spring Boot 验证(新增)
| |-- configure-ecc/ # 交互式安装向导(新增)
| |-- security-scan/ # 集成 AgentShield 安全审计(新增)
| |-- java-coding-standards/ # Java 编码规范(新增)
| |-- jpa-patterns/ # JPA/Hibernate 模式(新增)
| |-- postgres-patterns/ # PostgreSQL 优化模式(新增)
| |-- nutrient-document-processing/ # 基于 Nutrient API 的文档处理(新增)
| |-- docs/examples/project-guidelines-template.md # 项目专属技能模板
| |-- database-migrations/ # 数据库迁移模式(Prisma、Drizzle、Django、Go)(新增)
| |-- api-design/ # REST API 设计、分页、错误响应(新增)
| |-- deployment-patterns/ # CI/CD、Docker、健康检查、回滚(新增)
| |-- docker-patterns/ # Docker Compose、网络、数据卷、容器安全(新增)
| |-- e2e-testing/ # Playwright E2E 模式与页面对象模型(新增)
| |-- content-hash-cache-pattern/ # 用于文件处理的 SHA-256 内容哈希缓存(新增)
| |-- cost-aware-llm-pipeline/ # LLM 成本优化、模型路由、预算跟踪(新增)
| |-- regex-vs-llm-structured-text/ # 文本解析:正则与 LLM 选型决策框架(新增)
| |-- swift-actor-persistence/ # 基于 Actor 的 Swift 线程安全数据持久化(新增)
| |-- swift-protocol-di-testing/ # 基于协议的依赖注入,实现可测试 Swift 代码(新增)
| |-- search-first/ # 先调研再编码工作流(新增)
| |-- skill-stocktake/ # 技能与命令质量审计(新增)
| |-- liquid-glass-design/ # iOS 26 Liquid Glass 设计系统(新增)
| |-- foundation-models-on-device/ # 基于 Apple FoundationModels 的端侧大模型(新增)
| |-- swift-concurrency-6-2/ # Swift 6.2 简洁并发编程(新增)
| |-- perl-patterns/ # 现代 Perl 5.36+ 惯用写法与最佳实践(新增)
| |-- perl-security/ # Perl 安全模式、污点模式、安全 I/O(新增)
| |-- perl-testing/ # 基于 Test2::V0、prove、Devel::Cover 的 Perl TDD(新增)
| |-- autonomous-loops/ # 自主循环模式:顺序流水线、PR 循环、DAG 编排(新增)
| |-- plankton-code-quality/ # 基于 Plankton 钩子的实时代码质量管控(新增)
|
|-- commands/ # 维护中的斜杠命令兼容层;优先使用 skills/
| |-- plan.md # /plan - 实现规划
| |-- code-review.md # /code-review - 代码质量审查
| |-- build-fix.md # /build-fix - 修复构建错误
| |-- quality-gate.md # /quality-gate - 验证门禁
| |-- refactor-clean.md # /refactor-clean - 清理无效代码
| |-- learn.md # /learn - 会话中提取模式(长文本指南)
| |-- learn-eval.md # /learn-eval - 提取、评估并保存模式(新增)
| |-- checkpoint.md # /checkpoint - 保存验证状态(长文本指南)
| |-- setup-pm.md # /setup-pm - 配置包管理器
| |-- go-review.md # /go-review - Go 代码审查(新增)
| |-- go-test.md # /go-test - Go TDD 工作流(新增)
| |-- go-build.md # /go-build - 修复 Go 构建错误(新增)
| |-- skill-create.md # /skill-create - 从 Git 历史生成技能(新增)
| |-- instinct-status.md # /instinct-status - 查看已学习本能(新增)
| |-- instinct-import.md # /instinct-import - 导入本能(新增)
| |-- instinct-export.md # /instinct-export - 导出本能(新增)
| |-- evolve.md # /evolve - 将本能聚类为技能
| |-- prune.md # /prune - 删除过期待处理本能(新增)
| |-- pm2.md # /pm2 - PM2 服务生命周期管理(新增)
| |-- multi-plan.md # /multi-plan - 多智能体任务拆解(新增)
| |-- multi-execute.md # /multi-execute - 多智能体工作流编排(新增)
| |-- multi-backend.md # /multi-backend - 后端多服务编排(新增)
| |-- multi-frontend.md # /multi-frontend - 前端多服务编排(新增)
| |-- multi-workflow.md # /multi-workflow - 通用多服务工作流(新增)
| |-- sessions.md # /sessions - 会话历史管理
| |-- test-coverage.md # /test-coverage - 测试覆盖率分析
| |-- update-docs.md # /update-docs - 更新文档
| |-- update-codemaps.md # /update-codemaps - 更新代码映射
| |-- python-review.md # /python-review - Python 代码审查(新增)
|-- legacy-command-shims/ # 已退役短命令的按需归档,例如 /tdd 和 /eval
| |-- tdd.md # /tdd - 优先使用 tdd-workflow 技能
| |-- e2e.md # /e2e - 优先使用 e2e-testing 技能
| |-- eval.md # /eval - 优先使用 eval-harness 技能
| |-- verify.md # /verify - 优先使用 verification-loop 技能
| |-- orchestrate.md # /orchestrate - 优先使用 dmux-workflows 或 multi-workflow
|
|-- rules/ # 必须遵守的规范(复制到 ~/.claude/rules/)
| |-- README.md # 结构概览与安装指南
| |-- common/ # 与语言无关的通用原则
| | |-- coding-style.md # 不可变性、文件组织规范
| | |-- git-workflow.md # 提交格式、PR 流程
| | |-- testing.md # TDD、80% 覆盖率要求
| | |-- performance.md # 模型选型、上下文管理
| | |-- patterns.md # 设计模式、项目骨架
| | |-- hooks.md # 钩子架构、TodoWrite
| | |-- agents.md # 子智能体委派时机
| | |-- security.md # 强制安全检查
| |-- typescript/ # TypeScript/JavaScript 专属规范
| |-- python/ # Python 专属规范
| |-- golang/ # Go 专属规范
| |-- swift/ # Swift 专属规范
| |-- php/ # PHP 专属规范(新增)
|
|-- hooks/ # 基于触发器的自动化逻辑
| |-- README.md # 钩子文档、使用示例与自定义指南
| |-- hooks.json # 全部钩子配置(PreToolUse、PostToolUse、Stop 等)
| |-- memory-persistence/ # 会话生命周期钩子(长文本指南)
| |-- strategic-compact/ # 上下文精简建议(长文本指南)
|
|-- scripts/ # 跨平台 Node.js 脚本(新增)
| |-- lib/ # 通用工具库
| | |-- utils.js # 跨平台文件 / 路径 / 系统工具
| | |-- package-manager.js # 包管理器检测与选择
| |-- hooks/ # 钩子实现
| | |-- session-start.js # 会话启动时加载上下文
| | |-- session-end.js # 会话结束时保存状态
| | |-- pre-compact.js # 上下文精简前状态保存
| | |-- suggest-compact.js # 策略性精简建议
| | |-- evaluate-session.js # 从会话中提取模式
| |-- setup-package-manager.js # 交互式包管理器设置
|
|-- tests/ # 测试套件(新增)
| |-- lib/ # 工具库测试
| |-- hooks/ # 钩子测试
| |-- run-all.js # 运行全部测试
|
|-- contexts/ # 动态注入的系统提示上下文(长文本指南)
| |-- dev.md # 开发模式上下文
| |-- review.md # 代码审查模式上下文
| |-- research.md # 研究 / 探索模式上下文
|
|-- examples/ # 配置与会话示例
| |-- CLAUDE.md # 项目级配置示例
| |-- user-CLAUDE.md # 用户级配置示例
| |-- saas-nextjs-CLAUDE.md # 真实 SaaS 项目(Next.js + Supabase + Stripe)
| |-- go-microservice-CLAUDE.md # 真实 Go 微服务(gRPC + PostgreSQL)
| |-- django-api-CLAUDE.md # 真实 Django REST API(DRF + Celery)
| |-- laravel-api-CLAUDE.md # 真实 Laravel API(PostgreSQL + Redis)(新增)
| |-- rust-api-CLAUDE.md # 真实 Rust API(Axum + SQLx + PostgreSQL)(新增)
|
|-- mcp-configs/ # MCP 服务端配置
| |-- mcp-servers.json # GitHub、Supabase、Vercel、Railway 等配置
|
|-- marketplace.json # 自托管应用商店配置(用于 /plugin marketplace add)
---
生态系统工具
技能创建器
两种从你的仓库生成 Claude Code 技能的方法:
选项 A:本地分析(内置)
使用 /skill-create 命令进行本地分析,无需外部服务:
/skill-create # 分析当前仓库
/skill-create --instincts # 还为 continuous-learning 生成直觉
这在本地分析你的 git 历史并生成 SKILL.md 文件。
选项 B:GitHub 应用(高级)
用于高级功能(10k+ 提交、自动 PR、团队共享):
# 在任何问题上评论:
/skill-creator analyze
# 或在推送到默认分支时自动触发
两个选项都创建:
- SKILL.md 文件 - 可直接用于 Claude Code 的技能
- 直觉集合 - 用于 continuous-learning-v2
- 模式提取 - 从你的提交历史中学习
AgentShield — 安全审计工具
于 Claude Code 黑客松(Cerebral Valley x Anthropic,2026 年 2 月)开发完成。包含 1282 项测试、98% 覆盖率、102 条静态分析规则。
扫描你的 Claude Code 配置,检测漏洞、错误配置与注入风险。
# 快速扫描(无需安装)
npx ecc-agentshield scan
# 自动修复安全问题
npx ecc-agentshield scan --fix
# 调用 3 个 Opus 4.6 智能体进行深度分析
npx ecc-agentshield scan --opus --stream
# 从零生成安全配置
npx ecc-agentshield init
扫描范围: CLAUDE.md、settings.json、MCP 配置、钩子、智能体定义与技能模块,覆盖 5 大类别 —— 密钥检测(14 种模式)、权限审计、钩子注入分析、MCP 服务风险评估、智能体配置审查。
--opus 参数:启动 3 个 Claude Opus 4.6 智能体组成红队/蓝队/审计管道。攻击者寻找利用链,防御者评估防护机制,审计者综合生成优先级风险报告。采用对抗推理,而非单纯模式匹配。
输出格式: 终端(彩色等级 A-F)、JSON(CI 流水线)、Markdown、HTML。发现严重问题时返回退出码 2,可用于构建门禁。
在 Claude Code 中使用 /security-scan 运行,或通过 GitHub Action 集成到 CI。
持续学习 v2
基于直觉的学习系统自动学习你的模式:
/instinct-status # 显示带有置信度的学习直觉
/instinct-import <file> # 从他人导入直觉
/instinct-export # 导出你的直觉以供分享
/evolve # 将相关直觉聚类到技能中
/promote # 将项目级直觉提升为全局直觉
/projects # 查看已识别项目与直觉统计
完整文档见 skills/continuous-learning-v2/。
---
环境要求
Claude Code 命令行版本
最低版本:v2.1.0 或更高
由于插件系统处理钩子的机制发生变更,本插件要求 Claude Code CLI 版本不低于 v2.1.0。
查看当前版本:
claude --version
重要提示:钩子自动加载机制
警告:贡献者请注意:请勿在
.claude-plugin/plugin.json中添加"hooks"字段。回归测试已强制禁止该操作。
Claude Code v2.1+ 会按照约定自动加载已安装插件中的 hooks/hooks.json。若在 plugin.json 中显式声明该文件,会触发重复检测错误:
检测到重复的钩子文件:./hooks/hooks.json 指向已加载的文件
历史说明:该问题曾在本仓库中引发多次「修复-回滚」循环(#29、#52、#103)。因 Claude Code 版本间行为变更导致混淆,现已添加回归测试,防止该问题再次出现。
---
安装
选项 1:作为插件安装(推荐)
使用此仓库的最简单方法 - 作为 Claude Code 插件安装:
# 将此仓库添加为市场
/plugin marketplace add https://github.com/affaan-m/ECC
# 安装插件
/plugin install ecc@ecc
或直接添加到你的 ~/.claude/settings.json:
{
"extraKnownMarketplaces": {
"ecc": {
"source": {
"source": "github",
"repo": "affaan-m/everything-claude-code"
}
}
},
"enabledPlugins": {
"ecc@ecc": true
}
}
这让你可以立即访问所有命令、代理、技能和钩子。
注意: Claude Code 插件系统不支持通过插件分发
rules(上游限制)。你需要手动安装规则: ``bash # 首先克隆仓库 git clone https://github.com/affaan-m/everything-claude-code.git # 方案 A:用户级规则(对所有项目生效) mkdir -p ~/.claude/rules cp -r everything-claude-code/rules/common ~/.claude/rules/ cp -r everything-claude-code/rules/typescript ~/.claude/rules/ # 选择你使用的技术栈 cp -r everything-claude-code/rules/python ~/.claude/rules/ cp -r everything-claude-code/rules/golang ~/.claude/rules/ cp -r everything-claude-code/rules/php ~/.claude/rules/ # 方案 B:项目级规则(仅对当前项目生效) mkdir -p .claude/rules cp -r everything-claude-code/rules/common .claude/rules/ cp -r everything-claude-code/rules/typescript .claude/rules/ # 选择你使用的技术栈``
---
选项 2:手动安装
如果你希望手动控制安装内容,可按以下步骤操作:
# 克隆仓库
git clone https://github.com/affaan-m/everything-claude-code.git
# 将智能体文件复制到 Claude 配置目录
cp everything-claude-code/agents/*.md ~/.claude/agents/
# 复制规则目录(通用规则 + 特定语言规则)
mkdir -p ~/.claude/rules
cp -r everything-claude-code/rules/common ~/.claude/rules/
cp -r everything-claude-code/rules/typescript ~/.claude/rules/ # 选择你使用的技术栈
cp -r everything-claude-code/rules/python ~/.claude/rules/
cp -r everything-claude-code/rules/golang ~/.claude/rules/
cp -r everything-claude-code/rules/php ~/.claude/rules/
# 优先复制技能模块(核心工作流)
# 新用户推荐:仅复制核心/通用技能
cp -r everything-claude-code/.agents/skills/* ~/.claude/skills/
cp -r everything-claude-code/skills/search-first ~/.claude/skills/
# 可选:仅在需要时添加细分领域/框架专属技能
# for s in django-patterns django-tdd laravel-patterns springboot-patterns quarkus-patterns; do
# cp -r everything-claude-code/skills/$s ~/.claude/skills/
# done
# 可选:迁移期间保留维护中的斜杠命令兼容
mkdir -p ~/.claude/commands
cp everything-claude-code/commands/*.md ~/.claude/commands/
# 已退役短命令位于 legacy-command-shims/commands/。
# 仅在仍需要 /tdd 等旧名称时,单独复制对应文件。
将钩子配置添加到 settings.json
仅适用于手动安装:如果你没有通过 Claude 插件方式安装 ECC,可以将 hooks/hooks.json 中的钩子配置复制到你的 ~/.claude/settings.json 文件中。
如果你是通过 /plugin install 安装 ECC,请不要再把这些钩子复制到 settings.json。Claude Code v2.1+ 会自动加载插件中的 hooks/hooks.json,重复注册会导致重复执行以及 ${CLAUDE_PLUGIN_ROOT} 无法解析。
配置 MCP 服务
从 mcp-configs/mcp-servers.json 中复制需要的 MCP 服务定义,粘贴到官方 Claude Code 配置文件 ~/.claude/settings.json 中; 若需要仓库本地的 MCP 访问权限,可粘贴到项目级配置文件 .mcp.json 中。
如果你已自行运行 ECC 捆绑的 MCP 服务,设置以下环境变量:
export ECC_DISABLED_MCPS="github,context7,exa,playwright,sequential-thinking,memory"
ECC 托管的安装程序和 Codex 同步流程将跳过或移除这些服务,避免重复添加。
重要提示:将配置中的 YOUR_*_HERE 占位符替换为你真实的 API 密钥。
---
关键概念
代理
子代理以有限范围处理委托的任务。示例:
---
name: code-reviewer
description: 审查代码的质量、安全性和可维护性
tools: ["Read", "Grep", "Glob", "Bash"]
model: opus
---
你是一名高级代码审查员...
技能
技能是由命令或代理调用的工作流定义:
# TDD 工作流
1. 首先定义接口
2. 编写失败的测试(RED)
3. 实现最少的代码(GREEN)
4. 重构(IMPROVE)
5. 验证 80%+ 的覆盖率
钩子
钩子在工具事件时触发。示例 - 警告 console.log:
{
"matcher": "tool == \"Edit\" && tool_input.file_path matches \"\\\\.(ts|tsx|js|jsx)$\"",
"hooks": [{
"type": "command",
"command": "#!/bin/bash\ngrep -n 'console\\.log' \"$file_path\" && echo '[Hook] 移除 console.log' >&2"
}]
}
规则
规则是始终遵循的指南,分为 common/(通用)+ 语言特定目录:
~/.claude/rules/
common/ # 通用原则(必装)
typescript/ # TS/JS 特定模式和工具
python/ # Python 特定模式和工具
golang/ # Go 特定模式和工具
perl/ # Perl 特定模式和工具
---
运行测试
插件包含一个全面的测试套件:
# 运行所有测试
node tests/run-all.js
# 运行单个测试文件
node tests/lib/utils.test.js
node tests/lib/package-manager.test.js
node tests/hooks/hooks.test.js
---
贡献
欢迎并鼓励贡献。
这个仓库旨在成为社区资源。如果你有:
- 有用的代理或技能
- 聪明的钩子
- 更好的 MCP 配置
- 改进的规则
请贡献!请参阅 CONTRIBUTING.md 了解指南。
贡献想法
- 特定语言技能(Rust、C#、Kotlin、Java)—— Go、Python、Perl、Swift 和 TypeScript 已内置
- 特定框架配置(Rails、FastAPI)—— Django、NestJS、Spring Boot 和 Laravel 已内置
- DevOps 智能体(Kubernetes、Terraform、AWS、Docker)
- 测试策略(多种测试框架、视觉回归测试)
- 领域专属知识库(机器学习、数据工程、移动端开发)
---
背景
自实验性推出以来,我一直在使用 Claude Code。2025 年 9 月,与 @DRodriguezFX 一起使用 Claude Code 构建 zenith.chat,赢得了 Anthropic x Forum Ventures 黑客马拉松。
这些配置在多个生产应用中经过了实战测试。
---
WARNING: 重要说明
上下文窗口管理
关键: 不要一次启用所有 MCP。如果启用了太多工具,你的 200k 上下文窗口可能会缩小到 70k。
经验法则:
- 配置 20-30 个 MCP
- 每个项目保持启用少于 10 个
- 活动工具少于 80 个
在项目配置中使用 disabledMcpServers 来禁用未使用的。
定制化
这些配置适用于我的工作流。你应该:
- 从适合你的开始
- 为你的技术栈进行修改
- 删除你不使用的
- 添加你自己的模式
---
社区项目
基于 Everything Claude Code 构建或受其启发的项目:
| 项目 | 介绍 |
|---|---|
| EVC | 营销智能体工作区 — 包含 42 条命令,面向内容运营、品牌管控与多渠道发布。可视化概览。 |
如果你用 ECC 做了项目,欢迎提交 PR 添加到这里。
---
赞助者
本项目免费开源。赞助支持项目持续维护与功能迭代。
---
Star 历史
---
链接
- 快速上手指南(入门首选): Everything Claude Code 简明指南
- 长文指南(高阶进阶): Everything Claude Code 完整版深度指南
- 安全指南: 安全指南 | 推文详解
- 关注作者: @affaanmustafa
---
许可证
MIT - 自由使用,根据需要修改,如果可以请回馈。
---
如果这个仓库有帮助,请给它一个 Star。阅读两个指南。构建一些很棒的东西。
Language: English | Português (Brasil) | 简体中文 | 繁體中文 | 日本語 | 한국어 | Türkçe | Русский | Tiếng Việt | ไทย | Deutsch | Español

[!WARNING] Official sources only. Install ECC only from verified channels: the GitHub repository github.com/affaan-m/ECC, the npm packages
ecc-universalandecc-agentshield, the GitHub App, the plugin slugecc@ecc, and the project website ecc.tools. Third-party re-uploads and unofficial mirrors are not maintained or reviewed by the project and may contain malware.
211.9K+ stars | 32.5K+ forks | 230+ contributors | 12+ language ecosystems | Cross-harness agent workflows
---
<div align="center">
Language / 语言 / 語言 / Dil / Язык / Ngôn ngữ / Idioma
English | Português (Brasil) | 简体中文 | 繁體中文 | 日本語 | 한국어 | Türkçe | Русский | Tiếng Việt | ไทย | Deutsch | Español
</div>
---
The harness-native operator system for agentic work. Built from real-world multi-harness engineering workflows.
Not just configs. A complete system: skills, instincts, memory optimization, continuous learning, security scanning, and research-first development. Production-ready agents, skills, hooks, rules, MCP configurations, and legacy command shims evolved over 10+ months of intensive daily use building real products.
Works across Codex, Claude Code, Cursor, OpenCode, Gemini, Zed, GitHub Copilot, and other AI agent harnesses.
ECC v2.0.0 adds the public Hermes operator story on top of that reusable layer: start with the Hermes setup guide, then review the 2.0.0 release notes and cross-harness architecture.
---
<table> <tr> <td width="25%" align="center"> <a href="https://ecc.tools/pricing"> <strong> ECC Pro</strong><br /> <sub>Private repos · GitHub App · $19/seat/mo</sub> </a> </td> <td width="25%" align="center"> <a href="https://github.com/sponsors/affaan-m"> <strong> Sponsor</strong><br /> <sub>Fund the OSS · From $5/mo</sub> </a> </td> <td width="25%" align="center"> <a href="https://github.com/affaan-m/ECC/discussions"> <strong>Community</strong> <br /> <sub>Discussions · Q&A · Show & Tell</sub> </a> </td> <td width="25%" align="center"> <a href="https://github.com/apps/ecc-tools"> <strong> GitHub App</strong><br /> <sub>Install · PR audits · Free tier</sub> </a> </td> </tr> </table>
<sub>OSS stays free. This repo is MIT-licensed forever. ECC Pro is the hosted GitHub App for private repos. <a href="https://github.com/sponsors/affaan-m">Sponsors</a> and <a href="https://ecc.tools/pricing">Pro subscribers</a> fund the work — that's why a single maintainer ships weekly across 7 harnesses.</sub>
<div align="center">
<sub><strong>Business sponsors</strong></sub>
<table> <tr> <td align="center" width="220"> <a href="https://www.coderabbit.ai"> <img src="assets/images/sponsors/coderabbit.png" width="96" alt="CodeRabbit logo" /><br /> <strong>CodeRabbit</strong> </a> </td> <td align="center" width="220"> <a href="https://www.greptile.com/go/ecc"> <img src="assets/images/sponsors/greptile.png" width="96" alt="Greptile logo" /><br /> <strong>Greptile</strong> </a> </td> <td align="center" width="220"> <a href="https://www.atlascloud.ai/?utm_source=github&utm_medium=link&utm_campaign=ECC"> <img src="assets/images/sponsors/atlascloud.png" width="96" alt="Atlas Cloud logo" /><br /> <strong>Atlas Cloud</strong> </a> </td> </tr> </table>
<sub><strong>Community sponsors:</strong> <a href="https://github.com/mikejmorgan-ai">Mike Morgan</a> · <a href="https://github.com/jasonwu513">@jasonwu513</a> · <a href="https://github.com/1anter">@1anter</a> · <a href="https://github.com/massimotodaro">@massimotodaro</a> · <a href="https://github.com/meadmccabe">@meadmccabe</a></sub>
<sub><a href="https://github.com/sponsors/affaan-m"><strong>Become a Sponsor</strong></a> · <a href="SPONSORS.md">Sponsor Tiers</a> · <a href="SPONSORING.md">Sponsorship Program</a></sub>
</div>
---
The Guides
This repo is the raw code only. The guides explain everything.
<table> <tr> <td width="50%" align="center"> <a href="./the-shortform-guide.md"> <img src="./assets/images/shortform/00-header.png" width="420" alt="The Shorthand Guide to ECC" /><br /> <b>The Shorthand Guide</b> </a> <br /><sub>Setup, foundations, philosophy. <b>Read this first.</b> (<a href="https://x.com/affaan/status/2012378465664745795">thread</a>)</sub> </td> <td width="50%" align="center"> <a href="./the-longform-guide.md"> <img src="./assets/images/longform/01-header.png" width="420" alt="The Longform Guide to ECC" /><br /> <b>The Longform Guide</b> </a> <br /><sub>Token optimization, memory persistence, evals, parallelization. (<a href="https://x.com/affaan/status/2014040193557471352">thread</a>)</sub> </td> </tr> </table>
<div align="center"> <a href="./the-security-guide.md"> <img src="./assets/images/security/security-guide-header.png" width="420" alt="The Shorthand Guide to Everything Agentic Security" /><br /> <b>The Security Guide</b> </a> <br /><sub>Attack vectors, sandboxing, sanitization, CVEs, AgentShield. (<a href="https://x.com/affaan/status/2033263813387223421">thread</a>)</sub> </div>
| Topic | What You'll Learn |
|---|---|
| Token Optimization | Model selection, system prompt slimming, background processes |
| Memory Persistence | Hooks that save/load context across sessions automatically |
| Continuous Learning | Auto-extract patterns from sessions into reusable skills |
| Verification Loops | Checkpoint vs continuous evals, grader types, pass@k metrics |
| Parallelization | Git worktrees, cascade method, when to scale instances |
| Subagent Orchestration | The context problem, iterative retrieval pattern |
---
What's New
v2.0.0 — The Agent Harness Operating System (Jun 2026)
Stable graduation of the 2.0 line: 261 skills, the control-pane substrate (session adapters + MCP inventory), the worktree-lifecycle service, the orch-* orchestrator family, and the launch of the ECC Discord community. Full notes: docs/releases/2.0.0/release-notes.md.
v2.0.0-rc.1 — Surface Refresh, Operator Workflows, and ECC 2.0 Alpha (Apr 2026)
- Dashboard GUI — New Tkinter-based desktop application (
ecc_dashboard.pyornpm run dashboard) with dark/light theme toggle, font customization, and project logo in header and taskbar. - Public surface synced to the live repo — metadata, catalog counts, plugin manifests, and install-facing docs now match the actual OSS surface: 66 agents, 268 skills, and 84 legacy command shims.
- Operator and outbound workflow expansion —
brand-voice,social-graph-ranker,connections-optimizer,customer-billing-ops,ecc-tools-cost-audit,google-workspace-ops,project-flow-ops, andworkspace-surface-auditround out the operator lane. - Media and launch tooling —
manim-video,remotion-video-creation, and upgraded social publishing surfaces make technical explainers and launch content part of the same system. - Framework and product surface growth —
nestjs-patterns, richer Codex/OpenCode install surfaces, and expanded cross-harness packaging keep the repo usable beyond Claude Code alone. - Itô prediction-market skill pack —
ito-market-intelligence,ito-basket-compare,ito-trade-planner,ito-data-atlas-agent,prediction-market-oracle-research, andprediction-market-risk-reviewadd public, non-advisory market/basket workflows while keeping live Itô API access gated and separate from ECC Tools billing. - Optimization skill pack —
parallel-execution-optimizer,benchmark-optimization-loop,data-throughput-accelerator,latency-critical-systems, andrecursive-decision-ledgerturn repeated speed/recursion prompts into bounded benchmark, throughput, and decision-ledger workflows. - ECC 2.0 alpha is in-tree — the Rust control-plane prototype in
ecc2/now builds locally and exposesdashboard,start,sessions,status,stop,resume, anddaemoncommands. It is usable as an alpha, not yet a general release. - Operator status snapshots —
ecc status --markdown --write status.mdturns the local state store into a portable handoff covering readiness, active sessions, skill-run health, install health, pending governance events, and linked work items from Linear/GitHub/handoffs. Useecc work-items upsert ...for manual entries,ecc work-items sync-github --repo owner/repofor PR/issue queue state, andecc status --exit-codeto fail automation when readiness needs attention. - Ecosystem hardening — AgentShield, ECC Tools cost controls, billing portal work, and website refreshes continue to ship around the core plugin instead of drifting into separate silos.
v1.9.0 — Selective Install & Language Expansion (Mar 2026)
- Selective install architecture — Manifest-driven install pipeline with
install-plan.jsandinstall-apply.jsfor targeted component installation. State store tracks what's installed and enables incremental updates. - 6 new agents —
typescript-reviewer,pytorch-build-resolver,java-build-resolver,java-reviewer,kotlin-reviewer,kotlin-build-resolverexpand language coverage to 10 languages. - New skills —
pytorch-patternsfor deep learning workflows,documentation-lookupfor API reference research,bun-runtimeandnextjs-turbopackfor modern JS toolchains, plus 8 operational domain skills andmcp-server-patterns. - Session & state infrastructure — SQLite state store with query CLI, session adapters for structured recording, skill evolution foundation for self-improving skills.
- Orchestration overhaul — Harness audit scoring made deterministic, orchestration status and launcher compatibility hardened, observer loop prevention with 5-layer guard.
- Observer reliability — Memory explosion fix with throttling and tail sampling, sandbox access fix, lazy-start logic, and re-entrancy guard.
- 12 language ecosystems — New rules for Java, PHP, Perl, Kotlin/Android/KMP, C++, and Rust join existing TypeScript, Python, Go, and common rules.
- Community contributions — Korean and Chinese translations, biome hook optimization, video processing skills, operational skills, PowerShell installer, Antigravity IDE support.
- CI hardening — 19 test failure fixes, catalog count enforcement, install manifest validation, and full test suite green.
v1.8.0 — Harness Performance System (Mar 2026)
- Harness-first release — ECC is now explicitly framed as an agent harness performance system, not just a config pack.
- Hook reliability overhaul — SessionStart root fallback, Stop-phase session summaries, and script-based hooks replacing fragile inline one-liners.
- Hook runtime controls —
ECC_HOOK_PROFILE=minimal|standard|strictandECC_DISABLED_HOOKS=...for runtime gating without editing hook files. - New harness commands —
/harness-audit,/loop-start,/loop-status,/quality-gate,/model-route. - NanoClaw v2 — model routing, skill hot-load, session branch/search/export/compact/metrics.
- Cross-harness parity — behavior tightened across Claude Code, Cursor, OpenCode, and Codex app/CLI.
- 997 internal tests passing — full suite green after hook/runtime refactor and compatibility updates.
v1.7.0 — Cross-Platform Expansion & Presentation Builder (Feb 2026)
- Codex app + CLI support — Direct
AGENTS.md-based Codex support, installer targeting, and Codex docs frontend-slidesskill — Zero-dependency HTML presentation builder with PPTX conversion guidance and strict viewport-fit rules- 5 new generic business/content skills —
article-writing,content-engine,market-research,investor-materials,investor-outreach - Broader tool coverage — Cursor, Codex, and OpenCode support tightened so the same repo ships cleanly across all major harnesses
- 992 internal tests — Expanded validation and regression coverage across plugin, hooks, skills, and packaging
v1.6.0 — Codex CLI, AgentShield & Marketplace (Feb 2026)
- Codex CLI support — New
/codex-setupcommand generatescodex.mdfor OpenAI Codex CLI compatibility - 7 new skills —
search-first,swift-actor-persistence,swift-protocol-di-testing,regex-vs-llm-structured-text,content-hash-cache-pattern,cost-aware-llm-pipeline,skill-stocktake - AgentShield integration —
/security-scanskill runs AgentShield directly from Claude Code; 1282 tests, 102 rules - GitHub Marketplace — ECC Tools GitHub App live at github.com/marketplace/ecc-tools with free/pro/enterprise tiers
- 30+ community PRs merged — Contributions from 30 contributors across 6 languages
- 978 internal tests — Expanded validation suite across agents, skills, commands, hooks, and rules
v1.4.1 — Bug Fix (Feb 2026)
- Fixed instinct import content loss —
parse_instinct_file()was silently dropping all content after frontmatter (Action, Evidence, Examples sections) during/instinct-import. (#148, #161)
v1.4.0 — Multi-Language Rules, Installation Wizard & PM2 (Feb 2026)
- Interactive installation wizard — New
configure-eccskill provides guided setup with merge/overwrite detection - PM2 & multi-agent orchestration — 6 new commands (
/pm2,/multi-plan,/multi-execute,/multi-backend,/multi-frontend,/multi-workflow) for managing complex multi-service workflows - Multi-language rules architecture — Rules restructured from flat files into
common/+typescript/+python/+golang/directories. Install only the languages you need - Chinese (zh-CN) translations — Complete translation of all agents, commands, skills, and rules (80+ files)
- GitHub Sponsors support — Sponsor the project via GitHub Sponsors
- Enhanced CONTRIBUTING.md — Detailed PR templates for each contribution type
v1.3.0 — OpenCode Plugin Support (Feb 2026)
- Full OpenCode integration — 12 agents, 24 commands, 16 skills with hook support via OpenCode's plugin system (20+ event types)
- 3 native custom tools — run-tests, check-coverage, security-audit
- LLM documentation —
llms.txtfor comprehensive OpenCode docs
v1.2.0 — Unified Commands & Skills (Feb 2026)
- Python/Django support — Django patterns, security, TDD, and verification skills
- Java Spring Boot skills — Patterns, security, TDD, and verification for Spring Boot
- Session management —
/sessionscommand for session history - Continuous learning v2 — Instinct-based learning with confidence scoring, import/export, evolution
See the full changelog in Releases.
---
Quick Start
Get up and running in under 2 minutes:
Pick one path only
Most Claude Code users should use exactly one install path:
- Recommended default: install the Claude Code plugin, then copy only the rule folders you actually want.
- Use the manual installer only if you want finer-grained control, want to avoid the plugin path entirely, or your Claude Code build has trouble resolving the self-hosted marketplace entry.
- Do not stack install methods. The most common broken setup is:
/plugin installfirst, theninstall.sh --profile fullornpx ecc-install --profile fullafterward.
If you already layered multiple installs and things look duplicated, skip straight to Reset / Uninstall ECC.
Low-context / no-hooks path
If hooks feel too global or you only want ECC's rules, agents, commands, and core workflow skills, skip the plugin and use the minimal manual profile:
./install.sh --profile minimal --target claude
.\install.ps1 --profile minimal --target claude
# or
npx ecc-install --profile minimal --target claude
This profile intentionally excludes hooks-runtime.
If you want the normal core profile but need hooks off, use:
./install.sh --profile core --without baseline:hooks --target claude
Add hooks later only if you want runtime enforcement:
./install.sh --target claude --modules hooks-runtime
Find the right components first
If you are not sure which ECC profile or component to install, ask the packaged advisor from any project:
npx ecc consult "security reviews" --target claude
It returns matching components, related profiles, and preview/install commands. Use the preview command before installing if you want to inspect the exact file plan.
For production ML/MLOps workflows, keep the install opt-in and component-scoped:
npx ecc consult "mlops training model deployment" --target claude
npx ecc install --profile minimal --target claude --with capability:machine-learning
Step 1: Install the Plugin (Recommended)
NOTE: The plugin is convenient, but the OSS installer below is still the most reliable path if your Claude Code build has trouble resolving self-hosted marketplace entries.
# Add marketplace
/plugin marketplace add https://github.com/affaan-m/ECC
# Install plugin
/plugin install ecc@ecc
Naming + Migration Note
ECC now has three public identifiers, and they are not interchangeable:
- GitHub source repo:
affaan-m/ECC - Claude marketplace/plugin identifier:
ecc@ecc - npm package:
ecc-universal
This is intentional. Anthropic marketplace/plugin installs are keyed by a canonical plugin identifier, so ECC uses ecc@ecc to keep tool names and slash-command namespaces short enough for strict Desktop/API validators. Older posts may still show the former long marketplace identifier; treat that as a legacy alias only. Separately, the npm package stayed on ecc-universal, so npm installs and marketplace installs intentionally use different names.
Step 2: Install Rules Only If You Need Them
WARNING: Important: Claude Code plugins cannot distribute
rulesautomatically. If you already installed ECC via/plugin install, do not run./install.sh --profile full,.\install.ps1 --profile full, ornpx ecc-install --profile fullafterward. The plugin already loads ECC skills, commands, and hooks. Running the full installer after a plugin install copies those same surfaces into your user directories and can create duplicate skills plus duplicate runtime behavior. For plugin installs, manually copy only therules/directories you want under~/.claude/rules/ecc/. Start withrules/commonplus one language or framework pack you actually use. Do not copy every rules directory unless you explicitly want all of that context in Claude. Use the full installer only when you are doing a fully manual ECC install instead of the plugin path. If your local Claude setup was wiped or reset, that does not mean you need to repurchase ECC. Start withnode scripts/ecc.js list-installed, then runnode scripts/ecc.js doctorandnode scripts/ecc.js repairbefore reinstalling anything. That usually restores ECC-managed files without rebuilding your setup. If the problem is account or marketplace access for ECC Tools, handle billing/account recovery separately.
# Clone the repo first
git clone https://github.com/affaan-m/ECC.git
cd ECC
# Install dependencies (pick your package manager)
npm install # or: pnpm install | yarn install | bun install
# Plugin install path: copy only ECC rules into an ECC-owned namespace
mkdir -p ~/.claude/rules/ecc
cp -R rules/common ~/.claude/rules/ecc/
cp -R rules/typescript ~/.claude/rules/ecc/
# Fully manual ECC install path (use this instead of /plugin install)
# ./install.sh --profile full
# Windows PowerShell
# Plugin install path: copy only ECC rules into an ECC-owned namespace
New-Item -ItemType Directory -Force -Path "$HOME/.claude/rules/ecc" | Out-Null
Copy-Item -Recurse rules/common "$HOME/.claude/rules/ecc/"
Copy-Item -Recurse rules/typescript "$HOME/.claude/rules/ecc/"
# Fully manual ECC install path (use this instead of /plugin install)
# .\install.ps1 --profile full
# npx ecc-install --profile full
For manual install instructions see the README in the rules/ folder. When copying rules manually, copy the whole language directory (for example rules/common or rules/golang), not the files inside it, so relative references keep working and filenames do not collide.
Fully manual install (Fallback)
Use this only if you are intentionally skipping the plugin path:
./install.sh --profile full
.\install.ps1 --profile full
# or
npx ecc-install --profile full
If you choose this path, stop there. Do not also run /plugin install.
Reset / Uninstall ECC
If ECC feels duplicated, intrusive, or broken, do not keep reinstalling it on top of itself.
- Plugin path: remove the plugin from Claude Code, then delete the specific rule folders you manually copied under
~/.claude/rules/ecc/. - Manual installer / CLI path: from the repo root, preview removal first:
node scripts/uninstall.js --dry-run
Then remove ECC-managed files:
node scripts/uninstall.js
You can also use the lifecycle wrapper:
node scripts/ecc.js list-installed
node scripts/ecc.js doctor
node scripts/ecc.js repair
node scripts/ecc.js uninstall --dry-run
ECC only removes files recorded in its install-state. It will not delete unrelated files it did not install.
If you stacked methods, clean up in this order:
- Remove the Claude Code plugin install.
- Run the ECC uninstall command from the repo root to remove install-state-managed files.
- Delete any extra rule folders you copied manually and no longer want.
- Reinstall once, using a single path.
Step 3: Start Using
# Skills are the primary workflow surface.
# Existing slash-style command names still work while ECC migrates off commands/.
# Plugin install uses the canonical namespaced form
/ecc:plan "Add user authentication"
# Manual install keeps the shorter slash form:
# /plan "Add user authentication"
# Check available commands
/plugin list ecc@ecc
That's it! You now have access to 67 agents, 278 skills, and 94 legacy command shims.
Dashboard GUI
Launch the desktop dashboard to visually explore ECC components:
npm run dashboard
# or
python3 ./ecc_dashboard.py
Features:
- Tabbed interface: Agents, Skills, Commands, Rules, Settings
- Dark/Light theme toggle
- Font customization (family & size)
- Project logo in header and taskbar
- Search and filter across all components
Multi-model commands require additional setup
WARNING:
multi-*commands are not covered by the base plugin/rules install above. To use/multi-plan,/multi-execute,/multi-backend,/multi-frontend, and/multi-workflow, you must also install theccg-workflowruntime. Initialize it withnpx ccg-workflow. That runtime provides the external dependencies these commands expect, including: -~/.claude/bin/codeagent-wrapper-~/.claude/.ccg/prompts/*Withoutccg-workflow, thesemulti-*commands will not run correctly.
---
Cross-Platform Support
This plugin now fully supports Windows, macOS, and Linux, alongside tight integration across major IDEs (Cursor, Zed, OpenCode, Antigravity) and CLI harnesses. All hooks and scripts have been rewritten in Node.js for maximum compatibility.
Package Manager Detection
The plugin automatically detects your preferred package manager (npm, pnpm, yarn, or bun) with the following priority:
- Environment variable:
CLAUDE_PACKAGE_MANAGER - Project config:
.claude/package-manager.json - package.json:
packageManagerfield - Lock file: Detection from package-lock.json, yarn.lock, pnpm-lock.yaml, or bun.lockb
- Global config:
~/.claude/package-manager.json - Fallback: First available package manager
To set your preferred package manager:
# Via environment variable
export CLAUDE_PACKAGE_MANAGER=pnpm
# Via global config
node scripts/setup-package-manager.js --global pnpm
# Via project config
node scripts/setup-package-manager.js --project bun
# Detect current setting
node scripts/setup-package-manager.js --detect
Or use the /setup-pm command in Claude Code.
Hook Runtime Controls
Use runtime flags to tune strictness or disable specific hooks temporarily:
# Hook strictness profile (default: standard)
export ECC_HOOK_PROFILE=standard
# Comma-separated hook IDs to disable
export ECC_DISABLED_HOOKS="pre:bash:tmux-reminder,post:edit:typecheck"
# Cap SessionStart additional context (default: 8000 chars)
export ECC_SESSION_START_MAX_CHARS=4000
# Disable SessionStart additional context entirely for low-context/local-model setups
export ECC_SESSION_START_CONTEXT=off
# Session-tmp retention window in days (default: 30).
# Set to 0, off, false, disabled, never, or none to keep all sessions (disable pruning).
export ECC_SESSION_RETENTION_DAYS=14
# Cap how many learned instincts SessionStart injects into context (default: 6)
export ECC_MAX_INJECTED_INSTINCTS=6
# Minimum confidence an instinct needs to be injected, 0-1 (default: 0.7)
export ECC_INSTINCT_CONFIDENCE_THRESHOLD=0.7
# Keep context/scope/loop warnings but suppress API-rate cost estimates
export ECC_CONTEXT_MONITOR_COST_WARNINGS=off
Windows PowerShell:
[Environment]::SetEnvironmentVariable('ECC_CONTEXT_MONITOR_COST_WARNINGS', 'off', 'User')
[Environment]::SetEnvironmentVariable('ECC_SESSION_RETENTION_DAYS', '14', 'User')
Agent data home (multi-harness isolation)
Memory persistence hooks (session summaries, learned skills, session aliases, metrics) store data under a single agent data root. By default that root is ~/.claude. When you use ECC in both Claude Code and Cursor on the same machine, set a separate root for Cursor so the two environments do not overwrite each other's session files:
# Cursor-only boundary (Claude Code keeps the default ~/.claude)
export ECC_AGENT_DATA_HOME="$HOME/.cursor/ecc"
Paths resolved under that root include:
$ECC_AGENT_DATA_HOME/session-data/— session summaries$ECC_AGENT_DATA_HOME/skills/learned/— learned skills from evaluate-session$ECC_AGENT_DATA_HOME/session-aliases.json— session aliases$ECC_AGENT_DATA_HOME/metrics/— cost and activity metrics
See affaan-m/ECC#2065.
---
What's Inside
This repo is a Claude Code plugin - install it directly or copy components manually.
ECC/
|-- .claude-plugin/ # Plugin and marketplace manifests
| |-- plugin.json # Plugin metadata and component paths
| |-- marketplace.json # Marketplace catalog for /plugin marketplace add
|
|-- agents/ # 67 specialized subagents for delegation
| |-- planner.md # Feature implementation planning
| |-- architect.md # System design decisions
| |-- tdd-guide.md # Test-driven development
| |-- code-reviewer.md # Quality and security review
| |-- security-reviewer.md # Vulnerability analysis
| |-- build-error-resolver.md
| |-- e2e-runner.md # Playwright E2E testing
| |-- refactor-cleaner.md # Dead code cleanup
| |-- doc-updater.md # Documentation sync
| |-- docs-lookup.md # Documentation/API lookup
| |-- chief-of-staff.md # Communication triage and drafts
| |-- loop-operator.md # Autonomous loop execution
| |-- harness-optimizer.md # Harness config tuning
| |-- cpp-reviewer.md # C++ code review
| |-- cpp-build-resolver.md # C++ build error resolution
| |-- fsharp-reviewer.md # F# functional code review
| |-- go-reviewer.md # Go code review
| |-- go-build-resolver.md # Go build error resolution
| |-- python-reviewer.md # Python code review
| |-- database-reviewer.md # Database/Supabase review
| |-- typescript-reviewer.md # TypeScript/JavaScript code review
| |-- java-reviewer.md # Java/Spring Boot code review
| |-- java-build-resolver.md # Java/Maven/Gradle build errors
| |-- kotlin-reviewer.md # Kotlin/Android/KMP code review
| |-- kotlin-build-resolver.md # Kotlin/Gradle build errors
| |-- harmonyos-app-resolver.md # HarmonyOS/ArkTS app development
| |-- rust-reviewer.md # Rust code review
| |-- rust-build-resolver.md # Rust build error resolution
| |-- pytorch-build-resolver.md # PyTorch/CUDA training errors
| |-- mle-reviewer.md # Production ML pipeline, eval, serving, and monitoring review
|
|-- skills/ # Workflow definitions and domain knowledge
| |-- coding-standards/ # Language best practices
| |-- clickhouse-io/ # ClickHouse analytics, queries, data engineering
| |-- backend-patterns/ # API, database, caching patterns
| |-- frontend-patterns/ # React, Next.js patterns
| |-- frontend-slides/ # HTML slide decks and PPTX-to-web presentation workflows (NEW)
| |-- article-writing/ # Long-form writing in a supplied voice without generic AI tone (NEW)
| |-- content-engine/ # Multi-platform social content and repurposing workflows (NEW)
| |-- market-research/ # Source-attributed market, competitor, and investor research (NEW)
| |-- investor-materials/ # Pitch decks, one-pagers, memos, and financial models (NEW)
| |-- investor-outreach/ # Personalized fundraising outreach and follow-up (NEW)
| |-- continuous-learning/ # Legacy v1 Stop-hook pattern extraction
| |-- continuous-learning-v2/ # Instinct-based learning with confidence scoring
| |-- iterative-retrieval/ # Progressive context refinement for subagents
| |-- strategic-compact/ # Manual compaction suggestions (Longform Guide)
| |-- tdd-workflow/ # TDD methodology
| |-- security-review/ # Security checklist
| |-- eval-harness/ # Verification loop evaluation (Longform Guide)
| |-- verification-loop/ # Continuous verification (Longform Guide)
| |-- videodb/ # Video and audio: ingest, search, edit, generate, stream (NEW)
| |-- golang-patterns/ # Go idioms and best practices
| |-- golang-testing/ # Go testing patterns, TDD, benchmarks
| |-- cpp-coding-standards/ # C++ coding standards from C++ Core Guidelines (NEW)
| |-- cpp-testing/ # C++ testing with GoogleTest, CMake/CTest (NEW)
| |-- django-patterns/ # Django patterns, models, views (NEW)
| |-- django-security/ # Django security best practices (NEW)
| |-- django-tdd/ # Django TDD workflow (NEW)
| |-- django-verification/ # Django verification loops (NEW)
| |-- laravel-patterns/ # Laravel architecture patterns (NEW)
| |-- laravel-security/ # Laravel security best practices (NEW)
| |-- laravel-tdd/ # Laravel TDD workflow (NEW)
| |-- laravel-verification/ # Laravel verification loops (NEW)
| |-- python-patterns/ # Python idioms and best practices (NEW)
| |-- python-testing/ # Python testing with pytest (NEW)
| |-- quarkus-patterns/ # Java Quarkus patterns (NEW)
| |-- quarkus-security/ # Quarkus security (NEW)
| |-- quarkus-tdd/ # Quarkus TDD (NEW)
| |-- quarkus-verification/ # Quarkus verification (NEW)
| |-- springboot-patterns/ # Java Spring Boot patterns (NEW)
| |-- springboot-security/ # Spring Boot security (NEW)
| |-- springboot-tdd/ # Spring Boot TDD (NEW)
| |-- springboot-verification/ # Spring Boot verification (NEW)
| |-- configure-ecc/ # Interactive installation wizard (NEW)
| |-- security-scan/ # AgentShield security auditor integration (NEW)
| |-- java-coding-standards/ # Java coding standards (NEW)
| |-- jpa-patterns/ # JPA/Hibernate patterns (NEW)
| |-- postgres-patterns/ # PostgreSQL optimization patterns (NEW)
| |-- nutrient-document-processing/ # Document processing with Nutrient API (NEW)
| |-- docs/examples/project-guidelines-template.md # Template for project-specific skills
| |-- database-migrations/ # Migration patterns (Prisma, Drizzle, Django, Go) (NEW)
| |-- api-design/ # REST API design, pagination, error responses (NEW)
| |-- deployment-patterns/ # CI/CD, Docker, health checks, rollbacks (NEW)
| |-- docker-patterns/ # Docker Compose, networking, volumes, container security (NEW)
| |-- e2e-testing/ # Playwright E2E patterns and Page Object Model (NEW)
| |-- content-hash-cache-pattern/ # SHA-256 content hash caching for file processing (NEW)
| |-- cost-aware-llm-pipeline/ # LLM cost optimization, model routing, budget tracking (NEW)
| |-- regex-vs-llm-structured-text/ # Decision framework: regex vs LLM for text parsing (NEW)
| |-- swift-actor-persistence/ # Thread-safe Swift data persistence with actors (NEW)
| |-- swift-protocol-di-testing/ # Protocol-based DI for testable Swift code (NEW)
| |-- search-first/ # Research-before-coding workflow (NEW)
| |-- skill-stocktake/ # Audit skills and commands for quality (NEW)
| |-- liquid-glass-design/ # iOS 26 Liquid Glass design system (NEW)
| |-- foundation-models-on-device/ # Apple on-device LLM with FoundationModels (NEW)
| |-- swift-concurrency-6-2/ # Swift 6.2 Approachable Concurrency (NEW)
| |-- mle-workflow/ # Production ML data contracts, evals, deployment, monitoring (NEW)
| |-- perl-patterns/ # Modern Perl 5.36+ idioms and best practices (NEW)
| |-- perl-security/ # Perl security patterns, taint mode, safe I/O (NEW)
| |-- perl-testing/ # Perl TDD with Test2::V0, prove, Devel::Cover (NEW)
| |-- autonomous-loops/ # Autonomous loop patterns: sequential pipelines, PR loops, DAG orchestration (NEW)
| |-- plankton-code-quality/ # Write-time code quality enforcement with Plankton hooks (NEW)
| |-- codehealth-mcp/ # Optional CodeScene Code Health MCP skill (opt-in; not enabled by default) (NEW)
|
|-- commands/ # Maintained slash-entry compatibility; prefer skills/
| |-- plan.md # /plan - Implementation planning
| |-- code-review.md # /code-review - Quality review
| |-- build-fix.md # /build-fix - Fix build errors
| |-- refactor-clean.md # /refactor-clean - Dead code removal
| |-- quality-gate.md # /quality-gate - Verification gate
| |-- learn.md # /learn - Extract patterns mid-session (Longform Guide)
| |-- learn-eval.md # /learn-eval - Extract, evaluate, and save patterns (NEW)
| |-- checkpoint.md # /checkpoint - Save verification state (Longform Guide)
| |-- setup-pm.md # /setup-pm - Configure package manager
| |-- go-review.md # /go-review - Go code review (NEW)
| |-- go-test.md # /go-test - Go TDD workflow (NEW)
| |-- go-build.md # /go-build - Fix Go build errors (NEW)
| |-- skill-create.md # /skill-create - Generate skills from git history (NEW)
| |-- instinct-status.md # /instinct-status - View learned instincts (NEW)
| |-- instinct-import.md # /instinct-import - Import instincts (NEW)
| |-- instinct-export.md # /instinct-export - Export instincts (NEW)
| |-- evolve.md # /evolve - Cluster instincts into skills
| |-- prune.md # /prune - Delete expired pending instincts (NEW)
| |-- pm2.md # /pm2 - PM2 service lifecycle management (NEW)
| |-- multi-plan.md # /multi-plan - Multi-agent task decomposition (NEW)
| |-- multi-execute.md # /multi-execute - Orchestrated multi-agent workflows (NEW)
| |-- multi-backend.md # /multi-backend - Backend multi-service orchestration (NEW)
| |-- multi-frontend.md # /multi-frontend - Frontend multi-service orchestration (NEW)
| |-- multi-workflow.md # /multi-workflow - General multi-service workflows (NEW)
| |-- sessions.md # /sessions - Session history management
| |-- test-coverage.md # /test-coverage - Test coverage analysis
| |-- update-docs.md # /update-docs - Update documentation
| |-- update-codemaps.md # /update-codemaps - Update codemaps
| |-- python-review.md # /python-review - Python code review (NEW)
|-- legacy-command-shims/ # Opt-in archive for retired shims such as /tdd and /eval
| |-- tdd.md # /tdd - Prefer the tdd-workflow skill
| |-- e2e.md # /e2e - Prefer the e2e-testing skill
| |-- eval.md # /eval - Prefer the eval-harness skill
| |-- verify.md # /verify - Prefer the verification-loop skill
| |-- orchestrate.md # /orchestrate - Prefer dmux-workflows or multi-workflow
|
|-- rules/ # Always-follow guidelines (copy to ~/.claude/rules/ecc/)
| |-- README.md # Structure overview and installation guide
| |-- common/ # Language-agnostic principles
| | |-- coding-style.md # Immutability, file organization
| | |-- git-workflow.md # Commit format, PR process
| | |-- testing.md # TDD, 80% coverage requirement
| | |-- performance.md # Model selection, context management
| | |-- patterns.md # Design patterns, skeleton projects
| | |-- hooks.md # Hook architecture, TodoWrite
| | |-- agents.md # When to delegate to subagents
| | |-- security.md # Mandatory security checks
| |-- typescript/ # TypeScript/JavaScript specific
| |-- python/ # Python specific
| |-- golang/ # Go specific
| |-- swift/ # Swift specific
| |-- php/ # PHP specific (NEW)
| |-- arkts/ # HarmonyOS / ArkTS specific
|
|-- hooks/ # Trigger-based automations
| |-- README.md # Hook documentation, recipes, and customization guide
| |-- hooks.json # All hooks config (PreToolUse, PostToolUse, Stop, etc.)
| |-- memory-persistence/ # Session lifecycle hooks (Longform Guide)
| |-- strategic-compact/ # Compaction suggestions (Longform Guide)
|
|-- scripts/ # Cross-platform Node.js scripts (NEW)
| |-- lib/ # Shared utilities
| | |-- utils.js # Cross-platform file/path/system utilities
| | |-- package-manager.js # Package manager detection and selection
| |-- hooks/ # Hook implementations
| | |-- session-start.js # Load context on session start
| | |-- session-end.js # Save state on session end
| | |-- pre-compact.js # Pre-compaction state saving
| | |-- suggest-compact.js # Strategic compaction suggestions
| | |-- evaluate-session.js # Extract patterns from sessions
| |-- setup-package-manager.js # Interactive PM setup
|
|-- tests/ # Test suite (NEW)
| |-- lib/ # Library tests
| |-- hooks/ # Hook tests
| |-- run-all.js # Run all tests
|
|-- contexts/ # Dynamic system prompt injection contexts (Longform Guide)
| |-- dev.md # Development mode context
| |-- review.md # Code review mode context
| |-- research.md # Research/exploration mode context
|
|-- examples/ # Example configurations and sessions
| |-- CLAUDE.md # Example project-level config
| |-- user-CLAUDE.md # Example user-level config
| |-- saas-nextjs-CLAUDE.md # Real-world SaaS (Next.js + Supabase + Stripe)
| |-- go-microservice-CLAUDE.md # Real-world Go microservice (gRPC + PostgreSQL)
| |-- django-api-CLAUDE.md # Real-world Django REST API (DRF + Celery)
| |-- laravel-api-CLAUDE.md # Real-world Laravel API (PostgreSQL + Redis) (NEW)
| |-- rust-api-CLAUDE.md # Real-world Rust API (Axum + SQLx + PostgreSQL) (NEW)
|
|-- mcp-configs/ # MCP server configurations
| |-- mcp-servers.json # GitHub, Supabase, Vercel, Railway, etc.
|
|-- ecc_dashboard.py # Desktop GUI dashboard (Tkinter)
|
|-- assets/ # Assets for dashboard
| |-- images/
| |-- ecc-logo.png
|
|-- marketplace.json # Self-hosted marketplace config (for /plugin marketplace add)
---
Ecosystem Tools
Skill Creator
Two ways to generate Claude Code skills from your repository:
Option A: Local Analysis (Built-in)
Use the /skill-create command for local analysis without external services:
/skill-create # Analyze current repo
/skill-create --instincts # Also generate instincts for continuous-learning-v2
This analyzes your git history locally and generates SKILL.md files.
Option B: GitHub App (Advanced)
For advanced features (10k+ commits, auto-PRs, team sharing):
Install ECC Tools GitHub App | ecc.tools
# Comment on any issue:
/ecc-tools analyze
# Or run against a repo from the hosted app
Both options create:
- SKILL.md files - Ready-to-use skills for the active harness
- Instinct collections - For continuous-learning-v2
- Pattern extraction - Learns from your commit history
AgentShield — Security Auditor
Built at the Claude Code Hackathon (Cerebral Valley x Anthropic, Feb 2026). 1282 tests, 98% coverage, 102 static analysis rules.
Scan your Claude Code configuration for vulnerabilities, misconfigurations, and injection risks.
# Quick scan (no install needed)
npx ecc-agentshield scan
# Auto-fix safe issues
npx ecc-agentshield scan --fix
# Deep analysis with three Opus 4.6 agents
npx ecc-agentshield scan --opus --stream
# Generate secure config from scratch
npx ecc-agentshield init
What it scans: CLAUDE.md, settings.json, MCP configs, hooks, agent definitions, and skills across 5 categories — secrets detection (14 patterns), permission auditing, hook injection analysis, MCP server risk profiling, and agent config review.
The --opus flag runs three Claude Opus 4.6 agents in a red-team/blue-team/auditor pipeline. The attacker finds exploit chains, the defender evaluates protections, and the auditor synthesizes both into a prioritized risk assessment. Adversarial reasoning, not just pattern matching.
Output formats: Terminal (color-graded A-F), JSON (CI pipelines), Markdown, HTML. Exit code 2 on critical findings for build gates.
Use /security-scan in Claude Code to run it, or add to CI with the GitHub Action.
Continuous Learning v2
The instinct-based learning system automatically learns your patterns:
/instinct-status # Show learned instincts with confidence
/instinct-import <file> # Import instincts from others
/instinct-export # Export your instincts for sharing
/evolve # Cluster related instincts into skills
See skills/continuous-learning-v2/ for full documentation. Keep continuous-learning/ only when you explicitly want the legacy v1 Stop-hook learned-skill flow.
---
Requirements
Claude Code CLI Version
Minimum version: v2.1.0 or later
This plugin requires Claude Code CLI v2.1.0+ due to changes in how the plugin system handles hooks.
Check your version:
claude --version
Important: Hooks Auto-Loading Behavior
WARNING: For Contributors: Do NOT add a
"hooks"field to.claude-plugin/plugin.json. This is enforced by a regression test.
Claude Code v2.1+ automatically loads hooks/hooks.json from any installed plugin by convention. Explicitly declaring it in plugin.json causes a duplicate detection error:
Duplicate hooks file detected: ./hooks/hooks.json resolves to already-loaded file
History: This has caused repeated fix/revert cycles in this repo (#29, #52, #103). The behavior changed between Claude Code versions, leading to confusion. We now have a regression test to prevent this from being reintroduced.
---
Installation
Option 1: Install as Plugin (Recommended)
The easiest way to use this repo - install as a Claude Code plugin:
# Add this repo as a marketplace
/plugin marketplace add https://github.com/affaan-m/ECC
# Install the plugin
/plugin install ecc@ecc
Or add directly to your ~/.claude/settings.json:
{
"extraKnownMarketplaces": {
"ecc": {
"source": {
"source": "github",
"repo": "affaan-m/ECC"
}
}
},
"enabledPlugins": {
"ecc@ecc": true
}
}
This gives you instant access to all commands, agents, skills, and hooks.
Note: The Claude Code plugin system does not support distributing
rulesvia plugins (upstream limitation). You need to install rules manually: ``bash # Clone the repo first git clone https://github.com/affaan-m/ECC.git cd ECC # Option A: User-level rules (applies to all projects) mkdir -p ~/.claude/rules/ecc cp -r rules/common ~/.claude/rules/ecc/ cp -r rules/typescript ~/.claude/rules/ecc/ # pick your stack cp -r rules/python ~/.claude/rules/ecc/ cp -r rules/golang ~/.claude/rules/ecc/ cp -r rules/php ~/.claude/rules/ecc/ # Option B: Project-level rules (applies to current project only) mkdir -p .claude/rules/ecc cp -r rules/common .claude/rules/ecc/ cp -r rules/typescript .claude/rules/ecc/ # pick your stack``
---
Option 2: Manual Installation
If you prefer manual control over what's installed:
# Clone the repo
git clone https://github.com/affaan-m/ECC.git
cd ECC
# Copy agents to your Claude config
cp agents/*.md ~/.claude/agents/
# Copy rules directories (common + language-specific)
mkdir -p ~/.claude/rules/ecc
cp -r rules/common ~/.claude/rules/ecc/
cp -r rules/typescript ~/.claude/rules/ecc/ # pick your stack
cp -r rules/python ~/.claude/rules/ecc/
cp -r rules/golang ~/.claude/rules/ecc/
cp -r rules/php ~/.claude/rules/ecc/
cp -r rules/arkts ~/.claude/rules/ecc/
# Copy skills first (primary workflow surface)
# Recommended (new users): core/general skills only
mkdir -p ~/.claude/skills
cp -r .agents/skills/* ~/.claude/skills/
cp -r skills/search-first ~/.claude/skills/
# Claude Code loads skills only from direct children of ~/.claude/skills.
# Do not nest manual installs under ~/.claude/skills/ecc/.
# Optional: add niche/framework-specific skills only when needed
# for s in django-patterns django-tdd laravel-patterns springboot-patterns quarkus-patterns; do
# cp -r skills/$s ~/.claude/skills/
# done
# Optional: keep maintained slash-command compatibility during migration
mkdir -p ~/.claude/commands
cp commands/*.md ~/.claude/commands/
# Retired shims live in legacy-command-shims/commands/.
# Copy individual files from there only if you still need old names such as /tdd.
Install hooks
Do not copy the raw repo hooks/hooks.json into ~/.claude/settings.json or ~/.claude/hooks/hooks.json. That file is plugin/repo-oriented and is meant to be installed through the ECC installer or loaded as a plugin, so raw copying is not a supported manual install path.
Use the installer to install only the Claude hook runtime so command paths are rewritten correctly:
# macOS / Linux
bash ./install.sh --target claude --modules hooks-runtime
# Windows PowerShell
pwsh -File .\install.ps1 --target claude --modules hooks-runtime
That writes resolved hooks to ~/.claude/hooks/hooks.json and leaves any existing ~/.claude/settings.json untouched.
If you installed ECC via /plugin install, do not copy those hooks into settings.json. Claude Code v2.1+ already auto-loads plugin hooks/hooks.json, and duplicating them in settings.json causes duplicate execution and cross-platform hook conflicts.
Windows note: the Claude config directory is %USERPROFILE%\\.claude, not ~/claude.
Configure MCPs
Claude plugin installs intentionally do not auto-enable ECC's bundled MCP server definitions. This avoids overlong plugin MCP tool names on strict third-party gateways while keeping manual MCP setup available.
Use Claude Code's /mcp command or CLI-managed MCP setup for live Claude Code server changes. Use /mcp for Claude Code runtime disables; Claude Code persists those choices in ~/.claude.json.
For repo-local MCP access, copy desired MCP server definitions from mcp-configs/mcp-servers.json into a project-scoped .mcp.json.
ECC ships exactly one default connector (chrome-devtools); everything else is a skill wrapping a CLI/REST API or an opt-in catalog entry. The rule and the June 2026 audit that retired the previous six defaults live in docs/MCP-CONNECTOR-POLICY.md.
If you already run your own copies of ECC-bundled MCPs, set:
export ECC_DISABLED_MCPS="chrome-devtools"
ECC-managed install and Codex sync flows will skip or remove those bundled servers instead of re-adding duplicates. ECC_DISABLED_MCPS is an ECC install/sync filter, not a live Claude Code toggle.
Important: Replace YOUR_*_HERE placeholders with your actual API keys.
---
Key Concepts
Agents
Subagents handle delegated tasks with limited scope. Example:
---
name: code-reviewer
description: Reviews code for quality, security, and maintainability
tools: ["Read", "Grep", "Glob", "Bash"]
model: opus
---
You are a senior code reviewer...
Skills
Skills are the primary workflow surface. They can be invoked directly, suggested automatically, and reused by agents. ECC still ships maintained commands/ during migration, while retired short-name shims live under legacy-command-shims/ for explicit opt-in only. New workflow development should land in skills/ first.
# TDD Workflow
1. Define interfaces first
2. Write failing tests (RED)
3. Implement minimal code (GREEN)
4. Refactor (IMPROVE)
5. Verify 80%+ coverage
Hooks
Hooks fire on tool events. Example - warn about console.log:
{
"matcher": "tool == \"Edit\" && tool_input.file_path matches \"\\\\.(ts|tsx|js|jsx)$\"",
"hooks": [{
"type": "command",
"command": "#!/bin/bash\ngrep -n 'console\\.log' \"$file_path\" && echo '[Hook] Remove console.log' >&2"
}]
}
Rules
Rules are always-follow guidelines, organized into common/ (language-agnostic) + language-specific directories:
rules/
common/ # Universal principles (always install)
typescript/ # TS/JS specific patterns and tools
python/ # Python specific patterns and tools
golang/ # Go specific patterns and tools
swift/ # Swift specific patterns and tools
php/ # PHP specific patterns and tools
arkts/ # HarmonyOS / ArkTS patterns and constraints
See rules/README.md for installation and structure details.
---
Which Agent Should I Use?
Not sure where to start? Use this quick reference. Skills are the canonical workflow surface; maintained slash entries stay available for command-first workflows.
| I want to... | Use this surface | Agent used |
|---|---|---|
| Plan a new feature | /ecc:plan "Add auth" | planner |
| Design system architecture | /ecc:plan + architect agent | architect |
| Write code with tests first | tdd-workflow skill | tdd-guide |
| Review code I just wrote | /code-review | code-reviewer |
| Fix a failing build | /build-fix | build-error-resolver |
| Run end-to-end tests | e2e-testing skill | e2e-runner |
| Find security vulnerabilities | /security-scan | security-reviewer |
| Remove dead code | /refactor-clean | refactor-cleaner |
| Update documentation | /update-docs | doc-updater |
| Review Go code | /go-review | go-reviewer |
| Review Python code | /python-review | python-reviewer |
| Review F# code | (invoke fsharp-reviewer directly) | fsharp-reviewer |
| Review TypeScript/JavaScript code | (invoke typescript-reviewer directly) | typescript-reviewer |
| Develop HarmonyOS apps | (invoke harmonyos-app-resolver directly) | harmonyos-app-resolver |
| Audit database queries | (auto-delegated) | database-reviewer |
| Review production ML changes | mle-workflow skill + mle-reviewer agent | mle-reviewer |
Common Workflows
Slash forms below are shown where they remain part of the maintained command surface. Retired short-name shims such as /tdd and /eval live in legacy-command-shims/ for explicit opt-in only.
Starting a new feature:
/ecc:plan "Add user authentication with OAuth"
→ planner creates implementation blueprint
tdd-workflow skill → tdd-guide enforces write-tests-first
/code-review → code-reviewer checks your work
Fixing a bug:
tdd-workflow skill → tdd-guide: write a failing test that reproduces it
→ implement the fix, verify test passes
/code-review → code-reviewer: catch regressions
Preparing for production:
/security-scan → security-reviewer: OWASP Top 10 audit
e2e-testing skill → e2e-runner: critical user flow tests
/test-coverage → verify 80%+ coverage
---
FAQ
<details> <summary><b>How do I check which agents/commands are installed?</b></summary>
/plugin list ecc@ecc
This shows all available agents, commands, and skills from the plugin. </details>
<details> <summary><b>My hooks aren't working / I see "Duplicate hooks file" errors</b></summary>
This is the most common issue. Do NOT add a "hooks" field to .claude-plugin/plugin.json. Claude Code v2.1+ automatically loads hooks/hooks.json from installed plugins. Explicitly declaring it causes duplicate detection errors. See #29, #52, #103. </details>
<details> <summary><b>Can I use ECC with Claude Code on a custom API endpoint or model gateway?</b></summary>
Yes. ECC does not hardcode Anthropic-hosted transport settings. It runs locally through Claude Code's normal CLI/plugin surface, so it works with:
- Anthropic-hosted Claude Code
- Official Claude Code gateway setups using
ANTHROPIC_BASE_URLandANTHROPIC_AUTH_TOKEN - Compatible custom endpoints that speak the Anthropic API Claude Code expects
Minimal example:
export ANTHROPIC_BASE_URL=https://your-gateway.example.com
export ANTHROPIC_AUTH_TOKEN=your-token
claude
If your gateway remaps model names, configure that in Claude Code rather than in ECC. ECC's hooks, skills, commands, and rules are model-provider agnostic once the claude CLI is already working.
Official references:
</details>
<details> <summary><b>My context window is shrinking / Claude is running out of context</b></summary>
Too many MCP servers eat your context. Each MCP tool description consumes tokens from your 200k window, potentially reducing it to ~70k. SessionStart context is capped at 8000 characters by default; lower it with ECC_SESSION_START_MAX_CHARS=4000 or disable it with ECC_SESSION_START_CONTEXT=off for local-model or low-context setups.
Fix: Disable unused MCPs from Claude Code with /mcp. Claude Code writes those runtime choices to ~/.claude.json; .claude/settings.json and .claude/settings.local.json are not reliable toggles for already-loaded MCP servers.
Keep under 10 MCPs enabled and under 80 tools active. </details>
<details> <summary><b>Can I use only some components (e.g., just agents)?</b></summary>
Yes. Use Option 2 (manual installation) and copy only what you need:
# Just agents
cp agents/*.md ~/.claude/agents/
# Just rules
mkdir -p ~/.claude/rules/ecc/
cp -r rules/common ~/.claude/rules/ecc/
Each component is fully independent. </details>
<details> <summary><b>Does this work with Cursor / OpenCode / Codex / Antigravity / GitHub Copilot?</b></summary>
Yes. ECC is cross-platform:
- Cursor: Pre-translated configs in
.cursor/. See Cursor IDE Support. - Gemini CLI: Experimental project-local support via
.gemini/GEMINI.mdand shared installer plumbing. - OpenCode: Full plugin support in
.opencode/. See OpenCode Support. - Codex: First-class support for both macOS app and CLI, with adapter drift guards and SessionStart fallback. See PR #257.
- GitHub Copilot (VS Code): Instruction and prompt layer via
.github/copilot-instructions.md,.vscode/settings.json, and.github/prompts/. See GitHub Copilot Support. - Antigravity: Tightly integrated setup for workflows, skills, and flattened rules in
.agent/. See Antigravity Guide. - JoyCode / CodeBuddy: Project-local selective install adapters for commands, agents, skills, and flattened rules. See JoyCode Adapter Guide.
- Qwen CLI: Home-directory selective install adapter for commands, agents, skills, rules, and Qwen config. See Qwen CLI Adapter Guide.
- Zed: Project-local selective install adapter for
.zed/settings.json, flattened rules, commands, agents, and skills. - Non-native harnesses: Manual fallback path for Grok and similar interfaces. See Manual Adaptation Guide.
- Claude Code: Native — this is the primary target.
</details>
<details> <summary><b>How do I contribute a new skill or agent?</b></summary>
See CONTRIBUTING.md. The short version:
- Fork the repo
- Create your skill in
skills/your-skill-name/SKILL.md(with YAML frontmatter) - Or create an agent in
agents/your-agent.md - Submit a PR with a clear description of what it does and when to use it
</details>
---
Running Tests
The plugin includes a comprehensive test suite:
# Run all tests
node tests/run-all.js
# Run individual test files
node tests/lib/utils.test.js
node tests/lib/package-manager.test.js
node tests/hooks/hooks.test.js
---
Contributing
Contributions are welcome and encouraged.
This repo is meant to be a community resource. If you have:
- Useful agents or skills
- Clever hooks
- Better MCP configurations
- Improved rules
Please contribute! See CONTRIBUTING.md for guidelines.
Ideas for Contributions
- Language-specific skills (Rust, C#, Kotlin, Java) — Go, Python, Perl, Swift, TypeScript, and HarmonyOS/ArkTS already included
- Framework-specific configs (Rails, FastAPI) — Django, NestJS, Spring Boot, and Laravel already included
- DevOps agents (Kubernetes, Terraform, AWS, Docker)
- Testing strategies (different frameworks, visual regression)
- Domain-specific knowledge (ML, data engineering, mobile)
---
Cursor IDE Support
ECC provides Cursor IDE support with hooks, rules, agents, skills, commands, and MCP configs adapted for Cursor's project layout.
Quick Start (Cursor)
# macOS/Linux
./install.sh --target cursor typescript
./install.sh --target cursor python golang swift php
# Windows PowerShell
.\install.ps1 --target cursor typescript
.\install.ps1 --target cursor python golang swift php
What's Included
| Component | Count | Details |
|---|---|---|
| Hook Events | 15 | sessionStart, beforeShellExecution, afterFileEdit, beforeMCPExecution, beforeSubmitPrompt, and 10 more |
| Hook Scripts | 16 | Thin Node.js scripts delegating to scripts/hooks/ via shared adapter |
| Rules | 34 | 9 common (alwaysApply) + 25 language-specific (TypeScript, Python, Go, Swift, PHP) |
| Agents | 48 | .cursor/agents/ecc-*.md when installed; prefixed to avoid collisions with user or marketplace agents |
| Skills | Shared + Bundled | .cursor/skills/ for translated additions |
| Commands | Shared | .cursor/commands/ if installed |
| MCP Config | Shared | .cursor/mcp.json if installed |
Cursor Loading Notes
ECC does not install root AGENTS.md into .cursor/. Cursor treats nested AGENTS.md files as directory context, so copying ECC's repo identity into a host project would pollute that project.
Cursor-native loading behavior can vary by Cursor build. ECC installs agents as .cursor/agents/ecc-*.md; if your Cursor build does not expose project agents, those files still work as explicit reference definitions instead of hidden global prompt context.
Memory and data isolation (Cursor + Claude Code)
ECC memory hooks reuse the same scripts/hooks/*.js as Claude Code. For Cursor, ECC tries to keep memory out of ~/.claude automatically:
- Cursor
sessionStarthook (installed to.cursor/hooks.jsonon--target cursor) injectsECC_AGENT_DATA_HOMEfor the whole composer session. - Hook runtime default — when
CURSOR_VERSIONorCURSOR_PROJECT_DIRis present, hooks default to~/.cursor/eccif the env var is unset. - Project config —
.cursor/ecc-agent-data.jsondocuments and overrides the path (agentDataHome). - Always-on rule —
.cursor/rules/ecc-agent-data-home.mdcreminds the agent where memory lives.
You can still override explicitly:
export ECC_AGENT_DATA_HOME="$HOME/.cursor/ecc"
To share memory with Claude Code on purpose, set ECC_AGENT_DATA_HOME=~/.claude in the shell or in .cursor/ecc-agent-data.json.
Continuous learning v2 instincts remain separate under CLV2_HOMUNCULUS_DIR (default ~/.local/share/ecc-homunculus).
Hook Architecture (DRY Adapter Pattern)
Cursor has more hook events than Claude Code (20 vs 8). The .cursor/hooks/adapter.js module transforms Cursor's stdin JSON to Claude Code's format, allowing existing scripts/hooks/*.js to be reused without duplication.
Cursor stdin JSON → adapter.js → transforms → scripts/hooks/*.js
(shared with Claude Code)
Key hooks:
- beforeShellExecution — Blocks dev servers outside tmux (exit 2), git push review
- afterFileEdit — Auto-format + TypeScript check + console.log warning
- beforeSubmitPrompt — Detects secrets (sk-, ghp_, AKIA patterns) in prompts
- beforeTabFileRead — Blocks Tab from reading .env, .key, .pem files (exit 2)
- beforeMCPExecution / afterMCPExecution — MCP audit logging
Rules Format
Cursor rules use YAML frontmatter with description, globs, and alwaysApply:
---
description: "TypeScript coding style extending common rules"
globs: ["**/*.ts", "**/*.tsx", "**/*.js", "**/*.jsx"]
alwaysApply: false
---
---
Codex macOS App + CLI Support
ECC provides first-class Codex support for both the macOS app and CLI, with a reference configuration, Codex-specific AGENTS.md supplement, and shared skills.
Quick Start (Codex App + CLI)
# Run Codex CLI in the repo — AGENTS.md and .codex/ are auto-detected
codex
# Automatic setup: sync ECC assets (AGENTS.md, skills, MCP servers) into ~/.codex
npm install && bash scripts/sync-ecc-to-codex.sh
# or: pnpm install && bash scripts/sync-ecc-to-codex.sh
# or: yarn install && bash scripts/sync-ecc-to-codex.sh
# or: bun install && bash scripts/sync-ecc-to-codex.sh
# Or manually: copy the reference config to your home directory
cp .codex/config.toml ~/.codex/config.toml
The sync script safely merges ECC MCP servers into your existing ~/.codex/config.toml using an add-only strategy — it never removes or modifies your existing servers. Run with --dry-run to preview changes, or --update-mcp to force-refresh ECC servers to the latest recommended config.
For Context7, ECC uses the canonical Codex section name [mcp_servers.context7] while still launching the @upstash/context7-mcp package. If you already have a legacy [mcp_servers.context7-mcp] entry, --update-mcp migrates it to the canonical section name.
Codex macOS app:
- Open this repository as your workspace.
- The root
AGENTS.mdis auto-detected. .codex/config.tomland.codex/agents/*.tomlwork best when kept project-local.- The reference
.codex/config.tomlintentionally does not pinmodelormodel_provider, so Codex uses its own current default unless you override it. - Optional: copy
.codex/config.tomlto~/.codex/config.tomlfor global defaults; keep the multi-agent role files project-local unless you also copy.codex/agents/.
Codex Plugin Marketplace (experimental)
The repo also exposes a Codex repo-scoped marketplace (.agents/plugins/marketplace.json) whose entry points at the plugins/ecc/ plugin folder — Codex does not discover plugins whose local marketplace source.path is the repository root (./), so the entry must target a concrete plugin subdirectory:
codex plugin marketplace add affaan-m/ECC
codex plugin list
node scripts/codex/check-plugin-cache.js
codex plugin list only confirms marketplace registration. Run node scripts/codex/check-plugin-cache.js after install to verify that the installed cache can resolve the manifest's skills, MCP config, and assets.
Plugin mode is currently fragile on Codex. Marketplace discovery and install work with this layout, but runtime skill loading from local/repo marketplaces is still unreliable upstream (openai/codex#26037): Codex copies only the plugin folder into its install cache, so plugins that reference shared repo content may not expose skills in a fresh session. If the cache health check reports missing manifest references, treat the plugin path as discovery-only and prefer the manual sync flow above (scripts/sync-ecc-to-codex.sh), which is the supported Codex route. See #2128 for the full investigation.
What's Included
| Component | Count | Details |
|---|---|---|
| Config | 1 | .codex/config.toml — top-level approvals/sandbox/web_search, MCP servers, notifications, profiles |
| AGENTS.md | 2 | Root (universal) + .codex/AGENTS.md (Codex-specific supplement) |
| Skills | 32 | .agents/skills/ — SKILL.md + agents/openai.yaml per skill |
| MCP Servers | 6 | GitHub, Context7, Exa, Memory, Playwright, Sequential Thinking (7 with Supabase via --update-mcp sync) |
| Profiles | 2 | strict (read-only sandbox) and yolo (full auto-approve) |
| Agent Roles | 3 | .codex/agents/ — explorer, reviewer, docs-researcher |
Skills
Skills at .agents/skills/ are auto-loaded by Codex:
Canonical Anthropic skills such as claude-api, frontend-design, and skill-creator are intentionally not re-bundled here. Install those from anthropics/skills when you want the official versions.
| Skill | Description |
|---|---|
| agent-introspection-debugging | Debug agent behavior, routing, and prompt boundaries |
| agent-sort | Sort agent catalogs and assignment surfaces |
| api-design | REST API design patterns |
| article-writing | Long-form writing from notes and voice references |
| backend-patterns | API design, database, caching |
| brand-voice | Source-derived writing style profiles from real content |
| bun-runtime | Bun as runtime, package manager, bundler, and test runner |
| coding-standards | Universal coding standards |
| codehealth-mcp | Optional — Code Health MCP (opt-in server + token); structural review and commit/PR gates |
| content-engine | Platform-native social content and repurposing |
| crosspost | Multi-platform content distribution across X, LinkedIn, Threads |
| deep-research | Multi-source research with synthesis and source attribution |
| dmux-workflows | Multi-agent orchestration using tmux pane manager |
| documentation-lookup | Up-to-date library and framework docs via Context7 MCP |
| e2e-testing | Playwright E2E tests |
| eval-harness | Eval-driven development |
| everything-claude-code | Development conventions and patterns for the project |
| exa-search | Neural search via Exa MCP for web, code, company research |
| fal-ai-media | Unified media generation for images, video, and audio |
| frontend-patterns | React/Next.js patterns |
| frontend-slides | HTML presentations, PPTX conversion, visual style exploration |
| investor-materials | Decks, memos, models, and one-pagers |
| investor-outreach | Personalized outreach, follow-ups, and intro blurbs |
| market-research | Source-attributed market and competitor research |
| mcp-server-patterns | Build MCP servers with Node/TypeScript SDK |
| nextjs-turbopack | Next.js 16+ and Turbopack incremental bundling |
| product-capability | Translate product goals into scoped capability maps |
| security-review | Comprehensive security checklist |
| strategic-compact | Context management |
| tdd-workflow | Test-driven development with 80%+ coverage |
| verification-loop | Build, test, lint, typecheck, security |
| video-editing | AI-assisted video editing workflows with FFmpeg and Remotion |
| x-api | X/Twitter API integration for posting and analytics |
Key Limitation
Codex does not yet provide Claude-style hook execution parity. ECC enforcement there is instruction-based via AGENTS.md, optional model_instructions_file overrides, and sandbox/approval settings.
Multi-Agent Support
Current Codex builds support stable multi-agent workflows.
- Enable
features.multi_agent = truein.codex/config.toml - Define roles under
[agents.<name>] - Point each role at a file under
.codex/agents/ - Use
/agentin the CLI to inspect or steer child agents
ECC ships three sample role configs:
| Role | Purpose |
|---|---|
explorer | Read-only codebase evidence gathering before edits |
reviewer | Correctness, security, and missing-test review |
docs_researcher | Documentation and API verification before release/docs changes |
---
Zed Support
ECC provides Zed project support through a conservative .zed adapter for project-local settings, flattened rules, agents, commands, and skills.
./install.sh --profile minimal --target zed
.\install.ps1 --profile minimal --target zed
The adapter writes ECC-managed files under .zed/ and keeps BYOK/OpenRouter credentials out of the repo. Configure Zed account or API keys through Zed's own settings UI or your local user settings.
---
OpenCode Support
ECC provides full OpenCode support including plugins and hooks.
Quick Start
# Install OpenCode
npm install -g opencode
# Run in the repository root
opencode
The configuration is automatically detected from .opencode/opencode.json.
Feature Parity
| Feature | Claude Code | OpenCode | Status |
|---|---|---|---|
| Agents | PASS: 67 agents | PASS: 12 agents | Claude Code leads |
| Commands | PASS: 94 commands | PASS: 35 commands | Claude Code leads |
| Skills | PASS: 278 skills | PASS: 37 skills | Claude Code leads |
| Hooks | PASS: 8 event types | PASS: 11 events | OpenCode has more! |
| Rules | PASS: 29 rules | PASS: 13 instructions | Claude Code leads |
| MCP Servers | PASS: 14 servers | PASS: Full | Full parity |
| Custom Tools | PASS: Via hooks | PASS: 6 native tools | OpenCode is better |
Hook Support via Plugins
OpenCode's plugin system is MORE sophisticated than Claude Code with 20+ event types:
| Claude Code Hook | OpenCode Plugin Event |
|---|---|
| PreToolUse | tool.execute.before |
| PostToolUse | tool.execute.after |
| Stop | session.idle |
| SessionStart | session.created |
| SessionEnd | session.deleted |
Additional OpenCode events: file.edited, file.watcher.updated, message.updated, lsp.client.diagnostics, tui.toast.show, and more.
Maintained Slash Entries
| Command | Description |
|---|---|
/plan | Create implementation plan |
/code-review | Review code changes |
/build-fix | Fix build errors |
/refactor-clean | Remove dead code |
/learn | Extract patterns from session |
/checkpoint | Save verification state |
/quality-gate | Run the maintained verification gate |
/update-docs | Update documentation |
/update-codemaps | Update codemaps |
/test-coverage | Analyze coverage |
/go-review | Go code review |
/go-test | Go TDD workflow |
/go-build | Fix Go build errors |
/python-review | Python code review (PEP 8, type hints, security) |
/multi-plan | Multi-model collaborative planning |
/multi-execute | Multi-model collaborative execution |
/multi-backend | Backend-focused multi-model workflow |
/multi-frontend | Frontend-focused multi-model workflow |
/multi-workflow | Full multi-model development workflow |
/pm2 | Auto-generate PM2 service commands |
/sessions | Manage session history |
/skill-create | Generate skills from git |
/instinct-status | View learned instincts |
/instinct-import | Import instincts |
/instinct-export | Export instincts |
/evolve | Cluster instincts into skills |
/promote | Promote project instincts to global scope |
/projects | List known projects and instinct stats |
/prune | Delete expired pending instincts (30d TTL) |
/learn-eval | Extract and evaluate patterns before saving |
/setup-pm | Configure package manager |
/harness-audit | Audit harness reliability, eval readiness, and risk posture |
/loop-start | Start controlled agentic loop execution pattern |
/loop-status | Inspect active loop status and checkpoints |
/quality-gate | Run quality gate checks for paths or entire repo |
/model-route | Route tasks to models by complexity and budget |
Plugin Installation
Option 1: Use directly
cd ECC
opencode
Option 2: Install as npm package
npm install ecc-universal
Then add to your opencode.json:
{
"plugin": ["ecc-universal"]
}
That npm plugin entry enables ECC's published OpenCode plugin module (hooks/events and plugin tools). It does not automatically add ECC's full command/agent/instruction catalog to your project config.
For the full ECC OpenCode setup, either:
- run OpenCode inside this repository, or
- copy the bundled
.opencode/config assets into your project and wire theinstructions,agent, andcommandentries inopencode.json
Documentation
- Migration Guide:
.opencode/MIGRATION.md - OpenCode Plugin README:
.opencode/README.md - Consolidated Rules:
.opencode/instructions/INSTRUCTIONS.md - LLM Documentation:
llms.txt(complete OpenCode docs for LLMs)
---
GitHub Copilot Support
ECC provides GitHub Copilot support for VS Code via Copilot Chat's native instruction and prompt file system — no extra tooling required.
What's Included
| Component | File | Purpose |
|---|---|---|
| Core instructions | .github/copilot-instructions.md | Always-loaded rules: coding style, security, testing, git workflow |
| VS Code settings | .vscode/settings.json | Per-task instruction files for code gen, test gen, and commit messages |
| Plan prompt | .github/prompts/plan.prompt.md | Phased implementation planning |
| TDD prompt | .github/prompts/tdd.prompt.md | Red-Green-Improve cycle |
| Security review prompt | .github/prompts/security-review.prompt.md | Deep OWASP-aligned security analysis |
| Build fix prompt | .github/prompts/build-fix.prompt.md | Systematic build and CI error resolution |
| Refactor prompt | .github/prompts/refactor.prompt.md | Dead code cleanup and simplification |
Quick Start (GitHub Copilot)
The files are already in place — open any repo that contains this project and GitHub Copilot Chat will automatically pick up .github/copilot-instructions.md. The committed .vscode/settings.json enables chat.promptFiles so VS Code can load the reusable prompts from .github/prompts/.
To use the workflow prompts in Copilot Chat:
- Open the Copilot Chat panel in VS Code.
- Click the paperclip / attach icon and select Prompt..., or type
/and choose a prompt. - Select the prompt (e.g.
plan,tdd,security-review).
How It Works
GitHub Copilot in VS Code reads two types of files automatically:
.github/copilot-instructions.md— repository-level instructions, always injected into every Copilot Chat request. Contains ECC's core coding standards, security checklist, testing requirements, and git workflow..github/prompts/*.prompt.md— reusable prompt files users invoke on demand. Each prompt walks Copilot through a specific ECC workflow such as planning, TDD, security review, build-fix, or refactor.
The .vscode/settings.json adds per-task instruction overlays so Copilot receives the right context for code generation, test generation, and commit message drafting.
Feature Coverage
| ECC Feature | Copilot equivalent |
|---|---|
| Coding standards | Always-on via copilot-instructions.md |
| Security checklist | Always-on + security-review prompt |
| Testing / TDD | Always-on + tdd prompt |
| Implementation planning | plan prompt |
| Code review | External PR review via CodeRabbit + Greptile |
| Build error resolution | build-fix prompt |
| Refactoring | refactor prompt |
| Commit message format | Per-task instruction in settings.json |
| Hooks / automation | Not supported (Copilot has no hook system) |
| Agents / delegation | Not supported (Copilot has no subagent API) |
Limitations
GitHub Copilot does not have a hook system or a subagent API, so ECC's hook automations (auto-format, TypeScript check, session persistence, dev-server guard) and agent delegation are unavailable. The instruction and prompt layer still brings the full ECC coding philosophy — standards, security, TDD, and workflow — into every Copilot Chat session.
---
Cross-Tool Feature Parity
ECC is the first plugin to maximize every major AI coding tool. Here's how each harness compares:
| Feature | Claude Code | Cursor IDE | Codex CLI | OpenCode | GitHub Copilot |
|---|---|---|---|---|---|
| Agents | 67 | Shared (AGENTS.md) | Shared (AGENTS.md) | 12 | N/A |
| Commands | 94 | Shared | Instruction-based | 35 | 5 prompts |
| Skills | 278 | Shared | 10 (native format) | 37 | Via instructions |
| Hook Events | 8 types | 15 types | None yet | 11 types | None |
| Hook Scripts | 20+ scripts | 16 scripts (DRY adapter) | N/A | Plugin hooks | N/A |
| Rules | 34 (common + lang) | 34 (YAML frontmatter) | Instruction-based | 13 instructions | 1 always-on file |
| Custom Tools | Via hooks | Via hooks | N/A | 6 native tools | N/A |
| MCP Servers | 14 | Shared (mcp.json) | 7 (auto-merged via TOML parser) | Full | N/A |
| Config Format | settings.json | hooks.json + rules/ | config.toml | opencode.json | copilot-instructions.md + settings.json |
| Context File | CLAUDE.md + AGENTS.md | AGENTS.md | AGENTS.md | AGENTS.md | copilot-instructions.md |
| Secret Detection | Hook-based | beforeSubmitPrompt hook | Sandbox-based | Hook-based | Instruction-based |
| Auto-Format | PostToolUse hook | afterFileEdit hook | N/A | file.edited hook | N/A |
| Version | Plugin | Plugin | Reference config | 2.0.0 | Instruction layer |
Key architectural decisions:
- AGENTS.md at root is the universal cross-tool file (read by Claude Code, Cursor, Codex, and OpenCode — GitHub Copilot uses
.github/copilot-instructions.mdinstead) - DRY adapter pattern lets Cursor reuse Claude Code's hook scripts without duplication
- Skills format (SKILL.md with YAML frontmatter) works across Claude Code, Codex, and OpenCode
- Codex's lack of hooks is compensated by
AGENTS.md, optionalmodel_instructions_fileoverrides, and sandbox permissions
---
Background
I've been using Claude Code since the experimental rollout. Won the Anthropic x Forum Ventures hackathon in Sep 2025 with @DRodriguezFX — built zenith.chat entirely using Claude Code.
These configs are battle-tested across multiple production applications.
---
Token Optimization
Claude Code usage can be expensive if you don't manage token consumption. These settings significantly reduce costs without sacrificing quality.
Recommended Settings
Add to ~/.claude/settings.json:
{
"model": "sonnet",
"env": {
"MAX_THINKING_TOKENS": "10000",
"CLAUDE_AUTOCOMPACT_PCT_OVERRIDE": "50"
}
}
| Setting | Default | Recommended | Impact |
|---|---|---|---|
model | opus | sonnet | ~60% cost reduction; handles 80%+ of coding tasks |
MAX_THINKING_TOKENS | 31,999 | 10,000 | ~70% reduction in hidden thinking cost per request |
CLAUDE_AUTOCOMPACT_PCT_OVERRIDE | 95 | 50 | Compacts earlier — better quality in long sessions |
ECC_CONTEXT_MONITOR_COST_WARNINGS | on | off for subscription users | Suppresses agent-facing API-rate estimate warnings while keeping context/scope/loop warnings |
Switch to Opus only when you need deep architectural reasoning:
/model opus
Daily Workflow Commands
| Command | When to Use |
|---|---|
/model sonnet | Default for most tasks |
/model opus | Complex architecture, debugging, deep reasoning |
/clear | Between unrelated tasks (free, instant reset) |
/compact | At logical task breakpoints (research done, milestone complete) |
/cost | Monitor token spending during session |
If you use a Claude subscription and the context monitor's API-rate estimates are not useful, set ECC_CONTEXT_MONITOR_COST_WARNINGS=off. This only suppresses the agent-facing cost warnings; it does not disable context exhaustion, scope, or loop warnings.
Strategic Compaction
The strategic-compact skill (included in this plugin) suggests /compact at logical breakpoints instead of relying on auto-compaction at 95% context. See skills/strategic-compact/SKILL.md for the full decision guide.
When to compact:
- After research/exploration, before implementation
- After completing a milestone, before starting the next
- After debugging, before continuing feature work
- After a failed approach, before trying a new one
When NOT to compact:
- Mid-implementation (you'll lose variable names, file paths, partial state)
Context Window Management
Critical: Don't enable all MCPs at once. Each MCP tool description consumes tokens from your 200k window, potentially reducing it to ~70k.
- Keep under 10 MCPs enabled per project
- Keep under 80 tools active
- Use
/mcpto disable unused Claude Code MCP servers; those runtime choices persist in~/.claude.json - Use
ECC_DISABLED_MCPSonly to filter ECC-generated MCP configs during install/sync flows
Agent Teams Cost Warning
Agent Teams spawns multiple context windows. Each teammate consumes tokens independently. Only use for tasks where parallelism provides clear value (multi-module work, parallel reviews). For simple sequential tasks, subagents are more token-efficient.
---
WARNING: Important Notes
Token Optimization
Hitting daily limits? See the Token Optimization Guide for recommended settings and workflow tips.
Quick wins:
// ~/.claude/settings.json
{
"model": "sonnet",
"env": {
"MAX_THINKING_TOKENS": "10000",
"CLAUDE_AUTOCOMPACT_PCT_OVERRIDE": "50",
"CLAUDE_CODE_SUBAGENT_MODEL": "haiku"
}
}
Use /clear between unrelated tasks, /compact at logical breakpoints, and /cost to monitor spending.
Customization
These configs work for my workflow. You should:
- Start with what resonates
- Modify for your stack
- Remove what you don't use
- Add your own patterns
---
Security
ECC takes supply-chain and agent safety seriously.
- Official sources only. Install ECC only from the verified channels listed in the banner at the top of this README — the GitHub repo, the
ecc-universal/ecc-agentshieldnpm packages, the GitHub App, the plugin slugecc@ecc, and ecc.tools. Third-party re-uploads and mirrors are unreviewed and may ship malware. - Report a vulnerability. Use the private process in SECURITY.md (GitHub private vulnerability reporting). Please do not open public issues for security reports.
- Built-in guardrails. GateGuard gates destructive shell commands (including
rm, force/pathgit checkout, and destructivefind -exec) before they run; the supply-chain IOC scanner runs in CI; and AgentShield audits your own agent, hook, MCP, permission, and secret surfaces (/security-scan). - Deep dive. See the Security Guide.
---
Sponsors
Featured sponsors are at the top of this README — full list and tiers in SPONSORS.md. Become a sponsor.
---
Links
- Shorthand Guide (Start Here): The Shorthand Guide to ECC
- Longform Guide (Advanced): The Longform Guide to ECC
- Security Guide: Security Guide | Thread
- Follow: @affaan
---
License
MIT - Use freely, modify as needed, contribute back if you can.
---
Star this repo if it helps. Read both guides. Build something great.