← Все статьи

Оркестрация: план в много площадок

Оркестрация: план в много площадок

К этому моменту у тебя уже есть пара скилов под отдельные дела: один умеет постить в Telegram, другой в VK. По отдельности удобно. Но как только публикаций становится больше одной, начинается рутина: открыл ассистента, запустил скил под Телеграм, дождался, переключился, запустил скил под ВэКа, дождался снова. И так по кругу для каждого поста.

Хуже того, в этой ручной беготне легко ошибиться. Запустил, отвлёкся, не понял, ушёл пост или нет - и на всякий случай запустил ещё раз. В итоге подписчики видят дубль. Или наоборот: показалось, что отправил, а на самом деле нет. Чем больше площадок и постов, тем выше цена этой невнимательности.

Напрашивается мысль: раз каждый отдельный шаг уже автоматизирован скилом, почему я всё ещё дирижирую ими вручную? Давай сделаем скил, который дирижирует другими скилами. Один план на входе - и контент сам расходится туда, куда нужно, без дублей.

В чём идея

Оркестратор - это скил поверх скилов. Сам он ничего не публикует. Его работа - взять единый план и для каждой строки вызвать нужный под-скил постинга: для Telegram один, для VK другой. Грязную работу с API каждой площадки делают под-скилы, а оркестратор только дирижирует.

Такое разделение - не педантизм, а удобство. Логика плана и порядок действий живут в одном месте. Знание о конкретной площадке - её API, формат токена, особенности - живёт в её под-скиле. Появилась новая площадка? Добавляешь один под-скил, а оркестратор и план не трогаешь вообще. Меняется API Телеграма? Правишь только его под-скил, остальное стоит как стояло.

План тут - обычная таблица или файл: одна строка - одна публикация. В строке текст, список площадок и, главное, уникальный ключ (id). Этот ключ - сердце второй важной идеи.

Вторая идея - идемпотентность. Слово страшное, смысл простой: запусти оркестратор хоть десять раз - результат один и тот же, дублей не будет. Достигается это логом. Перед тем как опубликовать, оркестратор смотрит: пара “ключ поста плюс площадка” уже в логе? Значит, этот пост на эту площадку уже ушёл - пропускаем. Опубликовал - дописал в лог. Так повторный запуск спокойно проходит по плану и ничего не задваивает.

Почему ключом служит id, а не текст поста? Потому что текст ты можешь поправить - опечатку, ссылку - и это не повод публиковать заново. Защита от дублей держится на смысловом ключе публикации. Нужен по-настоящему новый пост - дай ему новый id. Это и логично, и предсказуемо.

И ещё одна мелочь, которая бережёт нервы: одна упавшая площадка не должна валить весь прогон. Если VK ответил ошибкой, Telegram всё равно должен получить свой пост. Поэтому оркестратор ловит сбои построчно и в конце отдаёт честную сводку: что ушло, что пропущено как дубль, что упало.

Как себе сделать

Не собирай оркестратор руками. Отдай задачу своему ассистенту - Claude Code, Codex, Cursor, Gemini, любому. Он сам разберётся, куда положить файл, как читать план и как звать под-скилы. Если под-скилов tg-post и vk-post ещё нет - попроси ассистента создать их тем же способом; токены бота и сообщества придётся вписать один раз вручную. Просто скопируй промпт:

Создай мне скил-оркестратор, который из одного плана раскидывает посты по площадкам (Telegram, VK).
Срабатывай на просьбы вроде "опубликуй везде", "разложи по площадкам", "запости в телеграм и вк из плана".
План - это таблица или файл, где строка = одна публикация: уникальный ключ, текст, список площадок, ссылка.
Для постинга на площадку вызывай отдельный под-скил этой площадки, а не лезь в её API напрямую.
Сделай идемпотентность: перед публикацией сверяйся с логом по ключу "пост + площадка" и пропускай уже опубликованное, чтобы повтор не задваивал.
Ошибку на одной площадке лови и продолжай с остальными, а в конце отдай сводку: что ушло, что пропущено как дубль, что упало.

Как понять, что заработало: подготовь план из пары строк и попроси ассистента опубликовать всё из плана. Дождись сводки с количеством опубликованных. А теперь главная проверка - запусти ту же команду второй раз. Если оркестратор отрапортовал “ноль опубликовано, два дубля” и ничего не задвоил, значит идемпотентность работает и скил живой.

И всё. Ты только что собрал дирижёра над своими скилами - сам оркестратор ты не кодил руками, только один раз вписал токены площадок. Дальше любая рассылка по площадкам - это один план и одна фраза, а не марафон ручных запусков.

Смотреть полностью

Коротко