local-to-call · git:20260930.ef0049f · 2026-09-30 · sha256 c3d855c21e63e2a1

local-to-call git:20260930.ef0049fA

Immutable. This exact content never changes and is served at /api/v1/blob/c3d855c21e63e2a1.

---
name: local-to-call
description: Довести тёплого лида ДО ЗВОНКА — недостающее звено воронки между «ответил да» и «созвонились». Берёт лида (или сам сканит warm-заглохших: сказал «да»/«давай» → тишина N дней, или Calendly без брони), поднимает контекст, ВЫБИРАЕТ КАНАЛ (текст ещё работает → предложить конкретный слот; замолчал → развернуть на живой звонок Антона, «звонок, а не текст»), собирает бриф под звонок (срез/повод/3 вопроса/как закрыть) и лёгкий заход-сообщение (draft-first), на брони → бронь + пре-колл-бриф. Триггеры: "/to-call", "/na-[человек]", "довести до звонка", "выведи на звонок", "на звонок", "дожать до созвона", "close to a call", "lead to call", "кто завис перед звонком". Закрывает разрыв, который /leads оставляет (/leads = радар+черновики ответов; ЭТОТ = именно бронь звонка). НЕ путать с /telegram-lead-outreach (первое касание) и /pipeline (хабовый tg_followups). Отправка/бронь = по «+» Антона; звонок делает Антон (я не звоню). Канон: корпоративная Библия звонков (insight-sell-next-call 48ч-окно, protocol-cold-pitching лестница касаний, чек-лист CTA tg-2024-02-19, reglament-buking-zvonkov-bb-platinum, warm-window-08-23, protocol-followup-structure Promised) + память proactive-lead-copilot, anton-sales-avoidance-root, outreach-journal-and-daily-mandate, short-text-when-unreviewed.
---

# /to-call — довести тёплого лида до звонка

> Боль (26.07): 5 человек сказали «давай», но 1 внутри и 0 звонков. Разрыв воронки = между
> «да» и «созвонились». /leads показывает и пишет ответ; ЭТОТ скилл именно ЗАКРЫВАЕТ на звонок.
> Правило: Антон продаёт отлично голосом, но избегает касания ([[anton-sales-avoidance-root]]) —
> моя работа снять всё трение, ему оставить только «взять трубку».

## ⚖️ Канон корпоративной Библии (звонки) — выстраданные правила Platinum

Источник истины = волт (читать при исполнении, здесь только суть + указатель):

1. **Окно 48 часов** — после «да» или звонка интерес лида живёт ~48ч, дальше коммиты
   отзываются. Следующий шаг (слот/звонок) букается ДО закрытия окна. Каждый звонок
   продаёт СЛЕДУЮЩИЙ звонок: недосказанность · анонс Антона («на следующем будет Антон») ·
   конкретная польза («принесу анализ X / интро к Y»). Завершить касание без конкретного
   следующего шага = потеря лида. → `insight-sell-next-call`
2. **CTA железно** — КАЖДОЕ сообщение лиду содержит call-to-action; без CTA шлём только
   когда CTA-чек-лист исчерпан (и помечаем — больше не допинговать). Чек-лист «что нам
   надо от лида» по типу (инвестор/фаундер: созвон touch base · интро к его инвесторам ·
   позвать на Collective Calls · «на какие топики можешь говорить вечно?») →
   `tg-2024-02-19-1222` (чек-лист call-to-action) + `2024-02-19--когда-мы-пишем-лиду…`
   ⛔ **ГРАНИЦА (DR26-07-26, 2 движка):** правило живёт в АКТИВНОМ треде. В **реанимации**
   первое касание идёт БЕЗ ask'а — сообщение с CTA и без новой ценности неотличимо от
   «just checking in», который оба движка называют худшим классом (жжёт контакт).
