How this skill is triggered — by the user, by Claude, or both
Slash command
/cps-kg-enhance:fact-checkThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
---
After /cps:verify-quality passes but before client delivery. Verify-quality catches structural problems (missing sections, unfilled placeholders, branding violations); fact-check catches the wrong-but-internally-consistent factual errors that plain RAG misses.
Verdict stability ← have we converged?
↑
Critique ← supported / contradicted / unverifiable
↑
Source location ← where does the claim come from?
↑
Claim extraction ← what factual assertions does the deliverable make?
↑
Deliverable ← the markdown to check
Always work bottom-up. Never invent a verdict before locating a source; never skip extracted claims because they look "obvious."
Extract claims. Read the target deliverable. Enumerate every factual assertion. A factual assertion is anything that could be checked against an external source — numbers, dates, named entities, regulatory citations, attributions, causal claims tied to specific actors. Output as a numbered list before doing anything else.
Locate canonical source — three-tier markdown fallback.
.brain/01_Instincts/*.md for content matching the claim.brain/02_Entities/**/*.md extracted from ingested client documentsD:/Obsidian Notes Taken/02 CPS/_Instincts/ and framework references) for sanitized cross-engagement patternsCritique. For each (claim, source) pair:
Loop until stable.
assets/seed-entity-aliases.json, broader date ranges, alternative entity names.Refuse on thin brain. If >50% of claims remain unverifiable after termination, abort. Tell the consultant the engagement brain is too thin and recommend /cps:doc-ingest on additional sources. Returning a partial table creates false confidence — don't do it.
Output. Markdown table with columns # | Claim | Verdict | Source | Confidence. Confidence is high when the source is a primary document, medium when it's the graph, low when it's the central brain (because central is sanitized — entity-level, not passage-level). Append a ## Must fix section for every contradicted claim with a one-line suggested correction.
| Verdict source | Confidence | Why |
|---|---|---|
| Primary engagement document, exact passage match | high | Direct evidence |
| Graph edge with named source | high | Edge was extracted from a primary doc |
| Graph edge without named source | medium | Edge inferred during ingestion |
| Central brain edge (cross-engagement) | low | Central is sanitized; lacks passage-level grounding |
| No source found | n/a (unverifiable) | Don't fabricate confidence |
unverifiable into supported to make the table look complete — refuse the >50% threshold insteadhigh confidence on central-brain matches — central is sanitized, so it lacks passage-level grounding.md deliverable in the engagement.brain/01_Instincts/ and .brain/02_Entities/ markdown vault, plus the central 02 CPS/_Instincts/ vault/cps:verify-quality (structural checks)/cps:client-communication (delivery)Creates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.
npx claudepluginhub hossamdaoud83/cps-plugins-official --plugin cps-kg-enhance