Skip to main content

Citation verification and analysis for LaTeX papers

Project description

bibsleuth

Citation verification and analysis for LaTeX papers. Given .tex + .bib files, bibsleuth checks whether citations exist, detects mis-citations, suggests relevant papers for uncited claims, and surfaces contradicting evidence.

Install

uv pip install bibsleuth           # core (existence checking)
uv pip install 'bibsleuth[llm]'    # with LLM features (mis-citation, suggestions, contradictions)

Or as a tool:

uvx bibsleuth check paper.tex

Usage

bibsleuth check paper.tex                    # auto-discovers .bib
bibsleuth check paper.tex --bib refs.bib     # explicit .bib
bibsleuth check refs.bib                     # bib-only mode
bibsleuth check paper.tex --no-llm           # existence checking only
bibsleuth check paper.tex -o report          # write report.json + report.md

System library

bibsleuth library add refs.bib       # add verified entries to ~/.bibsleuth/library.bib
bibsleuth library search "networks"  # search your accumulated citations

Quick start: checking your paper before submission

You have a LaTeX paper (paper.tex) and its bibliography (refs.bib) and want to make sure all references are real and correctly used before submitting.

Step 1. Check that all cited papers exist.

bibsleuth check paper.tex --no-llm

This parses your .bib file, queries 6 academic databases, and reports which entries are verified, likely matches, or not found. Each result includes a clickable DOI/URL so you can verify yourself. A not-found result doesn't necessarily mean the paper is fake — it may just be missing from the databases — but it's worth double-checking.

Step 2. Look at the report.

bibsleuth check paper.tex --no-llm -o report

This writes report.json (machine-readable) and report.md (human-readable). Open report.md to see a summary table and per-entry details. Any entries marked unverified or likely deserve a closer look. The report also suggests patches — missing DOIs or URLs that bibsleuth found in the databases.

Step 3. Run the full analysis (requires LLM).

export ANTHROPIC_API_KEY=sk-...   # or OPENAI_API_KEY
bibsleuth check paper.tex -o report

This adds three LLM-powered checks on top of existence verification:

  • Mis-citation detection: for each \cite{}, does the cited paper's abstract actually support the claim you're making? Flags cases where a citation doesn't match the surrounding text.
  • Missing citation suggestions: finds claims that could use stronger citations and suggests real papers (verified against databases, not hallucinated).
  • Contradicting evidence: surfaces well-known papers that argue the opposite of your claims — better to address these proactively than have a reviewer bring them up.

Step 4. Save verified references to your personal library.

bibsleuth library add refs.bib

Over time this builds up a personal citation knowledge base at ~/.bibsleuth/library.bib that you can search across projects:

bibsleuth library search "network centrality"

Features

  1. Citation existence verification — queries OpenAlex, Semantic Scholar, CrossRef, arXiv, DBLP, PubMed
  2. Mis-citation detection (LLM) — checks if cited papers actually support the claims
  3. Missing citation suggestions (LLM + DB) — suggests papers for uncited claims, verified against databases
  4. Contradicting evidence (LLM + DB) — surfaces counterarguments from the literature
  5. System-wide BibTeX library — accumulates verified citations across projects

Design

LLM as scout, databases as ground truth. The LLM suggests directions (papers, contradictions); databases verify they exist. This avoids hallucinated references while leveraging broad literature knowledge.

Acknowledgments

Citation existence checking patterns adapted from CiteSleuth (MIT). Title normalization and verification strategies inspired by hallucinator.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bibsleuth-0.1.0.tar.gz (23.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bibsleuth-0.1.0-py3-none-any.whl (31.8 kB view details)

Uploaded Python 3

File details

Details for the file bibsleuth-0.1.0.tar.gz.

File metadata

  • Download URL: bibsleuth-0.1.0.tar.gz
  • Upload date:
  • Size: 23.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.12

File hashes

Hashes for bibsleuth-0.1.0.tar.gz
Algorithm Hash digest
SHA256 2f130a3e444e6d5bdd17af8ebd3c67b6df54a24df720c7d9e5716ca5cdf16187
MD5 7812e767c609d6073274cf797bc6786b
BLAKE2b-256 6e4a9149eff17bdbb50f658a86a0403c0cf619bf5be6b4ffc54153f7fe7910c4

See more details on using hashes here.

File details

Details for the file bibsleuth-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: bibsleuth-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 31.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.12

File hashes

Hashes for bibsleuth-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d412cae9096abb277ea862622b23c40d0d6cabc499f7695da159ae93d426d89b
MD5 f10a4e4fe0d6ad5d5b70268837fcad6a
BLAKE2b-256 76b78f19f605b2363c5f33c89f1136fef174e4d3211de88f549bfee88b7a587b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page