Skip to content
Back to skills

Office Xlsx

ASecurity

Use when the user asks to create, inspect, verify, analyze, format, or deliver Excel `.xlsx` workbooks, Google Sheets-targeted spreadsheet artifacts, trackers, budgets, models, tables, dashboards, formulas, CSV/TSV-to-XLSX conversions, or spreadsheet-ready data packs.

  • 1,741 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added August 31, 2026
ai-agentspythongobash

Works with

  • cli

Security analysis

A100/100

Pro scans all 11 files and shows the line behind each finding

Scanned August 31, 2026

npx -y skills add shiwenwen/hope-agent --skill office-xlsx --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Office Xlsx?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Office Xlsx
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/shiwenwen-office-xlsx/badge)](https://www.skillsdirectory.com/skills/shiwenwen-office-xlsx)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: office-xlsx
description: "Use when the user asks to create, inspect, verify, analyze, format, or deliver Excel `.xlsx` workbooks, Google Sheets-targeted spreadsheet artifacts, trackers, budgets, models, tables, dashboards, formulas, CSV/TSV-to-XLSX conversions, or spreadsheet-ready data packs."
requires:
  bins: [python3]
install:
  - kind: brew
    formula: python
    bins: [python3]
    label: "Install Python 3 via Homebrew"
    os: [darwin]
allowed-tools:
  - read
  - write
  - edit
  - apply_patch
  - exec
  - ls
  - grep
  - pdf
  - web_search
  - web_fetch
  - send_attachment
---

# Office XLSX

Use the bundled scripts in this skill package to produce editable `.xlsx`
workbooks. The builder writes formulas, styles, bar/column/line/pie charts,
real Excel tables, data validation, conditional formatting, and workbook
recalculation hints. The skill activation metadata includes `Skill directory`;
treat that as `SKILL_DIR` and run scripts from `SKILL_DIR/scripts/`.

## Workbook Shape

For nontrivial workbooks, prefer:

1. Summary or dashboard sheet first.
2. Inputs / assumptions sheet next.
3. Detail or source data sheets after that.
4. Checks sheet only when formulas, reconciliations, or model integrity matter.

## Workflow

1. Normalize source data before writing the workbook.
2. Use formulas for derived values instead of hardcoded calculated outputs.
   Strings beginning with `=` are written as Excel formulas.
3. For structured workbook creation, create a JSON spec in the working
   directory and run:

```bash
python3 "$SKILL_DIR/scripts/check_env.py"
python3 "$SKILL_DIR/scripts/build_xlsx.py" --spec spec.json --out output.xlsx
python3 "$SKILL_DIR/scripts/inspect_xlsx.py" --verify output.xlsx
python3 "$SKILL_DIR/scripts/formula_audit.py" output.xlsx
```

4. For CSV/TSV conversion, run one or more inputs into one workbook:

```bash
python3 "$SKILL_DIR/scripts/csv_to_xlsx.py" --input data.csv --input lookup.tsv --sheet Data --sheet Lookup --out output.xlsx
python3 "$SKILL_DIR/scripts/inspect_xlsx.py" --verify output.xlsx
```

5. If visual QA matters and LibreOffice is available, run:

```bash
python3 "$SKILL_DIR/scripts/render_preview.py" output.xlsx
```

6. To patch an existing workbook without rebuilding it, create a patch JSON and
   run:

```bash
python3 "$SKILL_DIR/scripts/patch_xlsx.py" --input existing.xlsx --patch patch.json --out output.xlsx
python3 "$SKILL_DIR/scripts/inspect_xlsx.py" --verify output.xlsx
python3 "$SKILL_DIR/scripts/formula_audit.py" output.xlsx --write-cache cached-output.xlsx
```

Patch actions:

```json
{
  "actions": [
    {"action": "append_rows", "sheet": "Data", "rows": [["New", 123, "=B2*2"]]},
    {"action": "set_cell", "sheet": "Summary", "cell": "B2", "value": "=SUM(Data!B:B)"}
  ]
}
```

7. When formulas matter, use `formula_audit.py --write-cache` and deliver the
   cached workbook unless the audit reports unsupported formulas that require
   Excel/LibreOffice recalculation. For broad formula coverage, run:

```bash
python3 "$SKILL_DIR/scripts/recalculate_xlsx.py" output.xlsx --out recalculated.xlsx
python3 "$SKILL_DIR/scripts/inspect_xlsx.py" --verify recalculated.xlsx
```

8. Deliver the `.xlsx` path or attach it with `send_attachment`.

## Spec Shape

```json
{
  "title": "Workbook title",
  "sheets": [
    {
      "name": "Summary",
      "rows": [["Metric", "Value"], ["Revenue", 1200000], ["Margin", "=B2*0.42"]],
      "tables": [{"name": "SummaryTable", "ref": "A1:B3"}],
      "data_validations": [{"range": "A2:A10", "type": "list", "formula1": ["Revenue", "Margin"]}],
      "conditional_formats": [{"range": "B2:B10", "type": "colorScale"}],
      "charts": [
        {"type": "column", "title": "Summary", "categories": "$A$2:$A$3", "values": "$B$2:$B$3", "anchor": "D2"},
        {"type": "line", "title": "Trend", "categories": "$A$2:$A$3", "values": "$B$2:$B$3", "anchor": "D18"}
      ],
      "column_formats": ["text", "currency"],
      "column_widths": [24, 16],
      "freeze_top_row": true,
      "autofilter": true
    }
  ]
}
```

## Quality Bar

- Keep important values visible; avoid tiny columns and clipped headers.
- Use one workbook, not many disconnected CSV-like sheets, when relationships
  between tabs matter.
- Prefer real Excel tables, filters, validations, conditional formats, and
  charts when the workbook is meant to be used repeatedly.
- Keep formulas editable, audit formulas before delivery, and write cached
  values for supported formulas when possible. Supported audit functions include
  common arithmetic, comparisons, `SUM`, `AVERAGE`, `MIN`, `MAX`, `COUNT`,
  `MEDIAN`, `ROUND`, `ABS`, and simple `IF`.
- When patching an existing workbook, preserve unrelated package parts and rerun
  `inspect_xlsx.py` plus `formula_audit.py`; use `recalculate_xlsx.py` when the
  formula surface exceeds the bundled evaluator.
- If preview rendering fails because LibreOffice or a PDF-to-PNG renderer is
  missing, state exactly which verification passed; do not imply visual QA
  passed.

Files in this skill

  • SKILL.md4.9 KB
  • agents/openai.yaml294 B
  • scripts/build_xlsx.py24.6 KB
  • scripts/check_env.py1 KB
  • scripts/csv_to_xlsx.py2.5 KB
  • scripts/formula_audit.py12.3 KB
  • scripts/inspect_xlsx.py2.5 KB
  • scripts/patch_xlsx.py6.3 KB
  • scripts/recalculate_xlsx.py1.6 KB
  • scripts/render_pdf.py894 B
  • scripts/render_preview.py2.1 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.