Google Drops a Workspace CLI That Builds Itself From 100+ APIs at Runtime
One command-line tool to control Gmail, Drive, Docs, Calendar, Sheets — and it reads Google’s own API catalog to learn new tricks on the fly
Written in Rust. 100+ pre-built AI agent skills. Dynamically generates its own commands from Google’s Discovery Service. Not officially supported by Google.
Between you and me, this is the kind of tool that shows up quietly on GitHub, gets 700+ upvotes on HN, and then either becomes essential infrastructure or gets memory-holed in six months. The play here is to move fast.

🧩 Dumb Mode Dictionary
| Term | What It Actually Means |
|---|---|
| CLI | Command Line Interface — you type words in a terminal instead of clicking buttons |
| Discovery Service | Google’s public catalog of every API it runs. The CLI reads it like a menu |
| NPM | Node Package Manager — how you install JavaScript tools. Yes, for a Rust tool. People are annoyed |
| OAuth | The login dance where Google asks “are you sure?” seventeen times |
| NDJSON | Newline-delimited JSON — data that streams one object per line. Scripts love it |
| MCP | Model Context Protocol — a way for AI agents to talk to external tools |
| Agent Skills | Pre-written instruction files (SKILL.md) that tell AI agents how to use the CLI |
| Dry-run mode | Preview what a command WOULD do without actually doing it |
📖 What This Thing Actually Is
The tool is called gws. You install it, authenticate once, and suddenly your terminal can do everything the Google Workspace web UI does. But here’s the angle that matters:
- It doesn’t have a fixed list of commands. It reads Google’s Discovery Service at runtime and generates its own command tree dynamically
- New Google API drops tomorrow?
gwsalready supports it. No update needed - Every response comes back as structured JSON → perfect for piping into scripts, databases, or AI agents
- Ships with 100+ pre-built “agent skills” — basically instruction manuals for Claude, ChatGPT, or any LLM to control your Workspace
Built in Rust. Installed via npm (yes, people are confused about this). Pre-built binaries also available.
🔧 What You Can Actually Do With It
Here’s what you do: forget the web UI for bulk operations. This thing handles:
- Gmail → search, read, send, label, filter — all from terminal
- Drive → upload, download, share, organize files programmatically
- Sheets → read/write cells, append rows, create spreadsheets
- Calendar → list events, create meetings, check availability
- Docs → create, read, batch-update documents
- Admin → manage users, groups, org units (if you have admin access)
- Chat → send messages to spaces programmatically
All with multipart file uploads, automatic pagination with NDJSON streaming, and a dry-run mode so you don’t accidentally email your entire company at 3 AM.
📊 The Numbers
| Stat | Value |
|---|---|
| HN Upvotes | 729+ |
| HN Comments | 243+ |
| Pre-built Agent Skills | 100+ |
| Language | Rust (core) + TypeScript (npm wrapper) |
| Auth Methods | OAuth, Service Accounts, Access Tokens, Domain-wide Delegation |
| API Discovery | Dynamic at runtime — auto-cached 24 hours |
| Official Google Support | None. “Not an officially supported Google product” |
| Version | Pre-1.0, breaking changes expected |
🗣️ What People Are Saying
The HN thread is spicy. Mixed bag:
The excited crowd:
“CLIs may be surpassing MCP servers for agent interactions — lower token costs, simpler implementation”
“This is explicitly agent-first architecture. The CLI reduces context overhead compared to MCPs and handles auth automatically”
The frustrated crowd:
“I’ve spent 45 minutes trying to get this to work, just following their defaults” — OAuth setup is painful
“Why does a Rust tool require npm to install?”
Multiple devs report scope verification issues, Google Cloud project creation headaches, and auth friction that makes GitHub CLI look like a dream
The skeptics:
“Not an officially supported Google product” → could vanish any time
Concerns about long-term maintenance and Google’s graveyard of abandoned projects

💡 The Agent-First Angle Nobody's Talking About
Between you and me, the real story isn’t the CLI itself — it’s the 100+ SKILL.md files bundled with it. These are pre-written instruction sets that tell AI agents exactly how to use gws for common workflows.
Think about what that means → any AI coding agent (Claude Code, Cursor, Copilot) can now programmatically control your entire Google Workspace. Search your email. Read your docs. Update your spreadsheets. Schedule your meetings. All through text commands.
The MCP server support is the cherry on top. You can expose gws as an MCP tool and let your AI assistant call it directly.
This is Google building the plumbing for AI agents to live inside your work environment. They just didn’t put it on a billboard.
Cool. Google gave us a CLI that writes itself. Now What the Hell Do We Do? ( ͡° ͜ʖ ͡°)

