Releases: googleworkspace/cli
0.4.3
Release Notes
Patch Changes
-
fc6bc95: Exclude Workspace-admin-only scopes from the "Recommended" scope preset.
Scopes that require Google Workspace domain-admin access (
apps.*,
cloud-identity.*,ediscovery,directory.readonly,groups) now return
400 invalid_scopewhen used by personal@gmail.comaccounts. These scopes
are no longer included in the "Recommended" template, preventing login failures
for non-Workspace users.Workspace admins can still select these scopes manually via the "Full Access"
template or by picking them individually in the scope picker.Adds a new
is_workspace_admin_scope()helper (mirroring the existing
is_app_only_scope()) that centralises this detection logic. -
2aa6084: docs: Comprehensive README overhaul addressing user feedback.
Added a Prerequisites section prior to the Quick Start to highlight the optional
gclouddependency.
Expanded the Authentication section with a decision matrix to help users choose the correct authentication path.
Added prominent warnings about OAuth "testing mode" limitations (the 25-scope cap) and the strict requirement to explicitly add the authorizing account as a "Test user" (#130).
Added a dedicated Troubleshooting section detailing fixes for common OAuth consent errors, "Access blocked" issues, andredirect_uri_mismatchfailures.
Included shell escaping examples for Google Sheets A1 notation (!).
Clarified thenpminstallation rationale and added explicit links to pre-built native binaries on GitHub Releases.
Install gws 0.4.3
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/googleworkspace/cli/releases/download/v0.4.3/gws-installer.sh | shInstall prebuilt binaries via powershell script
powershell -ExecutionPolicy Bypass -c "irm https://github.com/googleworkspace/cli/releases/download/v0.4.3/gws-installer.ps1 | iex"Install prebuilt binaries into your npm project
npm install @googleworkspace/cli@0.4.3Download gws 0.4.3
| File | Platform | Checksum |
|---|---|---|
| gws-aarch64-apple-darwin.tar.gz | Apple Silicon macOS | checksum |
| gws-x86_64-apple-darwin.tar.gz | Intel macOS | checksum |
| gws-x86_64-pc-windows-msvc.tar.gz | x64 Windows | checksum |
| gws-aarch64-unknown-linux-gnu.tar.gz | ARM64 Linux | checksum |
| gws-x86_64-unknown-linux-gnu.tar.gz | x64 Linux | checksum |
| gws-aarch64-unknown-linux-musl.tar.gz | ARM64 MUSL Linux | checksum |
Verifying GitHub Artifact Attestations
The artifacts in this release have attestations generated with GitHub Artifact Attestations. These can be verified by using the GitHub CLI:
gh attestation verify <file-path of downloaded artifact> --repo googleworkspace/cliYou can also download the attestation from GitHub and verify against that directly:
gh attestation verify <file-path of downloaded artifact> --bundle <file-path of downloaded attestation>0.4.2
Release Notes
Patch Changes
-
d3e90e4: fix: use ~/.config/gws on all platforms for consistent config path
Previously used
dirs::config_dir()which resolves to different paths per OS
(e.g. ~/Library/Application Support/gws on macOS, %APPDATA%\gws on Windows),
contradicting the documented ~/.config/gws/ path. Now uses ~/.config/gws/
everywhere with a fallback to the legacy OS-specific path for existing installs.
Install gws 0.4.2
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/googleworkspace/cli/releases/download/v0.4.2/gws-installer.sh | shInstall prebuilt binaries via powershell script
powershell -ExecutionPolicy Bypass -c "irm https://github.com/googleworkspace/cli/releases/download/v0.4.2/gws-installer.ps1 | iex"Install prebuilt binaries into your npm project
npm install @googleworkspace/cli@0.4.2Download gws 0.4.2
| File | Platform | Checksum |
|---|---|---|
| gws-aarch64-apple-darwin.tar.gz | Apple Silicon macOS | checksum |
| gws-x86_64-apple-darwin.tar.gz | Intel macOS | checksum |
| gws-x86_64-pc-windows-msvc.tar.gz | x64 Windows | checksum |
| gws-aarch64-unknown-linux-gnu.tar.gz | ARM64 Linux | checksum |
| gws-x86_64-unknown-linux-gnu.tar.gz | x64 Linux | checksum |
| gws-aarch64-unknown-linux-musl.tar.gz | ARM64 MUSL Linux | checksum |
Verifying GitHub Artifact Attestations
The artifacts in this release have attestations generated with GitHub Artifact Attestations. These can be verified by using the GitHub CLI:
gh attestation verify <file-path of downloaded artifact> --repo googleworkspace/cliYou can also download the attestation from GitHub and verify against that directly:
gh attestation verify <file-path of downloaded artifact> --bundle <file-path of downloaded attestation>0.4.1
Release Notes
Patch Changes
-
dbda001: Add "Enter project ID manually" option to project picker in
gws auth setup.Users with large numbers of GCP projects often hit the 10-second listing timeout.
The picker now includes a "⌨ Enter project ID manually" item so users can type a
known project ID directly without waiting forgcloud projects listto complete.
Install gws 0.4.1
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/googleworkspace/cli/releases/download/v0.4.1/gws-installer.sh | shInstall prebuilt binaries via powershell script
powershell -ExecutionPolicy Bypass -c "irm https://github.com/googleworkspace/cli/releases/download/v0.4.1/gws-installer.ps1 | iex"Install prebuilt binaries into your npm project
npm install @googleworkspace/cli@0.4.1Download gws 0.4.1
| File | Platform | Checksum |
|---|---|---|
| gws-aarch64-apple-darwin.tar.gz | Apple Silicon macOS | checksum |
| gws-x86_64-apple-darwin.tar.gz | Intel macOS | checksum |
| gws-x86_64-pc-windows-msvc.tar.gz | x64 Windows | checksum |
| gws-aarch64-unknown-linux-gnu.tar.gz | ARM64 Linux | checksum |
| gws-x86_64-unknown-linux-gnu.tar.gz | x64 Linux | checksum |
| gws-aarch64-unknown-linux-musl.tar.gz | ARM64 MUSL Linux | checksum |
Verifying GitHub Artifact Attestations
The artifacts in this release have attestations generated with GitHub Artifact Attestations. These can be verified by using the GitHub CLI:
gh attestation verify <file-path of downloaded artifact> --repo googleworkspace/cliYou can also download the attestation from GitHub and verify against that directly:
gh attestation verify <file-path of downloaded artifact> --bundle <file-path of downloaded attestation>0.3.5
Release Notes
Patch Changes
-
4bca693: fix: credential masking panic and silent token write errors
Fixed
gws auth exportmasking which panicked on short strings and showed
the entire secret instead of masking it. Also fixed silent token cache write
failures insave_to_diskthat returnedOk(())even when the write failed. -
f84ce37: Fix URL template path expansion to safely encode path parameters, including
Sheetsrangevalues with Unicode and reserved characters.{var}expansions
now encode as a path segment,{+var}preserves slashes while encoding each
segment, and invalid path parameter/template mismatches fail fast. -
eb0347a: fix: correct author email typo in package.json
-
70d0cdd: Fix Slides presentations.get failure caused by flatPath placeholder mismatch
When a Discovery Document's
flatPathuses placeholder names that don't match
the method's parameter names (e.g.,{presentationsId}vspresentationId),
build_urlnow falls back to thepathfield which uses RFC 6570 operators
that resolve correctly.Fixes #118
-
37ab483: Add flake.nix for nix & NixOS installs
-
1991d53: Add prominent disclaimer that this is not an officially supported Google product to README, --help, and --version output
Install gws 0.3.5
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/googleworkspace/cli/releases/download/v0.3.5/gws-installer.sh | shInstall prebuilt binaries via powershell script
powershell -ExecutionPolicy Bypass -c "irm https://github.com/googleworkspace/cli/releases/download/v0.3.5/gws-installer.ps1 | iex"Install prebuilt binaries into your npm project
npm install @googleworkspace/cli@0.3.5Download gws 0.3.5
| File | Platform | Checksum |
|---|---|---|
| gws-aarch64-apple-darwin.tar.gz | Apple Silicon macOS | checksum |
| gws-x86_64-apple-darwin.tar.gz | Intel macOS | checksum |
| gws-x86_64-pc-windows-msvc.tar.gz | x64 Windows | checksum |
| gws-x86_64-unknown-linux-gnu.tar.gz | x64 Linux | checksum |
Verifying GitHub Artifact Attestations
The artifacts in this release have attestations generated with GitHub Artifact Attestations. These can be verified by using the GitHub CLI:
gh attestation verify <file-path of downloaded artifact> --repo googleworkspace/cliYou can also download the attestation from GitHub and verify against that directly:
gh attestation verify <file-path of downloaded artifact> --bundle <file-path of downloaded attestation>0.3.4
Release Notes
Patch Changes
-
704928b: fix(setup): enable APIs individually and surface gcloud errors
Previously
gws auth setupused a single batchgcloud services enablecall
for all Workspace APIs. If any one API failed, the entire batch was marked as
failed and stderr was silently discarded. APIs are now enabled individually and
in parallel, with error messages surfaced to the user.
Install gws 0.3.4
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/googleworkspace/cli/releases/download/v0.3.4/gws-installer.sh | shInstall prebuilt binaries via powershell script
powershell -ExecutionPolicy Bypass -c "irm https://github.com/googleworkspace/cli/releases/download/v0.3.4/gws-installer.ps1 | iex"Install prebuilt binaries into your npm project
npm install @googleworkspace/cli@0.3.4Download gws 0.3.4
| File | Platform | Checksum |
|---|---|---|
| gws-aarch64-apple-darwin.tar.gz | Apple Silicon macOS | checksum |
| gws-x86_64-apple-darwin.tar.gz | Intel macOS | checksum |
| gws-x86_64-pc-windows-msvc.tar.gz | x64 Windows | checksum |
| gws-x86_64-unknown-linux-gnu.tar.gz | x64 Linux | checksum |
Verifying GitHub Artifact Attestations
The artifacts in this release have attestations generated with GitHub Artifact Attestations. These can be verified by using the GitHub CLI:
gh attestation verify <file-path of downloaded artifact> --repo googleworkspace/cliYou can also download the attestation from GitHub and verify against that directly:
gh attestation verify <file-path of downloaded artifact> --bundle <file-path of downloaded attestation>0.3.3
Release Notes
Patch Changes
- 92e66a3: Add
gws versionas a bare subcommand alongsidegws --versionandgws -V
Install gws 0.3.3
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/googleworkspace/cli/releases/download/v0.3.3/gws-installer.sh | shInstall prebuilt binaries via powershell script
powershell -ExecutionPolicy Bypass -c "irm https://github.com/googleworkspace/cli/releases/download/v0.3.3/gws-installer.ps1 | iex"Install prebuilt binaries into your npm project
npm install @googleworkspace/cli@0.3.3Download gws 0.3.3
| File | Platform | Checksum |
|---|---|---|
| gws-aarch64-apple-darwin.tar.gz | Apple Silicon macOS | checksum |
| gws-x86_64-apple-darwin.tar.gz | Intel macOS | checksum |
| gws-x86_64-pc-windows-msvc.tar.gz | x64 Windows | checksum |
| gws-x86_64-unknown-linux-gnu.tar.gz | x64 Linux | checksum |
Verifying GitHub Artifact Attestations
The artifacts in this release have attestations generated with GitHub Artifact Attestations. These can be verified by using the GitHub CLI:
gh attestation verify <file-path of downloaded artifact> --repo googleworkspace/cliYou can also download the attestation from GitHub and verify against that directly:
gh attestation verify <file-path of downloaded artifact> --bundle <file-path of downloaded attestation>0.3.2
Release Notes
Patch Changes
- 8fadbd6: Smarter truncation of method and resource descriptions from discovery docs. Descriptions now truncate at sentence boundaries when possible, fall back to word boundaries with an ellipsis, and strip markdown links to reclaim character budget. Fixes #64.
Install gws 0.3.2
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/googleworkspace/cli/releases/download/v0.3.2/gws-installer.sh | shInstall prebuilt binaries via powershell script
powershell -ExecutionPolicy Bypass -c "irm https://github.com/googleworkspace/cli/releases/download/v0.3.2/gws-installer.ps1 | iex"Install prebuilt binaries into your npm project
npm install @googleworkspace/cli@0.3.2Download gws 0.3.2
| File | Platform | Checksum |
|---|---|---|
| gws-aarch64-apple-darwin.tar.gz | Apple Silicon macOS | checksum |
| gws-x86_64-apple-darwin.tar.gz | Intel macOS | checksum |
| gws-x86_64-pc-windows-msvc.tar.gz | x64 Windows | checksum |
| gws-x86_64-unknown-linux-gnu.tar.gz | x64 Linux | checksum |
Verifying GitHub Artifact Attestations
The artifacts in this release have attestations generated with GitHub Artifact Attestations. These can be verified by using the GitHub CLI:
gh attestation verify <file-path of downloaded artifact> --repo googleworkspace/cliYou can also download the attestation from GitHub and verify against that directly:
gh attestation verify <file-path of downloaded artifact> --bundle <file-path of downloaded attestation>0.3.1
Release Notes
Patch Changes
- b3669e0: Add hourly cron to generate-skills workflow to auto-sync skills with upstream Google Discovery API changes via PR
- e8d533e: Add workflow to publish OpenClaw skills to ClawHub
- 3b38c8d: Sync generated skills with latest Google Discovery API specs
Install gws 0.3.1
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/googleworkspace/cli/releases/download/v0.3.1/gws-installer.sh | shInstall prebuilt binaries via powershell script
powershell -ExecutionPolicy Bypass -c "irm https://github.com/googleworkspace/cli/releases/download/v0.3.1/gws-installer.ps1 | iex"Install prebuilt binaries into your npm project
npm install @googleworkspace/cli@0.3.1Download gws 0.3.1
| File | Platform | Checksum |
|---|---|---|
| gws-aarch64-apple-darwin.tar.gz | Apple Silicon macOS | checksum |
| gws-x86_64-apple-darwin.tar.gz | Intel macOS | checksum |
| gws-x86_64-pc-windows-msvc.tar.gz | x64 Windows | checksum |
| gws-x86_64-unknown-linux-gnu.tar.gz | x64 Linux | checksum |
Verifying GitHub Artifact Attestations
The artifacts in this release have attestations generated with GitHub Artifact Attestations. These can be verified by using the GitHub CLI:
gh attestation verify <file-path of downloaded artifact> --repo googleworkspace/cliYou can also download the attestation from GitHub and verify against that directly:
gh attestation verify <file-path of downloaded artifact> --bundle <file-path of downloaded attestation>0.2.2
Release Notes
Patch Changes
-
f281797: docs(auth): add manual Google Cloud OAuth client setup and browser-assisted login guidance
Adds step-by-step guidance for creating a Desktop OAuth client in Google Cloud Console,
where to placeclient_secret.json, and how humans/agents can complete browser consent
(including unverified app and scope-selection prompts). -
ee2e216: Narrow default OAuth scopes to avoid
Error 403: restricted_clienton unverified apps and add a--fullflag for broader access (fixes #25). Replace the cryptic non-interactive setup error with actionable step-by-step OAuth console instructions (fixes #24). -
de2787e: feat(error): detect disabled APIs and guide users to enable them
When the Google API returns a 403
accessNotConfigurederror (i.e., the
required API has not been enabled for the GCP project),gwsnow:- Extracts the GCP Console enable URL from the error message body.
- Prints the original error JSON to stdout (machine-readable, unchanged shape
except for an optional newenable_urlfield added to the error object). - Prints a human-readable hint with the direct enable URL to stderr, along
with instructions to retry after enabling.
This prevents a dead-end experience where users see a raw 403 JSON blob
with no guidance. The JSON output is backward-compatible; only an optional
enable_urlfield is added when the URL is parseable from the message.Fixes #31
-
9935dde: ci: auto-generate and commit skills on PR branch pushes
-
4b868c7: docs: add community guidance to gws-shared skill and gws --help output
Encourages agents and users to star the repository and directs bug reports
and feature requests to GitHub Issues, with guidance to check for existing
issues before opening new ones. -
0603bce: fix: atomic credential file writes to prevent corruption on crash or Ctrl-C
-
666f9a8: fix(auth): support --help / -h flag on auth subcommand
-
bcd2401: fix: flatten nested objects in table output and fix multi-byte char truncation panic
-
ee35e4a: fix: warn to stderr when unknown --format value is provided
-
e094b02: fix: YAML block scalar for strings with
#/:, and repeated CSV/table headers with--page-allBug 1 — YAML output:
drive#filerendered as block scalarStrings containing
#or:(e.g.drive#file,https://…) were
incorrectly emitted as YAML block scalars (|), producing output like:kind: | drive#file
Block scalars add an implicit trailing newline which changes the string
value and produces invalid-looking output. The fix restricts block
scalar to strings that genuinely contain newlines; all other strings
are double-quoted, which is safe for any character sequence.Bug 2 —
--page-allwith--format csv/--format tablerepeats headersWhen paginating with
--page-all, each page printed its own header row,
making the combined output unusable for downstream processing:id,kind,name ← page 1 header 1,drive#file,foo.txt id,kind,name ← page 2 header (unexpected!) 2,drive#file,bar.txtColumn headers (and the table separator line) are now emitted only for
the first page; continuation pages contain data rows only. -
173d155: fix: add YAML document separators (---) when paginating with --page-all --format yaml
-
214fc18: ci: skip smoketest on fork pull requests
Install gws 0.2.2
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/googleworkspace/cli/releases/download/v0.2.2/gws-installer.sh | shInstall prebuilt binaries via powershell script
powershell -ExecutionPolicy Bypass -c "irm https://github.com/googleworkspace/cli/releases/download/v0.2.2/gws-installer.ps1 | iex"Install prebuilt binaries into your npm project
npm install @googleworkspace/cli@0.2.2Download gws 0.2.2
| File | Platform | Checksum |
|---|---|---|
| gws-aarch64-apple-darwin.tar.gz | Apple Silicon macOS | checksum |
| gws-x86_64-apple-darwin.tar.gz | Intel macOS | checksum |
| gws-x86_64-pc-windows-msvc.tar.gz | x64 Windows | checksum |
| gws-x86_64-unknown-linux-gnu.tar.gz | x64 Linux | checksum |
Verifying GitHub Artifact Attestations
The artifacts in this release have attestations generated with GitHub Artifact Attestations. These can be verified by using the GitHub CLI:
gh attestation verify <file-path of downloaded artifact> --repo googleworkspace/cliYou can also download the attestation from GitHub and verify against that directly:
gh attestation verify <file-path of downloaded artifact> --bundle <file-path of downloaded attestation>0.2.0
Release Notes
Minor Changes
-
b0d0b95: Add workflow helpers, personas, and 50 consumer-focused recipes
- Add
gws workflowsubcommand with 5 built-in helpers:+standup-report,+meeting-prep,+email-to-task,+weekly-digest,+file-announce - Add 10 agent personas (exec-assistant, project-manager, sales-ops, etc.) with curated skill sets
- Add
docs/skills.mdskills index andregistry/recipes.yamlwith 50 multi-step recipes for Gmail, Drive, Docs, Calendar, and Sheets - Update README with skills index link and accurate skill count
- Fix lefthook pre-commit to run fmt and clippy sequentially
- Add
Patch Changes
-
90adcb4: fix: percent-encode path parameters to prevent path traversal
-
e71ce29: Fix Gemini extension installation issue by removing redundant authentication settings and update the documentation.
-
90adcb4: fix: harden input validation for AI/LLM callers
- Add
src/validate.rswithvalidate_safe_output_dir,validate_msg_format, andvalidate_safe_dir_pathhelpers - Validate
--output-diragainst path traversal ingmail +watchandevents +subscribe - Validate
--msg-formatagainst allowlist (full, metadata, minimal, raw) ingmail +watch - Validate
--diragainst path traversal inscript +push - Add clap
value_parserconstraint for--msg-format - Document input validation patterns in
AGENTS.md
- Add
-
90adcb4: Security: Harden validate_resource_name and fix Gmail watch path traversal
-
90adcb4: Replace manual
urlencoded()with reqwest.query()builder for safer URL encoding -
c11d3c4: Added test coverage for
EncryptedTokenStorage::newinitialization. -
7664357: Add test for missing error path in load_client_config
-
90adcb4: fix: add shared URL safety helpers for path params (
encode_path_segment,validate_resource_name) -
90adcb4: fix: warn on stderr when API calls fail silently
Install gws 0.2.0
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/googleworkspace/cli/releases/download/v0.2.0/gws-installer.sh | shInstall prebuilt binaries via powershell script
powershell -ExecutionPolicy Bypass -c "irm https://github.com/googleworkspace/cli/releases/download/v0.2.0/gws-installer.ps1 | iex"Install prebuilt binaries into your npm project
npm install @googleworkspace/cli@0.2.0Download gws 0.2.0
| File | Platform | Checksum |
|---|---|---|
| gws-aarch64-apple-darwin.tar.gz | Apple Silicon macOS | checksum |
| gws-x86_64-apple-darwin.tar.gz | Intel macOS | checksum |
| gws-x86_64-pc-windows-msvc.tar.gz | x64 Windows | checksum |
| gws-x86_64-unknown-linux-gnu.tar.gz | x64 Linux | checksum |
Verifying GitHub Artifact Attestations
The artifacts in this release have attestations generated with GitHub Artifact Attestations. These can be verified by using the GitHub CLI:
gh attestation verify <file-path of downloaded artifact> --repo googleworkspace/cliYou can also download the attestation from GitHub and verify against that directly:
gh attestation verify <file-path of downloaded artifact> --bundle <file-path of downloaded attestation>