Сервис без головы и доступ к браузеру
Локальный сервис предоставляет безголовый бэкэнд и интерфейс браузера локального хоста. Он отличается от хоста SSH Compute и от сопряжения браузера Remote.It. Выберите настройки аутентификации и хранения учетных данных для хоста перед подключением клиента.
Выбор и обнаружение целей
Из v0.37.0 общие службы выполняются в обычном процессе Node, и рабочий стол подключается как нативный клиент. Стартап CLI больше не нуждается в скрытом хосте Electron.
| селекционер | Область |
|---|---|
--port PORT | порт Localhost, целое число 1-65535; Занятый явный порт вызывает ошибку |
--config-root PATH / --profile PATH | Портативный каталог конфигурации CLI; Сохраняйте один и тот же абсолютный путь на протяжении всего пути. |
OPEN_SCIENCE_CONFIG_ROOT | Явный каталог конфигурации через окружающую среду; Командные опции имеют приоритет |
| Автоматическое обнаружение | Найти местное состояние сервиса и подтвердить его профиль, порт и версию |
Настольные серверы выбирают свободный порт, когда он не указан; Стартап CLI по умолчанию 44100. Используйте status --json, а не вывод порта из открытого окна. Совместимая существующая услуга для одной и той же конфигурации может быть использована повторно. Заканчивайте активную работу и следуйте инструкциям по обновлению, когда версии не совпадают. Унаследованная опция --app-path не превращает исполняемый файл Electron в новый бэкэнд Node.
Файл состояния web-service.json. Отказ в аутентификации не является разрешением на удаление этой записи или уничтожение ее PID. Сначала проверьте фактическую услугу и диагностику, чтобы не повлиять на другой процесс.
Инициировать и проверить готовность
Используйте open-science init для подготовки каталога конфигурации по умолчанию без запуска приложения. Для изолированной конфигурации пройдите тот же абсолютный путь --profile к вводу, запуску и последующим командам. Пакеты Debian устанавливают CLI вместе с приложением. настройка терминала для подготовки и входа в Codex.
После преднамеренного start --no-open, запустите open-science doctor --json. Проверить ready в целом, индивидуальные проверки и предложить следующие действия; Один только код выхода из процесса не является вердиктом готовности. Сохраняйте сервис на существующем аутентифицированном локальном интерфейсе. Запуск этого безголового сервиса не настраивает Remote.It и не публикует общедоступную конечную точку.
Команды жизненного цикла
Начиная с v1.0.5, соединение с приложением или явный запуск CLI поддерживает работу сервиса. Используйте один и тот же путь абсолютного профиля для всех команд.
| Командование | Результат |
|---|---|
open-science start | Запустите или повторно используйте сервис, держите его в рабочем состоянии и откройте браузер. |
open-science start --no-open --json | Включить тот же постоянный режим без браузера; возвращает started или already-runningслужебной информации и lifetime |
open-science status --json | Осмотрите выбранную услугу; отсутствующая услуга возвращается {"running":false} Код выхода 1 |
open-science url | Печать аутентифицированного URL-адреса браузера; сохраняйте это в тайне |
open-science stop --json | Отключить постоянный режим; остановить сервис только при отсутствии подключённых App |
open-science stop --force --json | Запрос полной остановки обслуживания, включая подключенные приложения; может прерывать активные задачи |
повторяющийся start не накапливают запросы постоянного режима. start, status и stop поддержка --json; url Нет. Выход запуска JSON не раскрывает аутентифицированный URL-адрес браузера. Старые службы могут сообщать о неизвестном сроке службы; использовать соответствующие версии, прежде чем полагаться на новый контракт.
Результаты закрытия
Джон result | значение |
|---|---|
already-stopped | Не найдено ни одного живого рекорда |
keep-alive-revoked | Постоянный режим отключён, но подключённые App удерживают сервис |
stopped | Запрашиваемое поколение услуг покинуло и освободило право собственности |
shutdown-requested | Наследственная служба приняла запрос, но выход не подтвержден; команда возвращает ненулевой код выхода. |
Читать result и lifetimeУспешный код выхода не означает, что служба остановлена. Старший daemon-stopped и web-service-stopped Имена результатов больше не испускаются. --force требует современного пожизненного протокола и явно не работает против старой службы. Проверяйте ошибки и текущее состояние вместо удаления государственных файлов или уничтожения записанного PID.
Аутентификация и доступ к браузеру
SDK обнаруживает локальный сервис и считывает его локальный токен аутентификации, отправляя его в заголовки запросов. Обычный выход задачи human/JSON/JSONL не печатает этот токен. url является преднамеренным исключением, которое создает аутентифицированную запись браузера.
Служба локального хоста недоступна автоматически с другого компьютера. Удаленный доступ к браузеру использует свой собственный настроенный режим доступа, сопряжение и жизненный цикл доверенного браузера. SSH Compute вместо этого отправляет задания на настроенные удаленные хосты выполнения.
Используйте Удалённый доступ через браузер для сопряжения Remote.It и Дистанционные вычисления для рабочих мест SSH. Ни один поток не настраивается путем изменения URL-адреса документации локальной службы.
Полное хранилище на безголовом Linux
По умолчанию это защищенное ОС хранилище. На безголовом бэкэнде Linux без полезной клавиши выберите явную альтернативу:
Пример Запустите безголовый сервис Linux с хранилищем учетных данных файлов
open-science start --credential-store=file --no-open
| Выбор | поведение |
|---|---|
| Упущенный вариант / -credential-store=os | Требуется магазин с защитой от ОС |
| -credential-store=file | Разрешить незашифрованные настройки управляемых секретов только на Linux без головы |
| Запуск Desktop, macOS или Windows | Режим файла не поддерживается |
| Уже работающий бэкэнд | Явный выбор режима отклоняется; не меняет режим этого процесса |
| Следующий стартап | Укажите режим еще раз; Это не сохраненное предпочтение. |
Режим файла использует settings.json и credentials.json под корнем конфигурации, с атомной записью и режимом POSIX 0600. Файл:v1: значение - base64-encoded, не зашифрованный. Любой, кто может прочитать его, может восстановить секрет. исключить эти файлы из репозиториев, изображений и отчетов о поддержке.
Выбор распространяется на новые/обновленные ключи провайдера, управляемые приложениями, подписные токены, GitHub/литературные ключи и общие секреты MCP/OAuth. Вычислительные пароли/защищенные вычисленные данные сохраняют свои отдельные требования к хранению ОС; Магазин внешних агентов-фреймворков следует своим собственным правилам. Никакая песочница не отключена этим вариантом.
Существующие зашифрованные значения не мигрируются автоматически и по-прежнему требуют своего исходного хранилища ОС. Если он недоступен, повторно введите учетные данные через обычную поддерживаемую форму. Рефинансирование файлов требует явного режима считывания файлов и несовместимо с более старыми версиями. Чтобы вернуть учетные данные в хранилище ОС, перезагрузите в режиме ОС и явно замените его, пока хранилище доступно.
Используйте постоянное хранилище, когда конфигурация должна выжить при замене контейнера. Отключение сохраняет конфигурацию; Замена одноразовой файловой системы контейнера может удалить ее. Смотрите контракт на хранение учетных данных.
Владение Backend и закрытие
| Меры | Влияние на бэкэнд |
|---|---|
| Откажитесь от последнего подключенного приложения без явного запуска CLI | Служба остановлена |
Бег CLI start, а затем отказаться от всех приложений | Сервис продолжает работу благодаря явно заданному постоянному режиму |
| Закройте вкладку браузера или клиент SDK | Не отключает постоянный режим |
| Запуск обычной задачи CLI, Web или SDK | Не поддерживает самостоятельно сервис после того, как все приложения уйдут |
Беги. open-science stop с подключенным приложением | Отключить постоянный режим; продолжить работу для подключённого App |
Беги. open-science stop --force | Запросить отключение всей службы, потенциально прерывая работу |
Если браузер или автоматизированная работа должны продолжаться после выхода из рабочего стола, сначала запустите тот же профиль. Закрытие окна в поднос не прекращается. Завершите активное исследование до остановки всего сервиса, а затем проверьте status --json.
Отключенный рабочий стол предлагает Reconnect и Quit app. Воссоединение не возвращает работу. Следить Восстановление соединенияи проверять операции, ответы на которые были потеряны до повторного использования.
Восстановление после прерывания рабочего стола
Откройте десктоп той же версии и подключитесь к исходному профилю. Соединения приложений и любые явные CLI определяют, останется ли этот сервис в живых; одна только вкладка браузера также не заменяет.
Если прекратится подготовка, окно останется открытым. Сохраните несохраненную работу и проверьте исходное задание после восстановления. Если стартап сообщает о блокировке старого сервиса, проверьте профиль, версию и активных клиентов, прежде чем выбрать его явную остановку. Отмена оставляет службу запущенной. Неудачная остановка может быть восстановлена или перепроверена без удаления файлов блокировки.
Поведение обновления приложения
Обновитель приложений CLI остается удаленным; не используйте open-science update --json. Использовать Управление обновлениями рабочего стола или оригинальный канал установки.
Перед заменой файлов CLI завершите работу всех профилей этой установки. Закройте подключённые App и отключите постоянный режим каждого профиля командой stop --json. Подтвердите stopped или already-stopped; keep-alive-revoked Это означает, что приложение по-прежнему поддерживает работу сервиса. Использовать stop --force только тогда, когда вы намерены прекратить работу всех клиентов. Не перезаписывайте запущенные программные файлы.
Обновление рабочего стола может попросить остановить подключенный сервис CLI и переключиться на управление рабочим столом. Проверьте профиль и затронутые задачи, прежде чем согласиться; отмена оставляет его работать. Это не обновляет исходные отдельные файлы программы CLI. Следуйте уведомлениям о заполнении и восстановлении без удаления замков или конфигурации.
После обновления подтвердите версию и исходные данные, затем проверьте status --json и doctor --json. Сохранить режим credential-store. Совместимость 1x Не обещают смешанные версии для настольных и бэкэндов. Видишь? Официальный Runtime Guide, КЛИ и Задание SDK.
Вычислить в рабочем пространстве Web
Отдельное веб-рабочее пространство раскрывает Compute когда его бэкэнд предоставляет необходимые Notebook и Compute API. Откройте подключенное рабочее пространство, проверьте, доступна ли панель, затем используйте существующие шаги конфигурации SSH/Slurm. Доступная панель не предоставляет удаленные учетные данные или не подтверждает, что работа может работать.
Пакеты и внешние инструменты клиентов
Аутентифицированные веб-сессии могут отправлять и скачивать исследовательские пакетыУдаленные веб-сессии не получают эту возможность передачи. Для подключения внешнего клиента инструмента на той же машине настройте Адаптер MCP Adapter. Он использует уже работающий локальный сервис и разрешения этого профиля; он не создает удаленный URL-адрес MCP.