# cli: Use Google Workspace APIs from Humans and AI Agents

This repository profile is provided by osrepos.com, an open source repository discovery platform.

Source: osrepos.com
Repository profile: https://osrepos.com/repo/googleworkspace-cli
Generated for open source discovery and AI-assisted research.

Google Workspace CLI builds commands dynamically from Google's Discovery Service, covering Drive, Gmail, Calendar, and other Workspace APIs. It returns structured JSON for scripts and AI agents, with agent skills included.

GitHub: https://github.com/googleworkspace/cli
OSRepos URL: https://osrepos.com/repo/googleworkspace-cli

## Summary

Google Workspace CLI builds commands dynamically from Google's Discovery Service, covering Drive, Gmail, Calendar, and other Workspace APIs. It returns structured JSON for scripts and AI agents, with agent skills included.

## Topics

- rust
- cli
- automation
- agent-skills
- google-workspace
- google-apis
- workspace-automation

## Repository Information

Last analyzed by OSRepos: Sat Oct 24 2026 03:04:25 GMT+0100 (Western European Summer Time)
Detail views: 3
GitHub clicks: 1

## Safety Notice

OSRepos shares public repositories for knowledge and discovery only. Review source code, dependencies, licenses, and security implications before running or installing anything.

## Content

## Overview

`gws` is a command-line interface for Google Workspace, built on Google’s Discovery Service. Instead of maintaining a fixed command list, it reads API descriptions at runtime to construct commands for services such as Drive, Gmail, Calendar, Sheets, Docs, and Chat. It aims to make Workspace APIs easier to use from a terminal and from AI agents, without hand-written REST calls or custom integration code.

The Rust CLI is available as pre-built binaries for supported operating systems, through npm, Homebrew on macOS and Linux, or from source. It returns structured JSON and includes agent skills for Workspace APIs and common workflows. The project is not an officially supported Google product.

## Key Features

- Builds its command surface dynamically from Google Discovery Service documents, which it caches for 24 hours.
- Provides `--help` for API resources and methods, plus a schema command for inspecting request and response formats.
- Emits structured JSON and supports pagination as newline-delimited JSON for scripting.
- Offers `--dry-run` to preview requests and helper commands for common actions such as sending email or uploading files.
- Supports interactive OAuth, credentials files, service accounts, and pre-obtained access tokens.
- Includes agent skills for supported APIs and curated Workspace workflows, with Gemini CLI extension support.
- Can sanitize API responses with Google Cloud Model Armor when configured.

## Use Cases

- A developer can inspect and call Workspace API methods from a shell without writing a separate `curl` request for each endpoint.
- An operations team can use JSON output and pagination to automate Drive or Sheets tasks in scripts.
- An AI-agent developer can pair the CLI and its skills to let an agent work with Workspace through existing APIs.
- A user can run helper commands for routine tasks such as checking a calendar agenda, sending a Gmail message, or uploading a Drive file.

## Our Take

This is a broad, flexible Workspace API client with a quiet recent development period, so it is most compelling when dynamic API coverage and agent-friendly output matter more than a predictable pre-v1 interface.

**Good fit if:**
- You need terminal access to multiple Google Workspace APIs and prefer commands generated from Google Discovery Service.
- Your scripts or agents benefit from structured JSON, pagination, and the included skills.
- You can manage Google Cloud OAuth setup and accept the Apache-2.0 license.

**Look elsewhere if:**
- You require an officially supported Google product or a stable v1 interface, since the project says breaking changes are possible before v1.0.
- You need evidence of active ongoing development: the health data marks the project quiet, with no commits in the last 90 days, despite releases during the past year.
- You want to avoid configuring Google Cloud credentials, OAuth scopes, and the associated Workspace API access.

## Project Health

| Signal | Value |
|---|---|
| Status | **Quiet**: no commits in the last 90 days |
| Last commit | 2026-10-06 (17 days ago) |
| Commits, last 90 days | 0 |
| Releases, last 12 months | 44 (latest v0.22.5, 2026-03-31) |
| Contributors | 43 (top contributor: 44% of commits) |
| Issues closed, last 90 days | 0 |
| Pull requests merged, last 90 days | 0 |
| Project age | 8 months |

Checked on 2026-10-24 with the GitHub API.

## Project Facts

- Language: Rust
- License: Apache-2.0
- Stars: 31.8k
- Forks: 2k
- Topics: agent-skills, ai-agent, automation, cli, discovery-api, gemini-cli-extension, google-admin, google-api
- Website: https://developers.google.com/workspace
- Archived: no

## What You Need

Detected in the repository:

- Node.js >=18 (from package.json)
- Rust (from Cargo.toml)
- Automated checks on GitHub Actions

## Getting Started

Install the CLI with npm, then follow the README’s authentication instructions:

```bash
npm install -g @googleworkspace/cli
gws auth setup
gws auth login
gws drive files list --params '{"pageSize": 5}'
```

See the [README](https://github.com/googleworkspace/cli#readme) for binary installation, OAuth alternatives, and detailed usage.

## License in Plain Words

**Apache-2.0** (permissive).

- Commercial use: yes
- Modify and redistribute: yes
- You must keep: the license, the NOTICE file and a note of your changes
- Share your changes: no
- Includes an explicit patent grant from the contributors

A summary, not legal advice: the LICENSE file is what applies.

## Considerations

- The project is under active development toward v1.0 and explicitly warns that breaking changes may occur. Its health status is quiet, with no commits recorded in the last 90 days; the project has multiple contributors, and the data does not indicate contributor concentration.
- Authentication requires Google Cloud project and OAuth configuration, or another supported credentials source. Unverified OAuth apps have scope limits that can make broad scope presets fail.
- The repository describes itself as unofficial, so do not treat it as a Google-supported product.
- The README identifies Rust and Node.js 18 or later as relevant requirements, depending on whether you build from source or install through npm. The project uses the Apache-2.0 license.