willoscar/citation-verifier
| Generate and verify BibTeX entries from paper notes, writing `citations/ref.bib` and `citations/verified.jsonl`.
npx skills add https://github.com/WILLOSCAR/research-units-pipeline-skills --skill citation-verifier
Generate citations/ref.bib and ensure every entry has a traceable verification record in citations/verified.jsonl.
When network access is restricted, prefer a “record now, verify later” workflow: keep URLs/titles consistent and leave a clear verification note.
papers/paper_notes.jsonlcitations/ref.bibcitations/verified.jsonlbibkey, title, url, year, authors from papers/paper_notes.jsonl.citations/ref.bib:arxiv_id / primary_category exist (eprint, archivePrefix, primaryClass).citations/verified.jsonl with at least:bibkey, title, url, datenotes field (e.g., “auto-generated; needs manual verification”) and/or request human confirmation depending on your policy.verified.jsonl record.url/date/title in verification records.When network access is restricted, run in offline mode to produce auditable records now, then verify later.
verification_status: offline_generated--verify-onlyverification_statusoffline_generated: record was generated without network verification (needs later verification)verified_online: URL/title verified successfully by the scriptverify_failed: verification was attempted but failed (network error or title mismatch)needs_manual_verification: missing/ambiguous fields (e.g., empty url/title)uv run python .codex/skills/citation-verifier/scripts/run.py --helpuv run python .codex/skills/citation-verifier/scripts/run.py --workspace <workspace> --offline--offline: do not attempt network verification; write verification_status=offline_generated--verify-only: verify existing citations/verified.jsonl records (does not rewrite BibTeX)--verification-note <text>: stored in citations/verified.jsonl notesuv run python .codex/skills/citation-verifier/scripts/run.py --workspace <workspace> --offline --verification-note "auto-generated; needs manual verification"uv run python .codex/skills/citation-verifier/scripts/run.py --workspace <workspace> --verify-onlyurl, date, title.{} in titles to keep bibtex parsing robust.& % $ # _) and rewrites superscript patterns like X^N or X$^N$ as X\textsuperscript{N} to keep LaTeX builds stable.url fields (BibTeX styles wrap them with \url{...}); @misc uses howpublished=\url{...}.offline_generated as a to-do for human/network verification.bibkey / missing url in notesSymptom:
citations/ref.bib is missing entries, or verified.jsonl has empty url/title.Causes:
papers/paper_notes.jsonl lacks bibkey/url fields.Solutions:
bibkey and a canonical url.verification_status=offline_generatedSymptom:
Causes:
--offline was used, or network verification was unavailable.Solutions:
--verify-only to upgrade records.citations/verified.jsonl with notes.citations/verified.jsonl record.url, date, title.Take willoscar/citation-verifier from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.