llm-wiki
CLAUDE.md1 starsChanged 31 days agoMITView on GitHub
A knowledge system, not product code: everything known about the product, as atomic notes, so specs, roadmap, KPIs and go-to-market can be built on top. The interface is an LLM (you).
In this repository11 other files it gives its agents.
- kb-captureSkill
- kb-dashboardSkill
- kb-elicitSkill
- kb-evolveSkill
- kb-goalSkill
- kb-orientSkill
- kb-planSkill
- kb-recallSkill
- kb-recapSkill
- kb-sanitizeSkill
- kb-visualizeSkill
The file
We split this CLAUDE.md into the rules it gives an agent
6 rules. About 0 are common, 1 is distinctive, and 5 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈1
Distinctive · estimate
This author's own choices. Worth a look.
5
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 20
Before substantial work run kb-orient for the full picture (never the whole repo).
- Distinctive: line 25
Never read the whole knowledge base — MAP → domain index → note.
- Very specific: line 26
Never edit index/ by hand.
- Very specific: line 27
STATE.md scope: never copy derived facts (counts, progress, open Q-/RISK-/ASMP- lists) into STATE.md — reference the indexes.
- Very specific: line 30
All note writes go through the pipeline (npm run kb:write / kb-capture / kb-evolve).
- Very specific: line 38
Never guess silently: mark gaps [NEEDS CLARIFICATION: …] / [ASSUMPTION: …].
≈ “Common” is an estimate: at least 1 in 5 of the 26,980 CLAUDE.md files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
LLM-Wiki — LLM-native product knowledge base
A knowledge system, not product code: everything known about the product, as atomic notes, so specs, roadmap, KPIs and go-to-market can be built on top. The interface is an LLM (you).
Layers
- Knowledge (
knowledge/<domain>/) — Markdown notes with YAML frontmatter; the single source of truth. - Indexes (
index/) — GENERATED; never edit by hand.MAP.md→ domain indexes (routing),backlinks.json,relations.json(typed edges + inverses),coverage.md(expected connections),health.md(what needs attention),mindmap.md. - State (
STATE.md) — non-derivable intent only (focus + next step). History lives in git (kb-recap); there is no journal.
Session protocol
- A SessionStart hook injects a
[kb] session snapshot(mode, language, focus, plan, attention counts). Respond in itslanguage, in itsmode. - Before substantial work run
kb-orientfor the full picture (never the whole repo). - Capture only via
kb-capture; retrieve viakb-recall(index-first).
Invariants
- Never read the whole knowledge base — MAP → domain index → note.
- Never edit
index/by hand. - STATE.md scope: never copy derived facts (counts, progress, open
Q-/RISK-/ASMP-lists) into STATE.md — reference the indexes. If they disagree, the index wins. (Enforced byvalidate.) - All note writes go through the pipeline (
npm run kb:write/kb-capture/kb-evolve); never raw-write or hand-edit a note. It heals the note (lib/heal.mjs), validates and writes atomically. - Ids: stable, assigned by the pipeline (omit
idfor a new note), never reused or deleted; the filename starts with the id.type, id prefix and domain folder must agree with the vocabulary below (lib/vocabulary.mjs). - Retire a note by deprecating it (
status: deprecated+superseded_by); same-prefix change = rename-in-place, different prefix = tombstone (kb-evolve). - Never guess silently: mark gaps
[NEEDS CLARIFICATION: …]/[ASSUMPTION: …]; a note with markers cannot beaccepted. - Before writing or changing a note, read its type's section in
.claude/skills/kb-capture/formats.md(relations, evidence, acceptance criteria, assumptions, decisions, goals/plan/timeline, mind-map fields).
Type & ID vocabulary
| Domain | type | ID prefix |
| vision | vision, principle, value-prop | VIS- |
| market | competitor, market-insight | CMP-, MKT- |
| users | persona, segment, jtbd, pain | PER-, SEG-, JTBD-, PAIN- |
| product | feature, requirement, nfr, story, entity, term | FEAT-, FR-, NFR-, STORY-, ENT-, TERM- |
| (any) | topic | TOP- |
| roadmap | milestone, kpi, goal, plan, timeline | MIL-, KPI-, GOAL-, PLAN-, TL- |
| gtm | positioning, channel, pricing, message | POS-, CHAN-, PRICE-, MSG- |
| (any) | risk, assumption, question | RISK-, ASMP-, Q- |
| decisions | decision (MADR) | DEC- |
| sources | source (evidence) | SRC- |
Skills — when to use
| Situation | Skill |
| start of session | kb-orient |
| gather knowledge / resolve gaps (clarify loop) | kb-elicit |
| write one note | kb-capture |
| answer from the KB | kb-recall |
| rename / deprecate / merge / split / retype | kb-evolve (check npm run impact -- <ID> first) |
| clear deprecated-link debt in bulk | kb-sanitize |
| goals (GOAL-) | kb-goal |
| operational plan (PLAN-001) — never kb:write | kb-plan |
| dashboard / map | kb-dashboard, kb-visualize |
| "what changed …" | kb-recap |
Persistence
A UserPromptSubmit hook watches uncommitted knowledge/ changes; per
kb.config.yml persistence.autocommit it stays silent (off), nudges
(manual) or tells you to commit (auto). When asked, commit knowledge/ +
index/ with a message saying what changed. mode (tone) and autocommit are
independent.
Tooling
npm run kb:write— write notes (JSON on stdin[{domainDir, frontmatter, body}]; prints assigned ids).npm run validate·npm run reindex·npm run graph— also run by hooks (PostToolUse / Stop / pre-commit;npm run install-hooksinstalls the latter).npm run query -- <name> [--param X]— saved frontmatter queries (queries/*.yml, format inlib/query.mjs);--listshows them.npm run clarify·npm run impact -- <ID>·npm run plan -- <verb>·npm run dashboard(http://localhost:4321, read-only) ·npm test.lib/pure modules,tools/CLIs + schemas,test/suite;docs/superpowers/is engine design history (not product knowledge).
Mode
debug (default) — report reads/writes/changes explicitly. autonomous — short
human acknowledgements; hide wiki mechanics.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

