SSH позволяет работать с командной строкой другого компьютера по защищенному соединению. Для Codex это полезно, когда исходники и инструменты находятся на сервере или отдельном рабочем ПК. Самый понятный сценарий: подключиться по SSH, перейти в удаленный проект и запустить установленный там Codex CLI.

SSH не переносит автоматически ваши локальные файлы, настройки агента и авторизацию. Команды после подключения выполняются на удаленной машине с правами удаленного пользователя. Именно это нужно проверить до первой правки.

Подготовьте доступ до запуска Codex

На клиентском компьютере нужен SSH-клиент, на целевом — настроенный SSH-сервер. Для Windows установка и запуск OpenSSH описаны в документации Microsoft. Установку серверного компонента и правила сетевого доступа выполняет администратор; не стоит включать их вслепую на рабочем компьютере.

Используйте отдельную учетную запись и ограничивайте доступ к сети. Наличие шифрования не делает общедоступную службу безопасной само по себе. Удаленному пользователю не нужны права на все каталоги и базы только потому, что он будет запускать ИИ-агента.

Подключение и проверка ключа хоста

ssh developer@dev-host.example

Это пример: замените имя пользователя и адрес на свои. При первом соединении SSH показывает отпечаток ключа сервера. Сверьте его с администратором или через доверенный канал. Не подтверждайте неизвестный ключ автоматически и не отключайте проверку хоста ради устранения предупреждения.

Если ключ изменился, причиной может быть переустановка сервера, но возможна и другая машина по тому же адресу. Сначала выясните причину. Удаление записи из known_hosts без проверки убирает предупреждение, но не устанавливает подлинность сервера.

Проверьте, где вы находитесь

На удаленном Windows-ПК с PowerShell выполните:

hostname
whoami
Get-Location
Set-Location C:\Projects\my-app
git status --short
git branch --show-current
codex --version
codex --help

Путь в примере условный. На Linux используйте команды соответствующей оболочки, например pwd и cd. Если терминал открылся не в PowerShell, команда Set-Location там может не работать. Сначала установите, какую оболочку вы получили, а не меняйте проект наугад.

Убедитесь, что ветка и незакоммиченные изменения ожидаемые. Особенно опасна ситуация, когда в каталоге уже работает другой разработчик. Для независимой задачи лучше отдельная рабочая копия или согласованная ветка, а не одновременное редактирование одних файлов.

Запустите CLI в каталоге проекта

codex

Команды и параметры зависят от установленной версии; актуальные возможности перечислены в справочнике Codex CLI. Проверяйте локальный help прежде, чем переносить параметры из старого примера. Авторизацию выполните поддерживаемым способом, не копируя пароль или токен в текст задачи.

Первый запрос лучше сделать диагностическим: изучить структуру, найти команды тестов, назвать ограничения и ничего не менять. Когда окружение подтверждено, задайте конкретную небольшую доработку. Подробный шаблон есть в статье о постановке задач.

Как обращаться с SSH-ключами

Закрытый ключ остается на доверенном клиентском устройстве; на сервер передают открытый ключ. Не вставляйте закрытый ключ в чат, не коммитьте его в репозиторий и не отправляйте вместе с логами. Для Windows расположение authorized_keys и права отличаются для обычных пользователей и администраторов; используйте инструкцию Microsoft по ключам.

Не включайте пересылку SSH-агента без необходимости. Она расширяет возможности удаленной машины использовать вашу аутентификацию. Для доступа к репозиторию лучше заранее согласовать минимальный набор полномочий и возможность их отзыва. После завершения временного проекта ненужный доступ следует убрать.

Что делать с долгими запусками

Разрыв терминального соединения может прервать интерактивную работу. На Linux для сохранения терминальной сессии часто используют менеджер сессий, но это отдельный инструмент, который должен быть установлен и проверен. В Windows нужен подход, соответствующий вашей оболочке и способу запуска; нельзя считать любой фоновый процесс устойчивым к выходу пользователя.

Надежность проверяют экспериментом на безвредной задаче. Сохраните идентификатор сессии, журнал и текущие изменения. Если соединение оборвалось, сначала выясните, продолжает ли работать прежний процесс. Повторный запуск той же операции может создать дубли или одновременно менять одни файлы.

Как проверить веб-приложение

Адрес localhost в удаленном терминале относится к удаленной машине, а не к вашему ноутбуку. Для просмотра локального сервера можно использовать SSH-туннель с привязкой к loopback:

ssh -N -L 127.0.0.1:8080:127.0.0.1:3000 developer@dev-host.example

Пример предполагает, что приложение уже слушает порт 3000 на удаленном хосте, а локальный 8080 свободен. Откройте на клиенте http://127.0.0.1:8080. Сервер может ограничивать перенаправление портов; не обходите такую политику без согласования. Доступ к рабочей базе для этого не требуется.

После работы проверьте diff, тесты и список измененных файлов. Удаленный запуск не меняет требований к качеству. Для выбора между SSH и рабочим столом прочитайте материал об удаленном Windows-ПК, а для настройки процесса под ваш проект свяжитесь с VSVP.