← General Office · Documents & Spreadsheets
xlsx-author
Vendor officialLow riskBy anthropicsLicense: Apache-2.0★ 41,232
Produce a .xlsx file on disk (headless) instead of driving a live Excel workbook — for managed-agent sessions with no open Office app.
Use in Claude.ai (no code)
Download xlsx-author.zip- In Claude.ai, open Settings → Capabilities → Skills
- Choose “Upload skill” and pick the zip you downloaded
- Turn it on, then describe your task in a chat. Claude uses the skill when it fits
Use in Claude Code and other agents
Claude Code plugin
/plugin marketplace add anthropics/financial-services/plugin install earnings-reviewer@claude-for-financial-servicesskills CLI (installs every skill in the repository)
npx skills add anthropics/financial-servicesManual: Copy the plugins/agent-plugins/earnings-reviewer/skills/xlsx-author folder to ~/.claude/skills/xlsx-author/
Safety scan report
Executable scripts: noneSuspicious patterns: 0Files: 1Content hash: 85b5b76901a7
The scan is static pattern matching. It catches common problems and is not a guarantee of safety. Read the source before installing a skill that ships scripts.
Source
anthropics/financial-services/plugins/agent-plugins/earnings-reviewer/skills/xlsx-authorcommit 6056506In plugins: earnings-reviewer, gl-reconciler, kyc-screener, model-builder, month-end-closer, pitch-agent, statement-auditor, valuation-reviewer, financial-analysis
Files (1)
- SKILL.md
SKILL.md
# xlsx-author
Use this skill when running **headless** (managed-agent / CMA mode) and you need to deliver an Excel workbook as a **file artifact** rather than editing a live workbook via `mcp__office__excel_*`.
## Output contract
- Write to `./out/<name>.xlsx`. Create `./out/` if it does not exist.
- Return the relative path in your final message so the orchestration layer can collect it.
## How to build the workbook
Write a short Python script and run it with Bash. Use `openpyxl`:
```python
from openpyxl import Workbook
from openpyxl.styles import Font, PatternFill
wb = Workbook()
ws = wb.active; ws.title = "Inputs"
ws["B2"] = "Revenue"; ws["C2"] = 1_250_000_000
ws["C2"].font = Font(color="0000FF") # blue = hardcoded input
calc = wb.create_sheet("DCF")
calc["C5"] = "=Inputs!C2*(1+Inputs!C3)" # black = formula
wb.save("./out/model.xlsx")
```
## Conventions (mirror `audit-xls`)
- **Blue / black / green.** Blue = hardcoded input, black = formula, green = link to another sheet/file.
- **No hardcodes in calc cells.** Every calculation cell is a formula; every input lives on an Inputs tab.
- **Named ranges** for any value referenced from a deck or memo.
- **Balance checks.** Include a Checks tab that ties (BS balances, CF ties to cash, etc.) and surfaces TRUE/FALSE.
- **One model per file.** Do not append to an existing workbook unless explicitly asked.
## When NOT to use
If `mcp__office__excel_*` tools are available (Cowork plugin mode), use those instead — they drive the user's live workbook with review checkpoints. This skill is the file-producing fallback for headless runs.