Skip to content

Releases: googleworkspace/cli

0.22.1

25 Mar 17:37
Immutable release. Only release title and notes can be modified.
45ca45b

Choose a tag to compare

Release Notes

Patch Changes

  • 6a45832: Sync generated skills with latest Google Discovery API specs

Install google-workspace-cli 0.22.1

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/googleworkspace/cli/releases/download/v0.22.1/google-workspace-cli-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/googleworkspace/cli/releases/download/v0.22.1/google-workspace-cli-installer.ps1 | iex"

Install prebuilt binaries into your npm project

npm install @googleworkspace/cli@0.22.1

Download google-workspace-cli 0.22.1

File Platform Checksum
google-workspace-cli-aarch64-apple-darwin.tar.gz Apple Silicon macOS checksum
google-workspace-cli-x86_64-apple-darwin.tar.gz Intel macOS checksum
google-workspace-cli-x86_64-pc-windows-msvc.zip x64 Windows checksum
google-workspace-cli-aarch64-unknown-linux-gnu.tar.gz ARM64 Linux checksum
google-workspace-cli-x86_64-unknown-linux-gnu.tar.gz x64 Linux checksum
google-workspace-cli-aarch64-unknown-linux-musl.tar.gz ARM64 MUSL Linux checksum
google-workspace-cli-x86_64-unknown-linux-musl.tar.gz x64 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/cli

You 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.22.0

24 Mar 22:25
Immutable release. Only release title and notes can be modified.
9198386

Choose a tag to compare

Release Notes

Minor Changes

  • 0850c48: Add --draft flag to Gmail +send, +reply, +reply-all, and +forward helpers to save messages as drafts instead of sending them immediately

Install google-workspace-cli 0.22.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/googleworkspace/cli/releases/download/v0.22.0/google-workspace-cli-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/googleworkspace/cli/releases/download/v0.22.0/google-workspace-cli-installer.ps1 | iex"

Install prebuilt binaries into your npm project

npm install @googleworkspace/cli@0.22.0

Download google-workspace-cli 0.22.0

File Platform Checksum
google-workspace-cli-aarch64-apple-darwin.tar.gz Apple Silicon macOS checksum
google-workspace-cli-x86_64-apple-darwin.tar.gz Intel macOS checksum
google-workspace-cli-x86_64-pc-windows-msvc.zip x64 Windows checksum
google-workspace-cli-aarch64-unknown-linux-gnu.tar.gz ARM64 Linux checksum
google-workspace-cli-x86_64-unknown-linux-gnu.tar.gz x64 Linux checksum
google-workspace-cli-aarch64-unknown-linux-musl.tar.gz ARM64 MUSL Linux checksum
google-workspace-cli-x86_64-unknown-linux-musl.tar.gz x64 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/cli

You 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.21.1

24 Mar 21:02
Immutable release. Only release title and notes can be modified.
b736f25

Choose a tag to compare

Release Notes

Patch Changes

  • ea0849a: Fix version-sync script and bump CLI crate version to 0.21.0

    The version-sync.sh script was updating the root Cargo.toml which no longer has a [package] section after the workspace refactor. Updated to target crates/google-workspace-cli/Cargo.toml. Also syncs the CLI crate version to 0.21.0 to match package.json.

Install google-workspace-cli 0.21.1

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/googleworkspace/cli/releases/download/v0.21.1/google-workspace-cli-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/googleworkspace/cli/releases/download/v0.21.1/google-workspace-cli-installer.ps1 | iex"

Install prebuilt binaries into your npm project

npm install @googleworkspace/cli@0.21.1

Download google-workspace-cli 0.21.1

File Platform Checksum
google-workspace-cli-aarch64-apple-darwin.tar.gz Apple Silicon macOS checksum
google-workspace-cli-x86_64-apple-darwin.tar.gz Intel macOS checksum
google-workspace-cli-x86_64-pc-windows-msvc.zip x64 Windows checksum
google-workspace-cli-aarch64-unknown-linux-gnu.tar.gz ARM64 Linux checksum
google-workspace-cli-x86_64-unknown-linux-gnu.tar.gz x64 Linux checksum
google-workspace-cli-aarch64-unknown-linux-musl.tar.gz ARM64 MUSL Linux checksum
google-workspace-cli-x86_64-unknown-linux-musl.tar.gz x64 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/cli

You 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.20.0

24 Mar 18:08
Immutable release. Only release title and notes can be modified.
203acc7

Choose a tag to compare

Release Notes

Minor Changes

  • e782dd7: Forward original attachments by default and preserve inline images in HTML mode.

    +forward now includes the original message's attachments and inline images by default,
    matching Gmail web behavior. Use --no-original-attachments to opt out.
    +reply/+reply-all with --html preserve inline images in the quoted body via
    multipart/related. In plain-text mode, inline images are not included (matching Gmail web).

Install gws 0.20.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/googleworkspace/cli/releases/download/v0.20.0/gws-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/googleworkspace/cli/releases/download/v0.20.0/gws-installer.ps1 | iex"

