惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

A
About on SuperTechFans
C
Cyber Attacks, Cyber Crime and Cyber Security
Google DeepMind News
Google DeepMind News
C
Check Point Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
Stack Overflow Blog
Stack Overflow Blog
云风的 BLOG
云风的 BLOG
Microsoft Azure Blog
Microsoft Azure Blog
P
Proofpoint News Feed
爱范儿
爱范儿
F
Fortinet All Blogs
博客园_首页
博客园 - Franky
博客园 - 聂微东
腾讯CDC
博客园 - 三生石上(FineUI控件)
MongoDB | Blog
MongoDB | Blog
Schneier on Security
Schneier on Security
N
News and Events Feed by Topic
Help Net Security
Help Net Security
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
B
Blog
O
OpenAI News
The Last Watchdog
The Last Watchdog
N
News | PayPal Newsroom
Recent Announcements
Recent Announcements
V
Visual Studio Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
S
SegmentFault 最新的问题
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Cloudbric
Cloudbric
Forbes - Security
Forbes - Security
Webroot Blog
Webroot Blog
阮一峰的网络日志
阮一峰的网络日志
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
PCI Perspectives
PCI Perspectives
Y
Y Combinator Blog
Blog — PlanetScale
Blog — PlanetScale
Security Archives - TechRepublic
Security Archives - TechRepublic
月光博客
月光博客
SecWiki News
SecWiki News
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
美团技术团队
S
Security @ Cisco Blogs
IT之家
IT之家
人人都是产品经理
人人都是产品经理
H
Hacker News: Front Page
H
Heimdal Security Blog
V
Vulnerabilities – Threatpost
The Hacker News
The Hacker News

Все публикации подряд на Хабре

