Библиотека · Четыре проекта от начала до конца

Build-Along — Voice Agent для бизнеса за 7 дней

Строитель30 минОбновлено: октябрь 2026
105 из 105 в библиотеке

Время: ~30 мин теории + 7 дней практики


Суть урока

В каждом районе есть стоматология где телефон звонит без ответа. Салон красоты где администратор уволилась и записи теряются. Парковка где после 18:00 никто не берёт трубку. Эти бизнесы теряют клиентов — просто потому что некому ответить.

Voice agent — это виртуальный секретарь который никогда не устаёт, не болеет, не идёт в отпуск и работает 24/7. Он берёт трубку с первого гудка, говорит человеческим голосом, записывает на приём, отвечает на типичные вопросы, переводит сложные случаи на живого человека.

Ты не строишь Siri или ChatGPT. Ты строишь специализированного работника для одного конкретного бизнеса — стоматологии у дома или ресторана через дорогу. И предлагаешь его за фиксированную ежемесячную плату. Суммы в уроке (например, $500 в месяц) — примеры для расчёта, а не прогноз дохода и не рекомендация цены: считай себестоимость по актуальным тарифам и ориентируйся на свой рынок.

За 7 дней мы пройдём полный цикл: от поиска первого клиента до запуска работающего агента который принимает реальные звонки.

🎨 Образ: ты не открываешь call-центр на 50 операторов. Ты нанимаешь одного гениального стажёра который клонируется бесплатно. Один раз обучил — он работает на одного клиента. Скопировал — работает на второго. Предел задаёт твоё время на поддержку.


🎯 End state Day 7

Через неделю у тебя должно быть:

  • ✅ Vapi + Twilio + Claude API конфигурация answering реальные звонки
  • ✅ Первый SMB-клиент подключён (пилот или платный, условия вы согласуете сами)
  • ✅ Dashboard с транскриптами всех звонков (для клиента)
  • ✅ Reusable template для следующих 5+ клиентов
  • ✅ Cold outreach playbook: что писать, кому и какой отклик ты получил

НЕ цель Day 7: идеальный AGI-агент, 10 клиентов сразу, полностью автономный flow. Цель — один работающий контур, первый клиент, понимание экономики.


Stack и экономика

Компоненты и цены

Цены меняются: актуальные условия смотри на сайтах сервисов, цены Claude — на странице Актуальное сейчас.

Компонент Цена Что делает
Vapi platform fee $0.05/мин (ТОЛЬКО orchestration, на октябрь 2026) Склеивает STT + LLM + TTS pipeline
STT (например, Deepgram или модели распознавания OpenAI) по тарифу провайдера Распознавание речи
Claude API Sonnet 5.5 — $2 / $10, Haiku 4.5 — $1 / $5 за 1 млн токенов (вход / выход, на октябрь 2026) LLM brain (Sonnet для booking, Haiku для FAQ)
ElevenLabs TTS подписка Starter $6/мес или Creator $22/мес (на октябрь 2026), расход зависит от объёма Премиум TTS голос
Twilio плата за номер и за минуты, по тарифу Телефонный номер + carrier connection
Calendly API условия смотри на сайте Booking integration

Реальная стоимость на минуту разговора (full stack)

Напиши в чат
Vapi platform:  $0.05 (на октябрь 2026, только платформа)
STT:            по тарифу провайдера
Claude API:     зависит от модели и длины разговора
ElevenLabs TTS: по тарифу
Twilio:         по тарифу
---
Итого:          сумма пяти строк, считай по своим тарифам

⚠️ Не путать с маркетинговым "$0.05/мин" — это ТОЛЬКО Vapi platform fee. Реальный full stack заметно дороже: оплата распознавания, LLM, голоса и телефонии идёт отдельно.

Расчёт на месяц: (звонков в месяц) × (средняя длительность в минутах) × (стоимость минуты по твоим тарифам). Для бюджета закладывай запас: дорогая модель для сложных звонков, более дешёвая для FAQ.

Pricing для клиента

