wiki-lint

A health checker for a bundled wiki that finds unsupported claims, broken links, trigger mismatches, vague wording, oversized pages, and stale dates.

In plain words
What is it for?
Use it to inspect wiki structure, run its checks, group findings by severity, and repair issues in a development checkout.
Why use it?
It exposes documentation problems before they spread and can fix the findings in a writable copy of the wiki.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/choiyounggi/dev-loop/wiki-lint
Any agent
npx skills add choiyounggi/dev-loop --skill wiki-lint
Clone the repo
git clone --depth 1 https://github.com/choiyounggi/dev-loop

Made for: Claude Code, Codex.

Per session 63 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,002 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00063 $0.01002
Opus 5 $0.00032 $0.00501
Sonnet 5 $0.00013 $0.00200
Haiku 4.5 $0.00006 $0.00100

Measured 2d ago against content hash 51d8e000a4bd, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

wiki-lint scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/wiki-lint/SKILL.md · 72 lines

How it starts

The opening of the file, as written. The whole thing — 72 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Lint

In the dev-loop plugin. The wiki is at the plugin root (${CLAUDE_PLUGIN_ROOT}/). To lint-and-fix, run against a writable git checkout of the dev-loop repo (as knowledge-flush prepares), not the read-only installed plugin dir.

Input: none (whole-wiki pass) or a list of recently changed pages.

Phase 0 — Discovery (read-only)

Before reporting any finding, run these read-only commands and paste their output in the report header:

  • Page/index counts: find wiki -name '*.md' | wc -l (split into pages vs. index.md files)
  • Checker baselines: node scripts/wiki-lint-prohibitions.js wiki and node scripts/wiki-structure-checks.js wiki
  • Recent history: tail -5 log.md

An assessment produced without the Phase 0 output pasted in its header is non-compliant.

Checks

Run all of these; report findings grouped by severity.

# Check Severity
1 Page with confidence: verified but empty/unverifiable sources: error
2 A prohibition (don't/do not/never/avoid/must not) alone in its directive item (table cell or bullet), carrying no replacement action or mechanism — checked via node scripts/wiki-lint-prohibitions.js; Instead of rows must still pair the anti-pattern with its replacement error
3 Broken related: id or inline link error
4 Page not listed in its domain index.md, or index entry whose "load when" line no longer matches the page trigger error
5 Vague qualifiers in directive sentences (usually, consider, might, generally, as appropriate) warn
6 Body over 120 lines warn
7 confidence: unverified older than 90 days warn
8 last_verified older than 12 months on verified pages (docs move, defaults change) warn
9 contradiction entries in log.md still unresolved warn
10 gap entries in log.md with no page created after 30 days info
11 Bare 2-word prohibition cell (e.g. Never read) — undecidable by shape between a state value and a real directive, so it is surfaced rather than judged; reported by node scripts/wiki-lint-prohibitions.js info

Read the full file on GitHub · 72 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago First seen · 72 lines · 63 tokens per session scan A 51d8e000a4bd

Subscribe to this mod's changes

wiki-lint is a skill published in the GitHub repository choiyounggi/dev-loop (4 stars, last pushed 2d ago), licensed MIT. It adds 63 tokens to every session and 1,002 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

connect-recommend

Use this skill when the user asks about Stripe Connect configuration, charge patterns, Dashboard access, or how to get started with Connect, is building a marketplace, platform, multi-vendor store, gig platform, or subscription platform, needs to pay out sellers, vendors, or providers, mentions split payments, revenue…

stripe/ai · 151 tokens

stripe-apps

Use when building, modifying, or reviewing a Stripe App — or when the user describes something that implies one (e.g. "add a panel to the customer page", "customize my Stripe Dashboard", "react to Stripe events from my app", "connect my service to Stripe without sharing API keys"). Covers the full app development…

stripe/ai · 197 tokens

ordercli

Foodora-only CLI for checking past orders and active order status (Deliveroo WIP).

the-open-agent/openagent · 21 tokens

stripe-best-practices

Guides Stripe integration decisions across API selection (Checkout Sessions vs PaymentIntents), Connect platform setup (Accounts v2, controller properties), billing/subscriptions, tax and registrations (Stripe Tax, automatictax, product tax codes), Treasury financial accounts, integration options (Checkout, Payment…

stripe/ai · 134 tokens

adyen-knowledge-patch

Use this skill when implementing or upgrading Adyen Web, Drop-in, Components, sessions flows, or Checkout API v72 integrations. Consult the topic reference that matches the integration surface, then apply the quick-reference rules below where relevant.

Nevaberry/nevaberry-plugins · 9 tokens

kb-create

Operator procedure to declare and provision a new Knowledge Base GitOps-style, so it survives pod restarts.

BeppeTemp/cartographer · 24 tokens