Продукты 24

Мне удалось побывать на показе фильма Продукты 24 режиссёра Михаила Бородина.

Сюжет

Продукты 24 — это фильм об истории современного рабства, которое существует в неприметном продуктовом магазине Москвы.

Сюжет о девушках из Узбекистана, Таджикистана и Казахстана, которые приезжают работать в Москву в поиске лучшей жизни.

Они попадают к владелице магазина, казашке Жансулу Искаковой, которая забирает их паспорта и запирает их в магазине. Заставляет работать круглые сутки и бьет по поводу и без.

Детали истории, приводящие в ужас

Диссонанс вызывает переплетение религии и греха в соседних кадра, когда они в одном кадре говорят о боге и молятся, а во втором курят кальян и пьют водку.

Пить водку и курить их заставляла владелица магазина. Если они отказывались, их на ночь оставляли в морозильной камере.

После этого желающих отказаться было меньше. Это выглядело как метод сломать людей, ослабить их волю и веру. Узбеки исповедуют ислам, пить и курить — это хорам, запрещено.

Это выглядел мерзко, словно сатана, который затягивает людей в бездну и уничтожает их там.

Поражало то, что она настраивала работников друг против друга. Из-за этого они не могли положиться друг на друга и по сути были одни, наедине с бедой. Хотя их было много и враг у них был только один — владелица магазина. Страх порализовал их. Это выглядит нелогично, но это так. Так люди устроены.

Мы друг друга ненавидели, били, избивали. Секретами не делились никогда. Я один свой секрет сказала — и за это меня избили. После этого я секретного никогда не говорила. И сейчас мы не общаемся.
— Бакия

Меня пугало то, что это находится рядом, в одном метре. Когда ты заходишь в продуктовый магазин, а за стеной живут люди, которых спаивают и бьют каждый день. Калечат их жизнь, которая у них всего одна.

Это пугает похлеще фильмов ужасов.

В фильме есть сцена с девушкой, которая сбежала и была избита за это. Она моет полы рядом с выходом, с открытой дверью, откуда доносятся радостные крики детей, крики забавы и свободы.

Девушка, которая вчера убежала из этого ада, сегодня моет полы и даже не смотрит в сторону открытой двери. Желание убежать отбито.

Были показаны редкие люди, которые пытались помочь, но их выгоняли из магазина.

Жители прилегающего дома писали жалобы и просили закрыть магазин, но жалобы тут не помогут, потому что здесь есть деньги и коррупция.

Рабам было сложно убежать, потому что их возвращали полицейские, которые привозили рабов обратно и получали за это деньги.

Фильм передает атмосферу глубокого одиночества, которое окружает жертв. Русский язык не знают, полицейские не помогут, люди в большинстве своем относятся с презрением.

Освобождение

Благодаря доброй соседке, волонтерам и журналистам удалось освободить 11 граждан Таджикистана, Казахастана и Узбекистана.

Это была битва, в которой они победили и силой вытащили людей из рабства.

Что понравилось в фильме

Режиссёр смог передать атмосферу безысходности и отчаяния. Многие в зале после просмотра говорили, что ощулалась теснота, словно нечем дышать.

Когда главная героиня убежала из магазина и ходила по Москве, я ощутил удушающее одиночество, когда ты один, а все вокруг враги.

В фильме прекрасная операторская работа и работа со светом. Кадры с пелиной создают атмосферу хтони и отдают работами Балабанова — настраивают на нужное настроение.

Мне понравились долгие кадры. Когда в обычном фильме кадр бы уже давно сменился, а здесь он постепенно отдаляет или приближает камеру и намеренно задерживается в моменте. Это играет на атмосферу и вовлечение.

Когда работник долго протирает стекло, с каждой секундой ты словно становишься ближе к этом магазину, эта атмосфера начинает тебя обволакивать. Становится жутко.

Бакия Касимова

Хэппи-энда нет

Одно дело, когда вы смотрите такой фильм и на подкорке думаете: «это где-то далеко, с кем-то там, кого я не знаю и не вижу».

В этот вечер у нас было по-другому. На просмотре фильма была одна из жертв, Бакия. Она была в рабстве 10 лет.

После фильма она с режиссером вышла к нам, обсудить фильм.

Михаил Бородин и Бакия Касимова

Слушать историю от неё самой, о том, как все происходило — было жутко. После фильма весь зал словно онемел и не мог ничего сказать.

