gsheets

SKILL.md

Google Sheets Skill

Create, read, write, and manage Google Sheets spreadsheets.

First-Time Setup

Run npx tsx ${CLAUDE_PLUGIN_ROOT}/skills/gmail/scripts/gmail.ts auth to authenticate with Google. This opens a browser for OAuth consent and grants access to all Google services including Sheets.

Tokens are stored per-project in .claude/google-skill.local.json.

Using Your Own Credentials (Optional)

By default, this skill uses embedded OAuth credentials. To use your own Google Cloud project instead, save your credentials to ~/.config/google-skill/credentials.json.

Commands

# List your spreadsheets
npx tsx ${CLAUDE_PLUGIN_ROOT}/skills/gsheets/scripts/gsheets.ts list
npx tsx ${CLAUDE_PLUGIN_ROOT}/skills/gsheets/scripts/gsheets.ts list --max=50

# Get spreadsheet metadata (title, sheets, etc.)
npx tsx ${CLAUDE_PLUGIN_ROOT}/skills/gsheets/scripts/gsheets.ts get <spreadsheetId>

# Read cell values (A1 notation)
npx tsx ${CLAUDE_PLUGIN_ROOT}/skills/gsheets/scripts/gsheets.ts read <spreadsheetId> "Sheet1!A1:D10"

# Write values to cells
npx tsx ${CLAUDE_PLUGIN_ROOT}/skills/gsheets/scripts/gsheets.ts write <spreadsheetId> "Sheet1!A1" \
  --values='[["Hello","World"],["Row 2","Data"]]'

# Append rows to end of sheet
npx tsx ${CLAUDE_PLUGIN_ROOT}/skills/gsheets/scripts/gsheets.ts append <spreadsheetId> "Sheet1!A:D" \
  --values='[["New","Row","Data"]]'

# Clear a range
npx tsx ${CLAUDE_PLUGIN_ROOT}/skills/gsheets/scripts/gsheets.ts clear <spreadsheetId> "Sheet1!A1:D10"

# Create new spreadsheet
npx tsx ${CLAUDE_PLUGIN_ROOT}/skills/gsheets/scripts/gsheets.ts create --title="My Spreadsheet"
npx tsx ${CLAUDE_PLUGIN_ROOT}/skills/gsheets/scripts/gsheets.ts create --title="Project Data" --sheets="Q1,Q2,Q3,Q4"

# Add new sheet/tab to existing spreadsheet
npx tsx ${CLAUDE_PLUGIN_ROOT}/skills/gsheets/scripts/gsheets.ts add-sheet <spreadsheetId> --title="New Tab"

A1 Notation Reference

Notation Meaning
Sheet1!A1 Single cell A1 in Sheet1
Sheet1!A1:D10 Range from A1 to D10
Sheet1!A:D Columns A through D (all rows)
Sheet1!1:10 Rows 1 through 10 (all columns)
A1:D10 Range in first sheet

Values Format

Values are JSON arrays of arrays:

[
  ["Header 1", "Header 2", "Header 3"],
  ["Row 1", 123, true],
  ["Row 2", 456, false]
]

Supported value types: strings, numbers, booleans, null (empty cell).

Output

All commands return JSON with success and data fields.

Help

npx tsx ${CLAUDE_PLUGIN_ROOT}/skills/gsheets/scripts/gsheets.ts --help
Weekly Installs
5
GitHub Stars
2
First Seen
Feb 3, 2026
Installed on
opencode5
claude-code4
openclaw3
replit3
codex3
gemini-cli3