Пусть AI готовит карточку, а не переписывает историю
AI в CRM полезен, когда менеджер открывает карточку и сразу видит следующий шаг. Если модель тихо меняет сумму, этап или ответственного, CRM становится источником новых ошибок.
Первое, что я бы убрал: Разрешать модели писать в CRM всё, что она уверенно сформулировала.
Что подготовить в CRM
- Разделение полей AI и полей, которые задаёт правило.
- Идентификатор исходного события.
- Черновик follow-up до записи в CRM.
- Тест дубля, пустого поля и повторного webhook.
Как связать заметку, задачу и follow-up
- Раздели черновик и источник истины
В Workflow builder выбери record updated, добавь AI: extract from note/email и сохраняй исходный текст в отдельное поле. AI пишет только в ai_* поля.
Что увидишь: Ручные stage, amount, owner и consent не меняются.
Если не сработало: Отключи запись AI и оставь только draft-режим.
- Ограничь допустимые значения
Для stage, priority и review_status задай список вариантов. Если AI вернул значение вне списка — не исправляй его автоматически, а отправь в review_required.
Сверь: Невалидный ответ не проходит дальше по workflow.
Если не сходится: Добавь отдельный validation step перед Update record.
- Сделай запуск повторяемым
Перед обработкой ищи source_event_id. Если он уже есть в истории — останови запуск; если нет — записывай его вместе с датой и названием источника.
Что должно совпасть: Повторный webhook не удваивает заметки и задачи.
Если ответ другой: Проверь, что id создаётся на стороне события, а не заново внутри AI-шага.
- Дай менеджеру принять предложение
В уведомлении показывай старое значение, предложение AI и исходный текст. Кнопка или поле review_status должна явно фиксировать approve или reject.
Перед запуском: По истории понятно, кто и почему принял решение.
Если упёрлось: Оставь ручное изменение в CRM обязательным, а AI — только подсказкой.
Поля, которые я добавил бы в CRM
Создай ai_summary_draft, ai_next_action, ai_confidence, source_event_id и review_status. Первые два поля видит менеджер, source_event_id нужен для защиты от дублей, review_status — для approve/reject. Поля stage, amount, owner и consent оставь ручными или за правилами CRM.
В workflow перед Update record добавь проверку: confidence ниже 0.75 или неизвестное значение enum — status review_required. Не чини свободный текст автоматически там, где CRM ждёт одно из пяти допустимых значений.
- Сохраняй исходную заметку рядом с AI-резюме.
- Повторный webhook с тем же source_event_id должен остановиться.
Как выглядит полезное уведомление
Покажи старое значение, предложение AI, цитату из заметки и две кнопки: approve и reject. В журнале должны остаться actor, timestamp, source_event_id и итоговое значение. Тогда через месяц можно разобрать не только ошибку модели, но и ошибку правила.
Где создавать поля в HubSpot
Открой `Settings → Data Management → Properties → Create property`. Создай `AI summary` и `AI evidence` как multi-line text, `AI suggested stage` и `AI review status` как enumeration, `AI suggested amount` как number, `Next step due` как date, `Last AI run ID` как single-line text.
Статусы: `draft_update → needs_review → approved/rejected → applied/error`. Перед `Update record` проверь, что стадия входит в enum, confidence не ниже порога и `Last AI run ID` ещё не обрабатывался.
{
"summary": "",
"next_step": "",
"suggested_stage": null,
"suggested_amount": null,
"evidence_quotes": [],
"requires_review": true
}
Approval должен показывать старое и новое
В уведомлении выведи старое значение, предложение AI, цитату из транскрипта и ссылки на сделку и источник. Кнопка approve должна писать `approved_by`, `approved_at` и `execution_id`; reject — `rejection_reason`. Если webhook повторился, второй запуск останавливается по `transcript_id + deal_id`.
Какие поля менять автоматически
| Критерий | Вопрос | Хороший признак |
|---|---|---|
| Вход | Что подготовить для AI-слой в CRM? | В настройках CRM открой Properties/Fields и добавь ai_summary_draft, ai_next_action, ai_confidence, source_event_id и review_status. |
| Действие | Что система может сделать сама? | Только заранее перечисленные действия, без доступа ко всему аккаунту |
| Проверка | Как понять, что результат можно принять? | Повторно запусти один и тот же event_id и проверь историю карточки: должна появиться одна обработка, а исходная заметка — остаться. |
| Сбой | Куда уходит непонятный случай? | Останови workflow, оставь карточку без изменений и отправь менеджеру ссылку на исходную заметку и ошибку интеграции. |
Что увидит менеджер утром
После звонка или письма в CRM появляется понятный follow-up. У каждого изменения остаются источник, время и человек, который его подтвердил.
Где интеграция портит CRM
Несколько интеграций одновременно пишут в одно поле.
Хранить только AI-резюме и удалять исходную заметку.
Доверять свободному тексту там, где CRM ждёт enum.
Не делать обработку webhook идемпотентной.
Когда нужен отдельный слой контроля
Если CRM связана с оплатой, прогнозом продаж или несколькими источниками правды, спроектируй права и журнал событий до промпта.
Что проверить после первого звонка
Какие поля лучше не менять автоматически?
Сумму, владельца, стадию сделки, согласия, юридические статусы и всё, что запускает деньги или обязательства.
Как выбрать источник истины?
Назначь одну систему владельцем конкретного поля и явно укажи направление синхронизации.
Нужен ли AI-summary?
Только если он сокращает время чтения и рядом остаётся ссылка на исходную заметку.
Как проверить повторный запуск?
Отправь один и тот же event_id два раза и проверь, что карточка изменилась один раз.