Она приехала в Москву в районе 25 лет, до 35 была в рабстве и потом ещё 10 лет пыталась наказать владелицу магазина.

У нее переломаны все пальцы, множественные травмы головы, шрамы на всем теле, нервный тик лица и варикоз.

Она родила в магазине сына и дочь. Дочь забрала владелица магазина со словами «Это не твоя дочь, а моя». А сын родился инвалидом.

Никто не понес наказания. Таких магазинов в Москве уже четыре. Там работают такие же молодые граждане из соседних стран. Семья рабовладельцев занимается этим уже 20 лет. Бизнес с рабынями уже перешел к детям и они продолжают издеваться и ломать жизни людей.

Против семьи рабовладельцев не заведено ни одного уголовного дела. Бакия подавала заявление 9 раз. На все пришел отказ.

Если бы не коррупция в полиции, этого безумия бы не было. Это происходит потому, что сотрудник в форме, призванный защищать нас, берет деньги и потакает злу.

В 2023 году, согласно Глобальному индексу рабства, Россия заняла 8 место. По данным организации, различным формам рабства в России подвержены 1 миллион 899 тысяч человек — или каждый 77 житель страны.

Days Gone. Цель жизни обновлена, дожить до второй части

Только что закончил проходить Days Gone. Внутри как-то пусто, словно расстался со своими давними друзьями.

Это великолепная игра. Одна из лучших игр, в которые я играл.

Я редко видел её в топах игр. Скачал, начал играть и подумал: «кажется меня ждет средненькая игра про зомби. Ладно».

Как же я ошибался.

Простота и отсутствие пафоса

Часто в играх для главного героя припасена миссия, её часто проговаривают, подают с пафосом: спасти город, страну, мир в конце концов!

Здесь этого пафоса нет. Вы просто два байкера: Дикон и Бухарь. Два байкера, которые хотят выжить, в мире, о коротом давно забыл бог.

Сюжет начинается с простых заданий, демонстрации тебе, игроку — быта этого страшного мира, в котором фрики повсюду. И тебе придется иметь с ними дело.

Когда дают первое задание на убийство фрика, трясутся поджилки. Их там ходит 1.5 инвалида, а тебе страшно, лишь бы не заметили. Я лично боюсь игр и фильмов в жанре «ужасы», поэтому у меня в такие моменты потеют ладони.

И так забавно замечать, как постепенно, по мере игры фрики становятся для тебя фоном, рутиной.

Люди, а не модели персонажей

Команде разработчиков удалось выстроить мир и персонажей в нем так, что ты начинаешь в это верить. Разговоры простые, без философии и лирики.

Особенно понравилось, когда Бухарь говорит Дикону про жену: «Я верю что ты найдешь её и обретешь покой».

На что получает ответ: «Ты чё несёшь-то?». Никаких соплей и лирики. Надо найти припасы, убить зомби и найти патронов.

Этим пропитана вся игра.

Люди за два года в этом аду ощетинились, особенно те, которые выходят в «Адище» — мир за стенами лагеря.

Простота, дерзость, честность в диалогах заставляют любить эту игру ещё больше.

А ещё куча шуток, что в атмосфере зомби-апокалипсиса, страданий и горя внезапно смешат до ора в голосину 😂

Игра не про зомби, она про людей

Зомби да, они повсюду, их много, а породы даже очень. Но игра не про них, она про людей. Про людей, который остались один на один с этими монстрами.

Мир в игре поделен на крупные регионы, в каждом из них свои лагеря, которые стараются жить в мире. А ещё там мародеры, сектанты и люди, которые не определились и пытаются выжить в одиночку.

Зомби со временем отходят на второй план. Главный герой — отношения между людьми в постапокалипсисе.

Ну и байк Дикона конечно.

Байк — твой друг

Я не знаю какому демону продали душу разработчики игры, но их реализация байка — лучшая за всю историю игр.

Обычно управление байком деревянное, чуть дашь в сторону, его уже заносит. В этой игре ты словно чувстуешь байк руками. Он словно настоящий, хотя это все ещё пиксели на экране.

Это не передать словами. В этой игре простая поездка на байке приносит удовольствие. Учитывая то, что 80% игры вы проведете на байке, разработчики справились со своей задачей на все 100%.

После этой игры я не хочу ни в какой другой ездить на байках.

Окружение

После прохождения игры у вас с большой вероятностью появится желание купить байк и поехать в штаты проехать и увидеть всю эту прекрасную природу.

