
1. 135 个 Skill 装进 Claude Code 之后为什么你只会用到 5 个ECCeverything-claude-code这个仓库在 AI 编程圈子里传播得很广175K stars30 个 Agent、135 个 Skill、60 个 Command外加安全扫描、记忆持久化、跨平台支持。光看数字确实唬人但真正把它装进 Claude Code 跑上一段时间之后多数人的感受是一样的日常反复调用的 Skill 不超过 5 个剩下 130 个基本躺在目录里吃灰。这不是 ECC 做得不好而是 Skill 这个机制本身有个容易被忽略的成本——每个激活的 Skill 都会占用上下文窗口都会参与模型的路由判断。当你同时挂着几十个 Skill模型在决定该用哪个的时候反而更容易选错或者干脆忽略掉你真正想要的那个。这就像给一个厨师同时递上 135 把刀他切菜的时候反而不知道该拿哪把。这篇不打算做完整评测而是聚焦一个具体问题在 Claude Code 里加载 ECC 全家桶之后怎么从 Command 与 Agent 协作的角度把真正高频可用的那几个筛出来并且给出可复制的启用清单和逐项验证动作。适合已经在用 Claude Code、想引入 ECC 但不想被 Skill 数量淹没的开发者。核心检索词就三个ECC、Skill 筛选、Claude Code Agent 协作。先说结论我实测下来长期保留的是这几个方向的能力强制先出方案的流程控制类、跨会话上下文续接类、测试前置拦截类、上下文容量预警类、权限模式自动切换类。它们共同的特点是——不依赖具体语言或框架每次开新会话都能用上而且解决的是 Claude Code 本身没做好的那部分。反过来那些write-clean-codefollow-best-practices之类的通用规范类 Skill对有经验的开发者价值接近于零因为模型本来就会往干净代码的方向写那些 tdd-guard、tdd-enforcer、tdd-checker 名字不同但能力高度重合的装一个就够还有convert-csv-to-jsonadd-pagination-to-spring-boot这种一次性任务型 Skill需要的时候直接描述需求就行没必要常驻。下面按先讲清楚问题场景 → 接入前置 → 可复制配置 → 验证请求 → 报错排查 → 后续动作的顺序展开每一步都给到能直接跑的命令和配置。2. 接入前的准备TaoToken 与 Claude Code 的对接方式在动 ECC 之前得先保证 Claude Code 本身能正常跑起来。Claude Code 走的是 Anthropic 的接口协议国内直连不稳定所以通常需要一个兼容 Anthropic 协议的接入点。TaoToken 提供的就是这类接入能力官网在 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content API 端点是 https://taotoken.net/api 。这里要强调一点TaoToken 是合规的 API 接入服务不是那种灰色中转配置的时候按官方文档给的 Base URL 和 Key 填就行。Claude Code 的配置入口在~/.claude/settings.json全局或项目根目录的.claude/settings.json项目级。如果你用的是 Claude Code 的 Anthropic 兼容模式需要设置环境变量或者写进 settings 文件。先确认 Claude Code 版本太老的版本对 Skill 机制支持不完整claude --version # 建议 1.x 以上低于这个版本先升级 npm install -g anthropic-ai/claude-code然后配置接入信息。推荐用环境变量的方式避免把 Key 写死在文件里export ANTHROPIC_BASE_URLhttps://taotoken.net/api export ANTHROPIC_API_KEY你的 TaoToken Key如果你更习惯写进配置文件~/.claude/settings.json长这样{ env: { ANTHROPIC_BASE_URL: https://taotoken.net/api, ANTHROPIC_API_KEY: sk-你的key } }Key 的获取在控制台的 API Keys 页面https://taotoken.net/console/api-keys?utm_sourcetaotoken_aicg_blog_endutm_contentapi_keysutm_campaignrewrite 。拿到之后先别急着装 ECC用一次最简单的对话验证链路通不通claude -p 回复 ok 两个字能正常返回就说明 Base URL、Key、模型 ID 三件套是对的。这一步没过后面装再多 Skill 都是白搭。模型 ID 这块Claude Code 默认会用一个 Claude 系列模型如果你想指定可以在 settings 里加model: claude-sonnet-4-5之类的字段具体可用模型以 TaoToken 文档为准https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_contentdocutm_campaignrewrite 。链路通了之后再装 ECC。ECC 的安装方式官方给的是npx skillslatest add affaan-m/everything-claude-code装完之后项目里会多出一整套目录agents/、skills/、commands/、hooks/、rules/。注意135 个 Skill 全部可用但默认不会同时激活——Claude Code 的 Skill 是按需加载的你得在配置里显式声明哪些要常驻。这就是筛选的入口。3. 可复制的 Skill 启用清单与配置片段筛选的逻辑其实不复杂一个 Skill 值不值得常驻看它是不是每次开新会话都可能触发、且解决的是 Claude Code 原生没覆盖的流程问题。按这个标准我把 135 个过了一遍留下 5 个方向。下面给出可直接复制的配置。Claude Code 的 Skill 启用写在.claude/settings.json里用enabledSkills字段声明。一个最小可用的配置片段{ enabledSkills: [ plan-first, conversation-summarizer, tdd-guard, ctx-sizer, mode-switcher ], skillSettings: { ctx-sizer: { threshold: 0.75 }, tdd-guard: { testPatterns: [**/*.test.ts, **/*.test.py, **/test_*.py] } } }如果你用的是 TOML 风格的配置部分 Claude Code 版本支持等价写法[skills] enabled [plan-first, conversation-summarizer, tdd-guard, ctx-sizer, mode-switcher] [skills.ctx-sizer] threshold 0.75 [skills.tdd-guard] test_patterns [**/*.test.ts, **/*.test.py, **/test_*.py]逐个说清楚这 5 个为什么留plan-first解决的是AI 上来就动手改代码的问题。它把先出方案从对话层面的提醒变成了流程控制层面的强制步骤。接到需求后它会走分析 → 方案设计 → 等你确认 → 执行这条链路你不确认它不动手。跟 Karpathy 的 Think Before Coding 思路接近但更结构化。适合涉及 schema 变更、多文件改动、有数据风险的任务。conversation-summarizer解决跨会话上下文丢失。每次会话结束自动生成一份结构化摘要存到.claude/conversation-summary.md下次启动自动注入。摘要里会记录已做的决策、进行中的任务、待定事项。这样你关掉重开AI 不用你重新解释一遍我们在做什么。tdd-guard是拦截型的不帮你写测试而是在你要执行代码修改时检查测试文件在不在。不在就阻止修改逼你先补测试。适合已经有测试基础设施、但经常忘了先写测试的团队。ctx-sizer在 token 用量接近阈值时主动提醒。上下文过载的典型信号是AI 开始引用已经被推翻的早期方案、遗忘你十分钟前的指令、反复改同一个文件。它在 75% 左右提醒你收尾给你机会先跑 summarizer 再开新会话。mode-switcher处理权限模式切换。日常 acceptEdits 模式够用但偶尔要跑pip install或npm install这种需要网络的操作权限不够。它会检测到需要更高权限时主动提出来帮你切单个操作完成后自动切回不会一直开着高权限。这 5 个加起来不到 200 行 YAML/Markdown对大多数项目够用了。剩下的 130 个按前面说的三类——过于通用、重复、场景太窄——基本可以不用常驻。4. 逐项验证怎么确认这些 Skill 真的生效了配置写完不代表生效得逐项验证。下面给每个 Skill 一个可复制的验证动作跑一遍就知道有没有真正加载。先确认 Skill 列表被正确读取claude -p /skills list如果输出里能看到 plan-first、conversation-summarizer 这几个名字说明配置被读到了。看不到就回去检查.claude/settings.json的路径和字段名。验证 plan-first给它一个涉及多文件改动的需求看它会不会停下来出方案。claude -p 给这个 FastAPI 项目加一个 audit_log 表的 Alembic 迁移正常表现是它不直接改文件而是输出一段 Proposal包含改动范围、风险、预估时间最后问 Proceed? [Y/n]。你输入 y 它才动手。如果它直接开始改代码说明 plan-first 没生效。验证 conversation-summarizer跑一次会话结束后检查摘要文件。ls -la .claude/conversation-summary.md cat .claude/conversation-summary.md文件里应该有 Session Summary、Decisions Made、In Progress、Decisions Pending 这几段。然后新开一个会话问它我们上次在做什么看它能不能接上。验证 tdd-guard故意在一个没有测试文件的模块上让它改代码。claude -p 修改 src/utils/parser.py 里的 parse_date 函数如果 tdd-guard 生效它会提示缺少对应测试文件阻止修改。你补上test_parser.py之后再试就能通过。验证 ctx-sizer这个不太好主动触发但可以调低阈值测试。把配置里的 threshold 改成 0.1然后跑一段长对话看它会不会在早期就提醒。验证完记得改回 0.75。验证 mode-switcher让它执行一个需要网络的操作。claude -p 帮我安装 alembic 依赖正常表现是它检测到当前模式阻止网络访问主动问你要不要临时切到更高权限模式。你确认后它执行执行完自动切回。这五项都跑通说明你的 ECC 筛选配置是有效的。任何一项没反应先看 §5 的排查。5. 常见报错与排查401、local proxy failed、reading choices、OAuth配置过程中最容易撞上的几类报错逐个说清楚原因和解法。401 Unauthorized最常见基本是 Key 的问题。先确认环境变量有没有被正确读取echo $ANTHROPIC_API_KEY echo $ANTHROPIC_BASE_URL如果输出为空说明 export 没生效或者你是在另一个 shell 里跑的。检查~/.claude/settings.json里的 env 字段有没有写对Key 有没有多余空格。还有一种情况是 Key 本身失效了去控制台重新生成一个https://taotoken.net/console/api-keys?utm_sourcetaotoken_aicg_blog_endutm_contentapi_keysutm_campaignrewrite 。local proxy failed / connection refused这个通常出现在你本地配了代理但代理没起来或者 Base URL 写错了。先确认 Base URL 是https://taotoken.net/api注意结尾不要多加斜杠。然后检查本地有没有残留的代理环境变量env | grep -i proxy如果有HTTP_PROXY或HTTPS_PROXY指向一个已经关掉的本地端口清掉它们unset HTTP_PROXY HTTPS_PROXY http_proxy https_proxyError reading choices / unexpected response format这个报错说明请求发出去了但返回的结构不是 Claude Code 期望的格式。常见原因是模型 ID 写错了或者 Base URL 指向了一个不兼容 Anthropic 协议的端点。确认你的配置里 Base URL 是 TaoToken 的 API 地址模型 ID 用文档里列出的可用值。如果用了自定义模型名先换回默认的试一次。OAuth 相关报错Claude Code 某些版本会尝试走 OAuth 流程如果你用的是 API Key 模式需要确保没有残留的 OAuth 凭证干扰。检查ls -la ~/.claude/如果有credentials.json之类的 OAuth 缓存文件且你确定走的是 API Key 模式可以备份后移走让它重新按 Key 认证。Skill 加载了但没生效先跑/skills list确认名字对得上。ECC 里有些 Skill 名字带前缀或命名空间配置里要写全名。另外确认 Claude Code 版本支持enabledSkills字段老版本可能用的是别的字段名以你本地版本的文档为准。排查的顺序建议是先验证链路§2 的claude -p 回复 ok再验证 Skill 列表最后逐项验证单个 Skill。链路不通的时候不要往下查 Skill会浪费很多时间。6. 筛选之后把 ECC 当精选菜单而不是全家桶ECC 最大的价值其实不是全而是它提供了一个已经整理过的精选菜单。你不需要去几千个 Skill 里海选直接从 135 个里挑 3 到 5 个适合自己的装进项目就行。我自己的日常配置就是 plan-first conversation-summarizer ctx-sizer 这三个加上 tdd-guard 和 mode-switcher 按项目需要开。还有一个被低估的用法ECC 的agents/和hooks/目录可以直接当模板参考。即使你不装它的 Skill翻一翻它怎么定义 Agent 角色、怎么写 Hook 脚本比看文档快得多。这部分对想自己搭 Agent 协作流程的人特别有用。如果你打算长期在 Claude Code 里跑编码和 Agent 任务可以考虑 Coding Plan比按量调用更划算https://taotoken.net/coding-plan?utm_sourcetaotoken_aicg_blog_endutm_contentcoding_planutm_campaignrewrite 。想先验证模型对话效果的话模型对话入口在 https://taotoken.net/chat?utm_sourcetaotoken_aicg_blog_endutm_contentchatutm_campaignrewrite 。接入过程中遇到配置问题文档里基本都有对应说明https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_contentdocutm_campaignrewrite 。最后给一个实操建议装完 ECC 之后先别急着开一堆 Skill。从 plan-first 开始用一周感受一下强制先出方案对你有多少价值。然后再加 conversation-summarizer再感受一周。一个一个加你才能知道每个 Skill 到底有没有在帮你。一次性全开出了问题你都不知道是哪个 Skill 在捣乱。