Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add swarmclawai/swarmclaw --skill google-workspacegit clone --depth 1 https://github.com/swarmclawai/swarmclawWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/swarmclawai/swarmclaw/google-workspace)<a href="https://agentmods.dev/skills/swarmclawai/swarmclaw/google-workspace"><img src="https://agentmods.dev/badge/skills/swarmclawai/swarmclaw/google-workspace/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/swarmclawai/swarmclaw/google-workspace"><img src="https://agentmods.dev/badge/skills/swarmclawai/swarmclaw/google-workspace.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00031 | $0.00663 |
| Opus 5 | $0.00015 | $0.00331 |
| Sonnet 5 | $0.00006 | $0.00133 |
| Haiku 4.5 | $0.00003 | $0.00066 |
Grade A, and why
google-workspace scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 9d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 97 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Google Workspace CLI
Use gws when the task is about Google Workspace resources or Google Workspace API automation.
Prefer gws over generic HTTP calls when possible because it already knows the Workspace API surface and returns structured JSON by default.
Rules
- Start with read/list/get commands before mutating Workspace state.
- Confirm IDs first: document IDs, spreadsheet IDs, file IDs, message IDs, calendar IDs, space IDs.
- Do not run interactive auth flows from an agent tool call. If auth is missing, report that
gwsneeds to be configured in plugin settings or via a manual terminal login. - Keep commands machine-readable. Prefer JSON output and parse it instead of scraping human text.
- For large list operations, limit the scope first, then page or filter.
Common Commands
Check installation and health:
gws doctor
Inspect help for a resource or method:
gws help
gws drive help
gws drive files help
Google Docs:
gws docs get --document-id <DOC_ID>
Google Drive:
gws drive files list --params '{"pageSize":10}'
gws drive files get --file-id <FILE_ID>
Google Sheets:
gws sheets spreadsheets get --spreadsheet-id <SPREADSHEET_ID>
Gmail:
gws gmail users messages list --user-id me --params '{"maxResults":10}'
gws gmail users messages get --user-id me --message-id <MESSAGE_ID>
Google Calendar:
gws calendar events list --calendar-id primary --params '{"maxResults":10,"singleEvents":true}'
Google Chat:
gws chat spaces messages list --parent spaces/<SPACE_ID>
Tool Usage In SwarmClaw
When using the google_workspace tool:
- Put the
gwscommand after the binary intoargs, for example:{"args":["drive","files","list"],"params":{"pageSize":5}} - Use
paramsfor--params - Use
jsonInputfor--json - Use
pageAll: truewhen you intentionally want all pages - Use
dryRun: truebefore risky mutations if you are unsure
Error Handling
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 9d ago First seen · 97 lines · 31 tokens per session scan A 0085e6a9cbe1
google-workspace is a skill published in the GitHub repository swarmclawai/swarmclaw (667 stars, last pushed 2mo ago), licensed MIT. It adds 31 tokens to every session and 663 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
foundry-hosted-agent-validation
Step-by-step process for validating a Python Foundry hosted agent sample (under python/samples/04-hosting/foundry-hosted-agents/) end to end — running it locally (native runtime and azd ai agent run) and after deploying it to an Azure AI Foundry project with azd. Use this when asked to validate a hosted agent sample.
teams-meeting-pipeline
Operate the Teams meeting summary pipeline via Hermes CLI — summarize meetings, inspect pipeline status, replay jobs, manage Microsoft Graph subscriptions.
google-workspace
Gmail, Calendar, Drive, Contacts, Sheets, and Docs integration via gws CLI (googleworkspace/cli). Uses OAuth2 with automatic token refresh via bridge script. Requires gws binary.
tmux
Remote-control tmux sessions for interactive CLIs by sending keystrokes and scraping pane output.
cron
Schedule reminders and recurring tasks.
agent-framework-py-release
Use when cutting a Python release for the microsoft/agent-framework monorepo. Triggers on "bump py versions", "cut a python release", "prepare release PR for python", "release py packages", "bump python to X.Y.Z", or similar requests to bump Python package versions and prepare a release PR. Handles all four lifecycle…