Special collection
Type: types/definition.md
A special collection is a collection whose fixed name
directly under kb/ Commonplace commands rely on to perform a system role.
Moving or renaming it breaks that role, because no configuration, alias or
discovery step tells the commands where else to look.
Every other collection is ordinary: commands treat it only through what they are given, such as an explicit target path or collection name, and its name grants it no privilege.
Current special collections
| Collection | Role the commands rely on |
|---|---|
tags |
The KB's single tag namespace: tag heads, and the participating: list that says which collections' tags: lines count. Required in every KB, even when empty. |
sources |
Tracked source ingests and their local snapshots; source recognition, snapshot handling and grounding checks read this location. |
reports |
Fixed operational-output locations: commands write under state/ here (including review results and packets), and the site leaves that tree out. |
work |
The workshop layer: validation allows collection-local types from other collections here, and lifecycle checks scan it. |
types |
The global type layer: a type: value such as types/note.md resolves into it on the library search path. |
agentic-system-analyses |
The analysis workflow's fixed roots: runs are written under state/, and current and archived analyses are read from retained/ and retained-archive/. |
The collection contract states each collection's role in its own words. The collection-contract type does not declare roles: special status lives in the commands, and this list records it.
What the term excludes
- Scaffolded collections.
notes,referenceandinstructionsare seeded bycommonplace-initand shipped in the library, but commands no longer rely on their names; operations take an explicit scope. Their names are defaults, not roles. - Site layout. The menu's handling of
agent-memory-systemsoragentic-systemsis this site's presentation choice, not a system role. - Fixed directories that are not collections.
kb/messages/andkb/tasks/have fixed locations but noCOLLECTION.md. - Path rules inside an ordinary collection, such as the proposal archive
under
kb/reference/proposals/archive/. They belong to that collection's contract and the code that reads them.
Misuse
- Treating a special collection as a default input to generic operations. Being special names one role; it does not make the collection's artifacts tag members, evidence or validation targets.
- Inferring special status from a collection's name or contract. A collection becomes special only when a command starts relying on its location, and that change should add it here.
- Relocating a special collection with the relocation commands alone. Its role moves only with a code change.
Relevant Notes:
- Collection — defined-in: the boundary and contract every special collection also has
- Collections and types — see-also: how collection and type contracts compose, and the operational details of the special collections