Ловим музу за клавиатуру: как айтишнику стать автором Что умеет Midjourney в 2026? Мой немного грустный разбор этого шикарного инструмента Никто не любит писать тесты, но ИИ может исправить это IPv8 выглядит как мечта. Поэтому почти наверняка не взлетит Производители вернули в продажу материнки с DDR3. Что происходит? Управление агентом с телефона через Telegram теперь в KodaCode От координации к лидерству: как меняется роль руководителя разработки Я сделала родителям бизнес вместо пенсии: зарабатываем 70 тысяч, мама не даёт продать В три раза быстрее приемка товара и оптимизация трудозатрат на 73%: как «РСТ-Инвент» помог Gulliver Group ИИ-шечный мир победил? О влиянии искусственного интеллекта на игропром Кремль снижает давление на Телеграмм пока Европа строит интернет по паспорту Как CEO, CTO и CIO за 8 часов собрали ИИ-директора, который умеет держать позицию под давлением Как (не) потерять домен за выходные Вместо 8 разных VPS: как я организовал практику студентам на одном сервере Почему твой Open Source проект не замечают? R&D: искусство управления неопределенностью в разработке AI-дефляция: вакансий для разработчиков больше, а рост зарплат — худший за 15 лет Мы отдали управление роботами OpenClaw. Что из этого вышло Галактический ID: система идентификации для всех форм разумной жизни Шесть основ бизнес-анализа: начинаем с вопроса «Кто в игре?» Код-ревью, в котором дело не в коде Данные переехали. Команда — нет Системной подход к сдаче OSWE в 2025 Почему комната управления реактором покрашена в цвет морской пены 4 YAML-файла вместо PySpark: как аналитикам строить пайплайны без разработчиков LLM-агент для поиска свободных доменов: автоматизируем подбор Когда, зачем и как правильно начинать новую сессию в Claude Code? Как я заставил нейросеть писать макросы для FreeCAD Анатомия ИИ‑агента для подбора персонала. От тысячи резюме к топ‑10 за минуты Опыт разработчика как экономика внимания Автономность как точка невозврата: кто будет субъектом в цифровом будущем Обучение ИИ в «диких» условиях: как рутинные действия превращаются в датасеты Как измерить LLM для задач кибербеза: обзор открытых бенчмарков Где хранить код? Сравнение GitHub, GitLab и Bitbucket Математика объясняет, почему нормальное распределение встречается повсюду Почему ваш FinOps не работает: 12 тезисов от практиков Как подписать проектную документацию УКЭП с использованием бесплатных лицензий Pilot Адаптивное администрирование Sigla Vision Я грузил уран в бочки, а потом 20 лет строил ИТ в атомной отрасли Чем позвонить с Эвереста? История и обзор спутниковой связи. Часть 2 Как языковая модель помогает контролировать качество инструктажей по охране труда в металлургии Как не передать на desktop свой IP в РКН Анатомия SAP Privileges: как устроено управление правами в macOS MoneyDev: Сказка про три главных слова Обновлённый токенизатор видео K-VAE 2.0 от Сбера Как сделать диспетчеризацию дома на 1284 квартиры почти бесплатно Как мы разогнали железную дорогу Мы дали агентам рутину. Теперь надо решить — что делать с освободившимся временем Токсичный контент, промпт-хакинг и защита ИИ — всё о Guardrails для LLM Умный город начинается с точного взгляда: как «Фалькон Тех» меняет пространство к лучшему Навайбкодил приложение для анализа графов Почему Дюну так интересно читать? Упрощаем работу с рутиной или как стать Гендальфом Белым Деконструкция Go: CPU, RAM и что там происходит. Go Assembler база. Часть 1.1 Какие профессии исчезнут из-за ИИ, а какие появятся? И что с этим делать Как мы построили IT-отдел, где хочется расти: архитектурные встречи, прозрачные метрики и книжные подарки Rufler: Делаем из Claude Code автономный рой через один YAML-конфиг Sing-box и белый список приложений Как построить надёжный обмен сообщениями в микросервисах: лучшие практики для enterprise OpenAI строит MLM-пирамиду, а McKinsey и Accenture помогают ей в этом Дом, который не построил Фишер (Часть 2) «Сверхзвуковой математик» против «Вдумчивого логиста»: битва алгоритмов 3D-упаковки Мультимодальные модели – грубый и дорогой инструмент Разговоры ничего не стоят. Код тоже Проверки физических лиц: с кого начнет ФНС Топ-10 бесплатных нейросетей для создания видео в 2026 году Первые слои кода: как наши решения сегодня определяют архитектуру ИИ на десятилетия Разработка нового статического анализатора: PVS-Studio JavaScript Поиск уязвимостей ПО: базовый минимум или роскошный максимум Почему оценка персонала не работает как инструмент управления Как мы разработали ИИ-ассистента и сократили рутину продуктовой команды на 50% Как я ушел из найма, нажарил косточек и продал на маркетплейсах на 168 млн в год Когда 1С:ERP уже внедрена, а нормального производственного плана всё ещё нет Как я сделал Claude мультимодальным, подключив к нему Qwen Omni Как приглашение на вакансию мечты превращается в атаку Infrastructure as Code: философия и лучшие практики IaC Тестируем Yandex Code Assistant на задаче, в которой нужно хранить секреты nxs-universal-chart v3.0: новое поколение универсального Helm-чарта Callback Injection: Техника, которая отправила Microsoft Defender в глухой нокаут «Все идеи на стол»: митап как способ вывести проект из тупика Сегодня я узнал нечто новое о GPU благодаря багу в своей игре Как заставить LLM ̶ ̶г̶а̶л̶л̶ю̶ ̶ эволюционировать Карта событий как фундамент аналитики: практический кейс для E-commerce Что выбрать для AI: x86, ARM или RISC-V? Дайджест железа за март Роль соматических мутаций в развитии аутоиммунных заболеваний: путь к избирательной терапии Mythos от Anthropic — тревожный сигнал для всех, а не только для банков Guardrails для LLM на Java: как приручить промпт‑инъекции и токсичные ответы Green-VLA: как мы собрали VLA-модель для реального антропоморфного робота и не потеряли обобщение Финансовая гонка вооружений: почему умные люди добровольно в ней участвуют Эра ИИ-агентов наступила: выбираем лучшего цифрового сотрудника # Практический опыт внедрения WinCC Redundancy на производственном предприятии Сделал MVP за 3 дня, а потом неделю прикручивал оплату. Оно того стоило? Физика против Маска: почему Starship V3 может оказаться ещё одной катастрофой Нефть Венесуэлы: крупнейшие запасы в мире, но не крупнейшая нефтяная держава JPA 4. Переосмысление Hibernate Почему зеркальная фотокамера Nikon D5 десятилетней давности идеально подошла для миссии «Артемида-2» Проект «Уровень-Спутник» или как мы сделали платформу для гидрологов «Замедлиться, чтобы ускориться»: почему ИИ повышает цену ошибок в требованиях и архитектуре Как с нуля поднять трафик IT-компании на 1657% при бюджете 55 тыс. и выжить Pixel-perfect Downsampling — идеальная отрисовка 50 миллионов точек без потерь
Какие страхи мешают разработчикам перейти на Cloud IDE и как мы их закрывали архитектурно
Сергей Бабенко · 2026-06-18 · via Все публикации подряд на Хабре

