WorkAI

Инструмент: Git

Как агент WorkAI работает с git локально: смотрит статус и историю, коммитит, переключает ветки, синхронизируется с удалённым репозиторием.

Агент умеет работать с git прямо в вашей рабочей копии — смотреть статус, коммитить, переключать ветки, синхронизироваться с удалённым репозиторием. Это тот же git, что установлен у вас в системе: агент вызывает его через тот же встроенный API, которым пользуется штатное расширение Source Control редактора, а не отдельную реализацию и не шелл-команды напрямую.

Авторизация — целиком на вашей системе. WorkAI не хранит и не запрашивает ваши git-креды: доступ к удалённому репозиторию определяется тем, что уже настроено в системном git — keychain, SSH-ключ, credential manager. Это значит, что инструмент работает с любым git-хостингом — GitHub, GitLab, Bitbucket, self-hosted сервер — без разницы, для git это просто удалённый репозиторий.

Что умеет агент

Смотреть состояние

  • Список git-репозиториев в текущей рабочей области и какой из них активен.
  • Статус: ветка, upstream, на сколько коммитов репозиторий впереди или позади, изменённые, застейдженные и неотслеживаемые файлы, конфликты.
  • История коммитов — сообщения, авторы, даты, статистику по изменённым файлам.

Менять состав коммита

  • Добавлять файлы в индекс (стейджить) — конкретные пути или все изменения сразу.
  • Убирать файлы из индекса обратно.
  • Создавать коммит по сообщению — при необходимости с флагами вроде «закоммитить все отслеживаемые изменения без отдельного стейджинга», amend, signoff или пустой коммит.

Синхронизироваться с удалённым репозиторием

  • Забирать обновления без слияния (fetch).
  • Подтягивать изменения в текущую ветку (pull).
  • Отправлять локальные коммиты (push) — форс-пуш в этой версии инструмента не поддерживается.

Работать с ветками

  • Переключаться на существующую ветку, тег или ref (checkout).
  • Создавать новую ветку — с опцией сразу на неё переключиться и с указанием базового ref.

Отменять изменения

  • Отменять изменения в конкретных файлах — в рабочей копии или в индексе, при необходимости с указанием ref, откуда восстанавливать.
  • Удалять конкретные неотслеживаемые файлы. Это необратимо, поэтому агент по умолчанию просит подтверждение.

Ни одна из операций не работает «на весь репозиторий разом» без явного списка путей — отменить изменения или удалить неотслеживаемое можно только по конкретным файлам, которые вы или агент перечислили.

Как это использовать

Отдельно вызывать git не нужно — агент решает сам, по ходу диалога, так же как с терминалом или поиском по коду. Если задача подразумевает коммит («сохрани изменения»), переключение ветки или отправку кода на сервер, агент сделает это в рамках выполнения задачи, без просьбы явно написать «выполни git commit».

Действия, которые меняют репозиторий — коммит, пуш, пул, чекаут, создание ветки, отмена изменений, удаление неотслеживаемых файлов — по умолчанию идут через подтверждение, как и другие мутирующие инструменты агента. Что именно требует подтверждения, а что можно один раз разрешить заранее — см. Безопасность агента и Режимы и разрешения.

Отличие от GitHub-интеграции Создателя

Это не то же самое, что интеграция с GitHub в режиме Создателя. Та интеграция — про экспорт и импорт целого проекта Создателя через приложение GitHub: привязка к репозиторию, выгрузка кода pull request'ом, импорт существующего репозитория в новый проект. Она работает только с GitHub и требует установки приложения.

Git-инструменты агента, описанные на этой странице, — про другое: они дают агенту доступ к обычному git в вашей рабочей копии, независимо от того, подключена ли где-то GitHub-интеграция вообще. Работают с любым хостингом, ничего не устанавливают и не запрашивают отдельных прав — используют тот же системный git, что и вы сами.

Похожие темы