2. Настройте и персонализируйте своего ассистента [GA]

Включение API — это то, что должен сделать администратор Bumble. Следует отметить, что это не относится к участникам, поскольку у участников может не быть доступа к консоли Google Cloud.

Необходимо добавить это в качестве предварительного условия для прохождения семинара администраторами облачных сервисов.

Настройка персонализации

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

Затем им нужно закрыть это всплывающее окно.

3. Настройка коннекторов данных [GA]

Это делает администратор Gemini Enterprise, а не участник. Поэтому укажите это как предварительное условие для участия в семинаре.

4. Основные взаимодействия с Jira Connector [GA]

Первым делом необходимо авторизовать коннекторы для каждого участника, чтобы они могли использовать коннекторы Jira и GitHub. Ниже приведены скриншоты, иллюстрирующие этот процесс.

image-1-jira-authozie.png

image-2-jira-authoziation-page.png

image-3-after-jira-authoziation.png

Сделайте то же самое для GitHub.

Также попросите отключить поиск Google при работе с коннекторами Jira или GitHub.

image-4-disable-google-search.png

1. Найдите ключ вашего проекта Jira — дайте инструкции, как открыть чат, чтобы задать вопрос Gemini (см. скриншот ниже).

Image-5-jira-list-projects.png

Сделайте то же самое и для других тестов, например, создания задач, комментариев, обновления статуса и т.д. Также обновите соответствующие скриншоты.

image-6-jira-create-projects-1.png

image-7-jira-create-projects-2.png

image-8-jira-create-projects-3.png

image-9-jira-comment-1.png

image-10-jira-comment-2.png

image-11-jira-comment-3.png

image-12-jira-status-1.png

image-13-jira-status-2.png

image-14-jira-status-3.png

5. Основные взаимодействия с GitHub Connector [GA]

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

Перед запуском необходимо указать участнику отключить другие коннекторы и оставить только GitHub.

Для всех тестов подберите соответствующие изображения и добавьте их соответствующим образом. Ниже приведены названия файлов скриншотов.

image-15-github-enable-1.png

image-16-github-list-repo-2.png

image-17-github-list-commit-3.png

image-18-github-list-pull-request-4.png

image-19-github-list-pull-request-summary-5.png

6. Перекрестная ссылка на документацию по выполнению [GA]

В разделе «Загрузка документа с требованиями» сначала необходимо выполнить шаг 2: «Загрузите файл с именем requirements.txt со следующим содержимым», чтобы участник получил созданный файл на свой ноутбук. Для создания файла .txt на Mac используйте встроенное приложение TextEdit. Откройте TextEdit, перейдите в верхнее меню, нажмите «Формат» > «Создать простой текст». Введите текст, нажмите «Файл» > «Сохранить», назовите файл (убедитесь, что он заканчивается на .txt), выберите место сохранения и нажмите кнопку. Предоставьте аналогичные инструкции для других ноутбуков.

Также «В интерфейсе чата Gemini Enterprise нажмите значок + (плюс) или перетащите файл для загрузки». На данном этапе это неактуально.

После создания текста требований откройте новое окно чата, отключите другие коннекторы и включите только Jira, затем создайте тестовые данные с помощью Gemini и запустите анализ. После этого необходимо загрузить текстовый файл в приложение Gemini. Ниже приведены названия файлов на скриншотах в порядке их появления.

image-20-jira-req-txt-1.png

Изображения для создания тестовых данных с помощью Gemini

image-21-jira-create-ticket-2.png

image-22-jira-create-ticket-confirmation-3.png

image-23-jira-create-ticket-done-status-confirmation-4.png

image-24-jira-create-ticket-confirmation-5.png

image-25-jira-create-ticket-inprogress-status-confirmation-6.png

image-26-jira-create-ticket-created-6.png

изображение-27-jira-create-tinjira-portal-7.png

Изображения для запуска анализа

image-28-jira-run-analysis-1.png

image-29-jira-run-analysis-output-2.png

Примечание: «Щелкните по ссылкам, указанным в ответе, чтобы проверить, на какую часть файла или задачи Jira ссылается Gemini». Я на самом деле не вижу этих ссылок.

7. Анализ бэклога спринта с помощью NotebookLM [GA]

Аналогично, сначала создайте текстовый файл, укажите инструкции для него, затем нажмите «Создать новую записную книжку». Затем загрузите файл с именем retro.txt, содержащий следующие макеты заметок:

