Ref Verify
Zero-hallucination reference verification for Claude Code — live CrossRef/S2/PubMed verification, verbatim abstract traceability, retraction check
Install
git clone https://github.com/Moonweave-Research/ref-verifyInstall command taken from the project's README or registry entry. Always review code before running it.
README excerpt
Read full README on GitHub →ref-verify
Check a reference list before you submit it, and find the references that do not exist, point to a different paper, or were retracted.
Reference lists drafted by AI assistants, or copied from one manuscript to the next, pick up references that do not exist, DOIs that belong to another paper, and papers that were retracted. ref-verify compares each reference with CrossRef and tells you which ones to look at.
- Who it is for: researchers and students finishing a paper, thesis, or proposal, and the AI assistants that help them.
- What you get: one verdict per reference (
PASS,WARN,REJECT,UNVERIFIED) with the reason, in the terminal, as JSON, or as an HTML report. - How it runs: as an agent skill for citation verification (Claude Code, Cursor, Codex) or as a command-line tool. No server setup is required, and no account or API key.
Try it in 30 seconds
You need Python 3.10 or newer.
pipx install ref-verify # or run without installing: uvx ref-verify check-bib ...
curl -O https://raw.githubusercontent.com/Moonweave-Research/ref-verify/main/examples/references.txt
ref-verify check-bib references.txt
examples/references.txt
holds seven references, and a comment above each one says what it really is: three real papers,
one real paper cited with the wrong year, one made-up reference, one retracted paper, and a
Korean doctoral thesis that CrossRef does not index. This is the output of ref-verify 1.3.1:
7 references: 3 PASS, 1 WARN, 2 REJECT, 1 UNVERIFIED
VERDICT REFERENCE DOI
PASS 1. Pelrine, R., Kornbluh, R., Pei, Q., &… 10.1126/science.287.5454.836
PASS 2. Watts, D. J., & Strogatz, S. H. (1998)… 10.1038/30918 (resolved)
PASS 3. 김가은 (2024). IPA 분석을 통한 프로스… 10.5392/jkca.2024.24.09.361
WARN 4. Hochreiter, S., & Schmidhuber, J. (199… 10.1162/neco.1997.9.8.1735
DOI matches, but the year differs (reference: 1999; CrossRef: 1997).
REJECT 5. Pelrine, R., Kornbluh, R., & Pei, Q. (… 10.1002/adma.200390974
CrossRef has no record for this DOI (HTTP 404), and doi.org does not list it either.
REJECT 6. Wakefield, A. J., Murch, S. H., Anthon… 10.1016/s0140-6736(97)11096-0
CrossRef records this paper as retracted (notice DOI 10.1016/s0140-6736(10)60175-4); do
not use it as a source.
UNVERIFIED 7. 강동휘 (2025). 폴리(비닐피리딘) 기반… -
No matching CrossRef record was found; verify this reference manually.
PASS: matches CrossRef. WARN: check the difference named under it. REJECT: dead DOI, a different
paper, or retracted. UNVERIFIED: could not be confirmed automatically; that alone does not mean the
reference is wrong.
The command exits with code 2 because not every reference passed. CrossRef's data changes
over time, so a later run can differ slightly. To check your own list, export it from Zotero,
EndNote, or Mendeley as BibTeX or RIS, or paste it into a .txt file, and run
ref-verify check-bib <file>.
How to read a result
Similar plugs
Makes your AI agent think like the laziest senior dev in the room. The best code is the code you never wrote.
Turn any codebase, with its docs, SQL schemas, configs, and PDFs, into a queryable knowledge graph. A /graphify skill for Claude Code, Cursor, Codex, and Gemini CLI: local…
Why use many token when few token do trick. Viral skill + proxy for coding agents that cuts 65% of tokens by talking like a caveman.
Production-grade engineering skills for AI coding agents.
The 1st Collaborative AI Design Agent Workspace. Local-first and open source. Create prototypes, websites, apps, dashboards, presentations, images, and videos with your team…