#62 by GitHub stars

iOfficeAI/OfficeCLI

OfficeCLI is the first and best Office suite purpose-built for AI agents to read, edit, and automate Word, Excel, and PowerPoint files. Free, open-source, single binary, no Office installation required.

History

Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.

View weekly changes

SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

89905744ed6d → c56512c8c7b7

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 89905744ed6d

No earlier version was observed for comparison.

Compare on GitHub

skills/morph-ppt/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

89905744ed6d → c56512c8c7b7

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 89905744ed6d

No earlier version was observed for comparison.

Compare on GitHub

skills/morph-ppt-3d/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

89905744ed6d → c56512c8c7b7

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 89905744ed6d

No earlier version was observed for comparison.

Compare on GitHub

skills/officecli/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

89905744ed6d → c56512c8c7b7

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 89905744ed6d

No earlier version was observed for comparison.

Compare on GitHub

skills/officecli-academic-paper/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

89905744ed6d → c56512c8c7b7

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 89905744ed6d

No earlier version was observed for comparison.

Compare on GitHub

skills/officecli-data-dashboard/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

89905744ed6d → c56512c8c7b7

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 89905744ed6d

No earlier version was observed for comparison.

Compare on GitHub

skills/officecli-docx/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

89905744ed6d → c56512c8c7b7

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 89905744ed6d

No earlier version was observed for comparison.

Compare on GitHub

skills/officecli-financial-model/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

89905744ed6d → c56512c8c7b7

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 89905744ed6d

No earlier version was observed for comparison.

Compare on GitHub

skills/officecli-pitch-deck/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

89905744ed6d → c56512c8c7b7

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 89905744ed6d

No earlier version was observed for comparison.

Compare on GitHub

skills/officecli-pptx/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

89905744ed6d → c56512c8c7b7

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 89905744ed6d

No earlier version was observed for comparison.

Compare on GitHub

skills/officecli-word-form/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

89905744ed6d → c56512c8c7b7

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 89905744ed6d

No earlier version was observed for comparison.

Compare on GitHub

skills/officecli-xlsx/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

89905744ed6d → c56512c8c7b7

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 89905744ed6d

No earlier version was observed for comparison.

Compare on GitHub

View on GitHubAdd to my skills

Verified commit c56512c8c7b76fe284f09940e4cd492470099d3e

33.1kGitHub stars
254stars in 7 days
12skills in this repository
93commits in 30 days

Heat

7.0
  • Star growth, last 7 daysAhead of 79% of tracked repositories
  • Star growth, last 24 hoursAhead of 69% of tracked repositories
  • Rank movement, last 7 daysAhead of 80% of tracked repositories
  • Commits, last 30 daysAhead of 94% of tracked repositories
  • Accounts asking about it through MCP, last 7 daysNot available
  • Hot votes this weekAhead of 0% of tracked repositories

Heat never changes the order by stars, and sponsorship never touches it. How heat works

Stars over time

Aug 2, 2026Nov 6, 202633,088

Individual skills in this repository

How it works

officecli

When your agent uses it

Create, analyze, proofread, and modify Office documents (.docx, .xlsx, .pptx) using the officecli CLI tool. Use when the user wants to create, inspect, check formatting, find issues, add charts, or modify Office documents.

What it loads into context

Frontmatter

60 tokens

Always available to the agent

SKILL.md

6,978 tokens

When the skill is activated

Reference documents

303,488 tokens

Loaded on request

Token counts are estimates. Scripts run separately; they are not counted as reference context.

The playbook

  1. Install
  2. Strategy
  3. Help System (IMPORTANT)
  4. Performance: Resident Mode
  5. Quick Start
  6. L1: Create, Read & Inspect
  7. Watch & Interactive Selection
  8. L2: DOM Operations
  9. L3: Raw XML
  10. Common Pitfalls
  11. Specialized Skills
  12. Notes

Scripts executed separately

  • .oss-scanner/Dockerfile
  • build.sh
  • dev-install.sh
  • examples/excel/cell-formatting.py
  • examples/excel/cell-formatting.sh
  • examples/excel/charts.py
  • examples/excel/charts.sh
  • examples/excel/charts/charts-advanced.py
  • examples/excel/charts/charts-advanced.sh
  • examples/excel/charts/charts-area.py
  • examples/excel/charts/charts-area.sh
  • examples/excel/charts/charts-bar.py
  • examples/excel/charts/charts-bar.sh
  • examples/excel/charts/charts-basic.py
  • examples/excel/charts/charts-basic.sh
  • examples/excel/charts/charts-boxwhisker.py
  • examples/excel/charts/charts-boxwhisker.sh
  • examples/excel/charts/charts-bubble.py
  • examples/excel/charts/charts-bubble.sh
  • examples/excel/charts/charts-column.py
  • examples/excel/charts/charts-column.sh
  • examples/excel/charts/charts-combo.py
  • examples/excel/charts/charts-combo.sh
  • examples/excel/charts/charts-extended.py
  • examples/excel/charts/charts-extended.sh
  • examples/excel/charts/charts-histogram.py
  • examples/excel/charts/charts-histogram.sh
  • examples/excel/charts/charts-line.py
  • examples/excel/charts/charts-line.sh
  • examples/excel/charts/charts-pie.py
  • examples/excel/charts/charts-pie.sh
  • examples/excel/charts/charts-radar.py
  • examples/excel/charts/charts-radar.sh
  • examples/excel/charts/charts-scatter.py
  • examples/excel/charts/charts-scatter.sh
  • examples/excel/charts/charts-stock.py
  • examples/excel/charts/charts-stock.sh
  • examples/excel/charts/charts-waterfall.py
  • examples/excel/charts/charts-waterfall.sh
  • examples/excel/conditional-formatting.py
  • examples/excel/conditional-formatting.sh
  • examples/excel/data-validation.py
  • examples/excel/data-validation.sh
  • examples/excel/pivot-tables.py
  • examples/excel/pivot-tables.sh
  • examples/excel/shapes.py
  • examples/excel/shapes.sh
  • examples/excel/sheet-settings.py
  • examples/excel/sheet-settings.sh
  • examples/excel/slicers.py
  • examples/excel/slicers.sh
  • examples/excel/sparklines.py
  • examples/excel/sparklines.sh
  • examples/excel/workbook-settings.py
  • examples/excel/workbook-settings.sh
  • examples/ppt/3d-model.py
  • examples/ppt/3d-model.sh
  • examples/ppt/animations.py
  • examples/ppt/animations.sh
  • examples/ppt/charts/charts-3d.py
  • examples/ppt/charts/charts-3d.sh
  • examples/ppt/charts/charts-advanced.py
  • examples/ppt/charts/charts-advanced.sh
  • examples/ppt/charts/charts-area.py
  • examples/ppt/charts/charts-area.sh
  • examples/ppt/charts/charts-bar.py
  • examples/ppt/charts/charts-bar.sh
  • examples/ppt/charts/charts-bubble.py
  • examples/ppt/charts/charts-bubble.sh
  • examples/ppt/charts/charts-column.py
  • examples/ppt/charts/charts-column.sh
  • examples/ppt/charts/charts-combo.py
  • examples/ppt/charts/charts-combo.sh
  • examples/ppt/charts/charts-doughnut.py
  • examples/ppt/charts/charts-doughnut.sh
  • examples/ppt/charts/charts-line.py
  • examples/ppt/charts/charts-line.sh
  • examples/ppt/charts/charts-pie.py
  • examples/ppt/charts/charts-pie.sh
  • examples/ppt/charts/charts-radar.py
  • examples/ppt/charts/charts-radar.sh
  • examples/ppt/charts/charts-scatter.py
  • examples/ppt/charts/charts-scatter.sh
  • examples/ppt/charts/charts-stock.py
  • examples/ppt/charts/charts-stock.sh
  • examples/ppt/charts/charts-waterfall.py
  • examples/ppt/charts/charts-waterfall.sh
  • examples/ppt/diagram.py
  • examples/ppt/diagram.sh
  • examples/ppt/ole/ole-embed.py
  • examples/ppt/ole/ole-embed.sh
  • examples/ppt/pictures/pictures-basic.py
  • examples/ppt/pictures/pictures-basic.sh
  • examples/ppt/presentation-settings.py
  • examples/ppt/presentation-settings.sh
  • examples/ppt/presentation.py
  • examples/ppt/presentation.sh
  • examples/ppt/shapes/shapes-basic.py
  • examples/ppt/shapes/shapes-basic.sh
  • examples/ppt/shapes/shapes-connectors.py
  • examples/ppt/shapes/shapes-connectors.sh
  • examples/ppt/shapes/shapes-effects.py
  • examples/ppt/shapes/shapes-effects.sh
  • examples/ppt/shapes/shapes-typography.py
  • examples/ppt/shapes/shapes-typography.sh
  • examples/ppt/tables/tables-basic.py
  • examples/ppt/tables/tables-basic.sh
  • examples/ppt/tables/tables-borders.py
  • examples/ppt/tables/tables-borders.sh
  • examples/ppt/tables/tables-financial.py
  • examples/ppt/tables/tables-financial.sh
  • examples/ppt/tables/tables-merged.py
  • examples/ppt/tables/tables-merged.sh
  • examples/ppt/tables/tables-nested.py
  • examples/ppt/tables/tables-nested.sh
  • examples/ppt/tables/tables-rows-cols.py
  • examples/ppt/tables/tables-rows-cols.sh
  • examples/ppt/tables/tables-styled.py
  • examples/ppt/tables/tables-styled.sh
  • examples/ppt/templates/styles/brand--aura-coffee-dark/build.sh
  • examples/ppt/templates/styles/brand--aura-coffee/build.sh
  • examples/ppt/templates/styles/future--2050-vision/build.sh
  • examples/ppt/templates/styles/lifestyle--cat-philosophy/build.sh
  • examples/ppt/templates/styles/lifestyle--cat-secret-life/build.sh
  • examples/ppt/templates/styles/lifestyle--feline-report/build_ppt.sh
  • examples/ppt/templates/styles/product--geminicli-timetravel/build.sh
  • examples/ppt/templates/styles/productivity--attention-budget/build.sh
  • examples/ppt/templates/styles/science--alien-guide/build.sh
  • examples/ppt/templates/styles/science--space-exploration/build.sh
  • examples/ppt/templates/styles/science--time-travel/build.sh
  • examples/ppt/templates/styles/tech--wildlife-company/build.sh
  • examples/ppt/textboxes/textboxes-advanced.py
  • examples/ppt/textboxes/textboxes-advanced.sh
  • examples/ppt/textboxes/textboxes-basic.py
  • examples/ppt/textboxes/textboxes-basic.sh
  • examples/ppt/transitions/transitions-bands.py
  • examples/ppt/transitions/transitions-bands.sh
  • examples/ppt/transitions/transitions-basic.py
  • examples/ppt/transitions/transitions-basic.sh
  • examples/ppt/transitions/transitions-directional.py
  • examples/ppt/transitions/transitions-directional.sh
  • examples/ppt/transitions/transitions-dynamic.py
  • examples/ppt/transitions/transitions-dynamic.sh
  • examples/ppt/transitions/transitions-modern.py
  • examples/ppt/transitions/transitions-modern.sh
  • examples/ppt/transitions/transitions-morph.py
  • examples/ppt/transitions/transitions-morph.sh
  • examples/ppt/transitions/transitions-random.py
  • examples/ppt/transitions/transitions-random.sh
  • examples/ppt/transitions/transitions-shapes.py
  • examples/ppt/transitions/transitions-shapes.sh
  • examples/ppt/transitions/transitions-timing.py
  • examples/ppt/transitions/transitions-timing.sh
  • examples/ppt/video.py
  • examples/ppt/video.sh
  • examples/word/charts.py
  • examples/word/charts.sh
  • examples/word/content-controls.py
  • examples/word/content-controls.sh
  • examples/word/diagram.py
  • examples/word/diagram.sh
  • examples/word/document-formatting.py
  • examples/word/document-formatting.sh
  • examples/word/fields.py
  • examples/word/fields.sh
  • examples/word/formulas.py
  • examples/word/formulas.sh
  • examples/word/numbering.py
  • examples/word/numbering.sh
  • examples/word/paragraph-formatting.py
  • examples/word/paragraph-formatting.sh
  • examples/word/pictures.py
  • examples/word/pictures.sh
  • examples/word/revisions.py
  • examples/word/revisions.sh
  • examples/word/run-formatting.py
  • examples/word/run-formatting.sh
  • examples/word/sections.py
  • examples/word/sections.sh
  • examples/word/tables.py
  • examples/word/tables.sh
  • examples/word/textbox.py
  • examples/word/textbox.sh
  • install.ps1
  • install.sh
  • npm/install.js
  • npm/lib/install-binary.js
  • npm/officecli.js
  • npm/package.json
  • sdk/node/demo.js
  • sdk/node/index.d.ts
  • sdk/node/index.js
  • sdk/node/package.json
  • sdk/node/smoke.js
  • sdk/python/demo.py
  • sdk/python/officecli.py
  • sdk/python/smoke.py
  • src/officecli/Resources/preview.js
  • src/officecli/Resources/watch-overlay.js
  • src/officecli/Resources/watch-sse-core.js

Files

  • .github/workflows/build.ymlasset9,488 bytes
  • .github/workflows/publish-npm.ymlasset3,591 bytes
  • .github/workflows/publish-pypi.ymlasset2,249 bytes
  • .github/workflows/publish-sdk.ymlasset3,344 bytes
  • .github/workflows/sdk-smoke.ymlasset1,308 bytes
  • .github/workflows/skill-parity.ymlasset1,960 bytes
  • .oss-scanner/Dockerfileruns1,216 bytes
  • .oss-scanner/threat_model.mddoc4,601 bytes
  • CONTRIBUTING.mddoc4,631 bytes
  • CONTRIBUTING.zh.mddoc4,468 bytes
  • LICENSEasset11,375 bytes
  • NOTICEasset455 bytes
  • README.mddoc41,030 bytes
  • README_ja.mddoc41,021 bytes
  • README_ko.mddoc37,208 bytes
  • README_zh.mddoc35,645 bytes
  • SECURITY.mddoc879 bytes
  • SKILL.mdcore25,974 bytes
  • SKILL.mdcore25,974 bytes
  • SKILL.mdcore25,974 bytes
  • SKILL.mdcore25,974 bytes
  • SKILL.mdcore25,974 bytes
  • SKILL.mdcore25,974 bytes
  • SKILL.mdcore25,974 bytes
  • SKILL.mdcore25,974 bytes
  • SKILL.mdcore25,974 bytes
  • SKILL.mdcore25,974 bytes
  • SKILL.mdcore25,974 bytes
  • SKILL.mdcore25,974 bytes
  • SKILL.mdcore25,974 bytes
  • SKILL.mdcore25,974 bytes
  • SKILL.mdcore25,974 bytes
  • SKILL.mdcore25,974 bytes
  • SKILL.mdcore25,974 bytes
  • SKILL.mdcore25,974 bytes
  • SKILL.mdcore25,974 bytes
  • SKILL.mdcore25,974 bytes
  • SKILL.mdcore25,974 bytes
  • SKILL.mdcore25,974 bytes
  • SKILL.mdcore25,974 bytes
  • SKILL.mdcore25,974 bytes
  • SKILL.mdcore25,974 bytes
  • SKILL.mdcore25,974 bytes
  • THIRD-PARTY-NOTICES.txtdoc2,179 bytes
  • assets/blackhole.gifasset2,900,881 bytes
  • assets/cat.gifasset338,830 bytes
  • assets/designwhatmovesyou.gifasset602,032 bytes
  • assets/efforless.gifasset611,284 bytes
  • assets/first-ppt-aionui.gifasset576,932 bytes
  • assets/hero-en.pngasset338,870 bytes
  • assets/hero-zh.pngasset337,740 bytes
  • assets/horizon.gifasset604,482 bytes
  • assets/mars.gifasset248,277 bytes
  • assets/moridian.gifasset396,168 bytes
  • assets/move.gifasset670,441 bytes
  • assets/ppt-process.webpasset6,849,860 bytes
  • assets/saturn+sun.gifasset2,270,232 bytes
  • assets/shiba.gifasset1,614,951 bytes
  • assets/showcase/academic-paper.docxasset18,420 bytes
  • assets/showcase/academic-paper.pngasset70,896 bytes
  • assets/showcase/annual-report.docxasset10,367 bytes
  • assets/showcase/annual-report.pngasset12,125 bytes
  • assets/showcase/budget-tracker.pngasset24,716 bytes
  • assets/showcase/budget-tracker.xlsxasset19,794 bytes
  • assets/showcase/employee-handbook.docxasset17,656 bytes
  • assets/showcase/employee-handbook.pngasset10,086 bytes
  • assets/showcase/excel1.gifasset2,010,541 bytes
  • assets/showcase/excel2.gifasset1,483,527 bytes
  • assets/showcase/excel3.gifasset1,291,197 bytes
  • assets/showcase/fitness-planner.xlsxasset21,517 bytes
  • assets/showcase/gradebook.pngasset30,784 bytes
  • assets/showcase/gradebook.xlsxasset18,699 bytes
  • assets/showcase/product-catalog.xlsxasset7,239 bytes
  • assets/showcase/project-proposal.docxasset7,986 bytes
  • assets/showcase/project-proposal.pngasset38,372 bytes
  • assets/showcase/restaurant-menu.docxasset12,116 bytes
  • assets/showcase/sales-dashboard.pngasset12,152 bytes
  • assets/showcase/sales-dashboard.xlsxasset8,377 bytes
  • assets/showcase/word1.gifasset2,755,335 bytes
  • assets/showcase/word2.gifasset1,881,296 bytes
  • assets/showcase/word3.gifasset2,417,650 bytes
  • build.shruns3,959 bytes
  • build/officecli.entitlementsasset247 bytes
  • dev-install.shruns2,689 bytes
  • examples/Alien_Guide.pptxasset14,813 bytes
  • examples/Cat-Secret-Life.pptxasset24,321 bytes
  • examples/README.mddoc16,811 bytes
  • examples/budget_review_v2.pptxasset24,536 bytes
  • examples/excel/cell-formatting.mddoc8,062 bytes
  • examples/excel/cell-formatting.pyruns14,423 bytes
  • examples/excel/cell-formatting.shruns12,910 bytes
  • examples/excel/cell-formatting.xlsxasset9,467 bytes
  • examples/excel/charts.mddoc2,504 bytes
  • examples/excel/charts.pyruns17,277 bytes
  • examples/excel/charts.shruns18,418 bytes
  • examples/excel/charts.xlsxasset21,874 bytes
  • examples/excel/charts/charts-advanced.mddoc5,575 bytes
  • examples/excel/charts/charts-advanced.pyruns12,247 bytes
  • examples/excel/charts/charts-advanced.shruns10,774 bytes
  • examples/excel/charts/charts-advanced.xlsxasset21,166 bytes
  • examples/excel/charts/charts-area.mddoc8,218 bytes
  • examples/excel/charts/charts-area.pyruns19,389 bytes
  • examples/excel/charts/charts-area.shruns17,151 bytes
  • examples/excel/charts/charts-area.xlsxasset34,999 bytes
  • examples/excel/charts/charts-bar.mddoc11,885 bytes
  • examples/excel/charts/charts-bar.pyruns21,723 bytes
  • examples/excel/charts/charts-bar.shruns21,135 bytes
  • examples/excel/charts/charts-bar.xlsxasset46,300 bytes
  • examples/excel/charts/charts-basic.mddoc9,430 bytes
  • examples/excel/charts/charts-basic.pyruns25,274 bytes
  • examples/excel/charts/charts-basic.shruns21,227 bytes
  • examples/excel/charts/charts-basic.xlsxasset50,610 bytes
  • examples/excel/charts/charts-boxwhisker.mddoc7,246 bytes
  • examples/excel/charts/charts-boxwhisker.pyruns10,571 bytes
  • examples/excel/charts/charts-boxwhisker.shruns8,467 bytes
  • examples/excel/charts/charts-boxwhisker.xlsxasset32,785 bytes
  • examples/excel/charts/charts-bubble.mddoc6,298 bytes
  • examples/excel/charts/charts-bubble.pyruns13,212 bytes
  • examples/excel/charts/charts-bubble.shruns8,812 bytes
  • examples/excel/charts/charts-bubble.xlsxasset23,238 bytes
  • examples/excel/charts/charts-column.mddoc10,527 bytes
  • examples/excel/charts/charts-column.pyruns25,718 bytes
  • examples/excel/charts/charts-column.shruns22,450 bytes
  • examples/excel/charts/charts-column.xlsxasset48,649 bytes
  • examples/excel/charts/charts-combo.mddoc4,860 bytes
  • examples/excel/charts/charts-combo.pyruns13,899 bytes
  • examples/excel/charts/charts-combo.shruns11,619 bytes
  • examples/excel/charts/charts-combo.xlsxasset27,885 bytes
  • examples/excel/charts/charts-extended.mddoc15,744 bytes
  • examples/excel/charts/charts-extended.pyruns19,175 bytes
  • examples/excel/charts/charts-extended.shruns14,116 bytes
  • examples/excel/charts/charts-extended.xlsxasset58,995 bytes
  • examples/excel/charts/charts-histogram.mddoc13,549 bytes
  • examples/excel/charts/charts-histogram.pyruns29,545 bytes
  • examples/excel/charts/charts-histogram.shruns25,400 bytes
  • examples/excel/charts/charts-histogram.xlsxasset138,447 bytes
  • examples/excel/charts/charts-line.mddoc13,867 bytes
  • examples/excel/charts/charts-line.pyruns28,202 bytes
  • examples/excel/charts/charts-line.shruns29,025 bytes
  • examples/excel/charts/charts-line.xlsxasset56,038 bytes
  • examples/excel/charts/charts-pie.mddoc6,398 bytes
  • examples/excel/charts/charts-pie.pyruns12,132 bytes
  • examples/excel/charts/charts-pie.shruns8,659 bytes
  • examples/excel/charts/charts-pie.xlsxasset17,867 bytes
  • examples/excel/charts/charts-radar.mddoc5,876 bytes
  • examples/excel/charts/charts-radar.pyruns13,977 bytes
  • examples/excel/charts/charts-radar.shruns10,786 bytes
  • examples/excel/charts/charts-radar.xlsxasset26,681 bytes
  • examples/excel/charts/charts-scatter.mddoc7,768 bytes
  • examples/excel/charts/charts-scatter.pyruns21,073 bytes
  • examples/excel/charts/charts-scatter.shruns16,436 bytes
  • examples/excel/charts/charts-scatter.xlsxasset37,336 bytes
  • examples/excel/charts/charts-stock.mddoc3,827 bytes
  • examples/excel/charts/charts-stock.pyruns11,858 bytes
  • examples/excel/charts/charts-stock.shruns8,810 bytes
  • examples/excel/charts/charts-stock.xlsxasset21,946 bytes
  • examples/excel/charts/charts-waterfall.mddoc6,180 bytes
  • examples/excel/charts/charts-waterfall.pyruns12,510 bytes
  • examples/excel/charts/charts-waterfall.shruns11,288 bytes
  • examples/excel/charts/charts-waterfall.xlsxasset28,249 bytes
  • examples/excel/conditional-formatting.mddoc7,942 bytes
  • examples/excel/conditional-formatting.pyruns11,979 bytes
  • examples/excel/conditional-formatting.shruns6,382 bytes
  • examples/excel/conditional-formatting.xlsxasset9,144 bytes
  • examples/excel/data-validation.mddoc8,634 bytes
  • examples/excel/data-validation.pyruns11,467 bytes
  • examples/excel/data-validation.shruns9,124 bytes
  • examples/excel/data-validation.xlsxasset8,019 bytes
  • examples/excel/pivot-tables.mddoc12,536 bytes
  • examples/excel/pivot-tables.pyruns32,187 bytes
  • examples/excel/pivot-tables.shruns16,859 bytes
  • examples/excel/pivot-tables.xlsxasset64,325 bytes
  • examples/excel/shapes.mddoc7,158 bytes
  • examples/excel/shapes.pyruns10,969 bytes
  • examples/excel/shapes.shruns12,006 bytes
  • examples/excel/shapes.xlsxasset7,012 bytes
  • examples/excel/sheet-settings.mddoc6,112 bytes
  • examples/excel/sheet-settings.pyruns6,944 bytes
  • examples/excel/sheet-settings.shruns6,065 bytes
  • examples/excel/sheet-settings.xlsxasset7,382 bytes
  • examples/excel/slicers.mddoc5,427 bytes
  • examples/excel/slicers.pyruns7,815 bytes
  • examples/excel/slicers.shruns4,734 bytes
  • examples/excel/slicers.xlsxasset11,058 bytes
  • examples/excel/sparklines.mddoc5,789 bytes
  • examples/excel/sparklines.pyruns6,592 bytes
  • examples/excel/sparklines.shruns4,559 bytes
  • examples/excel/sparklines.xlsxasset5,505 bytes
  • examples/excel/workbook-settings.mddoc4,192 bytes
  • examples/excel/workbook-settings.pyruns5,187 bytes
  • examples/excel/workbook-settings.shruns3,460 bytes
  • examples/excel/workbook-settings.xlsxasset4,849 bytes
  • examples/ppt/3d-model.mddoc8,272 bytes
  • examples/ppt/3d-model.pptxasset34,371,188 bytes
  • examples/ppt/3d-model.pyruns9,700 bytes
  • examples/ppt/3d-model.shruns9,896 bytes
  • examples/ppt/animations.mddoc9,634 bytes
  • examples/ppt/animations.pptxasset22,844 bytes
  • examples/ppt/animations.pyruns13,502 bytes
  • examples/ppt/animations.shruns14,160 bytes
  • examples/ppt/charts/charts-3d.mddoc8,036 bytes
  • examples/ppt/charts/charts-3d.pptxasset48,121 bytes
  • examples/ppt/charts/charts-3d.pyruns8,550 bytes
  • examples/ppt/charts/charts-3d.shruns12,259 bytes
  • examples/ppt/charts/charts-advanced.mddoc13,992 bytes
  • examples/ppt/charts/charts-advanced.pptxasset45,522 bytes
  • examples/ppt/charts/charts-advanced.pyruns17,067 bytes
  • examples/ppt/charts/charts-advanced.shruns17,332 bytes
  • examples/ppt/charts/charts-area.mddoc11,831 bytes
  • examples/ppt/charts/charts-area.pptxasset48,813 bytes
  • examples/ppt/charts/charts-area.pyruns11,048 bytes
  • examples/ppt/charts/charts-area.shruns14,049 bytes
  • examples/ppt/charts/charts-bar.mddoc12,703 bytes
  • examples/ppt/charts/charts-bar.pptxasset49,203 bytes
  • examples/ppt/charts/charts-bar.pyruns11,763 bytes
  • examples/ppt/charts/charts-bar.shruns13,452 bytes
  • examples/ppt/charts/charts-bubble.mddoc8,665 bytes
  • examples/ppt/charts/charts-bubble.pptxasset48,028 bytes
  • examples/ppt/charts/charts-bubble.pyruns10,006 bytes
  • examples/ppt/charts/charts-bubble.shruns10,412 bytes
  • examples/ppt/charts/charts-column.mddoc16,170 bytes
  • examples/ppt/charts/charts-column.pptxasset49,602 bytes
  • examples/ppt/charts/charts-column.pyruns15,320 bytes
  • examples/ppt/charts/charts-column.shruns15,234 bytes
  • examples/ppt/charts/charts-combo.mddoc12,156 bytes
  • examples/ppt/charts/charts-combo.pptxasset50,769 bytes
  • examples/ppt/charts/charts-combo.pyruns12,219 bytes
  • examples/ppt/charts/charts-combo.shruns13,890 bytes
  • examples/ppt/charts/charts-doughnut.mddoc9,724 bytes
  • examples/ppt/charts/charts-doughnut.pptxasset40,310 bytes
  • examples/ppt/charts/charts-doughnut.pyruns11,027 bytes
  • examples/ppt/charts/charts-doughnut.shruns13,436 bytes
  • examples/ppt/charts/charts-line.mddoc11,794 bytes
  • examples/ppt/charts/charts-line.pptxasset48,776 bytes
  • examples/ppt/charts/charts-line.pyruns11,231 bytes
  • examples/ppt/charts/charts-line.shruns13,445 bytes
  • examples/ppt/charts/charts-pie.mddoc9,614 bytes
  • examples/ppt/charts/charts-pie.pptxasset39,808 bytes
  • examples/ppt/charts/charts-pie.pyruns9,717 bytes
  • examples/ppt/charts/charts-pie.shruns12,683 bytes
  • examples/ppt/charts/charts-radar.mddoc11,471 bytes
  • examples/ppt/charts/charts-radar.pptxasset49,202 bytes
  • examples/ppt/charts/charts-radar.pyruns11,884 bytes
  • examples/ppt/charts/charts-radar.shruns13,817 bytes
  • examples/ppt/charts/charts-scatter.mddoc12,126 bytes
  • examples/ppt/charts/charts-scatter.pptxasset52,204 bytes
  • examples/ppt/charts/charts-scatter.pyruns13,349 bytes
  • examples/ppt/charts/charts-scatter.shruns15,460 bytes
  • examples/ppt/charts/charts-stock.mddoc11,016 bytes
  • examples/ppt/charts/charts-stock.pptxasset50,623 bytes
  • examples/ppt/charts/charts-stock.pyruns10,288 bytes
  • examples/ppt/charts/charts-stock.shruns12,901 bytes
  • examples/ppt/charts/charts-waterfall.mddoc10,682 bytes
  • examples/ppt/charts/charts-waterfall.pptxasset50,207 bytes
  • examples/ppt/charts/charts-waterfall.pyruns10,048 bytes
  • examples/ppt/charts/charts-waterfall.shruns12,378 bytes
  • examples/ppt/diagram.mddoc7,876 bytes
  • examples/ppt/diagram.pptxasset948,285 bytes
  • examples/ppt/diagram.pyruns9,434 bytes
  • examples/ppt/diagram.shruns11,456 bytes
  • examples/ppt/models/sun.glbasset4,343,656 bytes
  • examples/ppt/ole/data.docxasset5,236 bytes
  • examples/ppt/ole/data.xlsxasset3,934 bytes
  • examples/ppt/ole/ole-embed.mddoc6,644 bytes
  • examples/ppt/ole/ole-embed.pptxasset32,270 bytes
  • examples/ppt/ole/ole-embed.pyruns8,214 bytes
  • examples/ppt/ole/ole-embed.shruns9,040 bytes
  • examples/ppt/ole/thumb-docx.pngasset2,682 bytes
  • examples/ppt/ole/thumb-xlsx.pngasset2,325 bytes
  • examples/ppt/pictures/pictures-basic.mddoc12,278 bytes
  • examples/ppt/pictures/pictures-basic.pptxasset400,508 bytes
  • examples/ppt/pictures/pictures-basic.pyruns15,452 bytes
  • examples/ppt/pictures/pictures-basic.shruns14,417 bytes
  • examples/ppt/pie.mmdasset117 bytes
  • examples/ppt/presentation-settings.mddoc4,540 bytes
  • examples/ppt/presentation-settings.pptxasset10,390 bytes
  • examples/ppt/presentation-settings.pyruns4,641 bytes
  • examples/ppt/presentation-settings.shruns3,036 bytes
  • examples/ppt/presentation.mddoc17,184 bytes
  • examples/ppt/presentation.pptxasset17,831 bytes
  • examples/ppt/presentation.pyruns31,770 bytes
  • examples/ppt/presentation.shruns31,279 bytes
  • examples/ppt/shapes/shapes-basic.mddoc15,985 bytes
  • examples/ppt/shapes/shapes-basic.pptxasset16,121 bytes
  • examples/ppt/shapes/shapes-basic.pyruns14,868 bytes
  • examples/ppt/shapes/shapes-basic.shruns14,315 bytes
  • examples/ppt/shapes/shapes-connectors.mddoc11,377 bytes
  • examples/ppt/shapes/shapes-connectors.pptxasset14,696 bytes
  • examples/ppt/shapes/shapes-connectors.pyruns12,254 bytes
  • examples/ppt/shapes/shapes-connectors.shruns12,779 bytes
  • examples/ppt/shapes/shapes-effects.mddoc12,585 bytes
  • examples/ppt/shapes/shapes-effects.pptxasset16,497 bytes
  • examples/ppt/shapes/shapes-effects.pyruns12,729 bytes
  • examples/ppt/shapes/shapes-effects.shruns14,014 bytes
  • examples/ppt/shapes/shapes-typography.mddoc15,395 bytes
  • examples/ppt/shapes/shapes-typography.pptxasset16,214 bytes
  • examples/ppt/shapes/shapes-typography.pyruns14,879 bytes
  • examples/ppt/shapes/shapes-typography.shruns15,938 bytes
  • examples/ppt/tables/tables-basic.mddoc10,730 bytes
  • examples/ppt/tables/tables-basic.pptxasset16,718 bytes
  • examples/ppt/tables/tables-basic.pyruns11,327 bytes
  • examples/ppt/tables/tables-basic.shruns11,179 bytes
  • examples/ppt/tables/tables-borders.mddoc8,721 bytes
  • examples/ppt/tables/tables-borders.pptxasset14,684 bytes
  • examples/ppt/tables/tables-borders.pyruns7,484 bytes
  • examples/ppt/tables/tables-borders.shruns6,161 bytes
  • examples/ppt/tables/tables-financial.mddoc8,508 bytes
  • examples/ppt/tables/tables-financial.pptxasset14,264 bytes
  • examples/ppt/tables/tables-financial.pyruns7,319 bytes
  • examples/ppt/tables/tables-financial.shruns6,408 bytes
  • examples/ppt/tables/tables-merged.mddoc8,915 bytes
  • examples/ppt/tables/tables-merged.pptxasset11,806 bytes
  • examples/ppt/tables/tables-merged.pyruns7,082 bytes
  • examples/ppt/tables/tables-merged.shruns6,287 bytes
  • examples/ppt/tables/tables-nested.mddoc6,743 bytes
  • examples/ppt/tables/tables-nested.pptxasset15,244 bytes
  • examples/ppt/tables/tables-nested.pyruns9,241 bytes
  • examples/ppt/tables/tables-nested.shruns10,776 bytes
  • examples/ppt/tables/tables-rows-cols.mddoc10,390 bytes
  • examples/ppt/tables/tables-rows-cols.pptxasset14,517 bytes
  • examples/ppt/tables/tables-rows-cols.pyruns12,034 bytes
  • examples/ppt/tables/tables-rows-cols.shruns11,399 bytes
  • examples/ppt/tables/tables-styled.mddoc6,807 bytes
  • examples/ppt/tables/tables-styled.pptxasset23,114 bytes
  • examples/ppt/tables/tables-styled.pyruns5,709 bytes
  • examples/ppt/tables/tables-styled.shruns4,741 bytes
  • examples/ppt/templates/README.mddoc4,490 bytes
  • examples/ppt/templates/styles/brand--aura-coffee-dark/AURA_COFFEE.pptxasset19,003 bytes
  • examples/ppt/templates/styles/brand--aura-coffee-dark/build.shruns8,443 bytes
  • examples/ppt/templates/styles/brand--aura-coffee/aura_coffee.pptxasset19,647 bytes
  • examples/ppt/templates/styles/brand--aura-coffee/build.shruns14,190 bytes
  • examples/ppt/templates/styles/future--2050-vision/build.shruns14,983 bytes
  • examples/ppt/templates/styles/future--2050-vision/未来已来_2050.pptxasset21,195 bytes
  • examples/ppt/templates/styles/lifestyle--cat-philosophy/build.shruns12,427 bytes
  • examples/ppt/templates/styles/lifestyle--cat-philosophy/cat_philosophy.pptxasset19,552 bytes
  • examples/ppt/templates/styles/lifestyle--cat-secret-life/Cat-Secret-Life.pptxasset24,321 bytes
  • examples/ppt/templates/styles/lifestyle--cat-secret-life/build.shruns17,555 bytes
  • examples/ppt/templates/styles/lifestyle--feline-report/Feline_Report.pptxasset11,878 bytes
  • examples/ppt/templates/styles/lifestyle--feline-report/build_ppt.shruns4,250 bytes
  • examples/ppt/templates/styles/product--aionui-promo/AionUI-推广.pptxasset19,289 bytes
  • examples/ppt/templates/styles/product--aionui-promo/outline.mddoc1,265 bytes
  • examples/ppt/templates/styles/product--geminicli-timetravel/GeminiCLI-TimeTravel.pptxasset22,005 bytes
  • examples/ppt/templates/styles/product--geminicli-timetravel/build.shruns15,187 bytes
  • examples/ppt/templates/styles/productivity--attention-budget/build.shruns33,578 bytes
  • examples/ppt/templates/styles/productivity--attention-budget/注意力预算-把手机时间变成创造时间.pptxasset36,292 bytes
  • examples/ppt/templates/styles/science--alien-guide/Alien_Guide.pptxasset14,813 bytes
  • examples/ppt/templates/styles/science--alien-guide/build.shruns8,896 bytes
  • examples/ppt/templates/styles/science--mars-settlement/Mars-Settlement-Guide.pptxasset18,626 bytes
  • examples/ppt/templates/styles/science--mars-settlement/build.jsonasset16,716 bytes
  • examples/ppt/templates/styles/science--space-exploration/build.shruns28,097 bytes
  • examples/ppt/templates/styles/science--space-exploration/太空探索历程.pptxasset22,120 bytes
  • examples/ppt/templates/styles/science--time-travel/Time_Travel.pptxasset20,086 bytes
  • examples/ppt/templates/styles/science--time-travel/build.shruns12,536 bytes
  • examples/ppt/templates/styles/tech--wildlife-company/build.shruns6,163 bytes
  • examples/ppt/templates/styles/tech--wildlife-company/野生动物科技公司.pptxasset21,955 bytes
  • examples/ppt/textboxes/textboxes-advanced.mddoc17,482 bytes
  • examples/ppt/textboxes/textboxes-advanced.pptxasset16,876 bytes
  • examples/ppt/textboxes/textboxes-advanced.pyruns16,128 bytes
  • examples/ppt/textboxes/textboxes-advanced.shruns18,522 bytes
  • examples/ppt/textboxes/textboxes-basic.mddoc10,278 bytes
  • examples/ppt/textboxes/textboxes-basic.pptxasset13,863 bytes
  • examples/ppt/textboxes/textboxes-basic.pyruns9,309 bytes
  • examples/ppt/textboxes/textboxes-basic.shruns9,658 bytes
  • examples/ppt/transitions/transitions-bands.mddoc5,084 bytes
  • examples/ppt/transitions/transitions-bands.pptxasset29,608 bytes
  • examples/ppt/transitions/transitions-bands.pyruns4,152 bytes
  • examples/ppt/transitions/transitions-bands.shruns2,883 bytes
  • examples/ppt/transitions/transitions-basic.mddoc5,517 bytes
  • examples/ppt/transitions/transitions-basic.pptxasset14,959 bytes
  • examples/ppt/transitions/transitions-basic.pyruns3,497 bytes
  • examples/ppt/transitions/transitions-basic.shruns2,176 bytes
  • examples/ppt/transitions/transitions-directional.mddoc4,551 bytes
  • examples/ppt/transitions/transitions-directional.pptxasset33,300 bytes
  • examples/ppt/transitions/transitions-directional.pyruns3,738 bytes
  • examples/ppt/transitions/transitions-directional.shruns2,383 bytes
  • examples/ppt/transitions/transitions-dynamic.mddoc4,969 bytes
  • examples/ppt/transitions/transitions-dynamic.pptxasset36,421 bytes
  • examples/ppt/transitions/transitions-dynamic.pyruns4,354 bytes
  • examples/ppt/transitions/transitions-dynamic.shruns2,776 bytes
  • examples/ppt/transitions/transitions-modern.mddoc5,029 bytes
  • examples/ppt/transitions/transitions-modern.pptxasset29,988 bytes
  • examples/ppt/transitions/transitions-modern.pyruns3,888 bytes
  • examples/ppt/transitions/transitions-modern.shruns2,261 bytes
  • examples/ppt/transitions/transitions-morph.mddoc6,262 bytes
  • examples/ppt/transitions/transitions-morph.pptxasset13,529 bytes
  • examples/ppt/transitions/transitions-morph.pyruns4,529 bytes
  • examples/ppt/transitions/transitions-morph.shruns3,909 bytes
  • examples/ppt/transitions/transitions-random.mddoc4,009 bytes
  • examples/ppt/transitions/transitions-random.pptxasset12,860 bytes
  • examples/ppt/transitions/transitions-random.pyruns3,092 bytes
  • examples/ppt/transitions/transitions-random.shruns1,800 bytes
  • examples/ppt/transitions/transitions-shapes.mddoc4,903 bytes
  • examples/ppt/transitions/transitions-shapes.pptxasset22,834 bytes
  • examples/ppt/transitions/transitions-shapes.pyruns3,568 bytes
  • examples/ppt/transitions/transitions-shapes.shruns2,119 bytes
  • examples/ppt/transitions/transitions-timing.mddoc5,379 bytes
  • examples/ppt/transitions/transitions-timing.pptxasset17,877 bytes
  • examples/ppt/transitions/transitions-timing.pyruns5,288 bytes
  • examples/ppt/transitions/transitions-timing.shruns3,516 bytes
  • examples/ppt/video.mddoc6,185 bytes
  • examples/ppt/video.pptxasset143,611 bytes
  • examples/ppt/video.pyruns8,617 bytes
  • examples/ppt/video.shruns4,915 bytes
  • examples/product_launch_morph.pptxasset15,388 bytes
  • examples/word/charts.docxasset26,224 bytes
  • examples/word/charts.mddoc10,301 bytes
  • examples/word/charts.pyruns13,702 bytes
  • examples/word/charts.shruns12,711 bytes
  • examples/word/content-controls.docxasset6,153 bytes
  • examples/word/content-controls.mddoc6,933 bytes
  • examples/word/content-controls.pyruns8,554 bytes
  • examples/word/content-controls.shruns6,015 bytes
  • examples/word/diagram.docxasset922,012 bytes
  • examples/word/diagram.mddoc6,042 bytes
  • examples/word/diagram.pyruns7,717 bytes
  • examples/word/diagram.shruns8,403 bytes
  • examples/word/document-formatting.docxasset5,855 bytes
  • examples/word/document-formatting.mddoc6,204 bytes
  • examples/word/document-formatting.pyruns8,207 bytes
  • examples/word/document-formatting.shruns4,449 bytes
  • examples/word/fields.docxasset6,933 bytes
  • examples/word/fields.mddoc8,742 bytes
  • examples/word/fields.pyruns10,414 bytes
  • examples/word/fields.shruns10,444 bytes
  • examples/word/formulas.docxasset13,896 bytes
  • examples/word/formulas.mddoc23,658 bytes
  • examples/word/formulas.pyruns18,276 bytes
  • examples/word/formulas.shruns22,912 bytes
  • examples/word/numbering.docxasset7,353 bytes
  • examples/word/numbering.mddoc11,913 bytes
  • examples/word/numbering.pyruns12,485 bytes
  • examples/word/numbering.shruns15,878 bytes
  • examples/word/paragraph-formatting.docxasset8,261 bytes
  • examples/word/paragraph-formatting.mddoc18,443 bytes
  • examples/word/paragraph-formatting.pyruns10,203 bytes
  • examples/word/paragraph-formatting.shruns10,713 bytes
  • examples/word/pictures-banner.pngasset2,111 bytes
  • examples/word/pictures-logo.pngasset3,131 bytes
  • examples/word/pictures.docxasset25,715 bytes
  • examples/word/pictures.mddoc8,123 bytes
  • examples/word/pictures.pyruns10,104 bytes
  • examples/word/pictures.shruns12,658 bytes
  • examples/word/pie.mmdasset117 bytes
  • examples/word/revisions.docxasset7,238 bytes
  • examples/word/revisions.mddoc12,733 bytes
  • examples/word/revisions.pyruns16,487 bytes
  • examples/word/revisions.shruns23,583 bytes
  • examples/word/run-formatting.docxasset7,351 bytes
  • examples/word/run-formatting.mddoc15,070 bytes
  • examples/word/run-formatting.pyruns8,518 bytes
  • examples/word/run-formatting.shruns9,313 bytes
  • examples/word/sections.docxasset9,133 bytes
  • examples/word/sections.mddoc7,378 bytes
  • examples/word/sections.pyruns14,895 bytes
  • examples/word/sections.shruns11,928 bytes
  • examples/word/tables.docxasset8,542 bytes
  • examples/word/tables.mddoc12,590 bytes
  • examples/word/tables.pptxasset12,366 bytes
  • examples/word/tables.pyruns17,053 bytes
  • examples/word/tables.shruns26,917 bytes
  • examples/word/tables.xlsxasset5,405 bytes
  • examples/word/textbox.docxasset8,618 bytes
  • examples/word/textbox.mddoc11,379 bytes
  • examples/word/textbox.pyruns19,195 bytes
  • examples/word/textbox.shruns20,702 bytes
  • install.ps1runs8,646 bytes
  • install.shruns10,148 bytes
  • npm/README.mddoc1,034 bytes
  • npm/install.jsruns919 bytes
  • npm/lib/install-binary.jsruns8,370 bytes
  • npm/officecli.jsruns1,284 bytes
  • npm/package.jsonruns1,093 bytes
  • plugins/plugin-protocol.mddoc34,611 bytes
  • schemas/README.mddoc1,476 bytes
  • schemas/help/_schema.jsonasset9,884 bytes
  • schemas/help/_shared/chart-axis.jsonasset4,995 bytes
  • schemas/help/_shared/chart-axis.pptx-xlsx.jsonasset1,298 bytes
  • schemas/help/_shared/chart-series.jsonasset8,017 bytes
  • schemas/help/_shared/chart-series.pptx-xlsx.jsonasset692 bytes
  • schemas/help/_shared/chart.docx-pptx.jsonasset1,041 bytes
  • schemas/help/_shared/chart.docx-xlsx.jsonasset349 bytes
  • schemas/help/_shared/chart.jsonasset41,037 bytes
  • schemas/help/_shared/chart.pptx-xlsx.jsonasset1,348 bytes
  • schemas/help/_shared/comment.docx-pptx.jsonasset783 bytes
  • schemas/help/_shared/comment.jsonasset712 bytes
  • schemas/help/_shared/equation.jsonasset568 bytes
  • schemas/help/_shared/hyperlink.jsonasset104 bytes
  • schemas/help/_shared/ole.docx-pptx.jsonasset670 bytes
  • schemas/help/_shared/ole.jsonasset3,011 bytes
  • schemas/help/_shared/ole.pptx-xlsx.jsonasset786 bytes
  • schemas/help/_shared/paragraph.jsonasset1,706 bytes
  • schemas/help/_shared/picture.docx-pptx.jsonasset345 bytes
  • schemas/help/_shared/picture.docx-xlsx.jsonasset444 bytes
  • schemas/help/_shared/picture.jsonasset2,244 bytes
  • schemas/help/_shared/picture.pptx-xlsx.jsonasset2,197 bytes
  • schemas/help/_shared/root-metadata.jsonasset7,631 bytes
  • schemas/help/_shared/run.docx-pptx.jsonasset1,886 bytes
  • schemas/help/_shared/run.docx-xlsx.jsonasset730 bytes
  • schemas/help/_shared/run.jsonasset2,384 bytes
  • schemas/help/_shared/shape.jsonasset8,154 bytes
  • schemas/help/_shared/table-cell.jsonasset5,535 bytes
  • schemas/help/_shared/table-row.jsonasset1,043 bytes
  • schemas/help/_shared/table.docx-pptx.jsonasset5,976 bytes
  • schemas/help/_shared/table.jsonasset861 bytes
  • schemas/help/_shared/table.pptx-xlsx.jsonasset429 bytes
  • schemas/help/docx/abstractNum.jsonasset9,849 bytes
  • schemas/help/docx/body.jsonasset796 bytes
  • schemas/help/docx/bookmark.jsonasset1,609 bytes
  • schemas/help/docx/bookmarkEnd.jsonasset1,942 bytes
  • schemas/help/docx/chart-axis.jsonasset849 bytes
  • schemas/help/docx/chart-series.jsonasset710 bytes
  • schemas/help/docx/chart.jsonasset1,229 bytes
  • schemas/help/docx/comment.jsonasset3,662 bytes
  • schemas/help/docx/diagram.jsonasset7,566 bytes
  • schemas/help/docx/document.jsonasset20,407 bytes
  • schemas/help/docx/endnote.jsonasset4,145 bytes
  • schemas/help/docx/equation.jsonasset1,018 bytes
  • schemas/help/docx/field.jsonasset7,227 bytes
  • schemas/help/docx/fieldchar.jsonasset1,122 bytes
  • schemas/help/docx/footer.jsonasset4,717 bytes
  • schemas/help/docx/footnote.jsonasset4,315 bytes
  • schemas/help/docx/formfield.jsonasset2,546 bytes
  • schemas/help/docx/header.jsonasset5,018 bytes
  • schemas/help/docx/hyperlink.jsonasset5,749 bytes
  • schemas/help/docx/instrtext.jsonasset1,336 bytes
  • schemas/help/docx/level.jsonasset6,101 bytes
  • schemas/help/docx/markdown.jsonasset2,894 bytes
  • schemas/help/docx/num.jsonasset4,813 bytes
  • schemas/help/docx/numbering.jsonasset1,461 bytes
  • schemas/help/docx/ole.jsonasset2,219 bytes
  • schemas/help/docx/pagebreak.jsonasset1,536 bytes
  • schemas/help/docx/paragraph.jsonasset49,559 bytes
  • schemas/help/docx/permStart.jsonasset2,337 bytes
  • schemas/help/docx/picture.jsonasset9,322 bytes
  • schemas/help/docx/ptab.jsonasset1,794 bytes
  • schemas/help/docx/raw.jsonasset1,712 bytes
  • schemas/help/docx/revision.jsonasset13,735 bytes
  • schemas/help/docx/run.jsonasset26,049 bytes
  • schemas/help/docx/sdt.jsonasset7,455 bytes
  • schemas/help/docx/section.jsonasset19,278 bytes
  • schemas/help/docx/shape.jsonasset5,074 bytes
  • schemas/help/docx/style.jsonasset28,742 bytes
  • schemas/help/docx/styles.jsonasset742 bytes
  • schemas/help/docx/tab.jsonasset2,707 bytes
  • schemas/help/docx/table-cell.jsonasset13,862 bytes
  • schemas/help/docx/table-column.jsonasset1,382 bytes
  • schemas/help/docx/table-row.jsonasset4,707 bytes
  • schemas/help/docx/table.jsonasset5,974 bytes
  • schemas/help/docx/textbox.jsonasset6,816 bytes
  • schemas/help/docx/toc.jsonasset1,624 bytes
  • schemas/help/docx/watermark.jsonasset2,845 bytes
  • schemas/help/pptx/animation.jsonasset9,504 bytes
  • schemas/help/pptx/chart-axis.jsonasset944 bytes
  • schemas/help/pptx/chart-series.jsonasset1,999 bytes
  • schemas/help/pptx/chart.jsonasset4,931 bytes
  • schemas/help/pptx/comment.jsonasset1,752 bytes
  • schemas/help/pptx/connector.jsonasset11,483 bytes
  • schemas/help/pptx/diagram.jsonasset7,585 bytes
  • schemas/help/pptx/equation.jsonasset2,331 bytes
  • schemas/help/pptx/group.jsonasset4,321 bytes
  • schemas/help/pptx/hyperlink.jsonasset1,570 bytes
  • schemas/help/pptx/linebreak.jsonasset834 bytes
  • schemas/help/pptx/media.jsonasset3,661 bytes
  • schemas/help/pptx/model3d.jsonasset2,307 bytes
  • schemas/help/pptx/moderncomment.jsonasset3,134 bytes
  • schemas/help/pptx/notes.jsonasset1,420 bytes
  • schemas/help/pptx/ole.jsonasset1,052 bytes
  • schemas/help/pptx/paragraph.jsonasset5,813 bytes
  • schemas/help/pptx/picture.jsonasset11,503 bytes
  • schemas/help/pptx/placeholder.jsonasset7,988 bytes
  • schemas/help/pptx/presentation.jsonasset11,573 bytes
  • schemas/help/pptx/raw.jsonasset1,590 bytes
  • schemas/help/pptx/run.jsonasset8,044 bytes
  • schemas/help/pptx/shape.jsonasset47,309 bytes
  • schemas/help/pptx/slide.jsonasset8,071 bytes
  • schemas/help/pptx/slidelayout.jsonasset4,230 bytes
  • schemas/help/pptx/slidemaster.jsonasset4,745 bytes
  • schemas/help/pptx/table-cell.jsonasset18,178 bytes
  • schemas/help/pptx/table-column.jsonasset1,043 bytes
  • schemas/help/pptx/table-row.jsonasset483 bytes
  • schemas/help/pptx/table.jsonasset10,809 bytes
  • schemas/help/pptx/textbox.jsonasset10,472 bytes
  • schemas/help/pptx/theme.jsonasset6,064 bytes
  • schemas/help/pptx/transition.jsonasset3,089 bytes
  • schemas/help/pptx/zoom.jsonasset2,555 bytes
  • schemas/help/xlsx/aboveaverage.jsonasset2,567 bytes
  • schemas/help/xlsx/autofilter.jsonasset1,678 bytes
  • schemas/help/xlsx/cell.jsonasset27,850 bytes
  • schemas/help/xlsx/cellis.jsonasset2,835 bytes
  • schemas/help/xlsx/cfextended.jsonasset2,643 bytes
  • schemas/help/xlsx/chart-axis.jsonasset1,351 bytes
  • schemas/help/xlsx/chart-series.jsonasset1,856 bytes
  • schemas/help/xlsx/chart.jsonasset3,393 bytes
  • schemas/help/xlsx/colbreak.jsonasset1,307 bytes
  • schemas/help/xlsx/colorscale.jsonasset2,376 bytes
  • schemas/help/xlsx/column.jsonasset3,820 bytes
  • schemas/help/xlsx/comment.jsonasset842 bytes
  • schemas/help/xlsx/conditionalformatting.jsonasset10,701 bytes
  • schemas/help/xlsx/containstext.jsonasset2,134 bytes
  • schemas/help/xlsx/databar.jsonasset3,614 bytes
  • schemas/help/xlsx/dateoccurring.jsonasset2,336 bytes
  • schemas/help/xlsx/detectedtable.jsonasset1,931 bytes
  • schemas/help/xlsx/duplicatevalues.jsonasset1,904 bytes
  • schemas/help/xlsx/formulacf.jsonasset3,087 bytes
  • schemas/help/xlsx/hyperlink.jsonasset2,220 bytes
  • schemas/help/xlsx/iconset.jsonasset1,952 bytes
  • schemas/help/xlsx/namedrange.jsonasset2,153 bytes
  • schemas/help/xlsx/ole.jsonasset1,100 bytes
  • schemas/help/xlsx/pagebreak.jsonasset1,367 bytes
  • schemas/help/xlsx/picture.jsonasset9,046 bytes
  • schemas/help/xlsx/pivottable.jsonasset15,237 bytes
  • schemas/help/xlsx/range.jsonasset2,814 bytes
  • schemas/help/xlsx/raw.jsonasset2,047 bytes
  • schemas/help/xlsx/row.jsonasset4,820 bytes
  • schemas/help/xlsx/rowbreak.jsonasset1,308 bytes
  • schemas/help/xlsx/run.jsonasset462 bytes
  • schemas/help/xlsx/shape.jsonasset5,080 bytes
  • schemas/help/xlsx/sheet.jsonasset12,985 bytes
  • schemas/help/xlsx/slicer.jsonasset3,280 bytes
  • schemas/help/xlsx/sort.jsonasset1,202 bytes
  • schemas/help/xlsx/sparkline.jsonasset6,912 bytes
  • schemas/help/xlsx/table.jsonasset6,045 bytes
  • schemas/help/xlsx/topn.jsonasset2,664 bytes
  • schemas/help/xlsx/uniquevalues.jsonasset1,892 bytes
  • schemas/help/xlsx/validation.jsonasset4,870 bytes
  • schemas/help/xlsx/workbook.jsonasset11,560 bytes
  • sdk/node/README.mddoc3,183 bytes
  • sdk/node/demo.jsruns1,271 bytes
  • sdk/node/index.d.tsruns2,675 bytes
  • sdk/node/index.jsruns28,396 bytes
  • sdk/node/package.jsonruns889 bytes
  • sdk/node/smoke.jsruns1,086 bytes
  • sdk/python/README.mddoc5,124 bytes
  • sdk/python/demo.pyruns3,880 bytes
  • sdk/python/officecli.pyruns32,807 bytes
  • sdk/python/pyproject.tomlasset1,522 bytes
  • sdk/python/smoke.pyruns859 bytes
  • src/officecli/BatchTypes.csasset16,680 bytes
  • src/officecli/BlankDocCreator.csasset49,847 bytes
  • src/officecli/CommandBuilder.Add.csasset29,491 bytes
  • src/officecli/CommandBuilder.Batch.csasset47,260 bytes
  • src/officecli/CommandBuilder.Check.csasset2,745 bytes
  • src/officecli/CommandBuilder.Dump.csasset12,597 bytes
  • src/officecli/CommandBuilder.GetQuery.csasset23,302 bytes
  • src/officecli/CommandBuilder.Goto.csasset3,787 bytes
  • src/officecli/CommandBuilder.Help.csasset22,427 bytes
  • src/officecli/CommandBuilder.Import.csasset26,740 bytes
  • src/officecli/CommandBuilder.IntegrationStubs.csasset2,626 bytes
  • src/officecli/CommandBuilder.Mark.csasset17,952 bytes
  • src/officecli/CommandBuilder.Plugins.csasset21,502 bytes
  • src/officecli/CommandBuilder.Raw.csasset8,332 bytes
  • src/officecli/CommandBuilder.Refresh.csasset2,280 bytes
  • src/officecli/CommandBuilder.Save.csasset3,815 bytes
  • src/officecli/CommandBuilder.Set.csasset15,049 bytes
  • src/officecli/CommandBuilder.SetCore.csasset11,289 bytes
  • src/officecli/CommandBuilder.View.csasset25,489 bytes
  • src/officecli/CommandBuilder.ViewCore.csasset38,852 bytes
  • src/officecli/CommandBuilder.Watch.csasset6,365 bytes
  • src/officecli/CommandBuilder.csasset118,268 bytes
  • src/officecli/Core/AtomicPackageWriter.csasset5,210 bytes
  • src/officecli/Core/AttributeFilter.csasset80,289 bytes
  • src/officecli/Core/BatchCompat.csasset8,081 bytes
  • src/officecli/Core/BatchExecutor.csasset6,682 bytes
  • src/officecli/Core/Bcp47LanguageTag.csasset2,458 bytes
  • src/officecli/Core/CellPropHints.csasset2,028 bytes
  • src/officecli/Core/CharsetDecoder.csasset6,002 bytes
  • src/officecli/Core/Chart/ChartEmbeddedDataSync.csasset12,130 bytes
  • src/officecli/Core/Chart/ChartExBuilder.Setter.csasset30,253 bytes
  • src/officecli/Core/Chart/ChartExBuilder.csasset54,528 bytes
  • src/officecli/Core/Chart/ChartExResources.csasset6,134 bytes
  • src/officecli/Core/Chart/ChartExStyleBuilder.csasset14,703 bytes
  • src/officecli/Core/Chart/ChartHelper.Advanced.csasset35,981 bytes
  • src/officecli/Core/Chart/ChartHelper.Axis.csasset51,787 bytes
  • src/officecli/Core/Chart/ChartHelper.Builder.csasset115,271 bytes
  • src/officecli/Core/Chart/ChartHelper.Reader.csasset142,586 bytes
  • src/officecli/Core/Chart/ChartHelper.Setter.csasset266,458 bytes
  • src/officecli/Core/Chart/ChartHelper.SetterHelpers.csasset85,550 bytes
  • src/officecli/Core/Chart/ChartHelper.csasset36,158 bytes
  • src/officecli/Core/Chart/ChartPresets.csasset6,445 bytes
  • src/officecli/Core/Chart/ChartSvgRenderer.CxExtract.csasset38,243 bytes
  • src/officecli/Core/Chart/ChartSvgRenderer.csasset340,000 bytes
  • src/officecli/Core/CliException.csasset966 bytes
  • src/officecli/Core/CliLogger.csasset2,191 bytes
  • src/officecli/Core/ColorMath.csasset5,354 bytes
  • src/officecli/Core/CompoundFile.csasset18,240 bytes
  • src/officecli/Core/CsvSepDeclaration.csasset1,955 bytes
  • src/officecli/Core/DeferredStdout.csasset1,894 bytes
  • src/officecli/Core/DelimitedText.csasset3,191 bytes
  • src/officecli/Core/Diagram/DiagramCompiler.csasset1,733 bytes
  • src/officecli/Core/Diagram/DiagramModel.csasset3,629 bytes
  • src/officecli/Core/Diagram/DiagramStyles.csasset1,745 bytes
  • src/officecli/Core/Diagram/FlowchartLayout.csasset27,709 bytes
  • src/officecli/Core/Diagram/MermaidImageRenderer.csasset32,002 bytes
  • src/officecli/Core/Diagram/MermaidParser.csasset7,943 bytes
  • src/officecli/Core/Diagram/SequenceLayout.csasset6,386 bytes
  • src/officecli/Core/DisplayText.csasset1,043 bytes
  • src/officecli/Core/DocumentIssue.csasset1,445 bytes
  • src/officecli/Core/DocumentLimits.csasset6,559 bytes
  • src/officecli/Core/DocumentNode.csasset1,530 bytes
  • src/officecli/Core/DrawingColorBuilder.csasset12,814 bytes
  • src/officecli/Core/DrawingEffectsHelper.csasset19,056 bytes
  • src/officecli/Core/EditDistance.csasset1,610 bytes
  • src/officecli/Core/ElementRollback.csasset1,802 bytes
  • src/officecli/Core/EmuConverter.csasset16,149 bytes
  • src/officecli/Core/ExcelStyleManager.csasset88,971 bytes
  • src/officecli/Core/ExtendedPropertiesHandler.csasset4,112 bytes
  • src/officecli/Core/FileSource.csasset6,860 bytes
  • src/officecli/Core/FindHelpers.csasset3,169 bytes
  • src/officecli/Core/FontMetricsReader.csasset29,695 bytes
  • src/officecli/Core/Formula/FormulaEvaluator.Complex.csasset7,077 bytes
  • src/officecli/Core/Formula/FormulaEvaluator.Functions.csasset122,474 bytes
  • src/officecli/Core/Formula/FormulaEvaluator.Helpers.csasset39,609 bytes
  • src/officecli/Core/Formula/FormulaEvaluator.References.csasset11,158 bytes
  • src/officecli/Core/Formula/FormulaEvaluator.Regression.csasset12,006 bytes
  • src/officecli/Core/Formula/FormulaEvaluator.Securities.csasset18,574 bytes
  • src/officecli/Core/Formula/FormulaEvaluator.Solver.csasset4,007 bytes
  • src/officecli/Core/Formula/FormulaEvaluator.SpecialFunctions.csasset11,071 bytes
  • src/officecli/Core/Formula/FormulaEvaluator.Spill.csasset22,599 bytes
  • src/officecli/Core/Formula/FormulaEvaluator.SpillLambda.csasset5,424 bytes
  • src/officecli/Core/Formula/FormulaEvaluator.Statistics.csasset14,017 bytes
  • src/officecli/Core/Formula/FormulaEvaluator.Statistics2.csasset7,416 bytes
  • src/officecli/Core/Formula/FormulaEvaluator.Statistics3.csasset4,859 bytes
  • src/officecli/Core/Formula/FormulaEvaluator.csasset80,922 bytes
  • src/officecli/Core/Formula/FormulaParser.csasset159,331 bytes
  • src/officecli/Core/Formula/ModernFunctionQualifier.csasset23,007 bytes
  • src/officecli/Core/Formula/SharedFormulaResolver.csasset5,569 bytes
  • src/officecli/Core/FormulaRefShifter.csasset25,391 bytes
  • src/officecli/Core/GenericXmlQuery.csasset34,621 bytes
  • src/officecli/Core/HtmlPreviewHelper.csasset4,533 bytes
  • src/officecli/Core/HtmlScreenshot.csasset32,412 bytes
  • src/officecli/Core/HyperlinkUriValidator.csasset4,540 bytes
  • src/officecli/Core/IDocumentHandler.csasset5,993 bytes
  • src/officecli/Core/ImageSource.csasset15,748 bytes
  • src/officecli/Core/Installer.csasset18,977 bytes
  • src/officecli/Core/IssueSubtypes.csasset8,669 bytes
  • src/officecli/Core/KatexAssets.csasset2,532 bytes
  • src/officecli/Core/LocaleFontRegistry.csasset10,152 bytes
  • src/officecli/Core/Markdown/MarkdownModel.csasset4,486 bytes
  • src/officecli/Core/Markdown/MarkdownParser.csasset44,188 bytes
  • src/officecli/Core/MsysPathHint.csasset6,977 bytes
  • src/officecli/Core/MutationSelectorGuard.csasset2,917 bytes
  • src/officecli/Core/NativeRenderFailure.csasset3,458 bytes
  • src/officecli/Core/NumericText.csasset5,217 bytes
  • src/officecli/Core/OfficeCliMetadata.csasset10,267 bytes
  • src/officecli/Core/OfficeDefaultFonts.csasset1,147 bytes
  • src/officecli/Core/OfficeDefaultThemeColors.csasset3,141 bytes
  • src/officecli/Core/OleHelper.csasset37,231 bytes
  • src/officecli/Core/OutputFormatter.csasset35,374 bytes
  • src/officecli/Core/ParseHelpers.csasset48,198 bytes
  • src/officecli/Core/PathAliases.csasset1,060 bytes
  • src/officecli/Core/PathIdentity.csasset2,911 bytes
  • src/officecli/Core/PathIndex.csasset1,356 bytes
  • src/officecli/Core/PipeTempDirGuard.csasset3,384 bytes
  • src/officecli/Core/PivotTableHelper.Cache.csasset63,128 bytes
  • src/officecli/Core/PivotTableHelper.Definition.csasset84,506 bytes
  • src/officecli/Core/PivotTableHelper.Parse.csasset38,968 bytes
  • src/officecli/Core/PivotTableHelper.Readback.csasset31,329 bytes
  • src/officecli/Core/PivotTableHelper.Render.csasset132,310 bytes
  • src/officecli/Core/PivotTableHelper.Set.csasset42,867 bytes
  • src/officecli/Core/PivotTableHelper.csasset106,775 bytes
  • src/officecli/Core/Plugins/DumpReaderInvoker.csasset10,605 bytes
  • src/officecli/Core/Plugins/ExporterInvoker.csasset5,010 bytes
  • src/officecli/Core/Plugins/FormatHandlerProxy.csasset16,317 bytes
  • src/officecli/Core/Plugins/FormatHandlerSession.csasset16,024 bytes
  • src/officecli/Core/Plugins/PluginManifest.csasset12,044 bytes
  • src/officecli/Core/Plugins/PluginProcess.csasset8,971 bytes
  • src/officecli/Core/Plugins/PluginRegistry.csasset14,806 bytes
  • src/officecli/Core/PowerPointPngBackend.csasset9,213 bytes
  • src/officecli/Core/RawXmlHelper.csasset74,239 bytes
  • src/officecli/Core/Rendering/IRenderer.csasset2,526 bytes
  • src/officecli/Core/Rendering/RenderCapabilities.csasset2,277 bytes
  • src/officecli/Core/Rendering/RenderOptions.csasset2,549 bytes
  • src/officecli/Core/Rendering/RenderOutputKind.csasset1,890 bytes
  • src/officecli/Core/Rendering/RenderResult.csasset2,688 bytes
  • src/officecli/Core/Rendering/RendererRegistry.csasset3,419 bytes
  • src/officecli/Core/ResidentFlushPolicy.csasset4,663 bytes
  • src/officecli/Core/SchemaKeyNormalizer.csasset893 bytes
  • src/officecli/Core/SchemaOrder.csasset11,356 bytes
  • src/officecli/Core/SelectorCommaSplit.csasset3,342 bytes
  • src/officecli/Core/SelectorPositionalIndex.csasset2,578 bytes
  • src/officecli/Core/SkillInstaller.csasset36,091 bytes
  • src/officecli/Core/SlideSizeDefaults.csasset2,469 bytes
  • src/officecli/Core/SpacingConverter.csasset20,523 bytes
  • src/officecli/Core/SsrfGuard.csasset6,705 bytes
  • src/officecli/Core/StyleUnsupportedHints.csasset3,591 bytes
  • src/officecli/Core/SvgImageHelper.csasset8,971 bytes
  • src/officecli/Core/TableStyles/Families/DarkStyle1.csasset2,334 bytes
  • src/officecli/Core/TableStyles/Families/DarkStyle2.csasset1,843 bytes
  • src/officecli/Core/TableStyles/Families/LightStyle1.csasset1,386 bytes
  • src/officecli/Core/TableStyles/Families/LightStyle2.csasset1,326 bytes
  • src/officecli/Core/TableStyles/Families/LightStyle3.csasset1,259 bytes
  • src/officecli/Core/TableStyles/Families/MediumStyle1.csasset1,383 bytes
  • src/officecli/Core/TableStyles/Families/MediumStyle2.csasset3,037 bytes
  • src/officecli/Core/TableStyles/Families/MediumStyle3.csasset1,732 bytes
  • src/officecli/Core/TableStyles/Families/MediumStyle4.csasset1,788 bytes
  • src/officecli/Core/TableStyles/Families/ThemedStyle1.csasset2,223 bytes
  • src/officecli/Core/TableStyles/Families/ThemedStyle2.csasset2,450 bytes
  • src/officecli/Core/TableStyles/TableStyleRegistry.csasset12,982 bytes
  • src/officecli/Core/TableStyles/TableStyleResolver.csasset11,195 bytes
  • src/officecli/Core/TableStyles/TableStyleTypes.csasset5,870 bytes
  • src/officecli/Core/TemplateMerger.csasset22,344 bytes
  • src/officecli/Core/TextEscape.csasset3,101 bytes
  • src/officecli/Core/ThemeColorResolver.csasset3,437 bytes
  • src/officecli/Core/ThemeHandler.csasset7,285 bytes
  • src/officecli/Core/ThreeAssets.csasset1,928 bytes
  • src/officecli/Core/TrackingPropertyDictionary.csasset7,422 bytes
  • src/officecli/Core/TypedAttributeFallback.csasset12,751 bytes
  • src/officecli/Core/Units.csasset2,848 bytes
  • src/officecli/Core/UpdateChecker.csasset39,555 bytes
  • src/officecli/Core/Watch/WatchMark.csasset7,029 bytes
  • src/officecli/Core/Watch/WatchNotifier.csasset21,380 bytes
  • src/officecli/Core/Watch/WatchServer.csasset142,212 bytes
  • src/officecli/Core/WordHtmlRefresh.csasset6,591 bytes
  • src/officecli/Core/WordIndentAliases.csasset1,418 bytes
  • src/officecli/Core/WordNumFmtRenderer.csasset32,621 bytes
  • src/officecli/Core/WordPageDefaults.csasset1,284 bytes
  • src/officecli/Core/WordPdfBackend.csasset34,941 bytes
  • src/officecli/Core/WordStrictAttributeSanitizer.csasset5,445 bytes
  • src/officecli/Core/WordTocBuilder.csasset11,419 bytes
  • src/officecli/Core/WorksheetBloatFilter.csasset15,975 bytes
  • src/officecli/Core/XmlTextValidator.csasset3,985 bytes
  • src/officecli/Handlers/DocumentHandlerFactory.csasset31,119 bytes
  • src/officecli/Handlers/Excel/ExcelBatchEmitter.Elements.csasset47,592 bytes
  • src/officecli/Handlers/Excel/ExcelBatchEmitter.csasset51,877 bytes
  • src/officecli/Handlers/Excel/ExcelDataFormatter.csasset16,550 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.Add.Cells.csasset94,811 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.Add.Cf.csasset50,158 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.Add.Chart.csasset30,943 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.Add.Drawings.csasset58,426 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.Add.Tables.csasset96,924 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.Add.csasset72,042 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.ChartCache.csasset12,914 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.CheckGeneralPrecision.csasset10,006 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.CheckNumericOverflow.csasset22,005 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.CheckOverflow.csasset10,031 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.DumpSupport.csasset44,047 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.DynamicArray.csasset3,856 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.FormulaCache.csasset21,004 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.Helpers.Cell.csasset36,641 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.Helpers.Chart.csasset40,001 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.Helpers.ConditionalFormat.csasset10,933 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.Helpers.Drawing.csasset81,598 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.Helpers.Node.csasset64,727 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.Helpers.Ole.csasset12,524 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.Helpers.Sheet.csasset31,498 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.Helpers.TableStyle.csasset7,087 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.Helpers.Validation.csasset35,723 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.Helpers.csasset19,043 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.HtmlPreview.Charts.csasset26,292 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.HtmlPreview.Pictures.csasset3,963 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.HtmlPreview.Shapes.csasset11,661 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.HtmlPreview.csasset215,229 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.Import.csasset24,043 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.Query.Cf.csasset13,125 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.Query.RowWhere.csasset32,230 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.Query.csasset119,692 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.Remove.csasset93,637 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.RichValueImage.csasset17,444 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.Selector.csasset18,861 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.Set.Cells.csasset49,075 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.Set.Charts.csasset9,404 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.Set.Drawings.csasset36,503 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.Set.Ranges.csasset43,933 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.Set.RowsCols.csasset21,155 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.Set.Sheet.csasset62,668 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.Set.Tables.csasset60,091 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.Set.Workbook.csasset22,001 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.Set.csasset18,423 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.SheetShift.csasset36,976 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.Slicer.csasset46,755 bytes
  • src/officecli/Handlers/Excel/ExcelHandler.View.csasset57,394 bytes
  • src/officecli/Handlers/ExcelHandler.csasset29,360 bytes
  • src/officecli/Handlers/PowerPointHandler.csasset280,005 bytes
  • src/officecli/Handlers/Pptx/EffectTemplates/emph_colorpulse.xmlasset1,027 bytes
  • src/officecli/Handlers/Pptx/EffectTemplates/emph_complementarycolor.xmlasset1,032 bytes
  • src/officecli/Handlers/Pptx/EffectTemplates/emph_complementarycolor2.xmlasset1,035 bytes
  • src/officecli/Handlers/Pptx/EffectTemplates/emph_contrastingcolor.xmlasset1,035 bytes
  • src/officecli/Handlers/Pptx/EffectTemplates/emph_darken.xmlasset1,044 bytes
  • src/officecli/Handlers/Pptx/EffectTemplates/emph_desaturate.xmlasset1,029 bytes
  • src/officecli/Handlers/Pptx/EffectTemplates/emph_fillcolor.xmlasset701 bytes
  • src/officecli/Handlers/Pptx/EffectTemplates/emph_growshrink.xmlasset163 bytes
  • src/officecli/Handlers/Pptx/EffectTemplates/emph_lighten.xmlasset1,038 bytes
  • src/officecli/Handlers/Pptx/EffectTemplates/emph_linecolor.xmlasset483 bytes
  • src/officecli/Handlers/Pptx/EffectTemplates/emph_objectcolor.xmlasset979 bytes
  • src/officecli/Handlers/Pptx/EffectTemplates/emph_pulse.xmlasset365 bytes
  • src/officecli/Handlers/Pptx/EffectTemplates/emph_spin.xmlasset200 bytes
  • src/officecli/Handlers/Pptx/EffectTemplates/emph_teeter.xmlasset1,260 bytes
  • src/officecli/Handlers/Pptx/EffectTemplates/emph_transparency.xmlasset394 bytes
  • src/officecli/Handlers/Pptx/EffectTemplates/exit_basic_swivel.xmlasset3,529 bytes
  • src/officecli/Handlers/Pptx/EffectTemplates/exit_basic_zoom.xmlasset1,416 bytes
  • src/officecli/Handlers/Pptx/EffectTemplates/exit_boomerang.xmlasset4,927 bytes
  • src/officecli/Handlers/Pptx/EffectTemplates/exit_center_revolve.xmlasset7,454 bytes
  • src/officecli/Handlers/Pptx/EffectTemplates/exit_collapse.xmlasset1,420 bytes
  • src/officecli/Handlers/Pptx/EffectTemplates/exit_contract.xmlasset1,629 bytes
  • src/officecli/Handlers/Pptx/EffectTemplates/exit_credits.xmlasset1,434 bytes
  • src/officecli/Handlers/Pptx/EffectTemplates/exit_curve_down.xmlasset1,596 bytes
  • src/officecli/Handlers/Pptx/EffectTemplates/exit_float.xmlasset3,637 bytes
  • src/officecli/Handlers/Pptx/EffectTemplates/exit_float_out.xmlasset1,627 bytes
  • src/officecli/Handlers/Pptx/EffectTemplates/exit_pinwheel.xmlasset2,132 bytes
  • src/officecli/Handlers/Pptx/EffectTemplates/exit_shrink_turn.xmlasset2,130 bytes
  • src/officecli/Handlers/Pptx/EffectTemplates/exit_sink_down.xmlasset2,261 bytes
  • src/officecli/Handlers/Pptx/EffectTemplates/exit_spinner.xmlasset2,127 bytes
  • src/officecli/Handlers/Pptx/EffectTemplates/exit_spiral_out.xmlasset8,146 bytes
  • src/officecli/Handlers/Pptx/EffectTemplates/exit_stretchy.xmlasset1,627 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Add.Diagram.csasset22,966 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Add.Media.csasset74,649 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Add.Misc.csasset141,926 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Add.Model3D.csasset33,696 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Add.Shape.csasset60,516 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Add.Slide.csasset12,500 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Add.Table.csasset36,475 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Add.Text.csasset70,586 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Add.csasset7,405 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Align.csasset9,261 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Animations.csasset158,071 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Background.csasset51,230 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Chart.csasset11,792 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Comments.csasset18,092 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.EffectTemplates.csasset13,530 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Effects.csasset45,408 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Fill.csasset51,529 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Helpers.FindReplace.csasset33,504 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Helpers.Geometry.csasset23,405 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Helpers.Ole.csasset6,681 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Helpers.Path.csasset34,107 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Helpers.RunFormat.csasset35,747 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Helpers.ShapeId.csasset12,036 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Helpers.Table.csasset9,190 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Helpers.Text.csasset14,685 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Helpers.Transition.csasset6,154 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Helpers.Zoom3D.csasset11,193 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Helpers.csasset8,556 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.HtmlPreview.Charts.csasset9,015 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.HtmlPreview.Css.csasset177,366 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.HtmlPreview.Shapes.csasset173,618 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.HtmlPreview.Tables.csasset33,536 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.HtmlPreview.Text.csasset86,532 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.HtmlPreview.csasset48,353 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Hyperlinks.csasset18,726 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.ModernComments.csasset22,313 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Mutations.csasset122,927 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.NodeBuilder.csasset211,447 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Notes.csasset23,467 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.PresetAdjustGuides.csasset17,615 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Query.csasset150,301 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Resolve.csasset31,676 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Selector.csasset21,134 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Set.Chart.csasset6,668 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Set.Media.csasset66,681 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Set.Presentation.csasset9,540 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Set.Shape.csasset128,726 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Set.Slide.csasset30,701 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Set.Table.csasset26,002 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Set.csasset34,417 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.ShapeProperties.csasset240,071 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.StyleList.csasset26,868 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.SvgPreview.csasset104,412 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.Theme.csasset17,857 bytes
  • src/officecli/Handlers/Pptx/PowerPointHandler.View.csasset63,397 bytes
  • src/officecli/Handlers/Pptx/PptxBatchEmitter.AuxParts.csasset9,638 bytes
  • src/officecli/Handlers/Pptx/PptxBatchEmitter.Charts.csasset31,002 bytes
  • src/officecli/Handlers/Pptx/PptxBatchEmitter.Filters.csasset15,332 bytes
  • src/officecli/Handlers/Pptx/PptxBatchEmitter.Media.csasset42,817 bytes
  • src/officecli/Handlers/Pptx/PptxBatchEmitter.Notes.csasset13,583 bytes
  • src/officecli/Handlers/Pptx/PptxBatchEmitter.Resources.csasset29,627 bytes
  • src/officecli/Handlers/Pptx/PptxBatchEmitter.Shape.csasset66,509 bytes
  • src/officecli/Handlers/Pptx/PptxBatchEmitter.Table.csasset12,337 bytes
  • src/officecli/Handlers/Pptx/PptxBatchEmitter.csasset123,838 bytes
  • src/officecli/Handlers/Pptx/SlideComposition.csasset16,500 bytes
  • src/officecli/Handlers/Pptx/SpacingPercentExtensions.csasset1,377 bytes
  • src/officecli/Handlers/Rendering/BasicRenderers.csasset4,096 bytes
  • src/officecli/Handlers/Rendering/HandlerRenderInput.csasset1,331 bytes
  • src/officecli/Handlers/Word/WordBatchEmitter.AuxParts.csasset7,505 bytes
  • src/officecli/Handlers/Word/WordBatchEmitter.Charts.csasset18,667 bytes
  • src/officecli/Handlers/Word/WordBatchEmitter.Fields.csasset57,124 bytes
  • src/officecli/Handlers/Word/WordBatchEmitter.Filters.csasset30,939 bytes
  • src/officecli/Handlers/Word/WordBatchEmitter.Paragraph.csasset292,153 bytes
  • src/officecli/Handlers/Word/WordBatchEmitter.Resources.csasset225,841 bytes
  • src/officecli/Handlers/Word/WordBatchEmitter.Table.csasset88,456 bytes
  • src/officecli/Handlers/Word/WordBatchEmitter.csasset63,501 bytes
  • src/officecli/Handlers/Word/WordHandler.Add.Diagram.csasset26,719 bytes
  • src/officecli/Handlers/Word/WordHandler.Add.Markdown.csasset25,652 bytes
  • src/officecli/Handlers/Word/WordHandler.Add.Media.csasset90,157 bytes
  • src/officecli/Handlers/Word/WordHandler.Add.Misc.csasset207,703 bytes
  • src/officecli/Handlers/Word/WordHandler.Add.Structure.csasset175,019 bytes
  • src/officecli/Handlers/Word/WordHandler.Add.Table.csasset88,976 bytes
  • src/officecli/Handlers/Word/WordHandler.Add.Text.csasset205,949 bytes
  • src/officecli/Handlers/Word/WordHandler.Add.csasset63,548 bytes
  • src/officecli/Handlers/Word/WordHandler.CommentsExt.csasset8,450 bytes
  • src/officecli/Handlers/Word/WordHandler.FormFields.csasset38,678 bytes
  • src/officecli/Handlers/Word/WordHandler.Helpers.Chart.csasset16,376 bytes
  • src/officecli/Handlers/Word/WordHandler.Helpers.Field.csasset37,792 bytes
  • src/officecli/Handlers/Word/WordHandler.Helpers.FindReplace.csasset66,048 bytes
  • src/officecli/Handlers/Word/WordHandler.Helpers.HeaderFooter.csasset7,127 bytes
  • src/officecli/Handlers/Word/WordHandler.Helpers.RunFormat.csasset68,099 bytes
  • src/officecli/Handlers/Word/WordHandler.Helpers.SectionTable.csasset13,159 bytes
  • src/officecli/Handlers/Word/WordHandler.Helpers.Structure.csasset5,832 bytes
  • src/officecli/Handlers/Word/WordHandler.Helpers.Style.csasset11,323 bytes
  • src/officecli/Handlers/Word/WordHandler.Helpers.Text.csasset33,462 bytes
  • src/officecli/Handlers/Word/WordHandler.Helpers.TextEffect.csasset20,598 bytes
  • src/officecli/Handlers/Word/WordHandler.Helpers.csasset20,796 bytes
  • src/officecli/Handlers/Word/WordHandler.HtmlPreview.Charts.csasset8,790 bytes
  • src/officecli/Handlers/Word/WordHandler.HtmlPreview.Css.csasset183,176 bytes
  • src/officecli/Handlers/Word/WordHandler.HtmlPreview.Markers.csasset27,553 bytes
  • src/officecli/Handlers/Word/WordHandler.HtmlPreview.Shapes.csasset86,255 bytes
  • src/officecli/Handlers/Word/WordHandler.HtmlPreview.Tables.csasset60,979 bytes
  • src/officecli/Handlers/Word/WordHandler.HtmlPreview.Text.csasset96,717 bytes
  • src/officecli/Handlers/Word/WordHandler.HtmlPreview.csasset208,295 bytes
  • src/officecli/Handlers/Word/WordHandler.I18n.csasset13,900 bytes
  • src/officecli/Handlers/Word/WordHandler.ImageHelpers.csasset56,578 bytes
  • src/officecli/Handlers/Word/WordHandler.Mutations.csasset136,384 bytes
  • src/officecli/Handlers/Word/WordHandler.Navigation.DocSettings.csasset12,459 bytes
  • src/officecli/Handlers/Word/WordHandler.Navigation.csasset423,098 bytes
  • src/officecli/Handlers/Word/WordHandler.Query.csasset191,235 bytes
  • src/officecli/Handlers/Word/WordHandler.Selector.csasset22,056 bytes
  • src/officecli/Handlers/Word/WordHandler.SeqEval.csasset8,878 bytes
  • src/officecli/Handlers/Word/WordHandler.Set.Compatibility.csasset11,128 bytes
  • src/officecli/Handlers/Word/WordHandler.Set.Dispatch.csasset118,098 bytes
  • src/officecli/Handlers/Word/WordHandler.Set.DocDefaults.csasset17,127 bytes
  • src/officecli/Handlers/Word/WordHandler.Set.DocSettings.csasset15,560 bytes
  • src/officecli/Handlers/Word/WordHandler.Set.Element.csasset211,924 bytes
  • src/officecli/Handlers/Word/WordHandler.Set.Revision.csasset82,976 bytes
  • src/officecli/Handlers/Word/WordHandler.Set.SectionLayout.csasset40,583 bytes
  • src/officecli/Handlers/Word/WordHandler.Set.csasset126,495 bytes
  • src/officecli/Handlers/Word/WordHandler.StyleList.csasset86,218 bytes
  • src/officecli/Handlers/Word/WordHandler.View.csasset80,695 bytes
  • src/officecli/Handlers/WordHandler.csasset137,549 bytes
  • src/officecli/Help/SchemaCrc.csasset2,568 bytes
  • src/officecli/Help/SchemaHelpFlatRenderer.csasset16,090 bytes
  • src/officecli/Help/SchemaHelpLoader.csasset34,728 bytes
  • src/officecli/Help/SchemaHelpRenderer.csasset16,181 bytes
  • src/officecli/McpInstaller.csasset21,538 bytes
  • src/officecli/McpServer.csasset34,538 bytes
  • src/officecli/Program.csasset12,431 bytes
  • src/officecli/ResidentClient.csasset14,628 bytes
  • src/officecli/ResidentDirtyMarker.csasset6,697 bytes
  • src/officecli/ResidentServer.csasset122,718 bytes
  • src/officecli/Resources/chartex-colors.xmlasset878 bytes
  • src/officecli/Resources/chartex-style.xmlasset9,630 bytes
  • src/officecli/Resources/cx-gallery/fragments/035e730360df.xmlasset255 bytes
  • src/officecli/Resources/cx-gallery/fragments/04b7f28829bb.xmlasset269 bytes
  • src/officecli/Resources/cx-gallery/fragments/065a16c3b9e4.xmlasset233 bytes
  • src/officecli/Resources/cx-gallery/fragments/0893349d4b03.xmlasset321 bytes
  • src/officecli/Resources/cx-gallery/fragments/0db270a742c0.xmlasset347 bytes
  • src/officecli/Resources/cx-gallery/fragments/0fd9b7b60362.xmlasset271 bytes
  • src/officecli/Resources/cx-gallery/fragments/0feb50a2e3f8.xmlasset198 bytes
  • src/officecli/Resources/cx-gallery/fragments/123ab0e2d611.xmlasset355 bytes
  • src/officecli/Resources/cx-gallery/fragments/141beaa06399.xmlasset193 bytes
  • src/officecli/Resources/cx-gallery/fragments/1986109cf100.xmlasset467 bytes
  • src/officecli/Resources/cx-gallery/fragments/1e8d1ffd1a8c.xmlasset394 bytes
  • src/officecli/Resources/cx-gallery/fragments/210a316420df.xmlasset345 bytes
  • src/officecli/Resources/cx-gallery/fragments/24221c2aab80.xmlasset311 bytes
  • src/officecli/Resources/cx-gallery/fragments/29625a56d05a.xmlasset410 bytes
  • src/officecli/Resources/cx-gallery/fragments/29890d0b5470.xmlasset355 bytes
  • src/officecli/Resources/cx-gallery/fragments/2ca3a8c223ed.xmlasset380 bytes
  • src/officecli/Resources/cx-gallery/fragments/2cf48662dc02.xmlasset263 bytes
  • src/officecli/Resources/cx-gallery/fragments/305f09d3f3ce.xmlasset333 bytes
  • src/officecli/Resources/cx-gallery/fragments/30e2b1d8b034.xmlasset227 bytes
  • src/officecli/Resources/cx-gallery/fragments/32dd428a9604.xmlasset243 bytes
  • src/officecli/Resources/cx-gallery/fragments/35bc296838ac.xmlasset239 bytes
  • src/officecli/Resources/cx-gallery/fragments/37b4faa2ef3c.xmlasset226 bytes
  • src/officecli/Resources/cx-gallery/fragments/3eb02632526a.xmlasset197 bytes
  • src/officecli/Resources/cx-gallery/fragments/402b13c690b9.xmlasset320 bytes
  • src/officecli/Resources/cx-gallery/fragments/445cb20794c3.xmlasset295 bytes
  • src/officecli/Resources/cx-gallery/fragments/4a597f14d4a0.xmlasset234 bytes
  • src/officecli/Resources/cx-gallery/fragments/52b9facbf7ce.xmlasset231 bytes
  • src/officecli/Resources/cx-gallery/fragments/57636ce91218.xmlasset295 bytes
  • src/officecli/Resources/cx-gallery/fragments/5c8453ec5897.xmlasset308 bytes
  • src/officecli/Resources/cx-gallery/fragments/5dbcf86bdb77.xmlasset328 bytes
  • src/officecli/Resources/cx-gallery/fragments/5df9aa84f62b.xmlasset304 bytes
  • src/officecli/Resources/cx-gallery/fragments/5f4301e9c8ec.xmlasset155 bytes
  • src/officecli/Resources/cx-gallery/fragments/64247a530aa7.xmlasset303 bytes
  • src/officecli/Resources/cx-gallery/fragments/68e668f06770.xmlasset288 bytes
  • src/officecli/Resources/cx-gallery/fragments/6a957dd378ab.xmlasset279 bytes
  • src/officecli/Resources/cx-gallery/fragments/6e14b05b13e4.xmlasset363 bytes
  • src/officecli/Resources/cx-gallery/fragments/71ee8638aac5.xmlasset317 bytes
  • src/officecli/Resources/cx-gallery/fragments/72e1bb84373e.xmlasset185 bytes
  • src/officecli/Resources/cx-gallery/fragments/7372d86477ae.xmlasset333 bytes
  • src/officecli/Resources/cx-gallery/fragments/754767150acb.xmlasset227 bytes
  • src/officecli/Resources/cx-gallery/fragments/7a8f616c6e79.xmlasset291 bytes
  • src/officecli/Resources/cx-gallery/fragments/7bc7f372483c.xmlasset190 bytes
  • src/officecli/Resources/cx-gallery/fragments/7dfc3552b0f1.xmlasset297 bytes
  • src/officecli/Resources/cx-gallery/fragments/81190f0426f6.xmlasset187 bytes
  • src/officecli/Resources/cx-gallery/fragments/85f53ae43cd5.xmlasset413 bytes
  • src/officecli/Resources/cx-gallery/fragments/87af24f622ec.xmlasset433 bytes
  • src/officecli/Resources/cx-gallery/fragments/8ee61af80f9c.xmlasset181 bytes
  • src/officecli/Resources/cx-gallery/fragments/9718af506d0b.xmlasset315 bytes
  • src/officecli/Resources/cx-gallery/fragments/98583bda231a.xmlasset288 bytes
  • src/officecli/Resources/cx-gallery/fragments/9d4eb558580b.xmlasset227 bytes
  • src/officecli/Resources/cx-gallery/fragments/9f29fea3f8c8.xmlasset174 bytes
  • src/officecli/Resources/cx-gallery/fragments/a3e2ff3cd02e.xmlasset194 bytes
  • src/officecli/Resources/cx-gallery/fragments/aa5b6bc6ada5.xmlasset248 bytes
  • src/officecli/Resources/cx-gallery/fragments/b0b25814aac6.xmlasset384 bytes
  • src/officecli/Resources/cx-gallery/fragments/b34898343bc4.xmlasset262 bytes
  • src/officecli/Resources/cx-gallery/fragments/bdbd65192879.xmlasset297 bytes
  • src/officecli/Resources/cx-gallery/fragments/be2511784184.xmlasset233 bytes
  • src/officecli/Resources/cx-gallery/fragments/c4c2507626e5.xmlasset345 bytes
  • src/officecli/Resources/cx-gallery/fragments/c6f1a11e9bc2.xmlasset271 bytes
  • src/officecli/Resources/cx-gallery/fragments/c9c93edef3ed.xmlasset52 bytes
  • src/officecli/Resources/cx-gallery/fragments/cbc2de54fdcb.xmlasset145 bytes
  • src/officecli/Resources/cx-gallery/fragments/cd874f9bb7e0.xmlasset320 bytes
  • src/officecli/Resources/cx-gallery/fragments/cdfc52207e22.xmlasset233 bytes
  • src/officecli/Resources/cx-gallery/fragments/ce0014f44358.xmlasset349 bytes
  • src/officecli/Resources/cx-gallery/fragments/ce32c7492ea0.xmlasset345 bytes
  • src/officecli/Resources/cx-gallery/fragments/d461e2e65ee5.xmlasset231 bytes
  • src/officecli/Resources/cx-gallery/fragments/d493e81cf00d.xmlasset266 bytes
  • src/officecli/Resources/cx-gallery/fragments/d6b25ec85910.xmlasset290 bytes
  • src/officecli/Resources/cx-gallery/fragments/dae5d2618ca4.xmlasset202 bytes
  • src/officecli/Resources/cx-gallery/fragments/df172bfc2c76.xmlasset651 bytes
  • src/officecli/Resources/cx-gallery/fragments/e2746191bb9f.xmlasset27 bytes
  • src/officecli/Resources/cx-gallery/fragments/e4e24c0e9598.xmlasset429 bytes
  • src/officecli/Resources/cx-gallery/fragments/e88d09d2c1eb.xmlasset329 bytes
  • src/officecli/Resources/cx-gallery/fragments/edbacd48f60e.xmlasset143 bytes
  • src/officecli/Resources/cx-gallery/fragments/ef428f41a8f7.xmlasset336 bytes
  • src/officecli/Resources/cx-gallery/fragments/f0722100673e.xmlasset299 bytes
  • src/officecli/Resources/cx-gallery/fragments/f16880ab62cc.xmlasset347 bytes
  • src/officecli/Resources/cx-gallery/index.jsonasset69,497 bytes
  • src/officecli/Resources/preview.cssasset7,740 bytes
  • src/officecli/Resources/preview.jsruns9,060 bytes
  • src/officecli/Resources/watch-overlay.jsruns48,401 bytes
  • src/officecli/Resources/watch-sse-core.jsruns23,370 bytes
  • src/officecli/officecli.csprojasset2,697 bytes
Read SKILL.md

# officecli

AI-friendly CLI for .docx, .xlsx, .pptx. Single binary, no dependencies, no Office installation needed.

## Install

If `officecli` is not installed:

```bash
# macOS / Linux
curl -fsSL https://d.officecli.ai/install.sh | bash

# Windows (PowerShell)
irm https://d.officecli.ai/install.ps1 | iex
View the complete source on GitHub

Skills included

  • officecli
  • morph-ppt
  • morph-ppt-3d
  • officecli
  • officecli-academic-paper
  • officecli-data-dashboard
  • officecli-docx
  • officecli-financial-model
  • officecli-pitch-deck
  • officecli-pptx
  • officecli-word-form
  • officecli-xlsx

Repository facts

License
Apache-2.0
Created
Mar 15, 2026
Last pushed
Oct 30, 2026
Forks
2,258
Open issues
40
Project activity
Active

Rank over the last 12 weeks

Now #62 · best #55 · down 3 in 30 days

  1. #62 on Oct 24
  2. #63 on Oct 25
  3. #61 on Oct 28
  4. #62 on Oct 29
  5. #63 from Oct 30 to Oct 31
  6. #62 since Nov 1
19 earlier periods
  1. #63 on Aug 2
  2. #58 from Aug 7 to Aug 9
  3. #57 on Aug 10
  4. #56 on Aug 11
  5. #55 from Aug 12 to Aug 17
  6. #56 from Aug 18 to Aug 25
  7. #57 from Aug 26 to Aug 28
  8. #58 from Aug 29 to Sep 1
  9. #59 from Sep 2 to Sep 6
  10. #58 on Sep 7
  11. #59 from Sep 8 to Sep 12
  12. #60 from Sep 13 to Sep 17
  13. #59 from Sep 18 to Sep 19
  14. #60 on Sep 20
  15. #59 on Sep 21
  16. #60 from Sep 22 to Sep 24
  17. #59 from Sep 25 to Oct 7
  18. #60 from Oct 8 to Oct 18
  19. #61 from Oct 19 to Oct 23

Before you install

Network or broad shell

Automated signals, not a guarantee

Checked Nov 4, 2026

Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.

Show 284 notes
  • SKILL.md:263 Analysis incomplete: physical or joined line exceeds character limit
  • SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
Show all 2,461 signals by file

.github/workflows/build.yml

  • Access to secretsline 71
    [Credential-related source omitted]
  • Access to secretsline 74
    [Credential-related source omitted]
  • Access to secretsline 78
    [Credential-related source omitted]
  • Access to secretsline 79
    [Credential-related source omitted]
  • Access to secretsline 80
    [Credential-related source omitted]
  • Access to secretsline 81
    [Credential-related source omitted]
  • Access to secretsline 82
    [Credential-related source omitted]
  • Access to secretsline 83
    [Credential-related source omitted]
  • Dangerous shell operationline 84
    rm -f "$CERT_PATH"
  • Dangerous shell operationline 118
    rm -f "$RUNNER_TEMP/notarize.zip"
  • Dangerous shell operationline 138
    rm -f test_smoke.docx
  • Dangerous shell operationline 223
    rm -rf artifacts

.github/workflows/publish-npm.yml

  • Network accessline 45
    with:           node-version: '24'           registry-url: 'https://registry.npmjs.org'
  • Network accessline 47
    registry-url: 'https://registry.npmjs.org'

.github/workflows/publish-pypi.yml

  • Network accessline 42
    VERSION=$(python -c "import tomllib;print(tomllib.load(open('pyproject.toml','rb'))['project']['version'])")           echo "Publishing candidate: $NAME==$VERSION"           CODE=$(curl -s -o /dev/null -w '%{http_code}' "https://pypi.org/py
  • Network accessline 43
    echo "Publishing candidate: $NAME==$VERSION"           CODE=$(curl -s -o /dev/null -w '%{http_code}' "https://pypi.org/pypi/$NAME/$VERSION/json")           if [ "$CODE" = "200" ]; then
  • Network accessline 44
    CODE=$(curl -s -o /dev/null -w '%{http_code}' "https://pypi.org/pypi/$NAME/$VERSION/json")

.github/workflows/publish-sdk.yml

  • Network accessline 49
    with:           node-version: '24'           registry-url: 'https://registry.npmjs.org'
  • Network accessline 51
    registry-url: 'https://registry.npmjs.org'

.github/workflows/skill-parity.yml

  • Network accessline 3
    # Root SKILL.md is the file the public URL serves # (https://d.officecli.ai/SKILL.md, raw GitHub URL) and is what # `curl ... | bash` consumers fetch. skills/officecli/SKILL.md is a real
  • Network accessline 4
    # (https://d.officecli.ai/SKILL.md, raw GitHub URL) and is what # `curl ... | bash` consumers fetch. skills/officecli/SKILL.md is a real # copy of it — the spec-conforming location that `gh skill install` and
  • Dangerous shell operationline 5
    # `curl ... | bash` consumers fetch. skills/officecli/SKILL.md is a real
  • Network accessline 5
    # `curl ... | bash` consumers fetch. skills/officecli/SKILL.md is a real

.oss-scanner/Dockerfile

  • Executable scriptline 1
    Executable file
  • Dangerous shell operationline 11
    RUN apt-get update && apt-get install -y --no-install-recommends      bash ca-certificates git python3 unzip      && rm -rf /var/lib/apt/lists/*
  • Dangerous shell operationline 13
    && rm -rf /var/lib/apt/lists/*
  • Dangerous shell operationline 25
    RUN cd /tmp      && (officecli create test_smoke.docx          && officecli add test_smoke.docx /body --type paragraph --prop text="Hello from CI"          && officecli get test_smoke.docx '/body/p[1]'          && officecli close test_smoke
  • Dangerous shell operationline 31
    && rm -f test_smoke.docx

LICENSE

  • Network accessline 2
    Apache License                            Version 2.0, January 2004                         http://www.apache.org/licenses/
  • Network accessline 4
    http://www.apache.org/licenses/
  • Network accessline 191
    Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 197
    http://www.apache.org/licenses/LICENSE-2.0

NOTICE

  • Network accessline 1
    OfficeCLI Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 2
    Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 6
    This product is licensed under the Apache License, Version 2.0. You may obtain a copy of the License in the LICENSE file or at http://www.apache.org/licenses/LICENSE-2.0
  • Network accessline 8
    http://www.apache.org/licenses/LICENSE-2.0

README.md

  • Network accessline 11
    [![GitHub Release](https://img.shields.io/github/v/release/iOfficeAI/OfficeCLI)](https://github.com/iOfficeAI/OfficeCLI/releases)
  • Network accessline 12
    [![License](https://img.shields.io/badge/license-Apache%202.0-blue.svg)](LICENSE)
  • Network accessline 16
    <p align="center">   <strong>🌐 Website:</strong> <a href="https://officecli.ai" target="_blank">officecli.ai</a> &nbsp;|&nbsp; <strong>💬 Community:</strong> <a href="https://discord.gg/2QAwJn7Egx" target="_blank">Discord</a>
  • Network accessline 17
    <strong>🌐 Website:</strong> <a href="https://officecli.ai" target="_blank">officecli.ai</a> &nbsp;|&nbsp; <strong>💬 Community:</strong> <a href="https://discord.gg/2QAwJn7Egx" target="_blank">Discord</a>
  • Network accessline 24
    <p align="center"><em>PPT creation process using OfficeCLI on <a href="https://github.com/iOfficeAI/AionUi">AionUi</a></em></p>
  • Network accessline 70
    curl -fsSL https://officecli.ai/SKILL.md
  • Network accessline 77
    **Option A — GUI:** Install [**AionUi**](https://github.com/iOfficeAI/AionUi) — a desktop app that lets you create and edit Office documents through natural language, powered by OfficeCLI under the hood. Just describe what you want, and Aio
  • Network accessline 79
    **Option B — CLI:** Download the binary for your platform from [GitHub Releases](https://github.com/iOfficeAI/OfficeCLI/releases), then run:
  • Network accessline 90
    # 1. Install (macOS / Linux) — or: brew install officecli / npm install -g @officecli/officecli curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Dangerous shell operationline 91
    curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 91
    curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 92
    # Windows (PowerShell): irm https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.ps1 | iex
  • Network accessline 97
    # 3. Start live preview — opens http://localhost:26315 in your browser
  • Network accessline 179
    **Word** — full [i18n & RTL support](https://github.com/iOfficeAI/OfficeCLI/wiki/i18n) (per-script font slots, per-script BCP-47 lang tags `lang.latin/ea/cs`, complex-script bold/italic/size, `direction=rtl` cascading through paragraph/run/
  • Network accessline 181
    **Excel** — [cells](https://github.com/iOfficeAI/OfficeCLI/wiki/excel-cell) (phonetic guide / furigana on add, Excel-UI `--shift left\|up` on remove / `shift=right\|down` on add), formulas (350+ built-in functions with auto-evaluation, spil
  • Network accessline 183
    **PowerPoint** — [slides](https://github.com/iOfficeAI/OfficeCLI/wiki/ppt-slide) (header/footer/date/slidenum toggles, hidden), [shapes](https://github.com/iOfficeAI/OfficeCLI/wiki/ppt-shape) (pattern fill, blur effect, hyperlink tooltip + 
  • Network accessline 209
    # macOS / Linux curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Dangerous shell operationline 210
    curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 210
    curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 212
    # Windows (PowerShell) irm https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.ps1 | iex
  • Network accessline 213
    irm https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.ps1 | iex
  • Network accessline 229
    **Or download manually** from [GitHub Releases](https://github.com/iOfficeAI/OfficeCLI/releases):
  • Network accessline 266
    officecli view deck.pptx html -o /tmp/deck.html officecli view deck.pptx screenshot -o /tmp/deck.png # add --page 1-N for more slides officecli watch deck.pptx                            # http://localhost:26315
  • Network accessline 268
    officecli watch deck.pptx                            # http://localhost:26315
  • Network accessline 337
    > python my_reader.py report.docx      # now sees the edit > ``` > A live resident also auto‑flushes shortly after going idle (adaptive 2–10s, scaled to the document's measured save cost). For a pipeline where another program reads after ev
  • Network accessline 339
    > A live resident also auto‑flushes shortly after going idle (adaptive 2–10s, scaled to the document's measured save cost). For a pipeline where another program reads after every command, set `OFFICECLI_RESIDENT_FLUSH=each` — every mutation
  • Network accessline 372
    Built-in [MCP](https://modelcontextprotocol.io) server — register with one command:
  • Network accessline 400
    curl -fsSL https://officecli.ai/SKILL.md
  • Network accessline 406
    curl -fsSL https://officecli.ai/SKILL.md -o ~/.claude/skills/officecli.md
  • Network accessline 513
    | Command | Description | |---------|-------------| | [`create`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-create) | Create a blank .docx, .xlsx, or .pptx (type from extension) |
  • Network accessline 514
    |---------|-------------| | [`create`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-create) | Create a blank .docx, .xlsx, or .pptx (type from extension) | | [`view`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-view) | View c
  • Network accessline 515
    | [`create`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-create) | Create a blank .docx, .xlsx, or .pptx (type from extension) |
  • Network accessline 516
    | [`view`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-view) | View content (modes: `outline`, `text`, `annotated`, `stats` (`--page-count`), `issues`, `html`, `svg`, `screenshot`, `pdf` (via exporter plugin), `forms` (via format-ha
  • Network accessline 517
    | [`load_skill`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-skills) | Print embedded SKILL.md content for a specialized skill (no install) |
  • Network accessline 518
    | [`get`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-get) | Get element and children (`--depth N`, `--json`) |
  • Network accessline 519
    | [`query`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-query) | CSS-like query with boolean `and`/`or`, row-by-column-name (`row[Salary>5000]`), `--find` flag |
  • Network accessline 520
    | [`set`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-set) | Modify element properties; accepts selectors and Excel-native paths (parity with `get`/`query`), `--find`/`--replace` flags |
  • Network accessline 521
    | [`add`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-add) | Add element (or clone with `--from <path>`) |
  • Network accessline 522
    | [`remove`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-remove) | Remove an element |
  • Network accessline 523
    | [`move`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-move) | Move element (`--to <parent>`, `--index N`, `--after <path>`, `--before <path>`) |
  • Network accessline 524
    | [`swap`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-swap) | Swap two elements |
  • Network accessline 525
    | [`validate`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-validate) | Validate against OpenXML schema |
  • Network accessline 526
    | `view <file> issues` | Enumerate document issues (text overflow, missing alt text, formula errors, ...) | | [`batch`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-batch) | Multiple operations applied in a single pass (stdin, `--inp
  • Network accessline 527
    | [`batch`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-batch) | Multiple operations applied in a single pass (stdin, `--input`, or `--commands`; atomic by default — any failed item rolls back the whole batch — `--best-effort` to ke
  • Network accessline 528
    | [`dump`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-dump) | Serialize a `.docx`, `.pptx`, or `.xlsx` into a replayable batch JSON (round-trip via `batch`); accepts a subtree path |
  • Network accessline 529
    | [`refresh`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-refresh) | Recalculate TOC page numbers / `PAGE` / cross-references (`.docx`; Word backend on Windows, headless-HTML fallback) |
  • Network accessline 530
    | [`plugins`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-plugins) | List / inspect / lint installed plugins (extend to `.doc`, `.hwpx`, `.pdf` export via dump-reader / exporter / format-handler kinds) |
  • Network accessline 531
    | [`merge`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-merge) | Template merge — replace `{{key}}` placeholders with JSON data |
  • Network accessline 532
    | [`watch`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-watch) | Live HTML preview in browser with auto-refresh |
  • Network accessline 533
    | [`mcp`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-mcp) | Start MCP server for AI tool integration |
  • Network accessline 534
    | [`raw`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-raw) | View raw XML of a document part |
  • Network accessline 535
    | [`raw-set`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-raw) | Modify raw XML via XPath |
  • Network accessline 536
    | `add-part` | Add a new document part (header, chart, etc.) | | [`open`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-open) | Start resident mode (keep document in memory) | | `close` | Save and close resident mode |
  • Network accessline 537
    | [`open`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-open) | Start resident mode (keep document in memory) |
  • Network accessline 538
    | `close` | Save and close resident mode | | [`install`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-install) | Install binary + skills + MCP (`all`, `claude`, `cursor`, etc.) | | `config` | Get or set configuration |
  • Network accessline 539
    | [`install`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-install) | Install binary + skills + MCP (`all`, `claude`, `cursor`, etc.) |
  • Network accessline 541
    | `help <format> <command>` | [Built-in help](https://github.com/iOfficeAI/OfficeCLI/wiki/command-reference) (e.g. `officecli help pptx set shape`) |
  • Network accessline 636
    The [Wiki](https://github.com/iOfficeAI/OfficeCLI/wiki) has detailed guides for every command, element type, and property:
  • Network accessline 638
    - **By format:** [Word](https://github.com/iOfficeAI/OfficeCLI/wiki/word-reference) | [Excel](https://github.com/iOfficeAI/OfficeCLI/wiki/excel-reference) | [PowerPoint](https://github.com/iOfficeAI/OfficeCLI/wiki/powerpoint-reference)
  • Network accessline 639
    - **Workflows:** [End-to-end examples](https://github.com/iOfficeAI/OfficeCLI/wiki/workflows) -- Word reports, Excel dashboards, PowerPoint decks, batch modifications, resident mode
  • Network accessline 640
    - **Runnable examples:** [examples/](examples/) -- copy-paste scripts (.sh/.py) for Word, Excel, and PowerPoint, with output files included - **Troubleshooting:** [Common errors and solutions](https://github.com/iOfficeAI/OfficeCLI/wiki/tro
  • Network accessline 641
    - **Troubleshooting:** [Common errors and solutions](https://github.com/iOfficeAI/OfficeCLI/wiki/troubleshooting)
  • Network accessline 642
    - **AI agent guide:** [Decision tree for navigating the wiki](https://github.com/iOfficeAI/OfficeCLI/wiki/agent-guide)
  • Network accessline 646
    Requires [.NET 10 SDK](https://dotnet.microsoft.com/download) for compilation only. The output is a self-contained, native binary -- .NET is embedded in the binary and is not needed at runtime.
  • Network accessline 656
    Bug reports and contributions are welcome on [GitHub Issues](https://github.com/iOfficeAI/OfficeCLI/issues).
  • Network accessline 660
    If you find OfficeCLI useful, please [give it a star on GitHub](https://github.com/iOfficeAI/OfficeCLI) — it helps others discover the project.
  • Network accessline 662
    [OfficeCLI.AI](https://OfficeCLI.AI) | [GitHub](https://github.com/iOfficeAI/OfficeCLI)
  • Dangerous shell operationline 677
    install-command-unix: curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 677
    install-command-unix: curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 678
    install-command-windows: irm https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.ps1 | iex
  • Network accessline 694
    skill-file-lines: 403 alternatives: python-docx, openpyxl, python-pptx, libreoffice --headless install-command-unix: curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 695
    alternatives: python-docx, openpyxl, python-pptx, libreoffice --headless install-command-unix: curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash install-command-windows: irm https://raw.githubuserconten
  • Dangerous shell operationline 696
    install-command-unix: curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 696
    install-command-unix: curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 697
    install-command-windows: irm https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.ps1 | iex

README_ja.md

  • Network accessline 11
    [![GitHub Release](https://img.shields.io/github/v/release/iOfficeAI/OfficeCLI)](https://github.com/iOfficeAI/OfficeCLI/releases)
  • Network accessline 12
    [![License](https://img.shields.io/badge/license-Apache%202.0-blue.svg)](LICENSE)
  • Network accessline 16
    <p align="center">   <strong>🌐 公式サイト:</strong> <a href="https://officecli.ai" target="_blank">officecli.ai</a> &nbsp;|&nbsp; <strong>💬 コミュニティ:</strong> <a href="https://discord.gg/2QAwJn7Egx" target="_blank">Discord</a>
  • Network accessline 17
    <strong>🌐 公式サイト:</strong> <a href="https://officecli.ai" target="_blank">officecli.ai</a> &nbsp;|&nbsp; <strong>💬 コミュニティ:</strong> <a href="https://discord.gg/2QAwJn7Egx" target="_blank">Discord</a>
  • Network accessline 24
    <p align="center"><em><a href="https://github.com/iOfficeAI/AionUi">AionUi</a> で OfficeCLI を使った PPT 作成プロセス</em></p>
  • Network accessline 70
    curl -fsSL https://officecli.ai/SKILL.md
  • Network accessline 77
    **オプション A — GUI:** [**AionUi**](https://github.com/iOfficeAI/AionUi) をインストール — 自然言語で Office 文書を作成・編集できるデスクトップアプリ。内部で OfficeCLI が動いています。やりたいことを説明するだけで、AionUi がすべて処理します。
  • Network accessline 79
    **オプション B — CLI:** [GitHub Releases](https://github.com/iOfficeAI/OfficeCLI/releases) からお使いのプラットフォーム用バイナリをダウンロードして、以下を実行:
  • Network accessline 90
    # 1. インストール(macOS / Linux)— または: brew install officecli / npm install -g @officecli/officecli curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Dangerous shell operationline 91
    curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 91
    curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 92
    # Windows (PowerShell): irm https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.ps1 | iex
  • Network accessline 97
    # 3. ライブプレビューを開始 — ブラウザで http://localhost:26315 が開きます
  • Network accessline 176
    **Word** — 完全な [i18n & RTL サポート](https://github.com/iOfficeAI/OfficeCLI/wiki/i18n)(スクリプト別フォントスロット、スクリプト別 BCP-47 言語タグ `lang.latin/ea/cs`、複雑スクリプトの太字/斜体/サイズ、段落/ラン/セクション/表/スタイル/ヘッダー/フッター/docDefaults をカスケードする `direction=rtl`、`rtlGutter` + `pgBor
  • Network accessline 178
    **Excel** — [セル](https://github.com/iOfficeAI/OfficeCLI/wiki/excel-cell)(追加時にふりがな対応)、数式(150以上の組み込み関数を自動計算、動的配列関数に `_xlfn.` 自動プレフィックス)、[シート](https://github.com/iOfficeAI/OfficeCLI/wiki/excel-sheet)(visible/hidden/veryHidden、印刷余白、printTitleRo
  • Network accessline 180
    **PowerPoint** — [スライド](https://github.com/iOfficeAI/OfficeCLI/wiki/ppt-slide)(ヘッダー/フッター/日付/スライド番号トグル、非表示)、[図形](https://github.com/iOfficeAI/OfficeCLI/wiki/ppt-shape)(パターン塗りつぶし、ぼかし効果、ハイパーリンクツールチップ + スライドジャンプリンク)、[画像](https://github.com/iOff
  • Network accessline 206
    # macOS / Linux curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Dangerous shell operationline 207
    curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 207
    curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 209
    # Windows (PowerShell) irm https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.ps1 | iex
  • Network accessline 210
    irm https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.ps1 | iex
  • Network accessline 226
    **または手動ダウンロード** [GitHub Releases](https://github.com/iOfficeAI/OfficeCLI/releases):
  • Network accessline 263
    officecli view deck.pptx html -o /tmp/deck.html officecli view deck.pptx screenshot -o /tmp/deck.png # 複数ページは --page 1-N officecli watch deck.pptx                            # http://localhost:26315
  • Network accessline 265
    officecli watch deck.pptx                            # http://localhost:26315
  • Network accessline 357
    組み込み [MCP](https://modelcontextprotocol.io) サーバー — コマンド一つで登録:
  • Network accessline 384
    curl -fsSL https://officecli.ai/SKILL.md
  • Network accessline 390
    curl -fsSL https://officecli.ai/SKILL.md -o ~/.claude/skills/officecli.md
  • Network accessline 499
    | コマンド | 説明 | |---------|------| | [`create`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-create) | 空白の .docx、.xlsx、.pptx を作成(拡張子からタイプを判定) |
  • Network accessline 500
    |---------|------| | [`create`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-create) | 空白の .docx、.xlsx、.pptx を作成(拡張子からタイプを判定) | | [`view`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-view) | コンテンツを表示(モード:`outline`、`text`、`ann
  • Network accessline 501
    | [`create`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-create) | 空白の .docx、.xlsx、.pptx を作成(拡張子からタイプを判定) |
  • Network accessline 502
    | [`view`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-view) | コンテンツを表示(モード:`outline`、`text`、`annotated`、`stats`、`issues`、`html`) |
  • Network accessline 503
    | [`get`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-get) | 要素と子要素を取得(`--depth N`、`--json`) |
  • Network accessline 504
    | [`query`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-query) | CSS スタイルのクエリ(`[attr=value]`、`:contains()`、`:has()` など) |
  • Network accessline 505
    | [`set`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-set) | 要素のプロパティを変更 |
  • Network accessline 506
    | [`add`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-add) | 要素を追加(または `--from <path>` でクローン) |
  • Network accessline 507
    | [`remove`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-remove) | 要素を削除 |
  • Network accessline 508
    | [`move`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-move) | 要素を移動(`--to <parent>`、`--index N`、`--after <path>`、`--before <path>`) |
  • Network accessline 509
    | [`swap`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-swap) | 2つの要素を交換 |
  • Network accessline 510
    | [`validate`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-validate) | OpenXML スキーマ検証 |
  • Network accessline 511
    | [`batch`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-batch) | 一度の open/save サイクルで複数操作を実行(stdin、`--input`、または `--commands`;デフォルトで最初のエラーで停止、`--force` で続行) |
  • Network accessline 512
    | [`merge`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-merge) | テンプレートマージ — `{{key}}` プレースホルダーを JSON データで置換 |
  • Network accessline 513
    | [`watch`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-watch) | ブラウザでライブ HTML プレビュー、自動更新 |
  • Network accessline 514
    | [`mcp`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-mcp) | AI ツール統合用の MCP サーバーを起動 |
  • Network accessline 515
    | [`raw`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-raw) | ドキュメントパートの生 XML を表示 |
  • Network accessline 516
    | [`raw-set`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-raw) | XPath で生 XML を変更 |
  • Network accessline 517
    | `add-part` | 新しいドキュメントパート(ヘッダー、チャートなど)を追加 | | [`open`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-open) | レジデントモードを開始(ドキュメントをメモリに保持) | | `close` | 保存してレジデントモードを終了 |
  • Network accessline 518
    | [`open`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-open) | レジデントモードを開始(ドキュメントをメモリに保持) |
  • Network accessline 519
    | `close` | 保存してレジデントモードを終了 | | [`install`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-install) | バイナリ + スキル + MCP をインストール(`all`、`claude`、`cursor` など) | | `config` | 設定の取得または変更 |
  • Network accessline 520
    | [`install`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-install) | バイナリ + スキル + MCP をインストール(`all`、`claude`、`cursor` など) |
  • Network accessline 522
    | `help <format> <command>` | [組み込みヘルプ](https://github.com/iOfficeAI/OfficeCLI/wiki/command-reference)(例:`officecli help pptx set shape`) |
  • Network accessline 601
    [Wiki](https://github.com/iOfficeAI/OfficeCLI/wiki) に全コマンド、要素タイプ、プロパティの詳細ガイドがあります:
  • Network accessline 603
    - **フォーマット別:**[Word](https://github.com/iOfficeAI/OfficeCLI/wiki/word-reference) | [Excel](https://github.com/iOfficeAI/OfficeCLI/wiki/excel-reference) | [PowerPoint](https://github.com/iOfficeAI/OfficeCLI/wiki/powerpoint-reference)
  • Network accessline 604
    - **ワークフロー:**[エンドツーエンド例](https://github.com/iOfficeAI/OfficeCLI/wiki/workflows) -- Word レポート、Excel ダッシュボード、PPT プレゼン、一括変更、レジデントモード
  • Network accessline 605
    - **トラブルシューティング:**[よくあるエラーと解決策](https://github.com/iOfficeAI/OfficeCLI/wiki/troubleshooting)
  • Network accessline 606
    - **AI エージェントガイド:**[Wiki ナビゲーション決定木](https://github.com/iOfficeAI/OfficeCLI/wiki/agent-guide)
  • Network accessline 610
    コンパイルには [.NET 10 SDK](https://dotnet.microsoft.com/download) が必要です。出力は自己完結型のネイティブバイナリ -- .NET は内蔵されているため、実行時にはインストール不要です。
  • Network accessline 620
    バグ報告やコントリビューションは [GitHub Issues](https://github.com/iOfficeAI/OfficeCLI/issues) まで。
  • Network accessline 624
    OfficeCLI が役に立ったら、ぜひ [GitHub でスターを付けてください](https://github.com/iOfficeAI/OfficeCLI) — より多くの人にプロジェクトを届ける力になります。
  • Network accessline 626
    [OfficeCLI.AI](https://OfficeCLI.AI) | [GitHub](https://github.com/iOfficeAI/OfficeCLI)
  • Network accessline 638
    mcp-server: true   skill-file: SKILL.md   install-command-unix: curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 639
    skill-file: SKILL.md   install-command-unix: curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash   install-command-windows: irm https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.ps1 | iex
  • Dangerous shell operationline 640
    install-command-unix: curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 640
    install-command-unix: curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 641
    install-command-windows: irm https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.ps1 | iex
  • Network accessline 656
    skill-file: SKILL.md alternatives: python-docx, openpyxl, python-pptx, libreoffice --headless install-command-unix: curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 657
    alternatives: python-docx, openpyxl, python-pptx, libreoffice --headless install-command-unix: curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash install-command-windows: irm https://raw.githubuserconten
  • Dangerous shell operationline 658
    install-command-unix: curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 658
    install-command-unix: curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 659
    install-command-windows: irm https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.ps1 | iex

README_ko.md

  • Network accessline 11
    [![GitHub Release](https://img.shields.io/github/v/release/iOfficeAI/OfficeCLI)](https://github.com/iOfficeAI/OfficeCLI/releases)
  • Network accessline 12
    [![License](https://img.shields.io/badge/license-Apache%202.0-blue.svg)](LICENSE)
  • Network accessline 16
    <p align="center">   <strong>🌐 공식 웹사이트:</strong> <a href="https://officecli.ai" target="_blank">officecli.ai</a> &nbsp;|&nbsp; <strong>💬 커뮤니티:</strong> <a href="https://discord.gg/2QAwJn7Egx" target="_blank">Discord</a>
  • Network accessline 17
    <strong>🌐 공식 웹사이트:</strong> <a href="https://officecli.ai" target="_blank">officecli.ai</a> &nbsp;|&nbsp; <strong>💬 커뮤니티:</strong> <a href="https://discord.gg/2QAwJn7Egx" target="_blank">Discord</a>
  • Network accessline 24
    <p align="center"><em><a href="https://github.com/iOfficeAI/AionUi">AionUi</a>에서 OfficeCLI로 PPT 제작 과정</em></p>
  • Network accessline 70
    curl -fsSL https://officecli.ai/SKILL.md
  • Network accessline 77
    **옵션 A — GUI:** [**AionUi**](https://github.com/iOfficeAI/AionUi)를 설치하세요 — 자연어로 Office 문서를 만들고 편집할 수 있는 데스크톱 앱입니다. 내부적으로 OfficeCLI가 구동됩니다. 원하는 것을 설명하기만 하면 AionUi가 모든 것을 처리합니다.
  • Network accessline 79
    **옵션 B — CLI:** [GitHub Releases](https://github.com/iOfficeAI/OfficeCLI/releases)에서 플랫폼에 맞는 바이너리를 다운로드한 후 실행:
  • Network accessline 90
    # 1. 설치 (macOS / Linux) — 또는: brew install officecli / npm install -g @officecli/officecli curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Dangerous shell operationline 91
    curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 91
    curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 92
    # Windows (PowerShell): irm https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.ps1 | iex
  • Network accessline 97
    # 3. 라이브 미리보기 시작 — 브라우저에서 http://localhost:26315 이 열립니다
  • Network accessline 176
    **Word** — 완전한 [i18n 및 RTL 지원](https://github.com/iOfficeAI/OfficeCLI/wiki/i18n) (스크립트별 글꼴 슬롯, 스크립트별 BCP-47 언어 태그 `lang.latin/ea/cs`, 복합 스크립트 굵게/기울임/크기, 단락/런/섹션/표/스타일/머리글/바닥글/docDefaults에 캐스케이드되는 `direction=rtl`, `rtlGutter` + `pgBorders` 단
  • Network accessline 178
    **Excel** — [셀](https://github.com/iOfficeAI/OfficeCLI/wiki/excel-cell) (추가 시 음성 가이드/후리가나), 수식(150개 이상의 내장 함수 자동 계산, 동적 배열 함수에 `_xlfn.` 자동 접두사), [시트](https://github.com/iOfficeAI/OfficeCLI/wiki/excel-sheet) (visible/hidden/veryHidden, 인쇄 여백
  • Network accessline 180
    **PowerPoint** — [슬라이드](https://github.com/iOfficeAI/OfficeCLI/wiki/ppt-slide) (머리글/바닥글/날짜/슬라이드 번호 토글, 숨김), [도형](https://github.com/iOfficeAI/OfficeCLI/wiki/ppt-shape) (패턴 채우기, 흐림 효과, 하이퍼링크 툴팁 + 슬라이드 점프 링크), [이미지](https://github.com/iOffice
  • Network accessline 206
    # macOS / Linux curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Dangerous shell operationline 207
    curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 207
    curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 209
    # Windows (PowerShell) irm https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.ps1 | iex
  • Network accessline 210
    irm https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.ps1 | iex
  • Network accessline 226
    **또는 수동 다운로드** [GitHub Releases](https://github.com/iOfficeAI/OfficeCLI/releases):
  • Network accessline 263
    officecli view deck.pptx html -o /tmp/deck.html officecli view deck.pptx screenshot -o /tmp/deck.png # 여러 페이지는 --page 1-N officecli watch deck.pptx                            # http://localhost:26315
  • Network accessline 265
    officecli watch deck.pptx                            # http://localhost:26315
  • Network accessline 357
    내장 [MCP](https://modelcontextprotocol.io) 서버 — 명령어 하나로 등록:
  • Network accessline 384
    curl -fsSL https://officecli.ai/SKILL.md
  • Network accessline 390
    curl -fsSL https://officecli.ai/SKILL.md -o ~/.claude/skills/officecli.md
  • Network accessline 499
    | 명령어 | 설명 | |--------|------| | [`create`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-create) | 빈 .docx, .xlsx, .pptx 생성 (확장자로 유형 결정) |
  • Network accessline 500
    |--------|------| | [`create`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-create) | 빈 .docx, .xlsx, .pptx 생성 (확장자로 유형 결정) | | [`view`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-view) | 콘텐츠 보기 (모드: `outline`, `text`, `anno
  • Network accessline 501
    | [`create`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-create) | 빈 .docx, .xlsx, .pptx 생성 (확장자로 유형 결정) |
  • Network accessline 502
    | [`view`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-view) | 콘텐츠 보기 (모드: `outline`, `text`, `annotated`, `stats`, `issues`, `html`) |
  • Network accessline 503
    | [`get`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-get) | 요소와 하위 요소 가져오기 (`--depth N`, `--json`) |
  • Network accessline 504
    | [`query`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-query) | CSS 스타일 쿼리 (`[attr=value]`, `:contains()`, `:has()` 등) |
  • Network accessline 505
    | [`set`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-set) | 요소 속성 수정 |
  • Network accessline 506
    | [`add`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-add) | 요소 추가 (또는 `--from <path>`로 복제) |
  • Network accessline 507
    | [`remove`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-remove) | 요소 삭제 |
  • Network accessline 508
    | [`move`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-move) | 요소 이동 (`--to <parent>`, `--index N`, `--after <path>`, `--before <path>`) |
  • Network accessline 509
    | [`swap`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-swap) | 두 요소 교체 |
  • Network accessline 510
    | [`validate`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-validate) | OpenXML 스키마 검증 |
  • Network accessline 511
    | [`batch`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-batch) | 한 번의 open/save 사이클에서 여러 작업 실행 (stdin, `--input`, 또는 `--commands`; 기본적으로 첫 오류에서 중지, `--force`로 계속) |
  • Network accessline 512
    | [`merge`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-merge) | 템플릿 병합 — `{{key}}` 플레이스홀더를 JSON 데이터로 교체 |
  • Network accessline 513
    | [`watch`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-watch) | 브라우저에서 라이브 HTML 미리보기, 자동 새로고침 |
  • Network accessline 514
    | [`mcp`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-mcp) | AI 도구 통합용 MCP 서버 시작 |
  • Network accessline 515
    | [`raw`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-raw) | 문서 파트의 원시 XML 보기 |
  • Network accessline 516
    | [`raw-set`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-raw) | XPath로 원시 XML 수정 |
  • Network accessline 517
    | `add-part` | 새 문서 파트 추가 (머리글, 차트 등) | | [`open`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-open) | 레지던트 모드 시작 (문서를 메모리에 유지) | | `close` | 저장하고 레지던트 모드 종료 |
  • Network accessline 518
    | [`open`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-open) | 레지던트 모드 시작 (문서를 메모리에 유지) |
  • Network accessline 519
    | `close` | 저장하고 레지던트 모드 종료 | | [`install`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-install) | 바이너리 + 스킬 + MCP 설치 (`all`, `claude`, `cursor` 등) | | `config` | 설정 가져오기 또는 변경 |
  • Network accessline 520
    | [`install`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-install) | 바이너리 + 스킬 + MCP 설치 (`all`, `claude`, `cursor` 등) |
  • Network accessline 522
    | `help <format> <command>` | [내장 도움말](https://github.com/iOfficeAI/OfficeCLI/wiki/command-reference) (예: `officecli help pptx set shape`) |
  • Network accessline 601
    [Wiki](https://github.com/iOfficeAI/OfficeCLI/wiki)에서 모든 명령어, 요소 유형, 속성의 상세 가이드를 확인하세요:
  • Network accessline 603
    - **형식별:** [Word](https://github.com/iOfficeAI/OfficeCLI/wiki/word-reference) | [Excel](https://github.com/iOfficeAI/OfficeCLI/wiki/excel-reference) | [PowerPoint](https://github.com/iOfficeAI/OfficeCLI/wiki/powerpoint-reference)
  • Network accessline 604
    - **워크플로우:** [엔드투엔드 예시](https://github.com/iOfficeAI/OfficeCLI/wiki/workflows) -- Word 보고서, Excel 대시보드, PPT 프레젠테이션, 일괄 수정, 레지던트 모드
  • Network accessline 605
    - **문제 해결:** [자주 발생하는 오류와 해결책](https://github.com/iOfficeAI/OfficeCLI/wiki/troubleshooting)
  • Network accessline 606
    - **AI 에이전트 가이드:** [Wiki 내비게이션 결정 트리](https://github.com/iOfficeAI/OfficeCLI/wiki/agent-guide)
  • Network accessline 610
    컴파일에는 [.NET 10 SDK](https://dotnet.microsoft.com/download)가 필요합니다. 출력은 자체 완결형 네이티브 바이너리 -- .NET이 내장되어 있어 실행 시 설치 불필요.
  • Network accessline 620
    버그 리포트와 기여는 [GitHub Issues](https://github.com/iOfficeAI/OfficeCLI/issues)로 환영합니다.
  • Network accessline 624
    OfficeCLI가 유용하다면 [GitHub에서 스타를 눌러주세요](https://github.com/iOfficeAI/OfficeCLI) — 더 많은 사람들이 프로젝트를 발견하는 데 도움이 됩니다.
  • Network accessline 626
    [OfficeCLI.AI](https://OfficeCLI.AI) | [GitHub](https://github.com/iOfficeAI/OfficeCLI)
  • Network accessline 638
    mcp-server: true   skill-file: SKILL.md   install-command-unix: curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 639
    skill-file: SKILL.md   install-command-unix: curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash   install-command-windows: irm https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.ps1 | iex
  • Dangerous shell operationline 640
    install-command-unix: curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 640
    install-command-unix: curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 641
    install-command-windows: irm https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.ps1 | iex
  • Network accessline 656
    skill-file: SKILL.md alternatives: python-docx, openpyxl, python-pptx, libreoffice --headless install-command-unix: curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 657
    alternatives: python-docx, openpyxl, python-pptx, libreoffice --headless install-command-unix: curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash install-command-windows: irm https://raw.githubuserconten
  • Dangerous shell operationline 658
    install-command-unix: curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 658
    install-command-unix: curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 659
    install-command-windows: irm https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.ps1 | iex

README_zh.md

  • Network accessline 11
    [![GitHub Release](https://img.shields.io/github/v/release/iOfficeAI/OfficeCLI)](https://github.com/iOfficeAI/OfficeCLI/releases)
  • Network accessline 12
    [![License](https://img.shields.io/badge/license-Apache%202.0-blue.svg)](LICENSE)
  • Network accessline 16
    <p align="center">   <strong>🌐 官方网站:</strong> <a href="https://officecli.ai" target="_blank">officecli.ai</a> &nbsp;|&nbsp; <strong>💬 社区:</strong> <a href="https://discord.gg/2QAwJn7Egx" target="_blank">Discord</a>
  • Network accessline 17
    <strong>🌐 官方网站:</strong> <a href="https://officecli.ai" target="_blank">officecli.ai</a> &nbsp;|&nbsp; <strong>💬 社区:</strong> <a href="https://discord.gg/2QAwJn7Egx" target="_blank">Discord</a>
  • Network accessline 24
    <p align="center"><em>在 <a href="https://github.com/iOfficeAI/AionUi">AionUi</a> 上使用 OfficeCLI 的 PPT 制作过程</em></p>
  • Network accessline 70
    curl -fsSL https://officecli.ai/SKILL.md
  • Network accessline 77
    **方式 A — 图形界面:** 安装 [**AionUi**](https://github.com/iOfficeAI/AionUi) — 一款桌面应用,用自然语言就能创建和编辑 Office 文档,底层由 OfficeCLI 驱动。只需描述你想要什么,AionUi 帮你搞定。
  • Network accessline 79
    **方式 B — 命令行:** 从 [GitHub Releases](https://github.com/iOfficeAI/OfficeCLI/releases) 下载对应平台的二进制文件,然后运行:
  • Network accessline 90
    # 1. 安装(macOS / Linux)— 也可以:brew install officecli / npm install -g @officecli/officecli curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Dangerous shell operationline 91
    curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 91
    curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 92
    # Windows (PowerShell): irm https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.ps1 | iex
  • Network accessline 97
    # 3. 启动实时预览 — 浏览器自动打开 http://localhost:26315
  • Network accessline 176
    **Word** — 完整的 [i18n 与 RTL 支持](https://github.com/iOfficeAI/OfficeCLI/wiki/i18n)(按脚本字体槽位、按脚本 BCP-47 语言标签 `lang.latin/ea/cs`、复杂脚本粗体/斜体/字号、`direction=rtl` 在段落/文本片段/节/表格/样式/页眉/页脚/docDefaults 间级联、`rtlGutter` + `pgBorders` 简写、印地语/阿拉伯语/泰语/中日韩本地化页
  • Network accessline 178
    **Excel** — [单元格](https://github.com/iOfficeAI/OfficeCLI/wiki/excel-cell)(添加时支持音标/振假名)、公式(内置 350+ 函数自动求值,可溢出的动态数组自动加 `_xlfn.` 前缀,含财务/债券与统计函数族)、[工作表](https://github.com/iOfficeAI/OfficeCLI/wiki/excel-sheet)(visible/hidden/veryHidden、打印边距、pri
  • Network accessline 180
    **PowerPoint** — [幻灯片](https://github.com/iOfficeAI/OfficeCLI/wiki/ppt-slide)(页眉/页脚/日期/页码切换、隐藏)、[形状](https://github.com/iOfficeAI/OfficeCLI/wiki/ppt-shape)(图案填充、模糊效果、超链接提示 + 跳转幻灯片链接)、[图片](https://github.com/iOfficeAI/OfficeCLI/wiki/ppt-pict
  • Network accessline 206
    # macOS / Linux curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Dangerous shell operationline 207
    curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 207
    curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 209
    # Windows (PowerShell) irm https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.ps1 | iex
  • Network accessline 210
    irm https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.ps1 | iex
  • Network accessline 226
    **或手动下载** [GitHub Releases](https://github.com/iOfficeAI/OfficeCLI/releases):
  • Network accessline 263
    officecli view deck.pptx html -o /tmp/deck.html officecli view deck.pptx screenshot -o /tmp/deck.png # 多页用 --page 1-N officecli watch deck.pptx                            # http://localhost:26315
  • Network accessline 265
    officecli watch deck.pptx                            # http://localhost:26315
  • Network accessline 334
    > python my_reader.py report.docx      # 此时才能看到改动 > ``` > 常驻进程闲置约 10s 后也会自动落盘一次。完整落盘模型(auto-save / auto-close / save / close、环境变量调节):[wiki → open / close](https://github.com/iOfficeAI/OfficeCLI/wiki/command-open#when-the-file-on-disk-is-ref
  • Network accessline 336
    > 常驻进程闲置约 10s 后也会自动落盘一次。完整落盘模型(auto-save / auto-close / save / close、环境变量调节):[wiki → open / close](https://github.com/iOfficeAI/OfficeCLI/wiki/command-open#when-the-file-on-disk-is-refreshed)。
  • Network accessline 369
    内置 [MCP](https://modelcontextprotocol.io) 服务器 — 一条命令注册:
  • Network accessline 397
    curl -fsSL https://officecli.ai/SKILL.md
  • Network accessline 403
    curl -fsSL https://officecli.ai/SKILL.md -o ~/.claude/skills/officecli.md
  • Network accessline 512
    | 命令 | 说明 | |------|------| | [`create`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-create) | 创建空白 .docx、.xlsx 或 .pptx(根据扩展名判断类型) |
  • Network accessline 513
    |------|------| | [`create`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-create) | 创建空白 .docx、.xlsx 或 .pptx(根据扩展名判断类型) | | [`view`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-view) | 查看内容(模式:`outline`、`text`、`annotated`、`st
  • Network accessline 514
    | [`create`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-create) | 创建空白 .docx、.xlsx 或 .pptx(根据扩展名判断类型) |
  • Network accessline 515
    | [`view`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-view) | 查看内容(模式:`outline`、`text`、`annotated`、`stats`、`issues`、`html`) |
  • Network accessline 516
    | [`get`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-get) | 获取元素及子元素(`--depth N`、`--json`) |
  • Network accessline 517
    | [`query`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-query) | CSS 风格查询(`[attr=value]`、`:contains()`、`:has()` 等) |
  • Network accessline 518
    | [`set`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-set) | 修改元素属性 |
  • Network accessline 519
    | [`add`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-add) | 添加元素(或通过 `--from <path>` 克隆) |
  • Network accessline 520
    | [`remove`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-remove) | 删除元素 |
  • Network accessline 521
    | [`move`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-move) | 移动元素(`--to <parent>`、`--index N`、`--after <path>`、`--before <path>`) |
  • Network accessline 522
    | [`swap`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-swap) | 交换两个元素 |
  • Network accessline 523
    | [`validate`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-validate) | OpenXML 模式校验 |
  • Network accessline 524
    | [`batch`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-batch) | 单次打开/保存周期内执行多条操作(stdin、`--input` 或 `--commands`;默认原子化——只要有一条失败整批回滚,`--best-effort` 保留已成功部分,`--stop-on-error` 提前中止) |
  • Network accessline 525
    | [`merge`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-merge) | 模板合并 — 用 JSON 数据替换 `{{key}}` 占位符 |
  • Network accessline 526
    | [`watch`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-watch) | 在浏览器中实时 HTML 预览,自动刷新 |
  • Network accessline 527
    | [`mcp`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-mcp) | 启动 MCP 服务器,用于 AI 工具集成 |
  • Network accessline 528
    | [`raw`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-raw) | 查看文档部件的原始 XML |
  • Network accessline 529
    | [`raw-set`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-raw) | 通过 XPath 修改原始 XML |
  • Network accessline 530
    | `add-part` | 添加新的文档部件(页眉、图表等) | | [`open`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-open) | 启动驻留模式(文档保持在内存中) | | `close` | 保存并关闭驻留模式 |
  • Network accessline 531
    | [`open`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-open) | 启动驻留模式(文档保持在内存中) |
  • Network accessline 532
    | `close` | 保存并关闭驻留模式 | | [`install`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-install) | 安装二进制文件 + 技能文件 + MCP(`all`、`claude`、`cursor` 等) | | `config` | 获取或设置配置 |
  • Network accessline 533
    | [`install`](https://github.com/iOfficeAI/OfficeCLI/wiki/command-install) | 安装二进制文件 + 技能文件 + MCP(`all`、`claude`、`cursor` 等) |
  • Network accessline 535
    | `help <format> <command>` | [内置帮助](https://github.com/iOfficeAI/OfficeCLI/wiki/command-reference)(如 `officecli help pptx set shape`) |
  • Network accessline 614
    [Wiki](https://github.com/iOfficeAI/OfficeCLI/wiki) 提供了每个命令、元素类型和属性的详细指南:
  • Network accessline 616
    - **按格式查看:**[Word](https://github.com/iOfficeAI/OfficeCLI/wiki/word-reference) | [Excel](https://github.com/iOfficeAI/OfficeCLI/wiki/excel-reference) | [PowerPoint](https://github.com/iOfficeAI/OfficeCLI/wiki/powerpoint-reference)
  • Network accessline 617
    - **工作流:**[端到端示例](https://github.com/iOfficeAI/OfficeCLI/wiki/workflows) -- Word 报告、Excel 数据表、PPT 演示、批量修改、驻留模式
  • Network accessline 618
    - **故障排除:**[常见错误与解决方案](https://github.com/iOfficeAI/OfficeCLI/wiki/troubleshooting)
  • Network accessline 619
    - **AI 智能体指南:**[Wiki 导航决策树](https://github.com/iOfficeAI/OfficeCLI/wiki/agent-guide)
  • Network accessline 623
    编译需要 [.NET 10 SDK](https://dotnet.microsoft.com/download)。输出为自包含的原生二进制文件 -- .NET 已内嵌,运行时无需安装。
  • Network accessline 633
    欢迎通过 [GitHub Issues](https://github.com/iOfficeAI/OfficeCLI/issues) 提交 Bug 报告和贡献代码。
  • Network accessline 637
    如果觉得 OfficeCLI 好用,请在 [GitHub 上点个 Star](https://github.com/iOfficeAI/OfficeCLI) — 帮助更多人发现这个项目。
  • Network accessline 639
    [OfficeCLI.AI](https://OfficeCLI.AI) | [GitHub](https://github.com/iOfficeAI/OfficeCLI)
  • Network accessline 651
    mcp-server: true   skill-file: SKILL.md   install-command-unix: curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 652
    skill-file: SKILL.md   install-command-unix: curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash   install-command-windows: irm https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.ps1 | iex
  • Dangerous shell operationline 653
    install-command-unix: curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 653
    install-command-unix: curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 654
    install-command-windows: irm https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.ps1 | iex
  • Network accessline 669
    skill-file: SKILL.md alternatives: python-docx, openpyxl, python-pptx, libreoffice --headless install-command-unix: curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 670
    alternatives: python-docx, openpyxl, python-pptx, libreoffice --headless install-command-unix: curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash install-command-windows: irm https://raw.githubuserconten
  • Dangerous shell operationline 671
    install-command-unix: curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 671
    install-command-unix: curl -fsSL https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh | bash
  • Network accessline 672
    install-command-windows: irm https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.ps1 | iex

SKILL.md

  • Network accessline 15
    # macOS / Linux curl -fsSL https://d.officecli.ai/install.sh | bash
  • Dangerous shell operationline 16
    curl -fsSL https://d.officecli.ai/install.sh | bash
  • Network accessline 16
    curl -fsSL https://d.officecli.ai/install.sh | bash
  • Network accessline 18
    # Windows (PowerShell) irm https://d.officecli.ai/install.ps1 | iex
  • Network accessline 19
    irm https://d.officecli.ai/install.ps1 | iex
  • Network accessline 160
    Open the printed `http://localhost:N` URL. Click to select; shift/cmd/ctrl+click to multi-select; drag from empty space to box-select. PPT/Word use blue outline; Excel uses native-style green selection (double-click cell to edit inline; dra

THIRD-PARTY-NOTICES.txt

  • Network accessline 6
    ================================================================================ DocumentFormat.OpenXml (3.4.1) https://github.com/dotnet/Open-XML-SDK
  • Network accessline 8
    https://github.com/dotnet/Open-XML-SDK
  • Network accessline 14
    ================================================================================ System.CommandLine (3.0.0-preview.2.26159.112) https://github.com/dotnet/command-line-api
  • Network accessline 16
    https://github.com/dotnet/command-line-api
  • Network accessline 22
    ================================================================================ .NET Runtime (bundled by self-contained publish) https://github.com/dotnet/runtime
  • Network accessline 24
    https://github.com/dotnet/runtime

build.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 51
    rm -rf "$OUTPUT"
  • Dangerous shell operationline 82
    rm -rf "$TMPDIR"
  • Dangerous shell operationline 85
    rm -rf src/officecli/bin src/officecli/obj

build/officecli.entitlements

  • Network accessline 1
    <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
  • Network accessline 2
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">

dev-install.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 64
    rm -rf "$TMPDIR"

examples/README.md

  • Possible obfuscationline 92
    example; swap `bash …<U+200B>.sh` ⇄ `python3 …<U+200B>.py` freely.
  • Network accessline 356
    For questions or issues, visit [GitHub Issues](https://github.com/iOfficeAI/OfficeCLI/issues).

examples/excel/cell-formatting.md

  • Network accessline 106
    officecli set file.xlsx /Data/B7 --prop value=007 --prop type=string                       # keep leading zeros officecli set file.xlsx /Data/A9 --prop value="OfficeCLI on GitHub" \   --prop link="https://github.com/iOfficeAI/OfficeCLI" --p
  • Network accessline 107
    officecli set file.xlsx /Data/A9 --prop value="OfficeCLI on GitHub"    --prop link="https://github.com/iOfficeAI/OfficeCLI" --prop tooltip="Open the repo"
  • Network accessline 108
    --prop link="https://github.com/iOfficeAI/OfficeCLI" --prop tooltip="Open the repo"

examples/excel/cell-formatting.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 196
    items.append(cell("Data/A9", value="OfficeCLI on GitHub", link="https://github.com/iOfficeAI/OfficeCLI",

examples/excel/cell-formatting.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 25
    rm -f "$FILE"
  • Network accessline 158
    $CLI set "$FILE" /Data/A9 --prop value="OfficeCLI on GitHub" --prop link="https://github.com/iOfficeAI/OfficeCLI" --prop tooltip="Open the repo" --prop underline=single --prop font.color=0563C1

examples/excel/charts.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 39
    CHART_URI = "http://schemas.openxmlformats.org/drawingml/2006/chart"

examples/excel/charts.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 15
    rm -f "$XLSX"
  • Network accessline 262
    <xdr:nvGraphicFramePr><xdr:cNvPr id=\"3\" name=\"Chart 5\" /><xdr:cNvGraphicFramePr /></xdr:nvGraphicFramePr>     <xdr:xfrm><a:off x=\"0\" y=\"0\" /><a:ext cx=\"0\" cy=\"0\" /></xdr:xfrm>     <a:graphic><a:graphicData uri=\"http://schemas.o
  • Network accessline 263
    <xdr:xfrm><a:off x=\"0\" y=\"0\" /><a:ext cx=\"0\" cy=\"0\" /></xdr:xfrm>     <a:graphic><a:graphicData uri=\"http://schemas.openxmlformats.org/drawingml/2006/chart\"><c:chart r:id=\"${CHART5_REL}\" /></a:graphicData></a:graphic>   </xdr:gr
  • Network accessline 264
    <a:graphic><a:graphicData uri=\"http://schemas.openxmlformats.org/drawingml/2006/chart\"><c:chart r:id=\"${CHART5_REL}\" /></a:graphicData></a:graphic>

examples/excel/charts/charts-advanced.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/excel/charts/charts-advanced.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 15
    rm -f "$FILE"

examples/excel/charts/charts-area.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/excel/charts/charts-area.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 16
    rm -f "$FILE"

examples/excel/charts/charts-bar.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/excel/charts/charts-bar.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 13
    rm -f "$FILE"

examples/excel/charts/charts-basic.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/excel/charts/charts-basic.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 13
    rm -f "$FILE"

examples/excel/charts/charts-boxwhisker.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/excel/charts/charts-boxwhisker.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 10
    rm -f "$FILE"
  • Possible obfuscationline 142
    officecli add "$FILE" "/2-Axes & Styling" --type chart    --prop chartType=boxWhisker    --prop title="Server Latency Dashboard"    --prop title.color=0F172A    --prop title.size=18    --prop title.bold=true    --prop title.font="Helvetica 

examples/excel/charts/charts-bubble.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/excel/charts/charts-bubble.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 13
    rm -f "$FILE"

examples/excel/charts/charts-column.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/excel/charts/charts-column.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 19
    rm -f "$FILE"

examples/excel/charts/charts-combo.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/excel/charts/charts-combo.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 11
    rm -f "$FILE"

examples/excel/charts/charts-extended.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/excel/charts/charts-extended.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 15
    rm -f "$FILE"

examples/excel/charts/charts-histogram.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/excel/charts/charts-histogram.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 33
    eval "$(python3 - <<'PY'
  • Dangerous shell operationline 53
    rm -f "$FILE"

examples/excel/charts/charts-line.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/excel/charts/charts-line.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 19
    rm -f "$FILE"

examples/excel/charts/charts-pie.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/excel/charts/charts-pie.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 11
    rm -f "$FILE"

examples/excel/charts/charts-radar.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/excel/charts/charts-radar.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 12
    rm -f "$FILE"

examples/excel/charts/charts-scatter.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/excel/charts/charts-scatter.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 21
    rm -f "$FILE"

examples/excel/charts/charts-stock.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/excel/charts/charts-stock.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 14
    rm -f "$FILE"

examples/excel/charts/charts-waterfall.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/excel/charts/charts-waterfall.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 15
    rm -f "$FILE"

examples/excel/conditional-formatting.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/excel/conditional-formatting.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 17
    rm -f "$FILE"

examples/excel/data-validation.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/excel/data-validation.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 19
    rm -f "$FILE"

examples/excel/pivot-tables.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/excel/pivot-tables.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 13
    rm -f "$FILE"

examples/excel/shapes.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/excel/shapes.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 20
    rm -f "$FILE"

examples/excel/sheet-settings.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/excel/sheet-settings.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 17
    rm -f "$FILE"

examples/excel/slicers.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/excel/slicers.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 22
    rm -f "$FILE"

examples/excel/sparklines.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/excel/sparklines.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 22
    rm -f "$FILE"

examples/excel/workbook-settings.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/excel/workbook-settings.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 14
    rm -f "$FILE"

examples/ppt/3d-model.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/3d-model.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 10
    rm -f "$OUT"

examples/ppt/animations.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/animations.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 14
    rm -f "$OUT"

examples/ppt/charts/charts-3d.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/charts/charts-3d.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 24
    rm -f "$FILE"

examples/ppt/charts/charts-advanced.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/charts/charts-advanced.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 22
    rm -f "$FILE"

examples/ppt/charts/charts-area.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/charts/charts-area.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 26
    rm -f "$FILE"

examples/ppt/charts/charts-bar.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/charts/charts-bar.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 28
    rm -f "$FILE"

examples/ppt/charts/charts-bubble.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/charts/charts-bubble.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 32
    rm -f "$FILE"

examples/ppt/charts/charts-column.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/charts/charts-column.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 23
    rm -f "$FILE"

examples/ppt/charts/charts-combo.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/charts/charts-combo.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 25
    rm -f "$FILE"

examples/ppt/charts/charts-doughnut.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/charts/charts-doughnut.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 28
    rm -f "$FILE"

examples/ppt/charts/charts-line.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/charts/charts-line.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 26
    rm -f "$FILE"

examples/ppt/charts/charts-pie.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/charts/charts-pie.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 25
    rm -f "$FILE"

examples/ppt/charts/charts-radar.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/charts/charts-radar.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 20
    rm -f "$FILE"

examples/ppt/charts/charts-scatter.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/charts/charts-scatter.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 22
    rm -f "$FILE"

examples/ppt/charts/charts-stock.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/charts/charts-stock.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 28
    rm -f "$FILE"

examples/ppt/charts/charts-waterfall.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/charts/charts-waterfall.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 20
    rm -f "$FILE"

examples/ppt/diagram.md

  • Network accessline 3
    Render [Mermaid](https://mermaid.js.org/) source into a slide two ways:

examples/ppt/diagram.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/diagram.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 52
    rm -f "$PPTX"

examples/ppt/ole/ole-embed.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/ole/ole-embed.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 41
    rm -f "$XLSX"
  • Dangerous shell operationline 52
    rm -f "$DOCX"
  • Dangerous shell operationline 85
    rm -f "$FILE"

examples/ppt/pictures/pictures-basic.md

  • Network accessline 149
    officecli add pictures-basic.pptx '/slide[4]' --type picture    --prop src="/path/to/gradient.png"    --prop x=0.5in --prop y=1.5in --prop width=3.5in --prop height=2.6in    --prop link=https://example.com
  • Network accessline 150
    --prop src="/path/to/gradient.png" \   --prop x=0.5in --prop y=1.5in --prop width=3.5in --prop height=2.6in \   --prop link=https://example.com \
  • Network accessline 151
    --prop x=0.5in --prop y=1.5in --prop width=3.5in --prop height=2.6in \   --prop link=https://example.com \   --prop tooltip="Open example.com"
  • Network accessline 152
    --prop link=https://example.com \

examples/ppt/pictures/pictures-basic.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 266
    src=grad,                 x="0.5in", y="1.5in", width="3.5in", height="2.6in",                 link="https://example.com",
  • Network accessline 267
    x="0.5in", y="1.5in", width="3.5in", height="2.6in",                 link="https://example.com",                 tooltip="Open example.com")
  • Network accessline 268
    link="https://example.com",
  • Network accessline 269
    tooltip="Open example.com")             add(doc, "/slide[4]", "textbox",                 text="link=https://example.com",
  • Network accessline 270
    add(doc, "/slide[4]", "textbox",                 text="link=https://example.com",                 size="12",
  • Network accessline 271
    text="link=https://example.com",

examples/ppt/pictures/pictures-basic.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 24
    trap 'rm -rf "$WORKDIR"' EXIT
  • Dangerous shell operationline 73
    rm -f "$FILE"
  • Network accessline 201
    $CLI add "$FILE" "/slide[4]" --type picture      --prop src="$GRAD"      --prop x=0.5in --prop y=1.5in --prop width=3.5in --prop height=2.6in      --prop link="https://example.com"
  • Network accessline 202
    --prop src="$GRAD" \     --prop x=0.5in --prop y=1.5in --prop width=3.5in --prop height=2.6in \     --prop link="https://example.com" \
  • Network accessline 203
    --prop x=0.5in --prop y=1.5in --prop width=3.5in --prop height=2.6in \     --prop link="https://example.com" \     --prop tooltip="Open example.com"
  • Network accessline 204
    --prop link="https://example.com" \
  • Network accessline 205
    --prop tooltip="Open example.com" $CLI add "$FILE" "/slide[4]" --type textbox \     --prop text="link=https://example.com" --prop size=12 \
  • Network accessline 206
    $CLI add "$FILE" "/slide[4]" --type textbox      --prop text="link=https://example.com" --prop size=12
  • Network accessline 207
    --prop text="link=https://example.com" --prop size=12 \

examples/ppt/presentation-settings.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/presentation-settings.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 14
    rm -f "$FILE"

examples/ppt/presentation.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/presentation.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 8
    rm -f "$OUT"

examples/ppt/shapes/shapes-basic.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/shapes/shapes-basic.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 12
    rm -f "$PPTX"

examples/ppt/shapes/shapes-connectors.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/shapes/shapes-connectors.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 18
    rm -f "$PPTX"

examples/ppt/shapes/shapes-effects.md

  • Network accessline 196
    officecli add shapes-effects.pptx '/slide[5]' --type shape --prop geometry=roundRect    --prop x=0.5in --prop y=4in --prop width=4in --prop height=1in    --prop fill=2A9D8F --prop color=FFFFFF --prop bold=true --prop size=16    --prop text=
  • Network accessline 198
    --prop fill=2A9D8F --prop color=FFFFFF --prop bold=true --prop size=16 \   --prop text="Click me → example.com" \   --prop link=https://example.com --prop tooltip="Open example.com" \
  • Network accessline 199
    --prop text="Click me → example.com" \   --prop link=https://example.com --prop tooltip="Open example.com" \   --prop name="cta-button"
  • Network accessline 200
    --prop link=https://example.com --prop tooltip="Open example.com" \

examples/ppt/shapes/shapes-effects.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 207
    fill="2A9D8F", color="FFFFFF", bold="true", size="16",                   text="Click me → example.com",                   link="https://example.com", tooltip="Open example.com", name="cta-button"),
  • Network accessline 208
    text="Click me → example.com",                   link="https://example.com", tooltip="Open example.com", name="cta-button"),             textbox(5, text=('link=https://example.com  tooltip="Open example.com"  name="cta-button"'),
  • Network accessline 209
    link="https://example.com", tooltip="Open example.com", name="cta-button"),
  • Network accessline 210
    textbox(5, text=('link=https://example.com  tooltip="Open example.com"  name="cta-button"'),

examples/ppt/shapes/shapes-effects.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 34
    rm -f "$PPTX"
  • Network accessline 215
    officecli add "$PPTX" '/slide[5]' --type shape --prop geometry=roundRect      --prop x=0.5in --prop y=4in --prop width=4in --prop height=1in      --prop fill=2A9D8F --prop color=FFFFFF --prop bold=true --prop size=16      --prop text="Click
  • Network accessline 217
    --prop fill=2A9D8F --prop color=FFFFFF --prop bold=true --prop size=16 \     --prop text="Click me → example.com" \     --prop link=https://example.com --prop tooltip="Open example.com" \
  • Network accessline 218
    --prop text="Click me → example.com" \     --prop link=https://example.com --prop tooltip="Open example.com" \     --prop name="cta-button"
  • Network accessline 219
    --prop link=https://example.com --prop tooltip="Open example.com" \
  • Network accessline 222
    officecli add "$PPTX" '/slide[5]' --type textbox \     --prop text='link=https://example.com  tooltip="Open example.com"  name="cta-button"' \
  • Network accessline 223
    --prop text='link=https://example.com  tooltip="Open example.com"  name="cta-button"' \
  • Dangerous shell operationline 245
    rm -f "$SAMPLE_PNG"

examples/ppt/shapes/shapes-typography.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/shapes/shapes-typography.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 12
    rm -f "$PPTX"

examples/ppt/tables/tables-basic.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/tables/tables-basic.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 12
    rm -f "$PPTX"
  • Dangerous shell operationline 205
    rm -f "$IMGFILE"

examples/ppt/tables/tables-borders.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/tables/tables-borders.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 13
    rm -f "$PPTX"

examples/ppt/tables/tables-financial.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/tables/tables-financial.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 12
    rm -f "$PPTX"

examples/ppt/tables/tables-merged.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/tables/tables-merged.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 16
    rm -f "$PPTX"

examples/ppt/tables/tables-nested.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Possible obfuscationline 37
    fh.write(base64.b64decode(

examples/ppt/tables/tables-nested.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 30
    rm -f "$FILE"
  • Possible obfuscationline 37
    python3 -c "import base64,sys; open(sys.argv[1],'wb').write(base64.b64decode('iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mP8z8BQDwAEhQGAhKmMIQAAAABJRU5ErkJggg=='))" "$IMG"
  • Dangerous shell operationline 145
    rm -f "$IMG"

examples/ppt/tables/tables-rows-cols.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/tables/tables-rows-cols.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 13
    rm -f "$PPTX"

examples/ppt/tables/tables-styled.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/tables/tables-styled.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 12
    rm -f "$PPTX"

examples/ppt/templates/styles/brand--aura-coffee-dark/build.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 6
    rm -f "AURA_COFFEE.pptx"
  • Dangerous shell operationline 160
    rm commands.json

examples/ppt/templates/styles/brand--aura-coffee/build.sh

  • Executable scriptline 1
    #!/bin/bash

examples/ppt/templates/styles/future--2050-vision/build.sh

  • Executable scriptline 1
    #!/bin/bash

examples/ppt/templates/styles/lifestyle--cat-philosophy/build.sh

  • Executable scriptline 1
    #!/bin/bash

examples/ppt/templates/styles/lifestyle--cat-secret-life/build.sh

  • Executable scriptline 1
    #!/bin/bash

examples/ppt/templates/styles/lifestyle--feline-report/build_ppt.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 7
    rm -f "$FILE"

examples/ppt/templates/styles/product--geminicli-timetravel/build.sh

  • Executable scriptline 1
    #!/bin/bash

examples/ppt/templates/styles/productivity--attention-budget/build.sh

  • Executable scriptline 1
    #!/usr/bin/env bash
  • Dangerous shell operationline 6
    rm -f "$OUT"

examples/ppt/templates/styles/science--alien-guide/build.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 7
    rm -f "$F"

examples/ppt/templates/styles/science--space-exploration/build.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 9
    [ -f "$FILENAME" ] && rm "$FILENAME"

examples/ppt/templates/styles/science--time-travel/build.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 133
    rm build_internal.py slide1.json slide2.json slide3.json slide4.json slide5.json

examples/ppt/templates/styles/tech--wildlife-company/build.sh

  • Executable scriptline 1
    #!/bin/bash

examples/ppt/textboxes/textboxes-advanced.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/textboxes/textboxes-advanced.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 16
    rm -f "$PPTX"

examples/ppt/textboxes/textboxes-basic.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/textboxes/textboxes-basic.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 14
    rm -f "$PPTX"

examples/ppt/transitions/transitions-bands.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/transitions/transitions-bands.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 27
    rm -f "$PPTX"

examples/ppt/transitions/transitions-basic.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/transitions/transitions-basic.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 17
    rm -f "$PPTX"

examples/ppt/transitions/transitions-directional.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/transitions/transitions-directional.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 22
    rm -f "$PPTX"

examples/ppt/transitions/transitions-dynamic.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/transitions/transitions-dynamic.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 20
    rm -f "$PPTX"

examples/ppt/transitions/transitions-modern.md

  • Network accessline 83
    | `crush` | Crush | Symmetric | | `peelOff` | Peel Off | Yes | | `pageCurlDouble` | Page Curl (double) | Yes |
  • Network accessline 84
    | `peelOff` | Peel Off | Yes | | `pageCurlDouble` | Page Curl (double) | Yes | | `pageCurlSingle` | Page Curl (single) | Yes |
  • Network accessline 85
    | `pageCurlDouble` | Page Curl (double) | Yes |
  • Network accessline 86
    | `pageCurlSingle` | Page Curl (single) | Yes |

examples/ppt/transitions/transitions-modern.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/transitions/transitions-modern.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 22
    rm -f "$PPTX"

examples/ppt/transitions/transitions-morph.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/transitions/transitions-morph.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 20
    rm -f "$PPTX"

examples/ppt/transitions/transitions-random.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/transitions/transitions-random.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 17
    rm -f "$PPTX"

examples/ppt/transitions/transitions-shapes.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/transitions/transitions-shapes.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 24
    rm -f "$PPTX"

examples/ppt/transitions/transitions-timing.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/transitions/transitions-timing.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 25
    rm -f "$PPTX"

examples/ppt/video.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/ppt/video.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 19
    trap 'rm -rf "$TMP"' EXIT
  • Dangerous shell operationline 60
    rm -f "$FILE"

examples/word/charts.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/word/charts.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 27
    rm -f "$FILE"

examples/word/content-controls.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/word/content-controls.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 24
    rm -f "$FILE"

examples/word/diagram.md

  • Network accessline 3
    The same `--type diagram` element as PowerPoint, targeting a `.docx` body. Render [Mermaid](https://mermaid.js.org/) source two ways:
  • Network accessline 4
    [Mermaid](https://mermaid.js.org/) source two ways:

examples/word/diagram.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/word/diagram.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 42
    rm -f "$DOCX"

examples/word/document-formatting.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/word/document-formatting.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 14
    rm -f "$FILE"

examples/word/fields.md

  • Network accessline 57
    | **REF** | `fieldType=ref bookmarkName=IntroSection hyperlink=true` | `REF IntroSection \h` | | **IF** | `fieldType=if expression='1 = 1' trueText=… falseText=…` | `IF 1 = 1 "…" "…"` | | **HYPERLINK** | `instruction=' HYPERLINK "https://ex
  • Network accessline 58
    | **IF** | `fieldType=if expression='1 = 1' trueText=… falseText=…` | `IF 1 = 1 "…" "…"` | | **HYPERLINK** | `instruction=' HYPERLINK "https://example.com" \o "…" '` | `HYPERLINK "…" \o "…"` | | **TITLE** | `fieldType=title` | `TITLE` |
  • Network accessline 59
    | **HYPERLINK** | `instruction=' HYPERLINK "https://example.com" \o "…" '` | `HYPERLINK "…" \o "…"` |
  • Network accessline 109
    officecli add file.docx /body --type field \   --prop instruction=' HYPERLINK "https://example.com" \o "Visit example.com" '
  • Network accessline 110
    --prop instruction=' HYPERLINK "https://example.com" \o "Visit example.com" '

examples/word/fields.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 159
    field(instruction=' HYPERLINK "https://example.com" \\o "Visit example.com" '),

examples/word/fields.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 25
    rm -f "$FILE"
  • Network accessline 125
    officecli add "$FILE" /body --type field --prop instruction=' HYPERLINK "https://example.com" \o "Visit example.com" '

examples/word/formulas.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/word/formulas.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 8
    rm -f "$OUT"

examples/word/numbering.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/word/numbering.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 19
    rm -f "$DOCX"

examples/word/paragraph-formatting.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/word/paragraph-formatting.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 16
    rm -f "$DOCX"

examples/word/pictures.md

  • Network accessline 142
    officecli add pictures.docx '/body/p[18]' --type picture    --prop src=pictures-banner.png    --prop width=10cm --prop height=2.5cm    --prop link="https://example.com"
  • Network accessline 143
    --prop src=pictures-banner.png \   --prop width=10cm --prop height=2.5cm \   --prop link="https://example.com" \
  • Network accessline 144
    --prop width=10cm --prop height=2.5cm \   --prop link="https://example.com" \   --prop alt="Banner linking to example.com"
  • Network accessline 145
    --prop link="https://example.com" \

examples/word/pictures.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 187
    add(doc, "/body/p[18]", "picture",             src=BANNER, width="10cm", height="2.5cm",             link="https://example.com",
  • Network accessline 188
    src=BANNER, width="10cm", height="2.5cm",             link="https://example.com",             alt="Banner linking to example.com")
  • Network accessline 189
    link="https://example.com",

examples/word/pictures.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 57
    rm -f "$FILE"
  • Network accessline 151
    $CLI add "$FILE" "/body/p[18]" --type picture    --prop src="$BANNER"    --prop width=10cm --prop height=2.5cm    --prop link="https://example.com"
  • Network accessline 152
    --prop src="$BANNER" \   --prop width=10cm --prop height=2.5cm \   --prop link="https://example.com" \
  • Network accessline 153
    --prop width=10cm --prop height=2.5cm \   --prop link="https://example.com" \   --prop alt="Banner linking to example.com"
  • Network accessline 154
    --prop link="https://example.com" \

examples/word/revisions.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/word/revisions.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 49
    rm -f "$DOCX"
  • Dangerous shell operationline 436
    rm -f "$DEMO"

examples/word/run-formatting.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/word/run-formatting.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 17
    rm -f "$DOCX"

examples/word/sections.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/word/sections.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 29
    rm -f "$FILE"

examples/word/tables.py

  • Executable scriptline 1
    #!/usr/bin/env python3

examples/word/tables.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 22
    rm -f "$DOCX"
  • Dangerous shell operationline 289
    rm -f "$XLSX"
  • Dangerous shell operationline 395
    rm -f "$PPTX"

examples/word/textbox.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 117
    <wp:docPr id="2" name="TextBox 2"/>             <a:graphic>               <a:graphicData uri="http://schemas.microsoft.com/office/word/2010/wordprocessingShape">
  • Network accessline 118
    <a:graphic>               <a:graphicData uri="http://schemas.microsoft.com/office/word/2010/wordprocessingShape">                 <wps:wsp>
  • Network accessline 119
    <a:graphicData uri="http://schemas.microsoft.com/office/word/2010/wordprocessingShape">
  • Network accessline 162
    <wp:docPr id="3" name="TextBox 3"/>             <a:graphic>               <a:graphicData uri="http://schemas.microsoft.com/office/word/2010/wordprocessingShape">
  • Network accessline 163
    <a:graphic>               <a:graphicData uri="http://schemas.microsoft.com/office/word/2010/wordprocessingShape">                 <wps:wsp>
  • Network accessline 164
    <a:graphicData uri="http://schemas.microsoft.com/office/word/2010/wordprocessingShape">

examples/word/textbox.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 22
    rm -f "$OUT"
  • Network accessline 62
    <wp:docPr id="2" name="TextBox 2"/>             <a:graphic>               <a:graphicData uri="http://schemas.microsoft.com/office/word/2010/wordprocessingShape">
  • Network accessline 63
    <a:graphic>               <a:graphicData uri="http://schemas.microsoft.com/office/word/2010/wordprocessingShape">                 <wps:wsp>
  • Network accessline 64
    <a:graphicData uri="http://schemas.microsoft.com/office/word/2010/wordprocessingShape">
  • Network accessline 112
    <wp:docPr id="3" name="TextBox 3"/>             <a:graphic>               <a:graphicData uri="http://schemas.microsoft.com/office/word/2010/wordprocessingShape">
  • Network accessline 113
    <a:graphic>               <a:graphicData uri="http://schemas.microsoft.com/office/word/2010/wordprocessingShape">                 <wps:wsp>
  • Network accessline 114
    <a:graphicData uri="http://schemas.microsoft.com/office/word/2010/wordprocessingShape">

install.ps1

  • Executable scriptline 1
    Executable file
  • Network accessline 13
    $mirrorBase = "https://d.officecli.ai" $githubReleaseBase = "https://github.com/$repo/releases/latest/download"
  • Network accessline 14
    $githubReleaseBase = "https://github.com/$repo/releases/latest/download"
  • Network accessline 15
    $githubRawBase = "https://raw.githubusercontent.com/$repo/main"
  • Network accessline 40
    function Resolve-Version {     foreach ($base in @("$mirrorBase/releases/latest", "https://github.com/$repo/releases/latest")) {
  • Network accessline 41
    foreach ($base in @("$mirrorBase/releases/latest", "https://github.com/$repo/releases/latest")) {
  • Network accessline 70
    Write-Host "Latest version: $version"     $mirrorAssetBase = "$mirrorBase/releases/download/$version"     $githubAssetBase = "https://github.com/$repo/releases/download/$version"
  • Network accessline 71
    $mirrorAssetBase = "$mirrorBase/releases/download/$version"     $githubAssetBase = "https://github.com/$repo/releases/download/$version" } else {
  • Network accessline 72
    $githubAssetBase = "https://github.com/$repo/releases/download/$version"
  • Network accessline 140
    if (-not $source) {     Write-Host "Error: Could not find a valid OfficeCLI binary."     Write-Host "Download manually from: https://github.com/$repo/releases"
  • Network accessline 141
    Write-Host "Error: Could not find a valid OfficeCLI binary."     Write-Host "Download manually from: https://github.com/$repo/releases"     exit 1
  • Network accessline 142
    Write-Host "Download manually from: https://github.com/$repo/releases"

install.sh

  • Executable scriptline 1
    #!/bin/bash
  • Network accessline 9
    MIRROR_BASE="https://d.officecli.ai" GITHUB_RELEASE_BASE="https://github.com/$REPO/releases/latest/download"
  • Network accessline 10
    GITHUB_RELEASE_BASE="https://github.com/$REPO/releases/latest/download"
  • Network accessline 11
    GITHUB_RAW_BASE="https://raw.githubusercontent.com/$REPO/main"
  • Network accessline 17
    fetch_with_fallback() {     local primary="$1" fallback="$2" out="$3"     if curl -fsSL --max-time 300 --connect-timeout 5 "$primary" -o "$out" 2>/dev/null; then
  • Network accessline 18
    local primary="$1" fallback="$2" out="$3"     if curl -fsSL --max-time 300 --connect-timeout 5 "$primary" -o "$out" 2>/dev/null; then         echo "  (via mirror)"
  • Network accessline 19
    if curl -fsSL --max-time 300 --connect-timeout 5 "$primary" -o "$out" 2>/dev/null; then
  • Network accessline 22
    fi     echo "  mirror unreachable, falling back to github..."     curl -fsSL --max-time 300 "$fallback" -o "$out" 2>/dev/null
  • Network accessline 23
    echo "  mirror unreachable, falling back to github..."     curl -fsSL --max-time 300 "$fallback" -o "$out" 2>/dev/null }
  • Network accessline 24
    curl -fsSL --max-time 300 "$fallback" -o "$out" 2>/dev/null
  • Network accessline 33
    resolve_version() {     local url     url=$(curl -fsSL --max-time 30 --connect-timeout 5 -o /dev/null -w '%{url_effective}' \
  • Network accessline 34
    local url     url=$(curl -fsSL --max-time 30 --connect-timeout 5 -o /dev/null -w '%{url_effective}' \             "$MIRROR_BASE/releases/latest" 2>/dev/null)
  • Network accessline 35
    url=$(curl -fsSL --max-time 30 --connect-timeout 5 -o /dev/null -w '%{url_effective}' \
  • Network accessline 36
    "$MIRROR_BASE/releases/latest" 2>/dev/null)
  • Network accessline 38
    */releases/tag/v*) echo "${url##*/tag/}"; return 0 ;;     esac     url=$(curl -fsSL --max-time 30 -o /dev/null -w '%{url_effective}' \
  • Network accessline 39
    esac     url=$(curl -fsSL --max-time 30 -o /dev/null -w '%{url_effective}' \             "https://github.com/$REPO/releases/latest" 2>/dev/null)
  • Network accessline 40
    url=$(curl -fsSL --max-time 30 -o /dev/null -w '%{url_effective}' \
  • Network accessline 41
    "https://github.com/$REPO/releases/latest" 2>/dev/null)
  • Network accessline 86
    *)         echo "Unsupported OS: $OS"         echo "For Windows, download from: https://github.com/$REPO/releases"
  • Network accessline 87
    echo "Unsupported OS: $OS"         echo "For Windows, download from: https://github.com/$REPO/releases"         exit 1
  • Network accessline 88
    echo "For Windows, download from: https://github.com/$REPO/releases"
  • Network accessline 103
    if [ -n "$VERSION" ]; then     echo "Latest version: $VERSION"     MIRROR_ASSET_BASE="$MIRROR_BASE/releases/download/$VERSION"
  • Network accessline 104
    echo "Latest version: $VERSION"     MIRROR_ASSET_BASE="$MIRROR_BASE/releases/download/$VERSION"     GITHUB_ASSET_BASE="https://github.com/$REPO/releases/download/$VERSION"
  • Network accessline 105
    MIRROR_ASSET_BASE="$MIRROR_BASE/releases/download/$VERSION"
  • Network accessline 106
    GITHUB_ASSET_BASE="https://github.com/$REPO/releases/download/$VERSION"
  • Network accessline 107
    else     echo "Could not resolve latest version; falling back to 'latest' path."     MIRROR_ASSET_BASE="$MIRROR_BASE/releases/latest/download"
  • Network accessline 108
    echo "Could not resolve latest version; falling back to 'latest' path."     MIRROR_ASSET_BASE="$MIRROR_BASE/releases/latest/download"     GITHUB_ASSET_BASE="$GITHUB_RELEASE_BASE"
  • Network accessline 109
    MIRROR_ASSET_BASE="$MIRROR_BASE/releases/latest/download"
  • Network accessline 110
    GITHUB_ASSET_BASE="$GITHUB_RELEASE_BASE"
  • Network accessline 114
    echo "Downloading OfficeCLI ($ASSET)..." if fetch_with_fallback \         "$MIRROR_ASSET_BASE/$ASSET" \
  • Network accessline 115
    if fetch_with_fallback          "$MIRROR_ASSET_BASE/$ASSET"
  • Network accessline 116
    "$MIRROR_ASSET_BASE/$ASSET" \
  • Network accessline 117
    "$GITHUB_ASSET_BASE/$ASSET" \
  • Network accessline 120
    CHECKSUM_OK=false     if fetch_with_fallback \             "$MIRROR_ASSET_BASE/SHA256SUMS" \
  • Network accessline 121
    if fetch_with_fallback              "$MIRROR_ASSET_BASE/SHA256SUMS"
  • Network accessline 122
    "$MIRROR_ASSET_BASE/SHA256SUMS" \
  • Network accessline 123
    "$GITHUB_ASSET_BASE/SHA256SUMS" \
  • Dangerous shell operationline 142
    rm -f "/tmp/$BINARY_NAME" "/tmp/officecli-SHA256SUMS"
  • Dangerous shell operationline 146
    rm -f "/tmp/officecli-SHA256SUMS"
  • Network accessline 174
    if [ -z "$SOURCE" ]; then     echo "Error: Could not find a valid OfficeCLI binary."     echo "Download manually from: https://github.com/$REPO/releases"
  • Network accessline 175
    echo "Error: Could not find a valid OfficeCLI binary."     echo "Download manually from: https://github.com/$REPO/releases"     exit 1
  • Network accessline 176
    echo "Download manually from: https://github.com/$REPO/releases"
  • Dangerous shell operationline 233
    rm -f "/tmp/$BINARY_NAME"
  • Network accessline 249
    echo "Downloading officecli skill..."         if fetch_with_fallback \                 "$MIRROR_BASE/SKILL.md" \
  • Network accessline 250
    if fetch_with_fallback                  "$MIRROR_BASE/SKILL.md"
  • Network accessline 251
    "$MIRROR_BASE/SKILL.md" \
  • Network accessline 252
    "$GITHUB_RAW_BASE/SKILL.md" \
  • Dangerous shell operationline 259
    rm -f "/tmp/officecli-skill.md"

npm/README.md

  • Network accessline 31
    `npm install` (the binary is then fetched on first run). - Source, issues and full docs:   <https://github.com/iOfficeAI/OfficeCLI>
  • Network accessline 33
    <https://github.com/iOfficeAI/OfficeCLI>

npm/install.js

  • Executable scriptline 1
    Executable file

npm/lib/install-binary.js

  • Executable scriptline 1
    Executable file
  • Network accessline 17
    const REPO = 'iOfficeAI/OfficeCLI'; const MIRROR_BASE = 'https://d.officecli.ai';
  • Network accessline 18
    const MIRROR_BASE = 'https://d.officecli.ai';
  • Network accessline 19
    const GITHUB_BASE = 'https://github.com/' + REPO;

npm/officecli.js

  • Executable scriptline 1
    #!/usr/bin/env node

npm/package.json

  • Executable scriptline 1
    Executable file
  • Network accessline 5
    "license": "Apache-2.0",   "author": "goworm",   "homepage": "https://github.com/iOfficeAI/OfficeCLI",
  • Network accessline 6
    "author": "goworm",   "homepage": "https://github.com/iOfficeAI/OfficeCLI",   "repository": {
  • Network accessline 7
    "homepage": "https://github.com/iOfficeAI/OfficeCLI",
  • Network accessline 8
    "repository": {     "type": "git",     "url": "git+https://github.com/iOfficeAI/OfficeCLI.git"
  • Network accessline 9
    "type": "git",     "url": "git+https://github.com/iOfficeAI/OfficeCLI.git"   },
  • Network accessline 10
    "url": "git+https://github.com/iOfficeAI/OfficeCLI.git"
  • Network accessline 11
    },   "bugs": {     "url": "https://github.com/iOfficeAI/OfficeCLI/issues"
  • Network accessline 12
    "bugs": {     "url": "https://github.com/iOfficeAI/OfficeCLI/issues"   },
  • Network accessline 13
    "url": "https://github.com/iOfficeAI/OfficeCLI/issues"

plugins/plugin-protocol.md

  • Network accessline 677
    The built-in installer consults a registry (default: `https://officecli.ai/plugins/registry.json`; configurable for private mirrors) which lists approved plugins, versions, download URLs, and SHA-256 hashes.
  • Network accessline 678
    `https://officecli.ai/plugins/registry.json`; configurable for private mirrors)

schemas/help/_schema.json

  • Network accessline 1
    {   "$schema": "https://json-schema.org/draft/2020-12/schema",
  • Network accessline 2
    "$schema": "https://json-schema.org/draft/2020-12/schema",

schemas/help/docx/hyperlink.json

  • Network accessline 31
    "get": true,       "examples": [         "--prop url=https://example.com"
  • Network accessline 32
    "examples": [         "--prop url=https://example.com"       ],
  • Network accessline 33
    "--prop url=https://example.com"

schemas/help/docx/picture.json

  • Network accessline 218
    "description": "click-hyperlink target for the image, making it clickable (<a:hlinkClick> on pic:cNvPr). An absolute URL or relative target round-trips as a TargetMode=External relationship; a '#anchor' or bare bookmark name round-trips as 
  • Network accessline 219
    "examples": [         "--prop src=logo.png --prop link=https://example.com"       ],
  • Network accessline 220
    "--prop src=logo.png --prop link=https://example.com"

schemas/help/pptx/hyperlink.json

  • Network accessline 31
    "get": true,       "examples": [         "--prop link=https://example.com"
  • Network accessline 32
    "examples": [         "--prop link=https://example.com"       ],
  • Network accessline 33
    "--prop link=https://example.com"
  • Network accessline 43
    "get": true,       "examples": [         "--prop link=https://example.com --prop tooltip=\"Open docs\""
  • Network accessline 44
    "examples": [         "--prop link=https://example.com --prop tooltip=\"Open docs\""       ],
  • Network accessline 45
    "--prop link=https://example.com --prop tooltip=\"Open docs\""

schemas/help/pptx/picture.json

  • Network accessline 136
    "link": {       "type": "string",       "description": "click-hyperlink target attached to the picture's cNvPr (so the whole image is clickable). Accepts absolute URI (https://, mailto:), slide[N] for in-deck jumps, or named actions (firsts
  • Network accessline 137
    "type": "string",       "description": "click-hyperlink target attached to the picture's cNvPr (so the whole image is clickable). Accepts absolute URI (https://, mailto:), slide[N] for in-deck jumps, or named actions (firstslide, lastslide,
  • Network accessline 138
    "description": "click-hyperlink target attached to the picture's cNvPr (so the whole image is clickable). Accepts absolute URI (https://, mailto:), slide[N] for in-deck jumps, or named actions (firstslide, lastslide, nextslide, previousslid
  • Network accessline 141
    "get": true,       "examples": [         "--prop link=https://example.com",
  • Network accessline 142
    "examples": [         "--prop link=https://example.com",         "--prop link='slide[3]'",
  • Network accessline 143
    "--prop link=https://example.com",
  • Network accessline 155
    "get": true,       "examples": [         "--prop link=https://example.com --prop tooltip=\"Open homepage\""
  • Network accessline 156
    "examples": [         "--prop link=https://example.com --prop tooltip=\"Open homepage\""       ],
  • Network accessline 157
    "--prop link=https://example.com --prop tooltip=\"Open homepage\""

schemas/help/pptx/shape.json

  • Network accessline 759
    "link": {       "type": "string",       "description": "click-action target for the shape. Accepts an absolute URI (https://, mailto:, tel:, …), slide[N] for an in-deck jump (1-based; the target slide must already exist), or a named navigat
  • Network accessline 760
    "type": "string",       "description": "click-action target for the shape. Accepts an absolute URI (https://, mailto:, tel:, …), slide[N] for an in-deck jump (1-based; the target slide must already exist), or a named navigation action (firs
  • Network accessline 761
    "description": "click-action target for the shape. Accepts an absolute URI (https://, mailto:, tel:, …), slide[N] for an in-deck jump (1-based; the target slide must already exist), or a named navigation action (firstslide, lastslide, nexts
  • Network accessline 764
    "get": true,       "examples": [         "--prop link=https://example.com",
  • Network accessline 765
    "examples": [         "--prop link=https://example.com",         "--prop link=slide[3]",
  • Network accessline 766
    "--prop link=https://example.com",
  • Network accessline 778
    "get": true,       "examples": [         "--prop link=https://example.com --prop tooltip=\"click here\""
  • Network accessline 779
    "examples": [         "--prop link=https://example.com --prop tooltip=\"click here\""       ],
  • Network accessline 780
    "--prop link=https://example.com --prop tooltip=\"click here\""

schemas/help/xlsx/cell.json

  • Network accessline 414
    "link": {       "type": "string",       "description": "hyperlink target attached to the cell. Accepts external URL (https://, http://, mailto:, file://, onenote:, tel:) or internal anchor (#Sheet!Cell, #NamedRange). Use link=none on Set to
  • Network accessline 415
    "type": "string",       "description": "hyperlink target attached to the cell. Accepts external URL (https://, http://, mailto:, file://, onenote:, tel:) or internal anchor (#Sheet!Cell, #NamedRange). Use link=none on Set to remove. Parity 
  • Network accessline 416
    "description": "hyperlink target attached to the cell. Accepts external URL (https://, http://, mailto:, file://, onenote:, tel:) or internal anchor (#Sheet!Cell, #NamedRange). Use link=none on Set to remove. Parity with Set. Alias: url.",
  • Network accessline 422
    "get": true,       "examples": [         "--prop link=https://example.com",
  • Network accessline 423
    "examples": [         "--prop link=https://example.com",         "--prop link=mailto:user@example.com",
  • Network accessline 424
    "--prop link=https://example.com",
  • Network accessline 440
    "get": false,       "examples": [         "--prop link=https://example.com --prop tooltip=\"Open in browser\""
  • Network accessline 441
    "examples": [         "--prop link=https://example.com --prop tooltip=\"Open in browser\""       ],
  • Network accessline 442
    "--prop link=https://example.com --prop tooltip=\"Open in browser\""
  • Network accessline 451
    "get": true,       "examples": [         "--prop link=https://example.com --prop display=\"Company site\""
  • Network accessline 452
    "examples": [         "--prop link=https://example.com --prop display=\"Company site\""       ],
  • Network accessline 453
    "--prop link=https://example.com --prop display=\"Company site\""

schemas/help/xlsx/picture.json

  • Network accessline 128
    "hyperlink": {       "type": "string",       "description": "Picture-level hyperlink. External URL (https://...) or in-document jump (#SheetName!A1).",
  • Network accessline 129
    "type": "string",       "description": "Picture-level hyperlink. External URL (https://...) or in-document jump (#SheetName!A1).",       "aliases": [
  • Network accessline 130
    "description": "Picture-level hyperlink. External URL (https://...) or in-document jump (#SheetName!A1).",
  • Network accessline 135
    "set": false,       "examples": [         "--prop hyperlink=https://example.com"
  • Network accessline 136
    "examples": [         "--prop hyperlink=https://example.com"       ],
  • Network accessline 137
    "--prop hyperlink=https://example.com"

schemas/help/xlsx/shape.json

  • Network accessline 22
    "hyperlink": {       "type": "string",       "description": "Shape-level hyperlink. External URL (https://...) or in-document jump (#SheetName!A1).",
  • Network accessline 23
    "type": "string",       "description": "Shape-level hyperlink. External URL (https://...) or in-document jump (#SheetName!A1).",       "aliases": [
  • Network accessline 24
    "description": "Shape-level hyperlink. External URL (https://...) or in-document jump (#SheetName!A1).",

sdk/node/README.md

  • Network accessline 3
    A thin **async** Node.js client over [officecli](https://github.com/iOfficeAI/OfficeCLI)'s

sdk/node/demo.js

  • Executable scriptline 1
    Executable file

sdk/node/index.d.ts

  • Executable scriptline 1
    Executable file

sdk/node/index.js

  • Executable scriptline 1
    Executable file
  • Network accessline 67
    const INSTALL_SH_MIRROR = 'https://d.officecli.ai/install.sh';
  • Network accessline 68
    const INSTALL_SH_GITHUB = 'https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh';
  • Network accessline 69
    const INSTALL_PS1_MIRROR = 'https://d.officecli.ai/install.ps1';
  • Network accessline 70
    const INSTALL_PS1_GITHUB = 'https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.ps1';
  • Network accessline 74
    'forwards commands to the officecli binary, which must be installed separately. Install it:\n' +   '    node -e "require(\'@officecli/sdk\').install()"   # runs the official installer\n' +   '    # or: curl -fsSL ' + INSTALL_SH_MIRROR + ' |
  • Network accessline 75
    '    node -e "require(\'@officecli/sdk\').install()"   # runs the official installer\n' +   '    # or: curl -fsSL ' + INSTALL_SH_MIRROR + ' | bash\n' +   '    # (npm i @officecli/sdk already pulls @officecli/officecli, which bundles the bin
  • Dangerous shell operationline 76
    '    # or: curl -fsSL ' + INSTALL_SH_MIRROR + ' | bash\n' +
  • Network accessline 76
    '    # or: curl -fsSL ' + INSTALL_SH_MIRROR + ' | bash\n' +
  • Dangerous shell operationline 632
    // (curl mirror || curl github) | bash — the subshell emits whichever script
  • Network accessline 632
    // (curl mirror || curl github) | bash — the subshell emits whichever script
  • Dangerous shell operationline 634
    const sh = `(curl -fsSL ${INSTALL_SH_MIRROR} 2>/dev/null || curl -fsSL ${INSTALL_SH_GITHUB}) | bash`;
  • Network accessline 634
    const sh = `(curl -fsSL ${INSTALL_SH_MIRROR} 2>/dev/null || curl -fsSL ${INSTALL_SH_GITHUB}) | bash`;
  • Network accessline 637
    throw new OfficeCliError(       r.status == null ? -1 : r.status,       `officecli install failed. Run manually:\n    curl -fsSL ${INSTALL_SH_MIRROR} | bash`
  • Network accessline 638
    r.status == null ? -1 : r.status,       `officecli install failed. Run manually:\n    curl -fsSL ${INSTALL_SH_MIRROR} | bash`     );
  • Dangerous shell operationline 639
    `officecli install failed. Run manually:\n    curl -fsSL ${INSTALL_SH_MIRROR} | bash`
  • Network accessline 639
    `officecli install failed. Run manually:\n    curl -fsSL ${INSTALL_SH_MIRROR} | bash`

sdk/node/package.json

  • Executable scriptline 1
    Executable file
  • Network accessline 5
    "license": "Apache-2.0",   "author": "goworm",   "homepage": "https://github.com/iOfficeAI/OfficeCLI/tree/main/sdk/node",
  • Network accessline 6
    "author": "goworm",   "homepage": "https://github.com/iOfficeAI/OfficeCLI/tree/main/sdk/node",   "repository": {
  • Network accessline 7
    "homepage": "https://github.com/iOfficeAI/OfficeCLI/tree/main/sdk/node",
  • Network accessline 8
    "repository": {     "type": "git",     "url": "git+https://github.com/iOfficeAI/OfficeCLI.git",
  • Network accessline 9
    "type": "git",     "url": "git+https://github.com/iOfficeAI/OfficeCLI.git",     "directory": "sdk/node"
  • Network accessline 10
    "url": "git+https://github.com/iOfficeAI/OfficeCLI.git",
  • Network accessline 12
    },   "bugs": {     "url": "https://github.com/iOfficeAI/OfficeCLI/issues"
  • Network accessline 13
    "bugs": {     "url": "https://github.com/iOfficeAI/OfficeCLI/issues"   },
  • Network accessline 14
    "url": "https://github.com/iOfficeAI/OfficeCLI/issues"

sdk/node/smoke.js

  • Executable scriptline 1
    Executable file

sdk/python/README.md

  • Network accessline 3
    A **thin** Python SDK for the [officecli](https://officecli.ai) **resident pipe**. It does one
  • Network accessline 30
    python -m officecli install      # runs officecli's official installer # …or directly: curl -fsSL https://d.officecli.ai/install.sh | bash
  • Network accessline 31
    # …or directly: curl -fsSL https://d.officecli.ai/install.sh | bash # Windows (PowerShell):
  • Dangerous shell operationline 32
    curl -fsSL https://d.officecli.ai/install.sh | bash
  • Network accessline 32
    curl -fsSL https://d.officecli.ai/install.sh | bash
  • Network accessline 34
    irm https://d.officecli.ai/install.ps1 | iex

sdk/python/demo.py

  • Executable scriptline 1
    #!/usr/bin/env python3

sdk/python/officecli.py

  • Executable scriptline 1
    Executable file
  • Network accessline 77
    _INSTALL_SH_MIRROR = "https://d.officecli.ai/install.sh"
  • Network accessline 78
    _INSTALL_SH_GITHUB = "https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.sh"
  • Network accessline 79
    _INSTALL_PS1_MIRROR = "https://d.officecli.ai/install.ps1"
  • Network accessline 80
    _INSTALL_PS1_GITHUB = "https://raw.githubusercontent.com/iOfficeAI/OfficeCLI/main/install.ps1"
  • Network accessline 84
    "commands to the officecli binary, which must be installed separately. Install it:\n"     "    python -m officecli install            # runs the official installer\n"     "    # or: curl -fsSL " + _INSTALL_SH_MIRROR + " | bash\n"
  • Network accessline 85
    "    python -m officecli install            # runs the official installer\n"     "    # or: curl -fsSL " + _INSTALL_SH_MIRROR + " | bash\n"     "Already installed elsewhere? pass binary=\"/path/to/officecli\"."
  • Dangerous shell operationline 86
    "    # or: curl -fsSL " + _INSTALL_SH_MIRROR + " | bash\n"
  • Network accessline 86
    "    # or: curl -fsSL " + _INSTALL_SH_MIRROR + " | bash\n"
  • Access to secretsline 103
    [Credential-related source omitted]
  • Network accessline 144
    def _send_unix(sock_path, line, connect_timeout):     s = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
  • Network accessline 145
    s = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
  • Access to secretsline 293
    [Credential-related source omitted]
  • Dangerous shell operationline 603
    # (curl mirror || curl github) | bash — the subshell emits whichever fetch
  • Network accessline 603
    # (curl mirror || curl github) | bash — the subshell emits whichever fetch
  • Dangerous shell operationline 606
    sh = f"(curl -fsSL {_INSTALL_SH_MIRROR} 2>/dev/null || curl -fsSL {_INSTALL_SH_GITHUB}) | bash"
  • Network accessline 606
    sh = f"(curl -fsSL {_INSTALL_SH_MIRROR} 2>/dev/null || curl -fsSL {_INSTALL_SH_GITHUB}) | bash"
  • Network accessline 609
    raise OfficeCliError(r.returncode,             f"officecli install failed (exit {r.returncode}). Run manually:\n"             f"    curl -fsSL {_INSTALL_SH_MIRROR} | bash")
  • Network accessline 610
    f"officecli install failed (exit {r.returncode}). Run manually:\n"             f"    curl -fsSL {_INSTALL_SH_MIRROR} | bash")     return None
  • Dangerous shell operationline 611
    f"    curl -fsSL {_INSTALL_SH_MIRROR} | bash")
  • Network accessline 611
    f"    curl -fsSL {_INSTALL_SH_MIRROR} | bash")

sdk/python/pyproject.toml

  • Network accessline 25
    [project.urls] Homepage = "https://officecli.ai"
  • Network accessline 26
    Homepage = "https://officecli.ai"
  • Network accessline 27
    Repository = "https://github.com/iOfficeAI/OfficeCLI"

sdk/python/smoke.py

  • Executable scriptline 1
    Executable file

skills/morph-ppt-3d/SKILL.md

  • Dangerous shell operationline 17
    - **macOS / Linux**: `curl -fsSL https://d.officecli.ai/install.sh | bash`
  • Network accessline 17
    - **macOS / Linux**: `curl -fsSL https://d.officecli.ai/install.sh | bash`
  • Network accessline 18
    - **Windows (PowerShell)**: `irm https://d.officecli.ai/install.ps1 | iex`
  • Network accessline 20
    Verify with `officecli --version` (open a new terminal if PATH hasn't picked up). If install fails, download a binary from https://github.com/iOfficeAI/OfficeCLI/releases.
  • Dangerous shell operationline 73
    curl -s "https://api.sketchfab.com/v3/search?type=models&q=[keyword]&downloadable=true&archives_flavours=glb"       | python3 -c "
  • Network accessline 73
    curl -s "https://api.sketchfab.com/v3/search?type=models&q=[keyword]&downloadable=true&archives_flavours=glb" \
  • Network accessline 77
    for m in data.get('results', [])[:5]:        print(f\"Name: {m['name']}\")        print(f\"URL: https://sketchfab.com/3d-models/{m['slug']}-{m['uid']}\")
  • Network accessline 78
    print(f\"Name: {m['name']}\")        print(f\"URL: https://sketchfab.com/3d-models/{m['slug']}-{m['uid']}\")        print(f\"Likes: {m.get('likeCount', 0)}, License: {m.get('license', {}).get('label', 'unknown')}\")
  • Network accessline 79
    print(f\"URL: https://sketchfab.com/3d-models/{m['slug']}-{m['uid']}\")
  • Network accessline 88
    # Search results page — parse for download links    curl -s "https://poly.pizza/api/search/[keyword]" 2>/dev/null
  • Network accessline 89
    curl -s "https://poly.pizza/api/search/[keyword]" 2>/dev/null
  • Network accessline 94
    # Direct download — no auth, no API, always works    curl -L -o model.glb "https://raw.githubusercontent.com/KhronosGroup/glTF-Sample-Assets/main/Models/[ModelName]/glTF-Binary/[ModelName].glb"
  • Network accessline 95
    curl -L -o model.glb "https://raw.githubusercontent.com/KhronosGroup/glTF-Sample-Assets/main/Models/[ModelName]/glTF-Binary/[ModelName].glb"
  • Network accessline 117
    2. Low Poly Fox (Poly Pizza)    URL: https://poly.pizza/m/xxx
  • Network accessline 118
    URL: https://poly.pizza/m/xxx
  • Network accessline 122
    3. Cartoon Fox (Sketchfab)    URL: https://sketchfab.com/3d-models/fox-xxx
  • Network accessline 123
    URL: https://sketchfab.com/3d-models/fox-xxx
  • Network accessline 137
    # For Sketchfab (if user has the download URL) curl -L -o model.glb "[download_url]"
  • Network accessline 138
    curl -L -o model.glb "[download_url]"
  • Network accessline 140
    # For Khronos samples (always works) curl -L -o model.glb "https://raw.githubusercontent.com/KhronosGroup/glTF-Sample-Assets/main/Models/Fox/glTF-Binary/Fox.glb"
  • Network accessline 141
    curl -L -o model.glb "https://raw.githubusercontent.com/KhronosGroup/glTF-Sample-Assets/main/Models/Fox/glTF-Binary/Fox.glb"
  • Network accessline 175
    > > 1. **Sketchfab** (largest 3D model platform) >    - Link: https://sketchfab.com/search?q=[keyword]&type=models&downloadable=true
  • Network accessline 176
    > 1. **Sketchfab** (largest 3D model platform) >    - Link: https://sketchfab.com/search?q=[keyword]&type=models&downloadable=true >    - Filter steps: search keyword → check "Downloadable" → format "glTF" → sort by "Likes"
  • Network accessline 177
    >    - Link: https://sketchfab.com/search?q=[keyword]&type=models&downloadable=true
  • Network accessline 180
    >    - Note: some models require free registration to download > 2. **Poly Pizza** (all free low-poly) >    - Link: https://poly.pizza/
  • Network accessline 181
    > 2. **Poly Pizza** (all free low-poly) >    - Link: https://poly.pizza/ >    - All CC0 licensed — click Download to get .glb directly
  • Network accessline 182
    >    - Link: https://poly.pizza/ >    - All CC0 licensed — click Download to get .glb directly >    - Best for: minimalist or cartoon-style presentations
  • Network accessline 184
    >    - Best for: minimalist or cartoon-style presentations > 3. **Sketchfab popular categories** >    - Animals: https://sketchfab.com/search?q=animal&type=models&downloadable=true
  • Network accessline 185
    > 3. **Sketchfab popular categories** >    - Animals: https://sketchfab.com/search?q=animal&type=models&downloadable=true >    - Food: https://sketchfab.com/search?q=food&type=models&downloadable=true
  • Network accessline 186
    >    - Animals: https://sketchfab.com/search?q=animal&type=models&downloadable=true
  • Network accessline 187
    >    - Food: https://sketchfab.com/search?q=food&type=models&downloadable=true
  • Network accessline 188
    >    - Tech: https://sketchfab.com/search?q=gadget&type=models&downloadable=true
  • Network accessline 189
    >    - Architecture: https://sketchfab.com/search?q=architecture&type=models&downloadable=true
  • Network accessline 190
    > 4. **Free3D** (general free model site) >    - Link: https://free3d.com/3d-models/glb >    - Note: check the license type before use
  • Network accessline 191
    >    - Link: https://free3d.com/3d-models/glb
  • Network accessline 192
    >    - Note: check the license type before use > 5. **TurboSquid Free** (pro model site free section) >    - Link: https://www.turbosquid.com/Search/3D-Models/free/glb
  • Network accessline 193
    > 5. **TurboSquid Free** (pro model site free section) >    - Link: https://www.turbosquid.com/Search/3D-Models/free/glb >
  • Network accessline 194
    >    - Link: https://www.turbosquid.com/Search/3D-Models/free/glb > > After downloading, share the .glb file with me. If the download is a .gltf folder, use Blender to convert it to .glb.
  • Network accessline 214
    Always remind before confirming download: "Please check the model license before downloading. CC0 / CC BY = free to use; CC BY-NC = non-commercial only."

skills/morph-ppt/SKILL.md

  • Dangerous shell operationline 16
    - **macOS / Linux**: `curl -fsSL https://d.officecli.ai/install.sh | bash`
  • Network accessline 16
    - **macOS / Linux**: `curl -fsSL https://d.officecli.ai/install.sh | bash`
  • Network accessline 17
    - **Windows (PowerShell)**: `irm https://d.officecli.ai/install.ps1 | iex`
  • Network accessline 19
    Verify with `officecli --version` (open a new terminal if PATH hasn't picked up). If install fails, download a binary from https://github.com/iOfficeAI/OfficeCLI/releases.

skills/morph-ppt/reference/morph-helpers.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 28
    YELLOW = Fore.YELLOW     BLUE   = Fore.CYAN     NC     = Style.RESET_ALL
  • Network accessline 29
    BLUE   = Fore.CYAN     NC     = Style.RESET_ALL except ImportError:
  • Network accessline 30
    NC     = Style.RESET_ALL
  • Network accessline 32
    GREEN = RED = YELLOW = BLUE = NC = ""

skills/morph-ppt/reference/morph-helpers.sh

  • Executable scriptline 1
    #!/bin/bash

skills/morph-ppt/reference/styles/bw--brutalist-raw/build.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 8
    rm -f "$OUTPUT"

skills/morph-ppt/reference/styles/bw--mono-line/build.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 8
    rm -f "$OUTPUT"

skills/morph-ppt/reference/styles/bw--swiss-bauhaus/build.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 8
    rm -f "$OUTPUT"

skills/morph-ppt/reference/styles/dark--architectural-plan/build.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 35
    rm -f "$F"

skills/morph-ppt/reference/styles/dark--blueprint-grid/build.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 8
    rm -f "$OUTPUT"

skills/morph-ppt/reference/styles/dark--circle-digital/build.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 109
    rm -f "$F"

skills/morph-ppt/reference/styles/dark--cosmic-neon/build.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 8
    rm -f "$OUTPUT"

skills/morph-ppt/reference/styles/dark--cyber-future/build.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 8
    rm -f "$OUTPUT"

skills/morph-ppt/reference/styles/dark--diagonal-cut/build.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 8
    rm -f "$OUTPUT"

skills/morph-ppt/reference/styles/dark--editorial-story/build.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 8
    rm -f "$OUTPUT"

skills/morph-ppt/reference/styles/dark--investor-pitch/build.sh

  • Executable scriptline 1
    #!/bin/bash

skills/morph-ppt/reference/styles/dark--liquid-flow/build.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 8
    rm -f "$OUTPUT"

skills/morph-ppt/reference/styles/dark--luxury-minimal/build.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 8
    rm -f "$OUTPUT"

skills/morph-ppt/reference/styles/dark--neon-productivity/build.sh

  • Executable scriptline 1
    #!/usr/bin/env bash
  • Dangerous shell operationline 9
    rm -f "$OUT"

skills/morph-ppt/reference/styles/dark--premium-navy/build.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 8
    rm -f "$OUTPUT"

skills/morph-ppt/reference/styles/dark--space-odyssey/build.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 8
    rm -f "$OUTPUT"

skills/morph-ppt/reference/styles/dark--spotlight-stage/build.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 22
    rm -f "$DECK"

skills/morph-ppt/reference/styles/light--bold-type/build.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 12
    rm -f "$DECK"

skills/morph-ppt/reference/styles/light--isometric-clean/build.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 16
    rm -f "$DECK"

skills/morph-ppt/reference/styles/light--minimal-product/build.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 8
    rm -f "$OUTPUT"

skills/morph-ppt/reference/styles/light--watercolor-wash/build.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 8
    rm -f "$OUTPUT"

skills/morph-ppt/reference/styles/mixed--duotone-split/build.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 13
    rm -f "$DECK"

skills/morph-ppt/reference/styles/vivid--candy-stripe/build.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 8
    rm -f "$OUTPUT"

skills/morph-ppt/reference/styles/vivid--playful-marketing/build.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 15
    rm -f "$OUTPUT"

skills/morph-ppt/reference/styles/warm--brand-refresh/build.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 8
    rm -f "$OUTPUT"

skills/morph-ppt/reference/styles/warm--earth-organic/build.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 8
    rm -f "$OUTPUT"

skills/morph-ppt/reference/styles/warm--playful-organic/build.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 20
    rm -f "$OUTPUT"

skills/officecli-academic-paper/SKILL.md

  • Dangerous shell operationline 16
    - **macOS / Linux**: `curl -fsSL https://d.officecli.ai/install.sh | bash`
  • Network accessline 16
    - **macOS / Linux**: `curl -fsSL https://d.officecli.ai/install.sh | bash`
  • Network accessline 17
    - **Windows (PowerShell)**: `irm https://d.officecli.ai/install.ps1 | iex`
  • Network accessline 19
    Verify with `officecli --version` (open a new terminal if PATH hasn't picked up). If install fails, download a binary from https://github.com/iOfficeAI/OfficeCLI/releases.
  • Network accessline 150
    officecli add "$FILE" /body --type paragraph --prop text="Kramer, A., & Kramer, K. Z. (2020). The potential impact of the Covid-19 pandemic on occupational status. Journal of Vocational Behavior, 119, 103442." --prop size=12pt --prop lineSp
  • Network accessline 152
    officecli add "$FILE" "/body/p[last()]" --type hyperlink --prop url="https://doi.org/10.1016/j.jvb.2020.103442" --prop text="https://doi.org/10.1016/j.jvb.2020.103442"
  • Network accessline 342
    officecli add "$FILE" /body --type paragraph --prop text="Smith, J. (2024). Remote work and cohesion. Journal of Applied Psychology, 109(3), 412-430." --prop size=12pt --prop lineSpacing=2x --prop indent=720 --prop hangingIndent=720 # DOI h
  • Network accessline 344
    officecli add "$FILE" "/body/p[last()]" --type hyperlink --prop url="https://doi.org/10.1037/apl0001123" --prop text="https://doi.org/10.1037/apl0001123"

skills/officecli-data-dashboard/SKILL.md

  • Dangerous shell operationline 14
    - **macOS / Linux**: `curl -fsSL https://d.officecli.ai/install.sh | bash`
  • Network accessline 14
    - **macOS / Linux**: `curl -fsSL https://d.officecli.ai/install.sh | bash`
  • Network accessline 15
    - **Windows (PowerShell)**: `irm https://d.officecli.ai/install.ps1 | iex`
  • Network accessline 17
    Verify with `officecli --version` (open a new terminal if PATH hasn't picked up). If install fails, download a binary from https://github.com/iOfficeAI/OfficeCLI/releases.
  • Network accessline 129
    | jq '[.data.results[].path] | index("/Dashboard")') officecli raw-set "$FILE" /workbook --xpath "//x:sheets" --action insertbefore \   --xml "<bookViews xmlns=\"http://schemas.openxmlformats.org/spreadsheetml/2006/main\"><workbookView acti
  • Network accessline 130
    officecli raw-set "$FILE" /workbook --xpath "//x:sheets" --action insertbefore    --xml "<bookViews xmlns=\"http://schemas.openxmlformats.org/spreadsheetml/2006/main\"><workbookView activeTab=\"$DASH_IDX\" /></bookViews>"
  • Network accessline 131
    --xml "<bookViews xmlns=\"http://schemas.openxmlformats.org/spreadsheetml/2006/main\"><workbookView activeTab=\"$DASH_IDX\" /></bookViews>"
  • Network accessline 225
    officecli add "$FILE" / --type namedrange --prop name=_xlnm.Print_Area --prop scope=Dashboard --prop 'refersTo=Dashboard!$A$1:$H$36' # 2. fit-to-page on Dashboard. officecli raw-set "$FILE" /Dashboard --xpath "//x:worksheet" --action prepen
  • Network accessline 226
    # 2. fit-to-page on Dashboard. officecli raw-set "$FILE" /Dashboard --xpath "//x:worksheet" --action prepend --xml '<sheetPr xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main"><pageSetUpPr fitToPage="1"/></sheetPr>' # 3. Land
  • Network accessline 227
    officecli raw-set "$FILE" /Dashboard --xpath "//x:worksheet" --action prepend --xml '<sheetPr xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main"><pageSetUpPr fitToPage="1"/></sheetPr>'

skills/officecli-docx/SKILL.md

  • Dangerous shell operationline 12
    - **macOS / Linux**: `curl -fsSL https://d.officecli.ai/install.sh | bash`
  • Network accessline 12
    - **macOS / Linux**: `curl -fsSL https://d.officecli.ai/install.sh | bash`
  • Network accessline 13
    - **Windows (PowerShell)**: `irm https://d.officecli.ai/install.ps1 | iex`
  • Network accessline 15
    Verify with `officecli --version` (open a new terminal if PATH hasn't picked up). If install fails, download a binary from https://github.com/iOfficeAI/OfficeCLI/releases.
  • Network accessline 301
    officecli add "$FILE" "/body/p[2]" --type hyperlink --prop url="https://example.com" --prop text="our site"

skills/officecli-financial-model/SKILL.md

  • Dangerous shell operationline 16
    - **macOS / Linux**: `curl -fsSL https://d.officecli.ai/install.sh | bash`
  • Network accessline 16
    - **macOS / Linux**: `curl -fsSL https://d.officecli.ai/install.sh | bash`
  • Network accessline 17
    - **Windows (PowerShell)**: `irm https://d.officecli.ai/install.ps1 | iex`
  • Network accessline 19
    Verify with `officecli --version` (open a new terminal if PATH hasn't picked up). If install fails, download a binary from https://github.com/iOfficeAI/OfficeCLI/releases.
  • Network accessline 83
    done # 3. fit-to-page landscape on Outputs sheet. officecli raw-set "$FILE" /Summary --xpath "//x:worksheet" --action prepend --xml '<sheetPr xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main"><pageSetUpPr fitToPage="1"/></sh
  • Network accessline 85
    officecli raw-set "$FILE" /Summary --xpath "//x:worksheet" --action prepend --xml '<sheetPr xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main"><pageSetUpPr fitToPage="1"/></sheetPr>'

skills/officecli-pitch-deck/SKILL.md

  • Dangerous shell operationline 16
    - **macOS / Linux**: `curl -fsSL https://d.officecli.ai/install.sh | bash`
  • Network accessline 16
    - **macOS / Linux**: `curl -fsSL https://d.officecli.ai/install.sh | bash`
  • Network accessline 17
    - **Windows (PowerShell)**: `irm https://d.officecli.ai/install.ps1 | iex`
  • Network accessline 19
    Verify with `officecli --version` (open a new terminal if PATH hasn't picked up). If install fails, download a binary from https://github.com/iOfficeAI/OfficeCLI/releases.

skills/officecli-pptx/SKILL.md

  • Dangerous shell operationline 12
    - **macOS / Linux**: `curl -fsSL https://d.officecli.ai/install.sh | bash`
  • Network accessline 12
    - **macOS / Linux**: `curl -fsSL https://d.officecli.ai/install.sh | bash`
  • Network accessline 13
    - **Windows (PowerShell)**: `irm https://d.officecli.ai/install.ps1 | iex`
  • Network accessline 15
    Verify with `officecli --version` (open a new terminal if PATH hasn't picked up). If install fails, download a binary from https://github.com/iOfficeAI/OfficeCLI/releases.
  • Network accessline 366
    `--prop link=slide[N]` for an in-deck jump (1-based; target slide must exist), `link=nextslide` / `firstslide` / `lastslide` / `previousslide` / `endshow` for named navigation, `link=https://...` for a URL, `--prop tooltip="..."` for hover 

skills/officecli-word-form/SKILL.md

  • Network accessline 17
    if ! command -v officecli >/dev/null 2>&1; then     curl -fsSL https://d.officecli.ai/install.sh | bash
  • Dangerous shell operationline 18
    curl -fsSL https://d.officecli.ai/install.sh | bash
  • Network accessline 18
    curl -fsSL https://d.officecli.ai/install.sh | bash
  • Network accessline 25
    if (-not (Get-Command officecli -ErrorAction SilentlyContinue)) {     irm https://d.officecli.ai/install.ps1 | iex
  • Network accessline 26
    irm https://d.officecli.ai/install.ps1 | iex
  • Network accessline 34
    If the install command above fails (e.g. blocked by security policy, no network access, or insufficient permissions), install manually — download the binary for your platform from https://github.com/iOfficeAI/OfficeCLI/releases — then re-ru
  • Network accessline 145
    officecli raw-set "$FILE" /document    --xpath "//w:sdt[w:sdtPr/w:tag/@w:val='dept']/w:sdtPr/w:dropDownList"    --action append    --xml '<w:listItem xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" w:displayText="Engi
  • Network accessline 146
    --xpath "//w:sdt[w:sdtPr/w:tag/@w:val='dept']/w:sdtPr/w:dropDownList" \   --action append \   --xml '<w:listItem xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" w:displayText="Engineering" w:value="ENG"/><w:listItem x
  • Network accessline 148
    --xml '<w:listItem xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" w:displayText="Engineering" w:value="ENG"/><w:listItem xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" w:displayText="Finance" 
  • Dangerous shell operationline 184
    officecli close "$FILE" 2>/dev/null; rm -f "$FILE"   # preflight: clear stale resident / prior file (cold-start after CLI upgrade commonly leaks a resident)
  • Network accessline 229
    officecli raw-set "$FILE" /document    --xpath "//w:sdt[w:sdtPr/w:tag/@w:val='dept']/w:sdtPr/w:dropDownList"    --action append    --xml '<w:listItem xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" w:displayText="Engi
  • Network accessline 230
    --xpath "//w:sdt[w:sdtPr/w:tag/@w:val='dept']/w:sdtPr/w:dropDownList" \   --action append \   --xml '<w:listItem xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" w:displayText="Engineering" w:value="Engineering"/><w:li
  • Network accessline 232
    --xml '<w:listItem xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" w:displayText="Engineering" w:value="Engineering"/><w:listItem xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" w:displayText="F
  • Network accessline 246
    officecli raw-set "$FILE" /document    --xpath "//w:sdt[w:sdtPr/w:tag/@w:val='current_med']/w:sdtPr/w:comboBox"    --action append    --xml '<w:listItem xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" w:displayText="A
  • Network accessline 247
    --xpath "//w:sdt[w:sdtPr/w:tag/@w:val='current_med']/w:sdtPr/w:comboBox" \   --action append \   --xml '<w:listItem xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" w:displayText="Antihypertensives" w:value="Antihypert
  • Network accessline 249
    --xml '<w:listItem xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" w:displayText="Antihypertensives" w:value="Antihypertensives"/><w:listItem xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" w:di
  • Network accessline 285
    |---|---| | `raw-set: 0 element(s) affected` | XPath did not match. Check the `tag` value and whether the SDT is block or inline. Fall back to `officecli raw $FILE /document` to read the real XML. | | `Error: prefix 'w' is not defined` | Mi
  • Network accessline 286
    | `raw-set: 0 element(s) affected` | XPath did not match. Check the `tag` value and whether the SDT is block or inline. Fall back to `officecli raw $FILE /document` to read the real XML. | | `Error: prefix 'w' is not defined` | Missing `xml
  • Network accessline 287
    | `Error: prefix 'w' is not defined` | Missing `xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main"` on the fragment — every root element in `--xml` needs it. |
  • Network accessline 445
    import sys, xml.etree.ElementTree as ET xml = sys.stdin.read(); pid = sys.argv[1] ns = {"w":"http://schemas.openxmlformats.org/wordprocessingml/2006/main","w14":"http://schemas.microsoft.com/office/word/2010/wordml"}
  • Network accessline 446
    xml = sys.stdin.read(); pid = sys.argv[1] ns = {"w":"http://schemas.openxmlformats.org/wordprocessingml/2006/main","w14":"http://schemas.microsoft.com/office/word/2010/wordml"} for p, u in ns.items(): ET.register_namespace(p, u)
  • Network accessline 447
    ns = {"w":"http://schemas.openxmlformats.org/wordprocessingml/2006/main","w14":"http://schemas.microsoft.com/office/word/2010/wordml"}
  • Network accessline 454
    officecli raw-set "$FILE" /document    --xpath "//w:p[@w14:paraId='$PID']"    --action replace    --xml "<w:sdt xmlns:w=\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\" xmlns:w14=\"http://schemas.microsoft.com/office/word/20
  • Network accessline 455
    --xpath "//w:p[@w14:paraId='$PID']" \   --action replace \   --xml "<w:sdt xmlns:w=\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\" xmlns:w14=\"http://schemas.microsoft.com/office/word/2010/wordml\"><w:sdtPr><w:alias w:val=\
  • Network accessline 457
    --xml "<w:sdt xmlns:w=\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\" xmlns:w14=\"http://schemas.microsoft.com/office/word/2010/wordml\"><w:sdtPr><w:alias w:val=\"Authorization\"/><w:tag w:val=\"auth_para\"/><w:lock w:val=\
  • Network accessline 584
    {"command":"add","parent":"/body","type":"sdt","props":{"type":"text","alias":"Full Name","tag":"full_name","text":"Enter name"}},   {"command":"add","parent":"/body","type":"sdt","props":{"type":"dropdown","alias":"Department","tag":"dept"
  • Network accessline 585
    {"command":"add","parent":"/body","type":"sdt","props":{"type":"dropdown","alias":"Department","tag":"dept"}},   {"command":"raw-set","part":"/document","xpath":"//w:sdt[w:sdtPr/w:tag/@w:val='dept']/w:sdtPr/w:dropDownList","action":"append"
  • Network accessline 586
    {"command":"raw-set","part":"/document","xpath":"//w:sdt[w:sdtPr/w:tag/@w:val='dept']/w:sdtPr/w:dropDownList","action":"append","xml":"<w:listItem xmlns:w=\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\" w:displayText=\"Engi

skills/officecli-xlsx/SKILL.md

  • Dangerous shell operationline 12
    - **macOS / Linux**: `curl -fsSL https://d.officecli.ai/install.sh | bash`
  • Network accessline 12
    - **macOS / Linux**: `curl -fsSL https://d.officecli.ai/install.sh | bash`
  • Network accessline 13
    - **Windows (PowerShell)**: `irm https://d.officecli.ai/install.ps1 | iex`
  • Network accessline 15
    Verify with `officecli --version` (open a new terminal if PATH hasn't picked up). If install fails, download a binary from https://github.com/iOfficeAI/OfficeCLI/releases.

skills/officecli/SKILL.md

  • Network accessline 15
    # macOS / Linux curl -fsSL https://d.officecli.ai/install.sh | bash
  • Dangerous shell operationline 16
    curl -fsSL https://d.officecli.ai/install.sh | bash
  • Network accessline 16
    curl -fsSL https://d.officecli.ai/install.sh | bash
  • Network accessline 18
    # Windows (PowerShell) irm https://d.officecli.ai/install.ps1 | iex
  • Network accessline 19
    irm https://d.officecli.ai/install.ps1 | iex
  • Network accessline 160
    Open the printed `http://localhost:N` URL. Click to select; shift/cmd/ctrl+click to multi-select; drag from empty space to box-select. PPT/Word use blue outline; Excel uses native-style green selection (double-click cell to edit inline; dra

src/officecli/BatchTypes.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/BlankDocCreator.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 180
    Name = new EnumValue<CompatSettingNameValues>(CompatSettingNameValues.CompatibilityMode),                     Val = new StringValue("15"),                     Uri = new StringValue("http://schemas.microsoft.com/office/word")
  • Network accessline 181
    Val = new StringValue("15"),                     Uri = new StringValue("http://schemas.microsoft.com/office/word")                 },
  • Network accessline 182
    Uri = new StringValue("http://schemas.microsoft.com/office/word")
  • Network accessline 186
    Name = new EnumValue<CompatSettingNameValues>(CompatSettingNameValues.OverrideTableStyleFontSizeAndJustification),                     Val = new StringValue("1"),                     Uri = new StringValue("http://schemas.microsoft.com/offic
  • Network accessline 187
    Val = new StringValue("1"),                     Uri = new StringValue("http://schemas.microsoft.com/office/word")                 },
  • Network accessline 188
    Uri = new StringValue("http://schemas.microsoft.com/office/word")
  • Network accessline 192
    Name = new EnumValue<CompatSettingNameValues>(CompatSettingNameValues.EnableOpenTypeFeatures),                     Val = new StringValue("1"),                     Uri = new StringValue("http://schemas.microsoft.com/office/word")
  • Network accessline 193
    Val = new StringValue("1"),                     Uri = new StringValue("http://schemas.microsoft.com/office/word")                 },
  • Network accessline 194
    Uri = new StringValue("http://schemas.microsoft.com/office/word")
  • Network accessline 198
    Name = new EnumValue<CompatSettingNameValues>(CompatSettingNameValues.DoNotFlipMirrorIndents),                     Val = new StringValue("1"),                     Uri = new StringValue("http://schemas.microsoft.com/office/word")
  • Network accessline 199
    Val = new StringValue("1"),                     Uri = new StringValue("http://schemas.microsoft.com/office/word")                 },
  • Network accessline 200
    Uri = new StringValue("http://schemas.microsoft.com/office/word")
  • Network accessline 204
    Name = new EnumValue<CompatSettingNameValues>(CompatSettingNameValues.DifferentiateMultirowTableHeaders),                     Val = new StringValue("1"),                     Uri = new StringValue("http://schemas.microsoft.com/office/word")
  • Network accessline 205
    Val = new StringValue("1"),                     Uri = new StringValue("http://schemas.microsoft.com/office/word")                 }
  • Network accessline 206
    Uri = new StringValue("http://schemas.microsoft.com/office/word")
  • Network accessline 260
    // fails MarkupCompatibility validation because the wps prefix is         // not in scope at the AlternateContent element.         document.AddNamespaceDeclaration("r", "http://schemas.openxmlformats.org/officeDocument/2006/relationships");
  • Network accessline 261
    // not in scope at the AlternateContent element.         document.AddNamespaceDeclaration("r", "http://schemas.openxmlformats.org/officeDocument/2006/relationships");         document.AddNamespaceDeclaration("m", "http://schemas.openxmlform
  • Network accessline 262
    document.AddNamespaceDeclaration("r", "http://schemas.openxmlformats.org/officeDocument/2006/relationships");
  • Network accessline 263
    document.AddNamespaceDeclaration("m", "http://schemas.openxmlformats.org/officeDocument/2006/math");
  • Network accessline 265
    document.AddNamespaceDeclaration("o", "urn:schemas-microsoft-com:office:office");         document.AddNamespaceDeclaration("w10", "urn:schemas-microsoft-com:office:word");         document.AddNamespaceDeclaration("wne", "http://schemas.micr
  • Network accessline 266
    document.AddNamespaceDeclaration("w10", "urn:schemas-microsoft-com:office:word");         document.AddNamespaceDeclaration("wne", "http://schemas.microsoft.com/office/word/2006/wordml");         document.AddNamespaceDeclaration("wp", "http:
  • Network accessline 267
    document.AddNamespaceDeclaration("wne", "http://schemas.microsoft.com/office/word/2006/wordml");
  • Network accessline 268
    document.AddNamespaceDeclaration("wp", "http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing");
  • Network accessline 269
    document.AddNamespaceDeclaration("wp14", "http://schemas.microsoft.com/office/word/2010/wordprocessingDrawing");
  • Network accessline 274
    // helpers on every paragraph, so leaving this undeclared was a         // real schema violation, not cosmetic.         document.AddNamespaceDeclaration("w14", "http://schemas.microsoft.com/office/word/2010/wordml");
  • Network accessline 275
    // real schema violation, not cosmetic.         document.AddNamespaceDeclaration("w14", "http://schemas.microsoft.com/office/word/2010/wordml");         document.AddNamespaceDeclaration("a", "http://schemas.openxmlformats.org/drawingml/2006
  • Network accessline 276
    document.AddNamespaceDeclaration("w14", "http://schemas.microsoft.com/office/word/2010/wordml");
  • Network accessline 277
    document.AddNamespaceDeclaration("a", "http://schemas.openxmlformats.org/drawingml/2006/main");
  • Network accessline 278
    document.AddNamespaceDeclaration("pic", "http://schemas.openxmlformats.org/drawingml/2006/picture");
  • Network accessline 279
    document.AddNamespaceDeclaration("wps", "http://schemas.microsoft.com/office/word/2010/wordprocessingShape");
  • Network accessline 280
    document.AddNamespaceDeclaration("wpg", "http://schemas.microsoft.com/office/word/2010/wordprocessingGroup");
  • Network accessline 281
    document.AddNamespaceDeclaration("wpi", "http://schemas.microsoft.com/office/word/2010/wordprocessingInk");
  • Network accessline 282
    document.AddNamespaceDeclaration("wpc", "http://schemas.microsoft.com/office/word/2010/wordprocessingCanvas");
  • Network accessline 283
    document.AddNamespaceDeclaration("w15", "http://schemas.microsoft.com/office/word/2012/wordml");
  • Network accessline 410
    // child element w14:ligatures") even though Word itself tolerates them.         // Mirrors the document-root mc:Ignorable handling above.         stylesPart.Styles.AddNamespaceDeclaration("w14", "http://schemas.microsoft.com/office/word/20
  • Network accessline 411
    // Mirrors the document-root mc:Ignorable handling above.         stylesPart.Styles.AddNamespaceDeclaration("w14", "http://schemas.microsoft.com/office/word/2010/wordml");         stylesPart.Styles.MCAttributes ??= new DocumentFormat.OpenXm
  • Network accessline 412
    stylesPart.Styles.AddNamespaceDeclaration("w14", "http://schemas.microsoft.com/office/word/2010/wordml");

src/officecli/CommandBuilder.Add.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 281
    Message = $"unrecognized_latex_command: {tok}",                             Code = "unrecognized_latex_command",                             Suggestion = "Check the command spelling; see https://katex.org/docs/supported.html for supported s
  • Network accessline 282
    Code = "unrecognized_latex_command",                             Suggestion = "Check the command spelling; see https://katex.org/docs/supported.html for supported syntax.",                         });
  • Network accessline 283
    Suggestion = "Check the command spelling; see https://katex.org/docs/supported.html for supported syntax.",

src/officecli/CommandBuilder.Batch.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Dangerous shell operationline 43
    + "Reliable idiom: close -> rm -> create -> batch -> close. rm BEFORE create matters: with the "
  • Network accessline 180
    Message = $"unrecognized_latex_command: {tok}",             Code = "unrecognized_latex_command",             Suggestion = "Check the command spelling; see https://katex.org/docs/supported.html for supported syntax.",
  • Network accessline 181
    Code = "unrecognized_latex_command",             Suggestion = "Check the command spelling; see https://katex.org/docs/supported.html for supported syntax.",         }).ToList();
  • Network accessline 182
    Suggestion = "Check the command spelling; see https://katex.org/docs/supported.html for supported syntax.",
  • Possible obfuscationline 341
    // System.Text.Json.Parse with "'<U+FEFF>' is an invalid start of
  • Possible obfuscationline 703
    => !string.IsNullOrEmpty(s) && s[0] == '<U+FEFF>' ? s.Substring(1) : s;

src/officecli/CommandBuilder.Check.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/CommandBuilder.Dump.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/CommandBuilder.GetQuery.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/CommandBuilder.Goto.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/CommandBuilder.Help.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/CommandBuilder.Import.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/CommandBuilder.IntegrationStubs.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/CommandBuilder.Mark.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/CommandBuilder.Plugins.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Possible obfuscationline 281
    var line = raw.TrimStart('<U+FEFF>').Trim();

src/officecli/CommandBuilder.Raw.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/CommandBuilder.Refresh.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/CommandBuilder.Save.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/CommandBuilder.Set.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/CommandBuilder.SetCore.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 123
    Message = $"unrecognized_latex_command: {tok}",                         Code = "unrecognized_latex_command",                         Suggestion = "Check the command spelling; see https://katex.org/docs/supported.html for supported syntax.",
  • Network accessline 124
    Code = "unrecognized_latex_command",                         Suggestion = "Check the command spelling; see https://katex.org/docs/supported.html for supported syntax.",                     });
  • Network accessline 125
    Suggestion = "Check the command spelling; see https://katex.org/docs/supported.html for supported syntax.",

src/officecli/CommandBuilder.View.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/CommandBuilder.ViewCore.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/CommandBuilder.Watch.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/CommandBuilder.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/AttributeFilter.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/BatchCompat.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/BatchExecutor.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 56
    Message = $"unrecognized_latex_command: {tok}",                     Code = "unrecognized_latex_command",                     Suggestion = "Check the command spelling; see https://katex.org/docs/supported.html for supported syntax.",
  • Network accessline 57
    Code = "unrecognized_latex_command",                     Suggestion = "Check the command spelling; see https://katex.org/docs/supported.html for supported syntax.",                 });
  • Network accessline 58
    Suggestion = "Check the command spelling; see https://katex.org/docs/supported.html for supported syntax.",

src/officecli/Core/Bcp47LanguageTag.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/CellPropHints.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/CharsetDecoder.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Chart/ChartEmbeddedDataSync.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Chart/ChartExBuilder.Setter.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 676
    IReadOnlyList<CX.Series> allSeries, string kind, string rawValue)     {         const string cxNs = "http://schemas.microsoft.com/office/drawing/2014/chartex";
  • Network accessline 678
    const string cxNs = "http://schemas.microsoft.com/office/drawing/2014/chartex";

src/officecli/Core/Chart/ChartExBuilder.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 63
    // (0x800A03EC), even though the OpenXmlValidator does not flag it. Real         // Excel always declares xmlns:a on cx:chartSpace; match that.         chartSpace.AddNamespaceDeclaration("a", "http://schemas.openxmlformats.org/drawingml/200
  • Network accessline 65
    chartSpace.AddNamespaceDeclaration("a", "http://schemas.openxmlformats.org/drawingml/2006/main");
  • Network accessline 76
    {             var el = new OpenXmlUnknownElement("cx", "axisId",                 "http://schemas.microsoft.com/office/drawing/2014/chartex");
  • Network accessline 77
    var el = new OpenXmlUnknownElement("cx", "axisId",                 "http://schemas.microsoft.com/office/drawing/2014/chartex");             el.SetAttribute(new OpenXmlAttribute("val", "", val));
  • Network accessline 78
    "http://schemas.microsoft.com/office/drawing/2014/chartex");
  • Network accessline 309
    // Uses raw elements for cx:units since the SDK doesn't expose                 // a typed CX.Units class.                 const string cxAxisNs = "http://schemas.microsoft.com/office/drawing/2014/chartex";
  • Network accessline 310
    // a typed CX.Units class.                 const string cxAxisNs = "http://schemas.microsoft.com/office/drawing/2014/chartex";                 var pctAxis = new CX.Axis { Id = 2 };
  • Network accessline 311
    const string cxAxisNs = "http://schemas.microsoft.com/office/drawing/2014/chartex";
  • Network accessline 995
    // around by appending a raw OpenXmlUnknownElement carrying                 // the correct form.                 const string cxNs = "http://schemas.microsoft.com/office/drawing/2014/chartex";
  • Network accessline 996
    // the correct form.                 const string cxNs = "http://schemas.microsoft.com/office/drawing/2014/chartex";                 var lp = new CX.SeriesLayoutProperties();
  • Network accessline 997
    const string cxNs = "http://schemas.microsoft.com/office/drawing/2014/chartex";

src/officecli/Core/Chart/ChartExResources.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Chart/ChartExStyleBuilder.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 62
    private const string CsNs = "http://schemas.microsoft.com/office/drawing/2012/chartStyle";
  • Network accessline 63
    private const string ANs = "http://schemas.openxmlformats.org/drawingml/2006/main";

src/officecli/Core/Chart/ChartHelper.Advanced.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Chart/ChartHelper.Axis.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Chart/ChartHelper.Builder.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Chart/ChartHelper.Reader.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 1624
    var spPr = parent.ChildElements             .FirstOrDefault(e => e.LocalName == "spPr"                 && e.NamespaceUri == "http://schemas.openxmlformats.org/drawingml/2006/chart");
  • Network accessline 1625
    .FirstOrDefault(e => e.LocalName == "spPr"                 && e.NamespaceUri == "http://schemas.openxmlformats.org/drawingml/2006/chart");         if (spPr == null) return null;
  • Network accessline 1626
    && e.NamespaceUri == "http://schemas.openxmlformats.org/drawingml/2006/chart");
  • Network accessline 1647
    var txPr = parent.ChildElements             .FirstOrDefault(e => e.LocalName == "txPr"                 && e.NamespaceUri == "http://schemas.openxmlformats.org/drawingml/2006/chart");
  • Network accessline 1648
    .FirstOrDefault(e => e.LocalName == "txPr"                 && e.NamespaceUri == "http://schemas.openxmlformats.org/drawingml/2006/chart");         if (txPr == null) return null;
  • Network accessline 1649
    && e.NamespaceUri == "http://schemas.openxmlformats.org/drawingml/2006/chart");

src/officecli/Core/Chart/ChartHelper.Setter.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Chart/ChartHelper.SetterHelpers.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Chart/ChartHelper.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Chart/ChartPresets.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Chart/ChartSvgRenderer.CxExtract.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Chart/ChartSvgRenderer.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/CliException.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/CliLogger.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/ColorMath.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/CompoundFile.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/CsvSepDeclaration.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Possible obfuscationline 31
    int start = content[0] == '<U+FEFF>' ? 1 : 0;

src/officecli/Core/DeferredStdout.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/DelimitedText.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Possible obfuscationline 34
    if (content[0] == '<U+FEFF>') content = content[1..];

src/officecli/Core/Diagram/DiagramCompiler.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Diagram/DiagramModel.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Diagram/DiagramStyles.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Diagram/FlowchartLayout.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Diagram/MermaidImageRenderer.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 52
    // then the public CDN as a fallback.     private const string MirrorUrl =         "https://d.officecli.ai/assets/mermaid-" + MermaidVersion + ".min.js";
  • Network accessline 53
    private const string MirrorUrl =         "https://d.officecli.ai/assets/mermaid-" + MermaidVersion + ".min.js";     private const string CdnUrl =
  • Network accessline 54
    "https://d.officecli.ai/assets/mermaid-" + MermaidVersion + ".min.js";
  • Network accessline 56
    "https://cdn.jsdelivr.net/npm/mermaid@" + MermaidVersion + "/dist/mermaid.min.js";
  • Network accessline 69
    private const string ElkVersion = "0.1";     private const string MermaidEsmUrl =         "https://cdn.jsdelivr.net/npm/mermaid@" + MermaidVersion + "/dist/mermaid.esm.min.mjs";
  • Network accessline 70
    private const string MermaidEsmUrl =         "https://cdn.jsdelivr.net/npm/mermaid@" + MermaidVersion + "/dist/mermaid.esm.min.mjs";     private const string ElkEsmUrl =
  • Network accessline 71
    "https://cdn.jsdelivr.net/npm/mermaid@" + MermaidVersion + "/dist/mermaid.esm.min.mjs";
  • Network accessline 72
    private const string ElkEsmUrl =         "https://cdn.jsdelivr.net/npm/@mermaid-js/layout-elk@" + ElkVersion         + "/dist/mermaid-layout-elk.esm.min.mjs";
  • Network accessline 73
    "https://cdn.jsdelivr.net/npm/@mermaid-js/layout-elk@" + ElkVersion

src/officecli/Core/Diagram/MermaidParser.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Diagram/SequenceLayout.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/DisplayText.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/DocumentIssue.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/DocumentLimits.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/DocumentNode.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/DrawingColorBuilder.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 181
    private static void AppendColorTransformChildren(OpenXmlElement colorEl, List<(string Name, int Val)> transforms)     {         const string aNs = "http://schemas.openxmlformats.org/drawingml/2006/main";
  • Network accessline 182
    {         const string aNs = "http://schemas.openxmlformats.org/drawingml/2006/main";         foreach (var (name, pct) in transforms)
  • Network accessline 183
    const string aNs = "http://schemas.openxmlformats.org/drawingml/2006/main";

src/officecli/Core/DrawingEffectsHelper.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/EditDistance.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/ElementRollback.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/EmuConverter.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/ExcelStyleManager.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/ExtendedPropertiesHandler.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/FileSource.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 10
    /// Supports: ///   - Local file path: "/tmp/model.glb", "C:\media\video.mp4" ///   - HTTP(S) URL: "https://example.com/video.mp4"
  • Network accessline 11
    ///   - Local file path: "/tmp/model.glb", "C:\media\video.mp4" ///   - HTTP(S) URL: "https://example.com/video.mp4" ///   - Data URI: "data:video/mp4;base64,AAAA..."
  • Network accessline 12
    ///   - HTTP(S) URL: "https://example.com/video.mp4"

src/officecli/Core/FindHelpers.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/FontMetricsReader.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Formula/FormulaEvaluator.Complex.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Formula/FormulaEvaluator.Functions.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Formula/FormulaEvaluator.Helpers.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Formula/FormulaEvaluator.References.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Formula/FormulaEvaluator.Regression.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 237
    else         {             int nr = newGrid.GetLength(0), nc = newGrid.GetLength(1);
  • Network accessline 238
    {             int nr = newGrid.GetLength(0), nc = newGrid.GetLength(1);             if (k == 1)
  • Network accessline 239
    int nr = newGrid.GetLength(0), nc = newGrid.GetLength(1);
  • Network accessline 247
    }             else if (nr == k) { m = nc; predCols = ToCols(newGrid, k, m, byRow: true); outShape = new FormulaResult?[1, m]; }             else if (nc == k) { m = nr; predCols = ToCols(newGrid, k, m, byRow: false); outShape = new FormulaRe
  • Network accessline 248
    else if (nr == k) { m = nc; predCols = ToCols(newGrid, k, m, byRow: true); outShape = new FormulaResult?[1, m]; }             else if (nc == k) { m = nr; predCols = ToCols(newGrid, k, m, byRow: false); outShape = new FormulaResult?[m, 1]; }
  • Network accessline 249
    else if (nc == k) { m = nr; predCols = ToCols(newGrid, k, m, byRow: false); outShape = new FormulaResult?[m, 1]; }

src/officecli/Core/Formula/FormulaEvaluator.Securities.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 179
    {         if (!CoupArgs(args, out var s, out var m, out var f, out var b)) return FormulaResult.Error("#NUM!");         // 30/360 bases derive NC from the period less the elapsed part; actual
  • Network accessline 180
    if (!CoupArgs(args, out var s, out var m, out var f, out var b)) return FormulaResult.Error("#NUM!");         // 30/360 bases derive NC from the period less the elapsed part; actual         // bases count the real days settlement→next coupo
  • Network accessline 181
    // 30/360 bases derive NC from the period less the elapsed part; actual

src/officecli/Core/Formula/FormulaEvaluator.Solver.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Formula/FormulaEvaluator.SpecialFunctions.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Formula/FormulaEvaluator.Spill.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 318
    int curR = g.GetLength(0), curC = g.GetLength(1);         int nr = OptInt(args, 1) ?? curR;         int nc = OptInt(args, 2) ?? curC;
  • Network accessline 319
    int nr = OptInt(args, 1) ?? curR;         int nc = OptInt(args, 2) ?? curC;         if (nr < curR || nc < curC) return FormulaResult.Error("#VALUE!");
  • Network accessline 320
    int nc = OptInt(args, 2) ?? curC;
  • Network accessline 321
    if (nr < curR || nc < curC) return FormulaResult.Error("#VALUE!");

src/officecli/Core/Formula/FormulaEvaluator.SpillLambda.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Formula/FormulaEvaluator.Statistics.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Formula/FormulaEvaluator.Statistics2.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Formula/FormulaEvaluator.Statistics3.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Formula/FormulaEvaluator.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Formula/FormulaParser.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 40
    private const string KatexDocsHint = "See https://katex.org/docs/supported.html for supported syntax.";
  • Network accessline 341
    {                     var colorEl = wRPr.ChildElements.FirstOrDefault(e => e.LocalName == "color");                     colorHex = colorEl?.GetAttribute("val", "http://schemas.openxmlformats.org/wordprocessingml/2006/main").Value;
  • Network accessline 342
    var colorEl = wRPr.ChildElements.FirstOrDefault(e => e.LocalName == "color");                     colorHex = colorEl?.GetAttribute("val", "http://schemas.openxmlformats.org/wordprocessingml/2006/main").Value;                 }
  • Network accessline 343
    colorHex = colorEl?.GetAttribute("val", "http://schemas.openxmlformats.org/wordprocessingml/2006/main").Value;
  • Network accessline 347
    {                     var sty = rPr.ChildElements.FirstOrDefault(e => e.LocalName == "sty");                     var styVal = sty?.GetAttribute("val", "http://schemas.openxmlformats.org/officeDocument/2006/math").Value;
  • Network accessline 348
    var sty = rPr.ChildElements.FirstOrDefault(e => e.LocalName == "sty");                     var styVal = sty?.GetAttribute("val", "http://schemas.openxmlformats.org/officeDocument/2006/math").Value;                     var hasNor = rPr.Child
  • Network accessline 349
    var styVal = sty?.GetAttribute("val", "http://schemas.openxmlformats.org/officeDocument/2006/math").Value;
  • Network accessline 354
    // read m:scr back, so those runs round-tripped as plain text.                     var scr = rPr.ChildElements.FirstOrDefault(e => e.LocalName == "scr");                     var scrVal = scr?.GetAttribute("val", "http://schemas.openxmlforma
  • Network accessline 355
    var scr = rPr.ChildElements.FirstOrDefault(e => e.LocalName == "scr");                     var scrVal = scr?.GetAttribute("val", "http://schemas.openxmlformats.org/officeDocument/2006/math").Value;                     if (hasNor)
  • Network accessline 356
    var scrVal = scr?.GetAttribute("val", "http://schemas.openxmlformats.org/officeDocument/2006/math").Value;
  • Network accessline 476
    var radPr = element.ChildElements.FirstOrDefault(e => e.LocalName == "radPr");                 var hideDeg = radPr?.ChildElements.FirstOrDefault(e => e.LocalName == "degHide");                 var isHidden = hideDeg != null && (hideDeg.GetA
  • Network accessline 477
    var hideDeg = radPr?.ChildElements.FirstOrDefault(e => e.LocalName == "degHide");                 var isHidden = hideDeg != null && (hideDeg.GetAttribute("val", "http://schemas.openxmlformats.org/officeDocument/2006/math").Value == "1"     
  • Network accessline 478
    var isHidden = hideDeg != null && (hideDeg.GetAttribute("val", "http://schemas.openxmlformats.org/officeDocument/2006/math").Value == "1"
  • Network accessline 479
    || hideDeg.GetAttribute("val", "http://schemas.openxmlformats.org/officeDocument/2006/math").Value == "true");
  • Network accessline 488
    var naryPr = element.ChildElements.FirstOrDefault(e => e.LocalName == "naryPr");                 var chrElem = naryPr?.ChildElements.FirstOrDefault(e => e.LocalName == "chr");                 var chr = chrElem?.GetAttribute("val", "http://s
  • Network accessline 489
    var chrElem = naryPr?.ChildElements.FirstOrDefault(e => e.LocalName == "chr");                 var chr = chrElem?.GetAttribute("val", "http://schemas.openxmlformats.org/officeDocument/2006/math").Value ?? "∫"; // ECMA-376: omitted m:chr = i
  • Network accessline 490
    var chr = chrElem?.GetAttribute("val", "http://schemas.openxmlformats.org/officeDocument/2006/math").Value ?? "∫"; // ECMA-376: omitted m:chr = integral (Word omits it for ∫); NOT ∑
  • Network accessline 512
    // stay empty, so distinguish "missing element" from "empty val".                 var begin = begChr != null                     ? (begChr.GetAttribute("val", "http://schemas.openxmlformats.org/officeDocument/2006/math").Value ?? "")
  • Network accessline 513
    var begin = begChr != null                     ? (begChr.GetAttribute("val", "http://schemas.openxmlformats.org/officeDocument/2006/math").Value ?? "")                     : "(";
  • Network accessline 514
    ? (begChr.GetAttribute("val", "http://schemas.openxmlformats.org/officeDocument/2006/math").Value ?? "")
  • Network accessline 515
    : "(";                 var end = endChr != null                     ? (endChr.GetAttribute("val", "http://schemas.openxmlformats.org/officeDocument/2006/math").Value ?? "")
  • Network accessline 516
    var end = endChr != null                     ? (endChr.GetAttribute("val", "http://schemas.openxmlformats.org/officeDocument/2006/math").Value ?? "")                     : ")";
  • Network accessline 517
    ? (endChr.GetAttribute("val", "http://schemas.openxmlformats.org/officeDocument/2006/math").Value ?? "")
  • Network accessline 632
    var barPr = element.ChildElements.FirstOrDefault(e => e.LocalName == "barPr");                 var posElem = barPr?.ChildElements.FirstOrDefault(e => e.LocalName == "pos");                 var posVal = posElem?.GetAttribute("val", "http://s
  • Network accessline 633
    var posElem = barPr?.ChildElements.FirstOrDefault(e => e.LocalName == "pos");                 var posVal = posElem?.GetAttribute("val", "http://schemas.openxmlformats.org/officeDocument/2006/math").Value;                 // ECMA-376: m:bar'
  • Network accessline 634
    var posVal = posElem?.GetAttribute("val", "http://schemas.openxmlformats.org/officeDocument/2006/math").Value;
  • Network accessline 643
    var accPr = element.ChildElements.FirstOrDefault(e => e.LocalName == "accPr");                 var chrElem = accPr?.ChildElements.FirstOrDefault(e => e.LocalName == "chr");                 var chr = chrElem?.GetAttribute("val", "http://sche
  • Network accessline 644
    var chrElem = accPr?.ChildElements.FirstOrDefault(e => e.LocalName == "chr");                 var chr = chrElem?.GetAttribute("val", "http://schemas.openxmlformats.org/officeDocument/2006/math").Value ?? "\u0302";                 var cmd = 
  • Network accessline 645
    var chr = chrElem?.GetAttribute("val", "http://schemas.openxmlformats.org/officeDocument/2006/math").Value ?? "\u0302";
  • Network accessline 741
    var gcPr = element.ChildElements.FirstOrDefault(e => e.LocalName == "groupChrPr");                 var chrEl = gcPr?.ChildElements.FirstOrDefault(e => e.LocalName == "chr");                 var chr = chrEl?.GetAttribute("val", "http://schem
  • Network accessline 742
    var chrEl = gcPr?.ChildElements.FirstOrDefault(e => e.LocalName == "chr");                 var chr = chrEl?.GetAttribute("val", "http://schemas.openxmlformats.org/officeDocument/2006/math").Value;                 var posEl = gcPr?.ChildElem
  • Network accessline 743
    var chr = chrEl?.GetAttribute("val", "http://schemas.openxmlformats.org/officeDocument/2006/math").Value;
  • Network accessline 744
    var posEl = gcPr?.ChildElements.FirstOrDefault(e => e.LocalName == "pos");                 var pos = posEl?.GetAttribute("val", "http://schemas.openxmlformats.org/officeDocument/2006/math").Value;                 // ECMA-376 defaults: omitt
  • Network accessline 745
    var pos = posEl?.GetAttribute("val", "http://schemas.openxmlformats.org/officeDocument/2006/math").Value;
  • Network accessline 798
    var mcPr = mc.ChildElements.FirstOrDefault(e => e.LocalName == "mcPr");             var jc = mcPr?.ChildElements.FirstOrDefault(e => e.LocalName == "mcJc");             var val = jc?.GetAttribute("val", "http://schemas.openxmlformats.org/of
  • Network accessline 799
    var jc = mcPr?.ChildElements.FirstOrDefault(e => e.LocalName == "mcJc");             var val = jc?.GetAttribute("val", "http://schemas.openxmlformats.org/officeDocument/2006/math").Value;             switch (val)
  • Network accessline 800
    var val = jc?.GetAttribute("val", "http://schemas.openxmlformats.org/officeDocument/2006/math").Value;
  • Network accessline 871
    var naryPr = element.ChildElements.FirstOrDefault(e => e.LocalName == "naryPr");                 var chrElem = naryPr?.ChildElements.FirstOrDefault(e => e.LocalName == "chr");                 var chr = chrElem?.GetAttribute("val", "http://s
  • Network accessline 872
    var chrElem = naryPr?.ChildElements.FirstOrDefault(e => e.LocalName == "chr");                 var chr = chrElem?.GetAttribute("val", "http://schemas.openxmlformats.org/officeDocument/2006/math").Value ?? "∫"; // ECMA-376: omitted m:chr = i
  • Network accessline 873
    var chr = chrElem?.GetAttribute("val", "http://schemas.openxmlformats.org/officeDocument/2006/math").Value ?? "∫"; // ECMA-376: omitted m:chr = integral (Word omits it for ∫); NOT ∑
  • Network accessline 887
    var begChr = dPr?.ChildElements.FirstOrDefault(e => e.LocalName == "begChr");                 var endChr = dPr?.ChildElements.FirstOrDefault(e => e.LocalName == "endChr");                 var begin = begChr?.GetAttribute("val", "http://sche
  • Network accessline 888
    var endChr = dPr?.ChildElements.FirstOrDefault(e => e.LocalName == "endChr");                 var begin = begChr?.GetAttribute("val", "http://schemas.openxmlformats.org/officeDocument/2006/math").Value ?? "(";                 var end = endC
  • Network accessline 889
    var begin = begChr?.GetAttribute("val", "http://schemas.openxmlformats.org/officeDocument/2006/math").Value ?? "(";
  • Network accessline 890
    var end = endChr?.GetAttribute("val", "http://schemas.openxmlformats.org/officeDocument/2006/math").Value ?? ")";
  • Network accessline 921
    var chrElem = accPr?.ChildElements.FirstOrDefault(e => e.LocalName == "chr");                 // ECMA-376: omitted m:chr = U+0302 (hat) — mirror the LaTeX path's default.                 var chr = chrElem?.GetAttribute("val", "http://schema
  • Network accessline 922
    // ECMA-376: omitted m:chr = U+0302 (hat) — mirror the LaTeX path's default.                 var chr = chrElem?.GetAttribute("val", "http://schemas.openxmlformats.org/officeDocument/2006/math").Value ?? "\u0302";                 return base
  • Network accessline 923
    var chr = chrElem?.GetAttribute("val", "http://schemas.openxmlformats.org/officeDocument/2006/math").Value ?? "\u0302";
  • Network accessline 2659
    var fPr = fraction.ChildElements.FirstOrDefault(e => e.LocalName == "fPr");         var type = fPr?.ChildElements.FirstOrDefault(e => e.LocalName == "type");         var val = type?.GetAttribute("val", "http://schemas.openxmlformats.org/off
  • Network accessline 2660
    var type = fPr?.ChildElements.FirstOrDefault(e => e.LocalName == "type");         var val = type?.GetAttribute("val", "http://schemas.openxmlformats.org/officeDocument/2006/math").Value;         return val == "noBar";
  • Network accessline 2661
    var val = type?.GetAttribute("val", "http://schemas.openxmlformats.org/officeDocument/2006/math").Value;

src/officecli/Core/Formula/ModernFunctionQualifier.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Formula/SharedFormulaResolver.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/FormulaRefShifter.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/GenericXmlQuery.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 714
    private static readonly Dictionary<string, string> CommonNamespaces = new()     {         ["w"] = "http://schemas.openxmlformats.org/wordprocessingml/2006/main",
  • Network accessline 715
    {         ["w"] = "http://schemas.openxmlformats.org/wordprocessingml/2006/main",         ["r"] = "http://schemas.openxmlformats.org/officeDocument/2006/relationships",
  • Network accessline 716
    ["w"] = "http://schemas.openxmlformats.org/wordprocessingml/2006/main",
  • Network accessline 717
    ["r"] = "http://schemas.openxmlformats.org/officeDocument/2006/relationships",
  • Network accessline 718
    ["a"] = "http://schemas.openxmlformats.org/drawingml/2006/main",
  • Network accessline 719
    ["p"] = "http://schemas.openxmlformats.org/presentationml/2006/main",
  • Network accessline 720
    ["x"] = "http://schemas.openxmlformats.org/spreadsheetml/2006/main",
  • Network accessline 721
    ["wp"] = "http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing",
  • Network accessline 722
    ["mc"] = "http://schemas.openxmlformats.org/markup-compatibility/2006",
  • Network accessline 723
    ["c"] = "http://schemas.openxmlformats.org/drawingml/2006/chart",
  • Network accessline 724
    ["xdr"] = "http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing",
  • Network accessline 725
    ["wps"] = "http://schemas.microsoft.com/office/word/2010/wordprocessingShape",
  • Network accessline 726
    ["wp14"] = "http://schemas.microsoft.com/office/word/2010/wordprocessingDrawing",

src/officecli/Core/HtmlPreviewHelper.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 90
    {         var svg =             "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 120 120\" " +
  • Network accessline 91
    var svg =             "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 120 120\" " +             "preserveAspectRatio=\"xMidYMid meet\">" +
  • Network accessline 92
    "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 120 120\" " +

src/officecli/Core/HtmlScreenshot.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/HyperlinkUriValidator.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/IDocumentHandler.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/ImageSource.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 14
    ///   - Local file path: "/tmp/logo.png", "C:\images\photo.jpg" ///   - Data URI: "data:image/png;base64,iVBOR..." ///   - HTTP(S) URL: "https://example.com/image.png"
  • Network accessline 15
    ///   - Data URI: "data:image/png;base64,iVBOR..." ///   - HTTP(S) URL: "https://example.com/image.png" ///
  • Network accessline 16
    ///   - HTTP(S) URL: "https://example.com/image.png"

src/officecli/Core/Installer.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/IssueSubtypes.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/KatexAssets.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 26
    private const string MirrorBase = "https://d.officecli.ai/assets/katex-" + Version;
  • Network accessline 27
    private const string CdnBase = "https://cdn.jsdelivr.net/npm/katex@" + Version + "/dist";

src/officecli/Core/LocaleFontRegistry.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Markdown/MarkdownModel.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Markdown/MarkdownParser.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/MsysPathHint.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/MutationSelectorGuard.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/NativeRenderFailure.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/NumericText.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/OfficeCliMetadata.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 44
    private const string CpNs = "http://schemas.openxmlformats.org/package/2006/metadata/core-properties";
  • Network accessline 45
    private const string DcNs = "http://purl.org/dc/elements/1.1/";
  • Network accessline 46
    private const string DctermsNs = "http://purl.org/dc/terms/";
  • Network accessline 47
    private const string XsiNs = "http://www.w3.org/2001/XMLSchema-instance";

src/officecli/Core/OfficeDefaultFonts.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/OfficeDefaultThemeColors.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/OleHelper.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/OutputFormatter.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/ParseHelpers.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Possible obfuscationline 377
    // Trim() but tests with `"<U+FEFF>true"` still threw. Use a stricter
  • Possible obfuscationline 386
    '<U+FEFF>', // BOM / zero-width no-break space
  • Possible obfuscationline 387
    '<U+200B>', // zero-width space
  • Possible obfuscationline 388
    '<U+200C>', // zero-width non-joiner
  • Possible obfuscationline 389
    '<U+200D>', // zero-width joiner
  • Possible obfuscationline 390
    '<U+2060>', // word joiner

src/officecli/Core/PathAliases.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/PathIdentity.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/PathIndex.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/PipeTempDirGuard.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/PivotTableHelper.Cache.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/PivotTableHelper.Definition.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 363
    if (needsFillDownExt)             {                 const string x14Ns = "http://schemas.microsoft.com/office/spreadsheetml/2009/9/main";
  • Network accessline 364
    {                 const string x14Ns = "http://schemas.microsoft.com/office/spreadsheetml/2009/9/main";                 var pfExt = new PivotFieldExtension { Uri = "{2946ED86-A175-432a-8AC1-64E0C546D7DE}" };
  • Network accessline 365
    const string x14Ns = "http://schemas.microsoft.com/office/spreadsheetml/2009/9/main";

src/officecli/Core/PivotTableHelper.Parse.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/PivotTableHelper.Readback.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/PivotTableHelper.Render.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/PivotTableHelper.Set.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 267
    // reflect the label repetition.                     bool enable = ParseHelpers.IsTruthy(value);                     const string x14Ns = "http://schemas.microsoft.com/office/spreadsheetml/2009/9/main";
  • Network accessline 268
    bool enable = ParseHelpers.IsTruthy(value);                     const string x14Ns = "http://schemas.microsoft.com/office/spreadsheetml/2009/9/main";                     var extLst = pivotDef.GetFirstChild<PivotTableDefinitionExtensionList>
  • Network accessline 269
    const string x14Ns = "http://schemas.microsoft.com/office/spreadsheetml/2009/9/main";

src/officecli/Core/PivotTableHelper.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Plugins/DumpReaderInvoker.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Possible obfuscationline 81
    var line = raw.TrimStart('<U+FEFF>').Trim();

src/officecli/Core/Plugins/ExporterInvoker.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Plugins/FormatHandlerProxy.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Plugins/FormatHandlerSession.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Plugins/PluginManifest.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Plugins/PluginProcess.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Plugins/PluginRegistry.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/PowerPointPngBackend.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/RawXmlHelper.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 302
    {             // p:sld — ECMA-376 CT_Slide             [("http://schemas.openxmlformats.org/presentationml/2006/main", "sld")] =
  • Network accessline 303
    // p:sld — ECMA-376 CT_Slide             [("http://schemas.openxmlformats.org/presentationml/2006/main", "sld")] =                 new[] { "cSld", "clrMapOvr", "transition", "timing", "extLst" },
  • Network accessline 304
    [("http://schemas.openxmlformats.org/presentationml/2006/main", "sld")] =
  • Network accessline 305
    new[] { "cSld", "clrMapOvr", "transition", "timing", "extLst" },             // p:sldLayout — CT_SlideLayout             [("http://schemas.openxmlformats.org/presentationml/2006/main", "sldLayout")] =
  • Network accessline 306
    // p:sldLayout — CT_SlideLayout             [("http://schemas.openxmlformats.org/presentationml/2006/main", "sldLayout")] =                 new[] { "cSld", "clrMapOvr", "transition", "timing", "hf", "extLst" },
  • Network accessline 307
    [("http://schemas.openxmlformats.org/presentationml/2006/main", "sldLayout")] =
  • Network accessline 308
    new[] { "cSld", "clrMapOvr", "transition", "timing", "hf", "extLst" },             // p:sldMaster — CT_SlideMaster             [("http://schemas.openxmlformats.org/presentationml/2006/main", "sldMaster")] =
  • Network accessline 309
    // p:sldMaster — CT_SlideMaster             [("http://schemas.openxmlformats.org/presentationml/2006/main", "sldMaster")] =                 new[] { "cSld", "clrMap", "sldLayoutIdLst", "transition", "timing", "hf", "txStyles", "extLst" },
  • Network accessline 310
    [("http://schemas.openxmlformats.org/presentationml/2006/main", "sldMaster")] =
  • Network accessline 314
    // is created with its txBody; without reorder, style lands AFTER             // txBody and strict consumers reject the file.             [("http://schemas.openxmlformats.org/presentationml/2006/main", "sp")] =
  • Network accessline 315
    // txBody and strict consumers reject the file.             [("http://schemas.openxmlformats.org/presentationml/2006/main", "sp")] =                 new[] { "nvSpPr", "spPr", "style", "txBody", "extLst" },
  • Network accessline 316
    [("http://schemas.openxmlformats.org/presentationml/2006/main", "sp")] =
  • Network accessline 365
    private static readonly XNamespace McNs =         "http://schemas.openxmlformats.org/markup-compatibility/2006";
  • Network accessline 366
    "http://schemas.openxmlformats.org/markup-compatibility/2006";
  • Network accessline 427
    private static readonly Dictionary<string, string> CommonNamespaces = new()     {         ["w"] = "http://schemas.openxmlformats.org/wordprocessingml/2006/main",
  • Network accessline 428
    {         ["w"] = "http://schemas.openxmlformats.org/wordprocessingml/2006/main",         ["r"] = "http://schemas.openxmlformats.org/officeDocument/2006/relationships",
  • Network accessline 429
    ["w"] = "http://schemas.openxmlformats.org/wordprocessingml/2006/main",
  • Network accessline 430
    ["r"] = "http://schemas.openxmlformats.org/officeDocument/2006/relationships",
  • Network accessline 431
    ["a"] = "http://schemas.openxmlformats.org/drawingml/2006/main",
  • Network accessline 432
    ["p"] = "http://schemas.openxmlformats.org/presentationml/2006/main",
  • Network accessline 433
    ["x"] = "http://schemas.openxmlformats.org/spreadsheetml/2006/main",
  • Network accessline 434
    ["wp"] = "http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing",
  • Network accessline 435
    ["mc"] = "http://schemas.openxmlformats.org/markup-compatibility/2006",
  • Network accessline 436
    ["c"] = "http://schemas.openxmlformats.org/drawingml/2006/chart",
  • Network accessline 437
    ["xdr"] = "http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing",
  • Network accessline 438
    ["wps"] = "http://schemas.microsoft.com/office/word/2010/wordprocessingShape",
  • Network accessline 439
    ["wp14"] = "http://schemas.microsoft.com/office/word/2010/wordprocessingDrawing",
  • Network accessline 554
    // Ensure common OpenXML namespaces are available         TryAddNamespace(nsManager, "w", "http://schemas.openxmlformats.org/wordprocessingml/2006/main");
  • Network accessline 555
    TryAddNamespace(nsManager, "w", "http://schemas.openxmlformats.org/wordprocessingml/2006/main");
  • Network accessline 556
    TryAddNamespace(nsManager, "r", "http://schemas.openxmlformats.org/officeDocument/2006/relationships");
  • Network accessline 557
    TryAddNamespace(nsManager, "a", "http://schemas.openxmlformats.org/drawingml/2006/main");
  • Network accessline 558
    TryAddNamespace(nsManager, "p", "http://schemas.openxmlformats.org/presentationml/2006/main");
  • Network accessline 559
    TryAddNamespace(nsManager, "x", "http://schemas.openxmlformats.org/spreadsheetml/2006/main");
  • Network accessline 560
    TryAddNamespace(nsManager, "wp", "http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing");
  • Network accessline 561
    TryAddNamespace(nsManager, "mc", "http://schemas.openxmlformats.org/markup-compatibility/2006");
  • Network accessline 562
    TryAddNamespace(nsManager, "c", "http://schemas.openxmlformats.org/drawingml/2006/chart");
  • Network accessline 563
    TryAddNamespace(nsManager, "xdr", "http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing");
  • Network accessline 916
    System.Xml.Linq.XNamespace ct =             "http://schemas.openxmlformats.org/package/2006/content-types";
  • Network accessline 917
    "http://schemas.openxmlformats.org/package/2006/content-types";
  • Network accessline 1054
    void ScanDrawingAnchors(OpenXmlPart part)         {             const string XdrNs = "http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing";
  • Network accessline 1055
    {             const string XdrNs = "http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing";             try
  • Network accessline 1056
    const string XdrNs = "http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing";
  • Possible obfuscationline 1449
    if (s[0] == '<U+FEFF>') { s = s[1..].TrimStart(); continue; }

src/officecli/Core/Rendering/IRenderer.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Rendering/RenderCapabilities.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Rendering/RenderOptions.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Rendering/RenderOutputKind.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Rendering/RenderResult.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Rendering/RendererRegistry.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/SchemaKeyNormalizer.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/SchemaOrder.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/SelectorCommaSplit.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/SelectorPositionalIndex.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/SkillInstaller.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/SlideSizeDefaults.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/SpacingConverter.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/SsrfGuard.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/StyleUnsupportedHints.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/SvgImageHelper.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 21
    {     public const string SvgExtensionUri = "{96DAC541-7B7A-43D3-8B79-37D633B846F1}";     public const string SvgNamespace = "http://schemas.microsoft.com/office/drawing/2016/SVG/main";
  • Network accessline 22
    public const string SvgExtensionUri = "{96DAC541-7B7A-43D3-8B79-37D633B846F1}";     public const string SvgNamespace = "http://schemas.microsoft.com/office/drawing/2016/SVG/main";     public const string RelsNamespace = "http://schemas.open
  • Network accessline 23
    public const string SvgNamespace = "http://schemas.microsoft.com/office/drawing/2016/SVG/main";
  • Network accessline 24
    public const string RelsNamespace = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";

src/officecli/Core/TableStyles/Families/DarkStyle1.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/TableStyles/Families/DarkStyle2.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/TableStyles/Families/LightStyle1.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/TableStyles/Families/LightStyle2.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/TableStyles/Families/LightStyle3.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/TableStyles/Families/MediumStyle1.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/TableStyles/Families/MediumStyle2.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/TableStyles/Families/MediumStyle3.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/TableStyles/Families/MediumStyle4.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/TableStyles/Families/ThemedStyle1.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/TableStyles/Families/ThemedStyle2.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/TableStyles/TableStyleRegistry.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/TableStyles/TableStyleResolver.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/TableStyles/TableStyleTypes.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/TemplateMerger.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/TextEscape.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/ThemeColorResolver.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/ThemeHandler.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/ThreeAssets.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 26
    private const string MirrorBase = "https://d.officecli.ai/assets/three-" + Version;
  • Network accessline 27
    private const string CdnBase = "https://cdn.jsdelivr.net/npm/three@" + Version;

src/officecli/Core/TrackingPropertyDictionary.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/TypedAttributeFallback.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 113
    if (string.IsNullOrEmpty(nsUri) || string.IsNullOrEmpty(prefix))         {             nsUri  = "http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 114
    {             nsUri  = "http://schemas.openxmlformats.org/wordprocessingml/2006/main";             prefix = "w";
  • Network accessline 115
    nsUri  = "http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 238
    if (string.IsNullOrEmpty(nsUri) || string.IsNullOrEmpty(prefix))         {             nsUri  = "http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 239
    {             nsUri  = "http://schemas.openxmlformats.org/wordprocessingml/2006/main";             prefix = "w";
  • Network accessline 240
    nsUri  = "http://schemas.openxmlformats.org/wordprocessingml/2006/main";

src/officecli/Core/Units.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/UpdateChecker.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 36
    // fastest path for most users; github is the safety net when CF or the     // mirror is unreachable.     private const string PrimaryBase = "https://d.officecli.ai";
  • Network accessline 37
    // mirror is unreachable.     private const string PrimaryBase = "https://d.officecli.ai";     private const string FallbackBase = "https://github.com/iOfficeAI/OfficeCLI";
  • Network accessline 38
    private const string PrimaryBase = "https://d.officecli.ai";
  • Network accessline 39
    private const string FallbackBase = "https://github.com/iOfficeAI/OfficeCLI";

src/officecli/Core/Watch/WatchMark.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Watch/WatchNotifier.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/Watch/WatchServer.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 313
    if (existingPort.HasValue)         {             var url = existingPort.Value > 0 ? $" at http://localhost:{existingPort.Value}" : "";
  • Network accessline 314
    {             var url = existingPort.Value > 0 ? $" at http://localhost:{existingPort.Value}" : "";             throw new InvalidOperationException($"Another watch process is already running{url} for {_filePath}");
  • Network accessline 315
    var url = existingPort.Value > 0 ? $" at http://localhost:{existingPort.Value}" : "";
  • Network accessline 328
    _port = ((IPEndPoint)_tcpListener.LocalEndpoint!).Port;         WriteMarker();         Console.WriteLine($"Watch: http://localhost:{_port}");
  • Network accessline 329
    WriteMarker();         Console.WriteLine($"Watch: http://localhost:{_port}");         Console.WriteLine($"Watching: {_filePath}");
  • Network accessline 330
    Console.WriteLine($"Watch: http://localhost:{_port}");

src/officecli/Core/WordHtmlRefresh.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/WordIndentAliases.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/WordNumFmtRenderer.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/WordPageDefaults.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/WordPdfBackend.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/WordStrictAttributeSanitizer.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 20
    internal static class WordStrictAttributeSanitizer {     private const string W = "http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 22
    private const string W = "http://schemas.openxmlformats.org/wordprocessingml/2006/main";

src/officecli/Core/WordTocBuilder.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/WorksheetBloatFilter.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Core/XmlTextValidator.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 9
    /// <summary> /// Validates user-supplied text against the XML 1.0 character production /// (https://www.w3.org/TR/xml/#charsets). Open XML files are XML 1.0, so
  • Network accessline 10
    /// Validates user-supplied text against the XML 1.0 character production /// (https://www.w3.org/TR/xml/#charsets). Open XML files are XML 1.0, so /// codepoints outside this set cannot be persisted without raising
  • Network accessline 11
    /// (https://www.w3.org/TR/xml/#charsets). Open XML files are XML 1.0, so

src/officecli/Handlers/DocumentHandlerFactory.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 449
    private static readonly System.Xml.Linq.XNamespace RelsNs =         "http://schemas.openxmlformats.org/package/2006/relationships";
  • Network accessline 450
    "http://schemas.openxmlformats.org/package/2006/relationships";

src/officecli/Handlers/Excel/ExcelBatchEmitter.Elements.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Excel/ExcelBatchEmitter.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Excel/ExcelDataFormatter.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Excel/ExcelHandler.Add.Cells.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Excel/ExcelHandler.Add.Cf.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 183
    Uri = "{B025F937-C7B1-47D3-B67F-A62EFF666E3E}"         };         dbRuleExt.AddNamespaceDeclaration("x14", "http://schemas.microsoft.com/office/spreadsheetml/2009/9/main");
  • Network accessline 184
    };         dbRuleExt.AddNamespaceDeclaration("x14", "http://schemas.microsoft.com/office/spreadsheetml/2009/9/main");         dbRuleExt.Append(new X14.Id(dbGuid));
  • Network accessline 185
    dbRuleExt.AddNamespaceDeclaration("x14", "http://schemas.microsoft.com/office/spreadsheetml/2009/9/main");
  • Network accessline 268
    var x14Cf = new X14.ConditionalFormatting();         x14Cf.AddNamespaceDeclaration("xm", "http://schemas.microsoft.com/office/excel/2006/main");
  • Network accessline 269
    x14Cf.AddNamespaceDeclaration("xm", "http://schemas.microsoft.com/office/excel/2006/main");

src/officecli/Handlers/Excel/ExcelHandler.Add.Chart.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 265
    new Drawing.GraphicData(cxChartRef)                 {                     Uri = "http://schemas.microsoft.com/office/drawing/2014/chartex"
  • Network accessline 266
    {                     Uri = "http://schemas.microsoft.com/office/drawing/2014/chartex"                 }
  • Network accessline 267
    Uri = "http://schemas.microsoft.com/office/drawing/2014/chartex"
  • Network accessline 352
    new Drawing.GraphicData(chartRef)             {                 Uri = "http://schemas.openxmlformats.org/drawingml/2006/chart"
  • Network accessline 353
    {                 Uri = "http://schemas.openxmlformats.org/drawingml/2006/chart"             }
  • Network accessline 354
    Uri = "http://schemas.openxmlformats.org/drawingml/2006/chart"

src/officecli/Handlers/Excel/ExcelHandler.Add.Drawings.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 517
    if (picCNvPrDec != null)             {                 const string a16Ns = "http://schemas.microsoft.com/office/drawing/2014/main";
  • Network accessline 518
    {                 const string a16Ns = "http://schemas.microsoft.com/office/drawing/2014/main";                 var wsDrawingRoot = picDrawingsPart.WorksheetDrawing;
  • Network accessline 519
    const string a16Ns = "http://schemas.microsoft.com/office/drawing/2014/main";
  • Network accessline 1105
    {             spkExt = new WorksheetExtension { Uri = "{05C60535-1F16-4fd2-B633-E4A46CF9E463}" };             spkExt.AddNamespaceDeclaration("x14", "http://schemas.microsoft.com/office/spreadsheetml/2009/9/main");
  • Network accessline 1106
    spkExt = new WorksheetExtension { Uri = "{05C60535-1F16-4fd2-B633-E4A46CF9E463}" };             spkExt.AddNamespaceDeclaration("x14", "http://schemas.microsoft.com/office/spreadsheetml/2009/9/main");             spkGroups = new X14.Sparklin
  • Network accessline 1107
    spkExt.AddNamespaceDeclaration("x14", "http://schemas.microsoft.com/office/spreadsheetml/2009/9/main");
  • Network accessline 1117
    // Excel silently drops the entire extLst block and no sparklines render.         var spkWsRoot = spkWs;         const string spkMcNs = "http://schemas.openxmlformats.org/markup-compatibility/2006";
  • Network accessline 1118
    var spkWsRoot = spkWs;         const string spkMcNs = "http://schemas.openxmlformats.org/markup-compatibility/2006";         const string spkX14Ns = "http://schemas.microsoft.com/office/spreadsheetml/2009/9/main";
  • Network accessline 1119
    const string spkMcNs = "http://schemas.openxmlformats.org/markup-compatibility/2006";
  • Network accessline 1120
    const string spkX14Ns = "http://schemas.microsoft.com/office/spreadsheetml/2009/9/main";

src/officecli/Handlers/Excel/ExcelHandler.Add.Tables.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Excel/ExcelHandler.Add.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 1375
    {         const string relNs =             "http://schemas.openxmlformats.org/officeDocument/2006/relationships";
  • Network accessline 1376
    const string relNs =             "http://schemas.openxmlformats.org/officeDocument/2006/relationships";         foreach (var element in root.Descendants().Prepend(root))
  • Network accessline 1377
    "http://schemas.openxmlformats.org/officeDocument/2006/relationships";

src/officecli/Handlers/Excel/ExcelHandler.ChartCache.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Excel/ExcelHandler.CheckGeneralPrecision.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Excel/ExcelHandler.CheckNumericOverflow.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Excel/ExcelHandler.CheckOverflow.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Excel/ExcelHandler.DumpSupport.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Excel/ExcelHandler.DynamicArray.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 31
    // typed Metadata element constructor expects a bare root element.)     private const string DynamicArrayMetadataXml =         "<metadata xmlns=\"http://schemas.openxmlformats.org/spreadsheetml/2006/main\" " +
  • Network accessline 32
    private const string DynamicArrayMetadataXml =         "<metadata xmlns=\"http://schemas.openxmlformats.org/spreadsheetml/2006/main\" " +         "xmlns:xda=\"http://schemas.microsoft.com/office/spreadsheetml/2017/dynamicarray\">" +
  • Network accessline 33
    "<metadata xmlns=\"http://schemas.openxmlformats.org/spreadsheetml/2006/main\" " +
  • Network accessline 34
    "xmlns:xda=\"http://schemas.microsoft.com/office/spreadsheetml/2017/dynamicarray\">" +

src/officecli/Handlers/Excel/ExcelHandler.FormulaCache.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Excel/ExcelHandler.Helpers.Cell.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Dangerous shell operationline 228
    var rm = System.Text.RegularExpressions.Regex.Match(range.Trim(),
  • Network accessline 595
    // opened cleanly on Windows — the flag only affects officecli's own     // cell-write auto-grow behavior.     private const string AutoExpandNamespaceUri = "https://officecli.ai/2025/autoexpand";
  • Network accessline 596
    // cell-write auto-grow behavior.     private const string AutoExpandNamespaceUri = "https://officecli.ai/2025/autoexpand";     private const string AutoExpandNamespacePrefix = "ae";
  • Network accessline 597
    private const string AutoExpandNamespaceUri = "https://officecli.ai/2025/autoexpand";

src/officecli/Handlers/Excel/ExcelHandler.Helpers.Chart.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 276
    private const string ExcelChartExUri = "http://schemas.microsoft.com/office/drawing/2014/chartex";
  • Network accessline 316
    {             var rId = child.GetAttributes().FirstOrDefault(a =>                 a.LocalName == "id" && a.NamespaceUri == "http://schemas.openxmlformats.org/officeDocument/2006/relationships");
  • Network accessline 317
    var rId = child.GetAttributes().FirstOrDefault(a =>                 a.LocalName == "id" && a.NamespaceUri == "http://schemas.openxmlformats.org/officeDocument/2006/relationships");             if (rId.Value != null) return rId.Value;
  • Network accessline 318
    a.LocalName == "id" && a.NamespaceUri == "http://schemas.openxmlformats.org/officeDocument/2006/relationships");

src/officecli/Handlers/Excel/ExcelHandler.Helpers.ConditionalFormat.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 70
    internal static void EnsureWorksheetX14Ignorable(Worksheet ws)     {         const string mcNs = "http://schemas.openxmlformats.org/markup-compatibility/2006";
  • Network accessline 71
    {         const string mcNs = "http://schemas.openxmlformats.org/markup-compatibility/2006";         const string x14Ns = "http://schemas.microsoft.com/office/spreadsheetml/2009/9/main";
  • Network accessline 72
    const string mcNs = "http://schemas.openxmlformats.org/markup-compatibility/2006";
  • Network accessline 73
    const string x14Ns = "http://schemas.microsoft.com/office/spreadsheetml/2009/9/main";
  • Network accessline 93
    {         const string cfExtUri = "{78C0D931-6437-407d-A8EE-F0AAD7539E65}";         const string x14Ns = "http://schemas.microsoft.com/office/spreadsheetml/2009/9/main";
  • Network accessline 95
    const string x14Ns = "http://schemas.microsoft.com/office/spreadsheetml/2009/9/main";

src/officecli/Handlers/Excel/ExcelHandler.Helpers.Drawing.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 544
    const string relNs =             "http://schemas.openxmlformats.org/officeDocument/2006/relationships";
  • Network accessline 545
    "http://schemas.openxmlformats.org/officeDocument/2006/relationships";

src/officecli/Handlers/Excel/ExcelHandler.Helpers.Node.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 901
    // honor the i18n extension (Excel for Mac / RTL locales) pick it up.         // The element is a leaf empty marker; absence means LTR (default).         const string xlsNs = "http://schemas.openxmlformats.org/spreadsheetml/2006/main";
  • Network accessline 902
    // The element is a leaf empty marker; absence means LTR (default).         const string xlsNs = "http://schemas.openxmlformats.org/spreadsheetml/2006/main";         OpenXmlElement BuildRtlMarker() =>
  • Network accessline 903
    const string xlsNs = "http://schemas.openxmlformats.org/spreadsheetml/2006/main";

src/officecli/Handlers/Excel/ExcelHandler.Helpers.Ole.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Excel/ExcelHandler.Helpers.Sheet.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Excel/ExcelHandler.Helpers.TableStyle.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Excel/ExcelHandler.Helpers.Validation.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Dangerous shell operationline 102
    var rm = System.Text.RegularExpressions.Regex.Match(tok, @"^\$?([0-9]+)\$?:\$?([0-9]+)$");

src/officecli/Handlers/Excel/ExcelHandler.Helpers.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Excel/ExcelHandler.HtmlPreview.Charts.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Excel/ExcelHandler.HtmlPreview.Pictures.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Excel/ExcelHandler.HtmlPreview.Shapes.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 98
    // Inline SVG overlay for the geometry.         sb.Append("<svg style=\"position:absolute;inset:0;width:100%;height:100%;overflow:visible\" viewBox=\"0 0 100 100\" preserveAspectRatio=\"none\" xmlns=\"http://www.w3.org/2000/svg\">");
  • Network accessline 99
    sb.Append("<svg style=\"position:absolute;inset:0;width:100%;height:100%;overflow:visible\" viewBox=\"0 0 100 100\" preserveAspectRatio=\"none\" xmlns=\"http://www.w3.org/2000/svg\">");

src/officecli/Handlers/Excel/ExcelHandler.HtmlPreview.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 879
    else             {                 var cell = ctx.CellMap.TryGetValue((r, c), out var nc) ? nc : null;
  • Network accessline 880
    {                 var cell = ctx.CellMap.TryGetValue((r, c), out var nc) ? nc : null;                 var style = GetCellStyleCss(cell, ctx.Stylesheet, ctx.RenderStyles, ctx.FrozenRows, ctx.FrozenCols, r, c, ctx.FrozenLeftOffsets, ctx.Froze
  • Network accessline 881
    var cell = ctx.CellMap.TryGetValue((r, c), out var nc) ? nc : null;
  • Network accessline 1037
    // occupied cell, a merged region, a hidden column, or the sheet edge.         double extra = 0;         for (int nc = c + 1; nc <= ctx.MaxCol; nc++)
  • Network accessline 1038
    double extra = 0;         for (int nc = c + 1; nc <= ctx.MaxCol; nc++)         {
  • Network accessline 1039
    for (int nc = c + 1; nc <= ctx.MaxCol; nc++)

src/officecli/Handlers/Excel/ExcelHandler.Import.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Excel/ExcelHandler.Query.RowWhere.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Excel/ExcelHandler.Query.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Excel/ExcelHandler.Remove.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Excel/ExcelHandler.RichValueImage.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 29
    public partial class ExcelHandler {     private const string RichValueRelRelType = "http://schemas.microsoft.com/office/2022/10/relationships/richValueRel";
  • Network accessline 30
    {     private const string RichValueRelRelType = "http://schemas.microsoft.com/office/2022/10/relationships/richValueRel";     private const string RichValueRelContentType = "application/vnd.ms-excel.richvaluerel+xml";
  • Network accessline 31
    private const string RichValueRelRelType = "http://schemas.microsoft.com/office/2022/10/relationships/richValueRel";
  • Network accessline 32
    private const string RichValueRelContentType = "application/vnd.ms-excel.richvaluerel+xml";     private static readonly XNamespace RichDataNs = "http://schemas.microsoft.com/office/spreadsheetml/2017/richdata";     private static readonly X
  • Network accessline 33
    private static readonly XNamespace RichDataNs = "http://schemas.microsoft.com/office/spreadsheetml/2017/richdata";
  • Network accessline 34
    private static readonly XNamespace RichValueRelNs = "http://schemas.microsoft.com/office/spreadsheetml/2022/richvaluerel";
  • Network accessline 35
    private static readonly XNamespace OoxmlRelNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";
  • Network accessline 41
    private const string RdRichValueTypesXml =         "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n" +         "<rvTypesInfo xmlns=\"http://schemas.microsoft.com/office/spreadsheetml/2017/richdata2\" " +
  • Network accessline 42
    "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n" +         "<rvTypesInfo xmlns=\"http://schemas.microsoft.com/office/spreadsheetml/2017/richdata2\" " +         "xmlns:mc=\"http://schemas.openxmlformats.org/markup-compatibil
  • Network accessline 43
    "<rvTypesInfo xmlns=\"http://schemas.microsoft.com/office/spreadsheetml/2017/richdata2\" " +
  • Network accessline 44
    "xmlns:mc=\"http://schemas.openxmlformats.org/markup-compatibility/2006\" mc:Ignorable=\"x\" " +
  • Network accessline 45
    "xmlns:x=\"http://schemas.openxmlformats.org/spreadsheetml/2006/main\">" +

src/officecli/Handlers/Excel/ExcelHandler.Selector.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Excel/ExcelHandler.Set.Cells.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Excel/ExcelHandler.Set.Charts.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Excel/ExcelHandler.Set.Drawings.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Excel/ExcelHandler.Set.Ranges.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Excel/ExcelHandler.Set.RowsCols.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Excel/ExcelHandler.Set.Sheet.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Excel/ExcelHandler.Set.Tables.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Excel/ExcelHandler.Set.Workbook.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Excel/ExcelHandler.Set.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Excel/ExcelHandler.SheetShift.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 260
    if (cid != null && int.TryParse(cid.Text, out var c))                         {                             var nc = colMarkerShift(c);
  • Network accessline 261
    {                             var nc = colMarkerShift(c);                             if (nc != c) { cid.Text = nc.ToString(); drDirty = true; }
  • Network accessline 262
    var nc = colMarkerShift(c);
  • Network accessline 263
    if (nc != c) { cid.Text = nc.ToString(); drDirty = true; }

src/officecli/Handlers/Excel/ExcelHandler.Slicer.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 51
    // silently strips the slicer parts on open with no schema error.     private const string SlicerListExtUri     = "{A8765BA9-456A-4dab-B4F3-ACF838C121DE}";     private const string SlicerDrawingNsUri   = "http://schemas.microsoft.com/office
  • Network accessline 52
    private const string SlicerListExtUri     = "{A8765BA9-456A-4dab-B4F3-ACF838C121DE}";     private const string SlicerDrawingNsUri   = "http://schemas.microsoft.com/office/drawing/2010/slicer";     private const string X14NsUri             =
  • Network accessline 53
    private const string SlicerDrawingNsUri   = "http://schemas.microsoft.com/office/drawing/2010/slicer";
  • Network accessline 54
    private const string X14NsUri             = "http://schemas.microsoft.com/office/spreadsheetml/2009/9/main";
  • Network accessline 55
    private const string McNsUri              = "http://schemas.openxmlformats.org/markup-compatibility/2006";
  • Network accessline 56
    // Pivot-backed slicer drawing uses a14 (2010/main), not a15 (2012/main).     // Excel-generated reference files use a14; a15 gets the drawing removed.     private const string A14NsUri             = "http://schemas.microsoft.com/office/dra
  • Network accessline 57
    // Excel-generated reference files use a14; a15 gets the drawing removed.     private const string A14NsUri             = "http://schemas.microsoft.com/office/drawing/2010/main";     private const string XNsUri               = "http://schem
  • Network accessline 58
    private const string A14NsUri             = "http://schemas.microsoft.com/office/drawing/2010/main";
  • Network accessline 59
    private const string XNsUri               = "http://schemas.openxmlformats.org/spreadsheetml/2006/main";
  • Network accessline 639
    drawingsPart.WorksheetDrawing = new XDR.WorksheetDrawing();             drawingsPart.WorksheetDrawing.AddNamespaceDeclaration(                 "a", "http://schemas.openxmlformats.org/drawingml/2006/main");
  • Network accessline 640
    drawingsPart.WorksheetDrawing.AddNamespaceDeclaration(                 "a", "http://schemas.openxmlformats.org/drawingml/2006/main");             drawingsPart.WorksheetDrawing.Save();
  • Network accessline 641
    "a", "http://schemas.openxmlformats.org/drawingml/2006/main");

src/officecli/Handlers/Excel/ExcelHandler.View.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/ExcelHandler.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/PowerPointHandler.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 947
    StylePart = styleActualRid,                                     })                                 { Uri = "http://schemas.openxmlformats.org/drawingml/2006/diagram" }));
  • Network accessline 948
    })                                 { Uri = "http://schemas.openxmlformats.org/drawingml/2006/diagram" }));                         saSpTree.AppendChild(gf);
  • Network accessline 949
    { Uri = "http://schemas.openxmlformats.org/drawingml/2006/diagram" }));
  • Network accessline 1165
    const string m3dRelType = "http://schemas.microsoft.com/office/2017/06/relationships/model3d";
  • Network accessline 1901
    const string ControlRelType = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/control";
  • Network accessline 1902
    const string ActiveXCT = "application/vnd.ms-office.activeX+xml";                 const string BinRelType = "http://schemas.microsoft.com/office/2006/relationships/activeXControlBinary";                 const string BinCT = "application/vnd
  • Network accessline 1903
    const string BinRelType = "http://schemas.microsoft.com/office/2006/relationships/activeXControlBinary";
  • Network accessline 2241
    else if (host is PresentationPart ppHost && ppHost.Presentation != null)         {             const string RelNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";
  • Network accessline 2242
    {             const string RelNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";             var changed = false;
  • Network accessline 2243
    const string RelNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";
  • Network accessline 2756
    /// Custom binary ExtendedParts attached directly to the presentation part —     /// e.g. Google Slides' ppt/metadata (rel type     /// http://customschemas.google.com/relationships/presentationmetadata),
  • Network accessline 2757
    /// e.g. Google Slides' ppt/metadata (rel type     /// http://customschemas.google.com/relationships/presentationmetadata),     /// referenced by <c>&lt;go:slidesCustomData r:id="rIdN"&gt;</c> inside the
  • Network accessline 2758
    /// http://customschemas.google.com/relationships/presentationmetadata),
  • Network accessline 3385
    const string ControlRelType = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/control";
  • Network accessline 3386
    const string ImageRelType = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/image";
  • Network accessline 3448
    var ns = "http://schemas.openxmlformats.org/drawingml/2006/diagram";
  • Network accessline 3508
    // External hyperlinks on diagram nodes live as hyperlink rels.                     try { dataHlinks = ReadExternalHyperlinksOf(ddp); } catch { }                     const string dspNs = "http://schemas.microsoft.com/office/drawing/2008/dia
  • Network accessline 3509
    try { dataHlinks = ReadExternalHyperlinksOf(ddp); } catch { }                     const string dspNs = "http://schemas.microsoft.com/office/drawing/2008/diagram";                     var ext = ddp.DataModelRoot?.Descendants().FirstOrDefault
  • Network accessline 3510
    const string dspNs = "http://schemas.microsoft.com/office/drawing/2008/diagram";
  • Network accessline 3596
    var cnv = sib.Descendants().FirstOrDefault(e =>                     e.LocalName == "cNvPr"                     && e.NamespaceUri == "http://schemas.openxmlformats.org/presentationml/2006/main");
  • Network accessline 3597
    e.LocalName == "cNvPr"                     && e.NamespaceUri == "http://schemas.openxmlformats.org/presentationml/2006/main");                 var idAttr = cnv?.GetAttributes().FirstOrDefault(a => a.LocalName == "id");
  • Network accessline 3598
    && e.NamespaceUri == "http://schemas.openxmlformats.org/presentationml/2006/main");
  • Network accessline 4002
    try { slideDoc = System.Xml.Linq.XDocument.Parse(slideXml); }         catch { return result; }         System.Xml.Linq.XNamespace mcNs = "http://schemas.openxmlformats.org/markup-compatibility/2006";
  • Network accessline 4003
    catch { return result; }         System.Xml.Linq.XNamespace mcNs = "http://schemas.openxmlformats.org/markup-compatibility/2006";         System.Xml.Linq.XNamespace rNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships"
  • Network accessline 4004
    System.Xml.Linq.XNamespace mcNs = "http://schemas.openxmlformats.org/markup-compatibility/2006";
  • Network accessline 4005
    System.Xml.Linq.XNamespace rNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";
  • Network accessline 4006
    System.Xml.Linq.XNamespace am3dNs = "http://schemas.microsoft.com/office/drawing/2017/model3d";
  • Network accessline 4007
    System.Xml.Linq.XNamespace aNs = "http://schemas.openxmlformats.org/drawingml/2006/main";
  • Network accessline 4143
    try { slideDoc = System.Xml.Linq.XDocument.Parse(slideXml); }         catch { return result; }         System.Xml.Linq.XNamespace pNs = "http://schemas.openxmlformats.org/presentationml/2006/main";
  • Network accessline 4144
    catch { return result; }         System.Xml.Linq.XNamespace pNs = "http://schemas.openxmlformats.org/presentationml/2006/main";         System.Xml.Linq.XNamespace rNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";
  • Network accessline 4145
    System.Xml.Linq.XNamespace pNs = "http://schemas.openxmlformats.org/presentationml/2006/main";
  • Network accessline 4146
    System.Xml.Linq.XNamespace rNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";
  • Network accessline 4147
    System.Xml.Linq.XNamespace aNs = "http://schemas.openxmlformats.org/drawingml/2006/main";
  • Network accessline 4148
    const string oleUri = "http://schemas.openxmlformats.org/presentationml/2006/ole";
  • Network accessline 4491
    // Set-side path re-writes them as <a:lum>. Don't double-emit.             if (kid.LocalName is "lumOff" or "lumMod"                 && kid.NamespaceUri == "http://schemas.openxmlformats.org/drawingml/2006/main")
  • Network accessline 4492
    if (kid.LocalName is "lumOff" or "lumMod"                 && kid.NamespaceUri == "http://schemas.openxmlformats.org/drawingml/2006/main")                 continue;
  • Network accessline 4493
    && kid.NamespaceUri == "http://schemas.openxmlformats.org/drawingml/2006/main")
  • Network accessline 4547
    const string relNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";

src/officecli/Handlers/Pptx/PowerPointHandler.Add.Diagram.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Pptx/PowerPointHandler.Add.Media.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 571
    foreach (var kid in blipBC.ChildElements.ToList())                     {                         if (kid.NamespaceUri != "http://schemas.openxmlformats.org/drawingml/2006/main") continue;
  • Network accessline 572
    {                         if (kid.NamespaceUri != "http://schemas.openxmlformats.org/drawingml/2006/main") continue;                         if (kid is Drawing.LuminanceEffect existingLum)
  • Network accessline 573
    if (kid.NamespaceUri != "http://schemas.openxmlformats.org/drawingml/2006/main") continue;
  • Network accessline 954
    // p14:media extension (PowerPoint 2010+)                 var p14Media = new DocumentFormat.OpenXml.Office2010.PowerPoint.Media { Embed = mediaRelId };                 p14Media.AddNamespaceDeclaration("p14", "http://schemas.microsoft.com/of
  • Network accessline 956
    p14Media.AddNamespaceDeclaration("p14", "http://schemas.microsoft.com/office/powerpoint/2010/main");
  • Network accessline 1152
    var oleGraphicData = new Drawing.GraphicData(oleObj)         {             Uri = "http://schemas.openxmlformats.org/presentationml/2006/ole",
  • Network accessline 1153
    {             Uri = "http://schemas.openxmlformats.org/presentationml/2006/ole",         };
  • Network accessline 1154
    Uri = "http://schemas.openxmlformats.org/presentationml/2006/ole",

src/officecli/Handlers/Pptx/PowerPointHandler.Add.Misc.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 2003
    // Build mc:AlternateContent programmatically (same pattern as morph transition)                 var mcNs = "http://schemas.openxmlformats.org/markup-compatibility/2006";
  • Network accessline 2004
    var mcNs = "http://schemas.openxmlformats.org/markup-compatibility/2006";
  • Network accessline 2005
    var pNs = "http://schemas.openxmlformats.org/presentationml/2006/main";
  • Network accessline 2006
    var aNs = "http://schemas.openxmlformats.org/drawingml/2006/main";
  • Network accessline 2007
    var rNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";
  • Network accessline 2008
    var pslzNs = "http://schemas.microsoft.com/office/powerpoint/2016/slidezoom";
  • Network accessline 2009
    var p166Ns = "http://schemas.microsoft.com/office/powerpoint/2016/6/main";
  • Network accessline 2010
    var a16Ns = "http://schemas.microsoft.com/office/drawing/2014/main";

src/officecli/Handlers/Pptx/PowerPointHandler.Add.Model3D.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 13
    public partial class PowerPointHandler {     private const string Am3dNs = "http://schemas.microsoft.com/office/drawing/2017/model3d";
  • Network accessline 14
    {     private const string Am3dNs = "http://schemas.microsoft.com/office/drawing/2017/model3d";     private const string Model3dRelType = "http://schemas.microsoft.com/office/2017/06/relationships/model3d";
  • Network accessline 15
    private const string Am3dNs = "http://schemas.microsoft.com/office/drawing/2017/model3d";
  • Network accessline 16
    private const string Model3dRelType = "http://schemas.microsoft.com/office/2017/06/relationships/model3d";
  • Network accessline 75
    // Namespaces         var mcNs = "http://schemas.openxmlformats.org/markup-compatibility/2006";
  • Network accessline 76
    var mcNs = "http://schemas.openxmlformats.org/markup-compatibility/2006";
  • Network accessline 77
    var pNs = "http://schemas.openxmlformats.org/presentationml/2006/main";
  • Network accessline 78
    var aNs = "http://schemas.openxmlformats.org/drawingml/2006/main";
  • Network accessline 79
    var rNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";
  • Network accessline 80
    var a16Ns = "http://schemas.microsoft.com/office/drawing/2014/main";
  • Network accessline 233
    Dictionary<string, string> properties, GlbBoundingBox bounds)     {         var aNs = "http://schemas.openxmlformats.org/drawingml/2006/main";
  • Network accessline 234
    {         var aNs = "http://schemas.openxmlformats.org/drawingml/2006/main";         var rNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";
  • Network accessline 235
    var aNs = "http://schemas.openxmlformats.org/drawingml/2006/main";
  • Network accessline 236
    var rNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";

src/officecli/Handlers/Pptx/PowerPointHandler.Add.Shape.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Pptx/PowerPointHandler.Add.Slide.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Pptx/PowerPointHandler.Add.Table.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 233
    var graphic = new Drawing.Graphic(                     new Drawing.GraphicData(table) { Uri = "http://schemas.openxmlformats.org/drawingml/2006/table" }
  • Network accessline 234
    new Drawing.GraphicData(table) { Uri = "http://schemas.openxmlformats.org/drawingml/2006/table" }

src/officecli/Handlers/Pptx/PowerPointHandler.Add.Text.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 50
    // PPT equations are embedded as: a:p > a14:m > m:oMathPara > m:oMath                 var mathPara = new M.Paragraph(oMath);                 var a14mXml = $"<a14:m xmlns:a14=\"http://schemas.microsoft.com/office/drawing/2010/main\">{mathPar
  • Network accessline 52
    var a14mXml = $"<a14:m xmlns:a14=\"http://schemas.microsoft.com/office/drawing/2010/main\">{mathPara.OuterXml}</a14:m>";
  • Network accessline 82
    // Build mc:AlternateContent > mc:Choice(Requires="a14") > a14:m > m:oMathPara                 var a14mElement = new OpenXmlUnknownElement("a14", "m", "http://schemas.microsoft.com/office/drawing/2010/main");
  • Network accessline 83
    var a14mElement = new OpenXmlUnknownElement("a14", "m", "http://schemas.microsoft.com/office/drawing/2010/main");
  • Network accessline 107
    var eqSlide = GetSlide(eqSlidePart);                 if (eqSlide.LookupNamespace("a14") == null)                     eqSlide.AddNamespaceDeclaration("a14", "http://schemas.microsoft.com/office/drawing/2010/main");
  • Network accessline 108
    if (eqSlide.LookupNamespace("a14") == null)                     eqSlide.AddNamespaceDeclaration("a14", "http://schemas.microsoft.com/office/drawing/2010/main");                 if (eqSlide.LookupNamespace("mc") == null)
  • Network accessline 109
    eqSlide.AddNamespaceDeclaration("a14", "http://schemas.microsoft.com/office/drawing/2010/main");
  • Network accessline 110
    if (eqSlide.LookupNamespace("mc") == null)                     eqSlide.AddNamespaceDeclaration("mc", "http://schemas.openxmlformats.org/markup-compatibility/2006");                 var currentIgnorable = eqSlide.MCAttributes?.Ignorable?.Val
  • Network accessline 111
    eqSlide.AddNamespaceDeclaration("mc", "http://schemas.openxmlformats.org/markup-compatibility/2006");

src/officecli/Handlers/Pptx/PowerPointHandler.Add.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Pptx/PowerPointHandler.Align.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Pptx/PowerPointHandler.Animations.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 170
    if (gd == null) return false;         if (gd.Descendants<Drawing.Charts.ChartReference>().Any()) return true;         const string cxNs = "http://schemas.microsoft.com/office/drawing/2014/chartex";
  • Network accessline 171
    if (gd.Descendants<Drawing.Charts.ChartReference>().Any()) return true;         const string cxNs = "http://schemas.microsoft.com/office/drawing/2014/chartex";         return gd.ChildElements.Any(e => e.LocalName == "chart" && e.NamespaceUr
  • Network accessline 172
    const string cxNs = "http://schemas.microsoft.com/office/drawing/2014/chartex";
  • Network accessline 452
    if (_p15PrstTokens.TryGetValue(typeName, out var prstValue))         {             var p15Ns = "http://schemas.microsoft.com/office/powerpoint/2012/main";
  • Network accessline 453
    {             var p15Ns = "http://schemas.microsoft.com/office/powerpoint/2012/main";             var elem = new OpenXmlUnknownElement("p15", "prstTrans", p15Ns);
  • Network accessline 454
    var p15Ns = "http://schemas.microsoft.com/office/powerpoint/2012/main";
  • Network accessline 523
    "prism" => new DocumentFormat.OpenXml.Office2010.PowerPoint.PrismTransition(),             "cube" => new OpenXmlUnknownElement("p", "cube",                 "http://schemas.openxmlformats.org/presentationml/2006/main"),
  • Network accessline 524
    "cube" => new OpenXmlUnknownElement("p", "cube",                 "http://schemas.openxmlformats.org/presentationml/2006/main"),             "rotate" => new DocumentFormat.OpenXml.Office2010.PowerPoint.PrismTransition { IsContent = true },
  • Network accessline 525
    "http://schemas.openxmlformats.org/presentationml/2006/main"),
  • Network accessline 555
    var p159Ns = "http://schemas.microsoft.com/office/powerpoint/2015/09/main";
  • Network accessline 566
    if (isP14Transition)         {             var p14Ns = "http://schemas.microsoft.com/office/powerpoint/2010/main";
  • Network accessline 567
    {             var p14Ns = "http://schemas.microsoft.com/office/powerpoint/2010/main";             InsertTransitionWithMcWrapper(slide, transElem!, "p14", p14Ns, speed, durationMs);
  • Network accessline 568
    var p14Ns = "http://schemas.microsoft.com/office/powerpoint/2010/main";
  • Network accessline 591
    TransitionSpeedValues? speed, string? durationMs)     {         var mcNs = "http://schemas.openxmlformats.org/markup-compatibility/2006";
  • Network accessline 592
    {         var mcNs = "http://schemas.openxmlformats.org/markup-compatibility/2006";         var pNs = "http://schemas.openxmlformats.org/presentationml/2006/main";
  • Network accessline 593
    var mcNs = "http://schemas.openxmlformats.org/markup-compatibility/2006";
  • Network accessline 594
    var pNs = "http://schemas.openxmlformats.org/presentationml/2006/main";
  • Network accessline 604
    choiceTrans.SetAttribute(new OpenXmlAttribute("", "spd", null!, ((IEnumValue)speed.Value).Value));         if (durationMs != null)             choiceTrans.SetAttribute(new OpenXmlAttribute("p14", "dur", "http://schemas.microsoft.com/office/
  • Network accessline 605
    if (durationMs != null)             choiceTrans.SetAttribute(new OpenXmlAttribute("p14", "dur", "http://schemas.microsoft.com/office/powerpoint/2010/main", durationMs));         // Re-serialize the child element as unknown so SDK preserves 
  • Network accessline 606
    choiceTrans.SetAttribute(new OpenXmlAttribute("p14", "dur", "http://schemas.microsoft.com/office/powerpoint/2010/main", durationMs));
  • Network accessline 643
    if (nsPrefix != "p14")         {             try { slide.AddNamespaceDeclaration("p14", "http://schemas.microsoft.com/office/powerpoint/2010/main"); } catch { }
  • Network accessline 644
    {             try { slide.AddNamespaceDeclaration("p14", "http://schemas.microsoft.com/office/powerpoint/2010/main"); } catch { }         }
  • Network accessline 645
    try { slide.AddNamespaceDeclaration("p14", "http://schemas.microsoft.com/office/powerpoint/2010/main"); } catch { }

src/officecli/Handlers/Pptx/PowerPointHandler.Background.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 510
    // compatibility with files that already carry the invalid element).         var hfEl = slide.ChildElements.FirstOrDefault(c => c.LocalName == "hf"             && c.NamespaceUri == "http://schemas.openxmlformats.org/presentationml/2006/main
  • Network accessline 511
    var hfEl = slide.ChildElements.FirstOrDefault(c => c.LocalName == "hf"             && c.NamespaceUri == "http://schemas.openxmlformats.org/presentationml/2006/main");         static string? Bool(string v) => string.IsNullOrEmpty(v) ? null :
  • Network accessline 512
    && c.NamespaceUri == "http://schemas.openxmlformats.org/presentationml/2006/main");

src/officecli/Handlers/Pptx/PowerPointHandler.Chart.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 39
    new Drawing.GraphicData(chartRef)             {                 Uri = "http://schemas.openxmlformats.org/drawingml/2006/chart"
  • Network accessline 40
    {                 Uri = "http://schemas.openxmlformats.org/drawingml/2006/chart"             }
  • Network accessline 41
    Uri = "http://schemas.openxmlformats.org/drawingml/2006/chart"
  • Network accessline 70
    new Drawing.GraphicData(cxChartRef)             {                 Uri = "http://schemas.microsoft.com/office/drawing/2014/chartex"
  • Network accessline 71
    {                 Uri = "http://schemas.microsoft.com/office/drawing/2014/chartex"             }
  • Network accessline 72
    Uri = "http://schemas.microsoft.com/office/drawing/2014/chartex"
  • Network accessline 79
    private const string ChartExUri = "http://schemas.microsoft.com/office/drawing/2014/chartex";
  • Network accessline 91
    /// <summary>     /// R48: extract the wrapped <p:pic> from a graphicFrame whose     /// <a:graphicData uri="http://schemas.openxmlformats.org/drawingml/2006/picture">
  • Network accessline 92
    /// R48: extract the wrapped <p:pic> from a graphicFrame whose     /// <a:graphicData uri="http://schemas.openxmlformats.org/drawingml/2006/picture">     /// hosts a Picture element. Keynote->PPT and Aspose-style exporters emit
  • Network accessline 93
    /// <a:graphicData uri="http://schemas.openxmlformats.org/drawingml/2006/picture">
  • Network accessline 97
    /// frame is not picture-typed or carries no Picture descendant.     /// </summary>     private const string PictureUri = "http://schemas.openxmlformats.org/drawingml/2006/picture";
  • Network accessline 99
    private const string PictureUri = "http://schemas.openxmlformats.org/drawingml/2006/picture";
  • Network accessline 122
    {             var rId = child.GetAttributes().FirstOrDefault(a =>                 a.LocalName == "id" && a.NamespaceUri == "http://schemas.openxmlformats.org/officeDocument/2006/relationships");
  • Network accessline 123
    var rId = child.GetAttributes().FirstOrDefault(a =>                 a.LocalName == "id" && a.NamespaceUri == "http://schemas.openxmlformats.org/officeDocument/2006/relationships");             if (rId.Value != null) return rId.Value;
  • Network accessline 124
    a.LocalName == "id" && a.NamespaceUri == "http://schemas.openxmlformats.org/officeDocument/2006/relationships");

src/officecli/Handlers/Pptx/PowerPointHandler.Comments.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Possible obfuscationline 98
    && text[0] != '<U+200F>')
  • Possible obfuscationline 100
    text = "<U+200F>" + text;

src/officecli/Handlers/Pptx/PowerPointHandler.EffectTemplates.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 183
    // parse the fragment.         return "<p:childTnLst "             + "xmlns:p=\"http://schemas.openxmlformats.org/presentationml/2006/main\" "
  • Network accessline 184
    return "<p:childTnLst "             + "xmlns:p=\"http://schemas.openxmlformats.org/presentationml/2006/main\" "             + "xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\" "
  • Network accessline 185
    + "xmlns:p=\"http://schemas.openxmlformats.org/presentationml/2006/main\" "
  • Network accessline 186
    + "xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\" "
  • Network accessline 187
    + "xmlns:r=\"http://schemas.openxmlformats.org/officeDocument/2006/relationships\">"

src/officecli/Handlers/Pptx/PowerPointHandler.Effects.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 268
    ? value             : value.Replace("<a:fillOverlay",                 "<a:fillOverlay xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\"");
  • Network accessline 269
    : value.Replace("<a:fillOverlay",                 "<a:fillOverlay xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\"");         var overlay = new Drawing.FillOverlay();
  • Network accessline 270
    "<a:fillOverlay xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\"");

src/officecli/Handlers/Pptx/PowerPointHandler.Fill.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 332
    ? value                 : value.Replace("<a:gradFill",                     "<a:gradFill xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\"");
  • Network accessline 333
    : value.Replace("<a:gradFill",                     "<a:gradFill xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\"");             using var sr = new System.IO.StringReader(raw);
  • Network accessline 334
    "<a:gradFill xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\"");
  • Network accessline 930
    ? raw             : raw.Replace("<a:custDash",                 "<a:custDash xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\"");
  • Network accessline 931
    : raw.Replace("<a:custDash",                 "<a:custDash xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\"");         var custDash = new Drawing.CustomDash();
  • Network accessline 932
    "<a:custDash xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\"");

src/officecli/Handlers/Pptx/PowerPointHandler.Helpers.FindReplace.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Pptx/PowerPointHandler.Helpers.Geometry.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Pptx/PowerPointHandler.Helpers.Ole.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Pptx/PowerPointHandler.Helpers.Path.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Pptx/PowerPointHandler.Helpers.RunFormat.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 623
    // Wrap in a throwaway pPr that declares the a: namespace so each child             // fragment parses with its prefix bound; then lift the parsed children.             const string aNs = "http://schemas.openxmlformats.org/drawingml/2006/ma
  • Network accessline 624
    // fragment parses with its prefix bound; then lift the parsed children.             const string aNs = "http://schemas.openxmlformats.org/drawingml/2006/main";             var wrapped = $"<a:pPr xmlns:a=\"{aNs}\">{rawXml}</a:pPr>";
  • Network accessline 625
    const string aNs = "http://schemas.openxmlformats.org/drawingml/2006/main";
  • Network accessline 686
    throw new ArgumentException(                 $"Invalid 'defRPrRaw' value: '{rawXml}'. Expected verbatim <a:defRPr .../> XML as emitted by Get.");         const string aNs = "http://schemas.openxmlformats.org/drawingml/2006/main";
  • Network accessline 687
    $"Invalid 'defRPrRaw' value: '{rawXml}'. Expected verbatim <a:defRPr .../> XML as emitted by Get.");         const string aNs = "http://schemas.openxmlformats.org/drawingml/2006/main";         var wrapped = $"<a:pPr xmlns:a=\"{aNs}\">{rawXm
  • Network accessline 688
    const string aNs = "http://schemas.openxmlformats.org/drawingml/2006/main";

src/officecli/Handlers/Pptx/PowerPointHandler.Helpers.ShapeId.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Pptx/PowerPointHandler.Helpers.Table.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Pptx/PowerPointHandler.Helpers.Text.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 33
    // xml:space only via SetAttribute (no typed property).             t.SetAttribute(new OpenXmlAttribute(                 "xml", "space", "http://www.w3.org/XML/1998/namespace", "preserve"));
  • Network accessline 34
    t.SetAttribute(new OpenXmlAttribute(                 "xml", "space", "http://www.w3.org/XML/1998/namespace", "preserve"));         }
  • Network accessline 35
    "xml", "space", "http://www.w3.org/XML/1998/namespace", "preserve"));
  • Network accessline 129
    else if (child is OpenXmlUnknownElement unk                          && unk.LocalName == "tab"                          && unk.NamespaceUri == "http://schemas.openxmlformats.org/drawingml/2006/main")
  • Network accessline 130
    && unk.LocalName == "tab"                          && unk.NamespaceUri == "http://schemas.openxmlformats.org/drawingml/2006/main")                 {
  • Network accessline 131
    && unk.NamespaceUri == "http://schemas.openxmlformats.org/drawingml/2006/main")
  • Network accessline 182
    private static bool HasMathContent(OpenXmlElement element)     {         if (element.LocalName == "m" && element.NamespaceUri == "http://schemas.microsoft.com/office/drawing/2010/main")
  • Network accessline 183
    {         if (element.LocalName == "m" && element.NamespaceUri == "http://schemas.microsoft.com/office/drawing/2010/main")             return true;
  • Network accessline 184
    if (element.LocalName == "m" && element.NamespaceUri == "http://schemas.microsoft.com/office/drawing/2010/main")
  • Network accessline 198
    private static OpenXmlElement GetMathElement(OpenXmlElement element)     {         if (element.LocalName == "m" && element.NamespaceUri == "http://schemas.microsoft.com/office/drawing/2010/main")
  • Network accessline 199
    {         if (element.LocalName == "m" && element.NamespaceUri == "http://schemas.microsoft.com/office/drawing/2010/main")         {
  • Network accessline 200
    if (element.LocalName == "m" && element.NamespaceUri == "http://schemas.microsoft.com/office/drawing/2010/main")
  • Network accessline 218
    {                 var a14m = choice.ChildElements.FirstOrDefault(e =>                     e.LocalName == "m" && e.NamespaceUri == "http://schemas.microsoft.com/office/drawing/2010/main");
  • Network accessline 219
    var a14m = choice.ChildElements.FirstOrDefault(e =>                     e.LocalName == "m" && e.NamespaceUri == "http://schemas.microsoft.com/office/drawing/2010/main");                 if (a14m != null)
  • Network accessline 220
    e.LocalName == "m" && e.NamespaceUri == "http://schemas.microsoft.com/office/drawing/2010/main");
  • Network accessline 254
    var oMathParaXml = xml[startIdx..(endIdx + endTag.Length)];                         if (!oMathParaXml.Contains("xmlns:m="))                             oMathParaXml = oMathParaXml.Replace("<m:oMathPara", "<m:oMathPara xmlns:m=\"http://schem
  • Network accessline 255
    if (!oMathParaXml.Contains("xmlns:m="))                             oMathParaXml = oMathParaXml.Replace("<m:oMathPara", "<m:oMathPara xmlns:m=\"http://schemas.openxmlformats.org/officeDocument/2006/math\"");                         var wrap
  • Network accessline 256
    oMathParaXml = oMathParaXml.Replace("<m:oMathPara", "<m:oMathPara xmlns:m=\"http://schemas.openxmlformats.org/officeDocument/2006/math\"");
  • Network accessline 257
    var wrapper = new OpenXmlUnknownElement("m", "oMathPara", "http://schemas.openxmlformats.org/officeDocument/2006/math");
  • Network accessline 280
    var oMathXml = xml[bareStart..(bareEnd + bareEndTag.Length)];                         if (!oMathXml.Contains("xmlns:m="))                             oMathXml = oMathXml.Replace("<m:oMath", "<m:oMath xmlns:m=\"http://schemas.openxmlformats.
  • Network accessline 281
    if (!oMathXml.Contains("xmlns:m="))                             oMathXml = oMathXml.Replace("<m:oMath", "<m:oMath xmlns:m=\"http://schemas.openxmlformats.org/officeDocument/2006/math\"");                         var bareWrapper = new OpenXm
  • Network accessline 282
    oMathXml = oMathXml.Replace("<m:oMath", "<m:oMath xmlns:m=\"http://schemas.openxmlformats.org/officeDocument/2006/math\"");
  • Network accessline 283
    var bareWrapper = new OpenXmlUnknownElement("m", "oMath", "http://schemas.openxmlformats.org/officeDocument/2006/math");

src/officecli/Handlers/Pptx/PowerPointHandler.Helpers.Transition.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Pptx/PowerPointHandler.Helpers.Zoom3D.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Pptx/PowerPointHandler.Helpers.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Pptx/PowerPointHandler.HtmlPreview.Charts.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Pptx/PowerPointHandler.HtmlPreview.Css.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Pptx/PowerPointHandler.HtmlPreview.Shapes.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 1439
    foreach (var kid in picBlipForFx.ChildElements)             {                 if (kid.NamespaceUri != "http://schemas.openxmlformats.org/drawingml/2006/main") continue;
  • Network accessline 1440
    {                 if (kid.NamespaceUri != "http://schemas.openxmlformats.org/drawingml/2006/main") continue;                 if (kid is Drawing.LuminanceEffect lumElem)
  • Network accessline 1441
    if (kid.NamespaceUri != "http://schemas.openxmlformats.org/drawingml/2006/main") continue;
  • Network accessline 2717
    var rNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";
  • Network accessline 2769
    if (fbBlip != null)         {             var fbRNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";
  • Network accessline 2770
    {             var fbRNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";             var fbEmbedId = fbBlip.GetAttribute("embed", fbRNs).Value;
  • Network accessline 2771
    var fbRNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";
  • Network accessline 2914
    if (fbBlip != null)         {             var rNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";
  • Network accessline 2915
    {             var rNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";             var embedId = fbBlip.GetAttribute("embed", rNs).Value;
  • Network accessline 2916
    var rNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";
  • Network accessline 2986
    // drawing/spTree roots as p:cSld/p:spTree. dsp shares the same                 // child element local-names + Drawing (a:) children as p:.                 const string dspNs = "http://schemas.microsoft.com/office/drawing/2008/diagram";
  • Network accessline 2987
    // child element local-names + Drawing (a:) children as p:.                 const string dspNs = "http://schemas.microsoft.com/office/drawing/2008/diagram";                 const string pNs = "http://schemas.openxmlformats.org/presentationm
  • Network accessline 2988
    const string dspNs = "http://schemas.microsoft.com/office/drawing/2008/diagram";
  • Network accessline 2989
    const string pNs = "http://schemas.openxmlformats.org/presentationml/2006/main";
  • Network accessline 3005
    var sldXml =                         $"<p:sld xmlns:p=\"{pNs}\" " +                         "xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\" " +
  • Network accessline 3006
    $"<p:sld xmlns:p=\"{pNs}\" " +                         "xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\" " +                         "xmlns:r=\"http://schemas.openxmlformats.org/officeDocument/2006/relationships\">" +
  • Network accessline 3007
    "xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\" " +
  • Network accessline 3008
    "xmlns:r=\"http://schemas.openxmlformats.org/officeDocument/2006/relationships\">" +
  • Network accessline 3056
    try         {             const string dgmNs = "http://schemas.openxmlformats.org/drawingml/2006/diagram";
  • Network accessline 3057
    {             const string dgmNs = "http://schemas.openxmlformats.org/drawingml/2006/diagram";             const string dspNs = "http://schemas.microsoft.com/office/drawing/2008/diagram";
  • Network accessline 3058
    const string dgmNs = "http://schemas.openxmlformats.org/drawingml/2006/diagram";
  • Network accessline 3059
    const string dspNs = "http://schemas.microsoft.com/office/drawing/2008/diagram";
  • Network accessline 3127
    private static string? TryExtractOlePreviewDataUri(GraphicFrame gf, OpenXmlPart slidePart)     {         const string rNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";
  • Network accessline 3128
    {         const string rNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";         foreach (var blip in gf.Descendants().Where(d => d.LocalName == "blip"))
  • Network accessline 3129
    const string rNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";

src/officecli/Handlers/Pptx/PowerPointHandler.HtmlPreview.Tables.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Pptx/PowerPointHandler.HtmlPreview.Text.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Pptx/PowerPointHandler.HtmlPreview.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 272
    katex.render(el.dataset.formula, el, { throwOnError: false, displayMode: el.dataset.display === '1' });                 el.classList.add('katex-rendered');             } catch(e) { el.textContent = el.dataset.formula + ' (Error: ' + e.messa
  • Network accessline 273
    el.classList.add('katex-rendered');             } catch(e) { el.textContent = el.dataset.formula + ' (Error: ' + e.message + '. See https://katex.org/docs/supported.html for supported syntax.)'; }         });
  • Network accessline 274
    } catch(e) { el.textContent = el.dataset.formula + ' (Error: ' + e.message + '. See https://katex.org/docs/supported.html for supported syntax.)'; }

src/officecli/Handlers/Pptx/PowerPointHandler.Hyperlinks.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 27
    /// Resolve a user-supplied link string into a hyperlink target. Returns null to mean "remove".     /// Supports:     ///   - Absolute URI (https://, mailto:, etc.)        → external relationship
  • Network accessline 28
    /// Supports:     ///   - Absolute URI (https://, mailto:, etc.)        → external relationship     ///   - slide[N]                                      → internal slide jump (ppaction://hlinksldjump)
  • Network accessline 29
    ///   - Absolute URI (https://, mailto:, etc.)        → external relationship
  • Network accessline 104
    && !Uri.TryCreate(url, UriKind.Relative, out uri))             throw new ArgumentException(                 $"Invalid hyperlink URL '{url}'. Expected an absolute URI (e.g. 'https://example.com'), " +
  • Network accessline 105
    throw new ArgumentException(                 $"Invalid hyperlink URL '{url}'. Expected an absolute URI (e.g. 'https://example.com'), " +                 $"a relative file target, 'slide[N]', or a named action (firstslide/lastslide/nextslide
  • Network accessline 106
    $"Invalid hyperlink URL '{url}'. Expected an absolute URI (e.g. 'https://example.com'), " +
  • Network accessline 163
    if (!properties.TryGetValue("link", out var url) && !properties.TryGetValue("url", out url))             throw new ArgumentException(                 "hyperlink requires --prop link=<url>. Example: --prop link=https://example.com");
  • Network accessline 164
    throw new ArgumentException(                 "hyperlink requires --prop link=<url>. Example: --prop link=https://example.com");         var tooltip = properties.GetValueOrDefault("tooltip");
  • Network accessline 165
    "hyperlink requires --prop link=<url>. Example: --prop link=https://example.com");
  • Network accessline 355
    // Prefer Uri.OriginalString over Uri.ToString(): ToString() normalises             // path-empty URIs by injecting a "/" before the query (so             // https://example.com round-trips as https://example.com/, and
  • Network accessline 356
    // path-empty URIs by injecting a "/" before the query (so             // https://example.com round-trips as https://example.com/, and             // ppaction://hlinkshowjump?jump=firstslide as
  • Network accessline 357
    // https://example.com round-trips as https://example.com/, and

src/officecli/Handlers/Pptx/PowerPointHandler.ModernComments.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 25
    public partial class PowerPointHandler {     private const string ModernCommentNs = "http://schemas.microsoft.com/office/powerpoint/2018/8/main";
  • Network accessline 27
    private const string ModernCommentNs = "http://schemas.microsoft.com/office/powerpoint/2018/8/main";

src/officecli/Handlers/Pptx/PowerPointHandler.Mutations.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 638
    var m3dAc = model3dElements[elementIdx - 1];             // Clean up model part and image parts             var m3dRNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";
  • Network accessline 639
    // Clean up model part and image parts             var m3dRNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";             foreach (var el in m3dAc.Descendants().Where(d => d.LocalName == "blip" || d.LocalName == "mo
  • Network accessline 640
    var m3dRNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";
  • Network accessline 659
    if (zmBlip != null)             {                 var rNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";
  • Network accessline 660
    {                 var rNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";                 var embedAttr = zmBlip.GetAttribute("embed", rNs);
  • Network accessline 661
    var rNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";
  • Network accessline 919
    if (srcSlidePart != tgtSlidePart)         {             var rNsUri = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";
  • Network accessline 920
    {             var rNsUri = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";             foreach (var el in srcElement.Descendants().Prepend(srcElement))
  • Network accessline 921
    var rNsUri = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";
  • Network accessline 2146
    private static void RemapRelationshipIds(OpenXmlElement root, Dictionary<string, string> rIdMap)     {         var rNsUri = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";
  • Network accessline 2148
    var rNsUri = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";
  • Network accessline 2209
    private static void CopyRelationships(OpenXmlElement element, SlidePart sourcePart, SlidePart targetPart)     {         var rNsUri = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";
  • Network accessline 2210
    {         var rNsUri = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";         var allElements = element.Descendants().Prepend(element);
  • Network accessline 2211
    var rNsUri = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";

src/officecli/Handlers/Pptx/PowerPointHandler.NodeBuilder.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 328
    // bt-4: SmartArt sits inside a <p:graphicFrame> whose <a:graphicData uri>     // is "http://schemas.openxmlformats.org/drawingml/2006/diagram" and whose
  • Network accessline 329
    // is "http://schemas.openxmlformats.org/drawingml/2006/diagram" and whose
  • Network accessline 332
    // matching how GetSmartArtsOnSlide probes).     private const string SmartArtGraphicDataUri =         "http://schemas.openxmlformats.org/drawingml/2006/diagram";
  • Network accessline 334
    "http://schemas.openxmlformats.org/drawingml/2006/diagram";
  • Network accessline 339
    // trackedChange) that confuses the SDK's tbl-subtree typing.     private const string TableGraphicDataUri =         "http://schemas.openxmlformats.org/drawingml/2006/table";
  • Network accessline 341
    "http://schemas.openxmlformats.org/drawingml/2006/table";
  • Network accessline 871
    var isEquation = !isTitle && shape.TextBody != null             && shape.TextBody.Descendants().Any(e => e.LocalName == "oMath" || e.LocalName == "oMathPara"                 || (e.LocalName == "m" && e.NamespaceUri == "http://schemas.micros
  • Network accessline 873
    || (e.LocalName == "m" && e.NamespaceUri == "http://schemas.microsoft.com/office/drawing/2010/main"));
  • Network accessline 2922
    foreach (var kid in picBlip.ChildElements)             {                 if (kid.NamespaceUri != "http://schemas.openxmlformats.org/drawingml/2006/main") continue;
  • Network accessline 2923
    {                 if (kid.NamespaceUri != "http://schemas.openxmlformats.org/drawingml/2006/main") continue;                 if (kid is Drawing.LuminanceEffect lumElem)
  • Network accessline 2924
    if (kid.NamespaceUri != "http://schemas.openxmlformats.org/drawingml/2006/main") continue;

src/officecli/Handlers/Pptx/PowerPointHandler.Notes.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 338
    return "<p:notesMaster xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\" "
  • Network accessline 339
    + "xmlns:r=\"http://schemas.openxmlformats.org/officeDocument/2006/relationships\" "
  • Network accessline 340
    + "xmlns:p=\"http://schemas.openxmlformats.org/presentationml/2006/main\">"

src/officecli/Handlers/Pptx/PowerPointHandler.PresetAdjustGuides.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Pptx/PowerPointHandler.Query.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Pptx/PowerPointHandler.Resolve.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 105
    if (graphicData != null)         {             const string cxNs = "http://schemas.microsoft.com/office/drawing/2014/chartex";
  • Network accessline 106
    {             const string cxNs = "http://schemas.microsoft.com/office/drawing/2014/chartex";             var cxChartRef = graphicData.ChildElements
  • Network accessline 107
    const string cxNs = "http://schemas.microsoft.com/office/drawing/2014/chartex";
  • Network accessline 111
    {                 // The r:id attribute lives in the relationships namespace.                 const string rNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";
  • Network accessline 112
    // The r:id attribute lives in the relationships namespace.                 const string rNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";                 var relIdAttr = cxChartRef.GetAttributes()
  • Network accessline 113
    const string rNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";

src/officecli/Handlers/Pptx/PowerPointHandler.Selector.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Pptx/PowerPointHandler.Set.Chart.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Pptx/PowerPointHandler.Set.Media.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 456
    foreach (var kid in blipBC.ChildElements.ToList())                     {                         if (kid.NamespaceUri != "http://schemas.openxmlformats.org/drawingml/2006/main") continue;
  • Network accessline 457
    {                         if (kid.NamespaceUri != "http://schemas.openxmlformats.org/drawingml/2006/main") continue;                         if (kid is Drawing.LuminanceEffect existingLum)
  • Network accessline 458
    if (kid.NamespaceUri != "http://schemas.openxmlformats.org/drawingml/2006/main") continue;
  • Network accessline 583
    if (hlinkClick != null)                     {                         var rNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";
  • Network accessline 584
    {                         var rNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";                         var targetSlidePart = zmSlideParts[targetNum - 1];
  • Network accessline 585
    var rNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";
  • Network accessline 636
    if (key.ToLowerInvariant() is "width" or "height")                     {                         var p166Ns = "http://schemas.microsoft.com/office/powerpoint/2016/6/main";
  • Network accessline 637
    {                         var p166Ns = "http://schemas.microsoft.com/office/powerpoint/2016/6/main";                         var zmSpPr = zmPr?.ChildElements.FirstOrDefault(e => e.LocalName == "spPr" && e.NamespaceUri == p166Ns);
  • Network accessline 638
    var p166Ns = "http://schemas.microsoft.com/office/powerpoint/2016/6/main";
  • Network accessline 667
    newImagePart.FeedData(zmImgStream);                     var newImgRelId = zmSlidePart.GetIdOfPart(newImagePart);                     var rNs2 = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";
  • Network accessline 668
    var newImgRelId = zmSlidePart.GetIdOfPart(newImagePart);                     var rNs2 = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";                     // Update blip in zmPr > blipFill
  • Network accessline 669
    var rNs2 = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";

src/officecli/Handlers/Pptx/PowerPointHandler.Set.Presentation.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Pptx/PowerPointHandler.Set.Shape.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 1933
    if (shapeHl == null && runHls.Count == 0)                     throw new ArgumentException(                         "tooltip requires an existing hyperlink — set 'link' in the same call (e.g. --prop link=https://example.com --prop tooltip=…)
  • Network accessline 1934
    throw new ArgumentException(                         "tooltip requires an existing hyperlink — set 'link' in the same call (e.g. --prop link=https://example.com --prop tooltip=…) " +                         "or apply 'link' first, then upda
  • Network accessline 1935
    "tooltip requires an existing hyperlink — set 'link' in the same call (e.g. --prop link=https://example.com --prop tooltip=…) " +

src/officecli/Handlers/Pptx/PowerPointHandler.Set.Slide.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Pptx/PowerPointHandler.Set.Table.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Pptx/PowerPointHandler.Set.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Pptx/PowerPointHandler.ShapeProperties.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 1845
    ? value                                 : value.Replace("<a:outerShdw",                                     "<a:outerShdw xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\"");
  • Network accessline 1846
    : value.Replace("<a:outerShdw",                                     "<a:outerShdw xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\"");                             var shadow = new Drawing.OuterShadow();
  • Network accessline 1847
    "<a:outerShdw xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\"");
  • Network accessline 1873
    var inner = subtreeXml.Contains("xmlns:a=")                                         ? subtreeXml                                         : "<wrap xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\">"
  • Network accessline 1874
    ? subtreeXml                                         : "<wrap xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\">"                                           + subtreeXml + "</wrap>";
  • Network accessline 1875
    : "<wrap xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\">"
  • Network accessline 1912
    ? value                                 : value.Replace("<a:effectDag",                                     "<a:effectDag xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\"");
  • Network accessline 1913
    : value.Replace("<a:effectDag",                                     "<a:effectDag xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\"");                             var dag = new Drawing.EffectDag();
  • Network accessline 1914
    "<a:effectDag xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\"");
  • Network accessline 1978
    ? value                                 : value.Replace("<a:effectLst",                                     "<a:effectLst xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\"");
  • Network accessline 1979
    : value.Replace("<a:effectLst",                                     "<a:effectLst xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\"");                             var freshList = new Drawing.EffectList();
  • Network accessline 1980
    "<a:effectLst xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\"");
  • Network accessline 2108
    ? value                                 : value.Replace("<a:innerShdw",                                     "<a:innerShdw xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\"");
  • Network accessline 2109
    : value.Replace("<a:innerShdw",                                     "<a:innerShdw xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\"");                             var shadow = new Drawing.InnerShadow();
  • Network accessline 2110
    "<a:innerShdw xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\"");
  • Network accessline 2178
    ? value                                 : value.Replace("<a:reflection",                                     "<a:reflection xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\"");
  • Network accessline 2179
    : value.Replace("<a:reflection",                                     "<a:reflection xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\"");                             using var sr = new System.IO.StringReader(raw);
  • Network accessline 2180
    "<a:reflection xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\"");
  • Network accessline 2409
    choice.RemoveAllChildren();                             choice.Requires = "a14";                             var a14m = new OpenXmlUnknownElement("a14", "m", "http://schemas.microsoft.com/office/drawing/2010/main");
  • Network accessline 2410
    choice.Requires = "a14";                             var a14m = new OpenXmlUnknownElement("a14", "m", "http://schemas.microsoft.com/office/drawing/2010/main");                             a14m.AppendChild(mathPara.CloneNode(true));
  • Network accessline 2411
    var a14m = new OpenXmlUnknownElement("a14", "m", "http://schemas.microsoft.com/office/drawing/2010/main");
  • Network accessline 2427
    {                         // No existing equation — build full structure                         var a14m = new OpenXmlUnknownElement("a14", "m", "http://schemas.microsoft.com/office/drawing/2010/main");
  • Network accessline 2428
    // No existing equation — build full structure                         var a14m = new OpenXmlUnknownElement("a14", "m", "http://schemas.microsoft.com/office/drawing/2010/main");                         a14m.AppendChild(mathPara.CloneNode(tr
  • Network accessline 2429
    var a14m = new OpenXmlUnknownElement("a14", "m", "http://schemas.microsoft.com/office/drawing/2010/main");

src/officecli/Handlers/Pptx/PowerPointHandler.StyleList.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Pptx/PowerPointHandler.SvgPreview.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 53
    sb.AppendLine($"<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\"");
  • Network accessline 1275
    sb.Append($"<foreignObject x=\"{lIns:0.##}\" y=\"{tIns:0.##}\" width=\"{textW:0.##}\" height=\"{textH:0.##}\">");         sb.Append($"<div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"width:100%;height:100%;overflow:hidden;display:flex;fl
  • Network accessline 1276
    sb.Append($"<div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"width:100%;height:100%;overflow:hidden;display:flex;flex-direction:column;justify-content:{justifyContent};line-height:1\">");
  • Network accessline 2026
    {             var sb = new StringBuilder();             sb.Append("<math xmlns=\"http://www.w3.org/1998/Math/MathML\" display=\"block\">");
  • Network accessline 2027
    var sb = new StringBuilder();             sb.Append("<math xmlns=\"http://www.w3.org/1998/Math/MathML\" display=\"block\">");             ConvertOmmlNode(sb, oMath);
  • Network accessline 2028
    sb.Append("<math xmlns=\"http://www.w3.org/1998/Math/MathML\" display=\"block\">");

src/officecli/Handlers/Pptx/PowerPointHandler.Theme.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Pptx/PowerPointHandler.View.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 605
    using var rs = relsPart.GetStream(System.IO.FileMode.Open, System.IO.FileAccess.Read);                     var relsDoc = System.Xml.Linq.XDocument.Load(rs);                     System.Xml.Linq.XNamespace relsNs2006 = "http://schemas.openxml
  • Network accessline 606
    var relsDoc = System.Xml.Linq.XDocument.Load(rs);                     System.Xml.Linq.XNamespace relsNs2006 = "http://schemas.openxmlformats.org/package/2006/relationships";                     foreach (var relEl in relsDoc.Descendants(rels
  • Network accessline 607
    System.Xml.Linq.XNamespace relsNs2006 = "http://schemas.openxmlformats.org/package/2006/relationships";
  • Network accessline 662
    const string relNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";

src/officecli/Handlers/Pptx/PptxBatchEmitter.AuxParts.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Pptx/PptxBatchEmitter.Charts.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 519
    // xmlns:a on each child element).     private const string NoFillReplacement =         "<a:noFill xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\" />";
  • Network accessline 521
    "<a:noFill xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\" />";

src/officecli/Handlers/Pptx/PptxBatchEmitter.Filters.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Pptx/PptxBatchEmitter.Media.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 474
    {                         ["rid"] = o.OleRelId,                         ["rel-type"] = o.LinkedRelType ?? "http://schemas.openxmlformats.org/officeDocument/2006/relationships/oleObject",
  • Network accessline 475
    ["rid"] = o.OleRelId,                         ["rel-type"] = o.LinkedRelType ?? "http://schemas.openxmlformats.org/officeDocument/2006/relationships/oleObject",                         ["target"] = o.LinkedTarget,
  • Network accessline 476
    ["rel-type"] = o.LinkedRelType ?? "http://schemas.openxmlformats.org/officeDocument/2006/relationships/oleObject",
  • Dangerous shell operationline 645
    foreach (System.Text.RegularExpressions.Match rm in
  • Dangerous shell operationline 662
    foreach (System.Text.RegularExpressions.Match rm in
  • Dangerous shell operationline 690
    foreach (System.Text.RegularExpressions.Match rm in

src/officecli/Handlers/Pptx/PptxBatchEmitter.Notes.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Pptx/PptxBatchEmitter.Resources.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 67
    if (doc.Root == null) return xml;             var pNs = System.Xml.Linq.XNamespace.Get(                 "http://schemas.openxmlformats.org/presentationml/2006/main");
  • Network accessline 68
    var pNs = System.Xml.Linq.XNamespace.Get(                 "http://schemas.openxmlformats.org/presentationml/2006/main");             foreach (var el in doc.Root.DescendantsAndSelf(pNs + "custDataLst").ToList())
  • Network accessline 69
    "http://schemas.openxmlformats.org/presentationml/2006/main");
  • Network accessline 537
    var pNs = System.Xml.Linq.XNamespace.Get(             "http://schemas.openxmlformats.org/presentationml/2006/main");
  • Network accessline 538
    "http://schemas.openxmlformats.org/presentationml/2006/main");

src/officecli/Handlers/Pptx/PptxBatchEmitter.Shape.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Pptx/PptxBatchEmitter.Table.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Pptx/PptxBatchEmitter.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 265
    // Relationship / content types for the presentation's tableStyles part.     private const string TableStylesRelType =         "http://schemas.openxmlformats.org/officeDocument/2006/relationships/tableStyles";
  • Network accessline 266
    private const string TableStylesRelType =         "http://schemas.openxmlformats.org/officeDocument/2006/relationships/tableStyles";     private const string TableStylesContentType =
  • Network accessline 267
    "http://schemas.openxmlformats.org/officeDocument/2006/relationships/tableStyles";
  • Network accessline 1432
    var ambient = new (string Prefix, System.Xml.Linq.XNamespace Ns)[]             {                 ("p",  "http://schemas.openxmlformats.org/presentationml/2006/main"),
  • Network accessline 1433
    {                 ("p",  "http://schemas.openxmlformats.org/presentationml/2006/main"),                 ("a",  "http://schemas.openxmlformats.org/drawingml/2006/main"),
  • Network accessline 1434
    ("p",  "http://schemas.openxmlformats.org/presentationml/2006/main"),
  • Network accessline 1435
    ("a",  "http://schemas.openxmlformats.org/drawingml/2006/main"),
  • Network accessline 1436
    ("r",  "http://schemas.openxmlformats.org/officeDocument/2006/relationships"),
  • Network accessline 1437
    ("mc", "http://schemas.openxmlformats.org/markup-compatibility/2006"),
  • Network accessline 1508
    // weight inherited from the parent and should be stripped to keep             // the slice byte-stable across rounds.             var mcNs = System.Xml.Linq.XNamespace.Get("http://schemas.openxmlformats.org/markup-compatibility/2006");
  • Network accessline 1509
    // the slice byte-stable across rounds.             var mcNs = System.Xml.Linq.XNamespace.Get("http://schemas.openxmlformats.org/markup-compatibility/2006");             var usedPrefixes = new HashSet<string>(StringComparer.Ordinal);
  • Network accessline 1510
    var mcNs = System.Xml.Linq.XNamespace.Get("http://schemas.openxmlformats.org/markup-compatibility/2006");
  • Network accessline 1583
    private static readonly (string Prefix, string Uri)[] SliceXmlnsBindings =     {         ("p",  "http://schemas.openxmlformats.org/presentationml/2006/main"),
  • Network accessline 1584
    {         ("p",  "http://schemas.openxmlformats.org/presentationml/2006/main"),         ("a",  "http://schemas.openxmlformats.org/drawingml/2006/main"),
  • Network accessline 1585
    ("p",  "http://schemas.openxmlformats.org/presentationml/2006/main"),
  • Network accessline 1586
    ("a",  "http://schemas.openxmlformats.org/drawingml/2006/main"),
  • Network accessline 1587
    ("r",  "http://schemas.openxmlformats.org/officeDocument/2006/relationships"),
  • Network accessline 1588
    ("mc", "http://schemas.openxmlformats.org/markup-compatibility/2006"),
  • Network accessline 1589
    ("p14",  "http://schemas.microsoft.com/office/powerpoint/2010/main"),
  • Network accessline 1590
    ("p15",  "http://schemas.microsoft.com/office/powerpoint/2012/main"),
  • Network accessline 1591
    ("p16",  "http://schemas.microsoft.com/office/powerpoint/2015/main"),
  • Network accessline 1592
    ("p159", "http://schemas.microsoft.com/office/powerpoint/2015/09/main"),
  • Network accessline 1593
    ("p188", "http://schemas.microsoft.com/office/powerpoint/2018/8/main"),
  • Network accessline 1594
    ("a14",  "http://schemas.microsoft.com/office/drawing/2010/main"),
  • Network accessline 1595
    ("a16",  "http://schemas.microsoft.com/office/drawing/2014/main"),
  • Network accessline 1596
    ("am3d", "http://schemas.microsoft.com/office/drawing/2017/model3d"),
  • Network accessline 1633
    private static string? PruneDanglingTimingTargets(string timingXml, HashSet<uint> emittedIds)     {         System.Xml.Linq.XNamespace p = "http://schemas.openxmlformats.org/presentationml/2006/main";
  • Network accessline 1634
    {         System.Xml.Linq.XNamespace p = "http://schemas.openxmlformats.org/presentationml/2006/main";         System.Xml.Linq.XDocument doc;
  • Network accessline 1635
    System.Xml.Linq.XNamespace p = "http://schemas.openxmlformats.org/presentationml/2006/main";
  • Network accessline 1704
    var ambientUris = new (string Prefix, string Uri)[]         {             ("p",  "http://schemas.openxmlformats.org/presentationml/2006/main"),
  • Network accessline 1705
    {             ("p",  "http://schemas.openxmlformats.org/presentationml/2006/main"),             ("a",  "http://schemas.openxmlformats.org/drawingml/2006/main"),
  • Network accessline 1706
    ("p",  "http://schemas.openxmlformats.org/presentationml/2006/main"),
  • Network accessline 1707
    ("a",  "http://schemas.openxmlformats.org/drawingml/2006/main"),
  • Network accessline 1708
    ("r",  "http://schemas.openxmlformats.org/officeDocument/2006/relationships"),
  • Network accessline 1709
    ("mc", "http://schemas.openxmlformats.org/markup-compatibility/2006"),
  • Network accessline 1738
    var ambient = new Dictionary<string, string>             {                 ["p"]  = "http://schemas.openxmlformats.org/presentationml/2006/main",
  • Network accessline 1739
    {                 ["p"]  = "http://schemas.openxmlformats.org/presentationml/2006/main",                 ["a"]  = "http://schemas.openxmlformats.org/drawingml/2006/main",
  • Network accessline 1740
    ["p"]  = "http://schemas.openxmlformats.org/presentationml/2006/main",
  • Network accessline 1741
    ["a"]  = "http://schemas.openxmlformats.org/drawingml/2006/main",
  • Network accessline 1742
    ["r"]  = "http://schemas.openxmlformats.org/officeDocument/2006/relationships",
  • Network accessline 1743
    ["mc"] = "http://schemas.openxmlformats.org/markup-compatibility/2006",
  • Network accessline 1800
    const string ImageRelType = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/image";

src/officecli/Handlers/Pptx/SlideComposition.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Pptx/SpacingPercentExtensions.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Rendering/BasicRenderers.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Rendering/HandlerRenderInput.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Word/WordBatchEmitter.AuxParts.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Word/WordBatchEmitter.Charts.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Word/WordBatchEmitter.Fields.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 625
    var bmName = sc.Format.TryGetValue("name", out var bmNameObj)                             ? bmNameObj?.ToString() : null;                         const string wNs = "http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 626
    ? bmNameObj?.ToString() : null;                         const string wNs = "http://schemas.openxmlformats.org/wordprocessingml/2006/main";                         pendingMarkers.Add(sc.Type == "bookmark" && !string.IsNullOrEmpty(bmName)
  • Network accessline 627
    const string wNs = "http://schemas.openxmlformats.org/wordprocessingml/2006/main";

src/officecli/Handlers/Word/WordBatchEmitter.Filters.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Word/WordBatchEmitter.Paragraph.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 1570
    {                 var brkRunEl = System.Xml.Linq.XElement.Parse(brkRawXml!);                 var wNsBrk = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 1571
    var brkRunEl = System.Xml.Linq.XElement.Parse(brkRawXml!);                 var wNsBrk = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";                 var brkRPrEl = brkRunEl.Element(wNsBrk + "rP
  • Network accessline 1572
    var wNsBrk = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 3499
    var doc = System.Xml.Linq.XDocument.Parse(xml);             if (doc.Root == null) return xml;             var aNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/drawingml/2006/main";
  • Network accessline 3500
    if (doc.Root == null) return xml;             var aNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/drawingml/2006/main";             var rNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/officeDocument
  • Network accessline 3501
    var aNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/drawingml/2006/main";
  • Network accessline 3502
    var rNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/officeDocument/2006/relationships";
  • Network accessline 3696
    {             var doc = System.Xml.Linq.XDocument.Parse(rawXml);             System.Xml.Linq.XNamespace wp = "http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing";
  • Network accessline 3697
    var doc = System.Xml.Linq.XDocument.Parse(rawXml);             System.Xml.Linq.XNamespace wp = "http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing";             System.Xml.Linq.XNamespace a = "http://schemas.openxmlforma
  • Network accessline 3698
    System.Xml.Linq.XNamespace wp = "http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing";
  • Network accessline 3699
    System.Xml.Linq.XNamespace a = "http://schemas.openxmlformats.org/drawingml/2006/main";
  • Network accessline 4094
    {                     var oleRunEl = System.Xml.Linq.XElement.Parse(oleRawXml!);                     var wNsOle = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 4095
    var oleRunEl = System.Xml.Linq.XElement.Parse(oleRawXml!);                     var wNsOle = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";                     var oleRPrEl = oleRunEl.Element(wNsO
  • Network accessline 4096
    var wNsOle = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";

src/officecli/Handlers/Word/WordBatchEmitter.Resources.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 94
    // aware names AND fix the attribute order so the dump pair emits             // identical bytes regardless of SDK's choice.             var wNs = "http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 95
    // identical bytes regardless of SDK's choice.             var wNs = "http://schemas.openxmlformats.org/wordprocessingml/2006/main";             foreach (var ind in doc.Descendants(System.Xml.Linq.XName.Get("ind", wNs)))
  • Network accessline 96
    var wNs = "http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 168
    var doc = System.Xml.Linq.XDocument.Parse(settingsXml);             if (doc.Root == null) return settingsXml;             var wNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 169
    if (doc.Root == null) return settingsXml;             var wNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";             var rNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org
  • Network accessline 170
    var wNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 171
    var rNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/officeDocument/2006/relationships";
  • Network accessline 259
    var doc = System.Xml.Linq.XDocument.Parse(notesXml);             if (doc.Root == null) return false;             var wNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 260
    if (doc.Root == null) return false;             var wNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";             foreach (var note in doc.Root.Elements())
  • Network accessline 261
    var wNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 430
    catch { return; }         if (doc.Root == null) return;         var wNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 432
    var wNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 518
    var sb = new System.Text.StringBuilder();         sb.Append("<w:").Append(settingsNotePr)           .Append(" xmlns:w=\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\">");
  • Network accessline 519
    sb.Append("<w:").Append(settingsNotePr)           .Append(" xmlns:w=\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\">");         sb.Append($"<w:{queryKind} w:id=\"-1\"/>");
  • Network accessline 520
    .Append(" xmlns:w=\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\">");
  • Network accessline 554
    var doc = System.Xml.Linq.XDocument.Parse(numberingXml);             if (doc.Root == null) return numberingXml;             var wNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 555
    if (doc.Root == null) return numberingXml;             var wNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";             var removed = false;
  • Network accessline 556
    var wNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 620
    {             var doc = System.Xml.Linq.XDocument.Parse(stylesXml);             var wNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 621
    var doc = System.Xml.Linq.XDocument.Parse(stylesXml);             var wNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";             var el = doc.Root?.Element(wNs + "docDefaults");
  • Network accessline 622
    var wNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 674
    {             var doc = System.Xml.Linq.XDocument.Parse(stylesXml);             var wNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 675
    var doc = System.Xml.Linq.XDocument.Parse(stylesXml);             var wNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";             var lsEl = doc.Root?.Element(wNs + "latentStyles");
  • Network accessline 676
    var wNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 714
    var doc = System.Xml.Linq.XDocument.Parse(themeXml);             if (doc.Root == null) return themeXml;             var aNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/drawingml/2006/main";
  • Network accessline 715
    if (doc.Root == null) return themeXml;             var aNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/drawingml/2006/main";             var rNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/officeDoc
  • Network accessline 716
    var aNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/drawingml/2006/main";
  • Network accessline 717
    var rNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/officeDocument/2006/relationships";
  • Network accessline 879
    xml = CanonicalizeRawXml(xml);         if (string.IsNullOrEmpty(xml) || !xml.StartsWith("<"))             xml = "<w:settings xmlns:w=\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\" />";
  • Network accessline 880
    if (string.IsNullOrEmpty(xml) || !xml.StartsWith("<"))             xml = "<w:settings xmlns:w=\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\" />";         // BUG-DUMP-R57-NOTESEP: body-referenced notes mean the correspondin
  • Network accessline 881
    xml = "<w:settings xmlns:w=\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\" />";
  • Network accessline 1243
    var doc = System.Xml.Linq.XDocument.Parse(numberingXml);             if (doc.Root == null) return numberingXml;             var wNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 1244
    if (doc.Root == null) return numberingXml;             var wNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";             int RankOf(System.Xml.Linq.XElement e)
  • Network accessline 1245
    var wNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 2251
    {                         var refRunEl = System.Xml.Linq.XElement.Parse(refRaw);                         var wNs3 = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 2252
    var refRunEl = System.Xml.Linq.XElement.Parse(refRaw);                         var wNs3 = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";                         var refRPrEl = refRunEl.Element(wN
  • Network accessline 2253
    var wNs3 = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 2287
    {                     var runEl = System.Xml.Linq.XElement.Parse(bodyRunXml);                     var wNs2 = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 2288
    var runEl = System.Xml.Linq.XElement.Parse(bodyRunXml);                     var wNs2 = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";                     var rPrEl = runEl.Element(wNs2 + "rPr");
  • Network accessline 2289
    var wNs2 = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 3668
    private static readonly Dictionary<string, string> s_nsToPrefix = new(StringComparer.Ordinal)     {         ["http://schemas.openxmlformats.org/wordprocessingml/2006/main"] = "w",
  • Network accessline 3669
    {         ["http://schemas.openxmlformats.org/wordprocessingml/2006/main"] = "w",         ["http://schemas.openxmlformats.org/officeDocument/2006/relationships"] = "r",
  • Network accessline 3670
    ["http://schemas.openxmlformats.org/wordprocessingml/2006/main"] = "w",
  • Network accessline 3671
    ["http://schemas.openxmlformats.org/officeDocument/2006/relationships"] = "r",
  • Network accessline 3672
    ["http://schemas.openxmlformats.org/drawingml/2006/main"] = "a",
  • Network accessline 3673
    ["http://schemas.openxmlformats.org/markup-compatibility/2006"] = "mc",
  • Network accessline 3674
    ["http://schemas.openxmlformats.org/officeDocument/2006/math"] = "m",
  • Network accessline 3706
    try { sdkStyle = new DocumentFormat.OpenXml.Wordprocessing.Style(styleXml); }         catch { return null; }         var wNs = "http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 3707
    catch { return null; }         var wNs = "http://schemas.openxmlformats.org/wordprocessingml/2006/main";         var ops = new List<BatchItem>();
  • Network accessline 3708
    var wNs = "http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 3900
    {             var doc = System.Xml.Linq.XDocument.Parse(stylesXml);             var wNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 3901
    var doc = System.Xml.Linq.XDocument.Parse(stylesXml);             var wNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";             foreach (var styleEl in doc.Root?.Elements(wNs + "style") ??
  • Network accessline 3902
    var wNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 3942
    {             var doc = System.Xml.Linq.XDocument.Parse(stylesXml);             var wNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 3943
    var doc = System.Xml.Linq.XDocument.Parse(stylesXml);             var wNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";             var counts = new Dictionary<string, int>(StringComparer.Ordi
  • Network accessline 3944
    var wNs = (System.Xml.Linq.XNamespace)"http://schemas.openxmlformats.org/wordprocessingml/2006/main";

src/officecli/Handlers/Word/WordBatchEmitter.Table.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Word/WordBatchEmitter.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Word/WordHandler.Add.Diagram.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 284
    private const string DiagramNs =         "xmlns:w=\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\" " +
  • Network accessline 285
    "xmlns:w=\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\" " +
  • Network accessline 286
    "xmlns:wp=\"http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing\" " +
  • Network accessline 287
    "xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\" " +
  • Network accessline 288
    "xmlns:wpg=\"http://schemas.microsoft.com/office/word/2010/wordprocessingGroup\" " +
  • Network accessline 289
    "xmlns:wps=\"http://schemas.microsoft.com/office/word/2010/wordprocessingShape\"";
  • Network accessline 304
    $"<wp:docPr id=\"{groupId}\" name=\"Diagram {groupId}\"/>" +             "<wp:cNvGraphicFramePr/>" +             "<a:graphic><a:graphicData uri=\"http://schemas.microsoft.com/office/word/2010/wordprocessingGroup\">" +
  • Network accessline 305
    "<wp:cNvGraphicFramePr/>" +             "<a:graphic><a:graphicData uri=\"http://schemas.microsoft.com/office/word/2010/wordprocessingGroup\">" +             "<wpg:wgp><wpg:cNvGrpSpPr/><wpg:grpSpPr>" +
  • Network accessline 306
    "<a:graphic><a:graphicData uri=\"http://schemas.microsoft.com/office/word/2010/wordprocessingGroup\">" +

src/officecli/Handlers/Word/WordHandler.Add.Markdown.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Word/WordHandler.Add.Media.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 88
    var cxGraphic = new A.Graphic(                 new A.GraphicData(cxChartRef)                 { Uri = "http://schemas.microsoft.com/office/drawing/2014/chartex" }
  • Network accessline 89
    new A.GraphicData(cxChartRef)                 { Uri = "http://schemas.microsoft.com/office/drawing/2014/chartex" }             );
  • Network accessline 90
    { Uri = "http://schemas.microsoft.com/office/drawing/2014/chartex" }
  • Network accessline 159
    new DocumentFormat.OpenXml.Drawing.Charts.ChartReference { Id = chartRelId }             )             { Uri = "http://schemas.openxmlformats.org/drawingml/2006/chart" }
  • Network accessline 160
    )             { Uri = "http://schemas.openxmlformats.org/drawingml/2006/chart" }         );
  • Network accessline 161
    { Uri = "http://schemas.openxmlformats.org/drawingml/2006/chart" }
  • Network accessline 291
    var userShapes = new DocumentFormat.OpenXml.Drawing.Charts.UserShapes();         userShapes.SetAttribute(new OpenXmlAttribute(             "r", "id", "http://schemas.openxmlformats.org/officeDocument/2006/relationships", cdpRelId));
  • Network accessline 292
    userShapes.SetAttribute(new OpenXmlAttribute(             "r", "id", "http://schemas.openxmlformats.org/officeDocument/2006/relationships", cdpRelId));         // c:userShapes is the last CT_ChartSpace element before c:extLst.
  • Network accessline 293
    "r", "id", "http://schemas.openxmlformats.org/officeDocument/2006/relationships", cdpRelId));
  • Network accessline 1004
    // fresh id and route the source id through the same rewrite map.         const string HyperlinkRelType =             "http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink";
  • Network accessline 1005
    const string HyperlinkRelType =             "http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink";         for (int ei = 1; properties.TryGetValue($"ext{ei}.relId", out var extOldId); ei++)
  • Network accessline 1006
    "http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink";
  • Network accessline 1223
    _ when IsEmbeddedOleObjectContentType(ct) && parent is ChartPart             => parent.AddExtendedPart(                 "http://schemas.openxmlformats.org/officeDocument/2006/relationships/oleObject",
  • Network accessline 1224
    => parent.AddExtendedPart(                 "http://schemas.openxmlformats.org/officeDocument/2006/relationships/oleObject",                 ct, ".bin", relId),
  • Network accessline 1225
    "http://schemas.openxmlformats.org/officeDocument/2006/relationships/oleObject",
  • Network accessline 1441
    : $" ProgID=\"{System.Security.SecurityElement.Escape(progId)}\"";         var oleXml = $""" <w:object xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-micro
  • Network accessline 1442
    var oleXml = $""" <w:object xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:r="http://schemas.openxmlformats.org/officeDo
  • Network accessline 1443
    <w:object xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relati

src/officecli/Handlers/Word/WordHandler.Add.Misc.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 1095
    else             {                 throw new ArgumentException($"Invalid hyperlink URL '{hlUrl}'. Expected an absolute URI (e.g. 'https://example.com'), a relative target (e.g. 'file.docx'), or a fragment-only anchor (e.g. '#bookmark').");
  • Network accessline 1096
    {                 throw new ArgumentException($"Invalid hyperlink URL '{hlUrl}'. Expected an absolute URI (e.g. 'https://example.com'), a relative target (e.g. 'file.docx'), or a fragment-only anchor (e.g. '#bookmark').");             }
  • Network accessline 1097
    throw new ArgumentException($"Invalid hyperlink URL '{hlUrl}'. Expected an absolute URI (e.g. 'https://example.com'), a relative target (e.g. 'file.docx'), or a fragment-only anchor (e.g. '#bookmark').");
  • Network accessline 2726
    // Build header XML with SDT wrapper (docPartGallery=Watermarks)             var headerXml = $@"<?xml version=""1.0"" encoding=""UTF-8"" standalone=""yes""?> <w:hdr xmlns:w=""http://schemas.openxmlformats.org/wordprocessingml/2006/main""
  • Network accessline 2727
    var headerXml = $@"<?xml version=""1.0"" encoding=""UTF-8"" standalone=""yes""?> <w:hdr xmlns:w=""http://schemas.openxmlformats.org/wordprocessingml/2006/main""        xmlns:r=""http://schemas.openxmlformats.org/officeDocument/2006/relation
  • Network accessline 2728
    <w:hdr xmlns:w=""http://schemas.openxmlformats.org/wordprocessingml/2006/main""
  • Network accessline 2729
    xmlns:r=""http://schemas.openxmlformats.org/officeDocument/2006/relationships""
  • Dangerous shell operationline 2884
    var rm = System.Text.RegularExpressions.Regex.Match(switches, @"\\r\s+(\d+)");
  • Network accessline 3122
    string effectXml = BuildShadowXml(properties.GetValueOrDefault("shadow"));         string txbxBodyXml = !string.IsNullOrEmpty(initialText)             ? $"<w:p xmlns:w=\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\"><w:r><w
  • Network accessline 3123
    string txbxBodyXml = !string.IsNullOrEmpty(initialText)             ? $"<w:p xmlns:w=\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\"><w:r><w:t xml:space=\"preserve\">{System.Security.SecurityElement.Escape(initialText)}</w:
  • Network accessline 3124
    ? $"<w:p xmlns:w=\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\"><w:r><w:t xml:space=\"preserve\">{System.Security.SecurityElement.Escape(initialText)}</w:t></w:r></w:p>"
  • Network accessline 3125
    : "<w:p xmlns:w=\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\"/>";
  • Network accessline 3140
    // a:graphicData uri = wordprocessingShape; inner wps:wsp carries         // spPr (preset rect geometry + fill + line) + txbx (body paragraphs) + bodyPr.         string drawingXml = $@"<w:drawing xmlns:w=""http://schemas.openxmlformats.org/
  • Network accessline 3142
    string drawingXml = $@"<w:drawing xmlns:w=""http://schemas.openxmlformats.org/wordprocessingml/2006/main"" xmlns:wp=""http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing"" xmlns:a=""http://schemas.openxmlformats.org/drawi
  • Network accessline 3251
    string drawingXml = $@"<w:drawing xmlns:w=""http://schemas.openxmlformats.org/wordprocessingml/2006/main"" xmlns:wp=""http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing"" xmlns:a=""http://schemas.openxmlformats.org/drawi
  • Network accessline 3595
    // <w:drawing> belongs inside <w:r>, so the Run wrapper is the         // minimal schema-legal host.         var wrapXml = $@"<w:p xmlns:w=""http://schemas.openxmlformats.org/wordprocessingml/2006/main""><w:r>{xml}</w:r></w:p>";
  • Network accessline 3596
    // minimal schema-legal host.         var wrapXml = $@"<w:p xmlns:w=""http://schemas.openxmlformats.org/wordprocessingml/2006/main""><w:r>{xml}</w:r></w:p>";         var p = new Paragraph(wrapXml);
  • Network accessline 3597
    var wrapXml = $@"<w:p xmlns:w=""http://schemas.openxmlformats.org/wordprocessingml/2006/main""><w:r>{xml}</w:r></w:p>";

src/officecli/Handlers/Word/WordHandler.Add.Structure.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 2827
    // accept the extension attrs.         var hRoot = new Header(hPara);         hRoot.AddNamespaceDeclaration("mc", "http://schemas.openxmlformats.org/markup-compatibility/2006");
  • Network accessline 2828
    var hRoot = new Header(hPara);         hRoot.AddNamespaceDeclaration("mc", "http://schemas.openxmlformats.org/markup-compatibility/2006");         hRoot.AddNamespaceDeclaration("w14", "http://schemas.microsoft.com/office/word/2010/wordml");
  • Network accessline 2829
    hRoot.AddNamespaceDeclaration("mc", "http://schemas.openxmlformats.org/markup-compatibility/2006");
  • Network accessline 2830
    hRoot.AddNamespaceDeclaration("w14", "http://schemas.microsoft.com/office/word/2010/wordml");
  • Network accessline 2831
    hRoot.SetAttribute(new OpenXmlAttribute("Ignorable", "http://schemas.openxmlformats.org/markup-compatibility/2006", "w14"));
  • Network accessline 3017
    // OpenXmlValidator rejects them as undeclared without this.         var fRoot = new Footer(fPara);         fRoot.AddNamespaceDeclaration("mc", "http://schemas.openxmlformats.org/markup-compatibility/2006");
  • Network accessline 3018
    var fRoot = new Footer(fPara);         fRoot.AddNamespaceDeclaration("mc", "http://schemas.openxmlformats.org/markup-compatibility/2006");         fRoot.AddNamespaceDeclaration("w14", "http://schemas.microsoft.com/office/word/2010/wordml");
  • Network accessline 3019
    fRoot.AddNamespaceDeclaration("mc", "http://schemas.openxmlformats.org/markup-compatibility/2006");
  • Network accessline 3020
    fRoot.AddNamespaceDeclaration("w14", "http://schemas.microsoft.com/office/word/2010/wordml");
  • Network accessline 3021
    fRoot.SetAttribute(new OpenXmlAttribute("Ignorable", "http://schemas.openxmlformats.org/markup-compatibility/2006", "w14"));

src/officecli/Handlers/Word/WordHandler.Add.Table.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Word/WordHandler.Add.Text.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Possible obfuscationline 2615
    var glyph = hyphenKind is "soft" or "softhyphen" or "00ad" ? "<U+00AD>" : "‑";

src/officecli/Handlers/Word/WordHandler.Add.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Word/WordHandler.CommentsExt.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Word/WordHandler.FormFields.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Word/WordHandler.Helpers.Chart.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 21
    private const string WordChartExUri = "http://schemas.microsoft.com/office/drawing/2014/chartex";
  • Network accessline 22
    private const string WordChartUri = "http://schemas.openxmlformats.org/drawingml/2006/chart";
  • Network accessline 321
    {             var rId = child.GetAttributes().FirstOrDefault(a =>                 a.LocalName == "id" && a.NamespaceUri == "http://schemas.openxmlformats.org/officeDocument/2006/relationships");
  • Network accessline 322
    var rId = child.GetAttributes().FirstOrDefault(a =>                 a.LocalName == "id" && a.NamespaceUri == "http://schemas.openxmlformats.org/officeDocument/2006/relationships");             if (rId.Value != null) return rId.Value;
  • Network accessline 323
    a.LocalName == "id" && a.NamespaceUri == "http://schemas.openxmlformats.org/officeDocument/2006/relationships");

src/officecli/Handlers/Word/WordHandler.Helpers.Field.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 441
    // Ensure mc:Ignorable includes "w14" so Word 2007 skips w14:paraId/textId attributes         var doc = mainPart.Document;         const string mcNs = "http://schemas.openxmlformats.org/markup-compatibility/2006";
  • Network accessline 442
    var doc = mainPart.Document;         const string mcNs = "http://schemas.openxmlformats.org/markup-compatibility/2006";         if (doc.LookupNamespace("mc") == null)
  • Network accessline 443
    const string mcNs = "http://schemas.openxmlformats.org/markup-compatibility/2006";
  • Network accessline 445
    doc.AddNamespaceDeclaration("mc", mcNs);         if (doc.LookupNamespace("w14") == null)             doc.AddNamespaceDeclaration("w14", "http://schemas.microsoft.com/office/word/2010/wordml");
  • Network accessline 446
    if (doc.LookupNamespace("w14") == null)             doc.AddNamespaceDeclaration("w14", "http://schemas.microsoft.com/office/word/2010/wordml");         var ignorable = doc.MCAttributes?.Ignorable?.Value ?? "";
  • Network accessline 447
    doc.AddNamespaceDeclaration("w14", "http://schemas.microsoft.com/office/word/2010/wordml");

src/officecli/Handlers/Word/WordHandler.Helpers.FindReplace.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Word/WordHandler.Helpers.HeaderFooter.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Word/WordHandler.Helpers.RunFormat.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Possible obfuscationline 262
    while (s.Length > 0 && s[0] == '<U+FEFF>') s = s.Substring(1);
  • Possible obfuscationline 263
    while (s.Length > 0 && s[s.Length - 1] == '<U+FEFF>') s = s.Substring(0, s.Length - 1);

src/officecli/Handlers/Word/WordHandler.Helpers.SectionTable.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Word/WordHandler.Helpers.Structure.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Word/WordHandler.Helpers.Style.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Word/WordHandler.Helpers.Text.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 110
    private static bool IsRunContainerWrapper(OpenXmlElement el)     {         const string wNs = "http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 111
    {         const string wNs = "http://schemas.openxmlformats.org/wordprocessingml/2006/main";         return el.NamespaceUri == wNs
  • Network accessline 112
    const string wNs = "http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 149
    private static void AppendUnknownRunText(StringBuilder sb, OpenXmlElement unknownRun)     {         const string wNs = "http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 150
    {         const string wNs = "http://schemas.openxmlformats.org/wordprocessingml/2006/main";         // Recurse into nested unknown wrappers (smartTag>smartTag>r) too.
  • Network accessline 151
    const string wNs = "http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 246
    }             else if (element.LocalName == "customXml"                 && element.NamespaceUri == "http://schemas.openxmlformats.org/wordprocessingml/2006/main")
  • Network accessline 247
    else if (element.LocalName == "customXml"                 && element.NamespaceUri == "http://schemas.openxmlformats.org/wordprocessingml/2006/main")             {
  • Network accessline 248
    && element.NamespaceUri == "http://schemas.openxmlformats.org/wordprocessingml/2006/main")
  • Possible obfuscationline 453
    case SoftHyphen: sb.Append('<U+00AD>'); break;   // soft hyphen

src/officecli/Handlers/Word/WordHandler.Helpers.TextEffect.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 21
    private const string W14Ns = "http://schemas.microsoft.com/office/word/2010/wordml";

src/officecli/Handlers/Word/WordHandler.Helpers.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Word/WordHandler.HtmlPreview.Charts.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 89
    sb.Append($"<div style=\"display:flex;flex-direction:{flexDir};align-items:{(info.LegendPos == "tr" ? "flex-start" : "center")};justify-content:center;gap:8px\">");             }             sb.Append($"<svg width=\"{svgW}\" height=\"{chart
  • Network accessline 91
    sb.Append($"<svg width=\"{svgW}\" height=\"{chartSvgH}\" xmlns=\"http://www.w3.org/2000/svg\" style=\"{bgStyle}\">");
  • Network accessline 158
    sb.Append($"<div style=\"font-weight:bold;margin-bottom:4px;font-size:{info.TitleFontSize}\">{ChartSvgRenderer.BuildTitleInnerHtml(info, "inherit", info.TitleBold, wTitlePt > 0 ? wTitlePt : 12)}</div>");             }             sb.Append(
  • Network accessline 159
    }             sb.Append($"<svg width=\"{svgW}\" height=\"{chartSvgH}\" xmlns=\"http://www.w3.org/2000/svg\" style=\"background:white;\">");             renderer.RenderChartSvgContent(sb, info, svgW, chartSvgH);
  • Network accessline 160
    sb.Append($"<svg width=\"{svgW}\" height=\"{chartSvgH}\" xmlns=\"http://www.w3.org/2000/svg\" style=\"background:white;\">");

src/officecli/Handlers/Word/WordHandler.HtmlPreview.Css.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Word/WordHandler.HtmlPreview.Markers.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Word/WordHandler.HtmlPreview.Shapes.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 1518
    sb.Append(             "<svg style=\"display:block;width:100%;height:100%;overflow:visible\" " +             "viewBox=\"0 0 100 100\" preserveAspectRatio=\"none\" xmlns=\"http://www.w3.org/2000/svg\">");
  • Network accessline 1519
    "<svg style=\"display:block;width:100%;height:100%;overflow:visible\" " +             "viewBox=\"0 0 100 100\" preserveAspectRatio=\"none\" xmlns=\"http://www.w3.org/2000/svg\">");         var sw = strokeW.ToString("0.##", System.Globalizat
  • Network accessline 1520
    "viewBox=\"0 0 100 100\" preserveAspectRatio=\"none\" xmlns=\"http://www.w3.org/2000/svg\">");

src/officecli/Handlers/Word/WordHandler.HtmlPreview.Tables.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Word/WordHandler.HtmlPreview.Text.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 717
    // control rendered nothing.                         else if (node.LocalName is "sdt" or "sdtContent" or "smartTag" or "customXml" or "fldSimple"                             && node.NamespaceUri == "http://schemas.openxmlformats.org/wordpro
  • Network accessline 718
    else if (node.LocalName is "sdt" or "sdtContent" or "smartTag" or "customXml" or "fldSimple"                             && node.NamespaceUri == "http://schemas.openxmlformats.org/wordprocessingml/2006/main")                             Ren
  • Network accessline 719
    && node.NamespaceUri == "http://schemas.openxmlformats.org/wordprocessingml/2006/main")
  • Network accessline 720
    RenderWrapperContent(node);                         else if (node is DocumentFormat.OpenXml.OpenXmlUnknownElement unk                             && unk.NamespaceUri == "http://schemas.openxmlformats.org/wordprocessingml/2006/main")
  • Network accessline 721
    else if (node is DocumentFormat.OpenXml.OpenXmlUnknownElement unk                             && unk.NamespaceUri == "http://schemas.openxmlformats.org/wordprocessingml/2006/main")                         {
  • Network accessline 722
    && unk.NamespaceUri == "http://schemas.openxmlformats.org/wordprocessingml/2006/main")
  • Network accessline 739
    if (!string.IsNullOrEmpty(xml) && !xml.Contains("xmlns:w=", StringComparison.Ordinal))                                         xml = xml.Replace("<w:r ",                                                 "<w:r xmlns:w=\"http://schemas.openxml
  • Network accessline 740
    xml = xml.Replace("<w:r ",                                                 "<w:r xmlns:w=\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\" ",                                                 StringComparison.Ordinal)
  • Network accessline 741
    "<w:r xmlns:w=\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\" ",
  • Network accessline 742
    StringComparison.Ordinal)                                             .Replace("<w:r>",                                                 "<w:r xmlns:w=\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\">",
  • Network accessline 743
    .Replace("<w:r>",                                                 "<w:r xmlns:w=\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\">",                                                 StringComparison.Ordinal);
  • Network accessline 744
    "<w:r xmlns:w=\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\">",

src/officecli/Handlers/Word/WordHandler.HtmlPreview.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 265
    sb.AppendLine("fams.forEach(function(f){if(has(f))return;");                 sb.AppendLine("var q='family='+encodeURIComponent(f).replace(/%20/g,'+')+ax;");                 sb.AppendLine("var l=document.createElement('link');l.rel='styleshe
  • Network accessline 266
    sb.AppendLine("var q='family='+encodeURIComponent(f).replace(/%20/g,'+')+ax;");                 sb.AppendLine("var l=document.createElement('link');l.rel='stylesheet';l.href='https://d.officecli.ai/fonts/css2?'+q;");                 sb.Appe
  • Network accessline 267
    sb.AppendLine("var l=document.createElement('link');l.rel='stylesheet';l.href='https://d.officecli.ai/fonts/css2?'+q;");
  • Network accessline 268
    sb.AppendLine("l.onerror=function(){if(!l.dataset.f){l.dataset.f=1;l.href='https://fonts.googleapis.com/css2?'+q;}else{l.remove();}};");
  • Network accessline 608
    sb.AppendLine("  if(typeof katex!=='undefined'){");         sb.AppendLine("    document.querySelectorAll('.katex-formula:not(.katex-rendered)').forEach(function(el){");         sb.AppendLine("      try{katex.render(el.dataset.formula,el,{th
  • Network accessline 609
    sb.AppendLine("    document.querySelectorAll('.katex-formula:not(.katex-rendered)').forEach(function(el){");         sb.AppendLine("      try{katex.render(el.dataset.formula,el,{throwOnError:false,displayMode:!!el.dataset.display});}catch(e
  • Network accessline 610
    sb.AppendLine("      try{katex.render(el.dataset.formula,el,{throwOnError:false,displayMode:!!el.dataset.display});}catch(e){el.textContent=el.dataset.formula+' (Error: '+e.message+'. See https://katex.org/docs/supported.html for supported 

src/officecli/Handlers/Word/WordHandler.I18n.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Word/WordHandler.ImageHelpers.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 78
    )                     )                 ) { Uri = "http://schemas.openxmlformats.org/drawingml/2006/picture" }
  • Network accessline 79
    )                 ) { Uri = "http://schemas.openxmlformats.org/drawingml/2006/picture" }             )
  • Network accessline 80
    ) { Uri = "http://schemas.openxmlformats.org/drawingml/2006/picture" }
  • Network accessline 216
    { Preset = A.ShapeTypeValues.Rectangle })                     )                 ) { Uri = "http://schemas.openxmlformats.org/drawingml/2006/picture" }
  • Network accessline 217
    )                 ) { Uri = "http://schemas.openxmlformats.org/drawingml/2006/picture" }             )
  • Network accessline 218
    ) { Uri = "http://schemas.openxmlformats.org/drawingml/2006/picture" }
  • Network accessline 318
    // OpenXmlUnknownElement under the typed extension list.     private const string DecorativeExtUri = "{C183D7F6-DF14-4A22-8298-3B9A5F5C6C3B}";     private const string DecorativeNs = "http://schemas.microsoft.com/office/drawing/2017/decorat
  • Network accessline 320
    private const string DecorativeNs = "http://schemas.microsoft.com/office/drawing/2017/decorative";
  • Network accessline 699
    // BUG-DUMP-R45-4: drawingml main namespace (the `a:` prefix the captured     // blip/spPr effect fragments use, with no xmlns of their own).     private const string DrawingMainNs = "http://schemas.openxmlformats.org/drawingml/2006/main";
  • Network accessline 701
    private const string DrawingMainNs = "http://schemas.openxmlformats.org/drawingml/2006/main";
  • Network accessline 757
    if (spPr?.Parent == null) return;         const string NsDecls =             " xmlns:pic=\"http://schemas.openxmlformats.org/drawingml/2006/picture\"" +
  • Network accessline 758
    const string NsDecls =             " xmlns:pic=\"http://schemas.openxmlformats.org/drawingml/2006/picture\"" +             " xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\"" +
  • Network accessline 759
    " xmlns:pic=\"http://schemas.openxmlformats.org/drawingml/2006/picture\"" +
  • Network accessline 760
    " xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\"" +
  • Network accessline 761
    " xmlns:r=\"http://schemas.openxmlformats.org/officeDocument/2006/relationships\"" +
  • Network accessline 762
    " xmlns:a14=\"http://schemas.microsoft.com/office/drawing/2010/main\"";
  • Network accessline 934
    drawAspect = attr.Value;                 else if (attr.LocalName == "id"                     && attr.NamespaceUri == "http://schemas.openxmlformats.org/officeDocument/2006/relationships")
  • Network accessline 935
    else if (attr.LocalName == "id"                     && attr.NamespaceUri == "http://schemas.openxmlformats.org/officeDocument/2006/relationships")                     relId = attr.Value;
  • Network accessline 936
    && attr.NamespaceUri == "http://schemas.openxmlformats.org/officeDocument/2006/relationships")

src/officecli/Handlers/Word/WordHandler.Mutations.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 364
    // now-empty carrier paragraph the diagram was emitted into.         if (element.LocalName == "wgp"             && element.NamespaceUri == "http://schemas.microsoft.com/office/word/2010/wordprocessingGroup")
  • Network accessline 365
    if (element.LocalName == "wgp"             && element.NamespaceUri == "http://schemas.microsoft.com/office/word/2010/wordprocessingGroup")         {
  • Network accessline 366
    && element.NamespaceUri == "http://schemas.microsoft.com/office/word/2010/wordprocessingGroup")
  • Network accessline 413
    {                     var imgRid = vimg.GetAttributes().FirstOrDefault(a => a.LocalName == "id"                         && a.NamespaceUri == "http://schemas.openxmlformats.org/officeDocument/2006/relationships").Value;
  • Network accessline 414
    var imgRid = vimg.GetAttributes().FirstOrDefault(a => a.LocalName == "id"                         && a.NamespaceUri == "http://schemas.openxmlformats.org/officeDocument/2006/relationships").Value;                     if (!string.IsNullOrEmp
  • Network accessline 415
    && a.NamespaceUri == "http://schemas.openxmlformats.org/officeDocument/2006/relationships").Value;
  • Network accessline 424
    {                     var oleRid = oleEl.GetAttributes().FirstOrDefault(a => a.LocalName == "id"                         && a.NamespaceUri == "http://schemas.openxmlformats.org/officeDocument/2006/relationships").Value;
  • Network accessline 425
    var oleRid = oleEl.GetAttributes().FirstOrDefault(a => a.LocalName == "id"                         && a.NamespaceUri == "http://schemas.openxmlformats.org/officeDocument/2006/relationships").Value;                     if (!string.IsNullOrEm
  • Network accessline 426
    && a.NamespaceUri == "http://schemas.openxmlformats.org/officeDocument/2006/relationships").Value;
  • Network accessline 1272
    // reject rather than move the neighbours with it.         if (element.LocalName == "wgp"             && element.NamespaceUri == "http://schemas.microsoft.com/office/word/2010/wordprocessingGroup")
  • Network accessline 1273
    if (element.LocalName == "wgp"             && element.NamespaceUri == "http://schemas.microsoft.com/office/word/2010/wordprocessingGroup")         {
  • Network accessline 1274
    && element.NamespaceUri == "http://schemas.microsoft.com/office/word/2010/wordprocessingGroup")
  • Network accessline 1678
    {         if (ReferenceEquals(sourcePart, targetPart)) return;         const string rNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";
  • Network accessline 1679
    if (ReferenceEquals(sourcePart, targetPart)) return;         const string rNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";         foreach (var el in clone.Descendants().Prepend(clone).ToList())
  • Network accessline 1680
    const string rNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";
  • Network accessline 1782
    // Mirrors the oMathPara / oMath rejection above.         if (element.LocalName == "wgp"             && element.NamespaceUri == "http://schemas.microsoft.com/office/word/2010/wordprocessingGroup")
  • Network accessline 1783
    if (element.LocalName == "wgp"             && element.NamespaceUri == "http://schemas.microsoft.com/office/word/2010/wordprocessingGroup")         {
  • Network accessline 1784
    && element.NamespaceUri == "http://schemas.microsoft.com/office/word/2010/wordprocessingGroup")

src/officecli/Handlers/Word/WordHandler.Navigation.DocSettings.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Word/WordHandler.Navigation.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 1112
    {         var empty = new List<string>();         const string wNs = "http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 1113
    var empty = new List<string>();         const string wNs = "http://schemas.openxmlformats.org/wordprocessingml/2006/main";         // DOM-side fingerprint: the non-empty wrapper-run texts of this paragraph.
  • Network accessline 1114
    const string wNs = "http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 1548
    .Select(d => (OpenXmlElement?)d.Descendants().FirstOrDefault(e =>                             e.LocalName == "txbxContent"                             && e.NamespaceUri == "http://schemas.openxmlformats.org/wordprocessingml/2006/main"))
  • Network accessline 1549
    e.LocalName == "txbxContent"                             && e.NamespaceUri == "http://schemas.openxmlformats.org/wordprocessingml/2006/main"))                         .Where(e => e != null)
  • Network accessline 1550
    && e.NamespaceUri == "http://schemas.openxmlformats.org/wordprocessingml/2006/main"))
  • Network accessline 1560
    .Select(d => (OpenXmlElement?)d.Descendants().FirstOrDefault(e =>                             e.LocalName == "wsp"                             && e.NamespaceUri == "http://schemas.microsoft.com/office/word/2010/wordprocessingShape"))
  • Network accessline 1561
    e.LocalName == "wsp"                             && e.NamespaceUri == "http://schemas.microsoft.com/office/word/2010/wordprocessingShape"))                         .Where(e => e != null)
  • Network accessline 1562
    && e.NamespaceUri == "http://schemas.microsoft.com/office/word/2010/wordprocessingShape"))
  • Network accessline 1570
    .Select(d => (OpenXmlElement?)d.Descendants().FirstOrDefault(e =>                             e.LocalName == "wgp"                             && e.NamespaceUri == "http://schemas.microsoft.com/office/word/2010/wordprocessingGroup"))
  • Network accessline 1571
    e.LocalName == "wgp"                             && e.NamespaceUri == "http://schemas.microsoft.com/office/word/2010/wordprocessingGroup"))                         .Where(e => e != null)
  • Network accessline 1572
    && e.NamespaceUri == "http://schemas.microsoft.com/office/word/2010/wordprocessingGroup"))
  • Network accessline 3018
    // Use OriginalString rather than ToString() — System.Uri normalises                     // a bare authority by appending a trailing `/` (e.g.                     // `https://example.com` → `https://example.com/`), which would
  • Network accessline 3019
    // a bare authority by appending a trailing `/` (e.g.                     // `https://example.com` → `https://example.com/`), which would                     // surface as a get-side drift the on-disk .rels Target lacks.
  • Network accessline 3020
    // `https://example.com` → `https://example.com/`), which would
  • Network accessline 5318
    // Surface them as synthetic fieldChar/instrText nodes so the             // emitter can collapse them into a `field` row.             const string wNs2 = "http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 5319
    // emitter can collapse them into a `field` row.             const string wNs2 = "http://schemas.openxmlformats.org/wordprocessingml/2006/main";             var bareFieldUnknowns = para.Elements<DocumentFormat.OpenXml.OpenXmlUnknownElement>
  • Network accessline 5320
    const string wNs2 = "http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 5800
    // <w:r>/<w:t> children we find so the inner text round-trips             // through dump→batch instead of vanishing.             const string wNs = "http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 5801
    // through dump→batch instead of vanishing.             const string wNs = "http://schemas.openxmlformats.org/wordprocessingml/2006/main";             // BUG-DUMP-R35-2: smartTag/customXml wrappers parse as
  • Network accessline 5802
    const string wNs = "http://schemas.openxmlformats.org/wordprocessingml/2006/main";
  • Network accessline 6240
    return SdtRunToNode(sdtRunNode, node);         else if (element.LocalName == "wgp"                  && element.NamespaceUri == "http://schemas.microsoft.com/office/word/2010/wordprocessingGroup")
  • Network accessline 6241
    else if (element.LocalName == "wgp"                  && element.NamespaceUri == "http://schemas.microsoft.com/office/word/2010/wordprocessingGroup")             return WgpGroupToNode(element, node, path);
  • Network accessline 6242
    && element.NamespaceUri == "http://schemas.microsoft.com/office/word/2010/wordprocessingGroup")
  • Network accessline 6618
    }             // Shading — check for gradient (w14:gradFill in mc:AlternateContent) first             var mcNs = "http://schemas.openxmlformats.org/markup-compatibility/2006";
  • Network accessline 6619
    // Shading — check for gradient (w14:gradFill in mc:AlternateContent) first             var mcNs = "http://schemas.openxmlformats.org/markup-compatibility/2006";             var gradAc = tcPr.ChildElements
  • Network accessline 6620
    var mcNs = "http://schemas.openxmlformats.org/markup-compatibility/2006";

src/officecli/Handlers/Word/WordHandler.Query.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Word/WordHandler.Selector.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Word/WordHandler.SeqEval.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Word/WordHandler.Set.Compatibility.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 196
    Name = new EnumValue<CompatSettingNameValues>(CompatSettingNameValues.CompatibilityMode),             Val = new StringValue(mode.ToString()),             Uri = new StringValue("http://schemas.microsoft.com/office/word")
  • Network accessline 197
    Val = new StringValue(mode.ToString()),             Uri = new StringValue("http://schemas.microsoft.com/office/word")         });
  • Network accessline 198
    Uri = new StringValue("http://schemas.microsoft.com/office/word")

src/officecli/Handlers/Word/WordHandler.Set.Dispatch.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Word/WordHandler.Set.DocDefaults.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Word/WordHandler.Set.DocSettings.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Word/WordHandler.Set.Element.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 589
    {                             var relAttr = oleEl.GetAttributes().FirstOrDefault(a => a.LocalName == "id"                                 && a.NamespaceUri == "http://schemas.openxmlformats.org/officeDocument/2006/relationships");
  • Network accessline 590
    var relAttr = oleEl.GetAttributes().FirstOrDefault(a => a.LocalName == "id"                                 && a.NamespaceUri == "http://schemas.openxmlformats.org/officeDocument/2006/relationships");                             var oldRel 
  • Network accessline 591
    && a.NamespaceUri == "http://schemas.openxmlformats.org/officeDocument/2006/relationships");
  • Network accessline 598
    // Update r:id attribute in place.                             oleEl.SetAttribute(new OpenXmlAttribute("r", "id",                                 "http://schemas.openxmlformats.org/officeDocument/2006/relationships", newEmbedRel));
  • Network accessline 599
    oleEl.SetAttribute(new OpenXmlAttribute("r", "id",                                 "http://schemas.openxmlformats.org/officeDocument/2006/relationships", newEmbedRel));                             // Refresh ProgID if it wasn't explicitly p
  • Network accessline 600
    "http://schemas.openxmlformats.org/officeDocument/2006/relationships", newEmbedRel));
  • Network accessline 670
    var mainIcon = _doc.MainDocumentPart!;                     var oldIconRelAttr = imagedata.GetAttributes().FirstOrDefault(a => a.LocalName == "id"                         && a.NamespaceUri == "http://schemas.openxmlformats.org/officeDocument
  • Network accessline 671
    var oldIconRelAttr = imagedata.GetAttributes().FirstOrDefault(a => a.LocalName == "id"                         && a.NamespaceUri == "http://schemas.openxmlformats.org/officeDocument/2006/relationships");                     if (oldIconRelAt
  • Network accessline 672
    && a.NamespaceUri == "http://schemas.openxmlformats.org/officeDocument/2006/relationships");
  • Network accessline 681
    var newIconRel = mainIcon.GetIdOfPart(newIconPart);                     imagedata.SetAttribute(new OpenXmlAttribute("r", "id",                         "http://schemas.openxmlformats.org/officeDocument/2006/relationships", newIconRel));
  • Network accessline 682
    imagedata.SetAttribute(new OpenXmlAttribute("r", "id",                         "http://schemas.openxmlformats.org/officeDocument/2006/relationships", newIconRel));                     break;
  • Network accessline 683
    "http://schemas.openxmlformats.org/officeDocument/2006/relationships", newIconRel));
  • Network accessline 3355
    var wsp = txbx.Ancestors()             .FirstOrDefault(e => e.LocalName == "wsp"                 && e.NamespaceUri == "http://schemas.microsoft.com/office/word/2010/wordprocessingShape");
  • Network accessline 3356
    .FirstOrDefault(e => e.LocalName == "wsp"                 && e.NamespaceUri == "http://schemas.microsoft.com/office/word/2010/wordprocessingShape");         if (wsp == null)
  • Network accessline 3357
    && e.NamespaceUri == "http://schemas.microsoft.com/office/word/2010/wordprocessingShape");
  • Network accessline 3379
    const string ANs = "http://schemas.openxmlformats.org/drawingml/2006/main";
  • Network accessline 3380
    const string WpNs = "http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing";
  • Network accessline 3523
    {         var unsupported = new List<string>();         const string ANs = "http://schemas.openxmlformats.org/drawingml/2006/main";
  • Network accessline 3524
    var unsupported = new List<string>();         const string ANs = "http://schemas.openxmlformats.org/drawingml/2006/main";         const string WpNs = "http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing";
  • Network accessline 3525
    const string ANs = "http://schemas.openxmlformats.org/drawingml/2006/main";
  • Network accessline 3526
    const string WpNs = "http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing";
  • Network accessline 3730
    // built fragment out of the parsed spPr.         var wrapXml =             $@"<w:p xmlns:w=""http://schemas.openxmlformats.org/wordprocessingml/2006/main"" xmlns:wp=""http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing""
  • Network accessline 3731
    var wrapXml =             $@"<w:p xmlns:w=""http://schemas.openxmlformats.org/wordprocessingml/2006/main"" xmlns:wp=""http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing"" xmlns:a=""http://schemas.openxmlformats.org/drawi
  • Network accessline 3732
    $@"<w:p xmlns:w=""http://schemas.openxmlformats.org/wordprocessingml/2006/main"" xmlns:wp=""http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing"" xmlns:a=""http://schemas.openxmlformats.org/drawingml/2006/main"" xmlns:wps
  • Network accessline 3733
    var p = new Paragraph(wrapXml);         var spPr = p.Descendants().FirstOrDefault(e => e.LocalName == "spPr"             && e.NamespaceUri == "http://schemas.microsoft.com/office/word/2010/wordprocessingShape");
  • Network accessline 3734
    var spPr = p.Descendants().FirstOrDefault(e => e.LocalName == "spPr"             && e.NamespaceUri == "http://schemas.microsoft.com/office/word/2010/wordprocessingShape");         var first = spPr?.FirstChild
  • Network accessline 3735
    && e.NamespaceUri == "http://schemas.microsoft.com/office/word/2010/wordprocessingShape");

src/officecli/Handlers/Word/WordHandler.Set.Revision.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Word/WordHandler.Set.SectionLayout.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/Word/WordHandler.Set.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 626
    if (string.Equals(element.LocalName, "wsp", StringComparison.Ordinal)             && string.Equals(element.NamespaceUri,                 "http://schemas.microsoft.com/office/word/2010/wordprocessingShape", StringComparison.Ordinal))
  • Network accessline 627
    && string.Equals(element.NamespaceUri,                 "http://schemas.microsoft.com/office/word/2010/wordprocessingShape", StringComparison.Ordinal))             return SetShapeProps(element, properties);
  • Network accessline 628
    "http://schemas.microsoft.com/office/word/2010/wordprocessingShape", StringComparison.Ordinal))
  • Network accessline 633
    if (string.Equals(element.LocalName, "wgp", StringComparison.Ordinal)             && string.Equals(element.NamespaceUri,                 "http://schemas.microsoft.com/office/word/2010/wordprocessingGroup", StringComparison.Ordinal))
  • Network accessline 634
    && string.Equals(element.NamespaceUri,                 "http://schemas.microsoft.com/office/word/2010/wordprocessingGroup", StringComparison.Ordinal))             return SetGroupProps(element, properties);
  • Network accessline 635
    "http://schemas.microsoft.com/office/word/2010/wordprocessingGroup", StringComparison.Ordinal))
  • Network accessline 2082
    // Build w14:gradFill XML via raw OpenXml         var w14Ns = "http://schemas.microsoft.com/office/word/2010/wordml";
  • Network accessline 2083
    var w14Ns = "http://schemas.microsoft.com/office/word/2010/wordml";
  • Network accessline 2084
    var mcNs = "http://schemas.openxmlformats.org/markup-compatibility/2006";
  • Network accessline 2110
    private static void RemoveCellGradient(TableCellProperties tcPr)     {         var mcNs = "http://schemas.openxmlformats.org/markup-compatibility/2006";
  • Network accessline 2111
    {         var mcNs = "http://schemas.openxmlformats.org/markup-compatibility/2006";         var existing = tcPr.ChildElements
  • Network accessline 2112
    var mcNs = "http://schemas.openxmlformats.org/markup-compatibility/2006";

src/officecli/Handlers/Word/WordHandler.StyleList.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 357
    foreach (var child in source.ChildElements)         {             if (child.NamespaceUri != "http://schemas.microsoft.com/office/word/2010/wordml") continue;
  • Network accessline 358
    {             if (child.NamespaceUri != "http://schemas.microsoft.com/office/word/2010/wordml") continue;             // Remove existing w14 element with same local name, then add the new one
  • Network accessline 359
    if (child.NamespaceUri != "http://schemas.microsoft.com/office/word/2010/wordml") continue;

src/officecli/Handlers/Word/WordHandler.View.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Handlers/WordHandler.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 544
    private const string RelNs = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";
  • Network accessline 1965
    private static readonly (string prefix, string uri)[] _wordFragmentNs =     {         ("w",   "http://schemas.openxmlformats.org/wordprocessingml/2006/main"),
  • Network accessline 1966
    {         ("w",   "http://schemas.openxmlformats.org/wordprocessingml/2006/main"),         ("r",   "http://schemas.openxmlformats.org/officeDocument/2006/relationships"),
  • Network accessline 1967
    ("w",   "http://schemas.openxmlformats.org/wordprocessingml/2006/main"),
  • Network accessline 1968
    ("r",   "http://schemas.openxmlformats.org/officeDocument/2006/relationships"),
  • Network accessline 1969
    ("a",   "http://schemas.openxmlformats.org/drawingml/2006/main"),
  • Network accessline 1970
    ("wp",  "http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing"),
  • Network accessline 1971
    ("mc",  "http://schemas.openxmlformats.org/markup-compatibility/2006"),
  • Network accessline 1972
    ("pic", "http://schemas.openxmlformats.org/drawingml/2006/picture"),
  • Network accessline 1973
    ("w14", "http://schemas.microsoft.com/office/word/2010/wordml"),
  • Network accessline 1974
    ("wps", "http://schemas.microsoft.com/office/word/2010/wordprocessingShape"),
  • Network accessline 1975
    ("wpg", "http://schemas.microsoft.com/office/word/2010/wordprocessingGroup"),
  • Network accessline 1976
    ("a14", "http://schemas.microsoft.com/office/drawing/2010/main"),

src/officecli/Help/SchemaCrc.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Help/SchemaHelpFlatRenderer.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Help/SchemaHelpLoader.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Help/SchemaHelpRenderer.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/McpInstaller.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)
  • Network accessline 306
    private static void InstallOpenCode() =>         InstallJson("OpenCode", GetOpenCodeConfigPath(), "mcp", openCodeShape: true,             schemaUrl: "https://opencode.ai/config.json");
  • Network accessline 308
    schemaUrl: "https://opencode.ai/config.json");

src/officecli/McpServer.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Program.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/ResidentClient.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/ResidentDirtyMarker.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/ResidentServer.cs

  • Network accessline 1
    // Copyright 2026 OfficeCLI (https://OfficeCLI.AI)

src/officecli/Resources/chartex-colors.xml

  • Network accessline 1
    <cs:colorStyle xmlns:cs="http://schemas.microsoft.com/office/drawing/2012/chartStyle" xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" meth="cycle" id="10"><a:schemeClr val="accent1"/><a:schemeClr val="accent2"/><a:schemeClr 

src/officecli/Resources/chartex-style.xml

  • Network accessline 1
    <cs:chartStyle xmlns:cs="http://schemas.microsoft.com/office/drawing/2012/chartStyle" xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" id="419"><cs:axisTitle><cs:lnRef idx="0"/><cs:fillRef idx="0"/><cs:effectRef idx="0"/><cs:

src/officecli/Resources/preview.js

  • Executable scriptline 1
    Executable file

src/officecli/Resources/watch-overlay.js

  • Executable scriptline 1
    Executable file
  • Network accessline 178
    function postSelection(paths) {         fetch('/api/selection', {
  • Network accessline 179
    fetch('/api/selection', {
  • Network accessline 686
    var newRow = Math.max(0, currentRow + dRows);         var newCol = Math.max(0, currentCol + dCols);         fetch('/api/send', {
  • Network accessline 687
    var newCol = Math.max(0, currentCol + dCols);         fetch('/api/send', {             method: 'POST',
  • Network accessline 688
    fetch('/api/send', {
  • Network accessline 742
    fetch('/api/send', {
  • Dangerous shell operationline 838
    var rm = hp.match(/^(\/[^/]+)\/row\[(\d+)\]$/);

src/officecli/Resources/watch-sse-core.js

  • Executable scriptline 1
    Executable file
  • Network accessline 40
    function _replaceDocumentBody(msg) {         fetch('/').then(function(r) { return r.text(); }).then(function(html) {
  • Network accessline 41
    fetch('/').then(function(r) { return r.text(); }).then(function(html) {
  • Network accessline 145
    }         });         fetch('/').then(function(r) { return r.text(); }).then(function(html) {
  • Network accessline 146
    });         fetch('/').then(function(r) { return r.text(); }).then(function(html) {             var doc = new DOMParser().parseFromString(html, 'text/html');
  • Network accessline 147
    fetch('/').then(function(r) { return r.text(); }).then(function(html) {

src/officecli/officecli.csproj

  • Network accessline 9
    <Authors>goworm</Authors>     <Company>OfficeCLI</Company>     <Copyright>Copyright © 2026 OfficeCLI (https://OfficeCLI.AI)</Copyright>
  • Network accessline 10
    <Company>OfficeCLI</Company>     <Copyright>Copyright © 2026 OfficeCLI (https://OfficeCLI.AI)</Copyright>     <IncludeSourceRevisionInInformationalVersion>false</IncludeSourceRevisionInInformationalVersion>
  • Network accessline 11
    <Copyright>Copyright © 2026 OfficeCLI (https://OfficeCLI.AI)</Copyright>

How the signals fit together

Facts from a static read of the files at the pinned commit. They describe what the code does, not why.

Some files could not be read; the facts below still hold.

Combined signals: 2 facts
  • Passes content downloaded from d.officecli.ai to an interpreterSKILL.md:16High confidence
  • Passes content downloaded from d.officecli.ai to an interpreterSKILL.md:19High confidence
Signal confidence: 498 facts

and 448 more

Only the first 500 facts are listed.

Works with

Agent compatibility, from the files in this repository
AgentStatusEvidenceInstall to
Claude CodeCompatibleStandard SKILL.md SKILL.md.claude/skills/<skill-name>/
CodexCompatibleStandard SKILL.md SKILL.md.agents/skills/<skill-name>/
CursorCompatibleStandard SKILL.md SKILL.md.cursor/skills/<skill-name>/
Gemini CLICompatibleStandard SKILL.md SKILL.md.gemini/skills/<skill-name>/
GitHub CopilotCompatibleStandard SKILL.md SKILL.md.github/skills/<skill-name>/
OpenCodeCompatibleStandard SKILL.md SKILL.md.opencode/skills/<skill-name>/
  • Native The repository ships a manifest, folder or frontmatter field for this agent.
  • Compatible A standard SKILL.md that this agent can read.
  • Unknown No evidence either way.

Derived automatically from paths, manifests and frontmatter. Not tested on each agent.

Explore alternatives and comparisons

Add this badge to your README

It updates every night and links to this page.

iOfficeAI/OfficeCLI: #62 on hotskills, 33.1k stars

[![iOfficeAI/OfficeCLI on hotskills](https://hotskills.dev/badge/iofficeai-officecli.svg)](https://hotskills.dev/skill/iofficeai-officecli/)