Bolt: Перший досвід

Що можна сказати про bolt.new після 20 годин використання та створення 2 застосунків:

  • Вдалося зробити простий проєкт відображення даних з ansible inventory файлів у вигляді таблиці. Після першого ж запуску він зробив проєкт, який працював, показував усе, що потрібно, і робив це красиво. 2-3 години пішло на те, щоб зрозуміти, чого я хочу, і реалізувати. Сам би я таке робив 1-2 дні.
  • Середній проєкт універсального бота для chatops на базі LLM зробити не вдалося, хоча у мене є розгорнуте ТЗ, і я знаю, як воно має бути влаштовано. Bolt постійно тягнуло зробити веб, хоча це вторинно. Він намагався писати на JS замість TS. Кожна ітерація займала багато часу і коштувала дорого. У підсумку набридло його мучити.
  • Поки не підходить навіть для середніх проєктів, оскільки є очевидні складнощі з розміром контексту.
  • Bolt практично не інтегрований з їхньою власною online ide StackBlitz, аж до того, що код може загубитися.
  • Інтерфейс нескінченного чату, як на мене, не найкраща ідея, оскільки довжина контексту постійно зростає.
  • Іноді доводиться боротися з моделлю. Наприклад, вона постійно намагалася використовувати GPT-4 замість GPT-4o-mini, хоча я явно це написав. Взагалі модель дуже примхлива, і її складно переконати.
  • Дуже заточено саме на генерацію коду. У відповідь на запитання про те, як зробити щось, він пропонує генерувати код.
  • Швидкість генерації як у сучасних моделей. Попросив щось змінити і йдеш щось робити. 1, 2, 3 хвилини сидіти і дивитися на генерацію не дуже цікаво.
  • Після кожної модифікації застосунок намагається запуститися, але незрозуміло з якою саме командою. У підсумку в якийсь момент усе зламалося, і далі довелося запускати збірку руками.
  • Бачить логи, але часто не визначає в них помилки. Доводиться підказувати.
  • Можна швидко скасувати зміни, зроблені агентом. Працює відмінно!
  • Не генерує тести, якщо не попросити.
  • Бракує підсвічування помилок прямо в коді. Але це знову ж таки до інтеграції з IDE.
  • Набагато краще працює з TypeScript, ніж з JavaScript. Що логічно, оскільки для цього потрібно менше контексту.
  • Починає губитися, якщо правок багато. У якийсь момент статичний аналізатор знайшов відразу 20 помилок, і на виправлення довелося витратити близько 10 генерацій.
  • Базового платного акаунта вистачає на весь день, якщо проєкт невеликий.

Це наступний рівень після Copilot і навіть Zed. Воно найближче до того, як мають бути влаштовані IDE в майбутньому — повноцінний асистент, який пише код за завданням. Але поки з дитячими хворобами. Хотілося б щось швидше, більш інтегроване в IDE і більш інтерактивне. І бажано у моїй IDE локально, а не в хмарі. Взагалі дивно, що JetBrains досі не зробили нічого подібного, а займаються всякими дрібницями.