lint

lint is a skill for Claude Code, Codex from tpierrain/kenjaku. It costs 102 tokens per session (1,216 once invoked), scanned A, original, Apache-2.0.

A deterministic health check for a wiki stored as linked notes. It reports broken links, notes with no incoming links, outdated entity pages, and malformed frontmatter, which is the metadata at the start of a note.

In plain words
What is it for?
Use it to scan a vault, read the binary report, and propose fixes for dangling links, orphan notes, stale pages, and invalid metadata.
Why use it?
It shows where the wiki is inconsistent without guessing or silently changing files.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one.

Not installable on its own: it runs a file from its repository that does not travel with it. Clone the repository, or install whatever ships that file. The line is node scripts/lint-vault.mjs.

Install

Getting it into your agent

There is no command for this one: it runs only inside a plugin, and the catalogue could not identify which plugin ships it. The source is linked below.

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for lint

README.md
[![agentmods](https://agentmods.dev/badge/skills/tpierrain/kenjaku/lint.svg)](https://agentmods.dev/skills/tpierrain/kenjaku/lint)
Your own site
<a href="https://agentmods.dev/skills/tpierrain/kenjaku/lint"><img src="https://agentmods.dev/badge/skills/tpierrain/kenjaku/lint.svg" alt="Measured on agentmods" height="20"></a>
Per session 102 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,216 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.1 $0.00102 $0.01216
Opus 5 $0.00051 $0.00608
Sonnet 5 $0.00020 $0.00243
Haiku 4.5 $0.00010 $0.00122

Measured 6d ago against content hash 5135c9b55078, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-06, from the pricing page.

Security

Grade A, and why

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 6d 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.

engine-skills/lint/SKILL.md · 79 lines

How it starts

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

lint — wiki-health check ("where is my wiki bleeding?")

The retrieval side of the brain (the RAG) is a versioned, tested engine. The curation side — keeping the wiki itself healthy: links that resolve, notes woven in, entity pages kept fresh — is this skill's job. It is the deterministic half of the Karpathy "LLM-Wiki compile" discipline (see ADR 0033): the scan is exact and fail-loud; the judgment of what to fix is yours (and the user's).

Principle

One promise: an honest, binary health report of the vault, then help acting on it.

  • The scan is deterministic (ADR 0009): pure code over the parsed notes, no LLM guessing.
  • The fixes are proposed, never silently written (the brain's write posture): surface the problem, suggest the gesture, let the user say yes.

Procedure

1. Run the scanner

From the brain folder:

node scripts/lint-vault.mjs
  • Exit 0 = clean (say so plainly, do not invent problems).
  • Exit 1 = issues found; the report lists them by category. Read it verbatim.
  • To check a different path: node scripts/lint-vault.mjs <vault-dir>.

2. Read the report — four categories

  • Dangling links from → [[target]]: a [[link]] whose target note does not exist. Usually a typo, a renamed/moved note, or a note that was meant to be written and never was.
  • Orphans: a note with zero inbound links (raw-capture zones daily/, raw-sources/, inbox/ and _inbox/ are already excluded — they are legitimately unlinked, and so are the engine's own notes, type: engine). An orphan is knowledge that is filed but never woven in, so the wiki (and the RAG's neighbourhood signal) can't reach it.
  • Stale entity pages: a curated entity page (type: person|topic|company|project|concept) whose updated: trails the freshest note that cites it by more than the threshold (default 90 days). The world moved on; the canonical page didn't.
  • Frontmatter issues: a note missing a required key (type / created / updated / tags), so it indexes and sorts poorly. Raw-capture zones and the engine's own notes (type: engine, e.g. the RAG canary) are exempt: neither is a curated wiki node, and telling the owner to fix a file they are told never to touch is a complaint they can never clear.

Read the full file on GitHub · 79 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. 6d ago First seen · 79 lines · 102 tokens per session scan A 5135c9b55078

Subscribe to this mod's changes

lint is a skill published in the GitHub repository tpierrain/kenjaku (80 stars, last pushed yesterday), licensed Apache-2.0. It adds 102 tokens to every session and 1,216 once invoked, about $0.0005 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-30.

Related

Other skills, from other repositories

wiki-lint

Run a deterministic, read-only health check on an Obsidian wiki. Use for lint, vault health check, audit wiki health, find orphans, find dead links, frontmatter audit, provenance audit, or wiki audit. Reports graph, link, frontmatter, provenance-ledger, empty-section, and stale-index findings; it does not reason…

AgriciDaniel/claude-obsidian · 79 tokens

traps

The failures in a Lattice game that produce no error and a plausible-looking wrong result — a black screen, a tap that opens the wrong thing, art that floats above its own hill, a frame counter that lies, a game that gets slower at dusk, a save that silently stops being written. Use when something builds and runs but…

plausibleventures/lattice · 94 tokens

performance

Diagnosing and fixing a game that stutters, drops frames, gets slower over time, or hitches when something changes. Use for frame drops, jank, lag, "it's slow", "it stutters", a bad frame-time number, garbage-collection pauses, or deciding how many things a scene can afford.

plausibleventures/lattice · 67 tokens

self-ops

Runtime self-diagnosis knowledge: database layout, observability APIs, timeout hierarchy, restart procedure, failure replay. Use when the user asks to debug this runtime itself — inspect its database, traces, prompt snapshots, timeouts, service health, or configuration.

spytensor/openmozi · 56 tokens

agent-hermes

Performance investigation using reproducible measurements.

Sistema2D/FrameCode-VibeWork · 11 tokens

api-debugger

当用户要测试或调试 REST / GraphQL 接口、验证响应格式、对比接口文档与实际行为、生成 Mock 数据时使用。.

ntygod/ZhiWei · 37 tokens