@flowstack-ui/agent-tools 0.1.0-bootstrap.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (239) hide show
  1. package/.codex-plugin/plugin.json +37 -0
  2. package/CHANGELOG.md +21 -0
  3. package/LICENSE +21 -0
  4. package/README.md +125 -0
  5. package/docs/architecture.md +77 -0
  6. package/docs/releasing.md +26 -0
  7. package/docs/testing.md +32 -0
  8. package/package.json +63 -0
  9. package/public/index.json +2073 -0
  10. package/public/llms.txt +19 -0
  11. package/public/packages/atom/0.24.0/components/accordion.txt +131 -0
  12. package/public/packages/atom/0.24.0/components/alert-dialog.txt +112 -0
  13. package/public/packages/atom/0.24.0/components/app-bar.txt +96 -0
  14. package/public/packages/atom/0.24.0/components/aspect-ratio.txt +111 -0
  15. package/public/packages/atom/0.24.0/components/avatar.txt +119 -0
  16. package/public/packages/atom/0.24.0/components/badge.txt +123 -0
  17. package/public/packages/atom/0.24.0/components/bottom-navigation.txt +96 -0
  18. package/public/packages/atom/0.24.0/components/breadcrumb.txt +96 -0
  19. package/public/packages/atom/0.24.0/components/button.txt +98 -0
  20. package/public/packages/atom/0.24.0/components/carousel.txt +128 -0
  21. package/public/packages/atom/0.24.0/components/checkbox-group.txt +118 -0
  22. package/public/packages/atom/0.24.0/components/checkbox.txt +100 -0
  23. package/public/packages/atom/0.24.0/components/clipboard.txt +112 -0
  24. package/public/packages/atom/0.24.0/components/collapsible.txt +112 -0
  25. package/public/packages/atom/0.24.0/components/color-picker.txt +117 -0
  26. package/public/packages/atom/0.24.0/components/combobox.txt +126 -0
  27. package/public/packages/atom/0.24.0/components/context-menu.txt +114 -0
  28. package/public/packages/atom/0.24.0/components/data-grid.txt +136 -0
  29. package/public/packages/atom/0.24.0/components/dialog.txt +116 -0
  30. package/public/packages/atom/0.24.0/components/direction.txt +132 -0
  31. package/public/packages/atom/0.24.0/components/divider.txt +94 -0
  32. package/public/packages/atom/0.24.0/components/drag-drop.txt +141 -0
  33. package/public/packages/atom/0.24.0/components/drawer.txt +96 -0
  34. package/public/packages/atom/0.24.0/components/dropdown-menu.txt +112 -0
  35. package/public/packages/atom/0.24.0/components/feed.txt +132 -0
  36. package/public/packages/atom/0.24.0/components/field.txt +108 -0
  37. package/public/packages/atom/0.24.0/components/fieldset.txt +96 -0
  38. package/public/packages/atom/0.24.0/components/file-upload.txt +120 -0
  39. package/public/packages/atom/0.24.0/components/form.txt +98 -0
  40. package/public/packages/atom/0.24.0/components/hover-card.txt +114 -0
  41. package/public/packages/atom/0.24.0/components/image.txt +94 -0
  42. package/public/packages/atom/0.24.0/components/input.txt +96 -0
  43. package/public/packages/atom/0.24.0/components/label.txt +121 -0
  44. package/public/packages/atom/0.24.0/components/link.txt +100 -0
  45. package/public/packages/atom/0.24.0/components/list.txt +131 -0
  46. package/public/packages/atom/0.24.0/components/listbox.txt +120 -0
  47. package/public/packages/atom/0.24.0/components/menu.txt +126 -0
  48. package/public/packages/atom/0.24.0/components/menubar.txt +120 -0
  49. package/public/packages/atom/0.24.0/components/modal.txt +118 -0
  50. package/public/packages/atom/0.24.0/components/multi-select.txt +120 -0
  51. package/public/packages/atom/0.24.0/components/nav-list.txt +104 -0
  52. package/public/packages/atom/0.24.0/components/navigation-menu.txt +104 -0
  53. package/public/packages/atom/0.24.0/components/number-input.txt +124 -0
  54. package/public/packages/atom/0.24.0/components/otp-field.txt +122 -0
  55. package/public/packages/atom/0.24.0/components/pagination.txt +111 -0
  56. package/public/packages/atom/0.24.0/components/password-toggle-field.txt +116 -0
  57. package/public/packages/atom/0.24.0/components/popover.txt +122 -0
  58. package/public/packages/atom/0.24.0/components/pressable.txt +94 -0
  59. package/public/packages/atom/0.24.0/components/progress.txt +130 -0
  60. package/public/packages/atom/0.24.0/components/radio-group.txt +118 -0
  61. package/public/packages/atom/0.24.0/components/rating.txt +122 -0
  62. package/public/packages/atom/0.24.0/components/reorder.txt +141 -0
  63. package/public/packages/atom/0.24.0/components/scroll-area.txt +96 -0
  64. package/public/packages/atom/0.24.0/components/select.txt +126 -0
  65. package/public/packages/atom/0.24.0/components/sidebar.txt +96 -0
  66. package/public/packages/atom/0.24.0/components/skip-link.txt +96 -0
  67. package/public/packages/atom/0.24.0/components/slider.txt +124 -0
  68. package/public/packages/atom/0.24.0/components/swipeable-item.txt +118 -0
  69. package/public/packages/atom/0.24.0/components/switch.txt +116 -0
  70. package/public/packages/atom/0.24.0/components/table.txt +128 -0
  71. package/public/packages/atom/0.24.0/components/tabs.txt +96 -0
  72. package/public/packages/atom/0.24.0/components/textarea.txt +96 -0
  73. package/public/packages/atom/0.24.0/components/toast.txt +124 -0
  74. package/public/packages/atom/0.24.0/components/toggle-group.txt +118 -0
  75. package/public/packages/atom/0.24.0/components/toggle.txt +110 -0
  76. package/public/packages/atom/0.24.0/components/toolbar.txt +98 -0
  77. package/public/packages/atom/0.24.0/components/tooltip.txt +112 -0
  78. package/public/packages/atom/0.24.0/components/tree-grid.txt +138 -0
  79. package/public/packages/atom/0.24.0/components/tree.txt +138 -0
  80. package/public/packages/atom/0.24.0/components/visually-hidden.txt +119 -0
  81. package/public/packages/atom/0.24.0/docs/guides/agent-knowledge.txt +55 -0
  82. package/public/packages/atom/0.24.0/docs/guides/getting-started.txt +65 -0
  83. package/public/packages/atom/0.24.0/docs/guides/imports.txt +26 -0
  84. package/public/packages/atom/0.24.0/docs/guides/public-api.txt +100 -0
  85. package/public/packages/atom/0.24.0/guides/behavior-composition.txt +277 -0
  86. package/public/packages/atom/0.24.0/guides/layer-selection.txt +807 -0
  87. package/public/packages/atom/0.24.0/index.txt +89 -0
  88. package/public/packages/brick/0.1.11/components/accordion.txt +158 -0
  89. package/public/packages/brick/0.1.11/components/alert-dialog.txt +175 -0
  90. package/public/packages/brick/0.1.11/components/app-bar.txt +134 -0
  91. package/public/packages/brick/0.1.11/components/appearance.txt +143 -0
  92. package/public/packages/brick/0.1.11/components/aspect-ratio.txt +136 -0
  93. package/public/packages/brick/0.1.11/components/avatar.txt +152 -0
  94. package/public/packages/brick/0.1.11/components/badge.txt +139 -0
  95. package/public/packages/brick/0.1.11/components/bleed.txt +104 -0
  96. package/public/packages/brick/0.1.11/components/bottom-navigation.txt +106 -0
  97. package/public/packages/brick/0.1.11/components/breadcrumb.txt +96 -0
  98. package/public/packages/brick/0.1.11/components/button.txt +103 -0
  99. package/public/packages/brick/0.1.11/components/card.txt +132 -0
  100. package/public/packages/brick/0.1.11/components/carousel.txt +206 -0
  101. package/public/packages/brick/0.1.11/components/checkbox-group.txt +175 -0
  102. package/public/packages/brick/0.1.11/components/checkbox.txt +103 -0
  103. package/public/packages/brick/0.1.11/components/chip.txt +128 -0
  104. package/public/packages/brick/0.1.11/components/code-block.txt +134 -0
  105. package/public/packages/brick/0.1.11/components/code.txt +120 -0
  106. package/public/packages/brick/0.1.11/components/collapsible.txt +179 -0
  107. package/public/packages/brick/0.1.11/components/color-picker.txt +135 -0
  108. package/public/packages/brick/0.1.11/components/color-swatch.txt +98 -0
  109. package/public/packages/brick/0.1.11/components/combobox.txt +157 -0
  110. package/public/packages/brick/0.1.11/components/container.txt +112 -0
  111. package/public/packages/brick/0.1.11/components/context-menu.txt +174 -0
  112. package/public/packages/brick/0.1.11/components/data-grid.txt +199 -0
  113. package/public/packages/brick/0.1.11/components/data-list.txt +115 -0
  114. package/public/packages/brick/0.1.11/components/dialog.txt +176 -0
  115. package/public/packages/brick/0.1.11/components/divider.txt +104 -0
  116. package/public/packages/brick/0.1.11/components/drawer.txt +146 -0
  117. package/public/packages/brick/0.1.11/components/dropdown-menu.txt +179 -0
  118. package/public/packages/brick/0.1.11/components/feed.txt +143 -0
  119. package/public/packages/brick/0.1.11/components/field.txt +115 -0
  120. package/public/packages/brick/0.1.11/components/fieldset.txt +103 -0
  121. package/public/packages/brick/0.1.11/components/file-upload.txt +154 -0
  122. package/public/packages/brick/0.1.11/components/form.txt +108 -0
  123. package/public/packages/brick/0.1.11/components/frame.txt +132 -0
  124. package/public/packages/brick/0.1.11/components/grid.txt +141 -0
  125. package/public/packages/brick/0.1.11/components/group.txt +136 -0
  126. package/public/packages/brick/0.1.11/components/hide.txt +121 -0
  127. package/public/packages/brick/0.1.11/components/hover-card.txt +156 -0
  128. package/public/packages/brick/0.1.11/components/icon-button.txt +119 -0
  129. package/public/packages/brick/0.1.11/components/icon.txt +160 -0
  130. package/public/packages/brick/0.1.11/components/image.txt +163 -0
  131. package/public/packages/brick/0.1.11/components/input.txt +101 -0
  132. package/public/packages/brick/0.1.11/components/link-box.txt +161 -0
  133. package/public/packages/brick/0.1.11/components/link.txt +133 -0
  134. package/public/packages/brick/0.1.11/components/list.txt +139 -0
  135. package/public/packages/brick/0.1.11/components/menubar.txt +174 -0
  136. package/public/packages/brick/0.1.11/components/multi-select.txt +153 -0
  137. package/public/packages/brick/0.1.11/components/nav-list.txt +130 -0
  138. package/public/packages/brick/0.1.11/components/navigation-menu.txt +150 -0
  139. package/public/packages/brick/0.1.11/components/notification-badge.txt +148 -0
  140. package/public/packages/brick/0.1.11/components/number-input.txt +150 -0
  141. package/public/packages/brick/0.1.11/components/otp-field.txt +146 -0
  142. package/public/packages/brick/0.1.11/components/pagination.txt +124 -0
  143. package/public/packages/brick/0.1.11/components/password-toggle-field.txt +146 -0
  144. package/public/packages/brick/0.1.11/components/popover.txt +181 -0
  145. package/public/packages/brick/0.1.11/components/progress-circle.txt +142 -0
  146. package/public/packages/brick/0.1.11/components/progress.txt +150 -0
  147. package/public/packages/brick/0.1.11/components/radio-group.txt +152 -0
  148. package/public/packages/brick/0.1.11/components/rating.txt +151 -0
  149. package/public/packages/brick/0.1.11/components/reorderable-list.txt +130 -0
  150. package/public/packages/brick/0.1.11/components/scroll-area.txt +110 -0
  151. package/public/packages/brick/0.1.11/components/section.txt +118 -0
  152. package/public/packages/brick/0.1.11/components/segment-group.txt +116 -0
  153. package/public/packages/brick/0.1.11/components/select.txt +157 -0
  154. package/public/packages/brick/0.1.11/components/show.txt +121 -0
  155. package/public/packages/brick/0.1.11/components/sidebar.txt +126 -0
  156. package/public/packages/brick/0.1.11/components/skeleton.txt +127 -0
  157. package/public/packages/brick/0.1.11/components/skip-link.txt +102 -0
  158. package/public/packages/brick/0.1.11/components/slider.txt +147 -0
  159. package/public/packages/brick/0.1.11/components/stack.txt +155 -0
  160. package/public/packages/brick/0.1.11/components/status.txt +110 -0
  161. package/public/packages/brick/0.1.11/components/surface.txt +194 -0
  162. package/public/packages/brick/0.1.11/components/swipeable-item.txt +154 -0
  163. package/public/packages/brick/0.1.11/components/switch.txt +152 -0
  164. package/public/packages/brick/0.1.11/components/table.txt +183 -0
  165. package/public/packages/brick/0.1.11/components/tabs.txt +136 -0
  166. package/public/packages/brick/0.1.11/components/text.txt +148 -0
  167. package/public/packages/brick/0.1.11/components/textarea.txt +101 -0
  168. package/public/packages/brick/0.1.11/components/toast.txt +150 -0
  169. package/public/packages/brick/0.1.11/components/toggle-group.txt +149 -0
  170. package/public/packages/brick/0.1.11/components/toggle.txt +140 -0
  171. package/public/packages/brick/0.1.11/components/toolbar.txt +118 -0
  172. package/public/packages/brick/0.1.11/components/tooltip.txt +156 -0
  173. package/public/packages/brick/0.1.11/components/tree-grid.txt +160 -0
  174. package/public/packages/brick/0.1.11/components/tree.txt +156 -0
  175. package/public/packages/brick/0.1.11/components/visually-hidden.txt +123 -0
  176. package/public/packages/brick/0.1.11/components/z-stack.txt +143 -0
  177. package/public/packages/brick/0.1.11/docs/guides/agent-knowledge.txt +67 -0
  178. package/public/packages/brick/0.1.11/docs/guides/appearance-and-tokens.txt +179 -0
  179. package/public/packages/brick/0.1.11/docs/guides/browser-support.txt +25 -0
  180. package/public/packages/brick/0.1.11/docs/guides/control-sizing.txt +59 -0
  181. package/public/packages/brick/0.1.11/docs/guides/installation.txt +79 -0
  182. package/public/packages/brick/0.1.11/docs/guides/theme-contract.txt +90 -0
  183. package/public/packages/brick/0.1.11/guides/interface-composition.txt +665 -0
  184. package/public/packages/brick/0.1.11/guides/layer-selection.txt +1437 -0
  185. package/public/packages/brick/0.1.11/index.txt +110 -0
  186. package/public/packages/colors/0.1.1/docs/agent-knowledge.txt +63 -0
  187. package/public/packages/colors/0.1.1/docs/architecture.txt +74 -0
  188. package/public/packages/colors/0.1.1/docs/color-foundations.txt +128 -0
  189. package/public/packages/colors/0.1.1/docs/compatibility.txt +75 -0
  190. package/public/packages/colors/0.1.1/docs/dependency-qualification.txt +117 -0
  191. package/public/packages/colors/0.1.1/docs/installation.txt +48 -0
  192. package/public/packages/colors/0.1.1/docs/palette-generation.txt +151 -0
  193. package/public/packages/colors/0.1.1/docs/releasing.txt +34 -0
  194. package/public/packages/colors/0.1.1/docs/testing.txt +51 -0
  195. package/public/packages/colors/0.1.1/guides/colors-system.txt +282 -0
  196. package/public/packages/colors/0.1.1/index.txt +29 -0
  197. package/public/packages/colors/0.1.1/operations/color-conversion.txt +14 -0
  198. package/public/packages/colors/0.1.1/operations/color-inspection.txt +23 -0
  199. package/public/packages/colors/0.1.1/operations/color-measurement.txt +18 -0
  200. package/public/packages/colors/0.1.1/operations/color-provenance.txt +14 -0
  201. package/public/packages/colors/0.1.1/operations/named-palette-reference.txt +15 -0
  202. package/public/packages/colors/0.1.1/operations/palette-candidate.txt +37 -0
  203. package/public/packages/theme/0.1.1/docs/agent-knowledge.txt +44 -0
  204. package/public/packages/theme/0.1.1/docs/appearances-and-portals.txt +41 -0
  205. package/public/packages/theme/0.1.1/docs/architecture.txt +121 -0
  206. package/public/packages/theme/0.1.1/docs/authoring.txt +141 -0
  207. package/public/packages/theme/0.1.1/docs/colors-interchange.txt +82 -0
  208. package/public/packages/theme/0.1.1/docs/fonts.txt +40 -0
  209. package/public/packages/theme/0.1.1/docs/installation.txt +45 -0
  210. package/public/packages/theme/0.1.1/docs/migration.txt +40 -0
  211. package/public/packages/theme/0.1.1/docs/testing.txt +64 -0
  212. package/public/packages/theme/0.1.1/docs/troubleshooting.txt +53 -0
  213. package/public/packages/theme/0.1.1/guides/theme-system.txt +340 -0
  214. package/public/packages/theme/0.1.1/index.txt +31 -0
  215. package/public/packages/theme/0.1.1/operations/brick-contract-compatibility.txt +35 -0
  216. package/public/packages/theme/0.1.1/operations/colors-interchange.txt +35 -0
  217. package/public/packages/theme/0.1.1/operations/theme-artifacts.txt +19 -0
  218. package/public/packages/theme/0.1.1/operations/theme-cli.txt +10 -0
  219. package/public/packages/theme/0.1.1/operations/theme-compilation.txt +23 -0
  220. package/public/packages/theme/0.1.1/operations/theme-definition.txt +36 -0
  221. package/public/packages/theme/0.1.1/operations/theme-validation.txt +19 -0
  222. package/public/tasks/data.txt +39 -0
  223. package/public/tasks/forms.txt +65 -0
  224. package/public/tasks/layout.txt +37 -0
  225. package/public/tasks/navigation.txt +51 -0
  226. package/public/tasks/overlays.txt +39 -0
  227. package/public/tasks/theming.txt +37 -0
  228. package/skills/flowstack-ui-builder/SKILL.md +35 -0
  229. package/skills/flowstack-ui-builder/agents/openai.yaml +4 -0
  230. package/skills/flowstack-ui-builder/scripts/resolve-agent-knowledge.mjs +399 -0
  231. package/skills/flowstack-ui-compose/SKILL.md +32 -0
  232. package/skills/flowstack-ui-compose/agents/openai.yaml +4 -0
  233. package/skills/flowstack-ui-compose/scripts/resolve-agent-knowledge.mjs +399 -0
  234. package/skills/flowstack-ui-maintainer/SKILL.md +40 -0
  235. package/skills/flowstack-ui-maintainer/agents/openai.yaml +4 -0
  236. package/skills/flowstack-ui-maintainer/scripts/resolve-agent-knowledge.mjs +399 -0
  237. package/skills/flowstack-ui-review/SKILL.md +29 -0
  238. package/skills/flowstack-ui-review/agents/openai.yaml +4 -0
  239. package/skills/flowstack-ui-review/scripts/resolve-agent-knowledge.mjs +399 -0
