04
Управление из Windows и Linux
Как подключить Agent на Windows или Linux к удалённому Safari?
Безопасная топология разделяет место редактирования, место рассуждения Agent и место исполнения Safari. Код можно оставить на рабочей станции, синхронизировать через контролируемый репозиторий или хранить в рабочей директории на Mac. Во всех вариантах Safari и safaridriver продолжают работать на Mac.
Для внешнего управления используйте SSH с ключевой аутентификацией, ограниченную учётную запись и защищённый удалённый рабочий стол. Транспорт MCP не следует выставлять на внешний интерфейс: спецификация MCP по транспортам объясняет различие между локальными и сетевыми способами обмена, но сама по себе не превращает открытый порт в безопасный сервис.
Есть три распространённые схемы.
Код на локальной машине. Windows или Linux остаются главным рабочим местом, а на Mac передаётся конкретная ветка или архив. Это удобно для небольшого эксперимента, но создаёт риск проверить не тот коммит.
Код в удалённом репозитории. Mac получает фиксированный коммит, запускает Safari MCP и сохраняет диагностические артефакты. Такая схема лучше подходит для повторной проверки, если в журнале явно записаны идентификатор коммита и тестовый URL.
Код и Agent на Mac. Внешняя машина только открывает SSH-сессию или удалённый рабочий стол. Это снижает количество сетевых перемещений, но требует более строгой защиты учётной записи и полномасштабной проверки доступа Agent к файлам.
Перед каждой сессией фиксируйте:
- идентификатор коммита или метку сборки;
- тестовый URL;
- имя учётной записи;
- чистый или сохранённый профиль Safari;
- время запуска сессии;
- расположение снимков экрана и логов.
Можно ли запускать Safari MCP без графического сеанса через SSH?
Нельзя автоматически считать такой режим поддержанным. SSH-подключение может оставаться активным, пока графический вход завершён, Safari закрыт или macOS перезапущена. Safari MCP не следует объявлять полностью безоперационным сервисом, пока это не подтверждено конкретным выпуском и собственной проверкой узла.
Для временной диагностики оставляйте активный графический сеанс и управляйте процессом через SSH. Для длительных заданий добавьте контролируемый механизм запуска после входа пользователя, журналирование и ручную процедуру восстановления. Не выдавайте Agent право самовольно входить в учётную запись, менять системные разрешения или открывать сетевые службы.