claude/skills/gws-drive/SKILL.md
Search and read Google Drive files, Google Docs, Sheets, and Slides.
npx skillsauth add tbroadley/dotfiles gws-driveInstall 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.
See
../gws-shared/SKILL.mdfor auth, global flags, and CLI syntax.
gws drive <resource> <method> [flags]
gws docs <resource> <method> [flags]
gws sheets <resource> <method> [flags]
gws drive files list --params '{
"pageSize": 20,
"orderBy": "modifiedTime desc",
"includeItemsFromAllDrives": true,
"supportsAllDrives": true,
"corpora": "allDrives"
}'
gws drive files list --params '{
"q": "name contains '\''meeting notes'\''",
"pageSize": 20,
"includeItemsFromAllDrives": true,
"supportsAllDrives": true,
"corpora": "allDrives"
}'
gws drive files get --params '{"fileId": "FILE_ID", "fields": "*", "supportsAllDrives": true}'
gws drive files export --params '{"fileId": "FILE_ID", "mimeType": "text/plain"}'
gws drive +upload --file /path/to/file.pdf
gws docs documents get --params '{"documentId": "DOC_ID"}'
gws docs documents create --json '{"title": "My Document"}'
gws docs +write --doc DOC_ID --text "Hello, world"
gws sheets +read --spreadsheet SHEET_ID --range 'Sheet1!A1:D10'
gws sheets +read --spreadsheet SHEET_ID --range Sheet1
gws sheets spreadsheets get --params '{"spreadsheetId": "SHEET_ID"}'
The q parameter in drive files list uses Drive search syntax:
| Query | Description |
|-------|-------------|
| name contains 'report' | Name contains text |
| name = 'Exact Name' | Exact name match |
| fullText contains 'search term' | Content contains text |
| mimeType = 'application/vnd.google-apps.document' | Google Docs |
| mimeType = 'application/vnd.google-apps.spreadsheet' | Google Sheets |
| mimeType = 'application/pdf' | PDF files |
| modifiedTime > '2024-01-01' | Modified after date |
| 'folder_id' in parents | Files in specific folder |
| starred = true | Starred files |
| trashed = false | Not in trash |
Combine with and/or: name contains 'meeting' and mimeType = 'application/vnd.google-apps.document'
| Type | MIME Type |
|------|-----------|
| Google Doc | application/vnd.google-apps.document |
| Google Sheet | application/vnd.google-apps.spreadsheet |
| Google Slides | application/vnd.google-apps.presentation |
| Google Form | application/vnd.google-apps.form |
| Folder | application/vnd.google-apps.folder |
| Original | Export MIME Types |
|----------|------------------|
| Document | text/plain, text/html, application/pdf, application/vnd.openxmlformats-officedocument.wordprocessingml.document |
| Spreadsheet | text/csv, application/pdf, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet |
| Presentation | application/pdf, text/plain |
https://docs.google.com/document/d/{FILE_ID}/edithttps://docs.google.com/spreadsheets/d/{FILE_ID}/edithttps://drive.google.com/file/d/{FILE_ID}/view# List revisions
gws drive revisions list --params '{"fileId": "DOC_ID", "fields": "revisions(id,modifiedTime,lastModifyingUser)"}'
# Get a specific revision
gws drive revisions get --params '{"fileId": "DOC_ID", "revisionId": "REV_ID"}'
includeItemsFromAllDrives, supportsAllDrives, corpora for Shared Drive filesfields parameter reduces response sizetools
Add words to the Wispr Flow dictionary. Use when the user wants to add a word, phrase, or snippet to Wispr Flow for voice dictation.
documentation
Upload images to a GitHub PR description or comment using a shared gist as image hosting. Use when the user wants to add plots, screenshots, or other images to a PR.
testing
Manage tasks, projects, and productivity in Todoist. View tasks, add new items, check completed work, and organize projects.
data-ai
Use when working with stacked diffs (branch B based on branch A, which is based on main).