Bolt: Първи впечатления

Какво може да се каже за bolt.new след 20 часа използване и създаване на 2 приложения:

  • Успях да направя прост проект за показване на данни от ansible inventory файлове под формата на таблица. Още при първото стартиране той създаде проект, който работеше, показваше всичко необходимо и изглеждаше добре. Отне ми 2-3 часа, за да разбера какво точно искам и да го реализирам. Сам бих правил това 1-2 дни.
  • Не успях да създам средно голям проект за универсален бот за chatops на базата на LLM, въпреки че имам подробно задание и знам как трябва да бъде устроено. Bolt постоянно се стремеше да прави уеб част, въпреки че тя беше второстепенна. Опитваше се да пише на JS вместо на TS. Всяка итерация отнемаше много време и струваше скъпо. В крайна сметка ми омръзна да се мъча с него.
  • Все още не е подходящ дори за средни проекти, тъй като има очевидни трудности с размера на контекста.
  • Bolt практически не е интегриран с тяхната собствена онлайн среда StackBlitz, до такава степен, че кодът може да се загуби.
  • Интерфейсът на безкрайния чат според мен не е най-добрата идея, тъй като дължината на контекста постоянно расте.
  • Понякога се налага да се борите с модела. Например, той постоянно се опитваше да използва GPT-4 вместо GPT-4o-mini, въпреки че изрично бях посочил обратното. Като цяло моделът е много своенравен и трудно се разубеждава.
  • Много е насочен именно към генериране на код. В отговор на въпроси как да се направи нещо, той предлага генериране на код.
  • Скоростта на генериране е като при съвременните модели. Поисквате промяна и отивате да вършите нещо друго. Да седите и да гледате генерирането в продължение на 1, 2 или 3 минути не е особено интересно.
  • След всяка модификация приложението се опитва да се стартира, но не е ясно с каква точно команда. В един момент всичко се счупи и се наложи да стартирам компилирането ръчно.
  • Вижда логовете, но често не разпознава грешките в тях. Налага се да му се подсказва.
  • Промените, направени от агента, могат да бъдат отменени бързо. Работи отлично!
  • Не генерира тестове, освен ако не бъде поискано.
  • Липсва подчертаване на грешките директно в кода. Но това отново се отнася до интеграцията с IDE.
  • Работи много по-добре с TypeScript, отколкото с JavaScript. Което е логично, тъй като за това е необходим по-малко контекст.
  • Започва да се губи, ако промените са много. В един момент статичният анализатор откри наведнъж 20 грешки и за поправянето им бяха нужни около 10 генерации.
  • Базовият платен акаунт е достатъчен за целия ден, ако проектът е малък.

Това е следващото ниво след Copilot и дори Zed. То е най-близо до това как трябва да бъдат устроени IDE в бъдеще — пълноценен асистент, който пише код по задание. Но все още има „детски болести“. Бих искал нещо по-бързо, по-интегрирано в IDE и по-интерактивно. И за предпочитане локално в моето IDE, а не в облака. Всъщност е странно, че JetBrains все още не са направили нищо подобно, а се занимават с всякакви дреболии.