Средний

10 мин

3

Обычно разработчики пользуются локальными IDE вроде VS Code или IDE от JetBrains со своим набором плагинов, настроек и собранным под себя окружением. Иногда — удалённой машиной. Но есть третий вариант, который пока многим непривычен и потому вызывает настороженность, — Cloud IDE, или CDE. 

Закономерно возникают вопросы: а точно ли мои данные в безопасности? Есть ли в CDE все нужные компоненты для полноценной работы или это просто способ быстро заглянуть в код?

Мы смотрим на облачную IDE не как на замену привычным инструментам, а как на отдельный способ работы с кодом. Это изолированное рабочее пространство, в котором уже есть нужное окружение, с быстрым доступом и возможностью сохранять состояние между сессиями. Для разработчика это не «посмотреть код через браузер», а полноценная среда там, где важны скорость настройки проекта, изолированность от локального окружения и возможность работать над несколькими задачами разом.

Меня зовут Сергей Бабенко, я ведущий разработчик в команде SourceCraft, и в этой статье я попытаюсь развеять сомнения по поводу перехода на CDE. Вас ждут реверсивные сетевые туннели, мультизональный роутинг, натягивание совы serverless на глобус CDE и прочая хардкорная инфра. Облачная IDE внутри нашей платформы называется SourceCraft Spaces, и она уже доступна для пользователей.

Почему облачная IDE вызывает недоверие у разработчиков и как всё на самом деле 

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

Cloud IDE у многих не ассоциируется с полноценным циклом разработки: её скорее видят как инструмент для быстрого и поверхностного доступа к коду, когда нужно что-то посмотреть на ходу. Из-за этого сам формат кажется не очень серьёзным. 

Например, в нашем исследовании часто всплывало опасение, что облачная IDE окажется слабее локальной. Разработчики ожидают, что в «облегчённой» версии не будет рефакторинга или доступа к привычным инструментам. Но на самом деле в CDE есть всё, что и в локальной IDE: 

  • базовые инструменты разработки;

  • возможность установить нужные утилиты и расширения из VS Marketplace;

  • запуск тестов и отладки.

Отдельный страх разработчиков — невозможность использовать привычные горячие клавиши. В браузере действительно есть ограничения: например, не все команды можно настраивать так же свободно, как в десктопной IDE, и это может раздражать опытных разработчиков. Мы работаем над этим: все горячие клавиши, которые браузер позволяет переопределить, вернули к привычным сочетаниям. Это подавляющая часть того, что нужно при работе с VS Code. 

Большие опасения у разработчиков вызывают зависимость от интернета и отсутствие офлайн-режима — это ограничение, которое может сильно повлиять на работу в поездках или при ограниченном доступе к сети. К сожалению, с этим мы не можем ничего поделать: сам формат CDE предполагает работу онлайн.

Важно подчеркнуть, что Cloud IDE — не облегчённый просмотрщик кода, а полноценное и безопасное рабочее пространство. Оно всегда под рукой, легко настраивается, а подключиться можно с любого устройства. 

В CDE удобно работать над несколькими проектами параллельно, вайбкодить, быстро проверять гипотезы. Встроенные SourceCraft CLI и SourceCraft Code Assistant ускоряют и облегчают разработку. И, конечно, окружение можно использовать как «песочницу», в которой не страшно дать волю ИИ-агенту. Он может работать автономно, а если вдруг что-то сломает, всегда можно просто запустить новое окружение. 

