SlateVM

официальный

Нативная платформа виртуальных машин для Apple Silicon с 45 MCP-инструментами для создания, наблюдения и управления гостевыми системами macOS, Linux и Windows 11 ARM.

Что можно делать с SlateVM MCP?

  • Создание и загрузка виртуальных машин — Создайте виртуальную машину из образа установки из списка, затем запустите её и дождитесь достижения целевого рабочего состояния.
  • Наблюдение за гостем — Захватите экран, прочитайте текст консоли или дождитесь появления шаблона регулярного выражения в консоли.
  • Управление гостем — Вводите данные с клавиатуры, указателя и текст или выполняйте команды внутри загруженного гостя через его SSH-ключ для каждой виртуальной машины.
  • Настройка оборудования — Применяйте настройки оборудования и сети на лету, увеличивайте размер диска или задавайте разрешение экрана и размер окна консоли.
  • Общий доступ к папкам хоста — Добавляйте или удаляйте общие папки virtio-fs в виртуальных машинах mac/Linux и переключайте их флаг «только для чтения».
  • Диагностика проблем — Получите единоразовый пакет диагностики или просмотрите последние строки журнала, когда виртуальная машина не загружается.

Документация

Настоящие компьютеры, которые ваш ИИ может видеть и которыми может управлять.

Встроенный MCP-сервер SlateVM даёт любому совместимому ИИ-клиенту 46 структурированных инструментов для создания виртуальных машин, наблюдения за их экранами, ввода текста и кликов, выполнения команд внутри гостевой системы и проверки результата — с одинаковым контрактом на Mac, Windows и Linux.

Автоматизация с подтверждением на каждом шаге.

Наблюдение

Живое состояние и задания, снимки экрана, текст на экране (OCR), текст последовательной консоли для headless Linux, журналы и сетевые адреса гостевой системы.

Действие

Клавиатура, указатель, прокрутка и ввод текста; команды внутри гостевой системы через SSH-идентичность для каждой ВМ; изменения оборудования, дисков, дисплея, сети и общих папок.

Проверка

Ожидание состояния или появления текста, снимок изменившегося экрана и чтение диагностики перед отчётом.

Не обёртка над shell. Не скриптинг UI.

Небольшой локальный адаптер подключает ваш ИИ-клиент к SlateVM по каналу, который никогда не покидает вашу машину. SlateVM — компонент, владеющий ВМ, — отвечает на каждый вызов, поэтому агент видит ту же правду, что и приложение. MCP в гипервизоре →

Все 46 инструментов.

Одинаковые имена, схемы и коды ошибок на каждом хосте. Хост, который не может что-то сделать (например, гостевые macOS вне Mac), возвращает понятную ошибку, а не другой инструмент.

Приложение (4)

launch_app

Запустить приложение SlateVM (видимое, на переднем плане).

quit_app

Завершить приложение SlateVM.

app_status

Сообщить, запущено ли приложение SlateVM, доступен ли его локальный канал управления и версия/сборка ЗАПУЩЕННОГО приложения (читается вживую из его бандла, поэтому остаётся корректной после автообновления, подменяющего приложение посреди сессии).

host_capabilities

Сообщить возможности хоста: поддержка вложенной виртуализации, свободное место на диске, право на виртуализацию, версия macOS.

Создание и установка (7)

create_vm

Создать новую ВМ.

list_images

Перечислить все образы установки ОС, видимые SlateVM (его кэши образов + ваша папка Downloads), с предполагаемой ОС, размером и признаком читаемости — чтобы вы могли выбрать путь для create_vm, не получая его извне.

list_restore_images

Перечислить образы восстановления macOS (.ipsw), известные SlateVM.

set_installer_media

Переназначить образ установщика остановленной ВМ на новый доступный путь и записать свежую закладку.

finish_install

Явно отметить установку ОС ВМ как завершённую: извлечь установочный ISO/носитель и переключить installState с 'installing' на 'installed'.

