{% concept %}
Attributes
| Parameter | Type | Required | Description |
|---|---|---|---|
id | string | ✓ | Unique kebab-case identifier within the blueprint (e.g., 'bundle-store') |
label | string | ✓ | Short human-readable name shown as a section heading (e.g., 'Bundle Store') |
pattern | string | — | Named design pattern this concept uses (e.g., 'Repository', 'CQRS', 'Event Sourcing') |
Valid Children
| Tag | Multiplicity |
|---|---|
{% rule %} | [*] |
{% example %} | [*] |
Valid Parent Contexts
This tag is valid inside: {% blueprint %}
Rules
| Rule | Force | Realm | Reference | Description |
|---|---|---|---|---|
no-raw-store | | | — | No caller above the repository layer may read or write session storage directly. |
Groups a named architectural idea inside a \{% blueprint %\}. The prose body explains the rationale. Optional \{% rule %\} children declare scoped constraints that apply specifically to this concept. Optional \{% example %\} children illustrate usage.
On the rendered page, each concept becomes a ## \{label\} (or ## \{label\} *(pattern)*) section. Its rules appear in a <RulesTable> below the prose. Blueprint-level \{% rule %\} tags are rendered separately in a shared Rules section after all concepts.
Concept with id, label, and prose only
{% concept id="bundle-store" label="Bundle Store" %}All compiled TOON bundles are written to `dist/bundles/` and loaded into memoryat server start. The MCP server queries this in-memory store — it never readsfrom disk at request time.{% /concept %} Concept citing a design pattern, with a scoped rule
{% concept id="session-repo" label="Session Repository" pattern="Repository" scope="public agent" %}Abstracts all session persistence behind a single interface. Callers never touchthe underlying store directly.{% rule id="no-raw-store" force="must" %}No caller above the repository layer may read or write session storage directly.{% /rule %}{% /concept %}