Разработчик под ником nik251021 опубликовал на GitHub утилиту gitTalk, которая призвана упростить работу с Git для тех, кто не хочет запоминать синтаксис команд. Инструмент написан на Go и использует Google Gemini API для преобразования запросов на естественном языке в исполняемые команды Git. Проект позиционируется как решение для новичков и людей, которые часто забывают нужные команды, что замедляет их работу.

Суть gitTalk в том, что пользователь вводит фразу вроде «Инициализируй репозиторий и закоммить его под именем: привет мир и запушь на гитхаб по юрл: https://github.com/nik251021/gitTalk», а утилита сама выполняет последовательность действий. Для этого используется пакет google.golang.org/genai, который, по словам автора, оказался простым в использовании. Автор выбрал Golang, чтобы расширить портфолио, так как раньше предпочитал C++ и OpenGL, но решил не отставать в изучении Go.

В процессе разработки возникли две ключевые проблемы. Первая — Gemini по умолчанию пытался отвечать пользователю текстом, а не выполнять команды. Это решили более строгим промптом, который явно указывает модели, что нужно генерировать команды, а не пояснения. Вторая проблема касалась парсинга аргументов: если Gemini возвращал команду с пробелами внутри кавычек, например git commit -m "Fixed readme.md", код разрезал строку по пробелам, ломая команду. Автор исправил это, перейдя на выполнение через bash: cmd:= exec.Command("bash", "-c", cmdStr).

Сейчас gitTalk доступен как open-source проект. Пользователь может склонировать репозиторий, настроить API-ключ Gemini и запускать утилиту одной командой. Это не единственный подобный инструмент: существуют и другие ИИ-ассистенты для командной строки, например, Warp, который также использует ИИ для автодополнения команд, но gitTalk выделяется простотой и ориентацией именно на Git. Для новичков это может стать удобной альтернативой заучиванию синтаксиса, хотя стоит помнить, что автоматическая генерация команд требует проверки, особенно при работе с удалёнными репозиториями.

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