3. **Лестница касаний** (протокол холодного питчинга): касание 1 = ценность/повод →
   касание 2 = продолжение → интервал 1–2 дня. **Молчащему холодному Calendly-ask не раньше
   4–5-го сообщения** (ранний meeting-ask на холодных снижает конверсию — DR26-07-26+Gong);
   **ответил содержательно → счёт обнуляется**, сказал «да» → слот сразу (окно 48ч, п.1).
   Перед новым касанием — ЧИСТКА треда: наши неотвеченные/непрочитанные старые сообщения
   удалить, тред заканчивается двусторонним диалогом или пуст. Запрещено: «how are you?»,
   3+ сообщения подряд, сообщение без связи с историей чата. → `protocol-cold-pitching`
   ⚠️ **Уточнение (DR26-07-26):** лестница — про ХОЛОДНОЕ. После явного «да» слот идёт
   **в том же треде сразу**, не «через 1–2 дня» (Gong 304k: внутри активной сделки
   конкретный CTA с датой/временем 37% success vs 28% у размытых).
4. **Допинг неотвеченных** — сообщение с CTA без ответа не бросаем: пингуем/переотправляем
   (по лестнице п.3, не спамом), пока чек-лист CTA не исчерпан. → `2024-02-19--когда-мы-пишем-лиду…`
   ⚠️ **Доза (DR26-07-26):** в реанимации ≤3 СОДЕРЖАТЕЛЬНЫХ касания за 2–3 недели, дальше
   снять с активной погони до реального триггер-события. «Пока чек-лист не исчерпан» без
   потолка = убывающая отдача и выжигание контакта.
5. **Букинг-механика** — Calendly лида читаю САМ (публичный API, 0 токенов): его таймзона +
   открытые слоты; слот свободен ОБОИМ, ±30 мин до/после любого события по ОБОИМ календарям
   (bb + a2); окно матчинга 06:00–24:00 Лиссабон; время показываю в поясе Антона И в поясе
   лида; букаю только после «+», НИКОГДА молча. → `reglament-buking-zvonkov-bb-platinum`
6. **Окно отправки** — лиду пишем только 08:00–23:00 по локальному времени Антона; табу
   02:00–06:00 даже если лид написал ночью (палит автоматизацию). Ночной черновик → очередь
   на утро. → `reglament-warm-window-08-23-chasy-antona`
7. **Частота и переносы** — звонки с проектами ≤1/6мес, с VC/инвесторами ≤1/мес; перенос
   день-в-день запрещён, уведомление ≥24ч, перенос только через Антона. → `protocol-call-planning-scheduling`
8. **После звонка = в тот же день** — письменный follow-up с блоком **Promised** (Agreed →
   Promised, обе стороны, с деталями; устное без записи = время впустую) и крючком на
   следующий звонок прямо в ФА («agreed to discuss X on the next call — pls give calendly»);
   выполнить обещанное сразу; решение/ask запрашивать СРАЗУ, пока лид тёплый — промедление
   убивает коммит. → `protocol-followup-structure` + `protocol-post-call-actions` + `protocol-second-third-call`
9. **Touch-base ритм** (принято anton 27.07): verified-лид без звонка >3–6 мес → назначаем
   touch base БЕЗ повода-питча — повод = сам ритм («давно не общались, освежим кто что
   делает»). Ключ к реанимации gold-зависших. При активном фандрейзе инвесторы «не
   выгорают» — писать до ответа. → `protocol-investor-lead-pipeline`
   ✅ **СШИВКА ПРИНЯТА АНТОНОМ 19.08.2026** (`origin: anton`, supersedes формулировку
   «повод = сам ритм» от 27.07). Основание: DR26-07-26, оба движка независимо — для
   получателя «повод = сам ритм» неотличим от «just checking in», худшего измеренного
   класса касаний. **Действующее правило:** ритм решает **КОГДА** писать, конкретная
   дельта/артефакт решает **ЧТО** написать. Пустое «давно не общались» **не отправляем
   никогда** — нет дельты, значит ход не наступил, ищем дельту или ждём.
   При активном фандрейзе частота инвесторам сохраняется (пишем до ответа), но каждое
   касание всё равно несёт свою дельту.