💰 Hustle 1: Google Workspace Automation-as-a-Service for Small Businesses
Most small businesses pay $6-18/user/month for Google Workspace and use maybe 10% of it. Here’s what you do: build automation scripts using gws that handle their repetitive work — auto-filing Drive documents, generating weekly reports from Sheets, auto-responding to common Gmail queries, syncing Calendar across teams.
Package it as a monthly retainer. $300-500/month per client. The CLI makes this trivially scriptable now.
Example: A freelance developer in Medellín, Colombia built a bash script pipeline using Google APIs to auto-sort incoming invoices from Gmail into labeled Drive folders and update a master Sheets tracker for a logistics company. 5 clients at $400/month → $2,000/month recurring. The gws CLI cuts his setup time from days to hours.
Timeline: Week 1 — install
gws, build 3 template scripts. Week 2 — cold-email 50 local businesses. Month 2 — first 2-3 clients. Month 3 — $1,000-1,500/month.
🔧 Hustle 2: AI Agent Integration Packages
The agent skills bundled with gws are the real product here. Most companies want AI agents but don’t know how to connect them to their actual work tools. Here’s the angle: sell pre-configured AI agent setups that use gws as the backbone.
Client says “I want my AI assistant to read my emails and draft responses.” You wire up Claude or GPT with gws MCP integration, test it, document it, hand it over. Charge $1,500-3,000 per setup.
Example: A solo consultant in Lisbon, Portugal packages gws + Claude API into a “Smart Office” setup for real estate agencies — the agent scans incoming emails for property inquiries, pulls relevant listings from a shared Sheet, and drafts personalized responses. 2 agencies signed at €2,500 each. She does the setup in a weekend.
Timeline: Week 1 — build one working demo. Week 2-3 — pitch to 10 agencies. Month 2 — first paid client. Month 3 — referrals start.
📊 Hustle 3: Bulk Migration and Cleanup Scripts
Companies switching to Google Workspace (or reorganizing within it) need migration scripts. gws makes bulk operations dead simple — transfer ownership of thousands of Drive files, migrate email labels, reorganize shared drives, export data before account deletions.
This used to require Google Apps Script expertise or expensive third-party tools. Now it’s a bash one-liner.
Example: An IT contractor in Lagos, Nigeria used Google Admin APIs to handle Workspace migrations for schools switching from Microsoft 365. With gws, he scripts the entire student account creation, Drive setup, and Calendar configuration. Charges ₦500,000 (~$310) per school. Did 8 schools in one quarter.
Timeline: Week 1 — learn
gwsadmin commands. Week 2 — build migration template. Month 1 — pitch to 5 schools or companies. Month 2 — first 2-3 gigs.
📝 Hustle 4: Automated Reporting Dashboards
Every manager wants a dashboard. Most can’t build one. Here’s what you do: use gws to pull data from Sheets, Calendar, Gmail, and Drive, pipe it through a simple script, and auto-generate weekly/monthly reports as Google Docs or Slides.
No fancy BI tool needed. No Looker subscription. Just gws + a cron job + a template.
Example: A data analyst in Krakow, Poland built automated weekly reports for an e-commerce brand — the script pulls sales data from Sheets, email response times from Gmail, and team capacity from Calendar, then generates a formatted Google Doc every Monday at 7 AM. Client pays €600/month. He maintains 4 clients with almost zero ongoing work after initial setup.
Timeline: Week 1 — build one report template. Week 2 — demo to 5 businesses. Month 2 — first client. Month 4 — 3-4 clients at $400-600/month each.
🛠️ Follow-Up Actions
| Step | Action |
|---|---|
| 1 | Install gws: npm install -g @googleworkspace/cli or grab a binary from GitHub Releases |
| 2 | Set up OAuth — this WILL be painful. Budget 30-60 mins. Follow the repo docs exactly |
| 3 | Run gws drive files list to confirm it works. Breathe |
| 4 | Read the SKILL.md files in the repo — they’re basically templates for AI agent prompts |
| 5 | Pick ONE hustle above and build a working demo this weekend |
| 6 | Star the repo and watch it — this is pre-1.0, breaking changes incoming |
| 7 | Join the HN discussion thread for community tips on auth workarounds |
Quick Hits
| Want to… | Do this |
|---|---|
gws gmail messages list --q "from:boss subject:urgent" |
|
gws drive files create --name report.pdf --upload-file ./report.pdf |
|
gws calendar events list --calendar-id primary --time-min today |
|
| Enable MCP server mode, point your agent at the SKILL.md files | |
| Use a service account for automation. Skip the OAuth dance entirely |
Google built a CLI that learns new APIs before its own docs team writes about them. Grab it before the “not officially supported” label turns into “sunset notice.”
!