Как я заменил свою настройку procfile + supervisord одним приложением для macOS
Procfile, конфиги supervisord и кладбище shell-скриптов для управления dev-сервисами. Вот почему я перестал всё это поддерживать и чем пользуюсь теперь.
Articles and insights about Agata Stack.
Procfile, конфиги supervisord и кладбище shell-скриптов для управления dev-сервисами. Вот почему я перестал всё это поддерживать и чем пользуюсь теперь.
Разбор логов болезненный, потому что ошибки приходят потоком, а не историей. Таймлайн в Agata Stack превращает каждое событие, совпавшее с правилом, в цветную запись, которую можно читать как хронологию — вот как это работает и почему цветовая схема важнее, чем кажется.
Локальный HTTP API Agata Stack позволяет запускать, останавливать, перезапускать сервисы и смотреть логи с любого сервиса на вашем Mac с помощью обычной команды curl — из CI, из shell-алиаса или из AI-инструмента. Без настройки демона и без стороннего сервиса.
Заходить по SSH на staging-бокс каждый раз, когда нужно посмотреть лог, — это DevOps из 2010 года. Вот как удалённые сервисы могут жить рядом с локальными в одном статус-окне, с теми же проверками здоровья, потоками логов и правилами автоматизации.
Теперь вы можете указать Claude Code или Cursor на запущенный iOS Simulator или Android-эмулятор, делать скриншоты, выполнять команды adb shell и устанавливать сборки — всё из AI-подсказки, всё из меню-барa, без переключения приложений.
Большинству MCP-серверов нужен отдельный процесс, облачный ретранслятор или они закрывают только одну задачу. Agata Stack запускает MCP-эндпоинт прямо внутри menubar-приложения — для computer-use, mobile QA, управления сервисами и потоковой передачи логов с одного адреса localhost.
Ваш AI-помощник для кода видит ваш код. Он не видит, запущен ли на самом деле ваш dev-сервер. Вот как локальный HTTP API и MCP-эндпоинт полностью меняют эту картину.
Переключение между dev, staging и production-средами медленное и хрупкое. Профили окружений в Agata Stack меняют всё одним кликом — а API позволяет делать это и из скриптов.
Неудачная проверка состояния — это не диагноз. Вот как Agata Stack читает последние 20 строк логов, сопоставляет их с известными шаблонами ошибок и выдаёт готовую к запуску команду исправления ещё до того, как вы откроете терминал.
Большинство команд сразу берут сторонний сервис аптайма, как только им нужны проверки здоровья. У вас уже есть всё необходимое на Mac — и это не стоит ни копейки сверху.
Вы можете в реальном времени ловить медленные ответы API из своего dev-стека, не трогая ни строчки кода и не добавляя middleware. Вот как stream rules в Agata Stack работают с вашими существующими логами.
Падения шумят. Тихие сбои — нет. Вот как поймать худший тип простоя — сервис, который просто незаметно перестал работать, — раньше пользователей.
Каждый разработчик терял пять минут из-за ошибки занятого порта при запуске. Вот правило stream, которое находит EADDRINUSE в логах, убивает блокирующий порт и перезапускает сервис — автоматически, без терминала.
Agata Stack запускает локальный HTTP-сервер на порту 19877. Смотрите живые логи через SSE, управляйте сервисами и используйте самодокументируемую OpenAPI-спецификацию — всё из shell-скрипта, CI-задачи или AI-инструмента.
Одна строка ошибки, повторяющаяся 400 раз, выглядит как шум. Но это паттерн — и правильное правило может поймать его в первые 5 строк, сработать один раз и потом замолчать. Вот как работает log fingerprinting в Agata Stack.
Большинство dev-инструментов показывают логи только тех процессов, которые они сами запустили. Agata Stack может подключиться к любому пользовательскому процессу на вашем Mac — по PID — и в реальном времени стримить его вывод без перезапуска.
Упавший сервис, который никто не замечает, пока пользователь не пожалуется, — это решаемая проблема. Вот схема обнаружения сбоев и автоперезапуска, которая закончила сюрпризы в 3 часа ночи.
Четырнадцать вкладок терминала, группы окон с цветовой кодировкой — и я всё равно не мог с первого взгляда понять, какой сервис тихо умер. Вот что изменилось.