Free · About five minutes · No signup

The Document Challenge: test your documentation accuracy against your code

  • Your coding agent picks ten claims from your published docs
  • It checks each one against the source
  • It returns a table: what matches, what the code contradicts, and what nothing in the repo can confirm
  • Nothing is sent to us

Runs in Claude Code, Codex or Cursor, in your own repo.

A developer's coding agent reads a GitHub, GitLab or Bitbucket repository and validates it against the product's published documentation

What comes back

10Claims checked
6Docs match code/source
3Docs do not match code
1Can't be checked

Illustrative result. Each mismatch comes with the doc line, the code line, and a link to both.

Step 1 · You

Point the agent at your repository

Open your coding agent in the root of the repo whose docs you want to test. The agent reads the source there. Nothing is uploaded to Git2Docs.

Add the repo's web address and every source location in the result becomes a link to the exact line, at the commit you tested.

GitHub, GitLab and Bitbucket addresses all produce working line links. Leave it blank and you get path:line instead, which your editor can open.

Step 2 · You

Point it at your published documentation

Test the docs your users actually read. That is usually the public docs site, but a docs folder in the repo works too.

If your docs site renders in JavaScript and the agent can't fetch it, point to the docs source folder instead.

A URL gives you links to the published page at the nearest heading. A folder gives you file:line.

Step 3 · Your agent

Run the documentation audit prompt

Your prompt below already includes your repo and docs. Pick your agent, copy the prompt, paste it in. The agent grades your docs; it doesn't patch them.

Your coding agent

  1. Open a terminal in your repo root and start Claude Code:cd path/to/your-repo && claude
  2. Paste the prompt and send it. Expect a few minutes while it reads.
  3. When it finishes, run git status. Nothing should have changed.

Why the prompt is strict

The ten claims are fixed before the agent opens any source. Otherwise it goes hunting for problems, and the number means nothing.

No edits allowed. Otherwise the agent starts fixing the docs it was asked to grade.

document-challenge-prompt.txt
You are auditing documentation accuracy. Do not edit any files.

Repository: the repository you are running in.
Published docs: [a path in the repo, or the URL where the docs are published]

1. Find the published docs at the location above.

2. Choose ten claims to check, and fix that list before you open any source.
   Spread them across whichever of these exist:
   - 2-3 commands or API calls shown as examples
   - 2-3 parameter defaults, types, or required/optional status
   - 1-2 version or compatibility statements
   - 2-3 behavioural claims ("returns X", "retries N times", "fails when Y")
   Do not skip a claim because you expect it to be correct, and do not go
   hunting for ones you expect to be wrong.

3. For each claim, find the authoritative place in the source and compare.
   Three verdicts, no others:
   - Matches: the source confirms it.
   - Mismatch: the source contradicts it, or the documented flag, parameter,
     endpoint or symbol does not exist in the source. Quote the line.
   - Can't check: nothing in the source settles it, because the behaviour
     lives in a dependency or the claim is about runtime or infrastructure.
     This is NOT a pass.

