LLM Wiki Bootstrap
Build and maintain a personal LLM Wiki: raw evidence stays immutable in raw/, durable knowledge is compiled into wiki/, and SCHEMA.md is the generated wiki's single operating contract.
This file is intentionally short. Load detailed references only for the operation the user requested.
Operating Model
- Keep
SCHEMA.md as the single source of truth inside every generated wiki.
- Keep
wiki/concept-table.md as the maintained concept map: it complements wiki/index.md by summarizing durable concepts, relationships, sources, status, and maintenance notes.
- Keep
CLAUDE.md, AGENTS.md, and .github/copilot-instructions.md as thin pointers to SCHEMA.md; never duplicate operating rules into them.
- Treat
raw/ as read-only evidence. Create and update derived knowledge only under wiki/.
- Apply
EXTEND.md preferences before bootstrap, ingest, query, lint, or BM25 work.
- Ask only for missing decisions, and batch setup questions into one user prompt when possible.
- Prefer progressive disclosure: read the smallest reference file that can complete the current task.
Intent Router
| User intent |
Do this |
Reference |
| Create or bootstrap a new wiki |
Run preference preflight, gather setup answers, then generate the scaffold and seed files. |
references/workflows/bootstrap.md |
| Ingest one or more sources |
Run preference preflight, check the optional BM25 gate, then compile source knowledge into wiki/. |
references/workflows/ingest.md |
| Answer a domain question from the wiki |
Run preference preflight, navigate wiki/index.md, use BM25 only as a candidate finder, then cite wiki pages. |
references/workflows/query.md |
| Check wiki health or consistency |
Run preference preflight, scan structure and content, report findings, then fix only approved items. |
references/workflows/lint.md |
| Configure or use BM25 search |
Load preferences, ask before initialization, create local search files, smoke test, and log results. |
references/workflows/bm25.md |
| Configure preferences |
Locate or create EXTEND.md using the schema and template. |
references/config/extend-schema.md, references/templates/extend.md |
Preference Preflight
Before bootstrap, ingest, query, lint, or BM25 work, read references/config/extend-schema.md and use the first available EXTEND.md in its lookup order. If none exists, run the first-time preference setup and create one from references/templates/extend.md before continuing.
On first use in a session, briefly say which preference file is active. Do not silently use defaults.
Reference Loading Rules
- For bootstrap, read
references/workflows/bootstrap.md, then load each template only when creating that file.
- For ingest, query, and lint, read the matching workflow file first; read
references/workflows/bm25.md only when preferences or the user request require search behavior.
- For schema generation, read
references/templates/schema.md and inject domain snippets from references/templates/domain-page-types.md as needed.
- For pointer files, read
references/templates/agent-pointer.md and keep the generated file minimal.
- For BM25 initialization, read
references/templates/wiki_fts.py and references/templates/bm25-readme.md only after the user approves initialization.
Package Layout Rules
- Put skill-owned runnable helpers in
scripts/ if they are meant to be executed from the installed skill package.
- Put generated-output templates in
references/templates/, even when the generated file will become executable after it is copied into the user's wiki.
- Put long procedural documentation in
references/workflows/ and configuration schemas in references/config/.
- In this skill,
references/templates/wiki_fts.py is a template for the generated wiki's scripts/wiki_fts.py; it is not executed in place by the skill.
Hard Rules
- Never overwrite an existing wiki without explicit user approval.
- Never modify files in
raw/ except to create empty scaffold placeholders such as .gitkeep during bootstrap.
- Never answer directly from BM25 snippets; open and read the returned wiki pages first.
- Preserve source language during ingest unless the user asks for a different wiki language.
- Update
wiki/index.md and append wiki/log.md whenever wiki content changes.
- If a search index rebuild fails, keep wiki edits, log the failure, and fall back to
wiki/index.md plus text search.
Core Outputs
A successful bootstrap creates a wiki root containing:
raw/
wiki/index.md
wiki/concept-table.md
wiki/log.md
wiki/overview.md
SCHEMA.md
.gitignore
Optional outputs depend on setup answers and preferences: runtime pointer files, .vscode/settings.json, scripts/wiki_fts.py, indexes/, and exports/.
1---2name: llm-wiki-bootstrap3description: Bootstrap and operate an LLM Wiki: a persistent Markdown knowledge base with immutable raw sources, an LLM-maintained wiki, a SCHEMA.md operating contract, thin runtime pointer files, EXTEND.md preferences, and optional local BM25 search. Use when the user asks to create or bootstrap an LLM wiki, ingest sources, query or lint a wiki, configure EXTEND.md preferences, or set up BM25/full-text search for an LLM Wiki.4---56# LLM Wiki Bootstrap78Build and maintain a personal LLM Wiki: raw evidence stays immutable in `raw/`, durable knowledge is compiled into `wiki/`, and `SCHEMA.md` is the generated wiki's single operating contract.910This file is intentionally short. Load detailed references only for the operation the user requested.1112## Operating Model1314- Keep `SCHEMA.md` as the single source of truth inside every generated wiki.15- Keep `wiki/concept-table.md` as the maintained concept map: it complements `wiki/index.md` by summarizing durable concepts, relationships, sources, status, and maintenance notes.16- Keep `CLAUDE.md`, `AGENTS.md`, and `.github/copilot-instructions.md` as thin pointers to `SCHEMA.md`; never duplicate operating rules into them.17- Treat `raw/` as read-only evidence. Create and update derived knowledge only under `wiki/`.18- Apply `EXTEND.md` preferences before bootstrap, ingest, query, lint, or BM25 work.19- Ask only for missing decisions, and batch setup questions into one user prompt when possible.20- Prefer progressive disclosure: read the smallest reference file that can complete the current task.2122## Intent Router2324| User intent | Do this | Reference |25| -------------------------------------- | -------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------- |26| Create or bootstrap a new wiki | Run preference preflight, gather setup answers, then generate the scaffold and seed files. | `references/workflows/bootstrap.md` |27| Ingest one or more sources | Run preference preflight, check the optional BM25 gate, then compile source knowledge into `wiki/`. | `references/workflows/ingest.md` |28| Answer a domain question from the wiki | Run preference preflight, navigate `wiki/index.md`, use BM25 only as a candidate finder, then cite wiki pages. | `references/workflows/query.md` |29| Check wiki health or consistency | Run preference preflight, scan structure and content, report findings, then fix only approved items. | `references/workflows/lint.md` |30| Configure or use BM25 search | Load preferences, ask before initialization, create local search files, smoke test, and log results. | `references/workflows/bm25.md` |31| Configure preferences | Locate or create `EXTEND.md` using the schema and template. | `references/config/extend-schema.md`, `references/templates/extend.md` |3233## Preference Preflight3435Before bootstrap, ingest, query, lint, or BM25 work, read `references/config/extend-schema.md` and use the first available `EXTEND.md` in its lookup order. If none exists, run the first-time preference setup and create one from `references/templates/extend.md` before continuing.3637On first use in a session, briefly say which preference file is active. Do not silently use defaults.3839## Reference Loading Rules4041- For bootstrap, read `references/workflows/bootstrap.md`, then load each template only when creating that file.42- For ingest, query, and lint, read the matching workflow file first; read `references/workflows/bm25.md` only when preferences or the user request require search behavior.43- For schema generation, read `references/templates/schema.md` and inject domain snippets from `references/templates/domain-page-types.md` as needed.44- For pointer files, read `references/templates/agent-pointer.md` and keep the generated file minimal.45- For BM25 initialization, read `references/templates/wiki_fts.py` and `references/templates/bm25-readme.md` only after the user approves initialization.4647## Package Layout Rules4849- Put skill-owned runnable helpers in `scripts/` if they are meant to be executed from the installed skill package.50- Put generated-output templates in `references/templates/`, even when the generated file will become executable after it is copied into the user's wiki.51- Put long procedural documentation in `references/workflows/` and configuration schemas in `references/config/`.52- In this skill, `references/templates/wiki_fts.py` is a template for the generated wiki's `scripts/wiki_fts.py`; it is not executed in place by the skill.5354## Hard Rules5556- Never overwrite an existing wiki without explicit user approval.57- Never modify files in `raw/` except to create empty scaffold placeholders such as `.gitkeep` during bootstrap.58- Never answer directly from BM25 snippets; open and read the returned wiki pages first.59- Preserve source language during ingest unless the user asks for a different wiki language.60- Update `wiki/index.md` and append `wiki/log.md` whenever wiki content changes.61- If a search index rebuild fails, keep wiki edits, log the failure, and fall back to `wiki/index.md` plus text search.6263## Core Outputs6465A successful bootstrap creates a wiki root containing:6667```text68raw/69wiki/index.md70wiki/concept-table.md71wiki/log.md72wiki/overview.md73SCHEMA.md74.gitignore75```7677Optional outputs depend on setup answers and preferences: runtime pointer files, `.vscode/settings.json`, `scripts/wiki_fts.py`, `indexes/`, and `exports/`.