| name | google-sheets-automation |
| description | "**v00.33.0**: Ingested from antigravity-awesome-skills community repo" |
Google Sheets
Lightweight Google Sheets integration with standalone OAuth authentication. No MCP server required. Full read/write access.
Requires Google Workspace account. Personal Gmail accounts are not supported.
First-Time Setup
Authenticate with Google (opens browser):
python scripts/auth.py login
Check authentication status:
python scripts/auth.py status
Logout when needed:
python scripts/auth.py logout
Read Commands
All operations via scripts/sheets.py. Auto-authenticates on first use if not logged in.
python scripts/sheets.py get-text SPREADSHEET_ID
python scripts/sheets.py get-text SPREADSHEET_ID --format csv
python scripts/sheets.py get-text SPREADSHEET_ID --format json
python scripts/sheets.py get-range SPREADSHEET_ID "Sheet1!A1:D10"
python scripts/sheets.py get-range SPREADSHEET_ID "A1:C5"
python scripts/sheets.py find "budget 2024"
python scripts/sheets.py find "sales report" --limit 5
python scripts/sheets.py get-metadata SPREADSHEET_ID
Write Commands
python scripts/sheets.py update-range SPREADSHEET_ID "Sheet1!A1:B2" '[["Hello","World"],["Foo","Bar"]]'
python scripts/sheets.py update-range SPREADSHEET_ID "Sheet1!A1:B1" '[["=SUM(A1:A5)","text"]]' --raw
python scripts/sheets.py append-rows SPREADSHEET_ID "Sheet1!A:Z" '[["New Row Col A","New Row Col B"]]'
python scripts/sheets.py clear-range SPREADSHEET_ID "Sheet1!A1:B10"
python scripts/sheets.py batch-update SPREADSHEET_ID '[{"updateCells":{"range":{"sheetId":0},"fields":"userEnteredValue"}}]'
Spreadsheet ID
You can use either:
- The spreadsheet ID:
1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms
- The full URL:
https://docs.google.com/spreadsheets/d/1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms/edit
The script automatically extracts the ID from URLs.
Output Formats
Text (default)
Human-readable format with pipe separators:
Spreadsheet Title: Sales Data
Sheet Name: Q1
Name | Revenue | Units
Product A | 10000 | 50
Product B | 15000 | 75
CSV
Standard CSV format, suitable for further processing:
Name,Revenue,Units
Product A,10000,50
Product B,15000,75
JSON
Structured data format:
{
"Q1": [
["Name", "Revenue", "Units"],
["Product A", "10000", "50"]
]
}
A1 Notation Examples
Sheet1!A1:B10 - Range A1 to B10 on Sheet1
Sheet1!A:A - All of column A on Sheet1
Sheet1!1:1 - All of row 1 on Sheet1
A1:C5 - Range on the first sheet
Value Input Options
- USER_ENTERED (default): Values are parsed as if typed by a user. Numbers, dates, and formulas are interpreted.
- RAW (
--raw flag): Values are stored exactly as provided. No parsing of formulas or number formatting.
Token Management
Tokens stored securely using the system keyring:
- macOS: Keychain
- Windows: Windows Credential Locker
- Linux: Secret Service API (GNOME Keyring, KDE Wallet, etc.)
Service name: google-sheets-skill-oauth
Tokens automatically refresh when expired using Google's cloud function.
When to Use
Use this skill when tackling tasks related to its primary domain or functionality as described above.
Diff History
- v00.33.0: Ingested from antigravity-awesome-skills community repo
Why This Skill Exists
Apply —
What If Fails
- condition: Modelo de ML indisponível ou não carregado