Files
claude-skills/resume-ru/SKILL.md
T

21 KiB
Raw Blame History

name, description, user-invocable
name description user-invocable
resume-ru Составление, рецензирование и адаптация резюме и сопроводительных писем под российский рынок труда (hh.ru, Habr Career) с учётом ATS-РФ и реалий 2026 года. Многостадийный процесс: разбор резюме и вакансии, gap-анализ, стратегические вопросы, оптимизация под ATS и поиск рекрутёра, скоринг, вывод в PDF/DOCX. Используй этот скилл ВСЕГДА, когда речь идёт о: создании или обновлении резюме/CV, рецензировании и улучшении резюме, адаптации резюме под конкретную вакансию, прохождении ATS- или hh-фильтров, подборе ключевых навыков под запрос рекрутёра, написании или правке сопроводительного письма, удалении из резюме «воды» и канцелярита, оценке резюме глазами рекрутёра, или когда пользователь упоминает «резюме», «резюме под вакансию», «CV», «hh.ru», «хедхантер», «хх», «Habr Career», «отклик на вакансию», «сопроводительное письмо», «ключевые навыки», «составь/проверь/адаптируй резюме», «пройти ATS», «карьерный консультант». Базовая локаль — Россия (структура hh-резюме, зарплатные ожидания, анти-канцелярит, ATS-системы РФ, защита от «нейросетевого» вида текста). Работает для любых специальностей (IT, инженерия, 1С, менеджмент, рабочие профессии). true

Резюме РФ

Многостадийный скилл: превращает резюме в адаптированный под конкретную вакансию документ, оптимизированный под ATS и поиск рекрутёра на hh.ru. Базовая и единственная локаль — Россия (2026). Для двуязычных/западных резюме существует исходный плагин — см. ATTRIBUTION.md.

Справочные файлы

Читать на соответствующих стадиях — в них правила, конвенции и шаблоны:

  • references/ats-rules-ru.md — ATS-РФ, правила формата, ключевые слова, формула скоринга, анти-паттерны.
  • references/locale-ru.md — конвенции резюме РФ (2026).
  • references/hh-ru.md — специфика hh.ru и Habr Career.
  • references/anti-cliche-ru.md — анти-канцелярит и сильные глаголы.
  • references/anti-ai-fingerprint.md — чтобы текст не выглядел «нейросетевым».
  • references/section-templates-ru.md — шаблоны разделов и сопроводительного.
  • references/html-template-ru.html — HTML-шаблон для PDF через weasyprint.

Мастер-профиль

Расположение: docs/resume/master-profile.md

Мастер-профиль — это полное хранилище карьерных данных (все роли, метрики, навыки, контекст переходов). Это НЕ готовое резюме. Скилл адаптирует резюме ИЗ мастер-профиля под каждую вакансию.

  • Если мастер-профиль есть — использовать как основной источник.
  • Если нет — построить его из присланного резюме при первом запуске.
  • После каждой сессии — предложить дополнить его новой информацией.

Структура мастер-профиля:

# Мастер-профиль
## Контакты (ФИО, email, телефон, Telegram, город)
## Карьерный нарратив (сырой, неформатированный — полная история)
## Схема видимости (определения enum и известные варианты)
## Роли (для каждой: Видимость, Варианты, контекст компании, должность,
        даты, размер/структура команды, обязанности, достижения с метриками,
        технологии)
## Образование (с Видимостью)
## Сертификаты
## Инвентарь навыков (полный, не отфильтрованный)
## Языки
## Заметки (пробелы, пет-проекты, консалтинг и т. п.)

Система видимости

У каждой роли/раздела может быть поле Видимость. Если полей нет — считать все роли always.

Значение Смысл Поведение
always Во всех вариантах резюме Всегда рассматривать к включению
variant-specific Только в вариантах из поля Варианты Включать, если целевой вариант совпал или пользователь явно попросил
on-request Никогда без явной просьбы По умолчанию пропускать
reference-only Псевдоним/метаданные Никогда не включать в вывод

Правила разрешения видимости

  1. Определить целевой вариант — из запроса, домена вакансии или спросить. Пользователь может задать исключение («без варианта X»).
  2. Отфильтровать роли: always → включить; variant-specific → только при совпадении варианта; on-request → пропустить, если не названа явно; reference-only → никогда.
  3. Образование, сертификаты, языки — уважать их Видимость так же.
  4. Решение пользователя приоритетно.

Рабочий процесс

СТАДИЯ 0: Сбор входных данных
    |
СТАДИЯ 1: Разбор и анализ (через subagent)
    |
СТАДИЯ 1.5: Фидбэк по резюме (пользователю)
    |
СТАДИЯ 2: Стратегические вопросы (AskUserQuestion)
    |
СТАДИЯ 3: Оптимизация под ATS и адаптация
    |
СТАДИЯ 4: Черновик (.md)
    |
СТАДИЯ 5: Ревью и итерации
    |
СТАДИЯ 6: Финальный вывод (PDF/DOCX + опц. сопроводительное)

СТАДИЯ 0: Сбор входных данных

