Руководство по написанию скрипта БьютиХак
Скрипты хранятся в двух файлах:
content/bh-script.md— для ветки Мастерcontent/bh-script-owner.md— для ветки Владелец
После редактирования запустить: npm run build:script
Структура файла
Каждый блок начинается с заголовка второго уровня:
## ключ | Название блока
Ключ — это путь страницы или специальный идентификатор:
/diagnostic/bh/2— конкретная страница диагностики/diagnostic/bh/presentation/25— слайд презентацииstep:packaging— общий заголовок блока (показывается на всех шагах блока)step:packaging:0— конкретный шаг внутри блокаstep— фолбэк для всех страниц диагностики без своего ключаpresentation— фолбэк для всех слайдов презентации без своего ключа
Условные обозначения строк
Каждая строка скрипта начинается с - и маркера типа.
🎯 Цель блока
- 🎯 Текст цели
Отображается синей плашкой в шапке скрипта. Один на блок. Диагност видит до начала работы.
Пишется в формате: что должен сделать/почувствовать клиент по итогу этого шага.
Реплика (произносится вслух)
- «Текст реплики»
Обычная строка без префикса или с 💬. Отображается пронумерованным пунктом с розовой полосой.
Всё что говорится клиенту — сюда. Если есть сомнения, говорить вслух или нет — это сюда.
↳ Подсказка диагносту
- ↳ Текст подсказки
Отображается курсивом серым. Не произносится вслух — только для диагноста.
Что сделать, как интерпретировать ответ, как вести себя в ситуации.
⚠️ Важное предупреждение
- ⚠️ Текст предупреждения
Отображается янтарной плашкой. Привлекает внимание к критическому моменту.
Типичная ошибка, которую нельзя совершать, или ситуация требующая особого внимания.
📝 Поле для записи
- 📝 Метка поля
Отображается как textarea для ввода. Значение сохраняется в сессии и доступно на других слайдах.
Используй для фиксации слов клиента — мотивации, срочности, возражений.
☑ Чекбокс (выполнено/не выполнено)
- ☑ Текст действия
Отображается как интерактивный чекбокс. При отметке — зачёркивается и зеленеет. Сохраняется в сессии.
Используй для критических шагов, которые нужно отметить как выполненные. Также помогает LLM при анализе — сравнивает с транскриптом.
🎭 Смена роли (внимание диагносту)
- 🎭 Текст фразы-перехода
Отображается на всю ширину панели: капс, яркий контрастный фон — не спутать с обычным ⚠️. Означает, что диагност должен явно, вслух обозначить клиенту смену роли (коуч → эксперт/врач или обратно), а не просто сменить тон.
Используй только в двух точках методологии: переход к экспертному заключению после квиза (
/diagnostic/bh/results) и возврат в роль коуча перед финальной отработкой возражений (presentation/28). См.wiki/sales_meeting_transcripts/Методология диагностики.md.
🔍 Маячок для LLM-анализа
- 🔍 Текст маячка
Отображается мелким серым курсивом — почти незаметен диагносту во время встречи.
Описывает что именно нужно найти в транскрипте при пост-анализе: эмоциональную реакцию, конкретную фразу клиента, поведение диагноста.
Теги Формулы Продаж
Добавляются к любой строке через [TAG] в конце. Один или несколько.
- «Муж знает, что ты рассматриваешь обучение?» [ЛПР]
- ☑ Загрузка и чек записаны [ФВ] [ОП]
- 🎯 Оцифровать разрыв — клиент сам называет потери. [ОП]
Отображаются как цветные бейджи рядом с текстом:
| Тег | Цвет | Компонент Формулы Продаж |
|---|---|---|
[ЛПР] | фиолетовый | Лицо, Принимающее Решение |
[ФВ] | зелёный | Финансовая Возможность |
[ОП] | голубой | Осознание Потребности |
[Д] | янтарный | Доверие |
[ЗиС] | красный | Здесь и Сейчас (Срочность) |
Теги видны диагносту как напоминание что именно формируется на этом шаге. При LLM-анализе помогают сопоставить шаги скрипта с компонентами формулы продаж.
Токены подстановки
Используются внутри текста реплик — заменяются реальными данными сессии.
| Токен | Что подставляется |
|---|---|
{lead.name} | Имя лида (из поля на слайде /1) |
{gap.lostClients} | Кол-во потерянных клиентов в месяц |
{gap.lostIncome} | Сумма потерь в месяц (форматирована) |
{goals.checkNow} | Текущий средний чек |
{goals.checkTarget} | Целевой средний чек |
{goals.clientsNow} | Текущее кол-во клиентов |
{goals.loadPctNow} | Текущая загрузка % |
{goals.loadPctTarget} | Целевая загрузка % |
{tariff.label} | Название выбранного тарифа |
{tariff.special} | Спец-цена выбранного тарифа |
{tariff.installment12} | Рассрочка 12 мес выбранного тарифа |
{tariff.payoffClients} | Сколько клиентов нужно для покрытия рассрочки |
Пример:
- «Смотри — ты теряешь {gap.lostIncome} в месяц, это {gap.lostClients} клиентов»
- «{lead.name}, давай посмотрим на твои цифры»
Полный пример блока
## /diagnostic/bh/4 | Разрыв — ах-момент
- 🎯 Клиент должен почувствовать разрыв как реальную потерю, не абстрактную цифру. [ОП]
- «Смотри — вот сколько ты теряешь каждый месяц» [ОП]
- «Твой потенциал: {gap.lostIncome} и {gap.lostClients} новых клиентов — вот что проходит мимо» [ОП]
- ↳ Пауза. Молчи — дай осознать. Тишина здесь работает.
- 🔍 Была ли эмоциональная реакция — вздох, «ого», пауза, «да, блин»
- «Как тебе эта цифра? Что думаешь?»
- «На что потратишь {gap.lostIncome}? Что для тебя значит эта сумма?» [ОП] [ЗиС]
- ⚠️ Записать точную фразу — вернёшь при отработке «дорого»
- 📝 Фраза клиента о мотивации
- «За сколько хочешь выйти на эти деньги?» [ЗиС]
- ⚠️ «Есть дата» / «вчера» → горячий лид. «Не к спеху» → давить на цену бездействия
- 📝 Срочность и дедлайн
- ☑ Клиент назвал мотивацию словами [ОП]
- ☑ Срочность прояснена [ЗиС]
Компоненты Формулы Продаж — краткая шпаргалка
Для понимания куда вешать теги:
- [ЛПР] — кто принимает финансовое решение? Муж/партнёр/инвестор в курсе?
- [ФВ] — есть ли деньги/карта/одобренная рассрочка? Чек переведён в "кол-во клиентов"?
- [ОП] — клиент сам видит и чувствует проблему? Назвал разрыв своими словами?
- [Д] — доверие к авторам, к диагносту, к продукту, к себе ("у меня получится")
- [ЗиС] — есть дедлайн? Озвучена цена бездействия? Спецпредложение 24ч?