Install prebuilt binaries into your npm project

npm install @googleworkspace/cli@0.20.0

Download gws 0.20.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.zip 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
gws-x86_64-unknown-linux-musl.tar.gz x64 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/cli

You 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.19.0

23 Mar 21:34
Immutable release. Only release title and notes can be modified.
477f5d9

Choose a tag to compare

Release Notes

Minor Changes

  • a078945: Refactor all gws auth subcommands to use clap for argument parsing

    Replace manual argument parsing in handle_auth_command, handle_login, resolve_scopes, and handle_export with structured clap::Command definitions. Introduces ScopeMode enum for type-safe scope selection and adds proper --help support for all auth subcommands.

Patch Changes

  • 8a749c2: feat(helpers): add --dry-run support to events helper commands

    Add dry-run mode to gws events +renew and gws events +subscribe commands.
    When --dry-run is specified, the commands will print what actions would be
    taken without making any API calls. This allows agents to simulate requests
    and learn without reaching the server.

  • d679401: Fix mask_secret panic on multi-byte UTF-8 secrets by using char-based indexing instead of byte-offset slicing

  • d341de2: Handle --help/-h in gws auth setup before launching the setup wizard, preventing accidental project creation when users just want usage info

  • f157208: fix: use block-style YAML sequences in generated SKILL.md frontmatter

    Replace flow sequences (bins: ["gws"], skills: [...]) with block-style
    sequences (bins:\n - gws) in all generated SKILL.md frontmatter templates.

    Flow sequences are valid YAML but rejected by strictyaml, which the
    Agent Skills reference implementation (agentskills validate) uses to parse
    frontmatter. This caused all 93 generated skills to fail validation.

    Fixes #521

  • b4d5e26: Fix auth error propagation: properly propagate errors when token directory creation or permission setting fails, instead of silently ignoring them

Install gws 0.19.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/googleworkspace/cli/releases/download/v0.19.0/gws-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/googleworkspace/cli/releases/download/v0.19.0/gws-installer.ps1 | iex"

Install prebuilt binaries into your npm project

npm install @googleworkspace/cli@0.19.0

Download gws 0.19.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.zip 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
gws-x86_64-unknown-linux-musl.tar.gz x64 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/cli

You 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.18.1

18 Mar 21:02
Immutable release. Only release title and notes can be modified.
e9970db

Choose a tag to compare

Release Notes

Patch Changes

  • a87037b: Handle SIGTERM in gws gmail +watch and gws events +subscribe for clean container shutdown.

    Long-running pull loops now exit gracefully on SIGTERM (in addition to Ctrl+C),
    enabling clean shutdown under Kubernetes, Docker, and systemd.

Install gws 0.18.1

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/googleworkspace/cli/releases/download/v0.18.1/gws-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/googleworkspace/cli/releases/download/v0.18.1/gws-installer.ps1 | iex"

Install prebuilt binaries into your npm project

npm install @googleworkspace/cli@0.18.1

Download gws 0.18.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.zip 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
gws-x86_64-unknown-linux-musl.tar.gz x64 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/cli

You 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.18.0

18 Mar 15:55
Immutable release. Only release title and notes can be modified.
23ffc33

Choose a tag to compare

Release Notes

Minor Changes

  • 908cf73: feat(gmail): auto-populate From header with display name from send-as settings

    Fetch the user's send-as identities to set the From header with a display name in all mail helpers (+send, +reply, +reply-all, +forward), matching Gmail web client behavior. Also enriches bare --from emails with their configured display name.

  • 6e4daaf: Gmail helpers rollup: mail-builder migration, --attach flag (upload endpoint), +read helper

    • Migrate +send, +reply, +reply-all, and +forward to the mail-builder crate for RFC-compliant MIME construction
    • Add --from flag to +send for send-as alias support
    • Add -a/--attach flag to all mail helpers (+send, +reply, +reply-all, +forward) with mime_guess2 auto-detection, 25MB size validation, and upload endpoint support (35MB API limit vs 5MB metadata-only)
    • Add +read helper to extract message body and headers (text, HTML, or JSON output)
    • Make OriginalMessage.thread_id optional (Option<String>) for draft compatibility
    • RFC 2822 display name quoting is handled natively by mail-builder
    • Introduce UploadSource enum in executor for type-safe upload strategies

Patch Changes

  • 1e90380: fix(gmail): remove dead --attachment arg from +send

    The +send subcommand defined a duplicate "attachment" arg alongside the
    "attach" arg already provided by common_mail_args. Since parse_attachments
    reads "attach", the --attachment flag was silently ignored. Removed the
    dead duplicate.

  • 908cf73: fix(gmail): handle reply-all to own message correctly

    Reply-all to a message you sent no longer errors with "No To recipient remains." The original To recipients are now used as reply targets, matching Gmail web client behavior.

  • 2e909ae: Consolidate terminal sanitization, coloring, and output helpers into a new output.rs module. Fixes raw ANSI escape codes in watch.rs that bypassed NO_COLOR and TTY detection, upgrades sanitize_for_terminal to also strip dangerous Unicode characters (bidi overrides, zero-width spaces, directional isolates), and sanitizes previously raw API error body and user query outputs.

