Кризис интерфейсов современных IDE в эпоху ИИ-агентов

“Мы получили мощных исполнителей и продолжили сажать их в подвал.” Так звучало в описании к круглому столу сообщества SpbDotNet Встреча №121 О чем речь?

Мы двадцать лет оптимизировали IDE под человека: подсветка, автодополнение, рефакторинг, дебаггер. А потом пришли агенты — и оказалось, что наш главный инструмент говорит с ними на языке каменного века. Мы заворачиваем их в CLI, парсим stdout, строим самодельные оркестраторы поверх терминала и делаем вид, что это «нормально». Терминал — это отличный транспорт. Но это плохой дом. В нем нет места для наблюдаемости, для ревью диффов от пяти агентов одновременно, для отката, для совместной работы человека и машины над одной задачей.

На этом круглом столе встретились люди, которые строят инструменты для .NET-разработки: Анатолий Кулаков  Организатор и лидер SpbDotNet — сообщества .NET-разработчиков в Санкт-Петербурге. Иван Сорокин  Участник группы разработки и тестирования Kontur IDE Фёдор Сазонов CEO OpenIDE — российской среды разработки Олег Чирухин Руководитель разработкой GigaIDE Cloud и других IDE в СберТехе

Так почему наши IDE застряли в каменном веке?

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

Итак, раньше IDE (например, Rider, Visual Studio) создавались исключительно под человека: чтобы текст было удобно читать и править. Теперь код пишут ИИ-агенты, но взаимодействуют они с IDE через «костыли»: виртуальный терминал, консольные команды (CLI) и чтение текстового вывода (stdout). Ожидала, что именно в этом ключе и пойдет дискуссия: как сделать IDE «родным домом» и для человека, и для ИИ.

Но разговор был больше про то, как сделать IDE удобнее для человека теперь, когда часть кода пишут агенты (а то и весь). Например, добавить чаты с агентами, чтобы ход рассуждений был более прозрачным. Так же говорили и о том, что разработчики теперь берут на себя и другие роли (тестировщика и опса) и IDE  должна помогать и в этом.

Так о чем же я узнала при подготовке к этому событию и какие дискуссии я ожидала услышать?

GitHub Copilot / JetBrains AI - «умное автодополнение». ИИ-Агенты - автономные исполнители. Агент сам открывает файлы, пишет код, запускает тесты, правит ошибки, если тесты упали, и делает коммит. Сейчас агент делает всё это «вслепую» через терминал. Ему трудно понять контекст проекта так, как его понимает IDE (где есть дерево синтаксиса, связи между классами и т.д.). В .NET очень мощный статический анализ благодаря компилятору Roslyn. Roslyn знает о коде всё. Но как отдать эти богатые данные компилятора Roslyn напрямую ИИ-агенту, минуя текстовый терминал, чтобы агент «видел» архитектуру проекта так же глубоко, как и сама IDE? Готового, стандартизированного моста между «мозгом» IDE и «мозгом» ИИ сейчас просто нет.

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

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

#QA #Testing #DotNet #AI #Rider #Cursor #Контур