10. **No-show-протекция**: звонок забукан → напомнить лиду за 24ч И за 1ч; не пришёл →
    вызванивать, ждать 10 мин, скрин подтверждения присутствия. → `protocol-lead-qualification-call`
11. **DoD звонка**: без полученного Telegram/WhatsApp лида звонок НЕ ЗАСЧИТАН; следующий
    звонок букается в конце текущего + недосказанность («посмотрим X — давайте забукаем
    следующий»). → `protocol-lead-qualification-call`

## 📊 Что добавили данные 2023–2026 (DR26-07-26-MACANTON-01-2334)

> Наш канон выше рождён в крипто-VC-контексте (ask = деньги/аллокация). Сейчас ask другой —
> «дай 30 минут бесплатно, стань advisor'ом». Ниже: что подтвердилось, что столкнулось.
> Мемо: [[decision-2026-07-26-lead-to-call-conversion-DR26-07-26-MACANTON-01]].
> ⚠️ Собрано **2 движками** (Grok + ChatGPT), Gemini заблокирован квотой → это согласие
> двоих, не троих. Прямых бенчмарков «Telegram DM → booking» в мире НЕТ ни у кого.

**A. Подтвердилось (действуем):**
- **12.** После «да» — **2 конкретных слота в ЕГО таймзоне**, календарная ссылка только
  запасным выходом («если оба мимо — вот календарь»). Не ссылка ВМЕСТО предложения.
  Назвал время сам → сразу инвайт, не гонять его ещё и через Calendly.
- **13.** «Когда тебе удобно?» после «да» — **антипаттерн** (перекладывает планирование).
- **14.** Реанимация начинается с **новой причины**, не с касания: конкретная дельта,
  привязанная к ЕГО прежнему вопросу. Gong 2023: company-specific персонализация утраивает
  reply у director+, «личная» даёт им только +50% (у рядовых — наоборот).
- **15.** **Считаем состоявшуюся встречу, а не ответ.** Воронка замера: отправлено → ответ →
  инвайт отправлен → инвайт принят → встреча состоялась → пауза → отписка. Breakup умеет
  собрать пачку отказов и выглядеть успешным.
- **16.** **Async идёт ПЕРЕД звонком, когда предмет проверяемый** (код, архитектура,
  бенчмарк): Gartner 2025 — 61% B2B-покупателей предпочитают rep-free опыт. **Но не «async
  везде»**: у самообслуживания 43% сожаления против 26% у сделок с человеком (Gartner 2024).
  Звонок — там, где конфликтующие trade-off'ы и нужно решить вместе, а не передать инфу.
- **17. Advisor-ask переформулирован.** «30 мин/нед бесплатно» ≈ 26 часов в год до
  подготовки — это работа, а не совет. FAST (Founder Institute): сначала ≥1 месяц и ≥8 часов
  совместной работы, потом соглашение; регулярный совет компенсируется equity (pre-seed до
  ~1%, vesting 2 года). Наша формулировка вместо вечного weekly:
  > «давай 4 недели рабочего триала: один конкретный вопрос в неделю, пре-рид меньше 5 минут,
  > после каждой сессии выкатываем артефакт. Через 4 недели решаем, нужен ли постоянный ритм».

**B. Столкнулось с каноном — помечено на месте:** п.2 (CTA в реанимации), п.3 (слот сразу,
не через 1–2 дня), п.4 (доза ≤3), п.9 (ритм vs новая причина — ✅ Антон 19.08 принял сшивку:
ритм = КОГДА, дельта = ЧТО).
п.1 (окно 48ч) — **держим**, но механизм назван неверно: дело не в «протух интерес», а в
**незакрытой транзакции планирования**; лечится закрытием слота в том же треде.

