| name | citation-auditor |
| title | Invocation Contexts |
| description | Audit a markdown file by chunking it, extracting claims with structured output, routing each claim to verifier skills, aggregating verdicts, and rendering annotated markdown. |
| author | kipeum86 |
| author_url | https://github.com/kipeum86/game-legal-research/tree/main/.claude/skills/citation-auditor |
| license | Apache-2.0 |
| version | 0.1.0 |
| execution_mode | open |
| jurisdiction | general |
| practice | general |
| language | en |
Audit the markdown file at $0.
Invocation Contexts
This skill is invoked in two distinct contexts:
- Standalone
/audit (default): user-triggered via the /audit <file.md> slash command on any existing markdown file. Uses inline mode — per-claim badges injected into the body plus a per-claim audit report at the end. Does not alter output/checkpoint.json.
- Workflow Step 10 (automatic): invoked by the main orchestrator after Step 9 for Mode B/C/D or memo/opinion deliverables (see
CLAUDE.md §5 Step 10). Uses append mode — body preserved with only [Unverified] / [Partially Unverified] tags on failing claims, plus a ## 부록: 검증 로그 (Citation Audit Log) appendix table at the end. The rendered output is audited draft content that the orchestrator passes to the final save path.
The only procedural difference between the two contexts is the --mode flag passed to render in step 15 below. Steps 1–14 are identical.
Procedure
-
Confirm $0 exists and is a markdown file. If it does not, stop and ask for a valid path.
-
Run:
python3 -m citation_auditor chunk "$0" --max-tokens 3000
-
Parse stdout as JSON with the schema { "chunks": [...] }.
-
Run deterministic extraction first:
python3 -m citation_auditor extract "$0" --max-tokens 3000
-
For each chunk, use the deterministic extraction output as the minimum claim set. If a chunk has sparse deterministic output, optionally add non-citation factual claims using structured output with this schema:
text: string
sentence_span: { start: integer, end: integer }
claim_type: factual | citation | quantitative | temporal | other
suggested_verifier: string | null
-
Do not extract speculation, forecasts, rumors, advocacy, or soft prediction language such as:
전망이다
예상된다
업계 관계자에 따르면
가능성이 있다
Unless the sentence also contains a concrete verifiable factual assertion that stands on its own.