Lexicon

Give every noun, verb, and parameter one declared home.

docs/lexicon/ is a declared tree, not a glossary pasted beside implementation. Nouns own their nested nouns and verbs; verbs are leaves. Each node declares its kind in frontmatter; parameters are nodes too. The tree carries its own ontology and topology. Command documentation is authored beside the verb it describes, while CLI usage remains generated from the command itself.

Nouns

The nounspace is a directory tree. A noun occupies a path that serves as its address and may contain sub-nouns and verbs. Each node declares kind in frontmatter rather than relying on its filename alone. The authored structure gives commands, documentation, and generated surfaces one shared semantic vocabulary. A missing declaration is a defect even if an implementation happens to work.

Verbs

A verb is an operation node beside the noun that owns it. Verbs do not contain other nodes. Command documentation is authored with the verb, while runtime usage and options remain the CLI's own responsibility. The lexicon checker compares declaration to the implementation and can identify operations missing on either side. The aim is one contract across the authored vocabulary and the executable command tree.

Parameters

Parameters are declared nodes, not an informal list copied between help pages. The lexicon contains a param word tree whose nodes identify themselves with kind: param. Their names and relationships are checked against the operations that accept them. This makes a surface's callable vocabulary auditable while avoiding multiple hand-maintained definitions of the same option.