Действительно ли ИИ-терминал Warp настолько хорош - Академия Selectel

Действительно ли ИИ-терминал Warp настолько хорош

Тирекс
Тирекс Самый зубастый автор
25 марта 2026

Прикидываемся ветошью и поручаем терминалу со встроенным ИИ сделать почти все за нас.

Изображение записи

Потыкал я на досуге один из ИИ-терминалов и делюсь этим опытом. Об установке писать не буду, там все банально и просто: тыкаете мышкой и готово. А вот дальше — все очень занимательно. Экспериментировать я буду на своих реальных задачах, поэтому часть функционала в статье не упомяну. У всех разные задачи и потребности, здесь нет серебряной пули. Поехали!

Статью написал Роман Шубин, CTO и автор телеграм канала Bash Days.

Общие впечатления

Warp преподносит себя как терминал для DevOps-инженеров или аналог нашумевшего Cursor. То есть инструмент, который в 99% будет работать за вас, успевайте только командовать. Но желательно уметь правильно выражать мысли, а то наколдуете вместо золота кусок невнятного «ничего».

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

Окно терминала после запуска. Пока все выглядит, как в обычном терминале без ИИ.

Есть нюанс. Я запустил Warp на Windows, а вся моя основная работа проходит в WSL под дистрибутивом Ubuntu. Как быть? Все решается довольно просто: нажимаем Ctrl+Shift+P и выбираем нужное окружение:

Для выбора окружения достаточно ввести в строке поиска new и выбрать один из предложенных вариантов.

Проверяем и видим, что все прошло как по маслу:

Выбрана Ubuntu 24.04.

Я внутри WSL. Аналогичное можно провернуть из контекстного меню самого Warp, что даже удобнее:

Выбор окружения через контекстное меню из выпадающего списка.

Для полноценной работы все готово. Почти…

Я привык пользоваться терминалом в quake или dropdown-режиме. В этом режиме вы привязываете открытие терминала на горячую клавишу, по нажатии которой терминал «всплывает» поверх других окон. Нажали второй раз — терминал спрятался. Скорость работы в разы становится выше.

Включается такой режим через SettingsFeaturesKeysGlobal HotkeyDedicated hotkey. Я для теста повесил на F2.

Окно настройки, в котором включается dropdown-режим.
Странно что этот режим запрятали так далеко, найти его было тем еще квестом.

Работает! Но в этом режиме работает плохо по сравнению с другими подобными терминалами. После открытия и закрытия в терминал попадают управляющие символы и каждое нажатие клавиш сопровождается звуком колокольчика.

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

  • клонировать git репозиторий,
  • создать в нем простой Flask-сервер,
  • завернуть в Docker-образ,
  • создать новую ветку и запушить в нее,
  • написать пайплайн для деплоя,
  • базово настроить новый сервер,
  • поднять Podman,
  • выкатить Flask-сервер в продакшен,
  • выполнить несколько дополнительных задач.

Посмотрим, справится ли этот Warp с задачами или наоборот создаст мне головняк. Приступим.

Клонируем git-репозиторий

Ввожу промт: «Склонируй репозиторий git@github.com:bashdays/warp_test.git».

Процесс ввода команд.

Ага, видим команду, которую он хочет выполнить. Спрашивает — Run? Конечно, Run! Если нажать стрелочку в этой кнопке, то можно выбрать Auto-approve, то есть, все команды будут выполняться без вашего участия.

Выпадающее меню у кнопки "Run". Есть просто "Run", а есть "Auto-approve".

Но настоятельно рекомендую не включать автоматический режим, по крайней мере, на продакшене. Не ровен час получишь окирпичивание сервера.

Процесс ввода команд.

Супер, видим что репозиторий склонирован и он пустой. Мое первое впечатление — господи, какой же он тормозной! Руками бы клонирование заняло пару секунд, а тут он думал секунд 15. Но опять же, возможно, это зависит от модели, через которую он думает. В эру блокировок непонятно, кто кого замедляет.

Создаем Flask-сервер