Резюме

ЕСЛИ в аргументах путь к файлу (PDF/MD/TXT): прочитать файл
ИНАЧЕ ЕСЛИ есть docs/resume/master-profile.md: прочитать, подтвердить с
  пользователем «Использую ваш мастер-профиль как основу. Верно?»
ИНАЧЕ: попросить резюме (текст, путь к файлу или PDF).

Вакансия

ЕСЛИ в аргументах URL: WebFetch, извлечь название, компанию, требования,
  обязанности, квалификацию. Если контента мало — попросить вставить текст.
ИНАЧЕ ЕСЛИ вставлен текст: разобрать напрямую.
ИНАЧЕ: попросить описание вакансии (текст или URL).

Первый запуск: создание мастер-профиля

Если профиля нет, а резюме передано — построить мастер-профиль по структуре выше, сохранить в docs/resume/master-profile.md, сообщить пользователю.


СТАДИЯ 1: Разбор и анализ

Использовать subagent — чтобы защитить основной контекст от тяжёлого парсинга. Subagent получает сырой текст резюме/профиля и вакансии и возвращает:

Из резюме: роли (должность, компания, даты, достижения с метриками, технологии); инвентарь навыков; образование и сертификаты; карьерную линию.

Из вакансии: компанию и контекст; целевую должность и грейд; обязательные навыки (must-have); желательные (nice-to-have); ключевые обязанности; домен; неявные требования (между строк).

Gap-анализ: сильные совпадения; частичные (можно переформулировать); пробелы; отличительные преимущества; красные флаги (пересечения дат, необъяснённые перерывы, нестыковки должностей).


СТАДИЯ 1.5: Фидбэк по резюме

Показать анализ пользователю до стратегических вопросов. Формат:

## Анализ резюме под [роль] в [компания]

### Сильные стороны (что работает на эту роль)
- [конкретно, привязано к требованию вакансии]

### Что исправить
- [конкретная проблема + действие]

### Gap-анализ против вакансии
| Требование вакансии | Покрытие в резюме | Статус |
|---|---|---|
| [навык/опыт] | [где есть или «не найдено»] | Совпадение / Частично / Пробел |

### Красные флаги (если есть)
- [пересечения дат, перерывы, нестыковки — только если реально есть]

### Рекомендации
- [конкретное действие, привязанное к вакансии]

Правила: конкретика, а не общие советы; каждое наблюдение привязано к вакансии; флагать только реальные проблемы; отличать структурные проблемы (всегда чинить) от контентных (под эту вакансию). Если у профиля есть поля Видимости — отдельным блоком показать исключённые роли и причину.


СТАДИЯ 2: Стратегические вопросы

Задать 3–5 вопросов через AskUserQuestion, адаптируя под результаты анализа.

Q1: Позиционирование «Судя по вакансии — [краткое резюме]. Как вас позиционировать?» — Техническая глубина / Управленческая широта / Сбалансированно.

Q2: Акценты «Сильнейшие совпадения: [топ-3-4]. Пробелы: [топ-2-3]. Что выделить, что приглушить?» — Использовать мои рекомендации / [указания пользователя].

Q3: Зарплатные ожидания «Указать зарплатные ожидания? На hh это поднимает резюме в выдаче с фильтром „с зарплатой“.» — Указать вилку [сумма] / Не указывать / «по итогам собеседования».

Условные: пересечение дат (если есть); судьба нерелевантного домена; нужно ли сопроводительное письмо.

После вопросов — собрать внутреннюю стратегию адаптации (не сохранять).


СТАДИЯ 3: Оптимизация под ATS и адаптация

Прочитать: references/ats-rules-ru.md, references/locale-ru.md, references/hh-ru.md, references/section-templates-ru.md.

3.1 Краткое описание (summary)

Написать под ЭТУ роль по шаблону из section-templates-ru. Указать целевую должность + 1–2 метрики, бьющие в приоритеты вакансии. АНТИ-ПАТТЕРН: не начинать с «Опытный/Целеустремлённый/Ответственный…» — переписать. См. anti-cliche-ru.md.

3.2 Ключевые навыки

3–5 функциональных категорий, самая релевантная — первой. Каждый обязательный навык вакансии присутствует. Это поисковый индекс для рекрутёра hh — см. hh-ru.md. Нерелевантное убрать (оставить в профиле).

3.3 Опыт работы

Свежие 2–3 роли — полный формат (контекст компании, масштаб, 3–5 буллетов с метриками по формуле). Старые — сжато (1–2 релевантных достижения), но не удалять. Каждый буллет — с числом и бизнес-контекстом. Сильные глаголы из anti-cliche-ru.md.

3.4 Ключевые слова

Каждый обязательный навык — минимум в 2 местах (навыки + буллет опыта). Семантические варианты, рус + англ синонимы («1С»/«1C»). Не более 3 упоминаний (без «накрутки»).

3.5 Образование и сертификаты

Порядок по локали (см. locale-ru.md: для опытных — после опыта; для студентов/выпускников — перед). Релевантные сертификаты — на видном месте.

