knowledge-lintv0.1.0

Frontmatter

The fixed set of frontmatter fields every knowledge_entry file carries, and how each one is checked.

---
title: "RAG (retrieval-augmented generation)"
type: glossary
created: 2026-01-10
last_reviewed: 2026-01-10
status: current
source: intern
related: ["./chunking.md", "../decisions/2026-01-vector-store.md"]
public: true
---
Field Required Check
title yes Non-empty.
type yes Must equal the category’s type in _types.yml.
created yes Non-empty. The format is not enforced.
last_reviewed yes A date in YYYY-MM-DD format. Drives the review-interval warning.
status yes One of status_values from _types.yml.
source yes Non-empty. Where the knowledge comes from: a meeting, a document, intern.
related no List of paths relative to the entry’s own folder. Each must point to an existing file.
public no Boolean. Not validated; counted in the summary line so a publishing layer can filter on it.

Other fields are allowed and ignored, so a knowledge base can add its own metadata (for example sphere, classification or document_id) without breaking the lint.

A file without a readable frontmatter block is reported as frontmatter is missing or unreadable, and no further field checks run for it.

Paths resolve against the folder of the entry that contains them, not against the knowledge directory:

# in knowledge/glossary/rag.md
related: ["./chunking.md", "../decisions/2026-01-vector-store.md"]

A link to a file that does not exist is an error. Links are checked for existence only; the target does not have to be a knowledge entry.

The public summary

After all checks, lint reports how many entries are marked public:

3 of 4 knowledge entries are marked public.

knowledge-lint itself does not publish anything. The count is there so a site generator that publishes only public: true entries has a visible counterpart in every run.

Edit this page on GitHub · Docs for v0.1.0