Install gws 0.18.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/googleworkspace/cli/releases/download/v0.18.0/gws-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/googleworkspace/cli/releases/download/v0.18.0/gws-installer.ps1 | iex"

Install prebuilt binaries into your npm project

npm install @googleworkspace/cli@0.18.0

Download gws 0.18.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.zip 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
gws-x86_64-unknown-linux-musl.tar.gz x64 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/cli

You 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.17.0

17 Mar 20:33
Immutable release. Only release title and notes can be modified.
9c26e3c

Choose a tag to compare

Release Notes

Minor Changes

  • 1b0a21f: feat: support google meet video conferencing in calendar +insert

Patch Changes

  • 811fe7b: Fix critical security vulnerability (TOCTOU/Symlink race) in atomic file writes.

    The atomic_write and atomic_write_async utilities now use:

    • Randomized temporary filenames to prevent predictability.
    • O_EXCL creation flags to prevent following pre-existing symlinks.
    • Strict 0600 permissions from the moment of file creation on Unix systems.
    • Redundant post-write permission calls have been removed to close race windows.
  • b241a5b: fix(security): cap Retry-After sleep, sanitize upload mimeType, and validate --upload/--output paths

  • 6f92e5b: Stderr/output hygiene rollup: route diagnostics to stderr, add colored error labels, propagate auth errors.

    • triage.rs: "No messages found" sent to stderr so stdout stays valid JSON for pipes
    • modelarmor.rs: response body printed only on success; error message now includes body for diagnostics
    • error.rs: colored error[variant]: labels on stderr (respects NO_COLOR env var), hint: prefix for accessNotConfigured guidance
    • calendar, chat, docs, drive, script, sheets: auth failures now propagate as GwsError::Auth instead of silently proceeding unauthenticated (dry-run still works without auth)
  • 398e80c: Sync generated skills with latest Google Discovery API specs

  • 8458104: Extend input validation to reject dangerous Unicode characters (zero-width chars, bidi overrides, Unicode line/paragraph separators) that were not caught by the previous ASCII-range check

Install gws 0.17.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/googleworkspace/cli/releases/download/v0.17.0/gws-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/googleworkspace/cli/releases/download/v0.17.0/gws-installer.ps1 | iex"

Install prebuilt binaries into your npm project

npm install @googleworkspace/cli@0.17.0

Download gws 0.17.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.zip 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
gws-x86_64-unknown-linux-musl.tar.gz x64 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/cli

You 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.16.0

13 Mar 23:34
Immutable release. Only release title and notes can be modified.
1308786

Choose a tag to compare

Release Notes

Minor Changes

  • 47afe5f: Use Google account timezone instead of machine-local time for day-boundary calculations in calendar and workflow helpers. Adds --timezone flag to +agenda for explicit override. Timezone is fetched from Calendar Settings API and cached for 24 hours.

Patch Changes

  • c61b9cb: fix(gmail): RFC 2047 encode non-ASCII display names in To/From/Cc/Bcc headers

    Fixes mojibake when sending emails to recipients with non-ASCII display names (e.g. Japanese, Spanish accented characters). The new encode_address_header() function parses mailbox lists, encodes only the display-name portion via RFC 2047 Base64, and leaves email addresses untouched.

Install gws 0.16.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/googleworkspace/cli/releases/download/v0.16.0/gws-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/googleworkspace/cli/releases/download/v0.16.0/gws-installer.ps1 | iex"

Install prebuilt binaries into your npm project

npm install @googleworkspace/cli@0.16.0

Download gws 0.16.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.zip 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
gws-x86_64-unknown-linux-musl.tar.gz x64 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/cli

You 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.15.0

13 Mar 21:35
Immutable release. Only release title and notes can be modified.
e4a59c1

Choose a tag to compare

Release Notes

Minor Changes

  • 6f3e090: Add opt-in structured HTTP request logging via tracing

    New environment variables:

    • GOOGLE_WORKSPACE_CLI_LOG: stderr log filter (e.g., gws=debug)
    • GOOGLE_WORKSPACE_CLI_LOG_FILE: directory for JSON log files with daily rotation

    Logging is completely silent by default (zero overhead). Only PII-free metadata is logged: API method ID, HTTP method, status code, latency, and content-type.

Install gws 0.15.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/googleworkspace/cli/releases/download/v0.15.0/gws-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/googleworkspace/cli/releases/download/v0.15.0/gws-installer.ps1 | iex"

Install prebuilt binaries into your npm project

npm install @googleworkspace/cli@0.15.0

Download gws 0.15.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.zip 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
gws-x86_64-unknown-linux-musl.tar.gz x64 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/cli

You 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>