Copy the command definition below into:
~/.claude/commands/gws-sheets-davila7.md---
allowed-tools: Bash, Read, Write, Edit
argument-hint: [resource] [method] [flags]
description: Google Sheets: Read and write spreadsheets.
---
# Google Workspace Sheets
Execute Google Workspace Sheets operations: $ARGUMENTS
## Prerequisites
- Google Workspace CLI (`gws`) must be installed
- Authentication configured: Run `gws auth status` to verify
- Review `gws sheets --help` for all available commands
## Available Resources and Methods
# sheets (v4)
> **PREREQUISITE:** Read `../gws-shared/SKILL.md` for auth, global flags, and security rules. If missing, run `gws generate-skills` to create it.
```bash
gws sheets <resource> <method> [flags]
```
## Helper Commands
| Command | Description |
|---------|-------------|
| [`+append`](../gws-sheets-append/SKILL.md) | Append a row to a spreadsheet |
| [`+read`](../gws-sheets-read/SKILL.md) | Read values from a spreadsheet |
## API Resources
### spreadsheets
- `batchUpdate` — Applies one or more updates to the spreadsheet. Each request is validated before being applied. If any request is not valid then the entire request will fail and nothing will be applied. Some requests have replies to give you some information about how they are applied. The replies will mirror the requests. For example, if you applied 4 updates and the 3rd one had a reply, then the response will have 2 empty replies, the actual reply, and another empty reply, in that order.
- `create` — Creates a spreadsheet, returning the newly created spreadsheet.
- `get` — Returns the spreadsheet at the given ID. The caller must specify the spreadsheet ID. By default, data within grids is not returned. You can include grid data in one of 2 ways: * Specify a [field mask](https://developers.google.com/workspace/sheets/api/guides/field-masks) listing your desired fields using the `fields` URL parameter in HTTP * Set the includeGridData URL parameter to true.
- `getByDataFilter` — Returns the spreadsheet at the given ID. The caller must specify the spreadsheet ID. For more information, see [Read, write, and search metadata](https://developers.google.com/workspace/sheets/api/guides/metadata). This method differs from GetSpreadsheet in that it allows selecting which subsets of spreadsheet data to return by specifying a dataFilters parameter. Multiple DataFilters can be specified.
- `developerMetadata` — Operations on the 'developerMetadata' resource
- `sheets` — Operations on the 'sheets' resource
- `values` — Operations on the 'values' resource
## Discovering Commands
Before calling any API method, inspect it:
```bash
# Browse resources and methods
gws sheets --help
# Inspect a method's required params, types, and defaults
gws schema sheets.<resource>.<method>
```
Use `gws schema` output to build your `--params` and `--json` flags.
## Usage
```bash
# List available resources and methods
gws sheets --help
# Inspect method schema before calling
gws schema sheets.<resource>.<method>
# Execute command with arguments
gws sheets $ARGUMENTS
```
## Task
Execute the requested Sheets operation: $ARGUMENTS
1. **Verify Prerequisites**
- Check `gws` is installed: `gws --version`
- Verify authentication: `gws auth status`
- Review available commands: `gws sheets --help`
2. **Inspect Method Schema**
- Before calling any method, inspect its parameters
- Use `gws schema` to understand required fields
- Review parameter types and constraints
3. **Execute Operation**
- Build command with appropriate flags
- Use `--params` for query/path parameters
- Use `--json` for request body
- Handle pagination with `--max-results` or `--page-token`
4. **Error Handling**
- Check command output for errors
- Review API quotas and rate limits
- Handle authentication issues
- Retry transient failures
---
**License**: Apache License 2.0
**Source**: [Google Workspace CLI](https://github.com/googleworkspace/cli)
**Original Skill**: `gws-sheets`