На этом Google IO google показал новый инструмент разработки - https://jules.google.com
В чем плюсы: пока бесплатный, работает на gemini, и это AI Agent.
Что это значит (пример):
Часто бывает проблема, что кол-во модулей в проекте или библиотек которые хотелось бы сделать, превышает кол-во которое можно поддерживать. Особенно если ведешь open source библиотеку.
Background агенты позволяют взять часть работы - нашел полезными для документации, легкого рефакторинг и имплементирования небольших фич.
Чтобы начать, обычно можно использовать небольшой промпт чтобы предсоздать план по которому Jules будет частично следовать (на самом деле она пересоздаст план, но имея рефренсы ей будет проще):
Please write condensed plan for AI Agent, so he could execute it step by step.
Make sure that plan has ony onne final goal otherwise ask user what to do.
Make sure, that plan contains orginal links to sources, chosen configuration script, and written that way, so it would be possible to copy & paste in one click.
Этот план можно создать в любом AI чате, но желательно при работе с планом указывать проект / документацию с которой в дальнейшем агент будет работать.
Важная часть промпта, которую нужно включить в промпт-план - это установка flutter в ubuntu:
Always add as first steps:
1. Branch & Environment Setup
1.1 Create a new branch from the default branch (e.g., {name}).
1.2 Run the provided environment setup scripts to ensure Dart, FVM, and Flutter are correctly installed and configured.
- For flutter fvm (should be dependent from what user asks):
```
# Install Dart SDK (using apt, official Google repo)
sudo apt-get update
sudo apt-get install -y apt-transport-https wget
wget -qO- https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
sudo sh -c 'wget -qO- https://storage.googleapis.com/download.dartlang.org/linux/debian/dart_stable.list > /etc/apt/sources.list.d/dart_stable.list'
sudo apt-get update
sudo apt-get install -y dart
# Add Dart to PATH
export PATH="$PATH:/usr/lib/dart/bin"
# Install FVM globally
dart pub global activate fvm
# Add FVM to PATH
export PATH="$PATH:$HOME/.pub-cache/bin"
# Install Flutter version from .fvmrc
fvm install
# Get Flutter dependencies
fvm flutter pub get
```
- For flutter without fvm:
```
# Install Dart SDK (using apt, official Google repo)
sudo apt-get update
sudo apt-get install -y apt-transport-https wget
wget -qO- https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
sudo sh -c 'wget -qO- https://storage.googleapis.com/download.dartlang.org/linux/debian/dart_stable.list > /etc/apt/sources.list.d/dart_stable.list'
sudo apt-get update
sudo apt-get install -y dart
# Add Dart to PATH
export PATH="$PATH:/usr/lib/dart/bin"
flutter pub get
```
Почему это важно:
Изначально Jules (как и Cursor background agents и Codex) запускаются в изолированном environment.
И поскольку dart & flutter обычно в контейнере нет, то их нужно установить принудительно перед началом работы над проектом.
Декларируя это в начальном промпте - мы говорим более четко, как агент должен действовать, и поэтому у нее получится более качественно проработать задачу.
Надеюсь, что этот концепт окажется полезным :-)
Пожалуйста делитесь своими мыслями в комментариях:-) это поможет сделать эту статью видимой для других и будет здоровской поддержкой и мотивацией:-)
Спасибо за ваше время и хорошего дня!
Антон