О Wippy

Wippy — опенсорсная среда исполнения на основе акторной модели для приложений, которые должны меняться на лету: системы автоматизации, AI-агенты, расширяемые архитектуры. Ядро создаётся один раз, а потом адаптируется сколько угодно, без пересборки и передеплоя.

Полный обзор продукта, включая то, что Wippy заменяет, чем он не является и кто его создаёт, смотрите на странице About.

В основе — акторная модель. Код работает в изолированных процессах, общающихся через сообщения. Каждый процесс управляет своим состоянием. Если что-то падает, падает изолированно. Дерево супервизоров автоматически перезапускает упавшие процессы.

local worker = process.spawn("app.workers:handler", "app:processes")
process.send(worker, "task", {id = 1, data = payload})
process.monitor(worker)

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

local db = registry.get("app.db:postgres")
local cache = registry.get("app.cache:redis")

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

Всё запускается одним файлом. Никакой оркестрации контейнеров, никакой координации сервисов. Один бинарник, один конфиг, остальное берёт на себя среда исполнения.

Полную историю о том, почему был создан Wippy, читайте в разделе Why We Built Wippy.