@@ -0,0 +1,89 @@
1
+ # @flowstack-ui/atom@0.24.0
2
+
3
+ Archive SHA-256: `1fbbbe2b8109f6a056637ebe3e4ceafdebaddad3e64567eb5e43f5b958f35fbb`
4
+ Coverage: 2789/2789 public surfaces; zero failures.
5
+
6
+ ## component
7
+
8
+ - [Accordion](/packages/atom/0.24.0/components/accordion.txt)
9
+ - [AlertDialog](/packages/atom/0.24.0/components/alert-dialog.txt)
10
+ - [AppBar](/packages/atom/0.24.0/components/app-bar.txt)
11
+ - [AspectRatio](/packages/atom/0.24.0/components/aspect-ratio.txt)
12
+ - [Avatar](/packages/atom/0.24.0/components/avatar.txt)
13
+ - [Badge](/packages/atom/0.24.0/components/badge.txt)
14
+ - [BottomNavigation](/packages/atom/0.24.0/components/bottom-navigation.txt)
15
+ - [Breadcrumb](/packages/atom/0.24.0/components/breadcrumb.txt)
16
+ - [Button](/packages/atom/0.24.0/components/button.txt)
17
+ - [Carousel](/packages/atom/0.24.0/components/carousel.txt)
18
+ - [Checkbox](/packages/atom/0.24.0/components/checkbox.txt)
19
+ - [CheckboxGroup](/packages/atom/0.24.0/components/checkbox-group.txt)
20
+ - [Clipboard](/packages/atom/0.24.0/components/clipboard.txt)
21
+ - [Collapsible](/packages/atom/0.24.0/components/collapsible.txt)
22
+ - [Color Picker](/packages/atom/0.24.0/components/color-picker.txt)
23
+ - [Combobox](/packages/atom/0.24.0/components/combobox.txt)
24
+ - [ContextMenu](/packages/atom/0.24.0/components/context-menu.txt)
25
+ - [DataGrid](/packages/atom/0.24.0/components/data-grid.txt)
26
+ - [Dialog](/packages/atom/0.24.0/components/dialog.txt)
27
+ - [Direction](/packages/atom/0.24.0/components/direction.txt)
28
+ - [Divider](/packages/atom/0.24.0/components/divider.txt)
29
+ - [DragDrop](/packages/atom/0.24.0/components/drag-drop.txt)
30
+ - [Drawer](/packages/atom/0.24.0/components/drawer.txt)
31
+ - [DropdownMenu](/packages/atom/0.24.0/components/dropdown-menu.txt)
32
+ - [Feed](/packages/atom/0.24.0/components/feed.txt)
33
+ - [Field](/packages/atom/0.24.0/components/field.txt)
34
+ - [Fieldset](/packages/atom/0.24.0/components/fieldset.txt)
35
+ - [FileUpload](/packages/atom/0.24.0/components/file-upload.txt)
36
+ - [Form](/packages/atom/0.24.0/components/form.txt)
37
+ - [HoverCard](/packages/atom/0.24.0/components/hover-card.txt)
38
+ - [Image](/packages/atom/0.24.0/components/image.txt)
39
+ - [Input](/packages/atom/0.24.0/components/input.txt)
40
+ - [Label](/packages/atom/0.24.0/components/label.txt)
41
+ - [Link](/packages/atom/0.24.0/components/link.txt)
42
+ - [List](/packages/atom/0.24.0/components/list.txt)
43
+ - [Listbox](/packages/atom/0.24.0/components/listbox.txt)
44
+ - [Menu](/packages/atom/0.24.0/components/menu.txt)
45
+ - [Menubar](/packages/atom/0.24.0/components/menubar.txt)
46
+ - [Modal](/packages/atom/0.24.0/components/modal.txt)
47
+ - [MultiSelect](/packages/atom/0.24.0/components/multi-select.txt)
48
+ - [NavList](/packages/atom/0.24.0/components/nav-list.txt)
49
+ - [NavigationMenu](/packages/atom/0.24.0/components/navigation-menu.txt)
50
+ - [NumberInput](/packages/atom/0.24.0/components/number-input.txt)
51
+ - [OTPField](/packages/atom/0.24.0/components/otp-field.txt)
52
+ - [Pagination](/packages/atom/0.24.0/components/pagination.txt)
53
+ - [PasswordToggleField](/packages/atom/0.24.0/components/password-toggle-field.txt)
54
+ - [Popover](/packages/atom/0.24.0/components/popover.txt)
55
+ - [Pressable](/packages/atom/0.24.0/components/pressable.txt)
56
+ - [Progress](/packages/atom/0.24.0/components/progress.txt)
57
+ - [RadioGroup](/packages/atom/0.24.0/components/radio-group.txt)
58
+ - [Rating](/packages/atom/0.24.0/components/rating.txt)
59
+ - [Reorder](/packages/atom/0.24.0/components/reorder.txt)
60
+ - [ScrollArea](/packages/atom/0.24.0/components/scroll-area.txt)
61
+ - [Select](/packages/atom/0.24.0/components/select.txt)
62
+ - [Sidebar](/packages/atom/0.24.0/components/sidebar.txt)
63
+ - [SkipLink](/packages/atom/0.24.0/components/skip-link.txt)
64
+ - [Slider](/packages/atom/0.24.0/components/slider.txt)
65
+ - [SwipeableItem](/packages/atom/0.24.0/components/swipeable-item.txt)
66
+ - [Switch](/packages/atom/0.24.0/components/switch.txt)
67
+ - [Table](/packages/atom/0.24.0/components/table.txt)
68
+ - [Tabs](/packages/atom/0.24.0/components/tabs.txt)
69
+ - [Textarea](/packages/atom/0.24.0/components/textarea.txt)
70
+ - [Toast](/packages/atom/0.24.0/components/toast.txt)
71
+ - [Toggle](/packages/atom/0.24.0/components/toggle.txt)
72
+ - [ToggleGroup](/packages/atom/0.24.0/components/toggle-group.txt)
73
+ - [Toolbar](/packages/atom/0.24.0/components/toolbar.txt)
74
+ - [Tooltip](/packages/atom/0.24.0/components/tooltip.txt)
75
+ - [Tree](/packages/atom/0.24.0/components/tree.txt)
76
+ - [TreeGrid](/packages/atom/0.24.0/components/tree-grid.txt)
77
+ - [VisuallyHidden](/packages/atom/0.24.0/components/visually-hidden.txt)
78
+
79
+ ## document
80
+
81
+ - [guides/agent-knowledge](/packages/atom/0.24.0/docs/guides/agent-knowledge.txt)
82
+ - [guides/getting-started](/packages/atom/0.24.0/docs/guides/getting-started.txt)
83
+ - [guides/imports](/packages/atom/0.24.0/docs/guides/imports.txt)
84
+ - [guides/public-api](/packages/atom/0.24.0/docs/guides/public-api.txt)
85
+
86
+ ## guide
87
+
88
+ - [Atom behavior composition](/packages/atom/0.24.0/guides/behavior-composition.txt)
89
+ - [Atom layer selection](/packages/atom/0.24.0/guides/layer-selection.txt)
@@ -0,0 +1,158 @@
1
+ # Accordion
2
+
3
+ Source: @flowstack-ui/brick@0.1.11
4
+ Kind: component
5
+ ID: accordion
6
+
7
+ # Accordion agent guide
8
+
9
+ ## Purpose
10
+
11
+ Present a finished group of related disclosure sections while Atom owns expanded state, headings, linked panels, and keyboard navigation.
12
+
13
+ ## Use when
14
+
15
+ - Several related sections belong to one scannable group and readers should reveal only the details they need.
16
+
17
+ ## Choose something else when
18
+
19
+ - Only one independent in-flow region needs disclosure. Use Collapsible.
20
+ - Peer controls switch one shared content view. Use Tabs.
21
+ - Content must layer, dismiss outside, contain focus, or lock document scrolling. Use Dialog, Drawer, or another matching overlay component.
22
+
23
+ ## Required composition
24
+
25
+ - Compose Root > Item > Header > Trigger with Indicator inside Trigger, then place Content > ContentInner as Header's sibling inside the same Item.
26
+ - Put visible panel padding and ordinary Brick layout in ContentInner so Content remains Atom's measured motion boundary.
27
+ - Choose Header levels from the host document and use Content landmark=false when many regions would make landmark navigation noisy.
28
+ - Use the default decorative Indicator when the standard down-when-closed and up-when-open state cue fits; authored Indicator children may replace only the artwork.
29
+
30
+ ## Rules
31
+
32
+ - **MUST:** Use Root, Item, Header, Trigger, Content, and ContentInner rather than rebuilding disclosure state, relationships, measurement, or animation lifecycle.
33
+ - **MUST:** Let Accordion Trigger own the finished control recipe; do not compose Button or IconButton into Trigger because competing recipes would own one element.
34
+ - **MUST:** Keep visible padding and panel layout in ContentInner rather than Content so Atom can measure and animate the panel accurately.
35
+ - **MUST:** Choose Header level from the page outline and opt out of optional Content landmarks when the resulting region count would be noisy.
36
+ - **MUST:** Load styles.css or core.css plus accordion.css.
37
+ - **MUST:** Keep grouped trigger corners continuous with the enclosing Root and verify that the complete focus ring remains visible at the first and last group edges.
38
+ - **MUST:** Keep the default Indicator pointing down while closed and up while open in both LTR and RTL; use custom decorative artwork only for a deliberate alternate state language.
39
+
40
+ ## Common mistakes
41
+
42
+ - **Avoid:** Using Accordion for one disclosure, nesting a finished Button in Trigger, or placing padding directly on Content. **Instead:** Use Collapsible for one region, let Trigger own its visual recipe, and put panel spacing in ContentInner.
43
+ - **Avoid:** Accepting the default heading level or region landmark count without checking the host page. **Instead:** Set Header to the correct document level and use landmark=false when many open panels would create excessive landmarks.
44
+ - **Avoid:** Rounding every Trigger in one outlined group or clipping Root paint so the first and last Trigger focus rings are cut off. **Instead:** Treat Root as the group silhouette, keep interior Trigger edges square, round only exposed group corners, and preserve visible focus outside the group boundary.
45
+
46
+ ## Validation checklist
47
+
48
+ - Check complete anatomy, unique values, heading order, Trigger names, linked panel relationships, landmark usefulness, and CSS delivery.
49
+ - Test Enter, Space, Home, End, orientation-aware arrows, RTL, disabled and locked-open state, single and multiple modes, and controlled and uncontrolled state.
50
+ - Test initial open, open and close motion, down/up Indicator state, dynamic panel measurement, reduced motion, complete first and last Trigger focus geometry, continuous grouped corners, long labels, narrow widths, zoom, and forced colors.
51
+
52
+ ## Related guidance
53
+
54
+ - `collapsible`
55
+ - `tabs`
56
+ - `drawer`
57
+ - `stack`
58
+ - `text`
59
+
60
+ ## Machine record
61
+
62
+ ```json
63
+ {
64
+ "schema": "flowstack.agent-component.v1",
65
+ "id": "accordion",
66
+ "name": "Accordion",
67
+ "package": "@flowstack-ui/brick",
68
+ "layer": "brick",
69
+ "kind": "component",
70
+ "purpose": "Present a finished group of related disclosure sections while Atom owns expanded state, headings, linked panels, and keyboard navigation.",
71
+ "useWhen": [
72
+ "Several related sections belong to one scannable group and readers should reveal only the details they need."
73
+ ],
74
+ "avoidWhen": [
75
+ {
76
+ "condition": "Only one independent in-flow region needs disclosure.",
77
+ "useInstead": "Collapsible"
78
+ },
79
+ {
80
+ "condition": "Peer controls switch one shared content view.",
81
+ "useInstead": "Tabs"
82
+ },
83
+ {
84
+ "condition": "Content must layer, dismiss outside, contain focus, or lock document scrolling.",
85
+ "useInstead": "Dialog, Drawer, or another matching overlay component"
86
+ }
87
+ ],
88
+ "composition": [
89
+ "Compose Root > Item > Header > Trigger with Indicator inside Trigger, then place Content > ContentInner as Header's sibling inside the same Item.",
90
+ "Put visible panel padding and ordinary Brick layout in ContentInner so Content remains Atom's measured motion boundary.",
91
+ "Choose Header levels from the host document and use Content landmark=false when many regions would make landmark navigation noisy.",
92
+ "Use the default decorative Indicator when the standard down-when-closed and up-when-open state cue fits; authored Indicator children may replace only the artwork."
93
+ ],
94
+ "rules": [
95
+ {
96
+ "id": "accordion-complete-anatomy",
97
+ "level": "must",
98
+ "statement": "Use Root, Item, Header, Trigger, Content, and ContentInner rather than rebuilding disclosure state, relationships, measurement, or animation lifecycle."
99
+ },
100
+ {
101
+ "id": "accordion-single-trigger-owner",
102
+ "level": "must",
103
+ "statement": "Let Accordion Trigger own the finished control recipe; do not compose Button or IconButton into Trigger because competing recipes would own one element."
104
+ },
105
+ {
106
+ "id": "accordion-content-inner",
107
+ "level": "must",
108
+ "statement": "Keep visible padding and panel layout in ContentInner rather than Content so Atom can measure and animate the panel accurately."
109
+ },
110
+ {
111
+ "id": "accordion-heading-landmarks",
112
+ "level": "must",
113
+ "statement": "Choose Header level from the page outline and opt out of optional Content landmarks when the resulting region count would be noisy."
114
+ },
115
+ {
116
+ "id": "accordion-css",
117
+ "level": "must",
118
+ "statement": "Load styles.css or core.css plus accordion.css."
119
+ },
120
+ {
121
+ "id": "accordion-grouped-focus-geometry",
122
+ "level": "must",
123
+ "statement": "Keep grouped trigger corners continuous with the enclosing Root and verify that the complete focus ring remains visible at the first and last group edges."
124
+ },
125
+ {
126
+ "id": "accordion-indicator-direction",
127
+ "level": "must",
128
+ "statement": "Keep the default Indicator pointing down while closed and up while open in both LTR and RTL; use custom decorative artwork only for a deliberate alternate state language."
129
+ }
130
+ ],
131
+ "commonMistakes": [
132
+ {
133
+ "mistake": "Using Accordion for one disclosure, nesting a finished Button in Trigger, or placing padding directly on Content.",
134
+ "correction": "Use Collapsible for one region, let Trigger own its visual recipe, and put panel spacing in ContentInner."
135
+ },
136
+ {
137
+ "mistake": "Accepting the default heading level or region landmark count without checking the host page.",
138
+ "correction": "Set Header to the correct document level and use landmark=false when many open panels would create excessive landmarks."
139
+ },
140
+ {
141
+ "mistake": "Rounding every Trigger in one outlined group or clipping Root paint so the first and last Trigger focus rings are cut off.",
142
+ "correction": "Treat Root as the group silhouette, keep interior Trigger edges square, round only exposed group corners, and preserve visible focus outside the group boundary."
143
+ }
144
+ ],
145
+ "validation": [
146
+ "Check complete anatomy, unique values, heading order, Trigger names, linked panel relationships, landmark usefulness, and CSS delivery.",
147
+ "Test Enter, Space, Home, End, orientation-aware arrows, RTL, disabled and locked-open state, single and multiple modes, and controlled and uncontrolled state.",
148
+ "Test initial open, open and close motion, down/up Indicator state, dynamic panel measurement, reduced motion, complete first and last Trigger focus geometry, continuous grouped corners, long labels, narrow widths, zoom, and forced colors."
149
+ ],
150
+ "related": [
151
+ "collapsible",
152
+ "tabs",
153
+ "drawer",
154
+ "stack",
155
+ "text"
156
+ ]
157
+ }
158
+ ```
@@ -0,0 +1,175 @@
1
+ # AlertDialog
2
+
3
+ Source: @flowstack-ui/brick@0.1.11
4
+ Kind: component
5
+ ID: alert-dialog
6
+
7
+ # AlertDialog agent guide
8
+
9
+ ## Purpose
10
+
11
+ Present a finished urgent or consequential decision that requires an explicit response, safe initial focus, and non-dismissible backdrop behavior.
12
+
13
+ ## Use when
14
+
15
+ - A destructive, irreversible, security-sensitive, unsaved-change, or otherwise consequential action requires a safe cancellation choice and an explicit response before continuing.
16
+
17
+ ## Choose something else when
18
+
19
+ - The surface presents an ordinary form, information, or multi-step task rather than one urgent decision. Use Dialog.
20
+ - The content is an anchored utility panel or passive feedback that does not require a response. Use Popover or Menu, or Toast or Status.
21
+
22
+ ## Required composition
23
+
24
+ - Compose AlertDialog.Root with AlertDialog.Trigger and AlertDialog.Portal; inside Portal keep AlertDialog.Overlay and AlertDialog.Content as siblings. Inside Content, arrange Header with the required Title and Description, use a short optional Body only when needed, and place Cancel before Action in Footer.
25
+ - Compose Brick Button through Cancel and Action so each response keeps its visual and behavioral role. When a local Appearance scope owns the trigger, portal into that scope or apply the same Appearance to the portalled visual root.
26
+
27
+ ## Rules
28
+
29
+ - **MUST:** Reserve AlertDialog for one urgent or consequential decision; use Dialog for ordinary tasks, forms, or complex workflows.
30
+ - **MUST:** Keep the alertdialog semantics and provide both an accessible name with visible Title or native labeling and an accessible description with Description or native aria-describedby.
31
+ - **MUST:** Place a visible enabled Cancel before Action and make Cancel the safe initial focus target for consequential actions unless an explicitly safer workflow target is supplied.
32
+ - **MUST:** Do not add backdrop dismissal; require Cancel, Action, or an intentionally permitted Escape path to resolve the decision.
33
+ - **MUST:** Render Overlay and Content as siblings inside Portal and rely on AlertDialog's inherited modal focus, isolation, scroll, and top-layer ownership.
34
+ - **MUST:** Apply destructive or cautionary tone to the Action Button, not to the entire dialog surface, and keep Cancel visually safe and unambiguous.
35
+ - **MUST:** When an Action starts asynchronous validation or work, prevent its automatic close until the application confirms success, preserves errors, and intentionally updates open state.
36
+ - **MUST:** Keep permissions, authorization, persistence, pending state, error recovery, and the actual destructive operation in application code; AlertDialog owns presentation and interaction semantics only.
37
+ - **SHOULD:** Keep the decision concise; use the bounded Body only for essential supporting context and move complex forms or third-party interactive portals to Dialog.
38
+ - **MUST:** When Portal leaves a local Appearance scope, reproduce that scope on the portalled visual root or target a portal container inside it.
39
+ - **MUST:** Load styles.css or core.css plus alert-dialog.css.
40
+
41
+ ## Common mistakes
42
+
43
+ - **Avoid:** Using AlertDialog for an ordinary form, focusing the destructive Action first, omitting the description, or making the backdrop dismiss the choice. **Instead:** Use Dialog for ordinary tasks; for consequential decisions provide Title, Description, safe Cancel focus, explicit Action, and no backdrop dismissal.
44
+ - **Avoid:** Closing immediately while an asynchronous destructive operation is still pending or styling the whole surface as destructive. **Instead:** Prevent automatic close until application work succeeds and communicate danger through the Action Button and concise decision copy.
45
+
46
+ ## Validation checklist
47
+
48
+ - Verify alertdialog role, accessible name and description, visible Cancel before Action, safe Cancel initial focus for keyboard, pointer, touch, and programmatic opening, Tab containment, and that backdrop interaction cannot close the layer.
49
+ - Verify Cancel and Action close reasons, prevented asynchronous Action behavior, pending and error recovery, controlled state, intentionally permitted Escape behavior, nested top-layer ownership, scroll lock, background isolation, exit presence, and focus restoration.
50
+ - Verify long-label footer reflow, optional Body overflow, zoom, narrow and short viewports, reduced motion, forced colors, light and dark appearance on portalled Content, and required CSS.
51
+
52
+ ## Related guidance
53
+
54
+ - `@flowstack-ui/atom/agents/alert-dialog`
55
+ - `dialog`
56
+ - `button`
57
+ - `popover`
58
+ - `toast`
59
+ - `appearance`
60
+
61
+ ## Machine record
62
+
63
+ ```json
64
+ {
65
+ "schema": "flowstack.agent-component.v1",
66
+ "id": "alert-dialog",
67
+ "name": "AlertDialog",
68
+ "package": "@flowstack-ui/brick",
69
+ "layer": "brick",
70
+ "kind": "component",
71
+ "purpose": "Present a finished urgent or consequential decision that requires an explicit response, safe initial focus, and non-dismissible backdrop behavior.",
72
+ "useWhen": [
73
+ "A destructive, irreversible, security-sensitive, unsaved-change, or otherwise consequential action requires a safe cancellation choice and an explicit response before continuing."
74
+ ],
75
+ "avoidWhen": [
76
+ {
77
+ "condition": "The surface presents an ordinary form, information, or multi-step task rather than one urgent decision.",
78
+ "useInstead": "Dialog"
79
+ },
80
+ {
81
+ "condition": "The content is an anchored utility panel or passive feedback that does not require a response.",
82
+ "useInstead": "Popover or Menu, or Toast or Status"
83
+ }
84
+ ],
85
+ "composition": [
86
+ "Compose AlertDialog.Root with AlertDialog.Trigger and AlertDialog.Portal; inside Portal keep AlertDialog.Overlay and AlertDialog.Content as siblings. Inside Content, arrange Header with the required Title and Description, use a short optional Body only when needed, and place Cancel before Action in Footer.",
87
+ "Compose Brick Button through Cancel and Action so each response keeps its visual and behavioral role. When a local Appearance scope owns the trigger, portal into that scope or apply the same Appearance to the portalled visual root."
88
+ ],
89
+ "rules": [
90
+ {
91
+ "id": "alert-dialog-consequential-only",
92
+ "level": "must",
93
+ "statement": "Reserve AlertDialog for one urgent or consequential decision; use Dialog for ordinary tasks, forms, or complex workflows."
94
+ },
95
+ {
96
+ "id": "alert-dialog-required-semantics",
97
+ "level": "must",
98
+ "statement": "Keep the alertdialog semantics and provide both an accessible name with visible Title or native labeling and an accessible description with Description or native aria-describedby."
99
+ },
100
+ {
101
+ "id": "alert-dialog-safe-cancel",
102
+ "level": "must",
103
+ "statement": "Place a visible enabled Cancel before Action and make Cancel the safe initial focus target for consequential actions unless an explicitly safer workflow target is supplied."
104
+ },
105
+ {
106
+ "id": "alert-dialog-no-backdrop-dismissal",
107
+ "level": "must",
108
+ "statement": "Do not add backdrop dismissal; require Cancel, Action, or an intentionally permitted Escape path to resolve the decision."
109
+ },
110
+ {
111
+ "id": "alert-dialog-overlay-content-siblings",
112
+ "level": "must",
113
+ "statement": "Render Overlay and Content as siblings inside Portal and rely on AlertDialog's inherited modal focus, isolation, scroll, and top-layer ownership."
114
+ },
115
+ {
116
+ "id": "alert-dialog-action-tone",
117
+ "level": "must",
118
+ "statement": "Apply destructive or cautionary tone to the Action Button, not to the entire dialog surface, and keep Cancel visually safe and unambiguous."
119
+ },
120
+ {
121
+ "id": "alert-dialog-controlled-action",
122
+ "level": "must",
123
+ "statement": "When an Action starts asynchronous validation or work, prevent its automatic close until the application confirms success, preserves errors, and intentionally updates open state."
124
+ },
125
+ {
126
+ "id": "alert-dialog-application-ownership",
127
+ "level": "must",
128
+ "statement": "Keep permissions, authorization, persistence, pending state, error recovery, and the actual destructive operation in application code; AlertDialog owns presentation and interaction semantics only."
129
+ },
130
+ {
131
+ "id": "alert-dialog-short-content",
132
+ "level": "should",
133
+ "statement": "Keep the decision concise; use the bounded Body only for essential supporting context and move complex forms or third-party interactive portals to Dialog."
134
+ },
135
+ {
136
+ "id": "alert-dialog-theme-scope",
137
+ "level": "must",
138
+ "statement": "When Portal leaves a local Appearance scope, reproduce that scope on the portalled visual root or target a portal container inside it."
139
+ },
140
+ {
141
+ "id": "alert-dialog-css",
142
+ "level": "must",
143
+ "statement": "Load styles.css or core.css plus alert-dialog.css."
144
+ }
145
+ ],
146
+ "commonMistakes": [
147
+ {
148
+ "mistake": "Using AlertDialog for an ordinary form, focusing the destructive Action first, omitting the description, or making the backdrop dismiss the choice.",
149
+ "correction": "Use Dialog for ordinary tasks; for consequential decisions provide Title, Description, safe Cancel focus, explicit Action, and no backdrop dismissal."
150
+ },
151
+ {
152
+ "mistake": "Closing immediately while an asynchronous destructive operation is still pending or styling the whole surface as destructive.",
153
+ "correction": "Prevent automatic close until application work succeeds and communicate danger through the Action Button and concise decision copy."
154
+ }
155
+ ],
156
+ "validation": [
157
+ "Verify alertdialog role, accessible name and description, visible Cancel before Action, safe Cancel initial focus for keyboard, pointer, touch, and programmatic opening, Tab containment, and that backdrop interaction cannot close the layer.",
158
+ "Verify Cancel and Action close reasons, prevented asynchronous Action behavior, pending and error recovery, controlled state, intentionally permitted Escape behavior, nested top-layer ownership, scroll lock, background isolation, exit presence, and focus restoration.",
159
+ "Verify long-label footer reflow, optional Body overflow, zoom, narrow and short viewports, reduced motion, forced colors, light and dark appearance on portalled Content, and required CSS."
160
+ ],
161
+ "related": [
162
+ {
163
+ "kind": "package",
164
+ "package": "@flowstack-ui/atom",
165
+ "id": "alert-dialog",
166
+ "versionPolicy": "installed-exact"
167
+ },
168
+ "dialog",
169
+ "button",
170
+ "popover",
171
+ "toast",
172
+ "appearance"
173
+ ]
174
+ }
175
+ ```
@@ -0,0 +1,134 @@
1
+ # AppBar
2
+
3
+ Source: @flowstack-ui/brick@0.1.11
4
+ Kind: component
5
+ ID: app-bar
6
+
7
+ # AppBar agent guide
8
+
9
+ ## Purpose
10
+
11
+ Provide a finished top surface and one-row start, geometrically centered, and end alignment structure built on Atom AppBar.
12
+
13
+ ## Use when
14
+
15
+ - A page or application header needs branding, navigation, location, search, or persistent actions on one top surface.
16
+
17
+ ## Choose something else when
18
+
19
+ - The need is a complete responsive shell, navigation system, or grouped-control keyboard model. Use AppBar composed with Show/Hide, NavigationMenu or NavList, Drawer, and Toolbar as appropriate.
20
+
21
+ ## Required composition
22
+
23
+ - Root renders a semantic header by default. For a contained full-bleed bar, compose Root > Container > Toolbar inset=none > Start, Center, and End so Container alone owns the page gutter; omit Container only when Toolbar should use the full available width.
24
+
25
+ ## Rules
26
+
27
+ - **MUST:** Keep AppBar.Root's default header when it owns page or application banner content; use asChild or render only when another semantic or neutral host is intentionally required, such as non-banner chrome inside a Drawer.
28
+ - **MUST:** Place Container between Root and Toolbar when the AppBar surface should remain full bleed while its content uses a bounded measure, and set Toolbar inset to none so Container alone owns the gutter; do not cap Root itself or recreate Toolbar geometry.
29
+ - **MUST:** Do not treat AppBar.Toolbar as an ARIA toolbar; compose Toolbar for grouped-control keyboard behavior.
30
+ - **MUST:** Keep application-specific visibility and wrapping policy outside AppBar and implement it with Brick responsive/layout components.
31
+ - **MUST:** When application layout references an App Bar density measurement, use the matching public comfortable or compact minimum block-size token instead of repeating Brick's value; allow the rendered bar and adjacent content to grow under zoom or enlarged content.
32
+ - **MUST:** Load styles.css or core.css plus app-bar.css.
33
+
34
+ ## Common mistakes
35
+
36
+ - **Avoid:** Hand-building a header row with div and flex CSS, assuming Root defaults to div, capping the full AppBar surface with application width CSS, double-insetting contained Toolbar content, or expecting AppBar to create menus and breakpoints. **Instead:** Use Root's default header for banner content, place Container around Toolbar with Toolbar inset set to none when Container owns the gutter, and compose the dedicated navigation, layout, and visibility owners inside it.
37
+
38
+ ## Validation checklist
39
+
40
+ - Check the final Root element and landmark ownership, including non-banner composed hosts.
41
+ - Check geometric centering with unequal side content, truncation, zoom, narrow widths, and RTL.
42
+ - Confirm contained App Bars have one page-gutter owner rather than stacked Container and Toolbar insets.
43
+ - Confirm landmark names, actions, navigation, and modular CSS are complete.
44
+
45
+ ## Related guidance
46
+
47
+ - `container`
48
+ - `toolbar`
49
+ - `navigation-menu`
50
+ - `nav-list`
51
+ - `drawer`
52
+ - `show`
53
+ - `hide`
54
+ - `stack`
55
+
56
+ ## Machine record
57
+
58
+ ```json
59
+ {
60
+ "schema": "flowstack.agent-component.v1",
61
+ "id": "app-bar",
62
+ "name": "AppBar",
63
+ "package": "@flowstack-ui/brick",
64
+ "layer": "brick",
65
+ "kind": "component",
66
+ "purpose": "Provide a finished top surface and one-row start, geometrically centered, and end alignment structure built on Atom AppBar.",
67
+ "useWhen": [
68
+ "A page or application header needs branding, navigation, location, search, or persistent actions on one top surface."
69
+ ],
70
+ "avoidWhen": [
71
+ {
72
+ "condition": "The need is a complete responsive shell, navigation system, or grouped-control keyboard model.",
73
+ "useInstead": "AppBar composed with Show/Hide, NavigationMenu or NavList, Drawer, and Toolbar as appropriate"
74
+ }
75
+ ],
76
+ "composition": [
77
+ "Root renders a semantic header by default. For a contained full-bleed bar, compose Root > Container > Toolbar inset=none > Start, Center, and End so Container alone owns the page gutter; omit Container only when Toolbar should use the full available width."
78
+ ],
79
+ "rules": [
80
+ {
81
+ "id": "appbar-root-semantics",
82
+ "level": "must",
83
+ "statement": "Keep AppBar.Root's default header when it owns page or application banner content; use asChild or render only when another semantic or neutral host is intentionally required, such as non-banner chrome inside a Drawer."
84
+ },
85
+ {
86
+ "id": "appbar-container-owner",
87
+ "level": "must",
88
+ "statement": "Place Container between Root and Toolbar when the AppBar surface should remain full bleed while its content uses a bounded measure, and set Toolbar inset to none so Container alone owns the gutter; do not cap Root itself or recreate Toolbar geometry."
89
+ },
90
+ {
91
+ "id": "appbar-structural-toolbar",
92
+ "level": "must",
93
+ "statement": "Do not treat AppBar.Toolbar as an ARIA toolbar; compose Toolbar for grouped-control keyboard behavior."
94
+ },
95
+ {
96
+ "id": "appbar-responsive-owner",
97
+ "level": "must",
98
+ "statement": "Keep application-specific visibility and wrapping policy outside AppBar and implement it with Brick responsive/layout components."
99
+ },
100
+ {
101
+ "id": "appbar-density-measurement",
102
+ "level": "must",
103
+ "statement": "When application layout references an App Bar density measurement, use the matching public comfortable or compact minimum block-size token instead of repeating Brick's value; allow the rendered bar and adjacent content to grow under zoom or enlarged content."
104
+ },
105
+ {
106
+ "id": "appbar-css",
107
+ "level": "must",
108
+ "statement": "Load styles.css or core.css plus app-bar.css."
109
+ }
110
+ ],
111
+ "commonMistakes": [
112
+ {
113
+ "mistake": "Hand-building a header row with div and flex CSS, assuming Root defaults to div, capping the full AppBar surface with application width CSS, double-insetting contained Toolbar content, or expecting AppBar to create menus and breakpoints.",
114
+ "correction": "Use Root's default header for banner content, place Container around Toolbar with Toolbar inset set to none when Container owns the gutter, and compose the dedicated navigation, layout, and visibility owners inside it."
115
+ }
116
+ ],
117
+ "validation": [
118
+ "Check the final Root element and landmark ownership, including non-banner composed hosts.",
119
+ "Check geometric centering with unequal side content, truncation, zoom, narrow widths, and RTL.",
120
+ "Confirm contained App Bars have one page-gutter owner rather than stacked Container and Toolbar insets.",
121
+ "Confirm landmark names, actions, navigation, and modular CSS are complete."
122
+ ],
123
+ "related": [
124
+ "container",
125
+ "toolbar",
126
+ "navigation-menu",
127
+ "nav-list",
128
+ "drawer",
129
+ "show",
130
+ "hide",
131
+ "stack"
132
+ ]
133
+ }
134
+ ```