[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6KBP6H9EGBC7P4N0ZF2NPDZ":3,"skill-same:01M6KBP6H9EGBC7P4N0ZF2NPDZ":185},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":28,"publishedAt":49,"linkOnly":50,"markdownContent":51,"markdownBody":52,"frontMatter":53,"refName":62,"commitSha":63,"skillDirectory":64,"forksCount":65,"repositoryHtmlUrl":66,"repositoryHomepageUrl":6,"ownerHtmlUrl":67,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":68,"install":69,"resources":82},"01M6KBP6H9EGBC7P4N0ZF2NPDZ","minimax-xlsx",null,"Open, create, read, analyze, edit, or validate Excel\u002Fspreadsheet files (.xlsx, .xlsm, .csv, .tsv). Use when the user asks to create, build, modify, analyze, read, validate, or format any Excel spreadsheet, financial model, pivot table, or tabular data file. Covers: creating new xlsx from scratch, reading and analyzing existing files, editing existing xlsx with zero format loss, formula recalculation and validation, and applying professional financial formatting standards. Triggers on 'spreadsheet', 'Excel', '.xlsx', '.csv', 'pivot table', 'financial model', 'formula', or any request to produce tabular data in Excel format.","zhizhunbao\u002Fworkbuddy","zhizhunbao","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F7111063?v=4","01M6K6S4GJ0HA544MFAKAB913B","王鹏","01M6K6S4MEC7KW1Z6SCQ3FA876",9,"MIT","https:\u002F\u002Fgithub.com\u002Fzhizhunbao\u002Fworkbuddy\u002Fblob\u002Fmain\u002Fskills-marketplace\u002Fskills\u002Fminimax-xlsx\u002FSKILL.md",[18,23],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000004","电子表格","SCENARIO","使用场景",{"categoryNo":24,"categoryName":25,"taxonomyType":26,"taxonomyTypeDesc":27},"01JBSEEDCAT000000000000034","行政与办公人员","PROFESSION","适用职业",[29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48],"minimax xlsx","minimax","xlsx","read","request","reading","professional","excel spreadsheets","formula","files","edit","model","analyze","open","spreadsheet","data","analyzing","create","spreadsheets","documentation","2026-11-10 10:12:30",false,"---\nname: minimax-xlsx\ndescription: \"Open, create, read, analyze, edit, or validate Excel\u002Fspreadsheet files (.xlsx, .xlsm, .csv, .tsv). Use when the user asks to create, build, modify, analyze, read, validate, or format any Excel spreadsheet, financial model, pivot table, or tabular data file. Covers: creating new xlsx from scratch, reading and analyzing existing files, editing existing xlsx with zero format loss, formula recalculation and validation, and applying professional financial formatting standards. Triggers on 'spreadsheet', 'Excel', '.xlsx', '.csv', 'pivot table', 'financial model', 'formula', or any request to produce tabular data in Excel format.\"\ndescription_zh: \"Excel 文件创建与分析\"\ndescription_en: \"Create, edit, and analyze Excel spreadsheets\"\nlicense: MIT\nmetadata:\n  version: \"1.0\"\n  category: productivity\n  sources:\n    - ECMA-376 Office Open XML File Formats\n    - Microsoft Open XML SDK documentation\n---\n\n# MiniMax XLSX Skill\n\nHandle the request directly. Do NOT spawn sub-agents. Always write the output file the user requests.\n\n## Task Routing\n\n| Task | Method | Guide |\n|------|--------|-------|\n| **READ** — analyze existing data | `xlsx_reader.py` + pandas | `references\u002Fread-analyze.md` |\n| **CREATE** — new xlsx from scratch | XML template | `references\u002Fcreate.md` + `references\u002Fformat.md` |\n| **EDIT** — modify existing xlsx | XML unpack→edit→pack | `references\u002Fedit.md` (+ `format.md` if styling needed) |\n| **FIX** — repair broken formulas in existing xlsx | XML unpack→fix `\u003Cf>` nodes→pack | `references\u002Ffix.md` |\n| **VALIDATE** — check formulas | `formula_check.py` | `references\u002Fvalidate.md` |\n\n## READ — Analyze data (read `references\u002Fread-analyze.md` first)\n\nStart with `xlsx_reader.py` for structure discovery, then pandas for custom analysis. Never modify the source file.\n\n**Formatting rule**: When the user specifies decimal places (e.g. \"2 decimal places\"), apply that format to ALL numeric values — use `f'{v:.2f}'` on every number. Never output `12875` when `12875.00` is required.\n\n**Aggregation rule**: Always compute sums\u002Fmeans\u002Fcounts directly from the DataFrame column — e.g. `df['Revenue'].sum()`. Never re-derive column values before aggregation.\n\n## CREATE — XML template (read `references\u002Fcreate.md` + `references\u002Fformat.md`)\n\nCopy `templates\u002Fminimal_xlsx\u002F` → edit XML directly → pack with `xlsx_pack.py`. Every derived value MUST be an Excel formula (`\u003Cf>SUM(B2:B9)\u003C\u002Ff>`), never a hardcoded number. Apply font colors per `format.md`.\n\n## EDIT — XML direct-edit (read `references\u002Fedit.md` first)\n\n**CRITICAL — EDIT INTEGRITY RULES:**\n1. **NEVER create a new `Workbook()`** for edit tasks. Always load the original file.\n2. The output MUST contain the **same sheets** as the input (same names, same data).\n3. Only modify the specific cells the task asks for — everything else must be untouched.\n4. **After saving output.xlsx, verify it**: open with `xlsx_reader.py` or `pandas` and confirm the original sheet names and a sample of original data are present. If verification fails, you wrote the wrong file — fix it before delivering.\n\nNever use openpyxl round-trip on existing files (corrupts VBA, pivots, sparklines). Instead: unpack → use helper scripts → repack.\n\n**\"Fill cells\" \u002F \"Add formulas to existing cells\" = EDIT task.** If the input file already exists and you are told to fill, update, or add formulas to specific cells, you MUST use the XML edit path. Never create a new `Workbook()`. Example — fill B3 with a cross-sheet SUM formula:\n```bash\npython3 SKILL_DIR\u002Fscripts\u002Fxlsx_unpack.py input.xlsx \u002Ftmp\u002Fxlsx_work\u002F\n# Find the target sheet's XML via xl\u002Fworkbook.xml → xl\u002F_rels\u002Fworkbook.xml.rels\n# Then use the Edit tool to add \u003Cf> inside the target \u003Cc> element:\n#   \u003Cc r=\"B3\">\u003Cf>SUM('Sales Data'!D2:D13)\u003C\u002Ff>\u003Cv>\u003C\u002Fv>\u003C\u002Fc>\npython3 SKILL_DIR\u002Fscripts\u002Fxlsx_pack.py \u002Ftmp\u002Fxlsx_work\u002F output.xlsx\n```\n\n**Add a column** (formulas, numfmt, styles auto-copied from adjacent column):\n```bash\npython3 SKILL_DIR\u002Fscripts\u002Fxlsx_unpack.py input.xlsx \u002Ftmp\u002Fxlsx_work\u002F\npython3 SKILL_DIR\u002Fscripts\u002Fxlsx_add_column.py \u002Ftmp\u002Fxlsx_work\u002F --col G \\\n    --sheet \"Sheet1\" --header \"% of Total\" \\\n    --formula '=F{row}\u002F$F$10' --formula-rows 2:9 \\\n    --total-row 10 --total-formula '=SUM(G2:G9)' --numfmt '0.0%' \\\n    --border-row 10 --border-style medium\npython3 SKILL_DIR\u002Fscripts\u002Fxlsx_pack.py \u002Ftmp\u002Fxlsx_work\u002F output.xlsx\n```\nThe `--border-row` flag applies a top border to ALL cells in that row (not just the new column). Use it when the task requires accounting-style borders on total rows.\n\n**Insert a row** (shifts existing rows, updates SUM formulas, fixes circular refs):\n```bash\npython3 SKILL_DIR\u002Fscripts\u002Fxlsx_unpack.py input.xlsx \u002Ftmp\u002Fxlsx_work\u002F\n# IMPORTANT: Find the correct --at row by searching for the label text\n# in the worksheet XML, NOT by using the row number from the prompt.\n# The prompt may say \"row 5 (Office Rent)\" but Office Rent might actually\n# be at row 4. Always locate the row by its text label first.\npython3 SKILL_DIR\u002Fscripts\u002Fxlsx_insert_row.py \u002Ftmp\u002Fxlsx_work\u002F --at 5 \\\n    --sheet \"Budget FY2025\" --text A=Utilities \\\n    --values B=3000 C=3000 D=3500 E=3500 \\\n    --formula 'F=SUM(B{row}:E{row})' --copy-style-from 4\npython3 SKILL_DIR\u002Fscripts\u002Fxlsx_pack.py \u002Ftmp\u002Fxlsx_work\u002F output.xlsx\n```\n**Row lookup rule**: When the task says \"after row N (Label)\", always find the row by searching for \"Label\" in the worksheet XML (`grep -n \"Label\" \u002Ftmp\u002Fxlsx_work\u002Fxl\u002Fworksheets\u002Fsheet*.xml` or check sharedStrings.xml). Use the actual row number + 1 for `--at`. Do NOT call `xlsx_shift_rows.py` separately — `xlsx_insert_row.py` calls it internally.\n\n**Apply row-wide borders** (e.g. accounting line on a TOTAL row):\nAfter running helper scripts, apply borders to ALL cells in the target row, not just newly added cells. In `xl\u002Fstyles.xml`, append a new `\u003Cborder>` with the desired style, then append a new `\u003Cxf>` in `\u003CcellXfs>` that clones each cell's existing `\u003Cxf>` but sets the new `borderId`. Apply the new style index to every `\u003Cc>` in the row via the `s` attribute:\n```xml\n\u003C!-- In xl\u002Fstyles.xml, append to \u003Cborders>: -->\n\u003Cborder>\n  \u003Cleft\u002F>\u003Cright\u002F>\u003Ctop style=\"medium\"\u002F>\u003Cbottom\u002F>\u003Cdiagonal\u002F>\n\u003C\u002Fborder>\n\u003C!-- Then append to \u003CcellXfs> an xf clone with the new borderId for each existing style -->\n```\n**Key rule**: When a task says \"add a border to row N\", iterate over ALL cells A through the last column, not just newly added cells.\n\n**Manual XML edit** (for anything the helper scripts don't cover):\n```bash\npython3 SKILL_DIR\u002Fscripts\u002Fxlsx_unpack.py input.xlsx \u002Ftmp\u002Fxlsx_work\u002F\n# ... edit XML with the Edit tool ...\npython3 SKILL_DIR\u002Fscripts\u002Fxlsx_pack.py \u002Ftmp\u002Fxlsx_work\u002F output.xlsx\n```\n\n## FIX — Repair broken formulas (read `references\u002Ffix.md` first)\n\nThis is an EDIT task. Unpack → fix broken `\u003Cf>` nodes → pack. Preserve all original sheets and data.\n\n## VALIDATE — Check formulas (read `references\u002Fvalidate.md` first)\n\nRun `formula_check.py` for static validation. Use `libreoffice_recalc.py` for dynamic recalculation when available.\n\n## Financial Color Standard\n\n| Cell Role | Font Color | Hex Code |\n|-----------|-----------|----------|\n| Hard-coded input \u002F assumption | Blue | `0000FF` |\n| Formula \u002F computed result | Black | `000000` |\n| Cross-sheet reference formula | Green | `00B050` |\n\n## Key Rules\n\n1. **Formula-First**: Every calculated cell MUST use an Excel formula, not a hardcoded number\n2. **CREATE → XML template**: Copy minimal template, edit XML directly, pack with `xlsx_pack.py`\n3. **EDIT → XML**: Never openpyxl round-trip. Use unpack\u002Fedit\u002Fpack scripts\n4. **Always produce the output file** — this is the #1 priority\n5. **Validate before delivery**: `formula_check.py` exit code 0 = safe\n\n## Utility Scripts\n\n```bash\npython3 SKILL_DIR\u002Fscripts\u002Fxlsx_reader.py input.xlsx                 # structure discovery\npython3 SKILL_DIR\u002Fscripts\u002Fformula_check.py file.xlsx --json         # formula validation\npython3 SKILL_DIR\u002Fscripts\u002Fformula_check.py file.xlsx --report      # standardized report\npython3 SKILL_DIR\u002Fscripts\u002Fxlsx_unpack.py in.xlsx \u002Ftmp\u002Fwork\u002F         # unpack for XML editing\npython3 SKILL_DIR\u002Fscripts\u002Fxlsx_pack.py \u002Ftmp\u002Fwork\u002F out.xlsx          # repack after editing\npython3 SKILL_DIR\u002Fscripts\u002Fxlsx_shift_rows.py \u002Ftmp\u002Fwork\u002F insert 5 1  # shift rows for insertion\npython3 SKILL_DIR\u002Fscripts\u002Fxlsx_add_column.py \u002Ftmp\u002Fwork\u002F --col G ... # add column with formulas\npython3 SKILL_DIR\u002Fscripts\u002Fxlsx_insert_row.py \u002Ftmp\u002Fwork\u002F --at 6 ...  # insert row with data\n```\n","# MiniMax XLSX Skill\n\nHandle the request directly. Do NOT spawn sub-agents. Always write the output file the user requests.\n\n## Task Routing\n\n| Task | Method | Guide |\n|------|--------|-------|\n| **READ** — analyze existing data | `xlsx_reader.py` + pandas | `references\u002Fread-analyze.md` |\n| **CREATE** — new xlsx from scratch | XML template | `references\u002Fcreate.md` + `references\u002Fformat.md` |\n| **EDIT** — modify existing xlsx | XML unpack→edit→pack | `references\u002Fedit.md` (+ `format.md` if styling needed) |\n| **FIX** — repair broken formulas in existing xlsx | XML unpack→fix `\u003Cf>` nodes→pack | `references\u002Ffix.md` |\n| **VALIDATE** — check formulas | `formula_check.py` | `references\u002Fvalidate.md` |\n\n## READ — Analyze data (read `references\u002Fread-analyze.md` first)\n\nStart with `xlsx_reader.py` for structure discovery, then pandas for custom analysis. Never modify the source file.\n\n**Formatting rule**: When the user specifies decimal places (e.g. \"2 decimal places\"), apply that format to ALL numeric values — use `f'{v:.2f}'` on every number. Never output `12875` when `12875.00` is required.\n\n**Aggregation rule**: Always compute sums\u002Fmeans\u002Fcounts directly from the DataFrame column — e.g. `df['Revenue'].sum()`. Never re-derive column values before aggregation.\n\n## CREATE — XML template (read `references\u002Fcreate.md` + `references\u002Fformat.md`)\n\nCopy `templates\u002Fminimal_xlsx\u002F` → edit XML directly → pack with `xlsx_pack.py`. Every derived value MUST be an Excel formula (`\u003Cf>SUM(B2:B9)\u003C\u002Ff>`), never a hardcoded number. Apply font colors per `format.md`.\n\n## EDIT — XML direct-edit (read `references\u002Fedit.md` first)\n\n**CRITICAL — EDIT INTEGRITY RULES:**\n1. **NEVER create a new `Workbook()`** for edit tasks. Always load the original file.\n2. The output MUST contain the **same sheets** as the input (same names, same data).\n3. Only modify the specific cells the task asks for — everything else must be untouched.\n4. **After saving output.xlsx, verify it**: open with `xlsx_reader.py` or `pandas` and confirm the original sheet names and a sample of original data are present. If verification fails, you wrote the wrong file — fix it before delivering.\n\nNever use openpyxl round-trip on existing files (corrupts VBA, pivots, sparklines). Instead: unpack → use helper scripts → repack.\n\n**\"Fill cells\" \u002F \"Add formulas to existing cells\" = EDIT task.** If the input file already exists and you are told to fill, update, or add formulas to specific cells, you MUST use the XML edit path. Never create a new `Workbook()`. Example — fill B3 with a cross-sheet SUM formula:\n```bash\npython3 SKILL_DIR\u002Fscripts\u002Fxlsx_unpack.py input.xlsx \u002Ftmp\u002Fxlsx_work\u002F\n# Find the target sheet's XML via xl\u002Fworkbook.xml → xl\u002F_rels\u002Fworkbook.xml.rels\n# Then use the Edit tool to add \u003Cf> inside the target \u003Cc> element:\n#   \u003Cc r=\"B3\">\u003Cf>SUM('Sales Data'!D2:D13)\u003C\u002Ff>\u003Cv>\u003C\u002Fv>\u003C\u002Fc>\npython3 SKILL_DIR\u002Fscripts\u002Fxlsx_pack.py \u002Ftmp\u002Fxlsx_work\u002F output.xlsx\n```\n\n**Add a column** (formulas, numfmt, styles auto-copied from adjacent column):\n```bash\npython3 SKILL_DIR\u002Fscripts\u002Fxlsx_unpack.py input.xlsx \u002Ftmp\u002Fxlsx_work\u002F\npython3 SKILL_DIR\u002Fscripts\u002Fxlsx_add_column.py \u002Ftmp\u002Fxlsx_work\u002F --col G \\\n    --sheet \"Sheet1\" --header \"% of Total\" \\\n    --formula '=F{row}\u002F$F$10' --formula-rows 2:9 \\\n    --total-row 10 --total-formula '=SUM(G2:G9)' --numfmt '0.0%' \\\n    --border-row 10 --border-style medium\npython3 SKILL_DIR\u002Fscripts\u002Fxlsx_pack.py \u002Ftmp\u002Fxlsx_work\u002F output.xlsx\n```\nThe `--border-row` flag applies a top border to ALL cells in that row (not just the new column). Use it when the task requires accounting-style borders on total rows.\n\n**Insert a row** (shifts existing rows, updates SUM formulas, fixes circular refs):\n```bash\npython3 SKILL_DIR\u002Fscripts\u002Fxlsx_unpack.py input.xlsx \u002Ftmp\u002Fxlsx_work\u002F\n# IMPORTANT: Find the correct --at row by searching for the label text\n# in the worksheet XML, NOT by using the row number from the prompt.\n# The prompt may say \"row 5 (Office Rent)\" but Office Rent might actually\n# be at row 4. Always locate the row by its text label first.\npython3 SKILL_DIR\u002Fscripts\u002Fxlsx_insert_row.py \u002Ftmp\u002Fxlsx_work\u002F --at 5 \\\n    --sheet \"Budget FY2025\" --text A=Utilities \\\n    --values B=3000 C=3000 D=3500 E=3500 \\\n    --formula 'F=SUM(B{row}:E{row})' --copy-style-from 4\npython3 SKILL_DIR\u002Fscripts\u002Fxlsx_pack.py \u002Ftmp\u002Fxlsx_work\u002F output.xlsx\n```\n**Row lookup rule**: When the task says \"after row N (Label)\", always find the row by searching for \"Label\" in the worksheet XML (`grep -n \"Label\" \u002Ftmp\u002Fxlsx_work\u002Fxl\u002Fworksheets\u002Fsheet*.xml` or check sharedStrings.xml). Use the actual row number + 1 for `--at`. Do NOT call `xlsx_shift_rows.py` separately — `xlsx_insert_row.py` calls it internally.\n\n**Apply row-wide borders** (e.g. accounting line on a TOTAL row):\nAfter running helper scripts, apply borders to ALL cells in the target row, not just newly added cells. In `xl\u002Fstyles.xml`, append a new `\u003Cborder>` with the desired style, then append a new `\u003Cxf>` in `\u003CcellXfs>` that clones each cell's existing `\u003Cxf>` but sets the new `borderId`. Apply the new style index to every `\u003Cc>` in the row via the `s` attribute:\n```xml\n\u003C!-- In xl\u002Fstyles.xml, append to \u003Cborders>: -->\n\u003Cborder>\n  \u003Cleft\u002F>\u003Cright\u002F>\u003Ctop style=\"medium\"\u002F>\u003Cbottom\u002F>\u003Cdiagonal\u002F>\n\u003C\u002Fborder>\n\u003C!-- Then append to \u003CcellXfs> an xf clone with the new borderId for each existing style -->\n```\n**Key rule**: When a task says \"add a border to row N\", iterate over ALL cells A through the last column, not just newly added cells.\n\n**Manual XML edit** (for anything the helper scripts don't cover):\n```bash\npython3 SKILL_DIR\u002Fscripts\u002Fxlsx_unpack.py input.xlsx \u002Ftmp\u002Fxlsx_work\u002F\n# ... edit XML with the Edit tool ...\npython3 SKILL_DIR\u002Fscripts\u002Fxlsx_pack.py \u002Ftmp\u002Fxlsx_work\u002F output.xlsx\n```\n\n## FIX — Repair broken formulas (read `references\u002Ffix.md` first)\n\nThis is an EDIT task. Unpack → fix broken `\u003Cf>` nodes → pack. Preserve all original sheets and data.\n\n## VALIDATE — Check formulas (read `references\u002Fvalidate.md` first)\n\nRun `formula_check.py` for static validation. Use `libreoffice_recalc.py` for dynamic recalculation when available.\n\n## Financial Color Standard\n\n| Cell Role | Font Color | Hex Code |\n|-----------|-----------|----------|\n| Hard-coded input \u002F assumption | Blue | `0000FF` |\n| Formula \u002F computed result | Black | `000000` |\n| Cross-sheet reference formula | Green | `00B050` |\n\n## Key Rules\n\n1. **Formula-First**: Every calculated cell MUST use an Excel formula, not a hardcoded number\n2. **CREATE → XML template**: Copy minimal template, edit XML directly, pack with `xlsx_pack.py`\n3. **EDIT → XML**: Never openpyxl round-trip. Use unpack\u002Fedit\u002Fpack scripts\n4. **Always produce the output file** — this is the #1 priority\n5. **Validate before delivery**: `formula_check.py` exit code 0 = safe\n\n## Utility Scripts\n\n```bash\npython3 SKILL_DIR\u002Fscripts\u002Fxlsx_reader.py input.xlsx                 # structure discovery\npython3 SKILL_DIR\u002Fscripts\u002Fformula_check.py file.xlsx --json         # formula validation\npython3 SKILL_DIR\u002Fscripts\u002Fformula_check.py file.xlsx --report      # standardized report\npython3 SKILL_DIR\u002Fscripts\u002Fxlsx_unpack.py in.xlsx \u002Ftmp\u002Fwork\u002F         # unpack for XML editing\npython3 SKILL_DIR\u002Fscripts\u002Fxlsx_pack.py \u002Ftmp\u002Fwork\u002F out.xlsx          # repack after editing\npython3 SKILL_DIR\u002Fscripts\u002Fxlsx_shift_rows.py \u002Ftmp\u002Fwork\u002F insert 5 1  # shift rows for insertion\npython3 SKILL_DIR\u002Fscripts\u002Fxlsx_add_column.py \u002Ftmp\u002Fwork\u002F --col G ... # add column with formulas\npython3 SKILL_DIR\u002Fscripts\u002Fxlsx_insert_row.py \u002Ftmp\u002Fwork\u002F --at 6 ...  # insert row with data\n```\n",{"name":5,"license":15,"metadata":54,"description":7,"description_en":60,"description_zh":61},{"sources":55,"version":58,"category":59},[56,57],"ECMA-376 Office Open XML File Formats","Microsoft Open XML SDK documentation","1.0","productivity","Create, edit, and analyze Excel spreadsheets","Excel 文件创建与分析","main","469e430d8b1f61ccc1bf502e5448161944831c41","skills-marketplace\u002Fskills\u002Fminimax-xlsx",4,"https:\u002F\u002Fgithub.com\u002Fzhizhunbao\u002Fworkbuddy","https:\u002F\u002Fgithub.com\u002Fzhizhunbao","2026-04-01 01:41:45",{"source":8,"skillName":5,"commands":70,"prompt":80,"zipAvailable":81},[71,74,77],{"tool":72,"command":73},"npx","npx skills add zhizhunbao\u002Fworkbuddy --skill minimax-xlsx",{"tool":75,"command":76},"bunx","bunx skills add zhizhunbao\u002Fworkbuddy --skill minimax-xlsx",{"tool":78,"command":79},"pnpm","pnpm dlx skills add zhizhunbao\u002Fworkbuddy --skill minimax-xlsx","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fzhizhunbao\u002Fworkbuddy\u002Fblob\u002Fmain\u002Fskills-marketplace\u002Fskills\u002Fminimax-xlsx\u002FSKILL.md",true,[83,89,93,97,101,105,109,113,119,123,127,131,135,139,143,147,151,155,161,165,169,173,177,181],{"path":84,"resourceType":85,"resourceTypeDesc":86,"sizeBytes":87,"sourceHtmlUrl":88},"references\u002Fcreate.md","REFERENCE","参考文档",24602,"https:\u002F\u002Fgithub.com\u002Fzhizhunbao\u002Fworkbuddy\u002Fblob\u002Fmain\u002Fskills-marketplace\u002Fskills\u002Fminimax-xlsx\u002Freferences\u002Fcreate.md",{"path":90,"resourceType":85,"resourceTypeDesc":86,"sizeBytes":91,"sourceHtmlUrl":92},"references\u002Fedit.md",24474,"https:\u002F\u002Fgithub.com\u002Fzhizhunbao\u002Fworkbuddy\u002Fblob\u002Fmain\u002Fskills-marketplace\u002Fskills\u002Fminimax-xlsx\u002Freferences\u002Fedit.md",{"path":94,"resourceType":85,"resourceTypeDesc":86,"sizeBytes":95,"sourceHtmlUrl":96},"references\u002Ffix.md",1265,"https:\u002F\u002Fgithub.com\u002Fzhizhunbao\u002Fworkbuddy\u002Fblob\u002Fmain\u002Fskills-marketplace\u002Fskills\u002Fminimax-xlsx\u002Freferences\u002Ffix.md",{"path":98,"resourceType":85,"resourceTypeDesc":86,"sizeBytes":99,"sourceHtmlUrl":100},"references\u002Fformat.md",34103,"https:\u002F\u002Fgithub.com\u002Fzhizhunbao\u002Fworkbuddy\u002Fblob\u002Fmain\u002Fskills-marketplace\u002Fskills\u002Fminimax-xlsx\u002Freferences\u002Fformat.md",{"path":102,"resourceType":85,"resourceTypeDesc":86,"sizeBytes":103,"sourceHtmlUrl":104},"references\u002Fooxml-cheatsheet.md",6430,"https:\u002F\u002Fgithub.com\u002Fzhizhunbao\u002Fworkbuddy\u002Fblob\u002Fmain\u002Fskills-marketplace\u002Fskills\u002Fminimax-xlsx\u002Freferences\u002Fooxml-cheatsheet.md",{"path":106,"resourceType":85,"resourceTypeDesc":86,"sizeBytes":107,"sourceHtmlUrl":108},"references\u002Fread-analyze.md",4299,"https:\u002F\u002Fgithub.com\u002Fzhizhunbao\u002Fworkbuddy\u002Fblob\u002Fmain\u002Fskills-marketplace\u002Fskills\u002Fminimax-xlsx\u002Freferences\u002Fread-analyze.md",{"path":110,"resourceType":85,"resourceTypeDesc":86,"sizeBytes":111,"sourceHtmlUrl":112},"references\u002Fvalidate.md",30153,"https:\u002F\u002Fgithub.com\u002Fzhizhunbao\u002Fworkbuddy\u002Fblob\u002Fmain\u002Fskills-marketplace\u002Fskills\u002Fminimax-xlsx\u002Freferences\u002Fvalidate.md",{"path":114,"resourceType":115,"resourceTypeDesc":116,"sizeBytes":117,"sourceHtmlUrl":118},"scripts\u002Fformula_check.py","SCRIPT","脚本",17540,"https:\u002F\u002Fgithub.com\u002Fzhizhunbao\u002Fworkbuddy\u002Fblob\u002Fmain\u002Fskills-marketplace\u002Fskills\u002Fminimax-xlsx\u002Fscripts\u002Fformula_check.py",{"path":120,"resourceType":115,"resourceTypeDesc":116,"sizeBytes":121,"sourceHtmlUrl":122},"scripts\u002Flibreoffice_recalc.py",9415,"https:\u002F\u002Fgithub.com\u002Fzhizhunbao\u002Fworkbuddy\u002Fblob\u002Fmain\u002Fskills-marketplace\u002Fskills\u002Fminimax-xlsx\u002Fscripts\u002Flibreoffice_recalc.py",{"path":124,"resourceType":115,"resourceTypeDesc":116,"sizeBytes":125,"sourceHtmlUrl":126},"scripts\u002Fshared_strings_builder.py",5179,"https:\u002F\u002Fgithub.com\u002Fzhizhunbao\u002Fworkbuddy\u002Fblob\u002Fmain\u002Fskills-marketplace\u002Fskills\u002Fminimax-xlsx\u002Fscripts\u002Fshared_strings_builder.py",{"path":128,"resourceType":115,"resourceTypeDesc":116,"sizeBytes":129,"sourceHtmlUrl":130},"scripts\u002Fstyle_audit.py",22424,"https:\u002F\u002Fgithub.com\u002Fzhizhunbao\u002Fworkbuddy\u002Fblob\u002Fmain\u002Fskills-marketplace\u002Fskills\u002Fminimax-xlsx\u002Fscripts\u002Fstyle_audit.py",{"path":132,"resourceType":115,"resourceTypeDesc":116,"sizeBytes":133,"sourceHtmlUrl":134},"scripts\u002Fxlsx_add_column.py",14737,"https:\u002F\u002Fgithub.com\u002Fzhizhunbao\u002Fworkbuddy\u002Fblob\u002Fmain\u002Fskills-marketplace\u002Fskills\u002Fminimax-xlsx\u002Fscripts\u002Fxlsx_add_column.py",{"path":136,"resourceType":115,"resourceTypeDesc":116,"sizeBytes":137,"sourceHtmlUrl":138},"scripts\u002Fxlsx_insert_row.py",10046,"https:\u002F\u002Fgithub.com\u002Fzhizhunbao\u002Fworkbuddy\u002Fblob\u002Fmain\u002Fskills-marketplace\u002Fskills\u002Fminimax-xlsx\u002Fscripts\u002Fxlsx_insert_row.py",{"path":140,"resourceType":115,"resourceTypeDesc":116,"sizeBytes":141,"sourceHtmlUrl":142},"scripts\u002Fxlsx_pack.py",2956,"https:\u002F\u002Fgithub.com\u002Fzhizhunbao\u002Fworkbuddy\u002Fblob\u002Fmain\u002Fskills-marketplace\u002Fskills\u002Fminimax-xlsx\u002Fscripts\u002Fxlsx_pack.py",{"path":144,"resourceType":115,"resourceTypeDesc":116,"sizeBytes":145,"sourceHtmlUrl":146},"scripts\u002Fxlsx_reader.py",13545,"https:\u002F\u002Fgithub.com\u002Fzhizhunbao\u002Fworkbuddy\u002Fblob\u002Fmain\u002Fskills-marketplace\u002Fskills\u002Fminimax-xlsx\u002Fscripts\u002Fxlsx_reader.py",{"path":148,"resourceType":115,"resourceTypeDesc":116,"sizeBytes":149,"sourceHtmlUrl":150},"scripts\u002Fxlsx_shift_rows.py",13614,"https:\u002F\u002Fgithub.com\u002Fzhizhunbao\u002Fworkbuddy\u002Fblob\u002Fmain\u002Fskills-marketplace\u002Fskills\u002Fminimax-xlsx\u002Fscripts\u002Fxlsx_shift_rows.py",{"path":152,"resourceType":115,"resourceTypeDesc":116,"sizeBytes":153,"sourceHtmlUrl":154},"scripts\u002Fxlsx_unpack.py",4804,"https:\u002F\u002Fgithub.com\u002Fzhizhunbao\u002Fworkbuddy\u002Fblob\u002Fmain\u002Fskills-marketplace\u002Fskills\u002Fminimax-xlsx\u002Fscripts\u002Fxlsx_unpack.py",{"path":156,"resourceType":157,"resourceTypeDesc":158,"sizeBytes":159,"sourceHtmlUrl":160},"templates\u002Fminimal_xlsx\u002F_rels\u002F.rels","OTHER","其他",309,"https:\u002F\u002Fgithub.com\u002Fzhizhunbao\u002Fworkbuddy\u002Fblob\u002Fmain\u002Fskills-marketplace\u002Fskills\u002Fminimax-xlsx\u002Ftemplates\u002Fminimal_xlsx\u002F_rels\u002F.rels",{"path":162,"resourceType":157,"resourceTypeDesc":158,"sizeBytes":163,"sourceHtmlUrl":164},"templates\u002Fminimal_xlsx\u002F[Content_Types].xml",836,"https:\u002F\u002Fgithub.com\u002Fzhizhunbao\u002Fworkbuddy\u002Fblob\u002Fmain\u002Fskills-marketplace\u002Fskills\u002Fminimax-xlsx\u002Ftemplates\u002Fminimal_xlsx\u002F[Content_Types].xml",{"path":166,"resourceType":157,"resourceTypeDesc":158,"sizeBytes":167,"sourceHtmlUrl":168},"templates\u002Fminimal_xlsx\u002Fxl\u002F_rels\u002Fworkbook.xml.rels",862,"https:\u002F\u002Fgithub.com\u002Fzhizhunbao\u002Fworkbuddy\u002Fblob\u002Fmain\u002Fskills-marketplace\u002Fskills\u002Fminimax-xlsx\u002Ftemplates\u002Fminimal_xlsx\u002Fxl\u002F_rels\u002Fworkbook.xml.rels",{"path":170,"resourceType":157,"resourceTypeDesc":158,"sizeBytes":171,"sourceHtmlUrl":172},"templates\u002Fminimal_xlsx\u002Fxl\u002FsharedStrings.xml",1167,"https:\u002F\u002Fgithub.com\u002Fzhizhunbao\u002Fworkbuddy\u002Fblob\u002Fmain\u002Fskills-marketplace\u002Fskills\u002Fminimax-xlsx\u002Ftemplates\u002Fminimal_xlsx\u002Fxl\u002FsharedStrings.xml",{"path":174,"resourceType":157,"resourceTypeDesc":158,"sizeBytes":175,"sourceHtmlUrl":176},"templates\u002Fminimal_xlsx\u002Fxl\u002Fstyles.xml",8383,"https:\u002F\u002Fgithub.com\u002Fzhizhunbao\u002Fworkbuddy\u002Fblob\u002Fmain\u002Fskills-marketplace\u002Fskills\u002Fminimax-xlsx\u002Ftemplates\u002Fminimal_xlsx\u002Fxl\u002Fstyles.xml",{"path":178,"resourceType":157,"resourceTypeDesc":158,"sizeBytes":179,"sourceHtmlUrl":180},"templates\u002Fminimal_xlsx\u002Fxl\u002Fworkbook.xml",1119,"https:\u002F\u002Fgithub.com\u002Fzhizhunbao\u002Fworkbuddy\u002Fblob\u002Fmain\u002Fskills-marketplace\u002Fskills\u002Fminimax-xlsx\u002Ftemplates\u002Fminimal_xlsx\u002Fxl\u002Fworkbook.xml",{"path":182,"resourceType":157,"resourceTypeDesc":158,"sizeBytes":183,"sourceHtmlUrl":184},"templates\u002Fminimal_xlsx\u002Fxl\u002Fworksheets\u002Fsheet1.xml",2596,"https:\u002F\u002Fgithub.com\u002Fzhizhunbao\u002Fworkbuddy\u002Fblob\u002Fmain\u002Fskills-marketplace\u002Fskills\u002Fminimax-xlsx\u002Ftemplates\u002Fminimal_xlsx\u002Fxl\u002Fworksheets\u002Fsheet1.xml",[186,215,242,272,300,331],{"skillNo":187,"name":188,"nameZh":6,"description":189,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":190,"categories":191,"keywords":195,"publishedAt":49},"01M6KBS51KPHYV6GXA7KEH7MMX","skill-scanner","Scan any agent skill for security risks before you install or use it. Powered by Tencent Zhuque Lab A.I.G (AI-Infra-Guard). 100% local static analysis — no file contents or credentials leave your device. Compatible with CodeBuddy, Cursor, Windsurf, Claude Code, OpenClaw and more. Triggers on: 这个 skill 安全吗, skill 安全扫描, 检查 skill 安全, audit skill, scan skill, check skill safety, analyze skill, inspect skill, verify skill, skill security, skill supply chain. Do NOT trigger for general agent usage, full system health checks, project debugging, or normal development.","https:\u002F\u002Fgithub.com\u002Fzhizhunbao\u002Fworkbuddy\u002Fblob\u002Fmain\u002Fskills-marketplace\u002Fskills\u002Fskill-scanner\u002FSKILL.md",[192],{"categoryNo":193,"categoryName":194,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发",[196,197,198,199,200,201,202,203,41,204,205,206,207,208,209,210,211,212,213,214],"skill scanner","scanner","security scanner","debugging","code","analysis","credentials","vulnerability","only","windsurf","local","project","chain","skill audit","tencent","you","inspect","static","skill security",{"skillNo":216,"name":217,"nameZh":6,"description":218,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":219,"categories":220,"keywords":221,"publishedAt":49},"01M6KBRQP7C41T5SQ72SJXZWP6","shader-dev","Comprehensive GLSL shader techniques for creating stunning visual effects — ray marching, SDF modeling, fluid simulation, particle systems, procedural generation, lighting, post-processing, and more.","https:\u002F\u002Fgithub.com\u002Fzhizhunbao\u002Fworkbuddy\u002Fblob\u002Fmain\u002Fskills-marketplace\u002Fskills\u002Fshader-dev\u002FSKILL.md",[],[222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241],"dev","shader","shader dev","graphics","fluid","Ray","simulation","lighting","visual","generation","modeling","post","processing","GLSL","procedural","post-processing","more","techniques","for","effects",{"skillNo":243,"name":244,"nameZh":6,"description":245,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":246,"categories":247,"keywords":254,"publishedAt":49},"01M6KBRAQBPFT9HRKNPCC7EJZP","react-native-dev","React Native and Expo development guide covering components, styling, animations, navigation,\nstate management, forms, networking, performance optimization, testing, native capabilities,\nand engineering (project structure, deployment, SDK upgrades, CI\u002FCD).\nUse when: building React Native or Expo apps, implementing animations or native UI, managing\nstate, fetching data, writing tests, optimizing performance, deploying to App Store\u002FPlay Store,\nsetting up CI\u002FCD, upgrading Expo SDK, or configuring Tailwind\u002FNativeWind.","https:\u002F\u002Fgithub.com\u002Fzhizhunbao\u002Fworkbuddy\u002Fblob\u002Fmain\u002Fskills-marketplace\u002Fskills\u002Freact-native-dev\u002FSKILL.md",[248,251],{"categoryNo":249,"categoryName":250,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000008","测试与质量",{"categoryNo":252,"categoryName":253,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000009","前端开发",[255,222,256,257,258,259,260,261,262,48,263,264,265,266,267,207,268,269,270,271],"react","react native","native","react native dev","testing","writing","performance","components","capabilities","ci","Tailwind","up","structure","app","apps","implementing","app store",{"skillNo":273,"name":274,"nameZh":6,"description":275,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":276,"categories":277,"keywords":282,"publishedAt":49},"01M6KBQM1S3B60WHYE0JN5ZFGB","pptx-generator","Generate, edit, and read PowerPoint presentations. Create from scratch with PptxGenJS (cover, TOC, content, section divider, summary slides), edit existing PPTX via XML workflows, or extract text with markitdown. Triggers: PPT, PPTX, PowerPoint, presentation, slide, deck, slides.","https:\u002F\u002Fgithub.com\u002Fzhizhunbao\u002Fworkbuddy\u002Fblob\u002Fmain\u002Fskills-marketplace\u002Fskills\u002Fpptx-generator\u002FSKILL.md",[278,281],{"categoryNo":279,"categoryName":280,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000003","演示文稿",{"categoryNo":24,"categoryName":25,"taxonomyType":26,"taxonomyTypeDesc":27},[283,284,285,286,287,288,46,289,290,291,292,293,32,39,294,295,296,297,298,299],"pptx","generator","pptx generator","workflows","presentations","powerpoint","generate","slides","生成","text","演示","toc","deck","triggers","io","presentation","cover",{"skillNo":301,"name":302,"nameZh":6,"description":303,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":304,"categories":305,"keywords":315,"publishedAt":49},"01M6KBP08N725KPCCF3BWRV47Y","minimax-pdf","Use this skill when visual quality and design identity matter for a PDF. CREATE (generate from scratch): \"make a PDF\", \"generate a report\", \"write a proposal\", \"create a resume\", \"beautiful PDF\", \"professional document\", \"cover page\", \"polished PDF\", \"client-ready document\". FILL (complete form fields): \"fill in the form\", \"fill out this PDF\", \"complete the form fields\", \"write values into PDF\", \"what fields does this PDF have\". REFORMAT (apply design to an existing doc): \"reformat this document\", \"apply our style\", \"convert this Markdown\u002Ftext to PDF\", \"make this doc look good\", \"re-style this PDF\". This skill uses a token-based design system: color, typography, and spacing are derived from the document type and flow through every page. The output is print-ready. Prefer this skill when appearance matters, not just when any PDF output is needed.","https:\u002F\u002Fgithub.com\u002Fzhizhunbao\u002Fworkbuddy\u002Fblob\u002Fmain\u002Fskills-marketplace\u002Fskills\u002Fminimax-pdf\u002FSKILL.md",[306,309,312],{"categoryNo":307,"categoryName":308,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000002","文档处理",{"categoryNo":310,"categoryName":311,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000015","视觉设计",{"categoryNo":313,"categoryName":314,"taxonomyType":26,"taxonomyTypeDesc":27},"01JBSEEDCAT000000000000032","设计师",[316,30,317,318,319,46,289,320,321,322,292,323,324,325,326,327,35,328,329,330],"PDF","minimax pdf","design","documents","flow","doc","markdown","write","good","ready","token","proposal","re","spacing","document-generation",{"skillNo":332,"name":333,"nameZh":6,"description":334,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":335,"categories":336,"keywords":345,"publishedAt":49},"01M6KBNNPKCY8DR6FY8KC4S5WK","minimax-docx","Professional DOCX document creation, editing, and formatting using OpenXML SDK (.NET). Three pipelines: (A) create new documents from scratch, (B) fill\u002Fedit content in existing documents, (C) apply template formatting with XSD validation gate-check. MUST use this skill whenever the user wants to produce, modify, or format a Word document — including when they say \"write a report\", \"draft a proposal\", \"make a contract\", \"fill in this form\", \"reformat to match this template\", or any task whose final output is a .docx file. Even if the user doesn't mention \"docx\" explicitly, if the task implies a printable\u002Fformal document, use this skill.","https:\u002F\u002Fgithub.com\u002Fzhizhunbao\u002Fworkbuddy\u002Fblob\u002Fmain\u002Fskills-marketplace\u002Fskills\u002Fminimax-docx\u002FSKILL.md",[337,338,339,342],{"categoryNo":307,"categoryName":308,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":24,"categoryName":25,"taxonomyType":26,"taxonomyTypeDesc":27},{"categoryNo":340,"categoryName":341,"taxonomyType":26,"taxonomyTypeDesc":27},"01JBSEEDCAT000000000000036","内容创作者",{"categoryNo":343,"categoryName":344,"taxonomyType":26,"taxonomyTypeDesc":27},"01JBSEEDCAT000000000000037","律师与法务",[346,30,347,348,319,46,289,42,349,323,39,350,351,352,353,327,35,234,354,355],"docx","minimax docx","official","template","validation gate","layout","creation","guides","word documents","formats"]