Дайте инструкции по получению информации о том, на что следует нажимать.

Вот файлы изображений этих скриншотов.

image-30-notebook-lm-output.png

image-31-notebook-lm-mindmap.png

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

deep-research-1.png

deep-research-2.png

deep-research-3.png

9. Мозговой штурм с генерацией идей [Предварительный просмотр]

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

idea-agent-1

idea-agent-2

idea-agent-3

idea-agent-4

idea-agent-5

10. Создание многошагового помощника Scrum-мастера [Публичный предварительный просмотр]

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

Обратитесь к изображению scrum-master-1.png

Чтобы переименовать агента, необходимо щелкнуть по среднему полю, чтобы открыть боковую панель (см. изображения scrum-master-3.png и scrum-master-4.png).

Для следующего шага, необходимого для предоставления подсказки, обратитесь к изображению - scrum-master-5.png

На шаге 3 выполните следующие действия: агент фактически создаётся с включенным поиском Google, а также переименовывается в «Lead Scrum Master» (см. изображение scrum-master-6.png). Поэтому давайте уберём шаг 2 по переименованию агента в « Bumble-Lead-Scrum-Master », поскольку подсказка уже переименовывает его, но убедитесь, что он всегда называется «Lead Scrum Master».

Также в запросе укажите, что следует использовать только Jira и коннектор GitHub, а не поиск Google.

Также обновите остальную часть инструкций, указав текущее имя агента вместо « Bumble-Lead-Scrum-Master ».

Добавить специализированных субагентов

Шаг 1

В инструкциях указано, что ключ проекта ранее искался в шаге 1 лабораторной работы «4. Основные взаимодействия с Jira Connector [GA]».

Снимите галочку с поиска Google и оставьте только Jira.
См. изображения ниже и обязательно внесите соответствующие изменения в инструкции.

scrum-master-7.png

Scrum-master-8.png

Шаг 2

В инструкциях указано, что имя репозитория ранее искалось в шаге 1 раздела «Основные взаимодействия с GitHub Connector [GA]».

Снимите галочку с поиска Google и оставьте только GitHub.
См. изображения ниже и обязательно внесите соответствующие изменения в инструкции.

scrum-master-9.png

scrum-master-10.png

scrum-master-11.png

Этот запрос на самом деле ищет данные в общедоступном репозитории GitHub и выдает результат «Сгенерировать высокоприоритетное обновление для проекта Bumble за последние 24 часа». Это совершенно неправильно. Агент должен искать данные только в проекте Jira и репозитории GitHub, которые я указал. Не понимаю, зачем это нужно.

Результат, который я получил, показан на скриншоте - scrum-master-12.png. Ниже представлен фактический результат.

Убедитесь, что инструкции обновлены правильно, чтобы поиск выполнялся только для проекта Jira и отчета GitHub, настроенных в агенте.

Generate the high-priority update for the Bumble project for the past 24 hours.
Response complete
Gemini replied
Here is the high-priority daily update for the Bumble project ecosystem over the past 24 hours. [107, 109, 928, 934]
-
🚀 Overall Progress Summary
The past 24 hours saw significant progress in integrating Google’s Bumble Bluetooth stack across downstream tools, notably introducing native Windows support for NXBT 

 and adding optional BLE pairing transports to smpclient [107]. Additionally, core refactoring in Bumble's AVDTP (Audio/Video Distribution) layers has successfully eliminated resource-locking bugs [928]. Meanwhile, the community is actively tackling high-priority Classic Bluetooth pairing failures and Windows boot-up driver issues [59, 934].
