Головна / Статті / Розбір репозиторію Everything Claude Code: 286 скілів та індекс на 21K токенів

Розбір репозиторію Everything Claude Code: 286 скілів та індекс на 21K токенів

Підрахунок вмісту репозиторію Everything Claude Code власноруч: 286 скілів, 68 агентів, 23 хуки та індекс скілів на 21 500 токенів. Що варто залишити й встановити iOS-інженеру.

1723 слів

Пізно ввечері з'являється коротке відео: переможець хакатону нібито роздав свій повний сетап Claude Code. Слідом виринає тред із тим самим твердженням, потім ще один і ще кілька. Усі схожі між собою: кілька великих чисел, скриншот лічильника зірок і посилання. В одному 163K зірок, в іншому 214K, у третьому 228K.

Цифри навіть між собою не сходяться, і це перший натяк, що ніхто з тих, хто їх публікує, репозиторій не відкривав.

Тож ось що буває, якщо його таки відкрити. Не README, а сам репозиторій. Якщо клонувати його, прогнати wc і короткий скрипт на Python і прочитати те, що важливо iOS-інженеру, стає зрозуміло, що всередині, що варто залишити і яке одне вимірювання змінює підхід до встановлення.

Що таке ECC

ECC розшифровується як Everything Claude Code — проєкт Аффана Мустафи під ліцензією MIT. На момент перевірки репозиторій мав близько 247 000 зірок, 37 200 форків, 2631 коміт і версію 2.2.1.

Ідея така: Claude Code з коробки — це один асистент, а ECC перетворює його на робочий процес із планування, тестів, реалізації, ревʼю, перевірки, запам'ятовування й покращення. Довкола цього — сховище пам'яті, «інстинкти» (патерни, що зберігаються між сесіями) і сканер безпеки AgentShield.

Встановлення займає одну команду:

npx ecc-universal setup

Потрібні Node 18+, Git і Claude Code 2.1+. Є адаптери для Codex, Cursor, OpenCode, Gemini, Zed і ще приблизно десятка інших.

Це маркетинг. Тепер про вміст.

Рахуємо, що там насправді

Якщо пропустити цифри з тредів і порахувати напряму, вийде ось що:

ls -1 skills | wc -l     # 286
ls -1 agents | wc -l     # 68
du -sh --exclude=.git .  # 94M
  • 286 скілів, по одному SKILL.md на теку
  • 68 агентів — markdown-файли, у frontmatter яких зазначено модель і дозволені інструменти
  • 94 застарілі командні шими з 426 командних файлів загалом
  • 23 записи хуків на сім подій життєвого циклу. Вісім висять на PreToolUse і сім на Stop. PostToolUse, PostToolUseFailure і SessionStart мають по два, а PreCompact і SessionEnd — по одному
  • 94 МБ на диску, з них 23 МБ — асети й 18 МБ — документація

Одна деталь несподівана. CLAUDE.md у корені цього 94-мегабайтного пам'ятника конфігурації має 82 рядки, 531 слово. Людина, що випустила 286 скілів, зробила власний файл інструкцій коротшим, ніж у багатьох приватних репозиторіях. Це не випадковість, і наприкінці це знову стане важливим.

Цифра, яку треди пропускають

Перш ніж скіл зможе спрацювати, Claude Code має знати, що він існує. Під час запуску він завантажує ім'я та короткий опис кожного скіла як каталог, а повне тіло скіла підтягується лише в момент спрацювання. Таке ліниве завантаження називається progressive disclosure, і це добре рішення.

Та анонси однаково щось коштують, тож їх варто виміряти:

# name + description from every SKILL.md frontmatter
skills: 286  name+desc chars: 86,311  ~tokens: 21,577

Це близько 21 500 токенів індексу скілів, витрачених ще до того, як набрано бодай одне слово самої задачі.

Для порівняння, ось що стоїть за індексом:

  • усі 286 тіл скілів: близько 641 000 токенів
  • усі 68 описів агентів: близько 110 000 токенів

641K токенів ніхто ніколи не завантажить — progressive disclosure саме для цього й потрібен, і він працює. Але індекс на ~21,5K — це вхідний квиток повного встановлення, який сплачується в кожній сесії. У вікні на 200K понад 10% іде на меню.

Це зовсім не критика ECC. Це аргумент на користь профілю minimal, який пропонує сам репозиторій:

./install.sh --profile minimal --target claude

У README це навіть сказано прямо: почніть із rules/common та одного мовного пакета, яким справді користуєтеся. Найгучніші поширювачі репозиторію цей рядок пропустили.

Шість речей, які залишив би iOS-інженер

Пошук усього, що схоже на Swift, першим видає cisco-ios-patterns. Це скіл про мережі й гарне нагадування, що «ios» — невдалий пошуковий запит. Після нього з'являються шість справжніх записів.

Тип Назва
Агент swift-reviewer.md
Агент swift-build-resolver.md
Скіл swiftui-patterns
Скіл swift-concurrency-6-2
Скіл swift-actor-persistence
Скіл swift-protocol-di-testing

Тим, хто живе в змішаній кодовій базі на UIKit і SwiftUI з MVVM, останню групу варто прочитати, навіть якщо інсталятор так і не запуститься.

