apps/api/app/skills/community/gws_shared/SKILL.md
gws CLI: Shared patterns for authentication, global flags, and output formatting.
npx skillsauth add nomad3/servicetsunami-agents gws-sharedInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
The gws binary must be on $PATH. See the project README for install options.
# Browser-based OAuth (interactive)
gws auth login
# Service Account
export GOOGLE_APPLICATION_CREDENTIALS=/path/to/key.json
| Flag | Description |
|------|-------------|
| --format <FORMAT> | Output format: json (default), table, yaml, csv |
| --dry-run | Validate locally without calling the API |
| --sanitize <TEMPLATE> | Screen responses through Model Armor |
gws <service> <resource> [sub-resource] <method> [flags]
| Flag | Description |
|------|-------------|
| --params '{"key": "val"}' | URL/query parameters |
| --json '{"key": "val"}' | Request body |
| -o, --output <PATH> | Save binary responses to file |
| --upload <PATH> | Upload file content (multipart) |
| --page-all | Auto-paginate (NDJSON output) |
| --page-limit <N> | Max pages when using --page-all (default: 10) |
| --page-delay <MS> | Delay between pages in ms (default: 100) |
--dry-run for destructive operations--sanitize for PII/content safety screening! expansion: Sheet ranges like Sheet1!A1 contain ! which zsh interprets as history expansion. Use double quotes with escaped inner quotes instead of single quotes:
# WRONG (zsh will mangle the !)
gws sheets +read --spreadsheet ID --range 'Sheet1!A1:D10'
# CORRECT
gws sheets +read --spreadsheet ID --range "Sheet1!A1:D10"
--params and --json values in single quotes so the shell does not interpret the inner double quotes:
gws drive files list --params '{"pageSize": 5}'
https://github.com/googleworkspace/clihttps://github.com/googleworkspace/cli/issuestools
--- name: Luna Learn from Media engine: markdown category: meta tags: [learning, video, transcription, knowledge, meta] auto_trigger: "When the user sends a YouTube/Instagram/short-form video URL or asks you to 'learn this', 'study this clip', 'turn this into a skill', or otherwise convert media into an installable capability." inputs: - name: source_url type: string description: "URL of the media (YouTube, youtu.be, Instagram reel/post). Optional if attachment_path supplied." requ
tools
--- name: Levi SRE Platform engine: agent platform_affinity: claude_code fallback_platform: codex category: infrastructure tags: [levis, sre, ai-sre-platform, mdm, service-now, status, weekly-trackers] version: 1 tool_groups: [github, knowledge_readonly, drive, meta] inputs: - name: message type: string description: Levi's SRE platform task, weekly tracker, repo status, incident prep, or meeting briefing required: true auto_trigger: "Levi, Levi's, ai-sre-platform, SRE tracker, week
tools
--- name: Levi MDM PC9 Triage engine: agent platform_affinity: claude_code fallback_platform: codex category: infrastructure tags: [levis, mdm, pc9, s4, service-now, affiliate-activation, product-data] version: 1 tool_groups: [github, knowledge_readonly, drive, meta] inputs: - name: message type: string description: PC9, MDM, affiliate activation, S4, plant assignment, or ServiceNow evidence request required: true auto_trigger: "PC9, MDM, S4, Plant 2011, affiliate activation, drop
tools
--- name: Integral SRE Ops engine: agent platform_affinity: claude_code fallback_platform: codex category: infrastructure tags: [integral, sre, fxcw, jenkins, nexus, grafana, opentsdb, haproxy, alerts, rca] version: 1 tool_groups: [github, knowledge_readonly, drive, meta] inputs: - name: message type: string description: Integral SRE task, alert triage, RCA, Jenkins/Nexus/Grafana/OpenTSDB/HAProxy investigation required: true auto_trigger: "Integral, FXCW, OpenTSDB, Grafana, Jenkins