Kimi XLSX
thvroyal/kimi-skills
Specialized utility for advanced manipulation, analysis, and creation of spreadsheet files, including (but not limited to) XLSX, XLSM, CSV formats.
Inspects, edits in place or creates Microsoft Excel .xlsx workbooks with openpyxl, treating each cell as a typed number, string, datetime or formula value.
$ npx skills add TokenRhythm/opensquilla --skill xlsx -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install TokenRhythm/opensquilla xlsx --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/TokenRhythm/opensquilla.git skills-src && mkdir -p .claude/skills && cp -r skills-src/src/opensquilla/skills/bundled/xlsx .claude/skills/xlsx && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "xlsx" agent skill from https://github.com/TokenRhythm/opensquilla/tree/main/src/opensquilla/skills/bundled/xlsx into .claude/skills/xlsx/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "xlsx", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/TokenRhythm/opensquilla/tree/main/src/opensquilla/skills/bundled/xlsxType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add TokenRhythm/opensquilla --skill xlsx -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install TokenRhythm/opensquilla xlsx --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/TokenRhythm/opensquilla.git skills-src && mkdir -p .agents/skills && cp -r skills-src/src/opensquilla/skills/bundled/xlsx .agents/skills/xlsx && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "xlsx" agent skill from https://github.com/TokenRhythm/opensquilla/tree/main/src/opensquilla/skills/bundled/xlsx into .agents/skills/xlsx/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "xlsx", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add TokenRhythm/opensquilla --skill xlsx -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install TokenRhythm/opensquilla xlsx --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/TokenRhythm/opensquilla.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/src/opensquilla/skills/bundled/xlsx .cursor/skills/xlsx && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "xlsx" agent skill from https://github.com/TokenRhythm/opensquilla/tree/main/src/opensquilla/skills/bundled/xlsx into .cursor/skills/xlsx/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "xlsx", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/TokenRhythm/opensquilla.git --path src/opensquilla/skills/bundled/xlsx--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add TokenRhythm/opensquilla --skill xlsx -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install TokenRhythm/opensquilla xlsx --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/TokenRhythm/opensquilla.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/src/opensquilla/skills/bundled/xlsx .gemini/skills/xlsx && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "xlsx" agent skill from https://github.com/TokenRhythm/opensquilla/tree/main/src/opensquilla/skills/bundled/xlsx into .gemini/skills/xlsx/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "xlsx", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install TokenRhythm/opensquilla xlsxInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add TokenRhythm/opensquilla --skill xlsx -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/TokenRhythm/opensquilla.git skills-src && mkdir -p .github/skills && cp -r skills-src/src/opensquilla/skills/bundled/xlsx .github/skills/xlsx && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "xlsx" agent skill from https://github.com/TokenRhythm/opensquilla/tree/main/src/opensquilla/skills/bundled/xlsx into .github/skills/xlsx/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "xlsx", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add TokenRhythm/opensquilla --skill xlsx -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install TokenRhythm/opensquilla xlsx --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/TokenRhythm/opensquilla.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/src/opensquilla/skills/bundled/xlsx .opencode/skills/xlsx && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "xlsx" agent skill from https://github.com/TokenRhythm/opensquilla/tree/main/src/opensquilla/skills/bundled/xlsx into .opencode/skills/xlsx/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "xlsx", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
xlsxInspects, edits in place or creates Microsoft Excel .xlsx workbooks with openpyxl, treating each cell as a typed number, string, datetime or formula value.
The skill picks one of three paths based on what you have: inspecting an existing workbook's sheets and cells, editing specific cells in place, or building a new workbook from scratch or a brief; when the user supplies a workbook to update, the existing file's formatting is treated as the baseline by default, and a fresh build is only chosen if the user explicitly says to start fresh. Inspection reads with openpyxl's load_workbook and a bundled script, returning each cell's type using openpyxl's letter codes for number, string, datetime, formula, bool, error or inline string, with a data-only flag switching from the literal formula text to its cached computed result.
Editing in place loads the workbook, sets specific cells such as a formula string, and can also run through a bundled script driven by a JSON list of operations, with rows and columns addressed in Excel's 1-based convention. The skill runs its Python examples through a code-execution tool when available, keeping input and output files in the active workspace and publishing the finished workbook as an artifact; in a restricted channel without that tool it falls back to openpyxl directly rather than trying to bypass a missing shell.
Read from SKILL.md and the folder at commit 4494195. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 3 files in scripts/ (Python), which the agent can run.
Shell commands in SKILL.md call:
pythonFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Excel Workbook Editor loads about 1.6k tokens when it runs, and up to ~2.6k if it reads all its reference files. Until then it costs about 42 tokens; SKILL.md has 528 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from TokenRhythm/opensquilla at commit 4494195, republished under its Apache-2.0 licence (© TokenRhythm). 528 words, ~1,608 tokens.
.claude/skills/xlsx/SKILL.md (or your agent's skills folder). This skill also uses 5 other files; get the full folder from GitHub.Work with .xlsx workbooks. The format is OOXML SpreadsheetML — a zip
container of XML parts. Treat each cell as a typed value: a number, a string,
a datetime, or a formula. Mixing the four causes Excel to flag the workbook
or compute incorrect totals.
| You have | Goal | Path |
|---|---|---|
Existing .xlsx | Read sheets and cells | A. Inspect |
Existing .xlsx | Modify specific cells | B. Edit-in-place |
| Nothing or a brief | Build a new workbook | C. Create from scratch |
If the user provides a workbook to update, default to path B and treat the input as the formatting baseline. Choose path C only when the user says "start fresh".
Use execute_code with the Python examples below when it is available. Keep
all input and output files in the active workspace, then call
publish_artifact(path="out.xlsx") to deliver the finished workbook.
In a restricted channel, use openpyxl directly; the shell commands below
are optional shortcuts for sessions that expose exec_command. Do not use
Python subprocesses to bypass an unavailable shell tool or request host
execution when the sandbox fails. If execution or a required library is
unavailable, report that limitation and keep the session read-only.
With execute_code:
from openpyxl import load_workbook
wb = load_workbook("book.xlsx", data_only=False)
for ws in wb.worksheets:
print(ws.title, list(ws.values))
wb.close()python {baseDir}/scripts/inspect_xlsx.py /path/to/book.xlsxOutput:
{
"sheets": [
{
"name": "Q3",
"max_row": 10,
"max_col": 5,
"rows": [
[
{"value": "Metric", "type": "s"},
{"value": "Value", "type": "s"}
],
[
{"value": "Revenue", "type": "s"},
{"value": 2100000, "type": "n"}
]
]
}
]
}type follows openpyxl conventions: n (number), s (string), d
(datetime), f (formula), b (bool), e (error), inlineStr (inline
string). The helper script reads with data_only=False so formula expressions
are returned literally; pass --data-only to get the cached computed result
instead.
With execute_code:
from openpyxl import load_workbook
wb = load_workbook("book.xlsx")
wb["Q3"]["B2"] = "=SUM(B3:B10)"
wb.save("edited.xlsx")
wb.close()python {baseDir}/scripts/edit_xlsx.py book.xlsx ops.json --out edited.xlsxops.json:
[
{"op": "set_cell", "sheet": "Q3", "row": 2, "col": 2, "value": "=SUM(B3:B10)"},
{"op": "set_cell", "sheet": "Q3", "row": 5, "col": 1, "value": "Net margin"},
{"op": "rename_sheet", "old": "Sheet1", "new": "Summary"}
]Rules:
= are written as formulas (cell.value = "=..."),
matching openpyxl behavior. To write a literal =hello use '=hello
(Excel's leading-apostrophe escape) or pass an explicit as_text: true."2026-05-06T09:00:00"); the helper
parses them back to datetime objects so Excel renders the cell with date
format.python {baseDir}/scripts/create_xlsx.py spec.json --out out.xlsxSpec:
{
"sheets": [
{
"name": "Sales",
"rows": [
["Region", "Revenue", "Growth"],
["NA", 1200000, "=B2/SUM($B$2:$B$4)"],
["EU", 850000, "=B3/SUM($B$2:$B$4)"]
],
"merged": [{"range": "A1:C1"}],
"freeze": "A2"
}
]
}For programmatic use:
from openpyxl import Workbook
wb = Workbook()
ws = wb.active
ws.title = "Sales"
ws.append(["Region", "Revenue"])
ws.append(["NA", 1_200_000])
ws["C2"] = "=B2*1.05" # formula
ws.merge_cells("A1:B1")
ws.freeze_panes = "A2"
wb.save("out.xlsx")See references/openpyxl.md for styles, conditional formatting, charts, and formula references.
| Symptom | Cause | Fix |
|---|---|---|
Cell shows =SUM(...) as text, not the result | Wrote the string with as_text: true or workbook lacks cached values | Open in Excel and save once; or use a calc engine |
| Date renders as a serial number (45000) | Wrote int instead of datetime | Pass an ISO string and let the helper parse; or set cell.number_format |
| Merged range loses borders | Borders apply to the top-left cell only after merge | Apply border to the top-left cell post-merge |
| Workbook breaks Excel after edit | Removed a defined name without updating dependent formulas | Audit defined_names before delete |
| Pivot tables disappear | openpyxl drops pivot caches on save | Edit pivots in Excel; programmatic edit is not supported |
.xlsx (OOXML SpreadsheetML). It does not handle
.xls (legacy binary), .xlsm (macro-enabled), or Google Sheets. Convert
via Excel or LibreOffice export first.to_excel with the xlsxwriter engine; openpyxl loads the whole workbook
into memory.© TokenRhythm, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 5 other files (scripts, references) in src/opensquilla/skills/bundled/xlsx of TokenRhythm/opensquilla.
Open the folder on GitHubat commit 4494195
Excel Workbook Editor next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Excel Workbook Editor this skillTokenRhythm/opensquilla | 7.1k | — | ~1.6k | Automated safety check: Pass | Apache-2.0 | |
| Kimi XLSXthvroyal/kimi-skills | 238 | — | ~9.5k | Automated safety check: Pass | None | |
| Office XLSXopen-octo/octo-agent | 125 | — | ~1.8k | Automated safety check: Notes | MIT | |
| Cc Streaming Export Safetydoccker/cc-use-exp | 1.1k | — | ~2.2k | Automated safety check: Pass | Custom licence | |
| XLSXnexus-research-lab/nexus | 150 | — | ~501 | Automated safety check: Pass | Apache-2.0 | |
| Office XLSXsingula-ai/alego | 109 | 1 repos | ~2.3k | Automated safety check: Pass | MIT |
thvroyal/kimi-skills
Specialized utility for advanced manipulation, analysis, and creation of spreadsheet files, including (but not limited to) XLSX, XLSM, CSV formats.
open-octo/octo-agent
Create, read, and edit Excel (.xlsx) spreadsheets programmatically with openpyxl — cell values, formulas, styling (fonts/fills/borders/alignment/number formats), merged cells, multiple sheets…
doccker/cc-use-exp
当实现用户驱动的大文件导出或批量序列化(Excel/CSV/JSON/JSONL/PDF,数据量未知或超过 1 万行/10 MB)时触发;普通小文件下载、静态资源下载、非导出 Writer/Report 类不触发。防止 OOM、临时文件残留、同步导出阻塞 HTTP 线程和表格公式注入。
nexus-research-lab/nexus
只要电子表格文件(.xlsx、.xlsm、旧版 .xls、.csv、.tsv)是任务的主要输入或输出,或者需要 被打开、读取、创建、修改,就使用本 Skill。也适用于公式、格式、图表、数据清洗和表格格式转换。
singula-ai/alego
Read, create, and modify Excel workbooks (.xlsx), including data, formulas, formatting, and pandas analysis.
theexperiencecompany/gaia
Generate an Excel (.xlsx) workbook or a CSV file — tables, financial models, data exports, formatted reports with charts.
TokenRhythm/opensquilla
Runs multi-round research in three stages with a persisted state file, evidence tracking and a long-form report with per-claim citations.
TokenRhythm/opensquilla
Deterministic PDF operations through bundled scripts: extract text and tables, merge files or page ranges, split by range, fill form fields and build PDFs from data.
TokenRhythm/opensquilla
Inspects, edits in place or creates Word .docx files with bundled Python scripts, keeping existing styles intact when content changes.
TokenRhythm/opensquilla
Guides semantic, accessible HTML work: pages, forms, media and HTML5 APIs, plus how to deliver a runnable webpage project with a preview.
TokenRhythm/opensquilla
Reads, edits in place, or creates PowerPoint .pptx decks, picking one of three paths based on what tools and files are available.
TokenRhythm/opensquilla
Hands a self-contained coding task to Codex, Claude Code, OpenCode or Pi as a non-interactive background process, using OpenSquilla's exec_command and process tools.
Works with
Categories
Inspects, edits in place or creates Microsoft Excel .xlsx workbooks with openpyxl, treating each cell as a typed number, string, datetime or formula value. The skill picks one of three paths based on what you have: inspecting an existing workbook's sheets and cells, editing specific cells in place, or building a new workbook from scratch or a brief; when the user supplies a workbook to update, the existing file's formatting is treated as the baseline by default, and a fresh build is only chosen if the user explicitly says to start fresh. Inspection reads with openpyxl's load_workbook and a bundled script, returning each cell's type using openpyxl's letter codes for number, string, datetime, formula, bool, error or inline string, with a data-only flag switching from the literal formula text to its cached computed result.
Excel Workbook Editor fits situations like: reading the sheets and cell values out of an existing .xlsx file; editing specific cells or formulas in an existing workbook; building a new Excel workbook from scratch or from a data brief.
Run `npx skills add TokenRhythm/opensquilla --skill xlsx -a claude-code`. Or copy the skill folder (src/opensquilla/skills/bundled/xlsx in TokenRhythm/opensquilla) into .claude/skills/xlsx in your project. Claude Code loads it when a task matches its description.
Run `npx skills add TokenRhythm/opensquilla --skill xlsx -a codex`. Or copy the skill folder (src/opensquilla/skills/bundled/xlsx in TokenRhythm/opensquilla) into .agents/skills/xlsx in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add TokenRhythm/opensquilla --skill xlsx -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/xlsx, .gemini/skills/xlsx, .github/skills/xlsx and .opencode/skills/xlsx in your project.
Going by SKILL.md and its folder, Excel Workbook Editor needs Python for the scripts in its folder and the command-line tools its instructions call (python). Our summary lists: Python with openpyxl.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Excel Workbook Editor is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.6k tokens (SKILL.md is roughly 6.4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 1k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Excel Workbook Editor: Kimi XLSX (thvroyal/kimi-skills, 238 stars), Office XLSX (open-octo/octo-agent, 125 stars), Cc Streaming Export Safety (doccker/cc-use-exp, 1.1k stars) and XLSX (nexus-research-lab/nexus, 150 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
TokenRhythm (a GitHub organization) maintains it in TokenRhythm/opensquilla, which has 7,087 GitHub stars. The repository holds 8 skills in this directory. The repository was last updated on October 4, 2026.
Source: TokenRhythm/opensquilla on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.