--- name: gog-sheets description: "Google Sheets operations through gog." --- # Google Sheets Use `gog` for Google Sheets operations. Read `../gog/SKILL.md` first for shared auth, output, safety, and live-write rules. ## Safe start ```bash gog auth list --check --json --no-input gog schema sheets --json gog --readonly --account user@example.com sheets get SHEET_ID 'Sheet1!A1:D20' --json --wrap-untrusted ``` - Select the account explicitly with `--account`. - Use `--json --wrap-untrusted` for agent-readable Google content. - Use `--readonly` when the task must not mutate Google data. - Use `--no-input` in automation and `--dry-run` before supported writes. - Confirm the exact account, object, and mutation before any write or delete. ## Commands | Command | Purpose | | --- | --- | | `add-tab` | Add a new tab/sheet to a spreadsheet | | `append` | Append values to a range | | `banding` | Manage alternating color banding | | `batch-request` | Submit an atomic structural request array (requires confirmation or --force) | | `batch-update` | Update values in multiple ranges with one API request | | `chart` | Manage spreadsheet charts | | `clear` | Clear values in a range | | `conditional-format` | Manage conditional formatting rules | | `copy` | Copy a Google Sheet | | `copy-paste` | Copy a range's values/formulas/format to another range (tiles to fill down/across) | | `create` | Create a new spreadsheet | | `datasource` | Manage Connected Sheets data sources and extracts | | `delete-dimension` | Delete rows or columns while preserving intersecting tables | | `delete-tab` | Delete a tab/sheet from a spreadsheet (use --force to skip confirmation) | | `duplicate-tab` | Duplicate a tab within a spreadsheet | | `export` | Export a Google Sheet (pdf\|xlsx\|csv) via Drive | | `filter` | Manage basic filters | | `find-replace` | Find and replace text across a spreadsheet | | `format` | Apply cell formatting to a range | | `freeze` | Freeze rows and columns on a sheet | | `get` | Get values from a range | | `insert` | Insert empty rows or columns into a sheet | | `links` | Get or set cell hyperlinks | | `merge` | Merge cells in a range | | `metadata` | Get spreadsheet metadata | | `named-ranges` | Manage named ranges | | `notes` | Get cell notes from a range | | `number-format` | Apply number format to a range | | `raw` | Dump raw Google Sheets API response as JSON (Spreadsheets.Get; lossless; for scripting and LLM consumption) | | `read-format` | Read cell formatting from a range | | `rename-tab` | Rename a tab/sheet in a spreadsheet | | `reorder-tab` | Move a tab/sheet to a specific 0-based position in the spreadsheet | | `resize-columns` | Resize sheet columns | | `resize-rows` | Resize sheet rows | | `table` | Manage Google Sheets tables | | `unmerge` | Unmerge cells in a range | | `update` | Update values in a range | | `update-note` | Set or clear a cell note | | `validation` | Manage cell data validation rules | Run `gog sheets --help` for flags and `gog schema sheets --json` for the machine-readable contract. Do not guess command syntax.