3.6 Правки под локаль РФ

По locale-ru.md: фото/ДР/семейное — опционально (по умолчанию без фото и ДР для ATS-версии); зарплата — по решению из Q3; объём 1–2 страницы.

3.7 Анти-канцелярит

Прогнать весь текст по anti-cliche-ru.md: убрать мусорные «качества» (стрессоустойчивость, коммуникабельность…) и канцелярит, заменить фактами.


СТАДИЯ 4: Черновик

Сохранить в docs/resume/draft-[компания-slug]-[ГГГГ-ММ-ДД].md. Файл содержит: (1) полное адаптированное резюме в markdown; (2) маркер <!-- ATS-ANALYSIS-START -->; (3) блок анализа (только для ревью, удаляется перед финалом):

<!-- ATS-ANALYSIS-START -->
## Анализ ATS (только для ревью — в финал не войдёт)
### Оценка ATS: [XX]%
### Покрытие ключевых слов
| Требование | Найдено | Раздел |
### Разбивка скоринга
- Покрытие обязательных навыков: X/Y
- Покрытие желательных: X/Y
- Доля буллетов с метриками: Z%
- Полнота разделов: Z%
- Распределение ключевых слов: Z%
### Оставшиеся пробелы / Принятые решения

Перед показом прогнать чек-лист анти-AI (anti-ai-fingerprint.md). Показать черновик пользователю.


СТАДИЯ 5: Ревью и итерации

ЦИКЛ:
  ждать обратную связь
  ЕСЛИ «ок»/«финал»/«готово»: → Стадия 6
  ИНАЧЕ: внести правки, пересчитать ATS-скоринг, обновить черновик,
         показать с подсветкой изменений

СТАДИЯ 6: Финальный вывод

6.1 Чистый markdown

Удалить блок анализа (всё после <!-- ATS-ANALYSIS-START -->).

6.2 Выбор формата вывода

Определить по запросу/контексту вакансии:

  • PDF (по умолчанию для прямого отклика) — через HTML + weasyprint, шаблон references/html-template-ru.html. Точный РФ-формат, фото опционально (по умолчанию выкл; включать только если пользователь просит и канал — hh/прямой отклик, не ATS).
  • DOCX — если портал/вакансия просит .docx или нет weasyprint. Через pandoc: pandoc resume.md -o resume.docx (опц. --reference-doc=reference.docx для стилей).
  • Текст на hh.ru — если цель: заполнить анкету hh. Выдать готовые блоки (должность, ключевые навыки, о себе, опыт) для копирования в поля hh; см. hh-ru.md.

6.3 PDF через weasyprint (если выбран)

Заполнить слоты [SLOT] в html-template-ru.html. Конвертация:

cd docs/resume && DYLD_LIBRARY_PATH="$(brew --prefix)/lib" \
  uv run weasyprint resume-[slug].html [Имя]-[Роль].pdf

Требует weasyprint (uv add weasyprint или pip install weasyprint) и system-deps glib/pango/cairo (через brew). На macOS нужен DYLD_LIBRARY_PATH. Если weasyprint недоступен — fallback на DOCX (pandoc).

6.4 Сопроводительное письмо (если просили)

По references/section-templates-ru.md — короткое (3–6 предложений), под вакансию, без штампов. Тон по anti-cliche-ru.md и anti-ai-fingerprint.md.

6.5 Отчёт и обновление профиля

Перечислить созданные файлы. Предложить дополнить мастер-профиль новой информацией из сессии.


Чек-лист перед выводом (Стадия 4)

Соответствие ATS / hh

  • Один столбец (без таблиц для вёрстки)
  • Контакты в теле документа (не только в шапке)
  • Стандартные заголовки разделов (по ats-rules-ru.md)
  • Единый формат дат
  • Без шкал навыков, иконок, графики
  • Аббревиатуры расшифрованы при первом употреблении
  • Ключевые навыки покрывают теги поиска рекрутёра (hh)

Покрытие ключевых слов

  • Каждый обязательный навык — в 2+ местах
  • Ни одно слово не повторяется более 3 раз
  • Должность из вакансии отражена в summary

Качество контента

  • Summary конкретно под ЭТУ роль (не шаблон)
  • В каждом буллете опыта — метрика с бизнес-контекстом
  • Свежие 2–3 роли подробно, старые сжато (не удалены)
  • Перерывы > 6 мес. отмечены пользователю
  • Нет мусорных «качеств» и канцелярита (anti-cliche-ru.md)
  • Пройден скан анти-AI (anti-ai-fingerprint.md)

Локаль РФ

  • Фото/ДР/семейное — по решению (по умолчанию ATS-версия без них)
  • Зарплата — по решению Q3
  • Объём 12 страницы

Анти-паттерны

  • Summary НЕ начинается с «Опытный/Целеустремлённый/Ответственный»
  • Нет «рекомендации предоставлю по запросу»
  • Нет процентных шкал владения навыком
  • Ранний опыт не вырезан в ноль
  • Смежный домен переформулирован, а не выброшен