4. Output one markdown table with these columns:
   # | Claim as documented | Where documented | What the source says | Verdict
   Write every location as something the reader can click:
   - Documentation locations as markdown links to the published page at the nearest heading anchor: [page#anchor](URL#anchor).
   - Source locations as path:line relative to the repository root (for example internal/flags.go:88).

5. Then one line, exactly:
   Checked 10 · Matches N · Mismatches N · Can't check N

6. Then, for each Mismatch, a short block:
   ### Mismatch #<row> — <the claim in a few words>
   - Documented: <link> — "<the documented text>"
   - Source: <link> — `<the contradicting line>`
   - Cost to a user: <one sentence>

7. Then two sentences: which single mismatch would cost a user the most
   time, and what you were unable to verify at all.

8. Finally, a heading "Re-check list" and the ten claims as a numbered list,
   so the same ten can be checked again after the next release.

Do not fix anything, do not open a pull request, and do not generalise
beyond the ten claims you checked.

Step 4 · You

Read your results: every mismatch, linked to the docs and the code

The agent returns one table, one line of counts, and a detail block for each mismatch. Every location is a link, so you can jump straight to the doc line and the code that contradicts it. Select a row below to see how it reads.

Claude Code · ~/jobrunnerIllustrative example
Checked 10 · Matches 6 · Mismatches 3 · Can't check 1

### Mismatch #2 — --timeout default

Documentedreference/cli#timeout — “--timeout Request timeout. Default: 30s.”Sourceinternal/flags.go:88
DefaultTimeout = 10 * time.Second
Cost to a userAnyone tuning from the docs expects 30 seconds and gets 10. Long jobs fail and the docs point them the wrong way.

The --timeout default would cost users the most time: anyone tuning from the docs expects 30 seconds and gets 10. Retry behaviour on a 5xx couldn't be verified at all, because it lives in the SDK, not this repo.

Jump to the doc line

Doc locations link to the published page at the nearest heading, or to file:line in your docs folder.

Jump to the code

Source locations link to the exact line at the commit you tested, so the link still points at the evidence after the code moves.

Keep the re-check list

The output ends with your ten claims. After the next release, ask your agent to re-check the same ten. The second run is the one that shows drift.

Reading the number

How to read your documentation accuracy score

Whatever comes back is a floor on your documentation accuracy, not a verdict. Read it as “at least this wrong, and this much unknown.” Never as “our docs are 33% wrong.”

3 of 9

Observed error rate

Mismatches ÷ (Matches + Mismatches). The share of checkable claims your code contradicts. In the example, a third.

1 of 10

Unverified

Can't check is not a pass. It is where an invented claim survives: nothing to ground on when the page was written, nothing to grade against now.

No threshold

No passing score

Ten for ten means you have done once, by hand, what has to happen every release. Ten claims is a sample, so a clean run is good news, not proof.

Two limits worth knowing. The agent may be grading docs it wrote. It catches renamed parameters, changed defaults and examples that no longer run, but it can't catch a claim with nothing in the code to check against. And one run is a snapshot: drift is a rate, so the number means most the second time, on the same ten claims.

FAQ

Document Challenge FAQ

Is anything sent to Git2Docs?
No. The prompt runs in your own coding agent, against your own repo. We never see your code, your docs or your result unless you choose to share it.
Which coding agents does it work with?
Any agent that can read files in your repo and, if your docs are on a website, fetch a URL. We wrote and tested the prompt for Claude Code, Codex and Cursor.
Will the agent change my files?
The prompt forbids edits and pull requests. Run it on a clean working tree and check git status afterwards; nothing should have changed.
What is a good documentation accuracy score?
There is no passing score. Mismatches divided by checkable claims is a floor on your error rate, and Can’t check is the part nobody has verified. Both matter more the second time you run it.
Does this work for docs written by ChatGPT or Claude?
Yes, and that is who it is built for. Watch the Can’t check count closely: a claim with nothing in the code behind it is where an invented detail hides.
Why ten claims?
Ten is enough to surface the usual drift (changed defaults, renamed flags, tightened limits) and small enough to read in one sitting. It is a sample, not a full audit.

Step 5 · Only if you want it

Measure documentation accuracy on every release, not once

Your agent checked ten claims, once. Git2Docs generates your docs from the code you commit, measures accuracy and coverage across your whole public surface, and re-checks them as each release ships.

  • Docs generated from your code, in one consistent voice
  • Accuracy and coverage tracked per release, mismatches to zero
  • A support chatbot that answers only from your docs and cites the section

No card required for the trial.

Bring your number

Your challenge result is the week-0 baseline for a 30-day pilot.

Week 0
Your ten claims and counts, plus doc lag and L1 tickets
Weeks 1–2
Connect one repo, generate, validate against your deployment
Weeks 3–4
Publish, re-run the same ten claims, compare