Borrowing it
Nothing to install: this file belongs to lowtidebuild/contract-review. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/lowtidebuild/contract-review/main/.claude/skills/doc-parser/SKILL.mdgit clone --depth 1 https://github.com/lowtidebuild/contract-reviewWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/lowtidebuild/contract-review/doc-parser)<a href="https://agentmods.dev/skills/lowtidebuild/contract-review/doc-parser"><img src="https://agentmods.dev/badge/skills/lowtidebuild/contract-review/doc-parser/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/lowtidebuild/contract-review/doc-parser"><img src="https://agentmods.dev/badge/skills/lowtidebuild/contract-review/doc-parser.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00000 | $0.00559 |
| Opus 5.5 | $0.00000 | $0.00224 |
| Sonnet 5.5 | $0.00000 | $0.00112 |
| Haiku 4.5 | $0.00000 | $0.00056 |
Grade A, and why
doc-parser scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 53 lines — stays where its author put it; the contents beside it link to each section on GitHub.
doc-parser Skill
Parse and normalize contract documents from various formats into standardized outputs.
Capabilities
-
Format Detection (
scripts/detect-format.py)- Validates file format (DOCX, PDF, MD, TXT, HTML)
- Checks file integrity via magic bytes
- Rejects legacy
.docbinaries with explicit.docxconversion guidance - Usage:
python3 detect-format.py <file_path>
-
Fingerprinting (
scripts/fingerprint.py)- Computes SHA-256 hash
- Generates provisional
doc_id - Checks for duplicates against
documents.json - Usage:
python3 fingerprint.py <file_path> - Exit code 2 = exact duplicate found
-
Normalization (
scripts/normalize.py)- Converts any supported format to wrapped
clean.md+ rawplain.txt - DOCX: parses document.xml preserving headings, lists, tables
- PDF: uses pdftotext → pymupdf → pypdf fallback chain
- Flags likely image-only/scanned PDFs as
needs_ocr: trueinstead of silently failing - Wraps
clean.mdin<untrusted_contract_content source="..."> ... </untrusted_contract_content> - Validates wrapper with
python3 normalize.py --validate-wrapper <clean.md> - Validates output quality (text length ratio check)
- Usage:
python3 normalize.py <file_path> <output_dir>
- Converts any supported format to wrapped
When to Use
- At the start of any ingestion pipeline (WF1 Steps 1-3)
- At the start of any review pipeline (WF2 Steps 1-2)
- When a new document enters the system
Output Artifacts
| Artifact | Location | Description |
|---|---|---|
| Format detection result | stdout (JSON) | File format, size, support status |
| Fingerprint result | stdout (JSON) | doc_id, sha256, duplicate status |
clean.md |
{output_dir}/clean.md |
Markdown-formatted normalized text inside the untrusted-content wrapper |
plain.txt |
{output_dir}/plain.txt |
Plain text without formatting |
Quality Checks
- Normalization validates that output text length is ≥ 50% of source (10% for binary formats)
- Heading count is tracked for structural integrity comparison
- Review/ingestion agents must reject wrapperless
clean.mdartifacts - Empty files are rejected at detection stage
- Legacy
.docfiles must be converted to.docxbefore normalization - Scanned PDFs are reported as OCR-required when no extractable text is detected
What ships with it
3 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.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago First seen · 53 lines · 0 tokens per session scan A d35cf124dcbb
doc-parser is a skill published in the GitHub repository lowtidebuild/contract-review (41 stars, last pushed 3mo ago), licensed Apache-2.0. It costs nothing until one of its globs matches a file; then it loads 559 tokens. 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-30.
Other skills, from other repositories
patent-reader
A plain-language reader for Chinese patents that turns a publication number or PDF into notes, diagrams, and an Obsidian entry. Obsidian is a note-taking app that stores linked Markdown files.
software-copyright-materials
A workflow for creating Chinese application materials for software copyright registration from a real software project.
meta-pdf-reformat-pipeline
Modernize a legacy PDF: structural extraction → natural-language rewrite of problem pages → audit summary → re-merge into the final PDF.
ectd-xml-compiler
Automatically convert uploaded drug application documents (Word/PDF) into XML skeleton structure compliant with eCTD 4.0/3.2.2 specifications.
audit-export
Export the full CocoAudit trail as a stakeholder-ready compliance document.
diagramar-peca
Transforma qualquer peça já escrita (.md ou texto) em um PDF bem diagramado, com Legal Design simples — capa, destaques, citações em bloco, fundamentos e linha do tempo. Não altera o conteúdo, só a forma visual. Use quando quiser entregar uma petição, contrato, parecer ou notificação com aparência profissional e…