Що всередині swift-reviewer

Очікуєш шаблонний промпт на кшталт «ти корисний ревʼюер Swift». Нічого подібного. Frontmatter закріплює агента за sonnet і обмежує інструменти набором Read, Grep, Glob, Bash. Ніщо з цього не може змінювати файли, що для ревʼюера ідеально.

Далі йде процедура:

  1. Спершу збірка й тести: swift build, swiftlint lint --quiet (якщо встановлено) і swift test. Якщо бодай щось падає, агент зупиняється й доповідає, а не йде далі.
  2. Зібрати зміни через git diff HEAD~1 -- '*.swift' або git diff main...HEAD під час ревʼю PR.
  3. Дивитися лише змінені файли .swift і нічого більше.
  4. Почати власне ревʼю.

Правило «якщо щось упало — зупинись і доповідай» варто запозичити. Більшість промптів для ревʼю радісно критикують код, який навіть не компілюється. Цей відмовляється палити токени на зламаному дереві.

Рівень CRITICAL читається як список того, що досвідчені розробники вже випускали в прод і потім шкодували:

  • force unwrap у продакшен-шляхах
  • try! без обґрунтування та as! без попередньої перевірки типу
  • захардкоджені секрети, зокрема секрети в UserDefaults, а не в Keychain
  • винятки ATS без обґрунтування
  • порожні блоки catch {} і try?, що ковтають значущі помилки
  • fatalError() для ситуацій, з яких код, що викликає, міг би відновитися
  • assert, що охороняє інваріант, який мусить виконуватися в релізних збірках. У релізі він вирізається, тому правильний інструмент — precondition

Останнє зауваження про assert і precondition — справді сеньйорське спостереження. Його пропускають у реальних пул-реквестах, а в компанії, що працює з цінними паперами, «вирізається в релізі» — зовсім не академічна проблема.

Скіл swiftui-patterns влаштований так само. У ньому є таблиця вибору property wrapper'ів (@State, @Binding, @Observable, @Bindable, @Environment) і чіткий аргумент на користь @Observable замість ObservableObject: оскільки зміни відстежуються для кожної властивості окремо, SwiftUI перемальовує лише ті view, що справді читають змінене. Ті самі знання є в сесіях WWDC. Але мати їх у файлі, який можна віддати агентові, — зовсім інша річ.

Де користь закінчується

Той самий ls, що знайшов Swift-скіли, знайшов і такі записи:

customs-trade-compliance
energy-procurement
production-scheduling
quality-nonconformance
healthcare-cdss-patterns
healthcare-emr-patterns
healthcare-phi-compliance

Якщо ви не будуєте пайплайн закупівлі електроенергії, ніщо з цього вам не знадобиться. Ці скіли — чиясь справжня робота, і автор вчинив гідно, випустивши їх, але кожен із них — рядок в індексі, за який платиш і яким не користуєшся.

Ще три проблеми варто чесно згадати.

Плагін не постачає правила. Встановлення ECC як плагіна Claude Code автоматично приносить агентів, скіли, хуки й команди, але правила доводиться копіювати в .claude/rules/ вручну. Тож обіцянка однієї команди ховає всередині рутину.

Інсталятори не поєднуються. README знову й знову повторює: один спосіб на один харнес. Баг-репорти про дубльовані хуки зазвичай надходять від тих, хто поєднав плагін із ./install.sh --profile full.

Двадцять три хуки розширюють поверхню атаки. Вісім із них спрацьовують на PreToolUse, тобто кожен — це код, що запускається локально до того, як Claude відредагує будь-який файл. ECC цього не приховує: інсталятор просить явної згоди перед увімкненням хуків, а AgentShield входить до комплекту для сканування промптів, хуків і MCP-конфігів. Це правильний підхід. Та перед згодою однаково лишається 23 речі, які треба прочитати.

Вердикт

Справа не в кількості зірок. Ніхто не ставить зірку репозиторію з 247 000 зірок, оцінивши 286 скілів. Ставлять, бо так сказало коротке відео.

Важливе інше: репозиторій — чудовий навчальний матеріал з організації роботи агентів і посередній пакет для повного встановлення. Розумний план виглядає так.

Клонуйте, але поки не встановлюйте.

git clone --depth 1 https://github.com/affaan-m/ECC.git

Потім варто відкрити чотири файли: агента-ревʼюера в agents/swift-reviewer.md, скіл у skills/swiftui-patterns/SKILL.md, конфіг хуків у hooks/hooks.json і той самий короткий CLAUDE.md на 82 рядки. Двадцять хвилин читання там дадуть більше за будь-який тред про репозиторій, якщо хочеться зрозуміти, як писати визначення агентів.

Ставте minimal, а не full. Залиште двох Swift-агентів, чотири Swift-скіли та rules/common. Індекс стиснеться до жменьки записів, які вміщаються в голові, а витрата контексту буде майже нульовою.

Додавайте по одній речі й лише тоді, коли цього вимагає справжня задача.

Підказка була в репозиторії від самого початку. Автор, що випустив 286 скілів, уклав свій файл інструкцій у 82 рядки й теж не завантажує все підряд. Усе нікому не потрібне. Потрібна жменька того, що пасує до коду, який ви насправді пишете.