Мы заботимся о безопасности пользователей, поэтому регулярно обновляем весь предустановленный в CDE SourceCraft Spaces инструментарий и закрываем все найденные уязвимости.

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

Базовые принципы, от которых мы отталкивались, и требования к облачной IDE 

Cloud IDE появилась не из абстрактных «хотелок», а из довольно приземлённых задач: что должно быть у разработчика под рукой и что может дать облачная инфраструктура.

Cloud IDE должна была запускаться быстро. Не за минуту, не «ну подождите чуть-чуть», а так, чтобы пользователь мог за 5 секунд получить рабочее пространство и начать работать. 

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

При этом нужны были доступ в интернет для работы с зависимостями и внешними сервисами и стриминговые протоколы: 

  • веб-сокеты;

  • протокол LSP для навигации по коду;

  • DAP для отладки. 

Для IDE это критично, ведь без устойчивого двунаправленного канала невозможна полноценная работа с кодом.

Ещё важный момент: сессия должна сохраняться между запусками виртуальной машины. Рабочее пространство должно быть доступно часами, если пользователю это необходимо. Если же оно не используется несколько часов или дней, то останавливается, чтобы сэкономить вычислительные ресурсы. Во время паузы не должны пропадать:

  • изменения в коде;

  • пользовательские настройки;

  • установленные плагины и утилиты. 

Отсюда требование к полноценному диску, который переживает паузы и рестарты, а не к эфемерной файловой системе, которую пользователю пришлось бы синхронизировать куда‑то во внешнее хранилище.

Если совсем коротко, наши базовые требования к CDE выглядели так:

  • быстрый старт;

  • изоляция окружений;

  • авторизация всех запросов;

  • воспроизводимость;

  • поддержка стриминговых протоколов;

  • долгоживущее рабочее пространство;

  • сохранение состояния между сессиями.

Самое интересное в этих требованиях то, что они слегка тянут архитектуру в разные стороны: быстрый старт обычно конфликтует с тяжёлым и изолированным окружением, а воспроизводимость — с желанием дать пользователю свободу. Именно поэтому дальше и пришлось искать такую основу, которая обеспечит всё одновременно.

Почему было сложно найти подходящий хост и на чём мы остановились в итоге

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

Но на момент, когда мы прорабатывали архитектуру CDE, serverless не поддерживал в релизном качестве долгие подключения, не было персистентного диска для хранения данных. Это значило, что пришлось бы периодически переносить состояние в стороннее хранилище и потом поднимать обратно. Технически мы могли бы заставить работать такой вариант, но ценой большого количества костылей. Для коротких сессий вайбкодинга это могло бы подойти, а вот для полноценной Cloud IDE — уже нет. Хотя serverless сам по себе удобен, конкретно для нашей задачи он не подошёл.

Второй вариант, который мы рассматривали, — «коммуналка» из контейнеров на одной машине. Идея была такая: берём один мощный сервер или виртуалку, запускаем на ней Docker‑контейнеры с окружениями разных пользователей. 

Контейнеры стартуют быстро, ресурсы используются плотно — в теории всё красиво. Но у этого подхода есть архитектурная проблема, и она же — потенциальная огромная дыра в безопасности: из контейнера можно выбраться на хост и дальше добраться до данных других пользователей. Как ни усиливай безопасность, полная изоляция на уровне Docker-контейнеров невозможна. 

Так что мы решили вернуться к классическим виртуальным машинам. С точки зрения изоляции и безопасности это самый прямой и понятный вариант: у пользователя своя VM, свой диск, всё работает как обычная машина в облаке. Можно держать длительные сессии, спокойно хранить состояние на диске, не придумывать сложные схемы персистентности. 

Очевидный минус — скорость старта. Обычная виртуалка поднимается 2–3 минуты в зависимости от конфигурации, и это не считая времени, которое уходит на клонирование репозитория и настройку окружения. Такого мы себе позволить не могли, поэтому придумали, как объединить безопасность и надёжность VM с быстрым стартом serverless.

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

