| name | reference-checking |
| description | Verify citation integrity in academic papers before submission. Use when the user asks to "check my references", "verify citations", "clean up my bib file", "find missing citations", or "check for broken references". Also use proactively before any paper submission — when the user says "ready to submit", "final check", or "pre-submission review", reference checking should be part of that process. Handles BibTeX validation, \cite{} key matching, duplicate detection, completeness checks, and orphaned reference detection.
|
Reference Checking
Verify that every citation in a paper is correct, complete, and consistent. Reference
errors are embarrassing and easy to prevent — reviewers notice them immediately.
Core Checks
Run these checks in order. Each one builds on the previous.
1. Parse the Bibliography
Read the .bib file(s) and build an index of all entries.
For each entry, check:
- Required fields present — At minimum: author, title, year, and venue (booktitle
for @inproceedings, journal for @article). Flag entries missing any of these.
- Author format — Should be
{Last, First and Last, First} or
{Last, First and Last, First and Last, First}. Watch for:
- Missing braces around names with particles ("van der Waals" needs
{van der Waals})
- "and" vs "," confusion
- Corporate authors not wrapped in double braces (
{{Google Research}})
- Title casing — BibTeX lowercases titles by default. Proper nouns, acronyms, and
model names need protecting with braces:
{ImageNet}, {BERT}, {Bayesian}.
Scan for likely unprotected terms.
- Year plausibility — Flag years in the future or before 1900.
- Duplicate entries — Same paper under different keys. Check by title similarity
(normalize case and whitespace) and by author+year combination.
- Entry type correctness — arXiv preprints should be
@article with
journal = {arXiv preprint arXiv:XXXX.XXXXX}, not @inproceedings.
Published conference papers should be @inproceedings, not @misc.
2. Match Citations to Bibliography
Scan all .tex files for \cite, \citep, \citet, \citeauthor, \citeyear,
and other citation commands.
- Undefined references —
\cite{key} where key is not in any .bib file.
These produce LaTeX warnings and render as [?].
- Unused entries —
.bib entries never cited in any .tex file. Not an error,
but worth flagging — bloated bibliographies look sloppy.
- Key typos — When an undefined key is similar to an existing key (edit distance
≤ 2), suggest the correction. Common: underscore vs hyphen, missing year suffix,
capitalization differences.
3. Cross-Reference Consistency
Check that the paper's narrative and its citations agree:
- Phantom citations — Text says "Smith et al. [2023] showed..." but the actual
\cite points to a different paper, or the cited paper is by different authors
or a different year. Cross-check author names and years in the prose against the
.bib entry.
- Claims without citations — Statements like "Recent work has shown..." or
"It is well known that..." without a
\cite. These need backing.
- Multiple keys for one paper — Sometimes the same paper gets cited under
different keys in different sections. Unify them.
4. Completeness and Freshness
- Venue completeness — If a paper was on arXiv but has since been published at
a conference/journal, the
.bib should reference the published version. Search
for the title to check.
- Missing page numbers — Journal articles should have page numbers or article
IDs when available.
- DOI/URL — Not strictly required, but having DOIs makes references more robust.
Flag entries without either as a low-priority note.
- Retraction check — For critical references (those cited multiple times or
supporting key claims), verify they haven't been retracted. Search for
"[title] retracted" if uncertain.
5. Formatting Consistency
- Venue name consistency — Same conference should use the same abbreviation
throughout: don't mix "NeurIPS" and "Advances in Neural Information Processing
Systems" and "NeurIPS 2023". Pick one style and apply it.
- Author name consistency — The same person should appear the same way across
entries. Watch for "J. Smith" vs "John Smith" vs "Smith, J." for the same author.
- URL formatting — URLs should not have line-break artifacts or tracking
parameters. Clean them up.
Output Format
Present findings in priority order:
## Critical (will cause LaTeX errors or [?] markers)
- \cite{nonexistent_key} in intro.tex:42 — undefined. Did you mean `existing_key`?
- ...
## High (factual errors reviewers will notice)
- \cite{smith2023} in method.tex:87 — text says "Wang et al." but bib entry is by Smith et al.
- ...
## Medium (incomplete or inconsistent entries)
- Entry `vaswani2017`: missing booktitle field
- Entries `bert2019` and `devlin2019bert` appear to be the same paper
- ...
## Low (style and cleanup)
- 5 unused .bib entries: [list]
- Inconsistent venue naming: "CVPR" vs "IEEE/CVF Conference on Computer Vision..."
- ...
Workflow Tips
Start from LaTeX logs — If the user has compiled their paper, check the .log
file first. It lists all undefined references and multiply-defined labels. This
immediately surfaces critical issues.
Use \bibliography{} path — Find which .bib files are actually included by
checking the \bibliography{} or \addbibresource{} command in the main .tex file.
Don't assume — a repo might contain .bib files that aren't actually used.
Batch fixes — When you find issues, offer to fix them directly in the .bib file
rather than just reporting them. Group fixes so the user can review a single diff.
Automated Tools
Before doing manual checks, try running these if available — they catch the mechanical
issues instantly:
checkcites — Detects undefined citations and unused .bib entries. Run
checkcites main.aux after compilation. Covers most of Checks 1–2 automatically.
biber --validate-datamodel — Validates .bib entries against the BibLaTeX
data model: flags missing required fields, wrong entry types, and malformed data.
Only works if the paper uses biblatex/biber (not natbib/bibtex).
Use these tools for the mechanical checks, then focus manual effort on the harder
semantic checks (phantom citations, cross-reference consistency, venue freshness)
that tools can't catch.
What This Skill Does NOT Do
- Does not search for new papers to cite (use
deep-literature-review for that)
- Does not rewrite the Related Work section (use
research-paper-writing for that)
- Does not fix LaTeX compilation errors unrelated to references (use
latex-paper-formatting)