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.
npx skills add ernestolee13/para-knowledge-base --skill kb-lintgit clone --depth 1 https://github.com/ernestolee13/para-knowledge-baseWrote 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.
[](https://agentmods.dev/skills/ernestolee13/para-knowledge-base/kb-lint)<a href="https://agentmods.dev/skills/ernestolee13/para-knowledge-base/kb-lint"><img src="https://agentmods.dev/badge/skills/ernestolee13/para-knowledge-base/kb-lint/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/ernestolee13/para-knowledge-base/kb-lint"><img src="https://agentmods.dev/badge/skills/ernestolee13/para-knowledge-base/kb-lint.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00039 | $0.02931 |
| Opus 5.5 | $0.00016 | $0.01172 |
| Sonnet 5.5 | $0.00008 | $0.00586 |
| Haiku 4.5 | $0.00004 | $0.00293 |
Grade A, and why
kb-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 1mo 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.
How it starts
The opening of the file, as written. The whole thing — 232 lines — stays where its author put it; the contents beside it link to each section on GitHub.
KB Lint — Knowledge Base Health Check
Audit the vault for structural issues, inconsistencies, and maintenance opportunities.
Token-efficient by design: prefer obsidian-cli calls (single command result) over reading full vault into context. CLI uses Obsidian's actual link resolution — much more accurate than naive grep matching.
When .para-kb/config.json exists, use its PARA roots, index names, telemetry paths, and exclusions. Remove .para-kb/, the Obsidian config directory, active/archive telemetry, runtime state, and generated reports from every document denominator before calculating orphan, frontmatter, stale-content, or index-drift metrics.
Usage
/kb-lint # Full report (read-only)
/kb-lint --fix # Auto-fix safe issues
/kb-lint --category Projects # Lint only one category
Checks
1. Index Drift
Compare _index.md contents against actual files on disk.
| Issue | Meaning |
|---|---|
| MISSING | Listed in index but file not found |
| UNLISTED | File exists but not in index |
| STALE_COUNT | Count in top-level index doesn't match |
| STALE_INDEX | updated date > 7 days old |
CLI: obsidian files folder="1. Projects" for actual files; compare against _index.md lines.
Auto-fix: Add unlisted files, remove missing entries, update counts and dates.
2. Orphan Documents
Files with no incoming wikilinks.
With CLI (preferred): obsidian orphans — uses Obsidian's actual link graph.
Without CLI: comm -13 <(grep wikilinks sorted) <(find files sorted).
Exclude (false positives):
0. Common/daily/*,0. Common/weekly/*,_index.md,CLAUDE.md,Dashboard.md.para-kb/*, the configured Obsidian directory, active/archive telemetry, and generated report paths0. ... 프로젝트 개요.md— referenced by folder name in indexes, not by full filenametemplates/*,_templates/*— Obsidian Templater templates- Any file with frontmatter
tagscontaining project/topic tags (cross-folder reference is intentional)
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.
- 1mo ago Changed · +5 lines edc385f67204
- 1mo ago First seen · 227 lines · 39 tokens per session scan A 7691f40581ec
kb-lint is a skill published in the GitHub repository ernestolee13/para-knowledge-base (21 stars, last pushed 1mo ago), licensed MIT. It adds 39 tokens to every session and 2,931 once invoked, about $0.0002 per session on Opus 5.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.
Other skills, from other repositories
llm-wiki
Build and maintain a persistent, interlinked Obsidian-compatible markdown wiki using Karpathy's LLM Wiki pattern. Extension-backed with auto-generated metadata, guardrails, and 14 custom tools (+3 opt-in agent-trajectory tools).
refresh-context
A context snapshot updater for Core Context.md, a summary file built from nine main system files and selected essays. It refreshes that summary when the underlying material changes or the snapshot is more than 30 days old.
llm-wiki
Explain and apply the foundational LLM Wiki architecture and knowledge-management strategy. Use for setup, architecture, schema, or organization decisions; operational ingest/query/lint work uses dedicated skills.
wiki-lint
Audit wiki health: broken links, orphans, contradictions, stale content, lifecycle and tag issues. Use for maintenance or health checks. Default is report-only; use wiki-dedup for page-identity merges.
wiki-export
Export the Obsidian wiki graph to JSON, GraphML, Neo4j Cypher, Postgres/SQL, HTML, or OKF bundles. Use when transferring or visualizing wiki data in external tools; wiki-import handles the reverse direction.
wiki-query
Search and synthesize answers from the compiled Obsidian wiki, including cited and multi-hop answers. Use for questions about existing wiki knowledge or fast index-only lookups, and for challenge requests ("challenge this", "argue against X", "poke holes in my plan") that look for the vault's own evidence against a…