Три модели:

  1. Per-minute: клиент платит за каждую минуту разговора
  2. Flat retainer: фиксированная сумма в месяц с лимитом минут и доплатой сверху
  3. Hybrid: плата за настройку + оплата за минуты (для крупных бизнесов)

Для небольшого бизнеса часто понятнее flat retainer: клиенту ясно, сколько платить, тебе предсказуемо. Сумму определяешь по своей себестоимости и рынку (в примерах урока — $500 в месяц).

🎨 Образ: не продавай счётчик электричества. Продавай свет в комнате. Клиенту не интересно сколько минут разговора. Ему интересно "телефон отвечает".


Ключевые концепции

  • Voice agent — programmatic flow: входящий звонок → STT (распознавание речи) → LLM (Claude генерирует ответ) → TTS (синтез голоса) → ответ абоненту. Цикл повторяется на каждой реплике
  • Vapi — managed платформа которая склеивает STT/LLM/TTS pipeline, обрабатывает interruptions, латентность, edge cases. Альтернативы: Retell AI, Bland AI
  • Twilio Programmable Voice — телефонный carrier который даёт реальный phone number и SIP connection к Vapi
  • System prompt — главный артефакт voice agent. Определяет личность, brand, знания о бизнесе, что можно/нельзя говорить
  • Tool calling — Claude вызывает функции прямо во время разговора (book_appointment, check_hours, transfer_to_human)
  • Conversation flow — последовательность типичных user intents: greeting → identify need → action → confirmation → close
  • Latency budget — общее время от конца реплики клиента до начала ответа агента. Цель: <1 секунды. Иначе разговор "ломается"

Теория

Почему voice agents — перспективная ниша 2026

Три параллельных тренда:

  1. STT/TTS качество перешло порог. ElevenLabs, OpenAI Realtime, Vapi default voices — на типичной телефонной линии звучат очень близко к человеку. Ещё пару лет назад все слышали "робота"
  2. SMB всё ещё теряет звонки. Малый бизнес часто не успевает ответить на все входящие, а потерянный звонок — это потенциально потерянный клиент
  3. Цена заметно упала за последние годы. Полный стек стоит достаточно мало, чтобы малый бизнес мог позволить себе голосового агента

Окно возможностей есть, но неизвестно, как долго оно будет открыто: рынок может насытиться крупными игроками (как с chatbots в 2017-2019). Локальную нишу solo-специалист занять может, но гарантий нет.

🎨 Образ: ты не первый человек который продаёт сайты бизнесам в 2002. Ты тот кто продаёт сайт стоматологу в 2026 когда у него до сих пор нет — но цена входа сегодня намного ниже, а качество выше.


Какой бизнес — правильный target

Не все SMB — одинаковые клиенты. Voice agent работает лучше всего там где:

  • Высокая стоимость одного клиента (LTV выше, чем плата за твой сервис). Один пациент стоматолога приносит заметно больше, чем один клиент пиццерии, поэтому стоматологу проще окупить такой сервис
  • Стандартизированная коммуникация. "Запиши на удаление зуба" — повторяющийся flow. "Подбери букет под настроение жены" — нет
  • Высокий процент пропущенных звонков — клиент сам осознаёт боль
  • Один локейшн или маленькая сеть. Не корпоративные сети — там нужен enterprise sales

Топ-5 ниш (по приоритету):

  1. Стоматология ⭐ — высокий LTV, стандартный flow (запись + insurance + основные вопросы)
  2. Ветклиника — эмоциональные клиенты, телефон критичен, чёткая структура appointments
  3. Юридическая контора (семейное право, immigration) — high LTV, много FAQ
  4. Локальный салон красоты (4+ мастера) — много звонков, простые услуги
  5. Риелтор (boutique agency) — звонки в нерабочее время, high LTV

Избегай: рестораны (низкий LTV), пиццерии (тебя обгонит ChowNow), таксопарки (телефон уже автоматизирован)


Архитектура звонка

