Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Deterministic anti-hallucination gate for cited references. Resolves each entry in a manuscript .bib file against Crossref, OpenAlex, and arXiv; flags fabricated (identifier resolves to nothing), mismatched (title/author/year disagree), unverifiable (no identifier), unchecked (offline cache miss — never silently OK), and anachronistic (future-dated) citations. Offline-first with a persistent SQLite cache; live network resolution is opt-in. Use when verifying citation existence, auditing a refere
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-13 | ✗→✓ | ▲ Improved | -27% | 0% |
| case-01 | ✗→✓ | ▲ Improved | -39% | 0% |
| case-02 | ✗→✓ | ▲ Improved | -34% | 0% |
| case-03 | ✗→✓ | ▲ Improved | -21% | 0% |
| case-04 | ✗→✓ | ▲ Improved | -60% | 0% |
Given the references a manuscript claims to cite, prove (or disprove) that each one exists and matches its cited metadata. This is the verification side of the literature workflow; infrastructure/search/literature is the discovery side.
id → arXiv API; bare title → Crossref title search with a similarity floor.
ok, mismatch, fabricated, unverifiable,unchecked, anachronism.
allow_network=False (default), consult only theSQLite cache and report unchecked on a miss — a skipped check never launders into a clean pass.
"fabricated" is fast and stable.
bashuv run python -m infrastructure.reference.verification verify references.bib uv run python -m infrastructure.reference.verification verify references.bib --live --as-of-year 2026 --fail-on-issues uv run python -m infrastructure.reference.verification verify references.bib --json uv run python -m infrastructure.reference.verification cache-clear
pythonfrom infrastructure.reference.verification import ReferenceResolver, ResolutionCache, verify_bibfile resolver = ReferenceResolver(cache=ResolutionCache("cache.db"), allow_network=True) report = verify_bibfile("references.bib", resolver, as_of_year=2026) print(report.summary_line()) assert not report.has_blocking
resolver.py — DOI/arXiv/title resolutionverifier.py — classification + temporal integritycache.py — persistent SQLite resolution cacheinfrastructure/search/literature/SKILL.md — discovery sidedocs/prompts/manuscript-claim-verification/SKILL.md — workflow that drives this gateThe status taxonomy and cross-index/temporal-integrity ideas are an original, Apache-2.0 distillation of patterns from Imbad0202/academic-research-skills (CC-BY-NC-4.0). No ARS code is vendored.
Other measured skills in the registry, with their headline benchmark lift.