**C. Расходятся сами движки — не выдаём за факт:**
- **Голый Calendly унижает статусного.** Grok: устойчивая практика status-sales.
  ChatGPT: **качественных данных нет**, это гипотеза о friction. → Практический выход
  одинаков (2 слота + ссылка запасным), но **перестаём называть это доказанным**.
- **Цена breakup.** Grok: часто сильнейший шаг, HubSpot ~33%. ChatGPT: HubSpot сам
  предупреждает, что шаблон заезжен; Optifai (156k цепочек) — 14% на финальном против 21%
  на первом. → Берём осторожную рамку: breakup = **честное закрытие файла и чистка
  воронки**, не конверсионный приём. Ложной срочности нет ни в каком виде.
- **Доза.** Grok 3–5 касаний за 60–90 дней · ChatGPT ≤3 за 2–3 недели. → Берём строгую:
  сожжённый gold не восстанавливается, недо-касание восстанавливается всегда.

## Когда сам (проактивно, без просьбы)
Лид с сигналом «созрел до звонка, но завис»:
- ответил «да/давай/интересно» → **прошло 24ч без забуканного шага** (окно 48ч закрывается — канон п.1);
- Calendly/слот предложен → не забронировал 24ч+;
- advisor принял инвайт но не зашёл; тёплый партнёр молчит на 2-е касание;
- прошёл звонок → в тот же день нет ФА с Promised-блоком (канон п.8);
- **verified-лид без звонка >3–6 мес** → ритм говорит «пора» (канон п.9) → ищу конкретную
  дельту/артефакт под этого человека; **дельты нет → касание не отправляю**, а ставлю
  задачу «найти дельту» (сшивка, anton 19.08);
- **звонок в календаре <24ч** → проверить, что напоминания 24ч/1ч стоят (канон п.10).

## Порядок (8 шагов)

1. **ЖУРНАЛ + дедуп.** `python3 ~/Obsidian/<vault>/_outreach/outreach_log.py check "<имя/handle>"` —
   что уже писали, сколько касаний, есть ли долг ответа С НАШЕЙ стороны ([[outreach-relationship-debt-gate]]).
2. **RECALL контекст.** Карточка `07-People/person-*.md` + живой тред (Telegram MCP get_history
   по самому тёплому аккаунту). Найти РЕАЛЬНЫЙ повод для звонка из истории, не шаблон.
3. **Считать сигнал стадии.** Текст ещё живой (отвечает, но тянет) ИЛИ замолчал совсем?
   → определяет канал (шаг 4).
4. **ВЫБОР КАНАЛА (ядро скилла):**
   - **Текст ещё работает** → предложить ОДИН конкретный слот («[человек] 17:00 по тебе?»),
     не «когда удобно» (открытый вопрос убивает конверсию). Если у лида есть Calendly —
     сперва прочитать его слоты сам и предложить реально свободный обоим (канон п.5:
     ±30 мин, оба календаря, время в двух поясах). Draft-first.
   - **Молчит на касание с CTA** → допинг по лестнице (канон п.3–4): следующее касание
     через 1–2 дня с НОВЫМ углом/пользой, перед ним чистка треда. Не «how are you».
   - **Замолчал ≥3 дней после «да»** → НЕ третий текст (спам). Развернуть на ЖИВОЙ звонок
     Антона: собрать бриф (шаг 5) + отдать Антону «звони, вот повод + номер». Правило
     «звонок, а не текст» — молчание на текст лечится голосом, не ещё-текстом.
   - **Хард-стоп** (деньги/обязательства/секреты) → не автоотправляю, спрос.
5. **Бриф под звонок** (эталон: `_Dashboards/[человек]-Call-Brief.html`, 26.07). Структура:
   повод (его же слова «ты сказал давай») · срез/данные под ЕГО экспертизу (из CRM-Lite/контекста) ·
   3 вопроса, которые задать · как ЗАКРЫТЬ (конкретный ask: ритм/ник/следующий шаг). Голос = Opus.
