Google AI выпускает инструмент командной строки (gws) для Workspace APIs: единый интерфейс для людей и агентов искусственного интеллекта

Интеграция Google Workspace APIs, таких как Drive, Gmail, Calendar и Sheets, в приложения и конвейеры данных обычно требует написания стандартного кода для обработки REST-конечных точек, пагинации и потоков OAuth 2.0.

Команда Google AI выпустила инструмент командной строки (gws) для Google Workspace. Инструмент с открытым исходным кодом googleworkspace/cli (вызывается через команду gws) предоставляет унифицированный динамический интерфейс командной строки для управления этими службами.

Предназначение gws

Инструмент gws разработан как для разработчиков, так и для агентов искусственного интеллекта. Он устраняет необходимость в создании пользовательских скриптов-оболочек, предоставляя структурированные выходные данные в формате JSON, встроенную поддержку протокола Model Context Protocol (MCP) и автоматизированные рабочие процессы аутентификации.

Архитектура динамического обнаружения API

В отличие от традиционных инструментов командной строки, которые компилируют статический список команд, gws динамически формирует набор команд во время выполнения.

При выполнении gws использует двухэтапную стратегию синтаксического анализа:

1. Он считывает первый аргумент, чтобы определить целевую службу (например, drive).
2. Он извлекает документ Google Discovery для этой службы (кэшируется на 24 часа).
3. Он строит дерево команд на основе ресурсов и методов документа.
4. Он анализирует оставшиеся аргументы, выполняет аутентификацию и отправляет HTTP-запрос.

Благодаря такой архитектуре gws автоматически поддерживает новые конечные точки Google Workspace API в момент их добавления в службу Discovery.

Основные возможности для разработчиков программного обеспечения и специалистов по работе с данными

  • Интроспекция и предварительный просмотр: каждая служба включает документацию —help, сгенерированную из Discovery API. Можно просмотреть схему любого метода (например, gws schema drive.files.list) или использовать флаг —dry-run для предварительного просмотра точного HTTP-запроса перед выполнением.

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

  • Автоматическое разбиение на страницы: для разработчиков, извлекающих большие наборы данных, флаг —page-all автоматически обрабатывает курсоры API.

Интеграция с агентами искусственного интеллекта и MCP

Основным вариантом использования gws является использование в качестве инструмента для вызова бэкенда для больших языковых моделей (LLM).

  • Сервер Model Context Protocol (MCP): запустив gws mcp -s drive,gmail,calendar, CLI запускает сервер MCP через stdio. Это предоставляет API Workspace в виде структурированных инструментов, которые любой MCP-совместимый клиент (например, Claude Desktop или VS Code) может вызывать напрямую.

  • Предварительно созданные навыки агентов: репозиторий включает более 100 навыков агентов, охватывающих все поддерживаемые API и общие рабочие процессы.

  • Gemini CLI Extension: разработчики, использующие Gemini CLI, могут установить расширение gws (gemini extensions install https://github.com/googleworkspace/cli), позволяя локальному агенту Gemini наследовать учётные данные gws и управлять ресурсами Workspace напрямую.

Рабочие процессы аутентификации

CLI обеспечивает безопасную аутентификацию в разных средах, заменяя необходимость ручного управления токенами в пользовательских скриптах.

  • Локальный рабочий стол: запуск gws auth setup инициирует интерактивный процесс настройки проекта Google Cloud, включения необходимых API и обработки OAuth-логина.

  • Headless / CI/CD: для серверных сред разработчики могут выполнить интерактивную аутентификацию локально и экспортировать незашифрованные учётные данные.

  • Сервисные аккаунты: gws изначально поддерживает файлы ключей сервисных аккаунтов «сервер-сервер» и делегирование в масштабах домена с помощью переменной GOOGLEWORKSPACECLIIMPERSONATEDUSER.

Ознакомьтесь с репозиторием [здесь](…). Также подписывайтесь на нас в [Twitter](…) и присоединяйтесь к нашему [ML SubReddit](…). Не забудьте подписаться на [наш Newsletter](…). А если вы используете Telegram, присоединяйтесь к нам и там!

1. Какие проблемы решает инструмент командной строки gws от Google AI для разработчиков и агентов искусственного интеллекта при работе с Google Workspace APIs?

Ответ: инструмент gws устраняет необходимость в создании пользовательских скриптов-оболочек, предоставляя структурированные выходные данные в формате JSON, встроенную поддержку протокола Model Context Protocol (MCP) и автоматизированные рабочие процессы аутентификации.

2. Какие основные возможности предоставляет gws для разработчиков программного обеспечения и специалистов по работе с данными?

Ответ: gws предоставляет интроспекцию и предварительный просмотр, структурированный сбор данных и автоматическое разбиение на страницы.

3. Как gws интегрируется с агентами искусственного интеллекта и протоколом MCP?

Ответ: gws может использоваться в качестве инструмента для вызова бэкенда для больших языковых моделей (LLM). Он запускает сервер MCP через stdio, предоставляя API Workspace в виде структурированных инструментов, которые любой MCP-совместимый клиент может вызывать напрямую.

4. Какие варианты аутентификации предоставляет gws для различных сред?

Ответ: gws обеспечивает безопасную аутентификацию в разных средах, включая локальный рабочий стол, headless/CI/CD и сервисные аккаунты. Для локальных сред используется интерактивный процесс настройки, для серверных сред — экспорт незашифрованных учётных данных, а для сервисных аккаунтов — поддержка файлов ключей и делегирование в масштабах домена.

5. Какие дополнительные возможности предоставляет репозиторий gws помимо основных функций?

Ответ: репозиторий gws включает более 100 навыков агентов, охватывающих все поддерживаемые API и общие рабочие процессы, а также расширение для Gemini CLI, позволяющее локальному агенту Gemini наследовать учётные данные gws и управлять ресурсами Workspace напрямую.

Источник