Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add full-stack-skills/java-skills --skill easyexcel-writegit clone --depth 1 https://github.com/full-stack-skills/java-skillsWrote 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.
[](https://agentmods.dev/skills/full-stack-skills/java-skills/easyexcel-write)<a href="https://agentmods.dev/skills/full-stack-skills/java-skills/easyexcel-write"><img src="https://agentmods.dev/badge/skills/full-stack-skills/java-skills/easyexcel-write/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.
<a href="https://agentmods.dev/skills/full-stack-skills/java-skills/easyexcel-write"><img src="https://agentmods.dev/badge/skills/full-stack-skills/java-skills/easyexcel-write.svg" alt="Reviewed on agentmods" width="80" height="20"></a>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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00254 | $0.02274 |
| Opus 5.5 | $0.00102 | $0.00910 |
| Sonnet 5.5 | $0.00051 | $0.00455 |
| Haiku 4.5 | $0.00025 | $0.00227 |
Grade A, and why
easyexcel-write scanned grade A with 0 findings 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.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 139 lines — stays where its author put it; the contents beside it link to each section on GitHub.
EasyExcel 数据写入(Write)
官方文档:https://easyexcel.opensource.alibaba.com/docs/current/quickstart/write 官方示例:https://github.com/alibaba/easyexcel/blob/master/easyexcel-test/src/test/java/com/alibaba/easyexcel/test/demo/write/WriteTest.java 当前版本:
com.alibaba:easyexcel:4.0.3(Apache-2.0,仓库已归档,仅做 Bug 修复)
本技能专注于 "程序化生成 Excel" 场景。当用户没有预制模板、要求用 Java 对象/Map 直接生成结构化 Excel(订单、用户、财务、库存、报表、对账单、审批单)时,应当使用本技能。
Capability Boundaries
✅ 强项
- 最简写入(JDK8+ 写法、传统写法、Builder 写法)
- 复杂表头(多级表头
@ExcelProperty({"主标题", "副标题"})) - 选择性导出列(
includeColumnFiledNames/excludeColumnFiledNames) - 注解定义格式(
@ColumnWidth@ContentRowHeight@DateTimeFormat@NumberFormat) - 自定义样式(注解方式 / 拦截器方式 /
HorizontalCellStyleStrategy) - 合并单元格(
@ContentLoopMerge/LoopMergeStrategy) - 图片导出(File/InputStream/URL/byte[] 多种来源)
- 超链接/批注/公式/富文本(
WriteCellData体系) - 动态表头(运行时决定表头)
- 多次写入/多 Sheet/多 Table
- Web 直接输出到
HttpServletResponse
⚠️ 限制
- 单 Sheet 建议 < 5000 行一次性写入(数据量大用分批)
- 样式对象最多创建 6W 个,否则 Excel 打不开
- 图片会驻内存,超大图建议上传到 OSS
- 批注需要
inMemory(true) - 03 版(
.xls)兼容性需用excelType(ExcelTypeEnum.XLS)
❌ Out of Scope(不该用本技能的场景,请改用其它技能)
- 按预制模板填充 → 不适用本技能,使用
easyexcel-fill - 读取 Excel 数据 → 不适用本技能,使用
easyexcel-read - CSV 文件处理 → 不适用本技能,自行使用 commons-csv / OpenCSV
- Word/PPT → 不适用本技能,使用 Apache POI / Apache POI-XML
Data Privacy
本技能不收集、存储或传输任何用户数据。所有代码示例仅用于本地开发参考。
When to use this skill
- 用户说"导出 Excel"、"生成 Excel"、"下载 Excel"、"导出订单/用户/财务/库存"
- 没有预制模板,需要程序化生成结构化 Excel
- 业务上有"分 Sheet(按月份/状态/类型)"、"分 Table(多个表块)"等需求
- 需要导出图片、超链接、公式、富文本、合并单元格
Quick Start
典型调用方式(3 种写法):
// 写法 1:JDK8+ 用 Supplier(since 3.0.0-beta1,最简洁)
EasyExcel.write(fileName, DemoData.class)
.sheet("模板")
.doWrite(() -> data());
// 写法 2:传统 + 已有 List
List<DemoData> data = data();
EasyExcel.write(fileName, DemoData.class)
.sheet("模板")
.doWrite(data);
// 写法 3:Builder(多次写入 / 复杂配置)
try (ExcelWriter excelWriter = EasyExcel.write(fileName, DemoData.class).build()) {
WriteSheet writeSheet = EasyExcel.writerSheet("模板").build();
excelWriter.write(data(), writeSheet);
}
What ships with it
49 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- agents/openai.yaml 325 B
- examples/advanced/15-hyperlink.md 419 B
- examples/advanced/16-comment.md 502 B
- examples/advanced/17-formula.md 342 B
- examples/advanced/18-rich-text.md 650 B
- examples/annotation/04-complex-head.md 497 B
- examples/annotation/05-converter.md 573 B
- examples/annotation/06-width-height.md 464 B
- examples/annotation/07-index-data.md 493 B
- examples/async/25-async-task.md 718 B
- examples/bigdata/24-page-write.md 575 B
- examples/business/29-user-export.md 878 B
- examples/business/30-finance-stock.md 1.0 KB
- examples/conversion/27-custom-converter.md 808 B
- examples/dynamic/26-dynamic-head.md 399 B
- examples/error-handling/28-validator.md 581 B
- examples/image/13-image-demo.md 542 B
- examples/image/14-multi-image.md 1.1 KB
- examples/merge/11-annotation.md 412 B
- examples/merge/12-strategy.md 300 B
- examples/multi-sheet/21-repeated-same.md 368 B
- examples/multi-sheet/22-different-classes.md 379 B
- examples/multi-sheet/23-table.md 583 B
- examples/simple/01-demo-data.md 322 B
- examples/simple/02-three-ways.md 1018 B
- examples/simple/03-exclude-include.md 786 B
- examples/style/08-annotation-style.md 837 B
- examples/style/09-strategy.md 881 B
- examples/style/10-auto-width.md 322 B
- examples/web/19-controller.md 569 B
- examples/web/20-fail-json.md 1.0 KB
- references/advanced/advanced-features.md 4.3 KB
- references/annotations/annotation-reference.md 2.0 KB
- references/api/3-write-modes.md 1.5 KB
- references/api/api-summary.md 1.8 KB
- references/api/key-classes.md 1.3 KB
- references/faq/common-questions.md 2.3 KB
- references/patterns/anti-patterns.md 3.7 KB
- references/patterns/header-format-style.md 2.5 KB
- references/scenarios/advanced.md 2.2 KB
- references/scenarios/business-scenarios.md 7.5 KB
- references/scenarios/hyperlink-comment-formula-richtext.md 1.6 KB
- references/scenarios/image-export.md 1.2 KB
- references/scenarios/merge-cell.md 378 B
- references/scenarios/million-row.md 1.3 KB
- references/scenarios/web-download.md 1.6 KB
- references/style/styling-guide.md 2.8 KB
- references/troubleshooting/debugging-guide.md 2.6 KB
- references/troubleshooting/gotchas.md 1.0 KB
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.
- 1mo ago Changed · -418 lines bc9b4cb9506d
- 1mo ago First seen · 557 lines · 254 tokens per session scan A 9f695e86b920
easyexcel-write is a skill published in the GitHub repository full-stack-skills/java-skills (6 stars, last pushed 10d ago), licensed Apache-2.0. It adds 254 tokens to every session and 2,274 once invoked, about $0.0010 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
azure-ai-formrecognizer-java
Build document analysis applications with Azure Document Intelligence (Form Recognizer) SDK for Java. Use when extracting text, tables, key-value pairs from documents, receipts, invoices, or buildi...
fwmsexcelxlsx-generator
Gera customizações AdvPL/TLPP (sempre User Function) que exportam dados do Protheus para planilha Excel .xlsx usando a classe de framework FwMsExcelXlsx, padrão recomendado pela TOTVS — abas, tabelas, colunas com alinhamento, formato, máscara e totalizador, fonte da planilha, gravação direta em arquivo ou no banco…
003-skills-inventory
Use when you need to generate a checklist document with Java system prompts from skills.xml, following the embedded section template and producing INVENTORY-SKILLS-JAVA.md. This should trigger for requests such as Create Java system prompts checklist; Generate INVENTORY-SKILLS-JAVA.md; Use @003-skills-inventory…
001-commands-inventory
Use when you need to generate a checklist document with embedded commands inventory, following the embedded template exactly and producing INVENTORY-COMMANDS-JAVA.md in the project root. This should trigger for requests such as Create embedded commands inventory checklist; Generate INVENTORY-COMMANDS-JAVA.md; Use…
002-agents-inventory
Use when you need to generate a checklist document with embedded agents inventory, following the embedded template exactly and producing INVENTORY-AGENTS-JAVA.md in the project root. This should trigger for requests such as Create embedded agents inventory checklist; Generate INVENTORY-AGENTS-JAVA.md; Use…
program-to-spec
Reverse-engineer an ABAP program into a Functional/Technical Specification artifact (Markdown, HTML, and/or Excel — any combination). Socratic scope narrowing from "everything" to "only what the user needs".