Creator · wanshuiyin
Last updated · Sep 2, 2026
Zero-context verification that every bibliographic entry in the paper is real, correctly attributed, and used in a context the cited paper actually supports — catching hallucinated authors, wrong years, fabricated venues, version mismatches, and wrong-context citations. Use when
Review then install
Install targets
Codex install prompt
Install the "citation-audit" agent skill from https://github.com/wanshuiyin/Auto-claude-code-research-in-sleep/tree/main/skills/citation-audit. Read its SKILL.md or equivalent instructions first, install only the files needed for this workspace, and summarize any required setup before using it. Skill purpose: Zero-context verification that every bibliographic entry in the paper is real, correctly attributed, and used in a context the cited paper actually supports — catching hallucinated authors, wrong years, fabricated venues, version mismatches, and wrong-context citations. Use when user says \"审查引用\", \"check citations\", \"citation audit\", \"verify references\", \"引用核对\", or before submission to ensure bibliography integrity. After the install attempt, report the result to https://www.openagentskill.com/api/agent/outcome with POST JSON {"event_id":"install_<unique-id>","skill_slug":"wanshuiyin-citation-audit","task":"Install citation-audit","agent":"codex","outcome":"success","install_used":true}. Replace event_id with a unique value and outcome with success or failed. Report success only after the skill is installed and a minimal verification passes.Supply asset profile
Deep research, source comparison, literature review, RAG, knowledge search, and reports.
Scenario
Research agents
I need my agent to research a topic, compare sources, and produce a concise report.
Agent fit
Claude Code + OpenAI Agents + CLI
Codex, Claude Code, Cursor, CLI, or custom agents.
Install
Ready
npx skills add wanshuiyin/Auto-claude-code-research-in-sleep --skill citation-audit
Maintenance
fresh
13d since push
Risk
Needs review
Permission surface may require sandboxing
GitHub quality
16K
89/100 Quality · 84/100 Trust
Coverage tags
Review notes
Permission surface may require sandboxing · Quality score needs review
Agent adoption scorecard
These scores combine public repository metadata, OpenAgentSkill review signals, maintenance freshness, and install readiness. They are a shortlist signal, not a replacement for human review.
Quality
ExcellentHigh-confidence pick with strong adoption and healthy maintenance signals.
Trust
Review then installGood shortlist signal, but the agent should review audit notes, install policy, and outcome evidence before running it.
Audit
Needs reviewA machine-readable review of install readiness, security metadata, maintenance, and adoption risk.
OpenAgentSkill Trust Score v5
Use as the primary candidate after human or sandbox review.
Stars
16K GitHub stars
Repo activity
16K stars, 1.4K forks
Maintenance
13d since push
License
MIT
Install
npx skills add wanshuiyin/Auto-claude-code-research-in-sleep --skill citation-audit
Install safety
Agent-readable metadata
Use this block or the embedded JSON to decide whether an agent should install this skill, choose an alternative, or ask for human review first.
Suited tasks
Suited agents
Install decision
Trust and risk
Outcome loop
Install command
npx skills add wanshuiyin/Auto-claude-code-research-in-sleep --skill citation-auditDo not use when
Agent safety v2
Sparse or mixed signals. Useful for discovery, but not for autonomous installation.
Test manually in an isolated workspace and compare against safer alternatives.
high
Skill metadata references terminal, CLI, shell, subprocess, or command execution workflows.
medium
Skill may drive a browser or interact with web pages.
medium
Skill likely fetches remote pages, APIs, repositories, or external services.
medium
Skill may read or write project files, documents, generated artifacts, or local workspace state.
Agent resolve plan
The Resolve API returns the selected skill, alternatives, safety policy, audit notes, install target, and copy-paste prompt an agent can follow without scraping this page.
Open JSON
/api/agent/resolve?task=Use%20citation-audit%20for%20an%20agent%20workflow&agent=codex&max_risk=medium
Resolve text
/api/agent/resolve?task=Use%20citation-audit%20for%20an%20agent%20workflow&agent=codex&max_risk=medium&format=text
Install handoff
/api/skills/wanshuiyin-citation-audit/install
Agent should check
Copy prompt
Task: Use citation-audit in this workspace.
Resolve first: https://www.openagentskill.com/api/agent/resolve?task=Use%20citation-audit%20for%20an%20agent%20workflow&agent=codex&max_risk=medium
Review install handoff: https://www.openagentskill.com/api/skills/wanshuiyin-citation-audit/install
Install command: npx skills add wanshuiyin/Auto-claude-code-research-in-sleep --skill citation-audit
Before running it, summarize audit warnings, required permissions, and the fallback skill if install is risky.Agent handoff
Use the public install endpoint to fetch the command, safety checklist, target prompts, and canonical links for this skill.
Install handoff
/api/skills/wanshuiyin-citation-audit/install
LLM text format
/api/skills/wanshuiyin-citation-audit/install?format=text
Find alternatives
/api/skills/search?q=citation-audit&limit=3
Agent prompt
Use citation-audit for this task. Review https://www.openagentskill.com/api/skills/wanshuiyin-citation-audit/install, then install with: npx skills add wanshuiyin/Auto-claude-code-research-in-sleep --skill citation-auditRegistry metadata
This page exposes the same decision, trust, audit, use-case, and install signals through the Registry API, so agents can rank this skill without scraping the UI.
Manifest
/api/registry/manifest/wanshuiyin-citation-audit
LLM text
/api/registry/manifest/wanshuiyin-citation-audit?format=text
Install alias
/api/registry/install/wanshuiyin-citation-audit
Recommend
/api/registry/recommend?task=Use%20citation-audit%20in%20an%20agent%20workflow&limit=3
Agent fit
Research agents
Use-case tags
Platforms
Claude Code, OpenAI Agents
Audit report
A machine-readable review of install readiness, security metadata, maintenance, and adoption risk.
Agent decision cockpit
Use this as a leading candidate, then validate the README and install path in your own agent stack.
Role in stack
Primary pick
Primary fit
Research agents
Trust label
Production-ready
Install path
Command ready
Use when
Evidence
review first
Implementation path
Trust profile
Good shortlist signal, but the agent should review audit notes, install policy, and outcome evidence before running it.
GitHub adoption
PASS16K GitHub stars
Stars/forks activity
PASS16K stars, 1.4K forks; issue activity unavailable in current metadata
Recent maintenance
PASS13d since push
License clarity
PASSMIT
Good signals
Review before install
Recommended action
Use as the primary candidate after human or sandbox review.
Quality profile
High-confidence pick with strong adoption and healthy maintenance signals.
Workflow fit
Investigate faster
I need my agent to research a topic, compare sources, and produce a concise report.
Parse messy files
I need my agent to read PDFs, extract tables, and turn documents into structured data.
Publish consistently
I need my agent to turn research and product updates into useful content drafts.
Workflow fit
Find, compare, and synthesize
A workflow for agents that gather sources, compare claims, summarize long material, and draft useful research briefs.
Scrape, clean, and reuse web data
A practical workflow for agents that crawl public pages, extract clean content, normalize data, and hand it to downstream research or RAG workflows.
Turn skills into distribution
A workflow for turning newly indexed skills into SEO briefs, social drafts, comparison pages, and reusable publishing workflows.
Alternative shortlist
Similar skills that may fit this task.
Wazuh - The Open Source Security Platform. Unified XDR and SIEM protection for endpoints and cloud workloads.
🕵️♂️ Collect a dossier on a person by username from 3000+ sites
Nuclei is a fast, customizable vulnerability scanner powered by the global security community and built on a simple YAML-based DSL, enabling collaboration to tackle trending vulnerabilities on the internet. It helps you find vulnerabilities in your applications, APIs, networks, DNS, and cloud configurations.
Infisical is the open-source platform for secrets, certificates, and privileged access management.
--- name: citation-audit description: "Zero-context verification that every bibliographic entry in the paper is real, correctly attributed, and used in a context the cited paper actually supports — catching hallucinated authors, wrong years, fabricated venues, version mismatches, and wrong-context citations. Use when user says \"审查引用\", \"check citations\", \"citation audit\", \"verify references\", \"引用核对\", or before submission to ensure bibliography integrity." argument-hint: "[paper-directory-or-bib-file] [--uncited] [— soft-only]" allowed-tools: Bash(*), Read, Grep, Glob, Edit, Write, mcp__codex__codex, WebSearch, WebFetch ---
# Citation Audit
> 🔒 **Do not wrap this skill in `/loop`, `/schedule`, or `CronCreate`.** It is > verdict-bearing — it judges bibliographic correctness. Re-running that verdict > on a timer adds no new signal (it changes only when the *bibliography* > changes). Schedule the *external wait that precedes it* — bibliography > finalized → then audit **once**. See > [`shared-references/external-cadence.md`](../shared-references/external-cadence.md).
Verify every `\cite{...}` in a paper against three independent layers:
1. **Existence** — the cited paper actually exists at the claimed arXiv ID / DOI / venue. 2. **Metadata correctness** — author names, year, venue, and title match canonical sources (DBLP, arXiv, ACL Anthology, Nature, OpenReview, etc.). 3. **Context appropriateness** — the cited paper actually supports the claim it is being used to support in the manuscript.
This skill is the fourth layer of \aris{}'s evidence-and-claim assurance, complementing `experiment-audit` (code), `result-to-claim` (science verdict), and `paper-claim-audit` (numerical claims). Together they form a bottom-up integrity stack from raw evaluation code to manuscript bibliography.
## When to Use This Skill
**Run before submission.** The right gating point is: - After `paper-write` has produced the LaTeX draft and bib file - After `paper-claim-audit` has verified numerical claims - Before final `paper-compile` for submission
**Do not** run this on a half-written draft — most of the work is in cross-checking each `\cite` against context, which is wasted on placeholder text.
## What This Skill Catches
The dangerous citation problems are **not** wildly fake citations — those are easy to spot. The dangerous ones are:
- **Wrong-context citations**: real paper, but the cited claim is not what that paper actually establishes (e.g., citing Self-Refine to support "self-feedback produces correlated errors" — Self-Refine actually argues the opposite). - **Author hallucinations**: anonymous-author placeholders that slipped through, missing co-authors, wrong order. - **Title drift**: arXiv v1 vs v3 with different titles silently merged. - **Venue confusion**: arXiv preprint cited but the official venue is now CVPR/ICML/NeurIPS — using the wrong record. - **Year mismatch**: arXiv 2023 preprint with 2024 conference acceptance, year reported inconsistently. - **Phantom DOIs**: DOI looks real but does not resolve. - **Self-citation drift**: your own prior work cited with year off by one.
## Constants
- **REVIEWER_MODEL = `gpt-5.6-sol`** — Used via Codex MCP. Default for cross-model review with web access. - **CONTEXT_POLICY = `fresh`** — Each audit run uses a new reviewer thread (REVIEWER_BIAS_GUARD). Never `codex-reply`. - **WEB_SEARCH = required** — The reviewer must perform real web/DBLP/arXiv lookups, not pattern-match from memory. - **OUTPUT = `CITATION_AUDIT.md`** — Human-readable per-entry verdict report. - **STATE = `CITATION_AUDIT.json`** — Machine-readable verdict ledger consumable by downstream tools. - **SOFT_ONLY = `false`** — When true (set via `— soft-only` / `— soft_only` flag), the audit runs all three layers normally but **forbids any `.bib` file mutation**. Findings that would otherwise mutate the bib (FIX / REPLACE / REMOVE) are translated into per-occurrence sentence-rewrite proposals against the citing `*.tex` files. Used by `/resubmit-pipeline` Phase 1 to honor the user's hard "freeze the bib" constraint. - **RENDER_HTML = true** — When `true` (default), auto-render `CITATION_AUDIT.md` to HTML after writing the report. Uses **full Codex review gate** (audit-class artifact — render-fidelity check matches the skill's cross-model audit invariant). Set `false` to skip, or pass `— render html: false`.
## Workflow
### Step 1: Discover bib file and section files
Locate: - `references.bib` (or `paper.bib` / similar) under the paper directory - All `*.tex` files containing `\cite{...}` calls (typically `sec/` or `sections/`)
If multiple bib files exist, audit each separately.
### Step 2: Extract all (cite-key, context) pairs
For each `\cite{key1,key2,...}` invocation in the paper: - Record the cite key - Record the file + line number - Record the surrounding sentence (≥ 1 full sentence around the cite, for context check)
Output a flat list of `(key, file, line, surrounding_sentence)` tuples.
Also build the inverse: for each bib entry, the list of all places it is cited.
Define two protocol sets used throughout the rest of the workflow: `cited_keys` is the set of unique cite keys appearing in any `\cite{...}` invocation across the audited `*.tex` files (de-duplicated), and `bib_keys` is the set of keys parsed from the audited bib file(s). `cited_keys` drives Step 3 (audit only cited entries); `bib_keys \ cited_keys` is the uncited residual surfaced by the `--uncited` opt-in.
If the user passed `--uncited`, also compute the set difference `bib_keys \ cited_keys` here and stash it for use in Steps 5 and the JSON aggregation; see "Uncited Entry Detection (opt-in)" below for the protocol. The set-diff is a string operation only and does not consume reviewer budget.
Save the extracted contexts to `paper/.aris/citation-audit/contexts.txt` so the reviewer can read it directly. Use the paper-dir-relative path `.aris/citation-audit/contexts.txt` when recording the file in `audited_input_hashes`; do not stage under `/tmp` or other transient locations that the verifier cannot rehash later.
### Step 3: Send each entry to fresh cross-model reviewer
For each **cited** bib entry — i.e., each key in `cited_keys` with at least one extracted citation context — invoke `mcp__codex__codex` (NOT `codex-reply` — fresh thread per entry, or batch with explicit per-entry isolation). Do **not** send entries in `bib_keys \ cited_keys` to the reviewer; those are detect-only and surface only when `--uncited` is explicitly enabled (see "Uncited Entry Detection" below).
``` mcp__codex__codex: model: gpt-5.6-sol config: {"model_reasoning_effort": "xhigh"} sandbox: read-only prompt: | You are auditing a bibliographic entry. Use web/DBLP/arXiv search.
## Bib entry @article{key2024example, author = {...}, title = {...}, journal = {...}, year = {...}, ... }
## Where this entry is cited in the paper [paste extracted contexts]
For this entry, verify: 1. EXISTENCE: does this paper exist at the claimed arXiv ID / DOI / venue? Output: YES / NO / UNCERTAIN, with the verifying URL. 2. METADATA: are author names, year, venue, title correct? For each, output: correct / wrong: should be ... / typo: ... 3. CONTEXT: for each use, does the cited paper actually support the surrounding claim? Output per-use: SUPPORTS / WEAK / WRONG, with one-sentence reasoning.
VERDICT: KEEP / FIX / REPLACE / REMOVE - KEEP: entry is clean, all uses are appropriate - FIX: metadata needs correction; uses are appropriate - REPLACE: cite is wrong-context, find a different paper that actually supports the claim - REMOVE: entry is hallucinated or unsupportable
Be honest. If you cannot verify online, say UNCERTAIN; do not guess. ```
Save the response to `.aris/traces/citation-audit/<date>_runNN/<key>.md` per the review-tracing protocol.
### Step 4: Aggregate verdicts
Build `CITATION_AUDIT.json` following the schema defined in **"Submission Artifact Emission"** below (single authoritative schema for this file). Per-entry ledger data goes under `details.per_entry`, not under a top-level `entries` field. The top-level `verdict` is a single overall value (PASS / WARN / FAIL / NOT_APPLICABLE / BLOCKED / ERROR) derived from per-entry verdicts per the decision table in "Submission Artifact Emission"; the top-level `summary` is a one-line human-readable string.
Concretely, `details` carries the per-entry ledger:
```json "details": { "total_entries": 29, "counts": { "KEEP": 11, "FIX": 14, "REPLACE": 3, "REMOVE": 1 }, "per_entry": [ { "key": "lu2024aiscientist", "verdict": "KEEP", "axis_failures": [], "uses": [ {"file": "sections/1.intro.tex", "line": 11, "verdict": "SUPPORTS"}, {"file": "sections/6.related.tex", "line": 8, "verdict": "SUPPORTS"} ] }, { "key": "madaan2023selfrefine", "verdict": "FIX", "axis_failures": ["CONTEXT"], "uses": [ {"file": "sections/2.overview.tex", "line": 42, "verdict": "WRONG", "note": "Self-Refine demonstrates iterative improvement, not correlated errors"}, {"file": "sections/6.related.tex", "line": 13, "verdict": "SUPPORTS"} ] } ] } ```
See "Submission Artifact Emission" for the full artifact (top-level fields `audit_skill`, `verdict`, `reason_code`, `summary`, `audited_input_hashes`, `trace_path`, `thread_id`, `reviewer_model`, `reviewer_reasoning`, `generated_at`, `details`).
### Step 5: Generate human-readable report
Write `CITATION_AUDIT.md`:
```markdown # Citation Audit Report
**Date**: 2026-04-19 **Bib file(s)**: references.bib **Total entries**: 29
## Summary | Verdict | Count | |---------|------| | KEEP | 11 | | FIX | 14 | | REPLACE | 3 | | REMOVE | 1 |
## Priority Fixes (CRITICAL — apply before submission)
### REMOVE: anon2025placeholder - Author listed as "Anonymous" — canonical record exists with real authors and full title - Title is incomplete - ACTION: Replace key with the canonical citekey, update authors and title
### REPLACE-CONTEXT: example2023priorwork in sec/2.overview.tex:42 - Cited to support a specific technical claim - The cited paper actually demonstrates a different (related but distinct) phenomenon - ACTION: Rewrite the sentence; cite the prior work for what it actually establishes
[... continues for each entry ...]
## All-Clean Entries (no action needed)
[list of KEEP keys] ```
When `--uncited` is set, append the following section after "All-Clean Entries":
```markdown ## Uncited Entries (opt-in)
The following bib entries are present in the audited bib file(s) but are not referenced by any `\cite{...}` in the paper body:
- `author2010example` — suggestion: prune (uncited; no local evidence of intent) - `someone2015othercite` — suggestion: prune (uncited; no local evidence of intent) - `third2024todo` — suggestion: check (a `% TODO: cite third2024todo` comment was found in `sections/3.related.tex`)
This section is detect-only; it does not change the top-level verdict. ```
### Step 6: Apply fixes (interactive)
For each FIX/REPLACE/REMOVE verdict, prompt the user:
``` Fix [key]? Change: <description of change> Files affected: references.bib + sec/X.tex:Y [Apply / Skip / Defer] ```
If `AUTO_APPLY = true`, apply all FIX-level changes (metadata corrections only). REPLACE and REMOVE always require human approval — they involve content changes.
### Step 7: Recompile and verify
```bash latexmk -C && latexmk -pdf -interaction=nonstopmode main.tex ```
Confirm: - No new `Citation undefined` warnings - No `Reference undefined` warnings - Page count unchanged or only minimally affected by metadata fixes
## Uncited Entry Detection (opt-in)
**Default**: disabled. Existing users see no behavior change — only `\cite{...}` keys are audited, and bib entries with no `\cite` reference in the manuscript are silent
Source provenance
Decision snapshot
15,641 GitHub stars
Audit
Install and adoption review
Agent-proven evidence
Outcome reports after resolve, review, install, and one narrow run.
No agent outcome data yet. The first agent run can report success, setup needs, risk blocks, failure, or not-relevant through /api/agent/outcome.
Install
Free and open source. Review the report before installing into production agents.
Growth loop
Scenario-led draft for citation-audit, ready for a manual X post.
citation-audit: Zero-context verification that every bibliographic entry in the paper is real, correctly attr... 15.6K stars https://www.openagentskill.com/skills/wanshuiyin-citation-audit?ref=x
Listing + install path for citation-audit: https://www.openagentskill.com/skills/wanshuiyin-citation-audit?ref=x Install: npx skills add wanshuiyin/Auto-claude-code-research-in-sleep --skill citation-audit
Listing source
This listing was indexed from public sources and is not marked official until a maintainer claim is approved.
Attribution links to the public repository or creator profile. Creators can claim the listing to update ownership signals.
Claim this skillOwner claim
This Registry indexed listing is attributed to wanshuiyin but is not marked official yet. Claim it to add a verified owner signal and make future launch, install, and audit updates easier to trust.
Creator backlink kit
Show the canonical listing, current trust and audit signals, and real Agent-Proven evidence where developers evaluate the repository.
[](https://www.openagentskill.com/skills/wanshuiyin-citation-audit?ref=github&utm_source=github&utm_medium=referral&utm_campaign=creator_badge)
[](https://www.openagentskill.com/skills/wanshuiyin-citation-audit?ref=github&utm_source=github&utm_medium=referral&utm_campaign=creator_badge)
[](https://www.openagentskill.com/skills/wanshuiyin-citation-audit/audit)
[](https://www.openagentskill.com/skills/wanshuiyin-citation-audit?ref=github&utm_source=github&utm_medium=referral&utm_campaign=creator_badge)wanshuiyin
@wanshuiyin
Share whether this skill looks useful for your agent workflow. Aggregated feedback improves rankings over time.
Review then install
Wazuh
Wazuh - The Open Source Security Platform. Unified XDR and SIEM protection for endpoints and cloud workloads.
16.3K StarsMaigret
🕵️♂️ Collect a dossier on a person by username from 3000+ sites
32.9K StarsNuclei
Nuclei is a fast, customizable vulnerability scanner powered by the global security community and built on a simple YAML-based DSL, enabling collaboration to tackle trending vulnerabilities on the internet. It helps you find vulnerabilities in your applications, APIs, networks, DNS, and cloud configurations.
29.2K StarsInfisical
Infisical is the open-source platform for secrets, certificates, and privileged access management.
27.4K StarsPermission surface
shell or command execution, filesystem or document access
Agent outcomes
No agent outcome data yet
Docs
Strong README/SKILL.md context
Risk summary
Install readiness