Skip to content
Back to skills

Cite Check

ASecurity

Round-trip every citation and quoted phrase in a draft against its primary source. Flags fabricated cites (Mode 1) AND cites that exist but don't support the claimed proposition (Mode 2 — the "misgrounded citation" failure mode behind ~all reported AI-citation sanctions). Produces a severity-tiered verification-report.md.

  • 10 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added August 31, 2026
ai-agentsgo

Works with

  • mcp

Security analysis

A100/100

Pro scans all 5 files and shows the line behind each finding

Scanned August 31, 2026

npx -y skills add WenzhuoXu/lawgent --skill cite-check --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Cite Check?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Cite Check
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/wenzhuoxu-cite-check/badge)](https://www.skillsdirectory.com/skills/wenzhuoxu-cite-check)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: cite-check
description: Round-trip every citation and quoted phrase in a draft against its primary source. Flags fabricated cites (Mode 1) AND cites that exist but don't support the claimed proposition (Mode 2 — the "misgrounded citation" failure mode behind ~all reported AI-citation sanctions). Produces a severity-tiered verification-report.md.
argument-hint: "<draft file or pasted text> [--stakes filed|internal]"
allowed_connectors: [courtlistener_search, ecfr_search, federal_register_search, govinfo_search, flk_npc_search, eurlex_search, "pkulaw_*"]
rag_collections: [general]
---

# /cite-check — Citation Audit

**Not legal advice.** Counsel spot-checks every flagged item.
Catches two hallucination modes (Anthropic + sboghossian + Stanford RegLab):
**Mode 1** = fabricated cite (not in any reporter / DB); **Mode 2** =
misgrounded cite (cite exists, passage exists, but doesn't support the
proposition). Mode 2 is the dominant failure mode in the >2,000 documented
court-filing sanction cases.

Read [references/verification.md](references/verification.md) for the
6-phase procedure and [references/provenance-tags.md](references/provenance-tags.md)
for the tag taxonomy, [references/prc-roundtrip.md](references/prc-roundtrip.md)
for PKULaw / `flk.npc.gov.cn` patterns.

## Output Contract (binding)

The deliverable is a tabular `verification-report.md` rendered by
`cite_check_report_tool` — *not* a `## Findings` bullet list. The
playbook ≤2000-char ceiling applies to legal *answers*, not audit output.

Shape (see [references/report-format.md](references/report-format.md)):

```
# Citation Verification Report
**Document:** …   **Stakes:** filed|internal   **Generated:** …
**Sources consulted:** [PKULaw, CourtListener, EUR-Lex, …]

## Summary
Checked N of M citations. J confirmed; K could not be retrieved;
I flagged as potential miscitations; H flagged as misgrounded.

> **⚠️ DO NOT FILE** — (only when stakes=filed AND threshold breached)

## CRITICAL  | Location | Issue | Claimed | Source says | Fix |
## NUANCED   …
## MODEL-ONLY …
```

End with the standard disclaimer; see `/playbook/general_playbook.md`.

## Workflow

1. Read the draft via `read_document` (if attached) or directly from the
   message. Set `stakes`: `filed` (court / regulatory submission / opinion
   letter) → strictest pass; `internal` otherwise.
2. **Extract** — `extract_citations_tool(text)` (US eyecite + PRC regex + EU regex).
3. **Validate structurally** — `validate_citations_tool(text)`. Status is
   three-valued: `verified` / `flagged` / `could_not_check`. *Never*
   return "confirmed" when no primary source was consulted.
4. **Fetch primary sources** — per the lookup table below.
5. **Round-trip quotes (Mode 2)** — for every quoted phrase, call
   `quote_roundtrip_tool(quote, source_text)`. `exact` / `near` /
   `not_found` (= paraphrase-as-quote) / `could_not_check`.
6. **Assertion-to-source support** — for "the court held X" / "法院认定 X"
   propositions, confirm the cited pinpoint actually supports the *whole*
   proposition (not just one element). Partial support = NUANCED.
7. **Provenance audit** — `provenance_audit_tool(text)` flags cites
   lacking a tag. Default for untagged is `[model knowledge — verify]`.
8. **Render** — `cite_check_report_tool(text, stakes=…, sources_consulted=[…])`.
9. **Verification log** — for every `verified` item, call
   `verification_log_append_tool(cite, source, "confirmed")` so the next
   matter doesn't re-Shepardize.

**Escalation gate.** If `stakes=filed` and the report carries ≥5
fabricated/miscited/misgrounded items OR any paraphrase-as-quote on a
holding citation, the report renders **DO NOT FILE**.

**Could-not-check rule.** "Could not check" is *never* "confirmed."
A false positive lets a bad cite through; an honest gap routes to the
attorney.

## Lookup priority by citation type

PKULaw MCP is **primary** for PRC; `flk_npc_*` is the free-public fallback.
MCP tools surface as `<server>__<tool>` (e.g. `pkulaw_law_search__search_article`).

| Citation type | Primary | Backup |
|---|---|---|
| 案号 (judgment case number) | `pkulaw_anhao__anhao_recognition` → `pkulaw_case_list__get_case_list` | `citations/prc.py` regex |
| 法释 (SPC interpretation) | `pkulaw_law_search__search_article` | `flk_npc_search` (level=judicial_interpretation) |
| 法律 / 行政法规 pinpoint (《X》第N条) | `pkulaw_fatiao__get_law_item_content` (title + 条号) | `flk_npc_search` (metadata only — no body fetch) |
| 部门规章 / 通告 | `pkulaw_law_search__search_article` | `flk_npc_search` (level=rule) |
| 国函 / 国办发 | `pkulaw_law_search__search_article` | `flk_npc_search` |
| 法条 batch normalize in a draft | `pkulaw_law_recognition__law_recognition` | `citations/prc.py` regex |
| Citation chain validation | `pkulaw_citation_validator__adjust_provisions` | manual review |
| Broad NL question (PRC) | `pkulaw_nl_search__ai_pkulaw_search` | `flk_npc_search` + hosted web |
| US case (e.g. 410 U.S. 113) | `courtlistener_search` (then fetch opinion body) | eyecite-corrected form |
| US statute (USC / CFR) | `govinfo_search` / `ecfr_search` | `federal_register_search` |
| EU regulation / directive | `eurlex_search` | hosted `web_search` |

Domain packs layer extra sources via `domains/<pack>/overlays/cite-check.md`.

Files in this skill

  • SKILL.md5.3 KB
  • references/prc-roundtrip.md5 KB
  • references/provenance-tags.md5.2 KB
  • references/report-format.md4.5 KB
  • references/verification.md7.2 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.