apply_guest_tools

Подготовить/применить диск гостевых инструментов для ВМ.

set_attach_linux_guest_tools

Переключить монтирование диска SlateVM Tools для настольной Linux-ВМ.

Жизненный цикл (8)

list_vms

Перечислить все виртуальные машины SlateVM с их состоянием и оборудованием.

get_vm

Получить полную конфигурацию одной ВМ.

start_vm

Загрузить ВМ и открыть её окно консоли (видимое).

stop_vm

Остановить запущенную ВМ.

suspend_resume_vm

Переключить приостановку/возобновление для запущенной ВМ.

wait_for_state

Блокироваться до достижения ВМ целевого состояния запуска или до тайм-аута.

delete_vm

Удалить ВМ (перемещает её бандл в корзину).

reveal_vm

Показать бандл ВМ в файловом браузере.

Увидеть машину (4)

capture_screen

Сделать снимок экрана гостевой системы.

read_console_text

Прочитать консоль гостевой системы как текст.

wait_for_text

Блокироваться до появления pattern\ (регулярное выражение без учёта регистра) в консоли гостевой системы или до тайм-аута — опрашивая за вас, чтобы вы не делали sleep-and-screenshot.

read_guest_clipboard

Извлечь ТЕКСТ из ГРАФИЧЕСКОЙ гостевой системы — аналог read_console_text для фреймбуфера (который покрывает только headless последовательный Linux).

Действие на машине (5)

send_input

Внедрить ввод в гостевую систему (не в рабочий стол Mac).

run_in_guest

Выполнить команду в загруженной гостевой системе по SSH с использованием её ключа ИИ для данной ВМ.

provision_ssh

Вернуть выделенный SSH-публичный ключ для данной ВМ + installCommand.

ssh_status

Сообщить, предоставлен ли ВМ SSH-ключ ИИ, и его публичный ключ.

revoke_ssh

Удалить SSH-ключ ИИ на стороне хоста для ВМ.

Настройка (7)

set_hardware

Применить на лету настройки оборудования/сети к ВМ.

resize_disk

Увеличить диск ВМ.

set_display_resolution

Задать разрешение дисплея гостевой системы (headless Linux-сервер; применяется при следующей загрузке).

set_console_window_size

Задать размер окна консоли для ВМ.

add_shared_folder

Поделиться папкой хоста в ВМ с mac/Linux (virtio-fs).

remove_shared_folder

Удалить общую папку из ВМ.

set_shared_folder_readonly

Задать флаг «только для чтения» для общей папки.

Сеть (6)

guest_network

Определить IP-адрес(а) запущенной гостевой системы по её MAC через таблицу аренды DHCP и ARP (только чтение).

set_linux_network_path

Задать драйвер NAT для Linux-ВМ: native (Apple VZNAT) или service (socket_vmnet).

networking_status

Сообщить, установлена ли и исправна ли сетевой сервис SlateVM.

networking_install

Установить сетевой сервис SlateVM.

networking_repair

Восстановить/переустановить сетевой сервис SlateVM (с одобрением администратора).

networking_uninstall

Удалить сетевой сервис SlateVM (с одобрением администратора).

Задания и диагностика (5)

job_status

Получить состояние фонового задания (running/succeeded/failed), его последнюю стадию и его результат или ошибку.

job_wait

Блокироваться до завершения фонового задания или до истечения тайм-аута; возвращает его состояние + результат/ошибку.

list_jobs

Перечислить недавние фоновые задания и их состояния.

get_diagnostics

Единый набор для устранения неполадок ВМ: состояние, lastError ({code, message} — причина, по которой ВМ не загружается, например MEDIA_INACCESSIBLE), доступность носителей по каждому диску, последние строки журнала, размер диска, исправность сетевого сервиса и конфигурация. Вызывайте это первым, когда что-то не так.

tail_log

Вернуть последние строки журнала для ВМ.