googleworkspace/cli
73.9
Strong · 27 September 2026
28.8k
lines of production code
Rust
primary language
4
measurements over time
What this system is
Features
Added automation scripts for coverage, version syncing, and release tagging
The repository now includes four new shell scripts in the \scripts/\ directory to support the release and testing workflow. \version-sync.sh\ automates the synchronization of the project version across all workspace \Cargo.toml\ files, \Cargo.lock\, the npm installer's \package.json\, and the Nix flake, while also regenerating skills. \tag-release.sh\ handles the creation and remote push of git tags based on the current version, ensuring idempotency. \coverage.sh\ installs and runs \cargo-llvm-cov\ to generate test coverage reports. \show-art.sh\ is a utility script to display artifact contents.
scripts · high confidence
Initial project scaffolding and documentation
The repository is initialized with foundational project files, including a Cargo workspace structure (library and CLI crates), Nix flake for reproducible builds, and comprehensive documentation (AGENTS.md, CONTEXT.md, CHANGELOG.md, README.md, etc.). This establishes the project's architecture, build system, and usage guidelines for developers and AI agents.
(repo-wide) · high confidence
Introduce Google Workspace CLI with authentication, proxy, and output formatting
The Google Workspace CLI (gws) is introduced, providing a command-line interface for interacting with Google Workspace APIs. The CLI supports OAuth 2.0 authentication with token caching, HTTP proxy support via environment variables, and multiple output formats (JSON, table, YAML, CSV). It also includes credential storage using OS keyrings or file-based encryption, and generates SKILL.md files for AI assistants.
crates/google-workspace-cli/src · high confidence
Introduce google-workspace Rust crate for dynamic API discovery and safe input validation
The \google-workspace\ crate has been extracted as a standalone Rust library providing core types and utilities for interacting with Google Workspace APIs via the Google Discovery Service. This library enables dynamic API access by fetching and caching discovery documents at runtime, eliminating the need for pre-generated client code. The crate includes a service registry that maps common aliases (e.g., \drive\, \gmail\, \calendar\) to their respective API names and versions. It also introduces a structured error handling system (\GwsError\) with distinct exit codes for API, authentication, validation, and discovery failures. Additionally, the crate provides robust input validation utilities that sanitize user-provided paths and strings, rejecting dangerous Unicode characters, control characters, and path traversal attempts to ensure safe file operations relative to the current working directory.
crates/google-workspace · high confidence
Native npm installer with checksum verification and auto-install
The npm package now includes a native Node.js installer (install.js) that downloads the binary using native fetch, verifies the SHA256 checksum, and extracts it to the bin/ directory. The run.js script now automatically triggers this installation if the binary is missing, ensuring the tool works out of the box. A .gitignore file is added to exclude the downloaded binary from version control.
npm · high confidence
New helper commands for Calendar, Chat, Docs, Drive, Events, and Gmail
The CLI now includes a suite of helper commands designed to simplify complex or multi-step Google Workspace operations that go beyond simple API wrappers. Users can now create calendar events (\calendar +insert\), send Chat messages (\chat +send\), append text to Google Docs (\docs +write\), upload files to Drive (\drive +upload\), subscribe to and renew Workspace Events (\events +subscribe\ and \+renew\), and forward Gmail messages (\gmail +forward\). These helpers handle orchestration, format translation, and multipart construction, providing a more convenient interface for these specific workflows.
crates/google-workspace-cli/src/helpers · high confidence
Dependencies
Update Rust and Node.js dependencies for Google Workspace CLI
The project's dependency graph has been updated across both Rust (Cargo.lock, Cargo.toml files) and Node.js (package.json, pnpm-lock.yaml) manifests. This includes new or updated versions for Rust crates such as aes-gcm, clap, reqwest, and keyring, alongside updates to npm packages like @changesets/cli and lefthook. These changes ensure the CLI tool and its underlying libraries use the latest compatible versions, maintaining security and stability for the Google Workspace CLI.
(dependencies) · high confidence
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
How this codebase got here
This is the PUBLIC form of this artifact. Findings are listed in full, but the details of SECURITY findings — which rule fired, in which file, on which line, and how to fix it — are deliberately withheld, and any secret-scanner results are excluded entirely. Where detail is absent here it was REMOVED FOR PUBLICATION; it is not missing from the analysis. The complete artifact is available from the repository owner.
Score
- CAI 44 → 74 (+29.5)
- Rubric changed (rubric-2026.08.15 → rubric-2026.09.15) — scores are not directly comparable.
Lenses
- Code Health 100 → 81 (-19.1)
- Architecture 100 (new)
- Maturity 52 → 70 (+17.6)
- Readiness 22 → 71 (+48.7)
- Security 73 → 81 (+7.3)
Resolved (29)
- Dimension evaluation failed
- High CVE: [GHSA redacted] (Cargo.lock)
- High CVE: [GHSA redacted] (pnpm-lock.yaml)
- High CVE: [GHSA redacted] (pnpm-lock.yaml)
- High CVE: [GHSA redacted] (Cargo.lock)
- High CVE: [GHSA redacted] (pnpm-lock.yaml)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- Low CVE: [GHSA redacted] (Cargo.lock)
- Low CVE: [GHSA redacted] (Cargo.lock)
- Low CVE: [GHSA redacted] (Cargo.lock)
- Medium CVE: [GHSA redacted] (pnpm-lock.yaml)
- Medium CVE: [GHSA redacted] (pnpm-lock.yaml)
- Medium CVE: RUSTSEC-2026-0097 (Cargo.lock)
- Medium CVE: RUSTSEC-2026-0098 (Cargo.lock)
- Medium CVE: RUSTSEC-2026-0099 (Cargo.lock)
- Medium CVE: RUSTSEC-2026-0104 (Cargo.lock)
- Medium CVE: RUSTSEC-2026-0185 (Cargo.lock)
- Medium CVE: RUSTSEC-2026-0190 (Cargo.lock)
- …and 9 more
New (170)
- Duplicated block (10 lines × 2) (crates/google-workspace-cli/src/helpers/events/subscribe.rs)
- Duplicated block (10 lines × 2) (crates/google-workspace-cli/src/setup.rs)
- Duplicated block (11 lines × 2) (crates/google-workspace-cli/src/setup.rs)
- Duplicated block (11 lines × 2) (crates/google-workspace-cli/src/setup_tui.rs)
- Duplicated block (12 lines × 2) (crates/google-workspace-cli/src/auth_commands.rs)
- Duplicated block (12 lines × 2) (crates/google-workspace-cli/src/executor.rs)
- Duplicated block (12–13 lines × 2) (crates/google-workspace-cli/src/generate_skills.rs)
- Duplicated block (12–14 lines × 2) (crates/google-workspace-cli/src/auth_commands.rs)
- Duplicated block (13 lines × 2) (crates/google-workspace-cli/src/setup.rs)
- Duplicated block (13 lines × 3) (crates/google-workspace-cli/src/helpers/drive.rs)
- Duplicated block (13 lines × 3) (crates/google-workspace/src/validate.rs)
- Duplicated block (14 lines × 2) (crates/google-workspace-cli/src/setup_tui.rs)
- Duplicated block (14 lines × 3) (crates/google-workspace-cli/src/helpers/workflows.rs)
- Duplicated block (15 lines × 2) (crates/google-workspace-cli/src/helpers/events/subscribe.rs)
- Duplicated block (15 lines × 2) (crates/google-workspace-cli/src/helpers/events/subscribe.rs)
- Duplicated block (15 lines × 2) (crates/google-workspace-cli/src/helpers/events/subscribe.rs)
- Duplicated block (15–16 lines × 2) (crates/google-workspace-cli/src/setup.rs)
- Duplicated block (16 lines × 2) (crates/google-workspace-cli/src/helpers/chat.rs)
- Duplicated block (16–17 lines × 2) (crates/google-workspace-cli/src/helpers/events/subscribe.rs)
- Duplicated block (17 lines × 2) (crates/google-workspace-cli/src/helpers/events/subscribe.rs)
- …and 150 more
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
googleworkspace/cli was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.
About this page
- The score is its most recent published measurement, taken on 27 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
- Measured at commit a3768d0e82ad83cca2da97724e46bea4ff0e6dbd — the exact code this score is about.
- Scored under rubric-2026.09.15 — the same rubric and the same method as every other entry in this index.
- Measured by watchdog.canine.dev using codehealth-analyzer preprod-7c1cb6328e11.