google-sheets
Google Sheets Interaction Skill
Overview
This skill provides patterns and best practices for automating Google Sheets interactions through browser automation. Google Sheets is a canvas-based web app — standard DOM element references are often unreliable; prefer keyboard shortcuts and coordinate clicks.
Agent Workflow (Always Follow This Order)
- Orient — Take a screenshot. Confirm you're on the right tab/sheet. Identify existing data range.
- Plan — Decide what cells to read or write, in what order.
- Execute in small steps — One logical action at a time (one row, one format operation, etc.).
- Verify — Take a screenshot after each meaningful action to confirm the result before continuing.
- Recover if needed — If something looks wrong,
Cmd+Zimmediately before doing anything else.
1. Session Setup / Opening a Sheet
Starting from scratch:
- Navigate to
https://sheets.google.com - Click "Blank spreadsheet" to create new, or click an existing file
- After clicking, wait for the new tab — Sheets often opens in a new tab. Switch to it before proceeding.
Opening an existing file:
- Navigate to
https://drive.google.com, search for the file, and open it - Or navigate directly via a known URL
Before acting on any sheet:
- Take a screenshot to confirm the sheet is loaded (look for the grid and toolbar)
- Confirm which sheet tab is active (bottom of screen)
- Use
Cmd+Hometo go to A1 and orient yourself
2. Reading / Understanding Existing Data
Before writing anything, read what's already there:
- Screenshot first — Get a visual overview of the data layout
browser_get_text— Extracts cell text content; useful for reading values without clickingCmd+End— Jumps to the last cell with data; tells you the extent of the datasetCmd+Home— Returns to A1
To read a specific cell's value: Click the cell and read the formula bar (visible in screenshot), or use browser_get_text and parse the result.
3. Navigation & Cell Selection
DO NOT type cell references into the Name Box — it often enters text into cells instead of navigating.
Preferred navigation methods:
| Goal | Method |
|---|---|
| Go to A1 | Cmd+Home |
| Go to start of row | Home |
| Go to last data cell | Cmd+End |
| Move right | Tab |
| Move down | Enter |
| Move by one cell | Arrow keys |
| Select entire row | Click the row number on the left (e.g., "2") |
| Select entire column | Click the column letter at top (e.g., "A") |
| Select a range | Click start cell, then Shift+click end cell |
| Select column range (for resize) | Click first column letter, Shift+click last |
Confirming current cell location:
- Take a screenshot and look at the Name Box (top-left, shows current cell address like "A1")
- Look at the formula bar (top center) which shows the selected cell's content
- The selected cell has a blue/green border — visible in screenshots
4. Data Entry
Basic pattern for tabular data:
1. Click on the starting cell (e.g., A1)
2. Type value → Tab (moves right)
3. Type value → Tab → Tab → ...
4. At end of row: press Enter (moves to next row, returns to column where you started)
5. Press Home to ensure you're at column A
6. Repeat
Entering a single value:
1. Click the target cell
2. Type the value
3. Press Enter or Tab to confirm (don't leave it unconfirmed)
Pasting multi-line data:
- Prepare data as tab-separated text (TSV)
- Click the target starting cell
- Paste with
Cmd+V - Verify result with a screenshot
Avoid:
- Typing tab characters inside a string to separate columns — they won't work as cell separators
- Leaving a cell in edit mode (blinking cursor) before navigating away — always confirm with Enter or Tab
5. Formulas
Entering a formula:
1. Click target cell
2. Type = followed by the formula (e.g., =SUM(A1:A10))
3. Press Enter to confirm
Common formulas:
| Formula | Purpose |
|---|---|
=SUM(A1:A10) |
Sum a range |
=AVERAGE(B2:B20) |
Average |
=COUNT(C2:C100) |
Count non-empty cells |
=IF(A1>10,"Yes","No") |
Conditional |
=VLOOKUP(key,range,col,0) |
Lookup |
=A1&" "&B1 |
Concatenate cells |
=TODAY() |
Today's date |
Copying a formula down a column:
1. Click the cell with the formula
2. Press Cmd+C to copy
3. Select the range below (click first cell, Shift+click last)
4. Press Cmd+V to paste
Or: click the cell, then double-click the small blue square in the cell's bottom-right corner (auto-fill handle) — this fills down to match adjacent data.
6. Formatting
Bold / Italic / Underline:
1. Select cell(s) or row (click row number)
2. Cmd+B (bold), Cmd+I (italic), Cmd+U (underline)
Header row formatting (recommended pattern):
1. Click the row number to select the entire row
2. Cmd+B for bold
3. Click the Fill Color button (paint bucket in toolbar) → choose a color
4. View > Freeze > 1 row (so header stays visible when scrolling)
Number formatting:
Format > Number > choose format (Currency, Percent, Date, etc.)
Text wrapping:
Format > Wrapping > Wrap (or Overflow / Clip)
Column width auto-fit:
1. Click first column letter, Shift+click last column letter to select range
2. Right-click on any selected column header
3. "Resize columns A - X"
4. Choose "Fit to data" → OK
7. Sheet Tabs (Multiple Sheets)
Sheet tabs appear at the bottom of the screen.
| Action | Method |
|---|---|
| Switch to a sheet | Click its tab at the bottom |
| Add a new sheet | Click the + button at the bottom left |
| Rename a sheet | Double-click the tab, type new name, Enter |
| Duplicate a sheet | Right-click the tab → "Duplicate" |
| Delete a sheet | Right-click the tab → "Delete" |
Always confirm which sheet tab is active before reading or writing data.
8. Menus Reference
| Menu | Useful For |
|---|---|
| View > Freeze | Freeze rows/columns |
| Format > Number | Number/date formatting |
| Format > Wrapping | Text wrap in cells |
| Data > Sort range | Sort by column |
| Data > Filter | Add filter dropdowns |
| Data > Split text to columns | Split delimited text |
| Insert > Row / Column | Insert rows or columns |
9. Common Keyboard Shortcuts
| Action | Shortcut |
|---|---|
| Bold | Cmd+B |
| Italic | Cmd+I |
| Undo | Cmd+Z |
| Redo | Cmd+Shift+Z |
| Select All | Cmd+A |
| Copy | Cmd+C |
| Paste | Cmd+V |
| Go to A1 | Cmd+Home |
| Go to last data cell | Cmd+End |
| Go to start of row | Home |
| Move right | Tab |
| Move down | Enter |
| Delete cell contents | Delete |
| Find & Replace | Cmd+H |
| Insert row above | Cmd+Option+Shift+= (with row selected) |
10. Error Recovery
Something went wrong — act immediately:
Cmd+Z— Undo the last action (do this before anything else)- Take a screenshot to assess current state
- Re-orient:
Cmd+Hometo go to A1 - Re-read the data before retrying
Common problems and fixes:
| Problem | Fix |
|---|---|
| Text entered into wrong cell | Cmd+Z, then navigate correctly and re-enter |
Formula shows as text (starts with = but not computing) |
Click cell, press F2 to edit, confirm cell is not formatted as plain text |
| Dialog appeared unexpectedly | Screenshot to read it, then press Escape or respond appropriately |
| Sheet opened in new browser tab | Use browser_tabs / tabs tool to switch to the new tab |
| Cell stuck in edit mode | Press Escape to cancel edit, or Enter to confirm |
11. Saving
Google Sheets auto-saves continuously. You do not need to manually save.
- Watch for "Saving..." → "All changes saved" in the top bar to confirm
- If you see a "Save" prompt, the file may be a non-Google format (e.g., .xlsx) — click Save to keep changes
12. Browser Automation Tips
- Google Sheets is a canvas app — DOM element references (
ref_id) often don't work for cells. Use coordinate clicks instead. - Always screenshot before and after significant actions
- Use keyboard shortcuts over toolbar button clicks whenever possible — more reliable
- Toolbar buttons can be clicked by coordinate if needed; take a screenshot to locate them first
- Name Box (top-left showing cell address): Read it in screenshots to confirm position, but don't type into it for navigation
- After creating a new sheet, wait for the new browser tab to open, then switch to it before interacting
More from accomplish-ai/accomplish
safe-file-deletion
Enforces explicit user permission before any file deletion. Activates when you're about to use rm, unlink, fs.rm, or any operation that removes files from disk. MUST be followed for all delete operations.
16code-review
Review code for bugs, security issues, performance problems, and best practices. Provide actionable feedback.
15ask-user-question
Ask users questions via the UI. Use when you need clarification, user preferences, or confirmation before proceeding. The user CANNOT see CLI output - this tool is the ONLY way to communicate with them.
15google-workspace
Interact with Google Workspace - create documents, spreadsheets, send emails via Gmail, and manage Google Drive files.
11web-research
Research topics on the web, gather information from multiple sources, and summarize findings.
7download-file
Download files in Chrome on Windows and macOS. Handles triggering downloads, detecting and resolving popups, verifying completion, and locating files.
5