Рабочий день 25.09: control plane, продажи и фиксы
День прошёл между AgentChat, продажами, крипто-сигналами и точечными продуктами: чинили control plane, рассылки, регистрацию и уведомления.
Фокус дня
Куда ушло внимание за день — по объёму переписки в AgentChat, 140 сообщений всего.
- AgentChat — 26%
- SalesMachine — 23%
- Crypto Loop — 17%
- Challenge — 12%
- Pilot — 7%
- Школа — 6%
- PULSE — 4%
- Music — 3%
- Mentor — 3%
AgentChat
AgentChat — это наш мобильный рабочий интерфейс для общения с AI-агентами и управления задачами, сессиями и серверными действиями. Сегодня он снова был центральным местом управления: через него мы разбирали MCP-контур, планирование, approve-процессы и контрольные выполнения.
Самое заметное — мы продвинули личный MCP AgentChat как control plane. Сначала шёл режим plan only: агент разбирал текущую схему, потом мы зафиксировали обязательные изменения — OAuth для personal MCP с сохранением legacy Bearer, immutable plan version/hash, отдельный публичный cancel_run поверх внутреннего retry/kill и правило, что AutoSkills создаются или обновляются только после повторных успешных execution, а не на одном PLAN ONLY. После approve агент начал реализацию control API и клиента MCP, переписал mcp-server/index.js, перевёл submit_task и approve_plan в фон и показал, что MCP перезапущен и живой с 14 tools. Затем был e2e-проход: plan_only давал awaiting_approval и hash без трогания файла, approve запускал выполнение, повторный approve отрабатывал как idempotent replay, чужой hash давал hash_mismatch, а cancel_run отрабатывал на терминальном запуске.
Был ещё отдельный короткий MCP e2e: в index.html добавили HTML-комментарий <!-- MCP-CP-E2E --> перед </body>, сохранили бэкап и подтвердили readback без рестарта. Потом повторили такой же сценарий для MCP-CP-E2E2 уже по immutable snapshot плана: агент вставил комментарий, проверил readback и отдельно отметил, что сервисы не трогал. В конце дня была и более широкая попытка сделать AgentChat единым control plane для инфраструктуры — агент собрал read-only картину, но в одном из заходов ему специально оставили режим без изменений, так что работа там шла строго по границам плана.
Рекомендация на завтра: продолжать доводить MCP-контур до полностью предсказуемого control plane: закрепить пути утверждения, readback и отмены так, чтобы план, выполнение и откат были одинаково прозрачны для телефона и сервера.
SalesMachine
SalesMachine — это наш контур для работы с лидами и продажными handoff-сценариями: он помогает разбирать ответы, строить follow-up и не терять живые контакты. Сегодня мы занимались именно качеством коммуникации и правилами отправки, а не только объёмом.
По фактам дня у нас был живой кейс Lumerika: агент достал полный текст AI-сообщения, показал короткий аудит сайта и затем мы решили, что сам аудит клиенту можно отправлять, но в более аккуратном текстовом виде. После этого в SalesMachine пошла серия правок: сначала мы обсуждали, что делать с тезисами аудита и как оформить их для клиента, потом агент отправил пакет из 10 писем. Первый набор упёрся в blocked_domain на mail.ru/bk.ru, после чего пакет пересобрали на разрешённые домены yandex/gmail и успешно отправили 10/10. Это уже не просто «рассылка», а отладка рабочих правил доставки.
Затем мы отдельно проговорили pacing. Идея с фиксированными 12 секундами между письмами показалась слишком «ботовой», и мы попросили перепроверить, как делают нормальную рассылку. После этого агент внедрил новые правила: random delay 90–240 секунд, cluster-паузы каждые 4 письма, safety floor 90 секунд, least-used ротацию ящиков для cold-send и sticky-логику для reply/audit в треде. То есть сегодня мы не наращивали шум, а наоборот сделали отправку более похожей на человеческую и более устойчивой к блокировкам.
Рекомендация на завтра: продолжать не «жать объём», а закреплять качество отправки и реакцию на доменные блоки, чтобы SalesMachine оставался живым рабочим каналом, а не просто очередным спам-двигателем.
Crypto Loop
Crypto Loop — это наш контур по крипто-сигналам и ручному входу по правилам стратегии, где решения принимаются по факту сигнала и текущего состояния позиции. Сегодня здесь было много входов, проверок и отказов от лишних действий.
Мы открывали позиции по подтверждённым сигналам: агент вошёл в ONDOUSDT Long по TrendLock на треть баланса, затем отдельно открыл TAOUSDT Long также по TrendLock. В обоих случаях он фиксировал readback, размер, плечо и параметры входа. При этом были и осознанные отказы от повторного входа: по XRP агент сначала проверил, открыта ли позиция, и отказался докупать, потому что монета уже была в портфеле. Это важный признак дисциплины — не дублировать один и тот же сигнал ради активности.
Дальше были ещё сигналы по XLM, SOL и TAO, а также разборы по ReVert и Breakout. Там агент несколько раз не входил, потому что чек-лист в момент проверки уже не проходил: где-то RSI остывал, где-то цена уже возвращалась внутрь диапазона, где-то breakout-сценарий не был подтверждён по закрытию. То есть день прошёл не только в открытии позиций, но и в постоянной сверке условий с реальным рынком. Отдельно агент зафиксировал правило дубликата сигнала в скилле, чтобы дальше не докупать в ту же монету без необходимости.
Рекомендация на завтра: держать тот же режим — входить только по полному чек-листу и так же спокойно отказываться, если условия уже распались; это здесь важнее количества сделок.
Challenge
Challenge — это проект ARENA, «Арена переговоров» для хакатона ЛЦТ 2026, который мы ведём как конкурсный продукт до финальной сдачи. Сегодня вокруг него была большая и довольно прикладная работа: аудит, smoke, материалы и подготовка к защите.
Сначала агент принял проект под управление и начал читать полный запрос, код, production, SourceCraft и официальное ТЗ. Потом пошёл валидационный цикл: тесты сначала падали из-за PYTHONPATH, затем был E2E и поиск шаблона презентации. В одном месте обнаружили критичную проблему с turn/result, после чего агент продолжил доводить smoke и материалы. Позже пришёл отчёт, что smoke зелёный: 27 тестов, procurement → outcome, sales/custom роли, mock fallback, demo/admin/health 200 и SourceCraft main на конкретном коммите.
Самая честная часть дня — про презентацию. Агент прямо сказал, что без визуального рендера слайдов он отдал финал «вслепую» и что это не ок для кабинета. После этого он не стал дальше лезть в саму презентацию, а предложил делегировать её другому агенту, который лучше видит изображения. То есть по ARENA сегодня не просто что-то починили, а ещё и правильно ограничили свою зону ответственности: код, smoke и чек-листы — да, финальную визуальную упаковку — уже отдельным шагом.
Рекомендация на завтра: завершать конкурсную упаковку только после нормальной визуальной проверки презентации и кабинета, а не пытаться закрыть финал одним лишь кодом.
Pilot
Pilot у нас отвечает за организационные и событийные действия, где важны подтверждение, маршрут и правильное время прибытия. Сегодня здесь был один конкретный кейс с нетворкингом на митапе SellWell.
Сначала агент открыл TimePad и заполнил черновик регистрации без Submit, чтобы ничего не отправить раньше времени. Потом после подтверждения он продолжил оформление, проверил статус submitted, внешний readback и evidence — и честно увидел, что регистрация выглядит сомнительно, потому что URL всё ещё был #register, а письма не приходили. Параллельно агент помог посчитать время в пути от Южный 7Б до Шарикоподшипниковской 4к4А: получилось около 1 часа 8 минут на общественном транспорте, с запасом 1 час 20–1 час 30. После этого мы отдельно уточнили программу и зафиксировали важную деталь: для нас в таких событиях интересует не старт, а именно время нетворкинга, здесь это 18:30.
Под конец агент обновил календарь под нетворкинг 18:30 и зафиксировал правило в скилле и витрине, чтобы дальше сессии и агенты ориентировались на нужную точку времени, а не на общий старт события.
Рекомендация на завтра: продолжать вести события через точку нетворкинга и подтверждать фактический статус регистрации, а не полагаться только на статус в интерфейсе.
Школа
Школа — это наш блок с короткими служебными сессиями и учебными проверками, где сегодня было совсем мало активности. По сути, это был тихий день без заметной содержательной работы.
По сессиям Sol и Sol2 агент упирался в лимит использования и сразу отдавал стандартное сообщение об исчерпанной квоте. В Sol3 ничего не меняли: после короткого приветствия мы прямо сказали, что сейчас ничего не делаем, и агент спокойно остался в режиме ожидания.
Рекомендация на завтра: когда лимиты или контекст не позволяют работать, лучше сразу оставлять такие сессии на паузе, чем пытаться выжать из них действие ради действия.
PULSE
PULSE — это наша персональная AI-система энергии с чек-инами, привычками и уведомлениями. Сегодня вокруг неё было только обслуживание доступа и уборка лишней путаницы, а не новая функциональность.
Сначала агент проверял, подключился ли mentor, и выяснил, что OAuth-контур сначала не доехал до конца: статус-файла не было, а в канале и через API оставался pulse. Потом он всё же вшил mentor-токен и подтвердил, что mentor подключён живым API. После этого мы отдельно попросили убрать YouTube-доступ Pulse везде, чтобы он не путался с mentor, и агент почистил бэкап токенов, метки в карточке и status-файл. То есть сегодня PULSE не развивали по фичам, а просто навели порядок в идентичностях и доступах.
Music
Music — это наш PWA для треков и альбомов, где личное «Избранное» можно показать как отдельную витрину. Сегодня мы работали не с музыкой как таковой, а с тем, как её красиво и безопасно публиковать.
По скриншотам и коду агент предложил и реализовал вариант «виртуального зеркала» для подборки «Избранное Олега». Мы одобрили этот путь, а затем отдельно решили добавить кнопку «Поделиться», чтобы подборка открывалась по ссылке и становилась публичной витриной любимых треков. Агент проверил бэкенд, шаблоны, HTML и клик по подборке, затем сделал readback и даже обновил витрину через автоскилл. Это маленький, но очень практичный шаг: личная коллекция перестаёт быть просто списком и становится публичным входом в наш музыкальный вкус.
Mentor
Mentor — это наш контур для ежедневных текстов, уведомлений и режима паузы, чтобы ничего не улетало, когда контент устарел. Сегодня задача была именно про контроль: не про генерацию нового, а про то, чтобы старое не мешало.
Сначала мы попросили поставить на паузу ежедневную генерацию и уведомления, чтобы текст временно ничего не отправлял. Агент разобрался, где живёт автоматизация, и начал вносить паузу в генерацию, кнопку в Mentor Reels и синхронизацию с Courier. Затем в процессе выяснилось, что POST паузы отдаёт 500, вероятно из-за прав на флаг-файл, и агент пошёл чинить запись флага и обновлять скилл. В конце дня он зафиксировал, что контур «Reels за вчера» поддаётся паузе и дальнейшей синхронизации, а мы получили возможность спокойно остановить рассылку, пока текст неактуален.
Итог дня
День вышел очень «операторским»: мы не столько строили новые витрины, сколько доводили поведение живых контуров до предсказуемости — AgentChat как control plane, SalesMachine как аккуратную отправку, Mentor и PULSE как управляемые системы, а не шумящие автопотоки. Параллельно были и прикладные штуки — регистрация на событие, музыкальная витрина и крипто-входы по правилам.
Главная общая линия дня — меньше хаоса, больше явных правил и readback. Там, где что-то можно было сломать или запутать, мы либо зафиксировали паузу, либо перешли на immutable-план, либо вообще отказались от лишнего действия.
Если вам нужно посмотреть, как мы подходим к таким рабочим контурам на уровне продукта, вот внутренняя точка входа: SalesMachine.
Рассылка новых статей
Новые статьи — на email. Push приходит в приложение Blog. Telegram-рассылка отключена.
Чтобы получать статьи на email, сначала привяжите email в личном кабинете.
Уведомления в приложении: blog.olehov.com → колокольчик.
Получайте новые статьи и разборы
Подпишитесь через email — без спама, только новые материалы.