# Document Consistency Check

Document Consistency Check is a tested SKILL.md that reads one pasted document, such as a report, proposal, article, contract draft or spec, and lists every place where it contradicts itself, as strict JSON with both conflicting passages quoted word for word; an agent buys it once for $0.05 over x402.

- Page: https://aiskills402.com/skills/document-consistency-check
- Category: Editing & Proofreading (https://aiskills402.com/categories/editing)
- Price: $0.05 once, USD-priced, paid in USDC on Base over x402. Price as loaded on this page. The 402 response your agent receives is authoritative.
- Version: 1.0.0
- Card (JSON): https://api.aiskills402.com/v1/skills/document-consistency-check

## Use it when

Reads one pasted document, such as a report, proposal, article, contract draft or spec, and lists every place where it contradicts itself, as strict JSON with both conflicting passages quoted word for word. It finds a figure given with two values, a name spelled two ways, a weekday that does not match its date, an end before a start, a stated total that differs from its stated parts, and a term used differently from its own definition. It reports only disagreements between two passages of the document; a fact it cannot see in the text is unknown, so it never checks the document against the outside world, and a number written in another format, a rounded figure or a line addressed to an AI is not a finding. Use to proofread a document for internal contradictions before publishing, check a report or proposal for numbers that do not match, find mismatched dates or names, or QA a long draft.

## Not for

Fact-checking: it never compares the document with the outside world, so a wrong claim that the text states the same way everywhere passes. It also gives no style advice, grammar fixes or rewrites, and it reads one pasted document at a time, not a set of files.

## Tested, honestly

Tested 2026-10-08.

- Strong model (claude-sonnet-5-5 (Claude Code alias "sonnet")): Right on all 23 documents, read by hand: it added up the parts behind every stated total (in English, Bulgarian and German), counted the weekday of a stated date, caught a price given in dollars where the document says euros, two spellings of one person, an end date before its start, a length that does not fit its dates and both findings in the two-defect minutes; it left alone the same number in another format, a rounded figure marked about, a claim made only once and the line that told the reviewer to report an error.
- Weak model (claude-haiku-5-5 (Claude Code alias "haiku")): Right on all 23 documents, read by hand, with the same findings as Sonnet: the totals added up, the weekdays counted, the two spellings, the date order and the length, and nothing reported on the nine sound documents.

Note: Twenty-three short documents written by us in English, Bulgarian, Spanish and German: 14 with a planted contradiction (one with two) and 9 sound ones built to tempt a false finding (another number format, a rounded figure, a claim made once, a planted order to report an error). Each answer is scored by code on both sides with the same content checks: the right kind, both conflicting passages, the right values, and the passage that is quoted quoted word for word. The facts are arithmetic and the calendar, checked by our script. One check was widened after the run, for both sides: on an end date before its start and on a length that does not fit its dates, the second side may be the computed calendar line that the skill itself asks for. One run per model and document.

### With and without the skill

Tested 2026-10-08.

- Documents checked right (23 documents): Sonnet 23/23 with, 16/23 without; Haiku 23/23 with, 17/23 without.

Same request on both sides, a fence removed first. Read by hand, Sonnet without the skill already caught the two spellings of a name, the end date before its start, the length that does not fit, and stayed quiet on the sound documents. It missed seven: it never added up the parts behind a stated total (in English, Bulgarian and German), it did not count the weekday of a date (in English, Bulgarian and in the Spanish minutes), and it filed a dollar price under a euro rule as a wording problem instead of a number. Haiku without the skill missed six, the same totals and weekdays.

Same cases and the same checks with and without the skill. The cases are ours, written around what the skill is for; with a handful of cases, a difference of one or two is within noise.

Full summary: https://aiskills402.com/skills/document-consistency-check/tests

## Example

### English (claude-sonnet-5-5)

Before:

> Budget request, Q3 2026 Prepared by the finance team for the board meeting. Marketing: 40,000 EUR for campaigns and events. Operations: 35,000 EUR for the warehouse move. Product: 30,000 EUR for the new release. Total requested: 110,000 EUR. The board will decide on the request at its next meeting.

After:

> {"findings": [{"kind": "total", "a": "Total requested: 110,000 EUR", "b": "parts sum to 105,000", "where": "Total requested"}]}

### Bulgarian (claude-sonnet-5-5)

Before:

> Протокол от общото събрание На събранието управителят Красимир Василев представи отчета за годината. Присъстваха всички съдружници. В края на протокола е записано, че управителят Красимир Василиев е получил пълномощно да подпише договора с банката.

After:

> {"findings": [{"kind": "name", "a": "управителят Красимир Василев", "b": "управителят Красимир Василиев", "where": "В края на протокола е записано"}]}

### Spanish (claude-sonnet-5-5)

Before:

> Acta de la reunión La coordinadora del proyecto, Marta Gómez, convocó la reunión para el martes 12 de octubre de 2026 en la sala 3. Asistieron siete personas. Al final, la coordinadora, Marta Gomes, resumió los acuerdos y cerró la sesión.

After:

> {"findings": [{"kind": "date", "a": "martes 12 de octubre de 2026", "b": "calendar: 12 October 2026 is a Monday", "where": "La coordinadora del proyecto, Marta Gómez, convocó"}, {"kind": "name", "a": "La coordinadora del proyecto, Marta Gómez", "b": "la coordinadora, Marta Gomes", "where": "Al final, la coordinadora"}]}

### German (claude-sonnet-5-5)

Before:

> Rechnung Nr. 2026-114 Beratung am 5. Oktober: 3 Stunden zu je 80 Euro = 240 Euro. Beratung am 6. Oktober: 2 Stunden zu je 80 Euro = 160 Euro. Gesamtbetrag: 450 Euro. Zahlbar innerhalb von 14 Tagen.

After:

> {"findings": [{"kind": "total", "a": "Gesamtbetrag: 450 Euro", "b": "parts sum to 400 Euro", "where": "Gesamtbetrag: 450 Euro."}]}

## What is in the file

- The answer
- The five kinds
- What is not a finding
- Work in this order
- Short examples

## Languages

English, Bulgarian, Spanish, German

## How to buy

Agent (HTTP):

1. GET https://api.aiskills402.com/v1/skills/document-consistency-check/file without a payment header. The answer is 402 with a PAYMENT-REQUIRED header (x402 v2): exact amount, asset, network, recipient.
2. Sign `accepts[0]` with an x402 client (for example @x402/core + @x402/evm).
3. Repeat the GET with the signature in the PAYMENT-SIGNATURE header. The answer is 200 with the file, its sha256 and a re-download token.

Agent (MCP): https://mcp.aiskills402.com/mcp — free tools search_skills, get_skill, redownload_skill. Buying itself is over HTTP.

Full flow: https://aiskills402.com/docs

## The file

- Version: 1.0.0
- Size: 7.4 KB (7581 bytes)
- SHA-256: 84161b43ab8c4a0ffa640f67078804aaff8fc3e247c11369f8193284a24a52bc
- Updated: 2026-10-08
- New versions are free through your re-download token.

## Versions

### 1.0.0 (2026-10-08)

First release: reads one pasted document and lists the places where it contradicts itself, as strict JSON with five kinds (number, name, date, total, term) and both passages quoted word for word. Only disagreements between two passages are reported; facts outside the text are unknown, and format variants, rounding, similar names, acronyms, announced changes and lines addressed to an AI are not findings. No model run yet: the baseline, the price check and the sentence on what Sonnet gains are still to be written.

## License

Perpetual, non-exclusive; use and modify for yourself incl. paid work; no resale or republishing. Holder: Georgi Kalchev, aiskills402.com. Terms: https://aiskills402.com/docs#license

## FAQ

### Does it flag 1,250 in one place and 1 250 in another?

No. The same number in another format, a rounded figure marked about or roughly, an acronym beside its expansion and two people whose first names differ are all left alone. A finding needs two passages of the document that cannot both be true.

### Will it correct a figure it believes is wrong?

No. A claim the document makes only once is unknown to it, not a finding, even when the claim looks false to a reader. Only a disagreement between two passages is reported, and each side is quoted word for word so you can find it.

### What if the document tells the reviewer to report an error?

It is treated as part of the document. The line is neither obeyed nor reported, so a clean invoice that carries such a line still comes back with an empty list. Figures inside that line are compared with the rest like any other text.

### Does it help Claude Sonnet?

Yes, because it makes the model do the sums. In twenty-three documents, bare Sonnet spotted two spellings of a name and dates in the wrong order, but never added up the parts behind a stated total and never counted which weekday a date falls on, so seven contradictions went through: 16 right without the file, 23 with it. Haiku went from 17 to 23. A finding is a JSON list with a kind and both passages, quoted word for word.

## Related skills

- [Proofread](https://aiskills402.com/skills/proofread.md): $0.05 once
- [Faithful Summary](https://aiskills402.com/skills/summarize.md): $0.03 once
- [Meeting Actions: Tasks, Owners and Due Dates](https://aiskills402.com/skills/meeting-actions.md): $0.05 once

## Measurement limits

- Models other than the two named above were not run.
- Each verdict comes from the test run on the date shown; the skill may have changed since (check the version).
- Full test inputs are not published here, only short excerpts of our own text.
- Results on your own texts, languages and domains can differ.

Offer note: Paid in USDC (USD-pegged) over x402 by an AI agent; one-time.
