Cp automation
Автоматизирует рутину контент-продюсера — сбор статистики, обработку заявок, выдачу материалов, уведомления, перенос данных между сервисами, подготовку отчётов — и начинает с расчёта окупаемости: процесс сначала описывается словами и считается в часах, и только потом собирается сценарий. Даёт архитектуру «триггер → условие → действие → обработка ошибок → уведомление» с обязательным блоком повторов и защиты от дублей, который в самодельных автоматизациях отсутствует чаще всего. Знает реальность инструментов в РФ: self-hosted платформа как основной путь и границы её лицензии, проблемы оплаты зарубежных облачных сервисов, российские платформы, конструкторы ботов. Отдельно разбирает автоматизацию публикации по площадкам и почему полная автоматизация публикации вредит. Сценарий диалога и тексты бота пишет cp-bot, здесь — интеграции и передача данных. Use when the user wants to automate a workflow, connect services, build a no-code scenario, schedule publishing, or collect stats automatically. Триггеры — «автоматизация», «n8n», «интеграция сервисов», «сценарий без кода», «вебхук», «автопостинг», «перенести данные между сервисами», «отчёт автоматом», «собирать статистику автоматически», «связать формы и CRM».From its SKILL.md
npx -y skills add imMeeto/midi-skills --skill cp-automationAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
33.0 KB, as published. Nobody here has run it
cp-automation · Автоматизация процессов
Автоматизация окупается не тем, что «сделано красиво», а сэкономленными часами. Поэтому скилл начинает с арифметики и половину задач закрывает ответом «не автоматизируй, делай руками».
Вторая половина работы — сделать так, чтобы сценарий не разваливался молча. Самодельная автоматизация обычно работает две недели, потом падает на первой ошибке API, и никто об этом не узнаёт.
Когда не этот скилл
- Нужен сценарий диалога, тексты узлов, прогрев, триггер-слова, deeplink →
cp-bot. Здесь — интеграции, вебхуки, передача данных, регламент ошибок. - Нужна отправка писем, доставляемость, SPF и DMARC →
cp-email. - Нужно собрать сайт, настроить хостинг и формы →
cp-web. Нужен разбор самих чисел, а не их сбор →cp-analytics,cp-analytics-cross. - Нужен правовой вердикт по обработке персональных данных →
cp-compliance.
Контекст
Читай из context/: 09-tech-ru.md §6 (что из автоматизации доступно в РФ и на каких условиях), §7 (Telegram Bot API), §2 (ограничения API Вебмастера и Метрики — они определяют расписание выгрузок), §8 (платежи); 03-legal-ru.md §7 (персональные данные, локализация); 02-metrics.md (что вообще выгружается по площадкам); 07-evidence.md. Профиль бренда — brands/<slug>/: assets.md (площадки, сервисы, доступы), offer.md (что продаётся — от этого зависит обработка заявок), rules.md (кто согласовывает публикации). Не нашлось — скажи одной строкой и работай по врезке ниже, факты спрашивай, не выдумывай.
Врезка констант
Правило окупаемости. Сначала процесс описывается словами и считается в часах, потом автоматизируется. Автоматизация процесса, который делается раз в месяц за 10 минут, не окупается никогда: экономия — два часа в год, сборка и поддержка съедят больше.
Обязательные части любого сценария: триггер, условие, действие, обработка ошибок, уведомление о сбое. Первые три есть у всех, последние две — почти ни у кого. Это и есть главная дыра.
Инструменты в РФ (уровень A по лицензиям и доступности, 09-tech-ru.md §6).
| Инструмент | Состояние |
|---|---|
| Self-hosted платформа автоматизации (n8n) | лицензия Sustainable Use: разрешено использование, копирование и создание производных для собственных внутренних бизнес-целей, а также личное и некоммерческое применение. Файлы с .ee. в имени требуют Enterprise-лицензии. Свой инстанс под свои задачи — бесплатно и легально. Продажа доступа к своему инстансу клиентам — серая зона, читать текст лицензии перед тем, как продавать. Основной рабочий путь |
| Облачная версия того же сервиса | оплата российскими картами не проходит |
| Зарубежные облачные платформы автоматизации | прямая оплата российской картой недоступна, в клиентские проекты не закладывать |
| Российские платформы автоматизации | существуют, оплата в рублях, приоритет российских интеграций. Конкретные цены и наборы интеграций проверять на дату |
| Конструкторы ботов и автоворонок | российские сервисы с визуальным конструктором, сегментацией, мини-CRM, интеграциями с российскими платёжками. Тарифы обычно по числу подписчиков. Цифры проверять на дату |
Цены не называются из памяти. Ни тарифы платформ, ни стоимость серверов, ни комиссии платёжек. Нужна цифра — сверить на сайте сервиса на текущую дату.
Ограничения источников данных, от которых зависит расписание. API Мониторинга запросов Яндекс.Вебмастера хранит 2 недели истории и не отдаёт отдельный день внутри диапазона — историю копишь сам. Logs API Метрики отдаёт данные за предыдущий день. Значит, «отчёт за сегодня» технически невозможен, а выгрузка позиций реже чем раз в две недели означает дыры в истории навсегда.
Вход
Одним блоком.
- Какой процесс автоматизируем — словами, по шагам, как он идёт сейчас.
- Как часто он выполняется и сколько минут занимает каждый раз.
- Кто его делает и что случается, если он не сделан.
- Какие сервисы участвуют и есть ли к ним доступ по API.
- Проходят ли через процесс персональные данные.
- Кто будет чинить сценарий, когда он сломается. Если никто — это стоп-сигнал.
- Где будет жить автоматизация: свой сервер, российская платформа, конструктор ботов.
Процесс
1. Опиши процесс словами
По шагам, с ответственным на каждом шаге и с местом, где шаг ломается. Пока процесс не описан — автоматизировать нечего: автоматизация неописанного хаоса даёт быстрый хаос.
Побочный эффект: часть шагов на этом этапе отваливается как ненужная. Это лучший результат из возможных — процесс упростился и ничего не пришлось собирать.
2. Посчитай окупаемость
Часы в месяц сейчас = частота в месяц × длительность одного прохода
Экономия в месяц = часы сейчас − часы после автоматизации (не ноль: остаётся контроль)
Окупаемость (мес.) = часы на сборку ÷ (экономия в месяц − часы на поддержку в месяц)
Знаменатель ноль или меньше — сценарий не окупается никогда, так и скажи. Окупаемость больше года — почти всегда «нет»: за год изменятся и сервисы, и процесс.
Считать честно: поддержка не равна нулю. API меняются, токены протухают, форматы данных плывут.
Что перевешивает арифметику. Автоматизировать стоит и невыгодный по часам процесс, если: ошибка в нём дорого стоит (потерянная заявка, пропущенный дедлайн маркировки); процесс должен идти ночью и в выходные; данные исчезают, если их не забрать вовремя (см. 2 недели у Вебмастера).
3. Выбери уровень
| Уровень | Когда | Цена вопроса |
|---|---|---|
| Не автоматизировать | редкий процесс, меняется каждый раз, творческий | ноль |
| Шаблон и чек-лист | процесс редкий, но ошибки дорогие | час на составление |
| Готовая встроенная интеграция между двумя сервисами | связка типовая | настройка в интерфейсе |
| Сценарий на платформе автоматизации | 3+ сервиса, условия, расписание | сборка плюс поддержка |
| Свой код | нестандартная логика, большие объёмы, особые требования к данным | нужен разработчик и дальше |
Правило: не поднимай уровень, пока предыдущий не уперся в потолок.
4. Собери по архитектуре
Блок ниже. Обработка ошибок пишется сразу, а не «потом, когда заработает». Потом не наступает.
5. Проверь на боевых данных и оставь наблюдение
Тест на реальном примере, тест на пустом ответе, тест на ошибке сервиса. Дальше — журнал выполнений и уведомление о сбое в тот канал, который реально читают.
Что автоматизируется в работе контент-продюсера
| Процесс | Что автоматизируется | Что остаётся человеку |
|---|---|---|
| Сбор статистики | регулярная выгрузка из API площадок и счётчиков в одну таблицу или базу | интерпретация, выводы, решения |
| Публикация по расписанию | постановка в очередь, публикация там, где есть API; напоминание там, где его нет | адаптация под площадку, первый час реакции, комплаенс |
| Обработка заявок | приём из формы, запись в базу, уведомление ответственному, автоответ | ответ по сути, квалификация, продажа |
| Выдача материалов | отправка файла после подтверждённого согласия, метка источника | сам материал → cp-lead-magnet |
| Уведомления | новая заявка, оплата, ошибка сценария, приближение дедлайна | решение по уведомлению |
| Перенос данных между сервисами | форма → база → CRM → рассылка, с сопоставлением полей | правила сопоставления, разбор конфликтов |
| Подготовка отчётов | сбор чисел, расчёт, сборка таблицы, отправка по расписанию | текст выводов, объяснение аномалий → cp-analytics-cross |
| Рутина архива | переименование, раскладка файлов, резервные копии, чистка мусора | что вообще хранить |
Что не автоматизируется никогда: решение о публикации, ответ на негатив, правовой вердикт по креативу, разбор причин падения охватов, общение с клиентом по существу.
Архитектура сценария
ТРИГГЕР → УСЛОВИЕ → ДЕЙСТВИЕ → ПРОВЕРКА РЕЗУЛЬТАТА
│
успех ──────┴────── ошибка
│ │
логирование ПОВТОР (N раз, с паузой)
│ │
│ всё ещё ошибка
│ │
└──── УВЕДОМЛЕНИЕ ───┘
Триггер. Три вида: расписание, событие (вебхук, новая строка, новое письмо), ручной запуск. Расписание ставится под ограничения источника: смысла ходить в Logs API Метрики за данными сегодняшнего дня нет — их там не будет.
Условие. Отсекает лишнее как можно раньше: дубли, пустые данные, тест, служебные записи. Дешевле не делать, чем делать и откатывать.
Действие. Одно действие — один шаг. Шаг, который «отправляет письмо, пишет в базу и создаёт задачу», при падении оставляет систему в непонятном состоянии.
Проверка результата. Не «код ответа 200» и на этом всё. Проверять, что вернулось то, что ожидалось: непустое, нужного типа, с нужными полями. Сервис может ответить успехом и не сделать ничего.
Обработка ошибок и повторов — обязательный блок.
| Механика | Как делать |
|---|---|
| Повтор с паузой | не сразу и не бесконечно: 2–3 попытки с растущим интервалом. Мгновенный повтор упирается в ту же временную ошибку и добивает лимит запросов |
| Разделение ошибок | временные (таймаут, лимит частоты, 5xx) — повторяем; постоянные (неверный токен, 4xx, невалидные данные) — повторять бесполезно, сразу уведомление |
| Защита от дублей | у каждой обрабатываемой записи есть ключ (идентификатор заявки, номер сообщения, дата+URL). Перед действием проверяется, не обработан ли ключ. Без этого повтор создаёт вторую заявку и второе письмо человеку |
| Таймаут | у каждого внешнего вызова. Без него сценарий висит и блокирует очередь |
| Уважение лимитов API | пауза между вызовами, разбиение на пачки. Лимиты — по документации сервиса на дату |
| Отстойник для сбоев | необработанное складывается отдельно с текстом ошибки — чтобы вернуть в работу, а не потерять |
| Уведомление о сбое | в канал, который читают: сообщение в мессенджер ответственному, а не запись в лог, куда никто не заходит. В тексте: какой сценарий, на каком шаге, какая запись, какая ошибка |
| Журнал выполнений | видно, что сценарий отработал. Отдельно ставится проверка «сценарий вообще запускался?» — молчащая автоматизация выглядит так же, как исправная |
Правило одного сценария: одна задача — один сценарий. Комбайн «на все случаи» невозможно ни отладить, ни починить.
Безопасность
| Правило | Как выглядит |
|---|---|
| Ключи и токены — в хранилище учётных данных платформы или в переменных окружения | не в теле узла текстом, не в коде, не в репозитории, не в переписке |
| Права по минимуму | токен только на нужные методы и только на нужный объект. Токен «на всё» — потому что «так проще» — типовая причина крупных утечек |
| Отдельные учётные записи для интеграций | не личный аккаунт владельца. Ушёл человек — интеграция не падает и доступ не утекает |
| Ротация | токены и пароли меняются по регламенту и немедленно при подозрении. Утёкший ключ считается скомпрометированным, а не «вроде никто не видел» |
| Резервные копии сценариев | экспорт конфигураций, хранится отдельно. Упавший сервер не должен уносить месяц работы |
| Доступ к самой платформе | не открытый в интернет админ-интерфейс без пароля и второго фактора. Свой инстанс — своя ответственность за его защиту |
| Логи без чувствительных данных | в журнал не пишутся пароли, токены, полные персональные данные |
Правовое
Информация на 04.08.2026, не юридическая консультация; применимость определяет юрист. Разбор ситуации — cp-compliance.
Автоматизация, через которую проходят персональные данные, — это обработка персональных данных. Сценарий, перекладывающий заявки из формы в таблицу и в CRM, — часть системы обработки, а не «просто скрипт».
Отсюда:
- уведомление в РКН до начала обработки, политика, раздельные согласия — как и для сайта и бота;
- локализация (ч. 5 ст. 18 152-ФЗ): запись, хранение и извлечение данных граждан РФ — в базах на территории РФ. Зарубежный сервис в цепочке — это риск, даже если он «только пересылает»: пересылка обычно сопровождается хранением;
- трансграничная передача (ст. 12) — отдельное уведомление до начала передачи;
- утечка (ч. 3.1 ст. 21) — уведомления в РКН 24 часа и 72 часа; отвечает оператор, даже если инцидент у подрядчика или у платформы.
Практический вывод: первичная база — российская; зарубежные сервисы, если без них никак, получают обезличенные или агрегированные данные, а не контакты. Self-hosted решение на российском сервере снимает часть вопроса, потому что данные не покидают контур.
Автоматическая публикация не снимает обязанностей по рекламе. Если сценарий публикует рекламный креатив, требования те же: слово «реклама», данные рекламодателя с ИНН, erid, полученный до публикации. Автопостинг, выкладывающий креатив без erid, — это состав нарушения, а не техническая накладка.
Автоматизация публикации
Что реально автоматизируется — проверяется по документации площадки на дату. Состав методов, права токенов и сами условия доступа меняются; из памяти не берутся.
| Площадка | Обычно автоматизируется | Обычно руками |
|---|---|---|
| Telegram | публикация в канал ботом-администратором через Bot API, отложенная публикация нативными средствами | обсуждение под постом, реакция на комментарии |
| VK | публикация и выгрузка статистики через API (stats.get для чисел; состав методов сверять по документации) | клипы и сторис — проверять доступность методов, ответы в комментариях |
| Дзен, RuTube, YouTube | загрузка и выгрузка статистики там, где есть API — проверять наличие и условия на дату | обложка, заголовок под ленту, ответы |
| Instagram (проект Meta Platforms Inc., деятельность которой запрещена на территории РФ) | публикация через Graph API с известными расхождениями с приложением (например, лимит слайдов карусели) | всё остальное; реклама на площадке запрещена |
| Сайт и рассылка | публикация, отправка, сегментация | тексты и решение об отправке |
Почему полная автоматизация публикации часто вредит.
- Правило оригинальности площадок. Один и тот же материал, разосланный конвейером во все каналы без адаптации, площадки различают и режут. Адаптация — не украшение, это условие показа. Что менять под каждую площадку →
cp-platform-fit. - Комплаенс проходит человек. Реклама или нет, нужен ли erid, можно ли размещать — решение принимается до публикации. Автомат его не принимает.
- Первый час решает. Ответы на первые комментарии влияют на дальнейшую жизнь публикации. Робот, выложивший пост в три ночи, оставляет его без хозяина.
- Ошибка тиражируется мгновенно. Опечатка в шаблоне уходит на пять площадок одновременно, и удалять придётся пять раз.
- Кросс-постинг с чужими водяными знаками и вертикалью не из той площадки — самый узнаваемый признак конвейера.
Рабочая граница: автоматизируй подготовку и доставку — сборка очереди, напоминания, загрузка файлов, простановка меток, сбор статистики после публикации. Оставляй человеку решение о публикации и первую реакцию. Это даёт большую часть экономии без цены за конвейер.
Выход
ПРОЦЕСС: <название>
как идёт сейчас: <шаги словами, кто делает, где ломается>
ОКУПАЕМОСТЬ
частота: <N раз в месяц> × <M минут> = <часы в месяц>
после автоматизации остаётся: <часы>
сборка: <часы> · поддержка: <часы в месяц>
окупаемость: <месяцев> → ВЕРДИКТ: <автоматизируем / не окупается, делаем руками>
УРОВЕНЬ РЕШЕНИЯ
<не автоматизировать / чек-лист / встроенная интеграция / сценарий на платформе / код>
где живёт: <свой сервер / российская платформа / конструктор> — почему
СЦЕНАРИЙ
триггер: <что и когда, с учётом ограничений источника>
условие: <что отсекаем>
действия: <шаг 1 → шаг 2 → …>
проверка: <что считаем успехом, кроме кода ответа>
ошибки: <повторы N с паузой; временные против постоянных; ключ защиты от дублей; отстойник>
уведомление: <куда, кому, с каким текстом>
журнал: <где смотреть, кто и как замечает, что сценарий не запускался>
ДОСТУПЫ И СЕКРЕТЫ
<что где хранится, у какого токена какие права, кто владелец>
ПРАВОВОЕ
ПДн в цепочке: <да / нет> → <локализация, согласия, уведомление РКН> → cp-compliance
ПРОВЕРИТЬ НА ДАТУ
<лимиты и методы API площадок, тарифы платформ, условия лицензии>
Чек-лист перед выдачей
- Процесс описан словами до того, как предложен сценарий.
- Окупаемость посчитана; если не окупается — так и написано, сценарий не собирается.
- В сценарии есть все пять частей, включая обработку ошибок и уведомление.
- Есть защита от дублей по ключу, есть разделение временных и постоянных ошибок.
- Есть ответ на вопрос «как мы узнаем, что сценарий вообще перестал запускаться».
- Секреты не в теле сценария, права токенов минимальны, названы владельцы доступов.
- Названо, кто чинит сценарий при поломке.
- Расписание согласовано с ограничениями источников (T-1 у Logs API, 2 недели у Вебмастера).
- Правовой блок пройден: где лежат персональные данные и нет ли зарубежного сервиса в цепочке.
- По автопубликации разведено: что автомат, что человек, и почему.
- Ни одной цены и ни одного лимита API не названо из памяти.
Красные линии
- Не автоматизировать неописанный процесс. Сначала слова и часы, потом сценарий.
- Не собирать сценарий без обработки ошибок и уведомления о сбое. Молчащая автоматизация хуже её отсутствия: на неё рассчитывают.
- Не хранить токены и ключи в теле сценария, в коде и в репозитории.
- Не пропускать персональные данные граждан РФ через зарубежные сервисы ради удобства интеграции.
- Не называть цен, тарифов и лимитов API из памяти — только после проверки на дату.
- Не продавать доступ к своему self-hosted инстансу, не прочитав текст лицензии: это серая зона, а не «все так делают».
- Не автоматизировать решение о публикации и комплаенс. Erid и вердикт «реклама или нет» — человек.
- Не делать конвейерную рассылку одного материала во все площадки без адаптации. Правило оригинальности площадок — не формальность.
- Не строить сценарий, который некому чинить. Автоматизация без владельца — отложенная авария.