95 lines
5.1 KiB
Markdown
95 lines
5.1 KiB
Markdown
# Режим: apply — Ассистент отклика в реальном времени
|
||
|
||
Интерактивный режим для заполнения формы отклика в Chrome. Читает экран, загружает контекст вакансии, генерирует персонализированные ответы.
|
||
|
||
## Требования
|
||
|
||
- **Лучше с Playwright**: Кандидат видит браузер, Claude взаимодействует со страницей.
|
||
- **Без Playwright**: Кандидат делится скриншотом или вставляет вопросы вручную.
|
||
|
||
## Workflow
|
||
|
||
```
|
||
1. ОПРЕДЕЛИТЬ → Прочитать активную вкладку Chrome (скриншот/URL/заголовок)
|
||
2. РАСПОЗНАТЬ → Извлечь компанию + роль со страницы
|
||
3. НАЙТИ → Совпадение с существующими отчётами в reports/
|
||
4. ЗАГРУЗИТЬ → Прочитать полный отчёт + секцию G (если есть)
|
||
5. СРАВНИТЬ → Роль на экране совпадает с оценённой? Если изменилась → предупредить
|
||
6. АНАЛИЗ → Определить ВСЕ видимые вопросы формы
|
||
7. ГЕНЕРАЦИЯ → Для каждого вопроса — персонализированный ответ
|
||
8. ПОКАЗАТЬ → Отформатированные ответы для copy-paste
|
||
```
|
||
|
||
## Шаг 1 — Определить вакансию
|
||
|
||
**С Playwright:** Snapshot активной страницы. Прочитать заголовок, URL, видимое содержимое.
|
||
|
||
**Без Playwright:** Попросить кандидата:
|
||
- Поделиться скриншотом формы
|
||
- Или вставить вопросы как текст
|
||
- Или назвать компанию + роль
|
||
|
||
## Шаг 2 — Найти контекст
|
||
|
||
1. Извлечь название компании и должность
|
||
2. Искать в `reports/` по названию компании (Grep, case-insensitive)
|
||
3. Если есть совпадение → загрузить полный отчёт
|
||
4. Если есть секция G → загрузить черновики как базу
|
||
5. Если НЕТ совпадения → предупредить и предложить запустить auto-pipeline
|
||
|
||
## Шаг 3 — Обнаружить изменения
|
||
|
||
Если роль на экране отличается от оценённой:
|
||
- **Предупредить кандидата**: "Роль изменилась с [X] на [Y]. Переоценить или адаптировать ответы?"
|
||
- Обновить трекер при необходимости
|
||
|
||
## Шаг 4 — Анализировать вопросы формы
|
||
|
||
Определить ВСЕ видимые вопросы:
|
||
- Поля свободного текста (сопроводительное, "почему эта роль" и т.д.)
|
||
- Выпадающие списки (откуда узнали, разрешение на работу и т.д.)
|
||
- Да/Нет (переезд, виза и т.д.)
|
||
- Поля зарплаты (диапазон, ожидания)
|
||
- Поля загрузки (резюме, сопроводительное PDF)
|
||
|
||
## Шаг 5 — Генерировать ответы
|
||
|
||
Для каждого вопроса:
|
||
|
||
1. **Контекст отчёта**: Proof points из блока B, истории STAR из блока F
|
||
2. **Секция G**: Если есть черновик — использовать как базу и улучшить
|
||
3. **Тон "Я выбираю вас"**: Кандидат имеет варианты и выбирает эту компанию по конкретным причинам
|
||
4. **Конкретика**: Ссылка на что-то конкретное из видимого JD
|
||
5. **Язык ответов**: На языке JD. Для русскоязычных вакансий — на русском.
|
||
|
||
**Формат вывода:**
|
||
|
||
```
|
||
## Ответы для [Компания] — [Роль]
|
||
|
||
На основе: Отчёт #NNN | Балл: X.X/5 | Архетип: [тип]
|
||
|
||
---
|
||
|
||
### 1. [Точный вопрос из формы]
|
||
> [Ответ, готовый для copy-paste]
|
||
|
||
### 2. [Следующий вопрос]
|
||
> [Ответ]
|
||
|
||
...
|
||
|
||
---
|
||
|
||
Заметки:
|
||
- [Наблюдения о роли, изменениях и т.д.]
|
||
- [Предложения по персонализации для проверки кандидатом]
|
||
```
|
||
|
||
## Шаг 6 — После отклика (опционально)
|
||
|
||
Если кандидат подтвердил отправку:
|
||
1. Обновить статус на "Applied" через канонический CLI: `node set-status.mjs <report#> Applied` (не редактировать таблицу `data/applications.md` вручную)
|
||
2. Обновить секцию G отчёта финальными ответами
|
||
3. Предложить: `/career-ops contacto` для LinkedIn outreach
|