Код
┌─────────────┐    ┌─────────────┐    ┌──────────────┐
│  Клиент     │───▶│  Twilio     │───▶│  Vapi        │
│  набирает   │    │  (номер)    │    │  (pipeline)  │
└─────────────┘    └─────────────┘    └──────┬───────┘
                                              │
                                              ▼
                                       ┌──────────────┐
                                       │  STT         │
                                       │  (Deepgram)  │
                                       └──────┬───────┘
                                              │
                                              ▼
                                       ┌──────────────┐
                                       │  Claude API  │
                                       │  + tools     │
                                       └──────┬───────┘
                                              │
                                              ▼
                                       ┌──────────────┐
                                       │  TTS         │
                                       │  (ElevenLabs)│
                                       └──────┬───────┘
                                              │
                                              ▼
                                       обратно клиенту

Vapi скрывает всю сложность — ты конфигурируешь YAML/JSON, Vapi сам обрабатывает потоки.


DAY 1: Niche + first prospect

Цель дня: идентифицировать 20 target бизнесов, связаться с 5, договориться о 2-3 prospect calls.

Hour 1-2: Target list

Открываешь Google Maps. Ищешь в своём городе (или другом если работаешь remote):

Напиши в чат
"dentist near [city]"
"veterinary clinic [city]"
"immigration lawyer [city]"

Для каждого бизнеса смотришь:

  • Количество отзывов — >50 = активный бизнес
  • Рейтинг — 4.0-4.6 = есть room for improvement. 4.9 = слишком perfect, скорее всего семейный бизнес и не наймут постороннего
  • Свежие негативные отзывы — золото. Особенно: "calling for days, no answer", "left voicemail, never called back", "phone always busy". Это твой sales pitch

Сохраняешь в табличку:

Business Rating Reviews Pain signal Owner contact
Smile Dental 4.3 127 "tried calling 3x" front desk
Cuenca Vet 4.5 89 "voicemail full" dr_garcia@

Цель: 20 строк. На это уходит 2 часа.

Hour 3-4: Cold outreach

Не звони в холодную. Email > звонок для первого контакта (звонок без контекста = ты сам тот спамер от которого ты пытаешься их защитить).

Шаблон email (на испанском для Латамерики или адаптируй):

Напиши в чат
Тема: Vi reseñas sobre llamadas perdidas — Smile Dental

Hola Dr. Pérez,

Vi en Google que pacientes mencionan llamadas no contestadas
(reseñas de María L. y Carlos R., última semana).

Construyo asistentes de voz con IA para clínicas como la suya.
El asistente contesta 24/7, agenda citas en su calendario,
responde preguntas comunes y transfiere casos complejos a su
recepcionista.

Costo: [precio] al mes, tarifa fija. Sin contratos largos.

¿15 minutos esta semana para mostrarle un demo en vivo
(con su voz, su clínica)?

— [Твоё имя]
[Телефон]

Ключевые элементы:

  • ✅ Конкретная боль (имена из отзывов)
  • ✅ Конкретная цена (не "доступно", а число)
  • ✅ Конкретный next step (15 минут демо)
  • ❌ НИКАКОГО "AI revolution", "transform your business"

Отправляешь 5-10 emails. Свои цифры отклика узнаешь только на практике. Холодные письма регулируются законами (например, CAN-SPAM в США, CASL в Канаде, GDPR в ЕС): проверь правила своей страны.

Hour 5: Prospect calls (если кто-то ответил)

Если ответ не пришёл в Day 1 — не паникуй. Цель Day 1 — list + outreach sent, не "клиент подписан".

Если кто-то ответил — назначай demo на Day 5-6 (после того как у тебя будет работающий prototype).


DAY 2: Vapi account + first voice prototype

Цель дня: работающий voice agent (на тестовом номере) с базовой conversation flow.

Hour 1: Vapi setup

bash
# Регистрация на vapi.ai
# При регистрации даются стартовые кредиты для тестов (на октябрь 2026 — $5, условия на сайте Vapi)

# Получаешь API key из dashboard
export VAPI_API_KEY=your_key_here

