Swarmclaw google-workspace
Use Google Workspace CLI (`gws`) for Drive, Docs, Sheets, Gmail, Calendar, Chat, and related Workspace API tasks.
install
source · Clone the upstream repo
git clone https://github.com/swarmclawai/swarmclaw
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/swarmclawai/swarmclaw "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/google-workspace" ~/.claude/skills/swarmclawai-swarmclaw-google-workspace && rm -rf "$T"
manifest:
skills/google-workspace/SKILL.mdsource content
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
needs to be configured in plugin settings or via a manual terminal login.gws - 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
command after the binary intogws
, for example:args{"args":["drive","files","list"],"params":{"pageSize":5}} - Use
forparams--params - Use
forjsonInput--json - Use
when you intentionally want all pagespageAll: true - Use
before risky mutations if you are unsuredryRun: true
Error Handling
- If
is missing: tell the user to install Google Workspace CLI.gws - If auth is missing or expired: tell the user to configure the plugin settings or authenticate
manually.gws - If a command fails because an ID is missing: switch to a list/search command first and find the right ID.