Майнинг скиллов: от 3500 кандидатов до 466 возможностей
> Мы просеяли 3500 кандидатов в скиллы и приняли 466. Систематический цикл майнинга и приёма для построения цельной библиотеки скиллов AI-агентов в масштабе.
Цифры в этом посте отражают состояние системы на момент публикации (январь 2026). Актуальные цифры смотрите на нашей странице команды.
Проблема 3500 скиллов
Когда мы начали строить систему оркестрации агентов, мы столкнулись с интересным вызовом: по AI-экосистеме разбросаны тысячи потенциальных скиллов. Репозитории GitHub, документация вендоров, проекты сообщества, внутренние паттерны — скиллы существуют повсюду. Но какие из них важны? Какие реально работают? И как поддерживать цельную библиотеку скиллов, которую агенты могут реально использовать?
Наш ответ: систематический цикл майнинга и приёма.
Цифры на сегодня
Чуть больше трёх месяцев спустя после того, как Anthropic запустила Agent Skills 16 октября 2025 года, вот на чём мы стояли на момент публикации этого поста 27 января 2026 года:
| Метрика | Количество |
|---|---|
| Выявлено кандидатов | 3500+ |
| Принято скиллов | 466 |
| Вендорских скиллов | 373 |
| Внутренних скиллов | 93 |
| Активных вендоров | 25+ |
| Среднее число токенов на скилл | 2834 |
| Упомянутых инструментов | 89 |
| Уникальных тегов | 635 |
Мы рассмотрели более 3500 кандидатов в скиллы. Мы приняли 466. Это 13% принятия — и такая избирательность заложена намеренно.
Система уровней знаний
Не все скиллы созданы равными. Мы организуем их в пять слоёв знаний (K0–K4), каждый из которых представляет свою область применимости:
K0: основы (универсальные)
Скиллы, которые должны быть у каждого агента. Они представляют возможности «хорошего мыслителя», работающие где угодно.
foundations/
├── test-first-discipline # TDD: Red-Green-Refactor
├── evidence-based-completion # Verify before claiming done
├── systematic-debugging # Root cause methodology
├── structured-planning # Break work into tasks
└── context-budget-awareness # Manage token consumption
Скиллы K0 переносимы в любой проект, любой домен, любой стек. Они кодируют универсальные когнитивные паттерны.
K1: личности (дисциплина)
Скиллы «хорошего инженера» или «хорошего исследователя», применимые в разных проектах внутри дисциплины.
identities/
├── research-workflows # Multi-source research
├── web-extraction-playbook # Content extraction
├── code-review # PR review patterns
└── cli-interface-standards # CLI design patterns
K2: домены (предметная экспертиза)
Скиллы «хорошего эксперта по БД» или «хорошего инженера по безопасности», переносимые внутри области.
domains/
├── schema-migration-workflow # Safe migration patterns
├── rpc-validation-checklist # RPC health checks
├── auth-validation-checklist # JWT/OAuth patterns
└── secrets-audit-checklist # Credential scanning
K3: стеки (технологии)
Скиллы «хорошего пользователя Supabase» или «хорошего разработчика Cloudflare» для конкретных технологических стеков.
stacks/
├── maguyva-quickstart # Our semantic search patterns
├── cloudflare-deployment # Workers/Pages deployment
└── mcp-tool-best-practices # MCP tool selection
K4: проект (организация)
Скиллы, специфичные для нашей организации и рабочих процессов.
project/
├── agent-creation-workflow # How we build agents
├── skill-authoring-workflow # How we write skills
├── mining-session-workflow # This very process
└── vendor-skill-evaluation # Evaluation rubrics
Цикл майнинга
Фаза 1: обнаружение
Скиллы приходят отовсюду:
Репозитории вендоров: AWS, Anthropic, Cloudflare, Supabase и участники сообщества публикуют коллекции скиллов. Мы отслеживаем 25+ вендорских корней.
Проекты сообщества: GitHub полон шаблонов Claude Code, паттернов агентов и определений рабочих процессов.
Внутренние паттерны: пока наша команда решает проблемы, возникают паттерны. Они формализуются в скиллы.
Майнинг документации: техническая документация часто содержит неявные скиллы — процедуры, чек-листы, деревья решений.
Обнаружение непрерывно. Мы используем бэклог скиллов для отслеживания кандидатов до формальной оценки.
Фаза 2: оценка
Каждый кандидат проходит один и тот же рубрикатор:
adoption_criteria:
- fills_real_gap: true # We lack this capability
- well_structured: true # Progressive disclosure
- actively_maintained: true # Commits in last 6 months
- portable: true # Not hyper-specific
- tested: true # Evidence of usage
Все пять продуктовых критериев должны быть пройдены. Именно поэтому 87% кандидатов отклоняются.
Затем каждый кандидат проходит отдельную проверку доверия. Мы не относимся к официальному репозиторию вендора, известному мейнтейнеру сообщества и случайному репозиторию на GitHub как к равноценным источникам истины.
trust_review:
vendor_credibility:
- ownership_verified # Official vendor, known maintainer, or internal source
- maintenance_signal # Recent commits, issue response, release history
- adoption_signal # Evidence of real use, stars alone are not enough
- provenance_clear # We can trace where the skill came from
prompt_injection_scan:
- hidden_instruction_check # Buried "ignore previous instructions" patterns
- exfiltration_check # Prompts that try to leak files, secrets, or context
- authority_check # Claims of priority over system or developer rules
script_audit:
- inspect_scripts # Read shell/python/js helpers before adoption
- network_and_exec_review # curl|bash, remote downloads, subprocess execution
- file_and_secret_review # Env vars, credential access, broad file writes
- destructive_action_check # rm, reset, overwrite, or unsafe automation
Доверенные вендоры получают более лёгкую проверку происхождения, но не карт-бланш. Недоверенные или неизвестные источники получают более глубокий ручной аудит, и мы не выполняем прилагаемые скрипты, пока они не прочитаны, не ограничены по области действия и не классифицированы как безопасные.
Анализ пробелов: перед принятием мы ищем в нашем реестре:
uv run orkestra skills search "<capability>"
Если у нас это уже есть, оно нам не нужно. Если у нас есть что-то похожее, мы можем слить, а не принимать заново.
Оценка глубины и соответствия стандартам: мы также оцениваем, насколько полно кандидат использует модель agent-skill. Одинокий SKILL.md всё ещё может быть полезен, но более глубокие скиллы ценнее, когда они отделяют инструкции от справочных материалов, скриптов и ресурсов так, как это поощряет agentskills.io.
skill_depth:
- level_1: SKILL.md only # Single instruction file
- level_2: SKILL.md + strong description # Clear triggers and scope
- level_3: adds references/ # Load docs only when needed
- level_4: adds atomic scripts/ # Small, reviewable helpers
- level_5: adds assets/examples/templates # Full progressive disclosure
depth_signals:
- standards_adherence # Structure aligns with agentskills.io conventions
- reference_quality # Curated references, not giant context dumps
- script_atomicity # Focused helpers, not opaque monoliths
- tool_boundary_clarity # Clear limits on what the skill can execute
- community_signal # Stars/forks/users help, but only as a weak boost
Звёзды на GitHub могут немного поднять оценку доверия, но никогда не спасают поверхностный или небезопасный скилл. Репозиторий с большим числом звёзд, но с одним расплывчатым SKILL.md и непрозрачными скриптами, оценивается ниже, чем меньший репозиторий с точным описанием, курируемым references/ и атомарными хелперами, которые реально используют весь потенциал модели скиллов.
Структурный анализ: мы проверяем качество скилла:
wc -l vendor/<repo>/<skill>/SKILL.md # Size check
ls vendor/<repo>/<skill>/scripts/ # Supporting files
ls vendor/<repo>/<skill>/references/ # Bundled docs
Если кандидат включает скрипты, эта проверка становится строже. Хороший скилл — это не просто полезный скилл; он должен быть понятным, ограниченным по области действия и безопасным для передачи агенту. Один только этот фильтр безопасности отсеивает значительную долю иначе интересных кандидатов.
Фаза 3: приём
Когда скилл проходит оценку, он попадает в реестр. Но скиллы никогда не принимаются в неизменном виде. Они модифицируются под нашу систему.
Модификации при принятии:
- Нормализация метаданных: каждый скилл получает нашу схему frontmatter
- Присвоение K-уровня: скиллы размещаются в подходящем слое знаний
- Обогащение тегами: добавляются теги для обнаружения
- Декларация инструментов: явно объявляются разрешённые инструменты
- Выравнивание разделов: содержимое перестраивается под наш шаблон
Типичный YAML скилла после приёма:
metadata:
identifier: vendor-skill-evaluation
name: vendor-skill-evaluation
description: Systematic evaluation of vendor skills for adoption.
type: workflow
layer: K4
semantic_folder: project
source: core
last_updated: '2026-01-17'
frontmatter:
tags:
- agents
- meta
- skill-adoption
- vendor
allowed_tools:
- Bash
- Read
- Write
- Edit
- Grep
- Glob
- Task
Фаза 4: присвоение области применения
Скиллы присваиваются областям применения (scopes) — категориям, определяющим, какие агенты загружают какие скиллы:
scopes:
database:
primary_skills:
- domains/schema-migration-workflow
- domains/rpc-validation-checklist
- vendor/supabase/supabase-database
- vendor/supabase/supabase-auth
research:
primary_skills:
- identities/research-workflows
- identities/web-extraction-playbook
- identities/dataset-discovery-quickstart
Агенты объявляют свои области применения, и скиллы присваиваются автоматически:
# Agent definition
scopes: [database, research]
# Gets: all database skills + all research skills + universal skills
Фаза 5: материализация
В продакшне скиллы не живут как YAML. Они рендерятся в файлы SKILL.md, которые может загрузить Claude Code:
uv run orkestra sync
Эта команда:
- Читает все YAML-определения скиллов
- Рендерит их через шаблоны Jinja
- Записывает файлы SKILL.md в
.claude/skills/ - Организует по K-уровням (foundations/, identities/, domains/, stacks/, project/)
Итоговая структура вывода:
.claude/skills/
├── foundations/ # K0: Universal
├── identities/ # K1: Discipline
├── domains/ # K2: Subject
├── stacks/ # K3: Technology
├── project/ # K4: Organization
└── vendor/ # External skills
Паттерн спящей области применения
Один из наших самых мощных паттернов — скиллы «принято, но не загружено». Мы называем их спящими областями применения (dormant scopes).
Рассмотрим скиллы научных вычислений из репозитория k-dense-scientific. Мы приняли 120+ скиллов, охватывающих биоинформатику, химию, квантовые вычисления и клиническую информатику. Но большинству наших агентов не нужен молекулярный докинг или анализ экспрессии генов.
Вместо того чтобы загружать все 120 скиллов в каждого агента (раздувая окна контекста), мы:
- Принимаем скиллы с конкретной областью применения (например,
bioinformatics) - Держим их спящими — зарегистрированными, но не загруженными
- Включаем их только тогда, когда агент объявляет эту область применения
# In scopes.yaml - dormant scope
bioinformatics:
description: "Bioinformatics and genomics"
primary_skills: [] # Empty - skills exist but aren't loaded
# When an agent needs bioinformatics:
# Agent YAML
scopes: [research, bioinformatics] # Now loads bioinformatics skills
Этот паттерн позволяет нам иметь 466 скиллов в реестре, при этом типичные агенты загружают только 40–60 релевантных.
Типы скиллов
Скиллы бывают трёх когнитивных паттернов:
Workflow (рабочий процесс)
Упорядоченные процедурные шаги: «1. Сделай X, 2. Затем Y, 3. Наконец Z»
type: workflow
# Examples: schema-migration-workflow, mining-session-workflow
Discipline (дисциплина)
Поведенческие ограждения: «Всегда X», «Никогда Y», «Предпочитай Z»
type: discipline
# Examples: test-first-discipline, evidence-based-completion
Checklist (чек-лист)
Критерии верификации: «Подтверди X», «Проверь Y», «Убедись в Z»
type: checklist
# Examples: auth-validation-checklist, secrets-audit-checklist
Гейты качества
Каждый скилл должен пройти валидацию перед отгрузкой:
validation:
file_exists: true # Skill file at declared path
frontmatter_valid: true # Frontmatter parses correctly
sections_complete: true # Expected sections present
tools_registered: true # Declared tools exist in registry
Описания должны быть длиной 50–400 символов с триггерными фразами («Используйте, когда…», «Когда вам нужно…»), чтобы Claude Code знал, когда их предлагать.
Мы валидируем непрерывно:
uv run orkestra validate --show-warnings
Экосистема вендоров
Наши 373 вендорских скилла происходят из:
| Провайдер | Скиллов | Домен |
|---|---|---|
| AWS Agent | 19 | Облачные сервисы |
| Anthropic | 12 | Генерация документов |
| Cloudflare | 8 | Edge-вычисления |
| Supabase | 5 | База данных |
| k-dense | 100+ | Научные вычисления |
| silvainfm | 4 | Data science |
| Java Developer Kit | 45+ | Spring/Java |
| Vercel | 1 | Автоматизация браузера |
Каждый вендорский корень объявлен в metadata.yaml:
vendor_roots:
- path: vendor/aws-agent-skills
provider: aws
- path: vendor/k-dense-scientific/scientific-skills
provider: k-dense
- path: vendor/supabase-skills
provider: supabase
Когда запускается orkestra sync, вендорские скиллы симлинкуются в .claude/skills/vendor/ с пространством имён своего провайдера.
Чему мы научились
Избирательность окупается. Соблазнительно принять всё, что выглядит полезным. Но каждый скилл стоит токенов. При среднем значении 2834 токена на скилл раздувание быстро бьёт по производительности. Наш показатель принятия в 13% удерживает агентов компактными.
Структура делает возможным обнаружение. Система K-уровней — не просто организация, это про переносимость. Скиллы K0 можно переиспользовать где угодно. Скиллы K4 намеренно специфичны для проекта. Эта ясность помогает и людям, и агентам находить то, что им нужно.
Спящие области применения масштабируются. Вы можете принять сотни скиллов, не загружая их все. Области применения позволяют строить исчерпывающий реестр, сохраняя окна контекста отдельных агентов управляемыми.
Модификация при принятии обязательна. Сырые вендорские скиллы редко подходят вашей системе как есть. Процесс приёма — добавление метаданных, присвоение уровней, обогащение тегами — заставляет внешние скиллы работать внутри системы.
Майнинг непрерывен. Число 3500 продолжает расти. Появляются новые вендорские репозитории. Возникают паттерны сообщества. Укрепляются внутренние рабочие процессы. Цикл никогда не останавливается.
Что дальше
Мы работаем над несколькими улучшениями:
- Автоматическое обнаружение пробелов: оповещение, когда распространённые сбои агентов могли бы быть устранены непринятым скиллом
- Рабочие процессы устаревания скиллов: формальный процесс вывода из эксплуатации скиллов, которые заменены или не используются
- Межскилловые зависимости: явная декларация предпосылок скилла
- Аналитика использования: отслеживание того, какие скиллы агенты реально вызывают, а не просто загружают
Цикл майнинга скиллов — это инфраструктура. Не эффектная. Но именно она делает возможной слаженную работу 41 агента с 466 возможностями в рамках ограничений контекста.
Вот история того, как 3500 становится 466. Не игнорированием 3000 — систематической оценкой всех и принятием только того, что работает.
Хотите увидеть систему скиллов в действии? Загляните в uv run orkestra skills list, чтобы изучить наш текущий реестр.
Похожие материалы
Ещё из журнала разработки Maguyva
Почему мы обновили поиск по коду до voyage-4-large_
Мы перевели эмбеддинги кода на voyage-4-large — модель, которая сейчас возглавляет публичный рейтинг RTEB по поиску кода. Честная версия: какой компромисс мы принимаем, что мы на самом деле индексируем и почему платим за премиальные эмбеддинги.
Рекурсивное самосовершенствование языков: шлифуем интеллектуальный анализ кода на ~280 языках_
Мы поддерживаем интеллектуальный анализ кода для ~280 языков. Ни один человек не может вручную проверить это. Поэтому мы построили цикл рекурсивного самосовершенствования языков — выборочная проверка, LLM в роли судьи, исправление одной вещи, повторная валидация — и прогоняем его флотом изолированных агентов, пока извлечение не станет по-настоящему верным, а не просто «зелёным».
Мультимодальный фьюжн-поиск: выбор правильного ретривера для каждого запроса_
Запрос вроде «где определён parseConfig» требует другого поиска, чем «как работает аутентификация». Maguyva классифицирует намерение, соответствующим образом взвешивает четыре модальности поиска и сливает результаты с помощью взвешенного Reciprocal Rank Fusion.