В Vapi dashboard создаёшь первого Assistant. Vapi даёт temporary phone number для тестов — звонишь со своего личного телефона, тестируешь.

Hour 2-3: Conversation flow design

Перед тем как настраивать prompt — рисуешь flow на бумаге:

Код
Звонок → "Здравствуйте, стоматология Smile Dental"
   │
   ├── Хочет записаться → check_calendar → propose_slots → confirm
   │
   ├── Спрашивает часы работы → answer from FAQ
   │
   ├── Спрашивает про insurance → answer from FAQ
   │
   ├── Срочный случай (боль) → transfer_to_human (если в часы работы)
   │                          → save_callback (если вне часов)
   │
   └── Чего-то другое → "Запишу для перезвона администратора"

5-7 intents покрывают большую часть звонков в стоматологию.

Hour 4: Build agent on Vapi

Названия моделей и параметры в конфигурации Vapi (голос, распознавание, LLM) обновляются: выбирай актуальные значения в dashboard Vapi, список поддерживаемых моделей Claude смотри там же.

Базовая конфигурация Vapi assistant (JSON через API или dashboard):

json
{
  "name": "Smile Dental Reception",
  "voice": {
    "provider": "11labs",
    "voiceId": "EXAVITQu4vr4xnSDxMaL",
    "model": "eleven_turbo_v2_5",
    "stability": 0.5,
    "similarityBoost": 0.8
  },
  "model": {
    "provider": "anthropic",
    "model": "claude-sonnet-5-5",
    "temperature": 0.3,
    "systemPrompt": "Ты ассистент стоматологии Smile Dental. Здоровайся коротко, спрашивай чем помочь. Часы работы: пн-пт 9-18, сб 10-14. Запись через инструмент book_appointment. Срочные случаи — переводи на человека через transfer_call."
  },
  "transcriber": {
    "provider": "deepgram",
    "model": "nova-2",
    "language": "ru"
  },
  "firstMessage": "Здравствуйте, стоматология Smile Dental. Меня зовут Анна, чем могу помочь?",
  "endCallPhrases": ["до свидания", "всего доброго"],
  "maxDurationSeconds": 600
}

Hour 5: Test with own phone

Звонишь на тестовый номер Vapi. Тестируешь сценарии:

  1. "Здравствуйте, хочу записаться на чистку"
  2. "Какие у вас часы работы?"
  3. "Принимаете ли вы страховку X?"
  4. (тишина 5 секунд) — как агент обрабатывает silence
  5. (перебиваешь агента посередине) — обработка interruptions

Записываешь что работает плохо: latency, неестественные паузы, повторения, галлюцинации.


DAY 3: Custom prompts + tool calling

Цель дня: агент с правильной личностью + booking integration.

Hour 1-2: System prompt с персоной

Slop default prompt = слабый агент. Кастомный prompt с brand DNA = реальный работник.

Клиника, врач, цены и страховки в примере вымышленные: в реальном проекте подставляй только данные, которые проверил клиент.

Код
Ты — Анна, виртуальный администратор стоматологии "Smile Dental".

ЛИЧНОСТЬ:
- Тёплая, профессиональная, но не приторная
- Говоришь короткими фразами (15-25 слов максимум)
- Никогда не используешь сленг или coaching-фразы
- Если не знаешь — честно: "Уточню у врача и перезвоню"

КЛИНИКА:
- Smile Dental, Куэнка, Av. Florencia Astudillo 7-12
- Часы: пн-пт 9:00-18:00, сб 10:00-14:00, вс выходной
- Доктор: Dr. María Pérez, 15 лет опыта
- Услуги: общая стоматология, чистка, имплантация, отбеливание
- НЕ делаем: ортодонтию (бракеты), хирургию челюсти
- Страховки: принимаем Salud SA, Ecuasanitas
- Первая консультация: $30, чистка: $80, имплантат: $1200

ИНСТРУМЕНТЫ:
- book_appointment(date, time, service, patient_name, phone)
- check_availability(date, service)
- transfer_to_human(reason)
- save_callback(phone, reason, urgency)