Разнообразный и красивый ландшафт, который интересно изучать, рассекая на байке, уворачиваясь от фриков.

Если ещё не играли: не упустите

Со временем игры устаревают. Их геймплей, графика, все это рано или поздно устареет. Поэтому не пропустите этот шедевр, который точно западет вам в душу.

Я не люблю зомби — терпеть ненавижу. Но я прохожу ее уже во второй раз и не жалею ни одной потраченной минуты.

Цель жизни обновлена: дожить до второй части.

И последнее

Орды это пиздец как страшно

Решаем проблему НДА

НДА — зловещение 3 буквы, которые вводят в ступор новичков. Когда я начинал работу на фрилансе и получал НДА, я впадал в ступор.

Денег на юриста нет, проект взять хочется, но когда видишь штраф 3 500 000₽ на твою работу 9300₽, становится дурно.

Раньше я думал, что клиент, который присылает такое НДА — наглец, который хочет обмануть меня и поиметь с меня денег.

Я отвечал: я не могу подписать это НДА, это огромный риск.

Никто из коллег не подсказал, что можно отправить правки и получить нормальный НДА.

Договор о неразглашении нужен часто для формальности, на деле все эти штрафы и строгие требования по первой первой просьбе упрощаются.

Типичный НДА на работу за 4300₽

Штраф: 2 500 000₽

Нельзя говорить о проекте. Даже упоминать о том, что проект под нда.

Все данные — конфиденциальны, даже переписка.

При нарушении исполнитель платит штраф, убытки, потерянную выгоду.

На первый взгляд: жуть, надо отказываться, невозможно по такому НДА работать. На самом деле нужно отправить правки и все.

Надо подписать НДА? Тогда дороже

Когда клиент просит подписать нас НДА, он не хочет, чтобы мы не разглашали информацию о проекте. Может доходить до того, что вы даже об НДА не можете упоминать.

Если клиент хочет дополнительных усилий с вашей стороны, а это усилия: вам нужно следить за тем, чтобы ничего нигде не рассказать, ни написать, не выложить, то ему нужно за это заплатить.

Потому что это накладывает на вас обязательства и лишает вас возможностей.

Когда вы подписываете НДА, вы не можете рассказывать о проекте в соцсетях, на выступлениях, на своем сайте.

По сути, вы лишаете себя возможного дополнительного дохода, который мог бы прийти после рассказа о проекте.

Я добавляю за НДА — 30%.

Как обычно я говорю клиентам о наценке

Александр, хотел предупредить по поводу НДА.

Я привлкаю новых клиентов с помощью кейсов. Так как из-за НДА не смогу рассказать о вашем проекте, это лишает меня дополнительного трафика и возможных клиентов.

Поэтому при подписании НДА стоимость проекта увеличивается на 30%.

Правки по НДА

Если вы видите ужастный НДА, не торопитесь посылать клиента. Возможно для него это формальности.

Вам нужно дать правки и смотреть на то, как он поступит дальше. У меня 9 из 10 клиентов принимают правки и мы работаем дальше.

Если клиент противится — прощаемся. Просто когда клиент упоминает об НДА, мысленно примите, что возможно вы по проекту работать не будете. Тогда будет легче.

Кидаете промпт нейронке и документ NDA. На выходе получаете описание рисков и сообщение, которое нужно отправить клиенту, чтобы они внесли изменения.

Я на видео использовал Claude, вы можете использовать любую другую. Суть не в конкретной нейронке.

Перед итоговым сообщением нейронка спросит вас о сумме, а потом о ваших договоренностях с клиентом. Чтобы он не писал правки к тому, о чем вы уже договорились.

Промпт

Ты — юридический консультант, специализирующийся на защите интересов исполнителей (фрилансеров, подрядчиков) при анализе договоров.

## Задача
Проанализируй предоставленное NDA (соглашение о неразглашении) с позиции Принимающей стороны (исполнителя).

## Контекст
Я — исполнитель, выполняющий работы по договору. Мне важно защитить свои интересы, сохранив при этом конструктивные отношения с заказчиком.

## Перед анализом

Прежде чем анализировать документ, задай мне два вопроса:

1. Какова стоимость работ по проекту?
2. О чём вы уже устно договорились с заказчиком? (например: нельзя выкладывать в портфолио, особые условия по срокам, по ответственности и т.д.)

Дождись ответа и учти эту информацию при анализе — не включай в список проблем то, что уже согласовано.

