xlsx

xlsx is a skill for Claude Code, Codex from CODE-SAURABH/OpenSkills. It costs 113 tokens per session (3,677 once invoked), scanned A, original, MIT.

A skill for working with spreadsheet files such as Excel workbooks, CSV files, and tab-separated files, including their data, formulas, formatting, and charts.

In plain words
What is it for?
Use it to create, read, edit, clean, analyse, format, or convert spreadsheet files and to build formula-based models or charts.
Why use it?
It helps automate spreadsheet work while checking for formula errors and keeping calculated results updateable when inputs change.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one.

Needs its repository: it runs a file that does not travel with it, so clone the repository first. The line is python scripts/recalc.py output.xlsx.

Good fit Use it to create, read, edit, clean, analyse, format, or convert spreadsheet files and to build formula-based models or charts.

Compare 6 skills from other repositories ↓
Install

Getting it into your agent

It runs from inside its repository, so the clone comes first — what it calls does not travel with the file alone.

Clone the repo
git clone --depth 1 https://github.com/CODE-SAURABH/OpenSkills
agentmods
npx agentmods add skills/code-saurabh/openskills/xlsx

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for xlsx

README.md
[![agentmods](https://agentmods.dev/badge/skills/code-saurabh/openskills/xlsx/github.svg)](https://agentmods.dev/skills/code-saurabh/openskills/xlsx)
Your own site
<a href="https://agentmods.dev/skills/code-saurabh/openskills/xlsx"><img src="https://agentmods.dev/badge/skills/code-saurabh/openskills/xlsx/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for xlsx

Your own site · 80×15
<a href="https://agentmods.dev/skills/code-saurabh/openskills/xlsx"><img src="https://agentmods.dev/badge/skills/code-saurabh/openskills/xlsx.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 113 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 3,677 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 1 finding. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00113 $0.03677
Opus 5.5 $0.00045 $0.01471
Sonnet 5.5 $0.00023 $0.00735
Haiku 4.5 $0.00011 $0.00368

Measured 1mo ago against content hash 31fb339076b3, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

xlsx scanned grade A with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Runs shell commandslowCapability

Expected in a hook, worth knowing in a rule or an instructions file.

result = subprocess.run(["markitdown", "file.xlsx"], capture_output=True, text=True)
xlsx/SKILL.md · 365 lines

How it starts

The opening of the file, as written. The whole thing — 365 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Excel / XLSX Spreadsheets

A .xlsx file is a ZIP archive of XML. Work with it programmatically using openpyxl (formulas + formatting) or pandas (bulk data). Choose the right tool for the job and apply it precisely.

Task Tool
Create or edit with formulas and formatting openpyxl
Bulk data in/out, pivot analysis pandas (read_excel, to_excel)
Quick read of content markitdown file.xlsx
Reading both formulas AND cached values Two load_workbook passes — see gotchas

openpyxl, pandas, and markitdown are typically pre-installed. Import directly. Only run pip install if an import fails.


Non-Negotiable Standards

Every spreadsheet delivered must meet these standards:

  • Professional font throughout. Arial or Calibri for data, Times New Roman for formal reports. No default Calibri 11 unless that is the existing convention.
  • Zero formula errors. Never ship while recalc shows errors. A #DIV/0!, #REF!, or #NAME? in a delivered file is a failure.
  • Use formulas, not hardcoded results. Write =SUM(B2:B9), not the Python-computed value. The sheet must recalculate when inputs change.
  • Follow the user's spec literally. Exact tab names, exact column headers, exact formula logic. Never redesign what was asked.
  • Document every assumption. Hardcoded numbers need a cell comment or adjacent label with the source. "Source: Company 10-K, FY2024, Page 45" is correct. Unexplained magic numbers are not.
  • Input cells need a legend. If you create a template for someone to fill in, add a legend naming which cells to edit and include one example row showing expected format.
  • Editing existing files: match conventions exactly. Find the designated input cells (usually distinguished by font color or fill). Write only there. Leave all existing formulas untouched.

Reading a Spreadsheet

import subprocess

# Quick content read (no cell coordinates — use for overview only)
result = subprocess.run(["markitdown", "file.xlsx"], capture_output=True, text=True)
print(result.stdout)

# Read into pandas (values only, no formulas)
import pandas as pd
df = pd.read_excel("file.xlsx", sheet_name="Sheet1")
print(df.head())
print(df.dtypes)

# Read formulas (openpyxl — formulas as strings, no cached values)
import openpyxl
wb = openpyxl.load_workbook("file.xlsx")
ws = wb["Sheet1"]
print(ws["B10"].value)  # prints the formula string e.g. "=SUM(B2:B9)"

# Read cached values (openpyxl data_only — values only, no formulas)
# WARNING: data_only=True is destructive if you save — loses all formulas
wb_vals = openpyxl.load_workbook("file.xlsx", data_only=True)
ws_vals = wb_vals["Sheet1"]
print(ws_vals["B10"].value)  # prints the last-saved calculated value

Read the full file on GitHub · 365 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 1mo ago First seen · 365 lines · 113 tokens per session scan A 31fb339076b3

Subscribe to this mod's changes

xlsx is a skill published in the GitHub repository CODE-SAURABH/OpenSkills (3 stars, last pushed 2mo ago), licensed MIT. It adds 113 tokens to every session and 3,677 once invoked, about $0.0005 per session on Opus 5.5. A static security scan graded it A with 1 finding (runs shell commands). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

fill-template

Use when the user wants to "fill in this letter for each person", "mail merge", "generate letters for this list", "turn this filled letter into a template", or hands over a template plus a list. Bulk-fills ONE master template — a Word (.docx) letter/form or an Excel (.xlsx) form — from a data table, one filled file…

moonlight-lupin/agent-skills · 235 tokens

people-enrichment

Use when the user has a list of names or companies and wants their job, employer, work history, LinkedIn URLs or company profiles looked up, or wants to find people or companies matching criteria — trigger on phrases like "enrich these contacts", "find their LinkedIn", "look up these people", "who works at X", "find…

moonlight-lupin/agent-skills · 203 tokens

spreadsheet-analysis

Inspect, profile, clean, reconcile, analyze, visualize, and verify spreadsheet data while preserving formulas, formatting, types, and source files. Use when working with .xlsx, .xlsm, .xls, .ods, .csv, or .tsv files; answering questions from a workbook; auditing formulas or data quality; comparing sheets or versions…

seb1n/awesome-ai-agent-skills · 102 tokens

format-data-to-copy-paste-tables

Convert unstructured text, emails, or receipts into consistent CSV or TSV rows for a spreadsheet.

alivirgo/Major-AI-Skills · 28 tokens

income-tax-hometax

A Korean workflow for comprehensive income-tax filing through Hometax, South Korea's online tax service. It covers income checks, expense methods, deductions, spreadsheet reconciliation, and final review before submission.

lbiz-partners/hometax-doum · 108 tokens

receipt-classify-kr

A tool for classifying receipts, card payments, and cash expenses for businesses in South Korea. It suggests accounting categories and identifies possible VAT and income-tax treatment.

lbiz-partners/hometax-doum · 99 tokens