ПРАВИЛА:
1. Срочная боль или травма → ВСЕГДА transfer_to_human (если рабочее время) или save_callback с urgency=high
2. НЕ давай медицинских советов (только запись)
3. НЕ обещай цену имплантации без консультации
4. Если клиент злится — спокойно: "Понимаю, передам доктору. Перезвонит через час"
5. Если speak slow или confused — переходи на простой испанский

Длина системного промпта: 300-500 слов — разумный ориентир; чем длиннее промпт, тем выше риск путаницы.

Hour 3-4: Booking tool — Calendly integration

В Vapi определяешь tool:

json
{
  "type": "function",
  "function": {
    "name": "book_appointment",
    "description": "Записать пациента на приём. Использовать когда клиент явно согласен на конкретное время.",
    "parameters": {
      "type": "object",
      "properties": {
        "patient_name": {"type": "string"},
        "phone": {"type": "string"},
        "service": {
          "type": "string",
          "enum": ["consultation", "cleaning", "implant", "whitening"]
        },
        "datetime_iso": {"type": "string", "description": "ISO 8601 datetime"}
      },
      "required": ["patient_name", "phone", "service", "datetime_iso"]
    }
  },
  "server": {
    "url": "https://your-backend.com/api/book"
  }
}

На своём backend (можно Vercel Edge Function):

typescript
// api/book.ts
export default async function handler(req: Request) {
  const { patient_name, phone, service, datetime_iso } = await req.json();

  // Calendly API call
  const response = await fetch(
    "https://api.calendly.com/scheduled_events",
    {
      method: "POST",
      headers: {
        Authorization: `Bearer ${process.env.CALENDLY_TOKEN}`,
        "Content-Type": "application/json"
      },
      body: JSON.stringify({
        event_type: `https://api.calendly.com/event_types/${service}`,
        start_time: datetime_iso,
        invitee: { name: patient_name, phone }
      })
    }
  );

  if (!response.ok) {
    return Response.json({
      success: false,
      message: "Время уже занято. Предложи другое."
    });
  }

  return Response.json({
    success: true,
    confirmation: `Записано: ${patient_name}, ${datetime_iso}`
  });
}

Hour 5: FAQ knowledge

Самые частые вопросы заранее в system prompt (НЕ ждём что Claude угадает):

Код
ЧАСТЫЕ ВОПРОСЫ:
- "Сколько стоит чистка?" → $80, занимает 45 минут
- "Принимаете ли страховку?" → Salud SA и Ecuasanitas, другие — звоните в их call-center
- "Можно ли в субботу?" → Да, 10:00-14:00, но только по записи
- "Сколько ждать имплантат?" → Сначала консультация ($30), затем доктор скажет план
- "Делаете брекеты?" → Нет, направим к ортодонту-партнёру

DAY 4: Voice quality tuning

Цель дня: разговор звучит как с реальным человеком (или почти).

Hour 1: Choose voice

Vapi defaults (Cartesia/Deepgram TTS) — приемлемо, но "роботично" в long form.

