name: configure-ecc description: Everything Claude Code 交互式安装器 — 引导用户选择并安装技能和规则到用户级或项目级目录,验证路径,并可选择优化已安装文件。
配置 Everything Claude Code (ECC)
Everything Claude Code 项目的交互式分步安装向导。使用 AskUserQuestion 引导用户选择性安装技能和规则,然后验证正确性并提供优化选项。
何时激活
- 用户说 “configure ecc”、“install ecc”、“setup everything claude code” 或类似内容时
- 用户希望从此项目选择性安装技能或规则时
- 用户希望验证或修复现有的 ECC 安装时
- 用户希望为其项目优化已安装的技能或规则时
先决条件
此技能必须在激活前对 Claude Code 可访问。两种引导方式:
- 通过插件:
/plugin install everything-claude-code— 插件会自动加载此技能 - 手动:仅将此技能复制到
~/.claude/skills/configure-ecc/SKILL.md,然后通过说 “configure ecc” 激活
步骤 0:克隆 ECC 仓库
在任何安装之前,将最新的 ECC 源代码克隆到 /tmp:
rm -rf /tmp/everything-claude-code
git clone https://github.com/affaan-m/everything-claude-code.git /tmp/everything-claude-code
设置 ECC_ROOT=/tmp/everything-claude-code 作为所有后续复制操作的源。
如果克隆失败(网络问题等),使用 AskUserQuestion 要求用户提供现有 ECC 克隆的本地路径。
步骤 1:选择安装级别
使用 AskUserQuestion 询问用户安装位置:
问题:"ECC 组件应安装在何处?"
选项:
- "用户级别 (~/.claude/)" — "适用于您所有的 Claude Code 项目"
- "项目级别 (.claude/)" — "仅适用于当前项目"
- "两者" — "通用/共享项用户级别,项目特定项项目级别"
将选择存储为 INSTALL_LEVEL。设置目标目录:
- 用户级别:
TARGET=~/.claude - 项目级别:
TARGET=.claude(相对于当前项目根目录) - 两者:
TARGET_USER=~/.claude,TARGET_PROJECT=.claude
如果目标目录不存在,则创建它们:
mkdir -p $TARGET/skills $TARGET/rules
步骤 2:选择并安装技能
2a:选择技能类别
共有 27 项技能,分为 4 个类别。使用带有 multiSelect: true 的 AskUserQuestion:
问题:"您想安装哪些技能类别?"
选项:
- "框架与语言" — "Django、Spring Boot、Go、Python、Java、前端、后端模式"
- "数据库" — "PostgreSQL、ClickHouse、JPA/Hibernate 模式"
- "工作流与质量" — "TDD、验证、学习、安全审查、压缩"
- "所有技能" — "安装每个可用技能"
2b:确认单个技能
对于每个选定的类别,打印下面的完整技能列表,并要求用户确认或取消选择特定技能。如果列表超过 4 项,请将列表打印为文本,并使用带有 “安装所有列出项” 选项的 AskUserQuestion,加上 “其他” 供用户粘贴特定名称。
类别:框架与语言(16 项技能)
| 技能 | 描述 |
|---|---|
backend-patterns |
后端架构、API 设计、Node.js/Express/Next.js 的服务器端最佳实践 |
coding-standards |
TypeScript、JavaScript、React、Node.js 的通用编码标准 |
django-patterns |
Django 架构、使用 DRF 的 REST API、ORM、缓存、信号、中间件 |
django-security |
Django 安全:身份验证、CSRF、SQL 注入、XSS 预防 |
django-tdd |
使用 pytest-django、factory_boy、模拟、覆盖率的 Django 测试 |
django-verification |
Django 验证循环:迁移、代码检查、测试、安全扫描 |
frontend-patterns |
React、Next.js、状态管理、性能、UI 模式 |
golang-patterns |
惯用的 Go 模式、稳健 Go 应用程序的约定 |
golang-testing |
Go 测试:表驱动测试、子测试、基准测试、模糊测试 |
java-coding-standards |
Spring Boot 的 Java 编码标准:命名、不可变性、Optional、流 |
python-patterns |
Pythonic 习语、PEP 8、类型提示、最佳实践 |
python-testing |
使用 pytest、TDD、夹具、模拟、参数化的 Python 测试 |
springboot-patterns |
Spring Boot 架构、REST API、分层服务、缓存、异步 |
springboot-security |
Spring Security:身份验证/授权、验证、CSRF、密钥、速率限制 |
springboot-tdd |
使用 JUnit 5、Mockito、MockMvc、Testcontainers 的 Spring Boot TDD |
springboot-verification |
Spring Boot 验证:构建、静态分析、测试、安全扫描 |
类别:数据库(3 项技能)
| 技能 | 描述 |
|---|---|
clickhouse-io |
ClickHouse 模式、查询优化、分析、数据工程 |
jpa-patterns |
JPA/Hibernate 实体设计、关系、查询优化、事务 |
postgres-patterns |
PostgreSQL 查询优化、模式设计、索引、安全 |
类别:工作流与质量(8 项技能)
| 技能 | 描述 |
|---|---|
continuous-learning |
从会话中自动提取可重用模式作为学习技能 |
continuous-learning-v2 |
基于本能的学习,带有置信度评分,演变为技能/命令/代理 |
eval-harness |
用于评估驱动开发 (EDD) 的正式评估框架 |
iterative-retrieval |
用于子代理上下文问题的渐进式上下文细化 |
security-review |
安全检查表:身份验证、输入、密钥、API、支付功能 |
strategic-compact |
在逻辑间隔建议手动上下文压缩 |
tdd-workflow |
通过 80%+ 覆盖率强制执行 TDD:单元、集成、端到端 |
verification-loop |
验证和质量循环模式 |
独立
| 技能 | 描述 |
|---|---|
project-guidelines-example |
创建项目特定技能的模板 |
2c:执行安装
对于每个选定的技能,复制整个技能目录:
cp -r $ECC_ROOT/skills/<技能名称> $TARGET/skills/
注意:continuous-learning 和 continuous-learning-v2 有额外文件(config.json、钩子、脚本)— 确保复制整个目录,而不仅仅是 SKILL.md。
步骤 3:选择并安装规则
使用带有 multiSelect: true 的 AskUserQuestion:
问题:"您想安装哪些规则集?"
选项:
- "通用规则(推荐)" — "语言无关原则:编码风格、git 工作流、测试、安全等(8 个文件)"
- "TypeScript/JavaScript" — "TS/JS 模式、钩子、使用 Playwright 测试(5 个文件)"
- "Python" — "Python 模式、pytest、black/ruff 格式化(5 个文件)"
- "Go" — "Go 模式、表驱动测试、gofmt/staticcheck(5 个文件)"
执行安装:
# 通用规则(扁平复制到 rules/)
cp -r $ECC_ROOT/rules/common/* $TARGET/rules/
# 语言特定规则(扁平复制到 rules/)
cp -r $ECC_ROOT/rules/typescript/* $TARGET/rules/ # 如果选中
cp -r $ECC_ROOT/rules/python/* $TARGET/rules/ # 如果选中
cp -r $ECC_ROOT/rules/golang/* $TARGET/rules/ # 如果选中
重要:如果用户选择了任何语言特定规则但未选择通用规则,请警告他们:
“语言特定规则扩展了通用规则。不安装通用规则可能导致覆盖不完整。也要安装通用规则吗?”
步骤 4:安装后验证
安装后,执行这些自动化检查:
4a:验证文件存在
列出所有已安装文件并确认它们存在于目标位置:
ls -la $TARGET/skills/
ls -la $TARGET/rules/
4b:检查路径引用
扫描所有已安装的 .md 文件以查找路径引用:
grep -rn "~/.claude/" $TARGET/skills/ $TARGET/rules/
grep -rn "../common/" $TARGET/rules/
grep -rn "skills/" $TARGET/skills/
对于项目级别安装,标记任何对 ~/.claude/ 路径的引用:
- 如果技能引用
~/.claude/settings.json— 这通常没问题(设置始终是用户级别) - 如果技能引用
~/.claude/skills/或~/.claude/rules/— 如果仅安装在项目级别,这可能已损坏 - 如果技能按名称引用另一个技能 — 检查被引用的技能是否也已安装
4c:检查技能之间的交叉引用
某些技能引用其他技能。验证这些依赖关系:
django-tdd可能引用django-patternsspringboot-tdd可能引用springboot-patternscontinuous-learning-v2引用~/.claude/homunculus/目录python-testing可能引用python-patternsgolang-testing可能引用golang-patterns- 语言特定规则引用
common/对应项
4d:报告问题
对于发现的每个问题,报告:
- 文件:包含问题引用的文件
- 行:行号
- 问题:错误之处(例如,“引用 ~/.claude/skills/python-patterns 但未安装 python-patterns”)
- 建议修复:该怎么做(例如,“安装 python-patterns 技能” 或 “更新路径为 .claude/skills/”)
步骤 5:优化已安装文件(可选)
使用 AskUserQuestion:
问题:"您想为您的项目优化已安装的文件吗?"
选项:
- "优化技能" — "删除无关部分,调整路径,根据您的技术栈定制"
- "优化规则" — "调整覆盖率目标,添加项目特定模式,自定义工具配置"
- "优化两者" — "完全优化所有已安装文件"
- "跳过" — "保持原样"
如果优化技能:
- 读取每个已安装的 SKILL.md
- 询问用户其项目的技术栈是什么(如果尚不清楚)
- 对于每个技能,建议删除无关部分
- 在安装目标处就地编辑 SKILL.md 文件(不是源仓库)
- 修复步骤 4 中发现的任何路径问题
如果优化规则:
- 读取每个已安装的规则 .md 文件
- 询问用户的偏好:
- 测试覆盖率目标(默认 80%)
- 首选格式化工具
- Git 工作流约定
- 安全要求
- 在安装目标处就地编辑规则文件
关键:仅修改安装目标($TARGET/)中的文件,切勿修改源 ECC 仓库($ECC_ROOT/)中的文件。
步骤 6:安装摘要
清理 /tmp 中克隆的仓库:
rm -rf /tmp/everything-claude-code
然后打印摘要报告:
## ECC 安装完成
### 安装目标
- 级别:[用户级别 / 项目级别 / 两者]
- 路径:[目标路径]
### 已安装技能([数量])
- 技能-1, 技能-2, 技能-3, ...
### 已安装规则([数量])
- 通用(8 个文件)
- typescript(5 个文件)
- ...
### 验证结果
- 发现 [数量] 个问题,修复 [数量] 个
- [列出任何剩余问题]
### 应用的优化
- [列出所做的更改,或 "无"]
故障排除
“Claude Code 未拾取技能”
- 验证技能目录包含
SKILL.md文件(不仅仅是松散的 .md 文件) - 对于用户级别:检查
~/.claude/skills/<技能名称>/SKILL.md是否存在 - 对于项目级别:检查
.claude/skills/<技能名称>/SKILL.md是否存在
“规则不工作”
- 规则是扁平文件,不在子目录中:
$TARGET/rules/coding-style.md(正确) vs$TARGET/rules/common/coding-style.md(扁平安装不正确) - 安装规则后重启 Claude Code
“项目级别安装后路径引用错误”
- 某些技能假定
~/.claude/路径。运行步骤 4 验证以查找并修复这些。 - 对于
continuous-learning-v2,~/.claude/homunculus/目录始终是用户级别 — 这是预期的,不是错误。