6. **Лёгкий заход** (если канал = текст): ≤ пары строк, ОБЯЗАТЕЛЬНО с CTA (канон п.2 —
   без CTA не отправляем), один конкретный слот, лёгкий выход («если не до этого — скажи,
   не пропаду»). Крючок из канона п.1: конкретная польза на звонке («принесу срез воронки /
   анализ X»). Отправка только в окно 08:00–23:00 времени Антона (канон п.6). Тон по каналу
   ([[short-text-when-unreviewed]]). Показать Антону → отправка по «+» (advisor-funnel = своя рутина, там авто).
7. **На согласии/брони:** `outreach_log.py register --status call-booked` + создать календарь-hold +
   положить пре-колл-бриф; **поставить no-show-протекцию (канон п.10)**; в бриф вписать DoD
   (канон п.11): забрать TG/WhatsApp + забукать следующий звонок в конце текущего.
   Сам пре-колл-бриф (кто это · чего хочет · как вести) собирает `/call-prep` — бронь → ключи → волт.
   Connect: «доведено» = звонок В КАЛЕНДАРЕ, не «написал».

   ⚙️ **Механизм п.10 (построен 10.08 по голосовой hub:5225 — раньше правило было без движка):**
   - Забукал или нет — не гадаем, СМОТРИМ: Calendly MCP `meetings-list_events` +
     `meetings-list_event_invitees` → снимок в `$IMPORTS_ROOT\crm-engine\reports\calendly-bookings.json`.
     Хендл телеграма лид пишет сам в форме брони → связка с CRM точная.
   - `python $IMPORTS_ROOT\crm-engine\call_reminders.py --calendly <снимок>` → кто в окне 24ч/1ч
     + готовый текст ЛИДУ в его поясе и на его языке (движок ничего не шлёт).
   - `... call_reminders.py unbooked --calendly <снимок>` → забукал ✅ / ссылка свежая и брони
     нет ❓ (спросить: «забукал слот? на какое число?») / ссылка старше 7 дней 🚫 (НЕ пинговать —
     двухшаговое правило, нужен новый повод) / забукал, а карточки нет 🆕 (завести).
   - Взводить напоминания отложенным сообщением Telegram (`send_scheduled_message`): таймер —
     сам телеграм, робот не нужен, Антон видит очередь в приложении. Проверить —
     `get_scheduled_messages`. Отмена встречи → снять отложенное (`delete_scheduled_message`).
   - Личка лида платная (`send_paid_messages_stars > 0`) → отправка = трата → Tier-2, аск Антону.
   - Паспорт движка: `~/.claude/scripts/docs/call-reminders.md`.
8. **После звонка (в тот же день, канон п.8):** ФА с Promised-блоком + крючок на следующий
   звонок ВНУТРИ ФА; обещанное выполнить сразу; следующий шаг забукать в окно 48ч.

## Границы
- Я НЕ звоню (не умею) — звонок делает Антон; моё = довести до момента «взять трубку» без трения.
- Отправка текста лиду и бронь = по «+» Антона (кроме advisor-funnel-рутины).
- Один лид за раз глубоко > десять поверхностно ([[proactive-lead-copilot]] объём→глубина).

## Выход
Бриф (HTML/md) + черновик захода (если текст) + строка в журнал + (на брони) календарь-hold.
Строкой Антону: «<Имя>: канал=<текст/звонок> · повод=<...> · бриф готов · тебе = <1 действие>».

## Анти-слоп гейт (anton 14.08)
Любой ИИ-написанный текст наружу из этого скилла перед отправкой - финальный проход `/ai-slop` (ban-лист + ритм). Исключения ровно три: текст с плашкой Майкрофта (§3.3) · машиночитаемое (GitHub/техдока/dev-log/journey-machine) · текст, написанный Антоном руками. Канон: `reglament-posty-ot-lica-antona-tolko-cherez-ai-slop`.