Джарвис — мощный ИИ для программиста

Посмотрев Железного человека, у меня с детства были мечты сделать ИИ-помощника: через Voice Commander я настроил голосовое управление Windows 98 чтобы он двигал мышкой и запускал программы, но это выглядело скорее эффектно, нежели эффективно. Ведь даже распознавание голоса в те времена было грандиозной задачей, а умение поговорить ожидалось не ранее чем через 100 лет.

Наступил 2024.
Я созревал как программист, выучился стекам, фреймворкам и создал свои шаблоны для быстрого поднятия любых проектов. Так я медленно шёл к стартапам, выполняя обычную работу под заказ.

Я написал тонну кода на ChatGPT и понял, что он способен писать на моих шаблонах, надо только дать информации как всё устроено.

Он способен работать с моей базой, надо только умело просить, и дать ему доступы.

Много рутины бывает и GPT выглядел как идеальным способом её наконец разрешить.


Первая версия. Это ядро приложения, которое принимает текстовый ввод, анализирует задачу, запрашивает в гпт что надо дополнить и пишет это. Фактически это Copilot, который сейчас добавляется во многие IDE.

Накодив первые результаты, стало ясно: у меня есть не файлы с кодом, а проекты. Я сделал поддержку проектов.

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

Управление БД. Мне давно хотелось сделать чтобы он сам управлялся базой по моему запросу, и я это сделал, добавив верификацию корректности кода. Он способен сам создать не одно поле, а все таблицы с нуля и заполнить их, если надо.

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


Чтобы кодить было удобнее, я попросил Джарвиса написать мне плагин для VSCode, который тонко бы получал инфу и отдавал её себе же для анализа. И вот так, ничего не зная о написании плагинов, я сделал его.

Джарвис сам для себя это сделал.

И теперь к интерфейсу ввода, у меня появилась тесная интеграция с IDE.

Он извлекал из VSCode файлы и сам определял запущенный проект, извлекал структуры таблиц, и делал локальный деплой.

НО. Бывает неясно что конкретно он переписал. Я добавил ему поддержку Git, чтобы видеть новое, и иметь быстрый откат. Теперь Джарвис создавал для себя отдельную ветку с изменением и сам коммитил успешные.


Настало время стать ближе к моим шаблонам и создавать то что нужно за секунды.

Во-первых установка новых проектов — перенёс все свои скрипты установки, переписав их с помощью Джарвиса на C#.

Я добавил поддержку Vue 3 + TypeScipt, Yii2, Bash итд, но главное — моего автоматического регенератора моделей из таблиц.

Теперь Джарвис может не то создать базу, но сам настраивает модели. Огромная рутина была сброшена с моих плеч. Стоит добавить, чтобы он миграции подбивал.


Работа

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

Что будет дальше?

Посмотрим.


Comments

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *