Reference
FAQ
Scope, limits, and where officelens fits next to the tools you already use.
Questions
Are my documents uploaded anywhere?
No. The CLI has no network code, and the playground runs the same bundled rules entirely in your browser tab. No file, or any part of one, is transmitted.
Does it need Word, PowerPoint, or a JVM?
No. officelens opens the OOXML zip and parses its XML directly. There is no Office installation, no headless renderer, and no Java runtime.
What do the exit codes mean?
0 when nothing meets the threshold, 1 when findings meet --fail-on (default error), 2 for invalid usage or a package that cannot be parsed as OOXML, and 3 when an input or the report could not be read or written.
Can I gate a pull request on it?
Yes. Use the exit codes for a simple gate, or emit SARIF and upload it with github/codeql-action/upload-sarif so findings appear as code-scanning annotations.
Does it replace the Microsoft Accessibility Checker?
No. It complements it. The Microsoft checker is a GUI with no CLI or JSON; officelens runs headless in CI and emits machine-readable output. Neither replaces a human review.
Does it cover spreadsheets?
Not yet. The current rule set targets DOCX and PPTX. .xlsx support is out of scope for now.
Limitations
Static analysis only
officelens is static XML analysis: it reads the parts directly rather than rendering them, so it cannot compute colour contrast. Not every WCAG success criterion is machine-checkable, so it covers the structural, high-signal failures that block assistive technology. Spreadsheets (.xlsx) are not covered yet.
How it compares
.docx only. No CLI and no JSON, so it cannot sit in a pipeline or gate a pull request. accessr.netooxml-cli, xarsh/ooxml-validator, and openxml-audit check schema and well-formedness only, with no WCAG semantics.