Build and maintain a persistent, interlinked markdown wiki knowledge base from raw sources. Use when the user wants to create a knowledge base, build a wiki, ingest articles or papers into a KB, query accumulated knowledge, organize research notes, or lint a wiki for broken links and orphan pages. Triggers on mentions of knowledge base, wiki, KB, ingest, research notes, or personal wiki.
Persistent markdown wiki that sits between curated raw sources and questions. Compile source material into wiki pages — summaries, entity pages, cross-links — so knowledge compounds instead of being rediscovered every query.
Directory layout is defined by the user's schema (e.g. WIKI.md). This skill defines
behaviors, not fixed paths — always read the schema first.
Companion rules: index-log conventions, optional tooling.
When the user asks to set up an LLM wiki, or when this skill is first activated:
Ask the user where their knowledge base lives (e.g. /mnt/kb). If they have an existing wiki, use it. If starting fresh, create <root>/WIKI.md (schema), (empty catalog), and (empty log).
<root>/index.md<root>/log.mdsprinkle open llm-wiki
scoop_scoop("wiki-ops")
feed_scoop("wiki-ops", <contents of wiki-ops-brief.md, with WIKI_ROOT replaced>)
sprinkle route llm-wiki --scoop wiki-ops
This bypasses the cone — queries and ingests go straight to wiki-ops.
Add to the cone's CLAUDE.md:
wiki (from wiki.jsh)index.md first to discover pages. Synthesize with citations. File the answer as a durable wiki page.ingest, query, or lint — never synonyms. Format: ## [YYYY-MM-DD] ingest | <title>| Layer | Role | Who edits |
|---|---|---|
| Raw sources | Articles, papers, repos, datasets — evidence | Human curates; agent reads only |
| Wiki | Summaries, entity/topic pages, synthesis, backlinks | Agent writes; human reviews |
| Schema | Where things live, naming, categories, workflows | Human and agent co-evolve |
ingest.index.md first — discover which pages exist.query.lint.The llm-wiki.shtml sprinkle provides a visual wiki browser with sidebar navigation, markdown rendering with clickable wikilinks, search across note titles, Query Wiki dialog (sends query-submit lick), and Ingest Source dialog (sends ingest-submit lick). It reads files via slicc.readDir() and slicc.readFile() which return {name, type} objects and strings respectively.
The wiki.jsh command provides: search, list, read, stats, links, orphans, recent, log, help.
sprinkle route)sprinkle send