Когда пользователю нужно рабочее пространство, мы берём уже готовую VM из пула и запускаем на ней окружение CDE. Время старта при этом укладывается в целевые 5 секунд для небольших репозиториев, причём уходит в основном на git clone и запуск IDE, а не на старт самой машины. На этом варианте мы и остановились. 

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

Дальше была чистая инженерия: как вокруг пула предпрогретых виртуальных машин собрать архитектуру CDE.

Как устроена облачная IDE на уровне компонентов и архитектуры

В качестве базы для рабочего места пользователя в CDE мы используем предустановленный Code Server с базовыми плагинами и тулингом. Окружение воспроизводится через конфигурацию devcontainer. В репозитории можно указать:

  • расширения;

  • утилиты;

  • конкретные зависимости для проекта;

  • настройки VS Code;

  • открытые порты;

  • переменные окружения. 

Запуск рабочего окружения происходит по одному из двух сценариев. 

1. Дефолтный CDE-образ и CDE-шаблоны. Компоненты SourceCraft (плагин SourceCraft Code Assistant, SourceCraft CLI, Yandex CLI) упакованы в OCI‑образы в формате devcontainer-фичей. При сборке базовых дисков для виртуальных машин из CDE-пула эти образы подтягиваются и встраиваются в них. За счёт этого при запуске дефолтного CDE-образа не нужно скачивать тяжёлые образы из внешнего хранилища и рабочее пространство стартует быстрее. 

2. Devcontainer-конфиг в пользовательском репозитории. При запуске рабочего пространства эта конфигурация читается, и рабочее окружение дообогащается нашими компонентами до нужного состояния автоматически. Репозиторий пользователя, на котором запущено рабочее пространство, клонируется и настраивается для работы с ним.

Жизненный цикл рабочего пространства

Для управления рабочими пространствами мы сделали отдельный сервис. Через него пользователь:

  • запускает новые инстансы;

  • смотрит существующие;

  • ставит на паузу; 

  • удаляет. 

Этот же сервис по времени последнего запроса через прокси понимает, когда рабочее пространство запускали в последний раз.

Lifecycle: запуск/остановка/удаление рабочего пространства

Lifecycle: запуск/остановка/удаление рабочего пространства

Если рабочее пространство не использовали больше часа, оно переходит в режим паузы: виртуальная машина останавливается, но диск пока сохраняется. Если активности нет больше двух недель, инстанс удаляется — и ресурсы освобождаются. Это позволяет не держать висящие машины, о которых все забыли, и не заставлять пользователя вручную вычищать старые окружения.

Всё, что важно для разработки, мы держим на диске виртуальной машины: 

  • код;

  • расширения;

  • утилиты;

  • настройки.

И всё это переживает паузы и рестарты, пока пользователь не удалит машину сам или пока не сработает наш сервис очистки. 

Оперативная память VM очищается во время остановки, сохраняются только данные на диске. Для IDE этого достаточно — важнее, чтобы не пропадали код, настройки и установленный инструментарий.

Аутентификация и авторизация

Рабочие пространства живут на отдельном верхнеуровневом домене sourcecraft.space, не на том же, что основной сайт SourceCraft. Это сделано для безопасности: всё, что выполняется внутри CDE, не должно иметь доступа к основной платформе. Обратная сторона в том, что мы не можем взять сессионную куку с основного домена sourcecraft.dev из-за другой зоны. Именно поэтому аутентификацию пришлось делать прямо в Reverse Proxy (GoLang-сервис в Managed K8S в Yandex Cloud), а не на фронте. Схема нетипичная, но по‑другому здесь просто не складывалось. Если делать аутентификацию на стороне Backend for Frontend, то придётся использовать его в качестве прозрачного прокси, а это плохая идея с точки зрения безопасности.

Runtime path: подключение к запущенному рабочему пространству

Runtime path: подключение к запущенному рабочему пространству

Снаружи к виртуальным машинам подключиться нельзя. Все запросы из браузера сначала приходят на Application Load Balancer, а оттуда попадают в Kubernetes‑кластер, где работает прозрачный Reverse Proxy. Он не разбирает содержимое запросов, но знает, от какого пользователя они пришли и к какому рабочему пространству их можно пускать.