---

## Формат ответа

После получения ответов сформируй ответ из двух частей:

---

### ЧАСТЬ 1: АНАЛИЗ ДЛЯ МЕНЯ

Объясни простым языком, какие проблемы есть в документе и почему они опасны для меня как исполнителя. Для каждой проблемы укажи:
- Номер пункта в договоре
- В чём суть проблемы
- Какой риск это создаёт (конкретный сценарий, как это может навредить)
- Насколько критично (критично / желательно исправить / мелочь)

---

### ЧАСТЬ 2: ГОТОВОЕ СООБЩЕНИЕ ДЛЯ ЗАКАЗЧИКА

Сформируй готовое сообщение для отправки заказчику.

**ВАЖНО: Текст сообщения оформи в блоке кода (```), чтобы я мог его скопировать целиком и отправить.**

**Тон:** деловой, вежливый, без лишних вступлений. Сразу к делу. Избегай резких формулировок вроде «нереалистичен», «неприемлемо» — вместо этого используй мягкие: «представляется затруднительным», «предлагаю скорректировать».

**Структура сообщения:**
1. Одна строка: "Обратная связь по NDA:"
2. По каждому проблемному пункту:
   - Номер пункта и краткое название проблемы
   - Вежливое объяснение, почему текущая редакция вызывает затруднения
   - «Предлагаемая редакция:» — конкретный текст для замены
3. Короткое завершение (готов обсудить)

---

## На что обращать внимание

### Штрафные санкции
Проверить на соразмерность стоимости работ. Типичные проблемы:
- Фиксированные штрафы, многократно превышающие стоимость проекта
- Возможность одновременного взыскания штрафа и убытков
- Взыскание по «заявлению» без решения суда
- Включение упущенной выгоды
- Слишком короткий срок уплаты штрафа

Мои стандартные требования:
- Штраф не более стоимости работ
- Либо штраф, либо убытки (не одновременно)
- Ответственность только за реальный доказанный ущерб
- Исключить упущенную выгоду
- Взыскание только после решения суда с доказыванием вины и причинно-следственной связи
- Срок уплаты — 30 дней с момента вступления решения суда в силу

### Определение конфиденциальной информации
Типичные проблемы:
- Слишком широкий перечень (включает всё подряд)
- Вся переписка признаётся конфиденциальной
- Запрет разглашать сам факт существования NDA
- Отсутствие требования маркировки

Мои стандартные требования:
- Чёткий перечень с конкретными критериями
- Информация конфиденциальна только при маркировке («Конфиденциально» / «Коммерческая тайна»)
- Техническая переписка (сроки, статусы, постановка задач) — не конфиденциальна
- Факт существования NDA можно разглашать

### Срок действия
Типичные проблемы:
- Срок 5-10 лет и более
- Отсчёт от даты передачи информации (а не завершения работ)

Мои стандартные требования:
- Срок 3 года с момента завершения работ
- Чёткое определение момента завершения (акт / последний результат)

### Интеллектуальные права (если затрагиваются)
Мои стандартные требования:
- Исключительные права на мой код/решения остаются у меня
- Заказчику — неисключительная лицензия
- Право использовать наработки в других проектах (без раскрытия конфиденциальной информации заказчика)

### Использование в портфолио
Мои стандартные требования:
- Право упоминать факт работы над проектом
- Право на общее описание без конфиденциальных деталей
- Право демонстрировать результаты потенциальным заказчикам

---

## Важно

- Не включай в список проблем пункты, которые соответствуют устным договорённостям с заказчиком
- Если какой-то пункт уже соответствует моим требованиям — не включай его в список проблем
- Если документ в целом адекватный — так и напиши, не выдумывай проблемы
- Предлагаемые редакции должны быть юридически корректными и готовыми к вставке в договор

ИИ-менеджер по работе с базой и клиентами в Телеграм

Я делаю этот кейс в январе 2026 года, хотя начал работать над проектом раньше. Не доходили руки.

Первая попытка

Первая попытка работы над ботом была в ноябре 2024 года.

Мне не нравилось то, как я работаю с базой клиентов.

База клиентов и лидов — это это люди, которые уже выбрали вас однажды. Одни решили написать вам, другие заплатили деньги. База клиентов и лидов — это деньги.

Особой мотивации добавила одна ситуация.

Я созваниваюсь по заявке на оформление Геткурс. Там девушка, мы с ней болтаем и ждем основателя школы. Он подключается и происходит такой диалог:

— О, Даня, ты что-ли?
— Миша, привет! Как дела, вы решили ещё одну школу оформить?
— Ага, слушай, мы тебе проект передаем тогда, создавай чат и документы, все оплатим.
— Договор.

Мы с этим клиентом уже оформляли школу полгода назад. Он забыл обо мне. То есть когда пришла задача оформить ещё одну школу, он не вспомнил обо мне, он дал задачу ассистенту найти исполнителя.

И так может быть с любым клиентом или лидом из вашей базы. У меня их 900 человек. Я возможно потерял много денег из-за того, что просто не напоминаю о себе.

Ниже я приведу свои сообщения из телеграма, где я делился работой над этим ботом.

Рассказ из телеграма

Сегодня поднялся на одну ступеньку выше в изучении ИИ.

На скриншоте показал, как ИИ автоматически заполнил карточки лидов в Notion.

Максимум что я делал — кодил там и для чего-то личного использовал gpt и claude. Получалось тоже неплохо, но хотелось чего-то большего.

Сегодня сделал связку Telegram + Notion + Claude.

Искусственный интелект:

1. Берет телеграм-ник из Notion

2. Идет в диалог в телеграме, проводит анализ,

3. Возвращается в Notion: проставляет теги и пишет краткое содержание диалога, ставит дату первого и последнего контакта

Это было ощущение волшебства)

Я когда увидел, что он про цену написал, выставил правильный статус и причину отказа — охренел)

Всю неделю кручу-верчу связку Notion + Telegram + ИИ. Нащупываю инструмент, который поможет автоматизировать работу с базой лидов/клиентов.

Всё это добро написано на языке Python, кстати. Знаю ли я Python? Nope.

Играюсь с нейронками, пропал там и не могу ничего с собой поделать 😂

На телеграме лимиты, но у меня чешутся руки поделать что-нибудь.

Значится так, надо обрабатывать базу в Notion.

Я хотел в будущем делать рассылку, а в базе у меня есть английские имена.

Будет выглядеть странно, если я буду их использовать.

Так как в базе 950 человек, делать руками мне это не хочется.

Попросил написать Claude на python скрипт, который анализирует все контакты и проставляет тег у тех, у кого имя латиницей.

На скрине то, как он отчитывается и как это выглядит в Notion.

Следующий шаг — перевод и установка нового имени с помощью GPT.

Я остановился на том, что проставлял метки для имен, которые написаны латиницей, чтобы их перевести.

Код обработал 861 запись и проставил 135 записям метку name-fix.

Это тестовая метка, которую я использую, чтобы потом по ним работать, а не п овсем контактам.

Дальше надо будет использовать GPT, чтобы он перевел имена на русский язык.

Теперь надо переводить

Работает не идеально, но в 95% случев делает то, что я ожидаю.

Теги или ники — не переводит. По именам пишет обоснование.

Я использовал для этого GPT-ассистента.

Туда можно проставить инструкции (промпт) по обработке данных, не передавая их в коде каждый раз.

Это экономит деньги при оплате «услуг» GPT.

GPT для работы использует токены.

Если не использовать ассистента, а каждый раз передавать промпт в коде, он будет тратить на это токены и деньги.

Если нифига не поняли — это нормально. Я сам пока не понимаю, что тут происходит 😁

Поняв, что он нормально переводит имена, выключаю обоснование и запускаю перевод для ~140 имен.

Статистика

🕑 5 минут

🤑 Денег на GPT: 12₽

🍑 Деревянная задница: в подарок

Результат — охренеть 🤯

Я бы задолбался сидеть вручную переписывать. Тут ещё 140 имен. Если переводить 2000 имен — потратишь всего 180₽.

Использовал для этого самую дешевую модель 3.5-turbo. Перевести имя много ума не надо.

Идем дальше.

Для рассылки мне нужно имя. А у некоторых контактов есть имя и фамилия.

Было бы странно в рассылке использовать обращение: «Марина Федорова, добрый день!»

Попросил написать код, который без GPT это делает.

Запустил в режиме тестирования. Если 2 слова в имени, берет только первое имя, а вторую часть удаляет.

Но срабатывает так себе. Потому что где-то имя клиента написано как: «Фамилия Имя».

На скрине из «Довгуша Александра» он взял только «Довгуша».

А имя всё-таки Александра.

Тут спортный момент. 90% скорее всего нормальные.

Но все же хочется потестить GPT и посмотреть, как хорошо он это сделает и сколько на это уйдет средств.

Запустил, отделяет нормально.

Обработка 28 человек обошлась мне в 0.67₽. Меньше рубля.

Экстраполируем на 500 человек → 75₽

Сделал херню

Начала переписывать Name и удалять фамилии.

Если я буду в Notion создавать проект. Там надо выбирать клиента. И я обычно запоминаю клиентов по фамилии.

Например: «Петр Петипак».

Я его помню не как «Петра», а как «Петипака».

И так как скрипт все переписал, по «Петипак» он ничего не найдет.

Введу «Петр» и охренею от того, сколько Петров у меня. Поди найди нужного.

Придется искать по нику телеграма, а это мутная схема.

Создал отдельное поле «Имя». Чтобы он туда проставлял и не трогал старые имена.

Если имя уже стоит, без фамилии — его переносим в поле Имя без использования GPT, чтобы деньги не тратить.

Итоговый результат

✅ Сохраняет изначальное имя

✅ Для тех, где уже имя, просто переносит

✅ GPT использует там, где есть имя и фамилия

Стату по переносам нормально пишет. Но GPT-анализов почему-то пишет с минусом.

На обработку всей базы из 910 человек потратил может быть рублей 200₽.

И 3−4 часа работы. Но это время был занят отладкой кода.

Саму работу скрипт делает быстро.

Как нейронка помогает мне формировать персонализированную рассылку.

Последнюю неделю, в свободное от рабочих проектов время я ковырял связку notion + telegram + gpt.

Результат на видео.

🔥 Автоматический менеджер работы с базой

У меня есть проблема — я ужасно работаю с базой клиентов. У меня есть база на 800 контактов, которые ко мне прихдоили и покупали.

Когда у меня нет заказов, я бегу искать новых клиентов. В это время база клиентов из-за угла такая: «Псс, парень, я вообще-то тут!»

Допродать клиенту всегда проще, чем продать новому. Лиды или клиенты вам уже доверяют.

Я решил исправить это. Сейчас я начал работать над кодом, который управляет моим рабочим телеграм-аккаунтом, работает с базой и пишет сообщения с помощью нейронки.

Что он будет делать

1. Из конкретных папок в телеграме добавляет всех клиентов в Notion

2. Анализирует диалоги с ними.

3. Добавляет в базу имя, даже если оно на латинице, он с помощью нейронки переписывает его на кириллицу.

4. Устанавливает рабочие теги: «design, code, getcourse»

5. Устанавливает тег игнора, если ваш лид или клиент уже долго вам не отвечает. Таким он не будет больше писапть

6. Устанавливает резюме диалога: о чем общались, к чему пришли

7. Устанавливает статус отказа, если лид вам отказал: нашел другого спеца, по цене.

8. Устанавливает дату последнего общения

9. Ставит формат обращения: ты/вы.

10. На основании всей информации пишет сообщение-напоминание клиенту о себе.

11. Ставит новую дату последнего обращения и запускает повторную проверку через 3 месяца.

На выходе мы получаем автоматизированную систему, которая работает с вашей базой клиентов.

Вам нужно только раскидывать лидов и клиентов по папкам. Ну и пополнять баланс GhatGPT.

Я уже проделал это со своей базой. Я потратил примерно 500₽ на то, чтобы обработать всю свою базу. Это с тестами, после калибровки все будет стоить меньше.

Пока у меня отдельно лежат все функции. Да, это пока не полный код, но они отдельно работают. Осталось собрать их вместе, закинуть на сервер и запускать раз в неделю например.

Сначала я проверю всё это на себе. Здесь буду делиться промеждуточными этапами. Потом шлифану всё так, чтобы можно было ставить это другим людям.


Менеджер клиентов в Telegram 💬

Сегодня я продолжил работу над системой, которая позволяет автоматизировать взаимодействие с клиентами.

Я решаю проблему, когда у меня много лидов и клиентов, а они просто лежат мёртвым грузом в Telegram или в базе данных. А ведь это — потенциальные заказы. Многие клиенты и лиды забывают об исполнителях уже на следующий день.

Я решил запустить эту систему после случая, когда ко мне пришёл менеджер за оформлением школы на Геткурс. Мы созвонились, и на звонке оказался основатель школы, с которым мы уже оформили одну из его школ. Он просто обо мне забыл. Нужно сделать так, чтобы не забывали.

Я понимаю, что эту проблему можно решить с помощью менеджера по работе с клиентами. И я делаю это ещё и для того, чтобы прокачаться в работе с ИИ — потому что это реальная, а не абстрактная задача.

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

Ниже опишу, как система работает по частям. Некоторые имена и процессы буду упрощать. Детали — в отдельных постах.

Из чего состоит система

0. Я вручную сортирую людей в Telegram по папкам: «Лиды», «Клиенты».

1. Добавляю людей из этих папок в базу Notion.

2. Беру форму обращения из диалога, добавляю в Notion.

3. Получаю дату первого и последнего сообщения — тоже добавляется в базу.

4. Получаю рабочий тег — по какой теме мы работали. Анализ делает нейросеть и проставляет отметку.

5. Проставляю статус — как прошла работа. Анализирует нейросеть.

6. Резюме диалога — нейросеть делает краткое описание общения в 3−4 предложения.

7. Исправление имён — Vyacheclav → Вячеслав. Чтобы сообщения выглядели правдоподобно.

8. Генерация сообщения: на основе всей информации создаётся текст. Там имя, месяц работы, тема и предложение, сформированное под клиента. Я выделил ~5 ниш: Tilda, GetCourse, дизайн и т. д.

9. Отправка сообщений — отдельный скрипт шлёт их в Telegram.

Следующим постом расскажу, как улучшил 1 и 2 функции.

Перемещение людей из папок в Notion 💬→📝

Как это работает?

Я указываю скрипту папки, из которых нужно взять контакты. Это папки с клиентами и лидами.

Скрипт проходит по каждой папке, берет каждый контакт и проверяет, есть ли он уже в Notion.

Если контакта в базе нет, скрипт добавляет его с такими данными:

— ник;

— имя;

— дата первого сообщения;

— дата последнего сообщения;

—с какого аккаунта найден.

Что значит «с какого аккаунта найден»?

У меня два Telegram-аккаунта: личный и рабочий.

Допустим, вы хотите проанализировать 400 диалогов. Если не знаете, через какой аккаунт шло общение, вы подключитесь сначала к личному и сделаете 400 запросов. Потом — к рабочему и снова 400 запросов. Это неэффективно.

Гораздо проще, когда сразу известно, с какого аккаунта был контакт. Тогда скрипт проверяет только там, где человек точно есть.

Например:

— 80 клиентов в личном аккаунте;

— 320 в рабочем.

Такой подход экономит время и снижает риск попасть в бан.

Ограничения Telegram

Главная сложность — лимиты Telegram. Нельзя обработать тысячу контактов за секунду. Если Telegram заметит аномальную активность, он отправит вас в бан. Тогда в течение суток ничего сделать не получится.

Чтобы этого не произошло, скрипт делает рандомные паузы между запросами. Это снижает риск блокировки.

Как я ускорил скрипт

Первая версия работала медленно. Она проверяла каждый контакт в папке.

Представьте: в папке 400 человек, но за последний месяц вы добавили только 10 контактов. Скрипт всё равно идет по всем 400. Это долго и бесполезно.

Нейросеть сначала утверждала, что проверять пачками нельзя — только по одному. Но сегодня мне удалось решить эту проблему —теперь скрипт проверяет пачками по 30 человек. Это сильно ускоряет работу.

Еще одно улучшение: я добавил выгрузку базы Notion для предватительной проверки. Теперь при запуске скрипт сначала получает всю базу Notion и сохраняет её в файл.

Потом при обработке новых контактов сверяет их с этим файлом. Это сокращает количество запросов.

👨‍🎨 Результат

Функция работает как задумано: добавляет контакты из папок в Notion, работает быстро и не попадает в бан. К ней я буду подцеплять остальные функции. Фундамент заложен.

Видео на 3 часа

Для своего клуба я записал видео на 3 часа, неотмонтированное от слова совсем.

Вторая попытка

Третья попытка

Я вернулся к проекту спустя несколько месяцев. Я хочу его закончить, но мне сложно это дается. Это происходит, потому что в проекте много функционала, это в целом сложная задача, где много нюансов и деталей.

Цель проекта — автоматизировать общение с базой лидов и клиентов.

Лидам и клиентам нужно напоминать о себе. Лиды забывают ответить, клиенты забывают о тебе на следующий день.

Напоминать нужно не шаблонно, а с личным подходом, обращаться по имени, напоминать контекст общения.

Кроме этого нужно саму базу пополнять. Для этого из телеграма нужно выгружать все в Notion. Это рутинная работа, которую хочется передать другому.

Напоминаем себе о функциях

До этого я работал с Cursor. В этот раз я решил взять подписку за Claude Code за $ 100, чтобы наконец закончить эту задачу и отбить с новых заказов эту подписку.

В Claude Code реализована интересная функция — Claude.md. Это файл, где лежат инструкции для нейронки, правила и описание проекта.

Я попросил сделать этот файл и описать все то, что лежит внутри проекта. Потому что я уже не помню.

Он создал папку docs и внутри 3 файла. Один про архитектуру и файлы, другой про изменения, третий про статус проекта.

  • architecture — тут лежит описание всех технологий и описание работы файлов. Я хоть могу понять и вспомнить, что я там натворил с Cursor.
  • changelog — здесь последние изменения в проекте, что и какого числа было изменено.
  • project_status — здесь план по проекту и отметки чебоксами, что выполнено, что осталось

План по работе

Моя проблема в том, что я хочу сделать из этого менеджера гребаный комбайн многих функций. Каждая функция с виду простая, но когда начинаешь зарываться в детали, все становится сложнее.

Моя цель сейчас, отсечь лишнее и оставить какую-то одну функцию, проработать её, закончить и выложить. на сервер, чтобы она работала автоматически. Чтобы сработало хоть небольшое позитивное подкрепление.

Потому что я много часов потратил на разработку всего этого функционала без результата. Поработал, словил дофамина, в результате — пшик.

Описание функционала

С нейронками написание кода уходит на второй план. В большей части ботов я не знаю, что в коде. Это наводит нас на важную работу — принятие решений.

Нужно решить, что, как должно работать. Определить важный и неважный функционал.

Этим и займемся.

Создаем отдельный файл и начинаем туда описывать всю свою работу с клиентами. Исходя из этого текста мы в дальнейшем сможем понять, что, где и как нам нужно автоматизировать.

После этого надо было собрать в кучу промты ассистентов из openai. Чтобы claude code видел все, что я сделал по проекту.

Я создал отдельный файл и указал там все промпты ассистентов.

Определение первой функции

Надо определиться, какая функция должна быть первой.

Самая важная функция — функция напоминания. Именно там лежат деньги: клиент вспомнил обо мне → понял, что хотел мне передать работу → заказ → деньги.

Но это конечная цель ИИ-менеджера, конечный результат.

Глобально я разделил бы работу нашего менеджера на 3 части:

  1. Добавление в базу с анализом
  2. Проверка, кому надо написать
  3. Формирование и отправка сообщения
  4. Фоновый анализ диалогов, которые обновились

Первый шаг: добавление контактов из телеграма в ноушн.

У меня сейчас много функций анализа диалога лежат отдельно.

Хотя их можно объединить изучение диалога:

  1. Берем Username
  2. Берем имя аккаунта
  3. Берем дату последнего сообщения
  4. Определяем форма обращения
  5. Проверяем на игнор
  6. Анализируем первые и последние 20 сообщений
  7. Понимаем work tag, по какой теме работали
  8. Смотрим результат работы, как поработали
  9. Определяем статус работы
  10. Составляем короткий саммари диалога для поля «доп.инфа»
  11. Фиксим и упрощаем имя

Это большой список, но лучше четко определить спектр работ на первый этап, оттестировать все функции и собрать их. А не дробить весь проект на кучу функций и ломать голову, как их потом соединять.

Разработка анализа диалогов

Описываю всю ситуацию claude code в режиме планирования, прикладывая ссылку на этот же кейс.

Он все проанализировал и предложил план

Я прочитал план, он все правильно понял и что важно, действительно прочитал кейс. Это можно понять по определению общих задач бота.

В терминале он предложил ответить на пару вопросов, как будем двигаться. Как по мне, здесь он промахнулся, потому что я описал, что я хочу: начать постепенно делать его и первая задача — анализ. А он в первом же вопросе про приоритет делает несколько вариантов, в котором есть единый пайплайн.

Я уже чую, что пахнет багами и потерей нервов, проверяю, все ли закомитил в git и отвечаю на вопросы, чтобы сделать первую попытку.

Продолжение следует. Я продложаю работать над проектом. Кейс заполняется по ходу работы

Он расписал план и пошел претворять его в жизнь

Составил список todo и идет работать по нему

Он работал безостановочно 14 минут и интегрировал все недостающие модули