SybilGambleyyu

Most bibliography failures show up the night before arXiv or the journal deadline: placeholder DOIs, year pasted into volume=, inverted page ranges, invented case reporters. The fix is a paper repo that fails closed from day one.

One command

pip install https://github.com/SybilGambleyyu/citesure/releases/download/v0.5.68/citesure-0.5.68-py3-none-any.whl

citesure init my-paper
cd my-paper
citesure gate . --preset ci
citesure gate . --preset arxiv

Enter fullscreen mode Exit fullscreen mode

citesure init writes refs.bib, pre-commit hooks (gate --preset ci + soft-lint), .github/workflows/citesure.yml, and a short CITESURE.md for coauthors. Empty bibliographies skip hard-ID floors until entries appear.

What the gate checks

  • Soft-lint — placeholder number/issue, inverted pages, year-like volume/month/edition, unsafe keys, all-caps titles, missing venues, duplicate DOIs/titles
  • Health — hard-ID coverage floors
  • Promote dry-run — DOIs still buried in url=
  • Live verify — Crossref, doi.org, arXiv, PubMed, Europe PMC, DataCite, OpenAlex, CourtListener

Domain packs

Fifty-five live-clean packs (demography, sociology, political science, anthropology, ML, law, ecology, …):

citesure packs --gate-all
citesure packs --run anthropology-classics

Enter fullscreen mode Exit fullscreen mode

Evidence: 256/256 integrity · 209/209 claim pairs · 55 packs.

Source: github.com/SybilGambleyyu/citesure · Demo: citesure.sybilgambleyyu.workers.dev