Document frontmatter
Every document in this documentation starts with a YAML frontmatter block.
Fields
| Field | Type | Required | Description |
|---|---|---|---|
title | string | yes | Page title, used in navigation and search. |
description | string | yes | One-line summary, used for SEO and search snippets. |
template | enum | no | how-to, reference, concept, release-note, or index. Default concept. |
order | number | no | Navigation order within the folder (fallback when no _meta.json entry exists). |
tags | string[] | no | Free-form tags. |
audience | enum | no | both (default), human, or agent — whole-page audience. |
draft | boolean | no | true excludes the page from build and index. |
version | string | no | A single descriptive label for the version a whole page documents (informational). For per-version content within a page, use :::version blocks instead — see below. |
updated | date | no | Last meaningful content update. |
hide_toc | boolean | no | Hide the on-page table of contents. |
Audience blocks
Inside the body, :::human and :::agent fence audience-specific blocks; everything outside is shared. :::include{snippet="name"} inlines a snippet from templates/snippets/.
Version blocks
When a feature changes between product versions, fence the version-specific prose in :::version blocks. Content outside any block is shared across versions; only fence what actually differs.
:::version{until="7.0"}
`ROLLUP('Node', "Dimension", "Level")` — pre-7.1 syntax
:::
:::version{since="7.1"}
`ROLLUP('Node', "Level")` — dimension argument removed
:::
since/untilare inclusive bounds, compared by position incontent/_versions.json(the version registry). Either or both may be set; omit both for “all versions” (i.e. just shared content).- A reader picks a version with the selector at the top of the page (shown only on pages that contain version blocks). It defaults to the latest public version.
- Versions in the registry are
publicorunreleased. Unreleased content is for work-in-progress releases: it is excluded from the public site build, search, MCP andllms-full.txt, and is only visible to internal users (on the office network or signed in) via the internal site build. This lets you write and preview not-yet-public docs online without exposing them. - To start a new unreleased version, add it to
content/_versions.jsonwith"status": "unreleased"; promote it to"status": "public"(and move thedefault) when it ships.
The :::version spec is implemented in both web/src/plugins/remark-audience.ts and server/app/directives.py — change both, and the shared fixtures in server/tests/fixtures/directives/, together.