Форки
5
Звёзды
191
Issues
0
GhostVM — это легковесная виртуальная машина на Swift. Позволяет запускать изолированный код прямо в macOS-приложениях.
Что делает
GhostVM дает возможность исполнять сторонние скрипты или байт-код внутри вашего приложения на Swift. Это песочница, которая ограничивает доступ гостевого кода к основной системе. Вы получаете контроль над тем, что именно может делать запущенный скрипт.
Вайб-кодеры используют это для создания расширяемых приложений. Например, если вы пишете софт для автоматизации, GhostVM позволит пользователям писать свои плагины на безопасном уровне. Приложение остается стабильным, даже если пользовательский код написан с ошибками.
Как работает
Проект написан на чистом Swift и использует нативные механизмы изоляции macOS. Он создает среду исполнения, отделенную от основного процесса приложения. Все обращения к ресурсам системы проходят через прослойку безопасности.
Библиотека не требует тяжелых зависимостей. Она работает с системными API, что делает ее быстрой и предсказуемой. Вы передаете код в VM, она его выполняет и возвращает результат.
Кому подходит
Разработчикам SaaS-инструментов, которым нужна поддержка плагинов от пользователей.
Авторам утилит для автоматизации macOS, планирующим добавить скриптовый движок.
Тем, кто строит безопасные системы обработки данных и не хочет рисковать основным процессом.
Основные возможности
Изолированное исполнение кода внутри Swift-приложения.
Полный контроль над правами доступа гостевого скрипта.
Низкие накладные расходы на запуск виртуальной среды.
Нативная интеграция с экосистемой macOS.
Защита основного процесса от падений внутри VM.
Как установить
Добавьте пакет в ваш `Package.swift` через Swift Package Manager:
dependencies: [
.package(url: "https://github.com/groundwater/GhostVM.git", from: "0.1.0")
]После этого импортируйте модуль в нужные файлы проекта и инициализируйте экземпляр VM.
Как применить в своём продукте
GhostVM — это фундамент для создания маркетплейса плагинов внутри вашего приложения. Вы можете позволить пользователям писать скрипты для обработки их данных, не боясь, что они сломают основной функционал.
Встроить как движок для кастомных правил автоматизации в вашем SaaS.
Использовать для безопасного тестирования пользовательского кода в учебных сервисах.
Создать систему макросов для сложных рабочих процессов.
Подводные камни
Это узкоспециализированный инструмент для экосистемы Apple. Он не работает на Linux или Windows, поэтому кроссплатформенные проекты потребуют других решений. Также учитывайте, что любая виртуализация потребляет оперативную память — следите за лимитами, если планируете запускать сотни инстансов одновременно.
Частые вопросы
Можно ли запускать любой язык внутри GhostVM?
Нет, GhostVM ориентирована на работу со Swift и специфическими форматами, которые поддерживает движок. Это не универсальная VM для всего подряд, а инструмент для интеграции кода в Swift-проекты.
Насколько безопасно исполнение кода?
Она создает изоляцию на уровне процессов, что предотвращает прямой доступ к памяти вашего основного приложения. Однако всегда ограничивайте права доступа в настройках конфигурации, чтобы минимизировать риски.
Сложно ли интегрировать это в готовый проект?
Интеграция через Swift Package Manager занимает пару минут. Основная сложность заключается в написании интерфейса (API) для взаимодействия вашего приложения с гостевым кодом внутри VM.
Похожие репозитории
IINA — это мощный видеоплеер для macOS на базе MPV. Идеальное решение, если нужно встроить качественный медиа-движок в свой проект или просто заменить стандартные плееры.
Stats — это open source монитор ресурсов для macOS, который живет в строке меню. Показывает всё: от нагрузки на CPU до температуры датчиков и скорости сети.
UTM запускает Windows, Linux и другие ОС на macOS и iOS. Это эмулятор для запуска полноценных виртуальных машин без необходимости джейлбрейка.
MonitorControl превращает любой сторонний монитор в нативный Apple Display. Управляй яркостью и звуком через клавиатуру Mac или шорткаты.
Данные обновлены: 16 апреля 2026 г.