LLM Wiki Lint Skill
SkillDocs & knowledgeRun a structural and logical health check of the LLM Wiki OKF bundle against SPEC.md and AGENTS.md. Use whenever the operator asks to lint the wiki, check for schema violations, contradictions, stale claims, orphan pages, broken wikilinks, or health-check the wiki after ingests.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the LLM Wiki Lint Skill skill
What this skill tells your AI
The instructions your AI receives, as published by truehooha/llm-wiki in .agents/skills/llm-wiki-lint/SKILL.md and read by ahel’s review.
Purpose
Run a structural and logical health check of the wiki against OKF (SPEC.md) and the producer conventions in AGENTS.md, then coordinate and apply agreed fixes.
When to Use
Use this skill when the operator asks to health-check the wiki, or periodically (e.g., after every 10 ingests or when the wiki feels unwieldy).
Inputs
- Optional: specific area to focus on (e.g., "check for contradictions in the AI section").
Single Source of Truth
The page schema (frontmatter fields and recommended sections per type, cross-link and citation rules, index/log formats) is defined only in AGENTS.md and OKF (SPEC.md). When validating, read AGENTS.md § Frontmatter Contract, § Page Types & Conventions, § Cross-linking, § Citations, and § Update Rules for Special Files, plus SPEC.md §4–§9 — never hardcode or re-derive the schema here.
Scope
The bundle root is wiki/. Validate every .md under wiki/entities/, wiki/concepts/, wiki/sources/, and wiki/syntheses/ (skip wiki/templates/). Also validate the reserved files wiki/index.md and wiki/log.md. Files outside wiki/ are not part of the bundle and are not checked.
Checks
1. OKF Conformance (structural, SPEC.md §9)
For every concept document under wiki/ (excluding index.md, log.md, templates/):
- Frontmatter present and parseable: a
----delimited YAML block exists at the top (high if missing/malformed). typenon-empty: thetypefield is present and non-empty (high if missing).- No legacy fields:
updatedandsource_pathare not used (they migrated totimestampandresource) (medium). - Recommended fields present:
title,description,tags,timestamp(low if absent — these are OKF-recommended, not strictly required). - Source pages:
resourceis present, begins withraw/sources/orraw/assets/, AND the file at that path exists on disk (high if missing/malformed; high if the referenced file does not exist).
Report each violation (code: okf/*, severity as noted).
2. Producer-Convention Compliance (AGENTS.md § Page Types & Conventions)
- Sections: every recommended
#(H1) heading for the page'stypeis present and spelled exactly as in AGENTS.md (medium). Optional sections explicitly marked "omit otherwise" in AGENTS.md (e.g. synthesis# Comparison Table) are NOT required — do not flag their absence. The title is NOT a body heading — it lives in frontmattertitle(medium if a stray# TitleH1 duplicates the frontmatter title). - Filenames: entity and concept pages use
kebab-case.md; source and synthesis pages useYYYY-MM-DD--slug.md(medium). - Citations:
# Citations(where present) uses numbered[n] [[source-slug|Title]]wikilinks for internal source pages and[n] [text](https://…)markdown links for external material (low). - Type-specific fields: synthesis pages have a non-empty
question; entity/concept pages have an integersource_count≥ 0 (low if absent/malformed).
Report each violation (code: schema/*, severity as noted).
3. Link Health (Obsidian wikilinks, AGENTS.md § Cross-linking)
- Internal links are wikilinks: every internal note-to-note link uses
[[…]]Obsidian wikilink syntax. A bundle-relative markdown link like[Title](/entities/x.md)or[Title](../entities/x.md)for an internal note is a deviation (medium) — convert it to[[x|Title]]. - External links are markdown:
https://…(and other external schemes) use standard markdown links[text](https://…), NOT wikilinks (low). This includes the Obsidian[[https://…]]/[[http://…]]form (an external URL wrapped in wikilink brackets) — flag it as a deviation (low) and convert to[text](https://…). - Resolution: every
[[target]](plain or[[target|Display]]) resolves to a file whose basename (without.md) or one of its frontmatteraliasesequalstarget. Per OKF §5.3, unresolved wikilinks are tolerated, not malformed — report them at low severity for cleanup, never as schema violations.
4. Reserved-File Structure
wiki/index.md: carries onlyokf_version: "0.1"frontmatter (the only frontmatter permitted in a bundle-root index, OKF §11) and OKF §6 bullet-list sections (Entities, Concepts, Sources, Syntheses, Statistics). Entries use Obsidian wikilinks ([[note-name|Title]]), not markdown links. No tables (medium).wiki/index.md↔ disk consistency: every.mdcontent page underwiki/{entities,concepts,sources,syntheses}/is listed inindex.md, and everyindex.mdentry resolves to a page on disk — no missing entries, no phantom entries (high). Phantom detection overlaps Check 3 wikilink resolution; the missing-entry direction is the one most easily broken by an incomplete rebuild.wiki/log.md: OKF §7 —## YYYY-MM-DDdate headings, newest first, prose bullets. No## [YYYY-MM-DD] action | desclegacy headers (medium).
5. Contradictions
- Scan for claims on different pages that conflict.
- Look for: opposite facts, inconsistent dates, contradictory opinions attributed to the same source.
- Report each contradiction with: page A, page B, the conflicting claims, and severity (high/medium/low).
6. Stale Claims
- Identify assertions that newer sources have superseded.
- Look for: outdated statistics, deprecated technologies, revised theories.
- Report with: page, claim, why it's stale, and what should replace it.
7. Orphan Pages
- Find concept documents with no inbound wikilinks from other pages.
- Report with: page name, reason it might be orphaned, and suggested pages to link from.
8. Missing Pages
- Identify important concepts or entities mentioned via
[[target]]in existing pages but whose target note does not yet exist (unresolved wikilinks). Per OKF §5.3 these are tolerated, but a cluster of unresolved links to the same missing concept suggests it deserves a page. - Report with: where it's mentioned, why it deserves a page, and suggested page type (entity/concept).
9. Data Gaps
- Note areas where additional sources or web search could fill holes.
- Report with: topic, why it's important, and suggested sources or searches.
Step-by-Step Process
- Run Checks 1–4 (the mechanical gate) against
AGENTS.mdand SPEC.md for every content page and the reserved files. Structural violations are high/medium severity and should be fixed first. - Scan all pages in
wiki/(excluding templates) for the semantic checks 5–9, documenting findings. - Produce a lint report.
- Can be a temporary synthesis page in
wiki/syntheses/or inline in chat. - Group findings by check type.
- Rate each finding by severity (high/medium/low).
- Can be a temporary synthesis page in
- Discuss fixes with the operator.
- Present findings.
- Suggest specific fixes.
- Ask for confirmation before applying.
- Apply agreed fixes.
- Rebuild
wiki/index.mdfollowing the Canonical rebuild procedure inAGENTS.md§ Update Rules for Special Files: scan all content pages, read frontmatter, rewrite the five bullet-list sections ([[note-name|Title]]entries) + Statistics block, preservingokf_version: "0.1", listing exactly the pages on disk. - Append an entry to
wiki/log.md— append-only, newest first, never edit prior entries (OKF §7).- Heading:
## YYYY-MM-DD - Bullets:
* **Lint**: <brief description>.,* **Pages touched**: ...,* **Notes**: ...,* **Open questions**: ...
- Heading:
Output Contract
- Report lists all found issues with severity.
- Agreed fixes are applied.
wiki/log.mdis updated (append-only, OKF §7).
Guardrails
- Do not delete pages without operator confirmation.
- Do not fix contradictions by removing older claims; instead, add context about how understanding has evolved.
- Prioritize high-severity issues (OKF/§9 conformance,
typemissing, malformed frontmatter, sourceresourcewrong, contradictions) over cosmetic ones. - If the wiki is very large, focus on a specific subset or ask the operator for priorities.
Verification Checklist
- Checks 1–4 run against
AGENTS.mdand SPEC.md for every content page and the reserved files; allokf/*and high-severityschema/*findings addressed or triaged. - All content pages in
wiki/scanned for checks 5–9. - Lint report produced and grouped by check type with severities.
- Operator consulted on fixes.
- Agreed fixes applied.
-
wiki/index.mdrebuilt per the Canonical rebuild procedure (matches pages on disk). -
wiki/log.mdappended with a single## YYYY-MM-DDlint entry in the OKF §7 format.
Signals
- GitHub stars
- 22
- Forks
- 3
- Last commit
- Jul 2026
Advanced
- Catalog kind
- skill
- Gateway key
llm-wiki-lint-truehooha- Source
- github.com/truehooha/llm-wiki