Кидаем промт: «в папке с новым репозиторием, создай ветку dev, создай структуру файлов для поднятия простого flask сервера, который будет работать на 8080 порту, порт можно менять через .env файл, дополнительно нужно создать dockerfile для сборки образа и compose файл для поднятия сервера в podman, когда все будет протестировано и готово, запуш проект в репозиторий».

Процесс ввода промта.

Пошло-поехало, теперь только успевай проверять и апрувить команды и файлы. Основной код сервера написан, выглядит вменяемо:

Основной код сервера.

Файл с зависимостями, вопросов нет.

Файл с зависимостями.

Создан файл .env с конфигурацией, как раз тот самый порт 8080.

Файл с конфигурацией.

Тут я был удивлен — Warp предложил создать .gitignore, хотя я не просил. Ладно, пусть будет, спасибо.

Warp сам предлагает правильные вещи, даже если его об этом не просили.

Dockerfile подъехал, годится, оставляем.

Dockerfile на месте.

Compose готов, даже переменные подставил, прекрасно.

Compose тоже на месте.

Опа, а это интересно! Он предлагает протестировать сборку образа, проверяет, установлен ли у меня Podman либо Docker. Соглашаемся.

Warp предлагает протестировать сборку образа.

Супер, образ собран, дальше видим, что оно хочет его запустить и проверить. А давай!

Warp предлагает запустить и проверить сборку.

Подтверждение, что сервер работает.

Проверка пройдена, все хорошо, остался последний шаг.

Процесс проверки.
Подтверждение, что все ок.

Готово!

Структура проекта, отображаемая в терминале.

Хммм…. Идем в репозиторий и смотрим, что внутри: 

Что получилось в репозитории. Все на местах.

Великолепно. Просто магия какая-то. Я потратил около 20 секунд на описание задачи, а все остальное сделал Warp. Да, если бы я включил auto-approve было бы заметнее. Что прикольно, в репозиторий не попал файл .env в чистом виде — это как раз заслуга ИИ, который вовремя вспомнил об этом и предупредил утечку критичных данных.

Что по минусам.

  • Скорость работы самого терминала. Господи, какой же он тугой. Нет, не выдача результатов от ИИ, а именно внутренние ощущения, как будто он на какие-то доли секунды подвисает. Это напрягает.
  • Ну и возникли проблемы с копипастой. Ctrl+C/Ctrl+V как-то совсем неадекватно работает, приходится пользоваться контекстным меню. Но тут опять же личные предпочтения — я привык к другому терминалу и, наверное, слишком много хочу.

Настройка сервера

Да, сначала нужно подготовить новый сервер и только потом писать пайплайн для деплоя. Я создал новую виртуальную машину с внешним IP 155.212.238.11.

Пишем промт: «подключись по ssh серверу 155.212.238.11 с ключом shuba под юзером root, обнови пакеты, установи podman и всё необходимое чтобы задеплоить проект из git репозитория который ты сделал выше, установи mc и htop, деплоить ничего не нужно, нужно подготовить только сервер».

Ввод промта.

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

Процесс рассуждений ИИ-помощника.

Ага, ключи нужные нашел, отлично.

Подключается к серверу для настройки.

А вот собственно и команды, которые он собирается выполнить, поехали!

Отображение списка команд, выполняемых терминалом.

Процесс пошел. Выглядит страшно. Никакого контроля, вот поэтому не рекомендую повторять такое на продакшене.

Оно само работает и описывает, что делает.

Готово. Идем на сервер и проверяем:

Тест Podman.
Тест git.
Кэш, конфиг, SSH и прочее.
Тут все хорошо.

С виду все в порядке: все, что просили, Warp успешно сделал.

Пишем пайплайн

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

Вводим промт.

Перебирает SSH-ключи, правит локальные конфиги. А вот и готовый пайплайн:

Готовый пайплайн.

Не указав в запросе имя SSH-ключа, Warp перебрал все доступные в папке ~/.ssh и выбрал подходящий, с которым смог подключиться. Хотя у меня ключ изначально был другой. Ладно.

По итогу все прошло хорошо. Снова идем в репозиторий и смотрим в наш пайплайн:

