You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+12Lines changed: 12 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -63,6 +63,8 @@ Or in Claude Code, use the slash command: `/bibtidy refs.bib`
63
63
64
64
bibtidy verifies each entry against [Google Scholar](https://scholar.google.com/) and [CrossRef](https://search.crossref.org/), fixes errors, and upgrades stale preprints to published versions. Every change includes the original entry commented out above so you can compare or revert, plus one or more `% bibtidy:` URL lines for verification. We recommend using git to track changes. If using [Overleaf](https://www.overleaf.com/), this can be done with [git sync](https://docs.overleaf.com/integrations-and-add-ons/git-integration-and-github-synchronization). To remove bibtidy comments after review, ask your agent to remove all `bibtidy` comments from the file.
65
65
66
+
bibtidy's output is non-deterministic: the same `.bib` file can yield different fixes across runs, and Claude Code and Codex may reach different conclusions on the same entry. See the [FAQ](#bibtidy) for why, and always verify changes via the `% bibtidy:` URLs before accepting them.
67
+
66
68
Note that bibtidy assumes standard brace-style BibTeX like `@article{...}`. Parenthesized forms like `@article(...)` are not supported. Special blocks such as `@string`, `@preamble`, and `@comment` are ignored by the parser.
67
69
68
70
### How it works
@@ -408,6 +410,16 @@ bibtidy needs to search Google Scholar, CrossRef, and conference/journal sites.
408
410
409
411
You shouldn't, and that's by design. The point of bibtidy is to surface potential hallucinations and errors in your bibliography. For every changed entry, bibtidy includes a `% bibtidy:` URL so you can verify the correction yourself. Entries marked unchanged are very likely correct, but not guaranteed. Always check the provided links before accepting changes.
410
412
413
+
**Why do I get different results on different runs, or between Claude Code and Codex?**
414
+
415
+
bibtidy is non-deterministic. Running it twice on the same `.bib` file can produce different fixes, and Claude Code and Codex may reach different conclusions on the same entry. There are a few reasons for this:
416
+
417
+
- Search results vary between queries. Google Scholar and CrossRef can return slightly different candidate sets for the same title, and the web itself changes over time as new publications, DOIs, and venue pages appear.
418
+
- Agent decisions depend on LLM sampling, which is stochastic. Given ambiguous evidence (e.g. a preprint with a near-match published version), different runs may land on `fix`, `review`, or `unchanged`.
419
+
- Claude Code and Codex use different underlying models with different tool surfaces, so their web-search behavior and judgment thresholds differ.
420
+
421
+
This is why every change ships with `% bibtidy:` URLs: you should treat bibtidy's output as a reviewed first draft, not a final answer. Re-running on an already-tidied file is safe, and a second pass sometimes catches issues missed in the first.
422
+
411
423
**How does bibtidy compare to other tools?**
412
424
413
425
[CiteAudit](https://arxiv.org/abs/2602.23452) verifies bibliographic metadata but is a closed system. bibtidy is fully open-source, transparent (every change includes the original entry commented out and a source URL so you can verify exactly what changed and why), and it fixes issues (wrong authors, stale preprints, incorrect pages) directly in your .bib file rather than just flagging them.
<p class="intro">bibtidy cross-checks BibTeX entries against Google Scholar, CrossRef, and conference/journal sites. It upgrades arXiv/bioRxiv preprints to published versions (even when the title changed upon publication), corrects metadata (authors, pages, venues), and flags duplicate entries.</p>
475
475
476
+
<p class="intro"><strong>Note:</strong> bibtidy's output is non-deterministic. The same <code>.bib</code> file can yield different fixes across runs, and Claude Code and Codex may reach different conclusions on the same entry, due to variability in search results, LLM sampling, and differences between the two agents' underlying models. Every change ships with <code>% bibtidy:</code> URLs for verification — treat the output as a reviewed first draft, not a final answer.</p>
Copy file name to clipboardExpand all lines: docs/index.html
+2Lines changed: 2 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -268,6 +268,8 @@ <h1>bibtools</h1>
268
268
<divclass="container">
269
269
<pclass="intro">bibtidy cross-checks BibTeX entries against Google Scholar, CrossRef, and conference/journal sites. It upgrades arXiv/bioRxiv preprints to published versions (even when the title changed upon publication), corrects metadata (authors, pages, venues), and flags duplicate entries.</p>
270
270
271
+
<pclass="intro"><strong>Note:</strong> bibtidy's output is non-deterministic. The same <code>.bib</code> file can yield different fixes across runs, and Claude Code and Codex may reach different conclusions on the same entry, due to variability in search results, LLM sampling, and differences between the two agents' underlying models. Every change ships with <code>% bibtidy:</code> URLs for verification — treat the output as a reviewed first draft, not a final answer.</p>
0 commit comments