Назад към всички

Spreadsheet

// Read, write, and analyze tabular data with schema memory, format preservation, and multi-platform support.

$ git log --oneline --stat
stars:1,933
forks:367
updated:March 4, 2026
SKILL.mdreadonly
SKILL.md Frontmatter
nameSpreadsheet
slugspreadsheet
version1.0.0
descriptionRead, write, and analyze tabular data with schema memory, format preservation, and multi-platform support.
metadata[object Object]

When to Use

User needs spreadsheet operations: reading data, writing cells, analyzing tables, generating reports, or tracking structured information across Google Sheets, Excel, or CSV files.

Architecture

Memory lives in ~/spreadsheet/. See memory-template.md for setup.

~/spreadsheet/
  memory.md           # Preferences, recent sheets, format rules
  projects/           # Per-project schemas and configs
    {name}.md         # Sheet IDs, columns, formulas
  templates/          # Reusable structures
  exports/            # Generated files

Quick Reference

TopicFile
Memory setupmemory-template.md
Google Sheets APIgoogle-sheets.md
Excel operationsexcel.md
CSV handlingcsv.md

Scope

This skill ONLY:

  • Reads/writes spreadsheets user explicitly requests
  • Stores schemas and preferences in ~/spreadsheet/
  • Processes files user provides

This skill NEVER:

  • Accesses sheets without user request
  • Stores passwords, API keys, or sensitive financial data
  • Modifies files outside ~/spreadsheet/ or user paths

Data Storage

All data stored in ~/spreadsheet/. Create on first use:

mkdir -p ~/spreadsheet/{projects,templates,exports}

Self-Modification

This skill NEVER modifies its own SKILL.md. All user data stored in ~/spreadsheet/ only.

Core Rules

1. Schema First

On first access to any sheet:

  1. Document columns (name, type, sample)
  2. Save to projects/{name}.md
  3. Reference schema in future ops

2. Format Preservation

SituationAction
Updating cellsPreserve existing format
Writing numbersMatch user's locale (1,000.00 vs 1.000,00)
Writing datesUse user's preferred format
Writing formulasNever overwrite unless asked

3. Large Data Strategy

Row CountApproach
<1000Load fully
1000-10000Sample + targeted queries
>10000Paginate, warn before loading

4. Integration Priority

  1. Google Sheets - if API configured
  2. Excel (.xlsx) - local files, use openpyxl
  3. CSV - universal fallback

5. Memory Updates

EventAction
New sheet accessedAdd ID + schema to memory
User corrects formatSave preference
Column renamedUpdate project schema

Common Traps

  • Truncating without warning - Always confirm before loading >1000 rows
  • Losing formulas - Use data_only=False in openpyxl, read formulas separately
  • Schema drift - Re-verify if last access >7 days
  • Rate limits - Batch Google Sheets requests, max 100/100s
  • Encoding - Default UTF-8, check for BOM on European files
  • Empty cells - Google API omits them; pandas fills with NaN