verify-docs

A verification procedure for generated Office and web documents, including DOCX, PPTX, XLSX, ODT, ODP, ODS, and HTML files. It checks file structure, library compatibility, package wiring, and whether content survives a round trip through the specified parser.

In plain words
What is it for?
Use it after generating documents or when checking files intended to open in Word, PowerPoint, Excel, LibreOffice, or the specified parsing system.
Why use it?
A file opening successfully is not enough: applications may repair malformed documents or hide structural problems. These checks help catch invalid output before it is delivered.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/sunholo-data/ailang-parse/verify-docs
Any agent
npx skills add sunholo-data/ailang-parse --skill verify-docs
Clone the repo
git clone --depth 1 https://github.com/sunholo-data/ailang-parse

Made for: Claude Code, Codex.

Per session 135 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 920 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00135 $0.00920
Opus 5 $0.00068 $0.00460
Sonnet 5 $0.00027 $0.00184
Haiku 4.5 $0.00014 $0.00092

Measured yesterday against content hash eb3587e3ae28, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

verify-docs scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.

The scan reads SKILL.md. This mod also ships 2 executable files (scripts/regen_and_verify.sh, scripts/verify_only.sh), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.claude/skills/verify-docs/SKILL.md · 91 lines

How it starts

The opening of the file, as written. The whole thing — 91 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Verify Generated Documents

Run the document generation verification loop to check that generated Office files are structurally valid, open in Python libraries, and roundtrip through AILANG Parse correctly.

What This Does

Three levels of verification on all files in data/examples/:

  1. L1 Structure — ZIP well-formedness, required entries present, XML validity
  2. L2 Library — python-docx, python-pptx, openpyxl open without errors, AND the DOCX table grid is inspected: every row must span exactly the columns w:tblGrid declares, and every cell must be iterable
  3. L2b Parts — DOCX package wiring (declared, related, present)
  4. L4 Roundtrip — Parse through AILANG Parse, verify blocks are preserved

Opening a file is not verifying it. LibreOffice tolerates malformed table geometry that python-docx rejects and Word offers to repair, so invalid output shipped twice while every check was green. Anything generated must have its structure read back, which is what the L2 grid assertion does.

Usage

Run the verification script:

uv run --with python-pptx --with openpyxl --with python-docx benchmarks/verify_generated.py

Also run the round-trip suite

verify_generated.py only covers data/examples/. After any parser or generator change also run:

uv run benchmarks/roundtrip_check.py    # parse -> markdown -> parse, 101 files

It asserts table dimensions, cell text, grid width and heading sequence survive a trip through markdown — the writer the office suite cannot see, because every golden is JSON.

Building a test document

The cheapest way to exercise the generators is to write markdown and convert it: front matter, inline formatting, links, images, fenced code, blockquotes, nested lists and aligned/spanned tables all round-trip. Headers, footers, comments and tracked changes are not expressible in markdown — convert an existing document that has them instead.

With Regeneration

If generator code has changed, regenerate demo files first, then verify:

Read the full file on GitHub · 91 lines

Files

What ships with it

2 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. yesterday First seen · 91 lines · 135 tokens per session scan A eb3587e3ae28

Subscribe to this mod's changes

verify-docs is a skill published in the GitHub repository sunholo-data/ailang-parse (0 stars, last pushed yesterday), licensed Apache-2.0. It adds 135 tokens to every session and 920 once invoked, about $0.0007 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

document-converter

Convert Office documents (PPTX, DOCX, XLSX, PDF, HTML, CSV, JSON, XML, images) to Markdown using Microsoft MarkItDown. Provides the agent with conversion strategies for academic and research workflows.

wentorai/Research-Claw · 50 tokens

office-router

Route Office requests into the correct xlsx, docx, or pptx workflow, while preferring Slidev for new presentation drafts unless .pptx is explicitly required.

matingai/crab · 38 tokens

doc-converter

Universal document format converter - DOCX, PDF, Markdown, HTML, TXT.

chainlesschain/chainlesschain · 19 tokens

document-processing

End-to-end document processing agent skill covering PDF manipulation (extract, merge, split, rotate, watermark, form-fill, OCR), DOCX creation and editing (templates, mail-merge, style management), XLSX spreadsheet handling (formulas, charts, pivot tables, data analysis), PPTX presentation generation (layouts, charts…

JPeetz/agent-skills · 174 tokens

docx-architecture-audit

Audit the office-open-xml-viewer DOCX layout architecture for a single immutable layout-to-paint pipeline. Use after major DOCX layout, pagination, measurement, paint, parser-model, worker, or compatibility changes, and before declaring Issue.

yukiyokotani/office-open-xml-viewer · 55 tokens

office-artifacts

Use when creating, opening, reading, or editing Office artifacts such as LibreOffice-native ODT/ODS/ODP files and compatibility DOCX/XLSX/PPTX files with the officeartifact tool.

agent0ai/agent-zero · 47 tokens