
Google Workspace CLI
github.com/googleworkspace/cli- Category
- Developer Tools
- Rank
- No. 130Tools index
- Pricing
- Open Source
- Platform
- cli
- Type
- TOOL
- Builder
- @googleworkspace
- GitHub
- 30.8k stars
- Latest release
- v0.22.5
- Date
About
A unified command-line interface for all Google Workspace services including Drive, Gmail, Calendar, Sheets, Docs, Chat, and Admin. Built dynamically from Google's Discovery Service with structured JSON output and includes 40+ AI agent skills for automation.
What it does
It turns Google’s API descriptions into a browsable terminal command tree. You supply request parameters and bodies as JSON, inspect schemas, preview requests, and stream paginated results for shell processing. Hand-written helpers cover common tasks such as sending mail, uploading files, and subscribing to events.
Why it's ranked here
The design removes much of the glue normally required around Workspace APIs while preserving inspection and dry-run controls. Structured output, pagination, multiple authentication routes, and task-focused helpers make it credible for both scripts and agents. Its development status and support disclaimer keep it from being a low-risk default.
What's good
The command surface follows Google’s published API descriptions instead of freezing endpoint coverage in releases. Every resource exposes help, while schema inspection clarifies request and response shapes. JSON and newline-delimited JSON compose cleanly with shell tools. Credentials support desktop OAuth, service accounts, exported credentials, and existing access tokens. Downloaded binaries receive SHA-256 verification.
Tradeoffs
The project explicitly warns about breaking changes and says it is not an officially supported Google product. Authentication requires a Google Cloud project, Workspace access, and sometimes separate consent-screen setup. Unverified OAuth apps face scope limits, so the broad recommended preset can fail. The npm installer’s native download path does not honor standard proxy environment variables.
How to use it well
Use it for engineers, operators, and agents that need repeatable Workspace automation without maintaining endpoint-specific wrappers. Start with narrowly selected OAuth services, inspect schemas, preview mutations, then pipe JSON into existing shell tooling. Prefer service accounts or exported credentials for servers and CI. It does not replace official product support or eliminate Google Cloud and OAuth administration.
Technical notes+
Cargo.toml defines a Rust workspace containing crates/google-workspace-cli and crates/google-workspace. crates/google-workspace/src/lib.rs exposes discovery, error, services, validation, and HTTP client modules. crates/google-workspace-cli/src/main.rs fetches Discovery documents, builds the command tree, selects authentication, validates paths, and dispatches requests. crates/google-workspace-cli/src/helpers/mod.rs registers service-specific Helper implementations, while crates/google-workspace-cli/src/helpers/events/mod.rs adds Pub/Sub-backed event streaming and renewal commands. npm/install.js downloads release archives, verifies SHA-256 checksums, and extracts the binary; npm/platform.js selects Windows, macOS, or Linux artifacts for x86_64 and aarch64 targets.
Observed
- License
- Apache License 2.0
- Primary language
- Rust, with JavaScript wrappers for npm installation and execution
- Interfaces
- Command-line application plus a Rust Google Workspace API client library
- Installation
- Prebuilt release binaries, npm, Cargo source install, Nix, and Homebrew
- Platform support
- Windows, macOS, and Linux on x86_64 or aarch64; Linux includes glibc and musl selection
- Packaging structure
- Cargo workspace with separate CLI and client-library crates
- Output formats
- JSON by default, with table, YAML, CSV, and NDJSON pagination support
Read from README.md, Cargo.toml, package.json, docs/skills.md, docs/CONTRIBUTING.md, docs/CODE_OF_CONDUCT.md, npm/run.js, npm/install.js, npm/platform.js, crates/google-workspace/src/lib.rs, crates/google-workspace-cli/src/main.rs, crates/google-workspace-cli/src/helpers/mod.rs, crates/google-workspace-cli/src/helpers/gmail/mod.rs, crates/google-workspace-cli/src/helpers/events/mod.rs, LICENSE.
What it can do
Access and manage Google Drive files
File paths, folder IDs, or search queries → File metadata, content, or operation status in JSON format
Send and retrieve Gmail messages
Email addresses, message content, search filters → Message data, send confirmation, or search results in JSON format
Create and modify Google Calendar events
Event details, timestamps, attendee lists → Event confirmation, calendar data, or modification status in JSON format
Read and write Google Sheets data
Spreadsheet IDs, cell ranges, data values → Cell contents, spreadsheet metadata, or update confirmation in JSON format
Generate and edit Google Docs content
Document IDs, text content, formatting instructions → Document content, metadata, or edit confirmation in JSON format
Manage Google Workspace users and settings
User accounts, organizational units, admin policies → User data, configuration status, or admin operation results in JSON format
Automate workflows using AI agent skills
Natural language commands or workflow specifications → Automated task results or multi-service operation status in JSON format
Execute Google Chat operations
Chat room IDs, message content, user mentions → Message delivery status, chat data, or room information in JSON format
Tags
Tech Stack
Comments (0)
No comments yet
Editorially curated, with community endorsements as a secondary signal. Corrections welcome.