ElevenLabs voices library (https://elevenlabs.io/voice-library):

  • Поищи voices по фильтру: язык (ru/es/en), gender, age, accent
  • Тест-listen каждой — выбираешь 3 кандидата
  • A/B тестируешь на тестовых звонках с друзьями

Рекомендация для русскоязычных бизнесов: female voice, 30-40 лет, "теплая", без акцента. Подходящий голос выбери в каталоге ElevenLabs.

Рекомендация для Латамерики (испанский): Latin American Spanish, female, neutral accent (не Mexican, не Argentinian — нейтральный).

Hour 2-3: Personality tuning

Через iterations: звонишь, слушаешь, корректируешь prompt.

Типичные проблемы:

Проблема Решение в prompt
Слишком формально "Используй обращение на 'ты' если клиент молодой"
Слишком длинные ответы "Максимум 25 слов на реплику"
Повторяет имя клиента "Имя — только при подтверждении записи, не чаще"
"Извините за беспокойство" "Никогда не извиняйся без причины"
Заикается / hum Понизь temperature до 0.2-0.3

Hour 4: Latency optimization

Цель: < 1 секунды от конца реплики клиента до начала ответа агента.

Что влияет:

  1. STT latency — зависит от провайдера и модели распознавания
  2. LLM latency — Haiku быстрее Sonnet, а старшие модели ещё медленнее
  3. TTS latency — зависит от модели голоса (turbo и flash-варианты быстрее)

Замеряй задержку в своих тестовых звонках.

Hack для скорости: для коротких ответов (FAQ, подтверждения) переключай на Haiku. Для booking и сложных интентов — Sonnet.

В Vapi это делается через model.fallbackModels:

json
{
  "model": {
    "provider": "anthropic",
    "model": "claude-sonnet-5-5",
    "fallbackModels": ["claude-haiku-4-5"]
  }
}

Hour 5: Edge cases — interruptions, silence, accents

Interruptions (клиент перебивает агента):

json
{
  "responseDelaySeconds": 0.4,
  "llmRequestDelaySeconds": 0.1,
  "numWordsToInterruptAssistant": 2
}

Silence (клиент молчит):

json
{
  "silenceTimeoutSeconds": 7,
  "voicemailDetectionEnabled": true
}

Accents — если бизнес в Латамерике с клиентами из Венесуэлы / Аргентины / Колумбии — тестируй Deepgram language code es (нейтральный) против es-419 (Latam).


DAY 5: Integration + edge cases

Цель дня: реальный телефонный номер + интеграции + полный production checklist.

Hour 1: Phone number setup

bash
# Регистрируешься на twilio.com
# Buy a number в США/Эквадоре/где нужно
# Цена: плата за номер в месяц + плата за минуты (смотри тарифы Twilio)

# В Vapi dashboard → Phone Numbers → Add Twilio Number
# Вводишь:
#   - Twilio Account SID
#   - Twilio Auth Token
#   - Phone Number (E.164 format: +593...)

# Линкуешь номер с Assistant

Звонишь со своего телефона на купленный номер — должен отвечать твой агент.

Hour 2-3: Real systems integration

Клиент использует свой Google Calendar / Google Sheets / CRM. Подключаешься через webhook на бэкенде:

typescript
// Webhook на каждый завершённый звонок
app.post('/vapi-webhook', async (req, res) => {
  const { type, call, transcript, summary } = req.body;

  if (type === 'end-of-call-report') {
    // Записываем в Google Sheets (клиент видит лог)
    await sheets.append({
      spreadsheetId: CLIENT_SHEET_ID,
      range: 'Calls!A:F',
      values: [[
        call.startedAt,
        call.endedAt,
        call.customer?.number,
        summary,
        call.cost,
        transcript.length
      ]]
    });

    // Если booking — отправляем подтверждение через email клиенту бизнеса
    if (call.toolCalls?.some(t => t.name === 'book_appointment')) {
      await sendNotification(`Новая запись: ${summary}`);
    }
  }

  res.json({ ok: true });
});

Hour 4: Edge cases playbook

Готовь reactions на 5 неудобных сценариев:

  1. Злой клиент: "Где мой заказ?! Третий день звоню!" → Agent: "Понимаю, передам менеджеру сейчас же. Записываю номер для срочного перезвона"

  2. Языковой switch: клиент начинает на испанском, переходит на английский → System prompt: "Если клиент переключает язык — следуй за ним"

  3. Не понимает агента (плохая связь): говорит "что? повторите" → Agent: "Извините, плохо слышу. Если хотите — могу перезвонить позже"

  4. Спам/робот на линии: → Detection: если 3 раза подряд silence > 5sec → end call

  5. Клиент просит человека: "соедини с живым" → Tool call: transfer_to_human(reason="customer_requested")

Hour 5: Production deployment checklist


DAY 6: Customer onboarding

Цель дня: клиент подписан, агент live на его номере, первые реальные звонки.

Hour 1-2: Onboarding call

1 час видеозвонка с клиентом. Покажи:

  1. Live demo — звонишь при нём, показываешь как работает
  2. Dashboard — Google Sheet с историей всех звонков (он видит)
  3. Customization options — что можно/нельзя менять
  4. Pricing — согласованная сумма в месяц (в примере $500), первая неделя бесплатно (trial)
  5. Contract — простой 1-page document (email + reply "согласен")

🎨 Образ: не продавай AI. Продавай "больше не теряете звонки". Клиент покупает результат, не технологию.

Hour 3: Knowledge ingestion

Собираешь от клиента:

  • Часы работы (точно, включая holidays)
  • Услуги + цены (если можно говорить или "уточним при визите")
  • FAQ — что они реально слышат каждый день
  • Список услуг которые НЕ делают (предотвращает неправильные expectations)
  • Имя и контакт live person для transfer
  • Brand voice preferences — формальное / неформальное

Записываешь это всё в system prompt (Day 3 формат). 30-45 минут работы.

Hour 4: Tracking dashboard

Клиенту нужно видеть что агент работает. Простейший вариант — shared Google Sheet:

Время Длительность Phone Outcome Транскрипт
14:23 2:14 +593... booking_confirmed [link]
15:47 0:45 +593... hours_question [link]
16:12 4:33 +593... transferred_to_human [link]

Продвинутый вариант (week 2+): простой Next.js dashboard на Vercel. Но для Day 6 — Google Sheet хватит.

Hour 5: Go live

  • Меняешь Twilio routing с current setup на твой агент (или клиент перенаправляет звонки)
  • Первые 24 часа сидишь рядом со своим телефоном
  • Если что-то сломалось — fallback на client's old number (имей готовый rollback)

Договариваешься о 6-часовом check-in — обзвонишься с клиентом, узнаешь как первые звонки.


DAY 7: Refinement + scale

Цель дня: агент стабилизирован, первый invoice выписан, план Week 2 готов.

Hour 1-2: Review первых 20 звонков

Открываешь все транскрипты. Ищешь паттерны:

  • Где Claude галлюцинировал? ("Сказал что делаем брекеты, а мы не делаем")
  • Где звонок не закрылся? (клиент бросил трубку посередине)
  • Где транзит на человека неудачный? (передал не туда / не предупредил)
  • Где booking не получился? (Calendly returned error, agent не handled gracefully)

Каждая проблема = patch к system prompt или tool.

Hour 3: Tune prompts based on real conversations

Самые ценные данные = реальные транскрипты. Используешь их для:

  1. Добавление в FAQ того что клиенты реально спрашивают
  2. Удаление из prompt того что никто не спрашивает (экономишь токены)
  3. Уточнение personality на основе live reactions

Hour 4: Invoice + retainer

Выписываешь первый invoice на согласованную сумму. Платёжный метод:

  • США / Канада: Stripe (легко) или Wise
  • Латамерика: PayPal или local банк
  • Другие страны: выбирай способ оплаты по законам и доступным сервисам в твоей стране и стране клиента, с учётом валютных и санкционных ограничений

Договариваешься о monthly recurring — автоматическое списание 1 числа каждого месяца.

Hour 5: Plan Week 2

У тебя есть:

  • 1 working voice agent
  • 1 paying client
  • ~20 транскриптов с insights
  • Reusable Vapi template

План Week 2:

  1. Пн: Outreach в 10 новых SMB (используешь template Day 1)
  2. Вт: Refine pitch на основе learnings (теперь у тебя case study с цифрами)
  3. Ср-Чт: Demo calls с prospects
  4. Пт: Close 1-2 новых клиентов

Темп роста определяют твои часы на поддержку и спрос на рынке: фиксированных ориентиров по числу клиентов здесь нет.


Real economics

Setup cost (one-time per client, оценка автора по времени)

Item Time Cost
Outreach + sales 5h $0
Vapi configuration 8h $0
Custom prompt + tools 6h $0
Integration (Calendly, Sheets) 5h $0
Voice tuning 3h $0
Onboarding 3h $0
Total per client 30h $0 cash

Variable cost per client per month

Напиши в чат
Avg calls/month:    N (оцени вместе с клиентом)
Avg duration:       M минут
Total minutes:      N × M

Cost per minute:    по твоим тарифам (см. раздел «Stack и экономика»)
Variable cost:      Total minutes × Cost per minute

+ Twilio number:    по тарифу
+ ElevenLabs sub:   по тарифу (может делиться между клиентами)
---
Per-client cost:    сумма строк

Revenue per client

Маржа = цена, о которой договорились с клиентом, минус variable cost и доля твоих постоянных расходов. Считай на своих тарифах и данных клиента: универсальных значений нет.

Масштаб

С ростом числа клиентов растёт время на мониторинг, правки промптов и поддержку. Предел для одного человека определяется этим временем. Когда оно заканчивается, подключаешь помощника для onboarding и monitoring или пересматриваешь цену.


Common pitfalls

Day Pitfall Защита
Day 1 Target wrong niche (pizza < dentist) Фильтр по LTV выше цены сервиса
Day 1 "AI revolution" в pitch Конкретная боль + цифры
Day 2 Слишком сложный first prototype Start simple — 1 intent, потом расширяй
Day 3 System prompt > 800 слов → confusion Держи в 300-500 слов, переноси FAQ в tools
Day 3 Hardcode цены которые меняются "Уточняется при записи" для меняющихся
Day 4 Default Vapi voice = "робот" → клиент думает спам ElevenLabs premium voice mandatory
Day 4 Latency >2 секунд Haiku для FAQ, Sonnet только для complex
Day 5 Deploy без stress testing 10 test calls с разными сценариями обязательны
Day 6 Клиент не понимает что покупает Live demo > слайды
Day 6 Нет rollback plan Backup на client's old number готов
Day 7 No transcripts review Weekly review = mandatory, иначе quality drift
Day 7 Цена слишком низкая Считай по себестоимости: цена ниже неё — работа в убыток

What you have end Day 7

✅ Live voice agent отвечающий реальные звонки 24/7 ✅ Первый SMB-клиент подключён (условия оплаты согласованы) ✅ Dashboard (Google Sheet) с транскриптами всех calls ✅ Reusable template — следующий клиент быстрее ✅ Outreach playbook с твоими реальными response rates ✅ Real economics: расчёт на реальных цифрах первого клиента

И главное: у тебя есть шаблон case study с цифрами для следующих prospects: "[Клиника] — за первый месяц агент принял [N] звонков, которые раньше пропускались, [M] из них стали записями." Подставляй только реальные данные клиента и только с его разрешения.


Инструменты и ресурсы

  • Vapi — платформа voice agents (стартовые кредиты для тестов, условия на сайте)
  • Twilio Phone Numbers — покупка и настройка реальных номеров
  • Calendly API — booking integration
  • ElevenLabs Voice Library — каталог premium голосов
  • Deepgram — один из популярных STT для real-time conversations
  • Claude Console — Claude API keys и monitoring
  • Vercel Edge Functions — host для webhooks (для коммерческого проекта нужен платный тариф Vercel; можно использовать и Cloudflare Workers)
  • Cal.com — open-source альтернатива Calendly если клиент хочет self-host

Ключевые выводы

Не строй универсальный voice agent. Строй специализированного работника для одной ниши и одного бизнеса. Стоматолог не покупает "AI". Он покупает "не теряем звонки". Продавай результат, не технологию.

Экономика работает, только если один клиент приносит бизнесу заметно больше, чем стоит твой сервис (LTV выше цены агента). Стоматология обычно подходит, пиццерия обычно нет. Фильтруй prospects по этому критерию ещё на Day 1, иначе придёшь к Day 7 с контрактом, который не окупается.

Setup time падает с каждым следующим клиентом: template, reused prompts и наработанные FAQ дают compound effect. Сколько времени займёт каждый следующий клиент, увидишь на своих проектах.


Связанные уроки


Следующий урок

→ Build-Along — AI Consulting Practice

Отметка хранится только в этом браузере и никуда не отправляется. Мой прогресс