Agent docs

Design language index

The thirteen traits, the layer-relation table, and the pin caveat.
Design language

The visual law every Versable app follows
Thirteen traits, each with principles, presets, and cases worked from shipped code.

traits layer derived from

Start at doc 0#

00-overview.md is the entry point: the mental model, the token layering, where each rule came from, and the consumer pin caveat that decides whether a rule below is reachable in your app yet. Read it before treating anything here as settled, then open the trait you were asked about.

The thirteen traits#

DocTrait
00-overview.mdoverview and mental model, plus provenance and consumer pins
01-foundations.mdfoundations
02-buttons-and-actions.mdbuttons and actions, including the accessibility principle §A9
03-status-language.mdstatus language, the three small-tag species
04-loading-and-states.mdloading, empty, and error states, including failure states §A11
05-cards-and-surfaces.mdcards, surfaces, and stat tiles
06-tables.mdtables
07-toolbars-and-filters.mdtoolbars and filters
08-navigation-and-shell.mdnavigation and shell
09-page-composition.mdpage composition
10-overlays.mdoverlays, and the peek-modal-page decision tree
11-motion.mdmotion
12-typography.mdtypography: the ramp, roles, title sets, the ink ladder, mono, tracking, truncation, do-nots
13-forms-and-fields.mdforms and fields: one field anatomy, widths as rhythm, sections, mode choosers, tables in a form, the three modes, validation voice, loading, presets, keyboard, do-nots; the SchemaForm canon

Each trait doc carries §A principles, §B presets, §C worked use cases cited to file:line.

How this layer relates to the other two#

The canon is law. It says what a surface should be and why. It does not say what props a component takes, and it never restates a component contract.

You are askingRead
what should this look like, and whyhere
what props does this component take../../packages/ui/docs/
I was asked for a screen, what does that bring along../app-patterns/
which of these rules does a component already handle for me../app-patterns/12-primitives-and-rules.md

Two things to know before you rely on a rule#

Check your pin. A rule written "as of kit 0.0.N" is unreachable in an app pinned below N, and a caret on a 0.0.x version is a patch pin. The consumer pins differ; 00-overview.md carries the current table.

Deviation is legitimate and never free. Owner ruling D1 lets a surface break the overlay tree when the break buys better and more consistent UX. What the ruling retired was silent discretion, not discretion. A surface that deviates records the reason in its own doc.

Section C renaming#

A canon doc's §C renames from "through Speedway" to "through the apps" in the same commit that adds its first non-speedway case. Lazy migration by owner ruling, no sweep.

@versable-git/ui · reference, canon, and method, read in place