Когда пользователь заходит в CDE, прокси по OpenID Connect аутентифицирует его через IAM, получает куки сессии, привязывает её к домену конкретного рабочего пространства. Дальше все запросы приходят уже с этими куки, а прокси по ним авторизует пользователя и перекидывает запрос на нужную виртуальную машину.

Мультизональность

Ещё одна задача, которую нам важно было решить для устойчивости CDE, — работа сразу в нескольких зонах доступности. В нашей архитектуре Reverse Proxy и виртуальная машина, к которой он проксирует трафик, должны находиться в одном ЦОД. Если запрос случайно прилетит в прокси из другой зоны, он свою машину просто не увидит. 

При этом мы хотели, чтобы CDE умела «жить» сразу в нескольких дата-центрах. Для этого нашли довольно простое решение. 

Каждый прокси при деплое знает, в какой зоне он работает. Когда пользователь запускает новое рабочее пространство, прокси явно передает CI указание, в какой зоне создать VM. Для доступа к каждому рабочему пространству генерируется URL. В качестве поддомена в него добавляется буква, которая обозначает зону доступности, а на балансировщике мы настраиваем маршрутизацию по этим поддоменам. В итоге запрос от пользователя сразу прилетает в нужный ЦОД, к тому прокси, который «видит» свою VM, и дальше трафик идёт по короткому пути.

Есть важная особенность, о которой не могу не упомянуть: если одна зона сбоит, размещённые в ней рабочие пространства временно недоступны, а после восстановления связности их снова можно будет запускать. Это крайне редкая ситуация и неидеальный сценарий, но по сравнению с вариантом «все яйца в одной корзине» переносится гораздо легче. К тому же во время сбоя можно свободно запускать виртуальные машины в других зонах. 

Ограничения облачной IDE, которые мы планируем исправить 

CDE уже активно используют разработчики внутри Яндекса, поэтому у нас есть отзывы и направления для будущей работы. И да, часть отзывов о том, что работает не так, как хотелось бы. Это нормальная история: когда система начинает жить, сразу становится понятно, чего в ней не хватает.

Например, разработчики просят доступ к виртуальной машине по SSH и другим TCP-протоколам. Такой доступ даёт практически полный контроль над окружением: позволяет проводить детальную диагностику, тонко настраивать IDE или даже заменить её на другую IDE или другие инструменты по своему выбору. 

Кроме того, разработчикам нужна возможность запускать Cloud IDE в пользовательских сетях или сетях других облачных провайдеров, интегрировать Cloud IDE с внешними сервисами для тестирования end-to-end сценариев. Чтобы сохранить безопасность CDE и при этом открыть доступ к виртуальным машинам извне, мы планируем использовать архитектуру Reverse Tunnel Proxy. Она сочетает обратное проксирование с принципом туннельного соединения. 

В основе Reverse Tunnel Proxy лежат агент туннеля, который развёрнут на виртуальной машине с CDE, и сервис туннелирования. Агент инициирует и поддерживает долгоживущее TCP‑соединение с сервисом, а тот, в свою очередь:

  • принимает входящие подключения от агентов;

  • аутентифицирует и авторизует агентов;

  • идентифицирует агента по метаданным;

  • поддерживает пул активных TCP‑соединений.

Архитектура Reverse Tunnel Proxy устраняет ключевое ограничение классического Reverse Proxy — зависимость от прямой сетевой доступности целевых ресурсов. 

От пользователей поступают запросы на запуск в CDE длительных автономных ИИ-агентов. Это актуальный сценарий для многих разработчиков, поэтому мы адаптируем CDE для него в приоритетном порядке.

Веб-IDE закрывает не все сценарии работы, поэтому мы планируем расширить Spaces и на десктопную версию.

Я не ставлю вопрос, заменит ли наша облачная IDE привычные JetBrains или VS Code. Мы и не добивались такой цели. Но я бы хотел, чтобы больше коллег, не только в Яндексе, попробовали новый инструмент, оценили его возможности. Давайте обсудим, какие ещё сомнения есть у вас, что вы хотели бы знать о CDE, прежде чем начать работать в ней?