VSCode's SSH Agent Is Bananas (2025)
VSCode при подключении по SSH не просто использует удалённый доступ — он разворачивает полноценный агент на целевом сервере: скачивает бинарник Node.js, запускает веб-сокет-соединение обратно к локальному интерфейсу и получает полный контроль над файловой системой, процессами и настройками удалённой машины. Это не просто редактирование файлов — это полноценное проникновение с возможностью постоянной установки, что в корне отличается от элегантного и пассивного подхода Emacs Tramp, который работает исключительно через команды shell. Такой механизм выглядит как угроза безопасности: агент может случайно или намеренно изменить конфигурацию сервера, особенно опасно это в продакшене или при работе с чувствительными системами.
Хотя автор не предлагает отказаться от VSCode, он подчёркивает, что подобное поведение неприемлемо для сред, где важна изоляция — например, при использовании LLM-агентов, которые итеративно тестируют код и могут «запутать» систему. Вместо этого он предлагает использовать чистые, временные Linux-инстансы (например, Fly Machines), где даже такой агент не навредит. Суть в том, что удобство VSCode не должно оправдывать риски: инструмент, который сам устанавливает себе бэкдор на удалённой машине, не должен быть доверенным в инфраструктуре, где безопасность важнее скорости разработки.