Отображение пайплайна в репозитории.

Супер! Все само куда нужно залетело и запустилось. Не смею вам мешать, дорогой Warp.

Идем в action и смотрим:

Actions.

Вот это да! Кажись, оно и задеплоилось. Ну правильно, ведь пайплайн будет запускаться при любом коммите в ветку dev. Справедливо. Ладно, идем на сервер:

Смотрим на сервер.

Ха! Шикарно, оно уже и работает. Посмотрим в браузере:

Смотрим в браузер.

Работает, собака! Ну что вам сказать, дорогой читатель? Это было волнительно.

Давайте плюсом запихнем туда экспортер для Prometheus и попросим написать bash-скрипт.

Вводим промт: «установи на сервер node_exporter, напиши bash скрипт и положи в /usr/local/sbin который будет через curl получать ответ страницы selectel.ru и создавать prometheus файл с метриками, этот файл должен подхватывать node_exporter, не забудь про крон для скрипта».

Вводим промт.

Умный! Сразу подцепил текстовый коллектор уже на этапе установки экспортера метрик, молодец.

Проверяем:

Видим, что node_exporter установлен.

Экспортер успешно установлен, проверяем скрипт:

Проверяем скрипт.

Проверяем, как экспортер подхватил метрики из скрипта:

Проверяем метрики.

Проверяем кроны:

Проверяем кроны.

Ну что тут сказать: ни единого падения, все мои запросы были обработаны с первого раза. Я потратил время лишь на создание этих запросов. Чувствую себя тимлидом и каким-то начальником, который дал задачу подчиненному. Но в отличие от подчиненного, все задачи были сделаны за минимальный отрезок времени.

Что прикольно, команды можно не писать текстом, а наговаривать в микрофон. Это прям киллер-фича. Надиктовал и пошел кофе пить, а оно вам само инфраструктуру подняло и выкатило ваши поделки.

Ну и самое интересное. Давайте попробуем скомандовать удалить сервер. Как думаете — выполнит?

Командуем: «эй ты, мне больше этот сервер не нужен, сотри все данные на нем».

Вводим промт.

А не хочет! Попробуем уломать:

Вводим другой промт.

Вот так, защита от дурака присутствует, и это хорошо. Но сдается мне, если подключить свою анархическую модель, она даже не спросит и просто уничтожит все по щелчку пальцев.

Кстати, впервые с ИИ в терминале я познакомился, когда писал о SelectOS. На сайте реализован функционал по поиску документации, этакий AI-консультант.

Manpages.

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

Выводы

Да, сам Warp по ощущениям неповоротливый. И на каждый день, я бы его не стал использовать. Но под какие-то рутинные задачи вполне сгодится. Самый большой минус — он платный. Бесплатного периода надолго не хватит, а чтобы оплатить подписку из РФ, нужно очень сильно постараться. Палка о двух концах. Но если есть возможности и деньги, почему нет.

Все эти «умные терминалы» способствуют деградации, проверено на себе. С одной стороны, задача решается быстрее с таким помощником. С другой, вы не задумываетесь о последствиях и мозг теряет бдительность и нейронные связи. Внезапно отключили интернет — и вы как слепой котенок будете сидеть в черном окне, не зная, что делать. Ведь за вас это делал робот.

Я уверен, что на рынке полно таких ИИ-терминалов. Сильно не вникал в эту область, хватило и этого опыта в Warp. Все остальное, думаю, будет похожим.

Это как в меме, когда упал Cloudflare, разработчики полезли в ChatGPT чат за советом, а он не работает, потому что OpenAI проксировался через Cloudflare. Получился замкнутый круг. Как в бородатом анекдоте — unzip.zip.

Даже создание простых алиасов в Shell — это вредная привычка. Попадете вы на голый сервер — и чего? Все ваши короткие алиасы не работают. А тот же Warp — целая языковая модель, которая сама думает и решает за вас: минимум усилий, минимум знаний.

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

А вот если вы метите в IT, то — никаких Warp, только хардкор: через страдания, насмотренность и мышечную память.

Такие дела. Как говорил мой друг — всегда думайте своей головой.