-
✨ Key Achievements & Code Progress (GitHub)
Repository / Project
Contribution
Details
intercreate/smpclient
BLE Transport with Pairing (PR #107)
Added an optional bumble extra (smpclient[bumble]) providing SMPBumbleTransport [107]. This BLE transport drives external HCI USB controllers, supporting secure scanning, pairing PIN flows, and stored LTK encryption [107].
google/bumble
AVDTP In-Use Management (PR #928)
Merged! Avoids explicit stream in_use flag management by delegating to a dynamic property checking if stream state is IDLE [928]. This resolves previous edge-case resource leaks [923].
typenoob/nxbt
Native Windows Support (Issue #4)
Announced a major integration with Bumble enabling native Windows support for NXBT controllers via hci-socket and usb (WinUSB) transports 

 .
badoo/codeisok
Security Hardening (PR #109)
Enabled the secure flag for authentication cookies in the Login controller to prevent unencrypted session token transmission [109].
 
-
⚠️ Current Blockers & High-Priority Issues
While no tracking issues were found in Jira for "Bumble", the following high-priority issues are currently impeding progress in the GitHub ecosystem:
Classic Bluetooth Pairing Failures (Issue #59 - kindle-hid-passthrough) [59]
Status: Active / Investigation [59]
Impact: Classic-only Bluetooth HID devices (such as the Logitech K811 keyboard) fail during Simple Secure Pairing (SSP) with an AUTHENTICATION_FAILURE_ERROR (0x05) [59]. Bumble appears to bypass the user pairing delegate entirely [59].
Next Steps: Testing a speculative fix on feature/brcm-bt-support that relaxes pairing config constraints for BR/EDR [59].
Windows Startup Power-On Failures (Issue #934 - google/bumble) [934]
Status: Open [934]
Impact: Bluetooth USB dongles fail to power on during the very first boot on Windows systems [934]. The Intel driver receives a disallowed error (HCI_COMMAND_DISALLOWED_ERROR) during the initial HCI_RESET_COMMAND [934].
-
Would you like me to draft any replies to these active issues or prepare a Confluence summary document of the Windows workarounds?
give me the link for this repo intercreate/smpclient
Response complete
Gemini replied
The link for the intercreate/smpclient repository is:
👉 https://github.com/intercreate/smpclient
intercreate/smpclient repo is not in my repo in mumanoha/gemini-code-review-agent-demo. intercreate/smpclient is a public repo why are you getting me all the public repo
Response complete
Gemini replied
I retrieved results from public repositories because the search query for "Bumble" was executed globally across all of GitHub rather than being restricted to your specific repository (mumanoha/gemini-code-review-agent-demo).
When I initially searched your internal Jira projects and repositories for the project "Bumble", it returned no matches. To ensure I didn't miss any relevant information, my search query broadened its scope to look for any active issues or pull requests containing the keyword "Bumble" globally, which pulled in these public repositories (like Google's bumble library and intercreate/smpclient).
-
🔍 Filtering to Your Specific Repository
If "Bumble" is a branch, a specific folder, or a topic within your repository, I can narrow down the search.
Would you like me to run a targeted analysis specifically on mumanoha/gemini-code-review-agent-demo for any updates or commits made in the past 24 hours instead?

Если я использую запрос «Сгенерировать приоритетное обновление для моих проектов за последние 24 часа», я получаю следующий результат.

См. изображение scrum-master-13.png

Generate the high-priority update for the my projects for the past 24 hours.
Response complete
Gemini replied
📊 Daily Project Status Report (Past 24 Hours)
-
🚀 Overall Progress Overview
Currently, the projects are focused on resolving critical infrastructure blockers on Google Cloud Platform while maintaining a steady baseline on application services. While there has been no new code merged or committed in the last 24 hours, the active development continues to center around service integration, and the infrastructure pipeline is currently held back by two newly updated high-priority Jira issues 

 .
-
🛠️ Code Progress & Achievements (GitHub)
There are no new commits or merged pull requests to report for the past 24 hours. The primary active work-in-progress remains:
Repository / PR
Status
Description
mumanoha/gemini-code-review-agent-demo PR #1: feat: Add menu-service application
🟡 Open
This pull request introduces the core menu-service application to the repository.
 
-
⚠️ Blockers & High-Priority Issues (Jira)
The following high-priority infrastructure issues were updated in the past 24 hours under the ge-bugs project and require immediate attention to prevent further deployment delays on the GCP Migration Strategy 

 :
Key
Priority
Status
Summary
Impact
GB-5
🔴 High
To Do
IAM permission shadowing in VPC
Conflicting IAM policies between the VPC and GKE cluster are causing intermittent permission denied errors for active services 

 .
GB-4
🔴 High
To Do
GKE node pool auto-scaling timeout
The GKE node pool is failing to auto-scale automatically, leading to pod scheduling failures under load 

 .
 
-
Let me know if you would like me to help assign these blockers or draft a follow-up message to the infrastructure team!

Также не уверен, нужно ли добавлять коннекторы в корневой агент. Я удалил коннекторы из корневого агента и протестировал, вот результат. Какая конфигурация правильная? Я не уверен, поэтому позволю вам самим решить, какая конфигурация правильная.


См. изображение - scrum-master-14.png

Generate the high-priority update for the my projects for the past 24 hours.
Response complete
Gemini replied
High-Priority Update: Project GB (ge-bugs)
Here is the summary of P0/P1 (Highest/High priority) issues and blocked tickets in Project GB (ge-bugs) along with their current impact:
1. P0/P1 Issues (High Priority)
GB-4: GKE node pool auto-scaling timeout
Priority: High (P1) 

Impact: The GKE node pool is failing to auto-scale dynamically under load. This results directly in pod scheduling failures, threatening application reliability and performance during high traffic 

 .
GB-5: IAM permission shadowing in VPC
Priority: High (P1)
Impact: Conflicting IAM policies between the VPC and the GKE cluster are causing intermittent "permission denied" errors for services, leading to unstable internal communication 

 .
2. Blocked Tickets
GB-7: Fix database latency issues
Priority: Medium
Status: Blocked 

Impact: Progress on resolving database latency is halted. The ticket is currently blocked while waiting for the infrastructure team to increase IOPS 

 .
-
I will now hand control back to the root agent to synthesize this update into your unified daily report. Let's make sure this progress is tracked.
I have checked the open Pull Requests in the mumanoha/gemini-code-review-agent-demo repository:
Open Pull Requests:
PR #1: feat: Add menu-service application
State: Open
Review Status: There is currently one review submitted by gemini-code-assist[bot], which has a status of COMMENTED (not CHANGES_REQUESTED). The reviewer provided general code quality, testing, and dependency cleanup suggestions but did not block the PR with an explicit changes-requested status.
Therefore, there are no Pull Requests currently in the "Changes Requested" state.
I will now transfer control back to the root_agent to compile the complete update.Here is your unified daily report for the past 24 hours, highlighting the high-priority Jira blockers and active code progress on GitHub.
I, Gemini Enterprise, have analyzed your active projects and compiled the most critical updates to keep you and your team aligned.
-
🚨 High-Priority Jira Issues & Blockers
There are currently two high-priority bugs active in Project GB (ge-bugs), along with one blocked issue that requires infrastructure intervention.
Issue
Priority
Status
Description & Impact
GB-4: GKE node pool auto-scaling timeout
High
To Do
The GKE node pool is failing to auto-scale under load, resulting in active pod scheduling failures.
GB-5: IAM permission shadowing in VPC
High
To Do
Conflicting IAM policies between the VPC and GKE cluster are causing intermittent service permission errors.
GB-7: Fix database latency issues
Medium
🛑 Blocked
Progress is currently halted. The team is waiting on the infrastructure team to increase IOPS.
 
-
💻 GitHub Code Progress
Active progress continues on the gemini-code-review-agent-demo repository with one open pull request. There are currently no PRs blocked under a "Changes Requested" status.
PR # & Title
State
Review Status
Key Highlights
#1: feat: Add menu-service application
Open
Commented
Adds the menu-service Quarkus application. gemini-code-assist[bot] provided recommendations to clean up pom.xml, improve JPA mapping, utilize Panache's active record pattern, and expand test coverage.
 
-
Would you like me to help you draft a follow-up message to the infrastructure team to expedite the IOPS increase for GB-7, or would you like to dive deeper into any of these updates?

11. Создайте агента Resource Impact Analyzer [публичная предварительная версия]

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

Обратитесь к изображению scrum-master-1.png

Вместо «Создать нового агента > Перейти к конструктору» давайте разместим подсказку непосредственно в чате. См. скриншот resource-impact-1.png

После создания проекта агенту необходимо снять отметку с коннектора Google, а затем нажать «Предварительный просмотр», чтобы проверить запрос: « Член команды Муту отсутствует 3 дня. Каковы последствия? »

Обратитесь к изображениям и обязательно внесите соответствующие изменения в инструкции.
resource-impact-2.png & resource-impact-3.png

После тестирования нажмите «Создать», чтобы опубликовать агента.

12. Расширенные возможности: сборка и развертывание с помощью ADK [Публичная предварительная версия]

Я сделал скриншоты этих шагов, просмотрел изображения на скриншотах, чтобы убедиться в точности инструкций, а также обновил скриншоты для каждого шага, чтобы все было понятно.

Шаг 1: Настройка среды

agent-cli-1.png

Шаг 2: Аутентификация и настройка

agent-cli-2.png
agent-cli-3.png - эти шаги занимают много времени
agent-cli-4.png -

Укажите в инструкциях, что CLI запросит разрешение на выполнение команд, выберите «Разрешить один раз».

Вариант B: Использование интерфейса командной строки Gemini (на естественном языке)

Обратитесь к изображениям, чтобы правильно обновить инструкции в соответствии с тем, что фактически произошло в консоли. При необходимости обновите код, добавив эти скриншоты и соответствующие инструкции.

Изображения для проверки - agent-cli-5.png до agent-cli-9.png

Ниже приведён вывод из командной строки.

Я создал для вас агента Bumble-Ops-Assistant, используя комплект разработки агентов (ADK).

1. Реализация агента
Агент находится в файле bumble-ops-assistant/app/agent.py. Он включает в себя инструмент check_build_health, который возвращает жестко заданный статус "GREEN" для любой среды.

1 def check\_build\_health(environment: str) \-\> str:                                                                                                                          
2     """Checks the build health for a given environment.                                                                                                                   
3                                                                                                                                                                           
4     Args:                                                                                                                                                                 
5         environment: The environment to check (e.g., 'prod', 'staging').                                                                                                  
6                                                                                                                                                                           
7     Returns:                                                                                                                                                              
8         The health status of the build.                                                                                                                                   
9     """                                                                                                                                                                   

10 вернуть "ЗЕЛЕНЫЙ"
11
12 root_agent = Agent(
13 name="Bumble_Ops_Assistant",
14 # ...
15 инструкция: «Вы — Bumble-Ops-Assistant, помощник по операциям. Вы можете проверить состояние сборки для производственной и тестовой сред».
16 инструментов=[check_build_health],
17)

2. Дымовые испытания
Я провел два типа дымовых испытаний:

* Модульные тесты: Я создал и запустил модульные тесты в файле bumble-ops-assistant/tests/unit/test_health_tool.py, чтобы напрямую проверить логику инструмента.
* Результат: 2 человека сдали за 3,03 с.
* Дымовое тестирование для оценки: Я создал простой набор тестов для оценки в файле bumble-ops-assistant/tests/eval/evalsets/smoke_test.evalset.json, чтобы проверить взаимодействие агента с системой.
* Примечание: В ходе оценки возникла ошибка PERMISSION_DENIED, поскольку API aiplatform.googleapis.com не включен в проекте cloudshell-gca, и я не
имеют права на его включение.

agent-cli-10.png — при нажатии на кнопку «Открыть редактор» отображается сообщение, предлагающее участникам просмотреть файлы, созданные Agent CLI, и дать пояснения к каждому из файлов, созданных Agent CLI (подробности см. в документации).
Тестирование в тестовой среде — выполните эти шаги перед развертыванием и публикацией.
Обратитесь к этим изображениям, чтобы ознакомиться с процедурой тестирования и составить соответствующие инструкции.
Изображения - agent-cli-11.png до agent-cli-15.png

Я попытался использовать командную строку агента для создания тестовой среды, но столкнулся с проблемами.
Сессия не найдена: f681747b-c55d-42d6-9324-77f394d0ecb8. В конфигурации раннера указано имя приложения "bumble_ops_assistant", но корневой агент был загружен из "/home/admin_/bumble-ops-assistant/app", что подразумевает имя приложения "app". Убедитесь, что имя приложения раннера совпадает с этим каталогом, или укажите имя приложения явно при создании раннера. Несоответствие не позволяет раннеру найти сессию. Чтобы автоматически создавать сессию при её отсутствии, установите auto_create_session=True при создании раннера.

После того, как я попросил агента исправить это, проблемы с правами доступа были устранены, и функция "бедры" заработала.

13. Развертывание и публикация в Gemini Enterprise [публичная предварительная версия]

Я хочу использовать естественный язык для развертывания и публикации в GE.
Поэтому сохраняйте оба варианта: ручной или естественный язык.

Я запросил развертывание агента, и он был развернут в Agent Engine. Обратитесь к изображениям, чтобы понять шаги и составить соответствующие инструкции.
Изображение - agent-cli-deploy-1.png до agent-cli-deploy-4.png

Я попросил Gemini CLI опубликовать приложение в Gemini App.

Я использовал команду - Publish to Gemini Enterprise App bumble-workshop-lab-test-1_1778167389086
Обратитесь к изображениям ниже, чтобы понять, как это было сделано, и составить соответствующие инструкции.

agent-cli-publish-1.png в agent-cli-publish-7.png