stylegallery 0.1.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 (346) hide show
  1. package/AGENTS.md +156 -0
  2. package/CATALOG.md +69 -0
  3. package/DOMAINS.md +65 -0
  4. package/GOVERNANCE.md +222 -0
  5. package/GUIDE.md +59 -0
  6. package/README.md +313 -0
  7. package/consumer-reference/adapters/style-dictionary.config.mjs +36 -0
  8. package/consumer-reference/agent-native/README.md +157 -0
  9. package/consumer-reference/agent-native/registry.json +640 -0
  10. package/consumer-reference/agent-native/schema/agent-native.schema.json +848 -0
  11. package/consumer-reference/agent-native/schema/epistemic.schema.json +14 -0
  12. package/consumer-reference/agent-native/schema/execution.schema.json +12 -0
  13. package/consumer-reference/agent-native/schema/identity.schema.json +10 -0
  14. package/consumer-reference/agent-native/schema/learning.schema.json +12 -0
  15. package/consumer-reference/agent-native/schema/manifest.schema.json +6 -0
  16. package/consumer-reference/agent-native/schema/operation.schema.json +12 -0
  17. package/consumer-reference/agent-native/schema/protocol-binding.schema.json +9 -0
  18. package/consumer-reference/agent-native/schema/retrieval.schema.json +10 -0
  19. package/consumer-reference/baselines/calibration.json +260 -0
  20. package/consumer-reference/baselines/manifest.json +21 -0
  21. package/consumer-reference/contract.md +83 -0
  22. package/consumer-reference/fixtures/consumer-conformance/e2e-fixture.mjs +282 -0
  23. package/consumer-reference/fixtures/consumer-conformance/manifest.json +102 -0
  24. package/consumer-reference/fixtures/consumer-conformance/runtime-proof.mjs +32 -0
  25. package/consumer-reference/fixtures/consumer-conformance/valid-migration-result.json +18 -0
  26. package/consumer-reference/fixtures/consumer-conformance/valid-migration.json +142 -0
  27. package/consumer-reference/fixtures/invalid-stable-ended-support.json +19 -0
  28. package/consumer-reference/fixtures/promotion/invalid-blocking-evidence.json +26 -0
  29. package/consumer-reference/fixtures/promotion/invalid-count-only.json +29 -0
  30. package/consumer-reference/fixtures/promotion/invalid-missing-owner-migration.json +25 -0
  31. package/consumer-reference/fixtures/promotion/invalid-normative-bypass-no-regression.json +25 -0
  32. package/consumer-reference/fixtures/promotion/invalid-related-counted-independent.json +45 -0
  33. package/consumer-reference/fixtures/promotion/invalid-stable-ended-support.json +26 -0
  34. package/consumer-reference/fixtures/promotion/manifest.json +15 -0
  35. package/consumer-reference/fixtures/promotion/valid-deferred-example.json +67 -0
  36. package/consumer-reference/fixtures/promotion/valid-normative-bypass.json +67 -0
  37. package/consumer-reference/fixtures/token-portability/invalid-cycle.json +7 -0
  38. package/consumer-reference/fixtures/token-portability/invalid-dangling-alias.json +6 -0
  39. package/consumer-reference/fixtures/token-portability/invalid-extends.json +4 -0
  40. package/consumer-reference/fixtures/token-portability/invalid-json-pointer.json +7 -0
  41. package/consumer-reference/fixtures/token-portability/invalid-resolver.json +9 -0
  42. package/consumer-reference/fixtures/token-portability/invalid-type-mismatch.json +10 -0
  43. package/consumer-reference/fixtures/token-portability/invalid-unknown-reserved.json +6 -0
  44. package/consumer-reference/fixtures/token-portability/invalid-untested-type.json +6 -0
  45. package/consumer-reference/fixtures/token-portability/valid-border.json +14 -0
  46. package/consumer-reference/fixtures/token-portability/valid-reference.json +32 -0
  47. package/consumer-reference/fixtures/token-portability/valid-whole-alias.json +7 -0
  48. package/consumer-reference/fixtures/valid-deprecated.json +21 -0
  49. package/consumer-reference/fixtures/valid-experimental.json +19 -0
  50. package/consumer-reference/generated/manifest.json +40 -0
  51. package/consumer-reference/generated/tokens.css +12 -0
  52. package/consumer-reference/index.md +32 -0
  53. package/consumer-reference/policies/shared-experimental.json +37 -0
  54. package/consumer-reference/schema/ax-evidence.schema.json +30 -0
  55. package/consumer-reference/schema/baseline-manifest.schema.json +55 -0
  56. package/consumer-reference/schema/calibration-record.schema.json +190 -0
  57. package/consumer-reference/schema/capture-session.schema.json +161 -0
  58. package/consumer-reference/schema/component-state.schema.json +150 -0
  59. package/consumer-reference/schema/consumer-conformance-record.schema.json +365 -0
  60. package/consumer-reference/schema/dom-evidence.schema.json +38 -0
  61. package/consumer-reference/schema/evidence-record.schema.json +81 -0
  62. package/consumer-reference/schema/fixture-manifest.schema.json +32 -0
  63. package/consumer-reference/schema/item.schema.json +188 -0
  64. package/consumer-reference/schema/page-evidence-manifest.schema.json +216 -0
  65. package/consumer-reference/schema/page-evidence-session.schema.json +119 -0
  66. package/consumer-reference/schema/portable-tokens.schema.json +104 -0
  67. package/consumer-reference/schema/promotion-rfc.schema.json +219 -0
  68. package/consumer-reference/schema/runtime-evidence-manifest.schema.json +33 -0
  69. package/consumer-reference/schema/visual-evidence.schema.json +31 -0
  70. package/design-engineering/consumer-migration-readiness.md +124 -0
  71. package/design-engineering/index.md +28 -0
  72. package/design-engineering/interface-craft.md +107 -0
  73. package/design-engineering/reference-profiles/external-adaptation/index.md +12 -0
  74. package/design-engineering/reference-profiles/governed-local/editorial/components/button.component.json +125 -0
  75. package/design-engineering/reference-profiles/governed-local/editorial/evidence/button.evidence.json +3504 -0
  76. package/design-engineering/reference-profiles/governed-local/editorial/fixtures/button.fixture.json +65 -0
  77. package/design-engineering/reference-profiles/governed-local/editorial/generated/evidence-coverage.md +23 -0
  78. package/design-engineering/reference-profiles/governed-local/editorial/generated/keyboard-matrix.md +19 -0
  79. package/design-engineering/reference-profiles/governed-local/editorial/generated/state-matrix.md +21 -0
  80. package/design-engineering/reference-profiles/governed-local/editorial/local-foundations.json +12 -0
  81. package/design-engineering/reference-profiles/governed-local/editorial/profile.json +43 -0
  82. package/design-engineering/reference-profiles/governed-local/editorial/states/button.states.json +195 -0
  83. package/design-engineering/reference-profiles/governed-local/editorial/tokens.dtcg.json +17 -0
  84. package/design-engineering/reference-profiles/governed-local/index.md +26 -0
  85. package/design-engineering/reference-profiles/governed-local/terminal/components/button.component.json +125 -0
  86. package/design-engineering/reference-profiles/governed-local/terminal/evidence/button.evidence.json +3504 -0
  87. package/design-engineering/reference-profiles/governed-local/terminal/fixtures/button.fixture.json +65 -0
  88. package/design-engineering/reference-profiles/governed-local/terminal/generated/evidence-coverage.md +23 -0
  89. package/design-engineering/reference-profiles/governed-local/terminal/generated/keyboard-matrix.md +19 -0
  90. package/design-engineering/reference-profiles/governed-local/terminal/generated/state-matrix.md +21 -0
  91. package/design-engineering/reference-profiles/governed-local/terminal/local-foundations.json +12 -0
  92. package/design-engineering/reference-profiles/governed-local/terminal/profile.json +43 -0
  93. package/design-engineering/reference-profiles/governed-local/terminal/states/button.states.json +195 -0
  94. package/design-engineering/reference-profiles/governed-local/terminal/tokens.dtcg.json +17 -0
  95. package/design-engineering/reference-profiles/index.md +19 -0
  96. package/game-ui/classification.md +82 -0
  97. package/game-ui/index.md +35 -0
  98. package/game-ui/reference-record.md +62 -0
  99. package/game-ui/screen-hierarchy.md +107 -0
  100. package/game-ui/unity/architecture.md +166 -0
  101. package/game-ui/unity/cli-loop.md +84 -0
  102. package/game-ui/unity/data/unity-technologies-public-repositories.json +26654 -0
  103. package/game-ui/unity/org-wiki.md +146 -0
  104. package/game-ui/unity/repository-map.md +102 -0
  105. package/game-ui/unity/ui-systems.md +85 -0
  106. package/guides/decision-tree.md +149 -0
  107. package/guides/documentation-mode-taxonomy.md +157 -0
  108. package/guides/layout-brief.md +220 -0
  109. package/guides/vocabulary.md +148 -0
  110. package/guides/webpage-generation-workflow.md +185 -0
  111. package/index.md +36 -0
  112. package/layout/index.md +26 -0
  113. package/motion/index.md +24 -0
  114. package/motion/practice-reference.md +145 -0
  115. package/motion/review-workflow.md +86 -0
  116. package/motion/vocabulary.md +82 -0
  117. package/package.json +78 -0
  118. package/patterns/centering/center.md +87 -0
  119. package/patterns/centering/index.md +6 -0
  120. package/patterns/centering/super-center.md +89 -0
  121. package/patterns/containment/box.md +87 -0
  122. package/patterns/containment/clamped-card.md +86 -0
  123. package/patterns/containment/content-limiter.md +87 -0
  124. package/patterns/containment/fluid-styles.md +86 -0
  125. package/patterns/containment/index.md +8 -0
  126. package/patterns/grid-repetition/card-grid.md +88 -0
  127. package/patterns/grid-repetition/columns.md +87 -0
  128. package/patterns/grid-repetition/dense-grid.md +88 -0
  129. package/patterns/grid-repetition/grid-wrapper.md +89 -0
  130. package/patterns/grid-repetition/index.md +12 -0
  131. package/patterns/grid-repetition/masonry-approx.md +87 -0
  132. package/patterns/grid-repetition/page-grid.md +90 -0
  133. package/patterns/grid-repetition/ram-grid.md +88 -0
  134. package/patterns/grid-repetition/twelve-span-grid.md +92 -0
  135. package/patterns/in-line-grouping/badge-list.md +94 -0
  136. package/patterns/in-line-grouping/breadcrumb.md +89 -0
  137. package/patterns/in-line-grouping/cluster.md +89 -0
  138. package/patterns/in-line-grouping/deconstructed-pancake.md +92 -0
  139. package/patterns/in-line-grouping/index.md +13 -0
  140. package/patterns/in-line-grouping/pagination.md +89 -0
  141. package/patterns/in-line-grouping/reel.md +90 -0
  142. package/patterns/in-line-grouping/split-nav.md +97 -0
  143. package/patterns/in-line-grouping/tab-strip.md +88 -0
  144. package/patterns/in-line-grouping/wrap-row.md +89 -0
  145. package/patterns/index.md +13 -0
  146. package/patterns/media-fit/frame.md +95 -0
  147. package/patterns/media-fit/icon-frame.md +87 -0
  148. package/patterns/media-fit/index.md +6 -0
  149. package/patterns/overlay-exception/imposter.md +95 -0
  150. package/patterns/overlay-exception/index.md +6 -0
  151. package/patterns/overlay-exception/overlay-stack.md +89 -0
  152. package/patterns/split-sidebar/index.md +12 -0
  153. package/patterns/split-sidebar/list-detail.md +95 -0
  154. package/patterns/split-sidebar/main-with-rail.md +95 -0
  155. package/patterns/split-sidebar/media-object.md +102 -0
  156. package/patterns/split-sidebar/sidebar.md +101 -0
  157. package/patterns/split-sidebar/split-screen.md +92 -0
  158. package/patterns/split-sidebar/sticky-aside.md +97 -0
  159. package/patterns/split-sidebar/supporting-pane.md +95 -0
  160. package/patterns/split-sidebar/switcher.md +93 -0
  161. package/patterns/stacking/feed.md +88 -0
  162. package/patterns/stacking/index.md +8 -0
  163. package/patterns/stacking/line-up.md +95 -0
  164. package/patterns/stacking/stack.md +87 -0
  165. package/patterns/stacking/step-nav.md +88 -0
  166. package/patterns/viewport-shell/cover.md +90 -0
  167. package/patterns/viewport-shell/fixed-sidenav-shell.md +97 -0
  168. package/patterns/viewport-shell/holy-grail.md +112 -0
  169. package/patterns/viewport-shell/index.md +11 -0
  170. package/patterns/viewport-shell/panel-layout.md +95 -0
  171. package/patterns/viewport-shell/scroll-body-shell.md +93 -0
  172. package/patterns/viewport-shell/sticky-footer.md +92 -0
  173. package/patterns/viewport-shell/sticky-header.md +86 -0
  174. package/platform-guides/apple-interaction.md +89 -0
  175. package/platform-guides/index.md +26 -0
  176. package/quality/claim-records/index.md +3 -0
  177. package/quality/claim-records/samples.md +92 -0
  178. package/quality/claim-records/stylegallery-multidomain-scope.md +42 -0
  179. package/quality/claims.md +77 -0
  180. package/quality/evidence/accessibility.md +58 -0
  181. package/quality/evidence/consumer-migration.md +42 -0
  182. package/quality/evidence/design-rationale.md +34 -0
  183. package/quality/evidence/executable-evidence.md +79 -0
  184. package/quality/evidence/families.md +56 -0
  185. package/quality/evidence/hci-evaluation.md +36 -0
  186. package/quality/evidence/index.md +16 -0
  187. package/quality/evidence/pattern-contract-audit.md +96 -0
  188. package/quality/evidence/search-metadata-polyhierarchy.md +86 -0
  189. package/quality/evidence/sources.md +43 -0
  190. package/quality/evidence/tokens.md +33 -0
  191. package/quality/evidence/visual-qa.md +41 -0
  192. package/quality/gates/accessibility-evidence.md +60 -0
  193. package/quality/gates/consumer-migration-evidence.md +53 -0
  194. package/quality/gates/design-claim.md +56 -0
  195. package/quality/gates/harmony-evaluation.md +78 -0
  196. package/quality/gates/index.md +13 -0
  197. package/quality/gates/layout.md +52 -0
  198. package/quality/gates/rationale.md +53 -0
  199. package/quality/gates/visual-evidence.md +47 -0
  200. package/quality/index.md +55 -0
  201. package/quality/principles.md +58 -0
  202. package/recipes/article-page.md +52 -0
  203. package/recipes/command-surface.md +55 -0
  204. package/recipes/dashboard.md +56 -0
  205. package/recipes/form-flow.md +55 -0
  206. package/recipes/homepage.md +89 -0
  207. package/recipes/index.md +13 -0
  208. package/recipes/list-detail.md +55 -0
  209. package/recipes/primitive-to-recipe-matrix.md +83 -0
  210. package/recipes/saas-settings.md +52 -0
  211. package/scripts/agent-native/a2a-projection.mjs +248 -0
  212. package/scripts/agent-native/agui-projection.mjs +178 -0
  213. package/scripts/agent-native/canonical-json.mjs +109 -0
  214. package/scripts/agent-native/cli-adapter.mjs +68 -0
  215. package/scripts/agent-native/events.mjs +113 -0
  216. package/scripts/agent-native/execution.mjs +227 -0
  217. package/scripts/agent-native/fixture.mjs +159 -0
  218. package/scripts/agent-native/identity.mjs +184 -0
  219. package/scripts/agent-native/immutable-store.mjs +102 -0
  220. package/scripts/agent-native/knowledge.mjs +168 -0
  221. package/scripts/agent-native/learning-records.mjs +244 -0
  222. package/scripts/agent-native/learning.mjs +247 -0
  223. package/scripts/agent-native/mcp-adapter.mjs +173 -0
  224. package/scripts/agent-native/queries.mjs +173 -0
  225. package/scripts/agent-native/registry.mjs +154 -0
  226. package/scripts/agent-native/retrieval.mjs +171 -0
  227. package/scripts/agent-native/self-description.mjs +160 -0
  228. package/scripts/artifact-metadata.mjs +20 -0
  229. package/scripts/audit-evidence-freshness.mjs +308 -0
  230. package/scripts/baseline-contract.mjs +189 -0
  231. package/scripts/baseline-schema-parity.mjs +40 -0
  232. package/scripts/build-reference-artifacts.mjs +127 -0
  233. package/scripts/calibration-raw-contract.mjs +172 -0
  234. package/scripts/capture-session-contract.mjs +187 -0
  235. package/scripts/component-state-artifact-fixture.mjs +44 -0
  236. package/scripts/component-state-contract.mjs +99 -0
  237. package/scripts/component-state-semantics.mjs +128 -0
  238. package/scripts/component-state-workflow-contract.mjs +67 -0
  239. package/scripts/component-state-workflow-negative-cases.mjs +64 -0
  240. package/scripts/consumer-conformance-contract.mjs +198 -0
  241. package/scripts/consumer-evidence-governance-contract.mjs +210 -0
  242. package/scripts/consumer-reference-case-runner.mjs +93 -0
  243. package/scripts/consumer-reference-schema.mjs +155 -0
  244. package/scripts/create-component-state-session.mjs +100 -0
  245. package/scripts/create-page-evidence-session.mjs +139 -0
  246. package/scripts/domain-document-boundaries.mjs +40 -0
  247. package/scripts/domain-validation-checks.mjs +141 -0
  248. package/scripts/evidence-artifact-contract.mjs +191 -0
  249. package/scripts/finalize-component-state-evidence.mjs +165 -0
  250. package/scripts/finalize-page-evidence.mjs +197 -0
  251. package/scripts/generate-consumer-reference-evidence.mjs +154 -0
  252. package/scripts/generate-patterns.mjs +218 -0
  253. package/scripts/governance-matrix-contract.mjs +73 -0
  254. package/scripts/governance-matrix-negative-cases.mjs +114 -0
  255. package/scripts/governance-policy-contract.mjs +49 -0
  256. package/scripts/governance-test-fixture.mjs +321 -0
  257. package/scripts/governance-workflow-negative-cases.mjs +241 -0
  258. package/scripts/governed-profile-registry.mjs +125 -0
  259. package/scripts/json-schema-formats.mjs +31 -0
  260. package/scripts/markdown-structure.mjs +45 -0
  261. package/scripts/page-artifact-metadata.mjs +124 -0
  262. package/scripts/page-evidence-contract.mjs +297 -0
  263. package/scripts/page-evidence-fixture.mjs +271 -0
  264. package/scripts/pattern-data.mjs +325 -0
  265. package/scripts/profile-record-contract.mjs +140 -0
  266. package/scripts/promotion-attestation-contract.mjs +91 -0
  267. package/scripts/promotion-boundary-test-contract.mjs +92 -0
  268. package/scripts/promotion-fixture-inventory.mjs +109 -0
  269. package/scripts/promotion-governance-contract.mjs +28 -0
  270. package/scripts/reference-artifact-path-contract.mjs +28 -0
  271. package/scripts/reference-profile-contract.mjs +114 -0
  272. package/scripts/reference-token-contract.mjs +156 -0
  273. package/scripts/run-consumer-page-evidence-ci.mjs +170 -0
  274. package/scripts/sg-mcp.mjs +16 -0
  275. package/scripts/sg.mjs +27 -0
  276. package/scripts/strict-json.mjs +72 -0
  277. package/scripts/summarize-sentinel-calibration.mjs +98 -0
  278. package/scripts/test-agent-adapter-conformance.mjs +250 -0
  279. package/scripts/test-agent-conformance-receipt.mjs +106 -0
  280. package/scripts/test-agent-events.mjs +81 -0
  281. package/scripts/test-agent-execution-effects.mjs +114 -0
  282. package/scripts/test-agent-execution-fixtures.mjs +140 -0
  283. package/scripts/test-agent-execution-kernel.mjs +39 -0
  284. package/scripts/test-agent-execution-learning.mjs +130 -0
  285. package/scripts/test-agent-execution-lifecycle.mjs +143 -0
  286. package/scripts/test-agent-execution-safety.mjs +158 -0
  287. package/scripts/test-agent-execution-views.mjs +117 -0
  288. package/scripts/test-agent-identity-integrity-cases.mjs +160 -0
  289. package/scripts/test-agent-knowledge-kernel.mjs +183 -0
  290. package/scripts/test-agent-learning.mjs +246 -0
  291. package/scripts/test-agent-mcp.mjs +246 -0
  292. package/scripts/test-agent-native-schemas.mjs +215 -0
  293. package/scripts/test-agent-projections.mjs +249 -0
  294. package/scripts/test-agent-registry-mcp-integrity.mjs +215 -0
  295. package/scripts/test-agent-registry-mutations.mjs +110 -0
  296. package/scripts/test-audit-evidence-freshness.mjs +177 -0
  297. package/scripts/test-component-state-sentinel.mjs +35 -0
  298. package/scripts/test-component-state-source-contract.mjs +83 -0
  299. package/scripts/test-consumer-conformance-sentinel.mjs +165 -0
  300. package/scripts/test-consumer-reference-sentinel.mjs +31 -0
  301. package/scripts/test-generate-consumer-reference-evidence.mjs +124 -0
  302. package/scripts/test-json-cli-output.mjs +151 -0
  303. package/scripts/test-json-schema-formats.mjs +40 -0
  304. package/scripts/test-reference-adapters.mjs +199 -0
  305. package/scripts/test-renderer-purity.mjs +34 -0
  306. package/scripts/test-sg-cli.mjs +129 -0
  307. package/scripts/test-summarize-sentinel-calibration.mjs +226 -0
  308. package/scripts/test-validate-baseline-manifest.mjs +234 -0
  309. package/scripts/test-validate-component-state-artifacts.mjs +243 -0
  310. package/scripts/test-validate-component-state.mjs +106 -0
  311. package/scripts/test-validate-consumer-conformance.mjs +427 -0
  312. package/scripts/test-validate-consumer-reference-cli.mjs +69 -0
  313. package/scripts/test-validate-consumer-reference.mjs +263 -0
  314. package/scripts/test-validate-domains.mjs +357 -0
  315. package/scripts/test-validate-governance.mjs +292 -0
  316. package/scripts/test-validate-ia.mjs +262 -0
  317. package/scripts/test-validate-okf.mjs +73 -0
  318. package/scripts/test-validate-page-evidence.mjs +302 -0
  319. package/scripts/test-validate-patterns.mjs +157 -0
  320. package/scripts/test-validate-promotion-rfc.mjs +250 -0
  321. package/scripts/test-validate-reference-profiles.mjs +170 -0
  322. package/scripts/test-validate-unity-org-wiki.mjs +57 -0
  323. package/scripts/test-validate-unity-source-contracts.mjs +67 -0
  324. package/scripts/test-validate-vocabulary.mjs +174 -0
  325. package/scripts/test-validate-webpage-workflow.mjs +293 -0
  326. package/scripts/validate-baseline-manifest.mjs +44 -0
  327. package/scripts/validate-catalog.mjs +65 -0
  328. package/scripts/validate-component-state.mjs +141 -0
  329. package/scripts/validate-consumer-conformance.mjs +477 -0
  330. package/scripts/validate-consumer-reference.mjs +288 -0
  331. package/scripts/validate-domains.mjs +237 -0
  332. package/scripts/validate-governance.mjs +248 -0
  333. package/scripts/validate-ia.mjs +136 -0
  334. package/scripts/validate-links.mjs +66 -0
  335. package/scripts/validate-okf.mjs +104 -0
  336. package/scripts/validate-page-evidence.mjs +191 -0
  337. package/scripts/validate-patterns.mjs +246 -0
  338. package/scripts/validate-promotion-rfc.mjs +224 -0
  339. package/scripts/validate-reference-artifacts.mjs +125 -0
  340. package/scripts/validate-renderer-purity.mjs +56 -0
  341. package/scripts/validate-unity-org-wiki.mjs +146 -0
  342. package/scripts/validate-unity-source-contracts.mjs +107 -0
  343. package/scripts/validate-vocabulary.mjs +115 -0
  344. package/scripts/validate-webpage-workflow.mjs +254 -0
  345. package/scripts/visual-expectation-contract.mjs +20 -0
  346. package/scripts/workflow-action-contract.mjs +163 -0
package/README.md ADDED
@@ -0,0 +1,313 @@
1
+ ---
2
+ type: Repository Guide
3
+ title: StyleGallery
4
+ description: Governed gallery of portable interface knowledge organized by domain.
5
+ ---
6
+
7
+ # StyleGallery
8
+
9
+ StyleGallery is a governed gallery of portable interface knowledge. It separates reusable spatial patterns, product-layer motion guidance, design-engineering practice, and platform-specific references into explicit domains with different evidence and ownership boundaries.
10
+
11
+ Primary role: repository guide.
12
+
13
+ The existing Layout corpus remains a gallery of minimal, portable CSS layout patterns at its current paths. Each pattern documents one primary spatial problem and the smallest robust HTML/CSS structure that solves it. Motion, visual treatment, and platform guidance do not expand reusable Layout pattern CSS; they live in their own domains and carry explicit evidence boundaries.
14
+
15
+ [Consumer Reference](consumer-reference/index.md) is shared non-domain infrastructure for optional consumer-owned reference handoffs. It carries schema, routing, provenance, and evidence metadata without owning profiles, visual values, components, or a sixth domain.
16
+
17
+ [Agent-Native StyleGallery](consumer-reference/agent-native/README.md) is the machine-facing entry point over that governed knowledge. It provides content-addressed identity, claim/evidence/governance records, deterministic retrieval, a shared operation registry, the `sg` CLI, and a read-only MCP projection. It does not create a sixth domain, replace the Markdown corpus, or permit MCP clients to mutate governed knowledge.
18
+
19
+ ## Quick Start
20
+
21
+ StyleGallery requires Node.js 22 or newer. Run a command without installing anything globally:
22
+
23
+ ```sh
24
+ npx stylegallery discover --format json
25
+ ```
26
+
27
+ Or install the CLI globally:
28
+
29
+ ```sh
30
+ npm install --global stylegallery
31
+ sg discover --format json
32
+ ```
33
+
34
+ Common read-only commands:
35
+
36
+ ```sh
37
+ sg resolve sg:profile/editorial-reference-profile --format json
38
+ sg claims sg:profile/editorial-reference-profile --format json
39
+ sg context sg:profile/editorial-reference-profile --format json
40
+ sg ops --format json
41
+ ```
42
+
43
+ Every command writes deterministic JSON to stdout. Invalid input returns an error object and a nonzero exit status. See [Agent-Native StyleGallery](consumer-reference/agent-native/README.md) for the command contract, StableRef and VersionID model, MCP resources, and trust boundaries.
44
+
45
+ ### Read-only MCP server
46
+
47
+ Launch the packaged stdio server with:
48
+
49
+ ```sh
50
+ npx --package stylegallery stylegallery-mcp
51
+ ```
52
+
53
+ Example MCP client configuration:
54
+
55
+ ```json
56
+ {
57
+ "mcpServers": {
58
+ "stylegallery": {
59
+ "command": "npx",
60
+ "args": ["--yes", "--package", "stylegallery", "stylegallery-mcp"]
61
+ }
62
+ }
63
+ }
64
+ ```
65
+
66
+ The MCP surface exposes governed read operations only. It cannot modify repository knowledge.
67
+
68
+ ## 한국어 빠른 시작
69
+
70
+ StyleGallery는 Node.js 22 이상에서 실행됩니다. 전역 설치 없이 바로 사용하려면 다음 명령을 실행하세요.
71
+
72
+ ```sh
73
+ npx stylegallery discover --format json
74
+ ```
75
+
76
+ 자주 사용한다면 전역으로 설치할 수 있습니다.
77
+
78
+ ```sh
79
+ npm install --global stylegallery
80
+ sg discover --format json
81
+ ```
82
+
83
+ `discover`는 사용 가능한 인터페이스를 보여주고, `resolve`는 하나의 레코드를 조회하며, `claims`는 관련 주장과 근거를 분리해서 보여줍니다. `context`는 에이전트에 전달할 수 있는 제한된 컨텍스트 패키지를 만들고, `ops`는 지원하는 작업 목록을 반환합니다. 모든 결과는 자동화에 바로 사용할 수 있는 JSON입니다.
84
+
85
+ CLI와 MCP의 상세 사용법은 [Agent-Native StyleGallery 가이드](consumer-reference/agent-native/README.md)를 참고하세요. 사람이 문서를 탐색하려면 아래의 도메인 표에서 목적에 맞는 진입점을 선택하면 됩니다.
86
+
87
+ ## Domains
88
+
89
+ | Domain | Owns | Does not own |
90
+ | --- | --- | --- |
91
+ | [Layout](layout/index.md) | Semantic spatial structure, flow, sizing, alignment, containment, scrolling, and composition. | Brand, typography, color, shadow, animation, and product decoration. |
92
+ | [Motion](motion/index.md) | Motion terminology, review procedure, and evidence-bounded practice guidance. | Universal timing/easing rules or permission to add motion to reusable Layout CSS. |
93
+ | [Design Engineering](design-engineering/index.md) | Product-layer craft decisions and verification questions. | A second universal principle set or taste as evidence. |
94
+ | [Game UI](game-ui/index.md) | Game-interface classification, hierarchy, reference records, and engine-specific implementation guides. | Reusable Layout CSS or claims that one engine structure is universal. |
95
+ | [Platform Guides](platform-guides/index.md) | Bounded comparison with named platform conventions. | Affiliation, imitation, or authority over web and accessibility contracts. |
96
+
97
+ The canonical domain manifest and provenance policy are in [StyleGallery Domains](DOMAINS.md).
98
+
99
+ ## Repository Entry Roles
100
+
101
+ Use each root hub for one primary job.
102
+
103
+ | Entry | Primary role | Use when |
104
+ | --- | --- | --- |
105
+ | [README](README.md) | Repository guide | You need the library purpose, policies, and task routes. |
106
+ | [OKF index](index.md) | OKF bundle map | You need a compact knowledge-bundle table of contents. |
107
+ | [Layout Planning Guide](GUIDE.md) | Planning workflow | You need to classify a screen before choosing patterns. |
108
+ | [Layout Pattern Catalog](CATALOG.md) | Pattern lookup | You already know the spatial problem or pattern name. |
109
+ | [Governance, Lifecycle, And Docs-As-Code](GOVERNANCE.md) | Governance reference | You need the source of truth, lifecycle, generated-file, ownership, or stale-audit rule. |
110
+ | [StyleGallery Domains](DOMAINS.md) | Domain manifest | You need domain ownership, scope, lifecycle, page membership, or provenance. |
111
+ | [Consumer Reference](consumer-reference/index.md) | Shared infrastructure contract | You need to declare a consumer-owned record or explain why one is not applicable. |
112
+ | [Agent-Native StyleGallery](consumer-reference/agent-native/README.md) | Machine interface guide | A person or agent needs to discover, resolve, retrieve, or inspect governed StyleGallery knowledge through CLI or MCP. |
113
+ | [Layout](layout/index.md) | Layout domain hub | You need reusable spatial patterns, recipes, or planning routes. |
114
+ | [Motion](motion/index.md) | Motion domain hub | You need motion terminology, review procedure, or practice evidence. |
115
+ | [Design Engineering](design-engineering/index.md) | Design Engineering domain hub | You need product-level interface-craft decision guidance. |
116
+ | [Game UI](game-ui/index.md) | Game UI domain hub | You need to classify a game interface or understand its screen hierarchy. |
117
+ | [Platform Guides](platform-guides/index.md) | Platform Guides domain hub | You need a bounded platform comparison. |
118
+
119
+ ## Task Routes
120
+
121
+ Each common task has one primary route. Use secondary links only after the primary route answers the first decision.
122
+
123
+ | Task | Primary route | Why |
124
+ | --- | --- | --- |
125
+ | `choose a StyleGallery domain` | [StyleGallery Domains](DOMAINS.md) | It separates domain ownership before a reader applies domain-local guidance. |
126
+ | `browse reusable spatial guidance` | [Layout](layout/index.md) | It preserves the existing pattern, recipe, and planning routes. |
127
+ | `name or review interface motion` | [Motion](motion/index.md) | It routes to bounded terminology and review guidance. |
128
+ | `review product-level interface craft` | [Design Engineering](design-engineering/index.md) | It separates practitioner heuristics from shared quality gates. |
129
+ | `compare adversarial consumer identities` | [Reference Profiles](design-engineering/reference-profiles/index.md) | It keeps non-default product values in related Design Engineering examples over one pinned Layout source. |
130
+ | `classify a game interface or map it to an engine` | [Game UI](game-ui/index.md) | It separates engine-neutral roles from implementation-specific guidance. |
131
+ | `compare a named platform convention` | [Platform Guides](platform-guides/index.md) | It requires platform and evidence boundaries before adaptation. |
132
+ | `turn raw content into a homepage or ordinary webpage` | [Webpage Generation Workflow](guides/webpage-generation-workflow.md) | It starts with use case, content-to-layout fit, harmony, and handoff. |
133
+ | `plan a screen before the layout problem is obvious` | [Layout Planning Guide](GUIDE.md) | It sequences task, content, scroll, recipe, and verification choices. |
134
+ | `choose a pattern when the name is unknown` | [Decision Tree](guides/decision-tree.md) | It routes from constraints to pattern categories. |
135
+ | `fill in requirements before selecting a pattern stack` | [Layout Brief Template](guides/layout-brief.md) | It captures content, constraints, and verification inputs. |
136
+ | `stabilize repository terminology` | [Controlled vocabulary](guides/vocabulary.md) | It defines canonical terms, aliases, deprecated terms, and scannability rules. |
137
+ | `compose a full screen from primitives` | [Layout Recipes](recipes/index.md) | Recipes map screen models to pattern stacks. |
138
+ | `inspect which primitives a recipe depends on` | [Primitive To Recipe Matrix](recipes/primitive-to-recipe-matrix.md) | It names essential, helper, and substitutable slots. |
139
+ | `look up a known layout primitive` | [Layout Pattern Catalog](CATALOG.md) | It is the generated pattern lookup surface. |
140
+ | `browse pattern categories` | [Pattern Categories](patterns/index.md) | It groups generated patterns by spatial family. |
141
+ | `check whether a layout or design claim is admissible` | [Quality Gates](quality/index.md) | It routes claims to gates and evidence boundaries. |
142
+ | `prove repository checks and evidence coverage` | [Executable Evidence Coverage](quality/evidence/executable-evidence.md) | It maps validators, fixtures, CI commands, and their boundaries. |
143
+ | `declare consumer reference applicability` | [Consumer Reference](consumer-reference/index.md) | It provides the required handoff field without moving consumer values into Layout. |
144
+ | `use StyleGallery from an agent or automation` | [Agent-Native StyleGallery](consumer-reference/agent-native/README.md) | It explains StableRef resolution, CLI commands, read-only MCP resources/tools, receipts, and mutation boundaries. |
145
+ | `prove an existing consumer migration` | [Consumer Migration Readiness](design-engineering/consumer-migration-readiness.md) | It requires thirteen explicit behavior classifications, runtime proof, adoption mappings, and source-bound page evidence when applicable. |
146
+ | `change generated patterns, catalog, or governance policy` | [Governance, Lifecycle, And Docs-As-Code](GOVERNANCE.md) | It identifies source files, generated artifacts, validators, lifecycle state, and review ownership. |
147
+ | `run findability QA` | [Tree-Test Findability QA](quality/index.md#tree-test-findability-qa) | It tests whether task routes are discoverable, not just linked. |
148
+
149
+ ## Link Policy
150
+
151
+ - Navigation links move a reader to the next decision point in the repository. Root hubs, indexes, parent links, and next-step links are navigation links.
152
+ - Citation links identify source lineage or evidence boundaries. They support a claim but should not be the only way to continue a task.
153
+ - Dependency links identify generated, validation, or composition relationships. They explain what must stay in sync, such as `scripts/pattern-data.mjs`, generated pattern files, catalog entries, and validator fixtures.
154
+
155
+ ## How To Use This Repository
156
+
157
+ - Start with [StyleGallery Domains](DOMAINS.md) when the owning domain is not already clear.
158
+ - Use [Layout](layout/index.md), [Motion](motion/index.md), [Design Engineering](design-engineering/index.md), [Game UI](game-ui/index.md), or [Platform Guides](platform-guides/index.md) as the domain-local entry point.
159
+ - Start with [Layout Planning Guide](GUIDE.md) when you are designing a screen before a layout problem is obvious.
160
+ - Use the [Webpage Generation Workflow](guides/webpage-generation-workflow.md) when raw content needs to become a homepage or ordinary webpage before a layout recipe is obvious.
161
+ - Use the [Documentation Mode Taxonomy](guides/documentation-mode-taxonomy.md) when adding or reviewing docs so each page has a clear primary reading mode.
162
+ - Use the [Controlled vocabulary](guides/vocabulary.md) when a term affects routing, metadata, search, claim records, workflow handoff, or review decisions.
163
+ - Use the [Decision Tree](guides/decision-tree.md) when you do not know the pattern name yet.
164
+ - Fill out the [Layout Brief Template](guides/layout-brief.md) before choosing a pattern stack.
165
+ - Use [Layout Recipes](recipes/index.md) when you need screen-level composition.
166
+ - Use [Layout Pattern Catalog](CATALOG.md) when you already know the spatial problem.
167
+ - Use [Quality Gates](quality/index.md) when a claim needs principle-backed evidence, visual QA boundaries, accessibility precedence, or design rationale.
168
+ - Use [Consumer Reference](consumer-reference/index.md) when an implementation handoff must declare one repository-local JSON reference or a sentence explaining non-applicability.
169
+ - Use [Agent-Native StyleGallery](consumer-reference/agent-native/README.md) when a person, script, or agent needs deterministic JSON discovery, StableRef/VersionID resolution, bounded context, operation metadata, or read-only MCP access.
170
+ - Use [Consumer Migration Readiness](design-engineering/consumer-migration-readiness.md) only for a migration that declares a consumer-local conformance record; ordinary handoffs keep the existing `not_applicable` path.
171
+ - Use [Governance, Lifecycle, And Docs-As-Code](GOVERNANCE.md) before changing generated artifacts, validators, lifecycle state, or ownership policy.
172
+
173
+ ## Layout Domain Principles
174
+
175
+ 1. Layout problems only
176
+ - Patterns exist to solve spatial problems, not to define a visual brand.
177
+ - Core CSS should stay focused on layout responsibilities.
178
+
179
+ 2. Semantic structure first
180
+ - Start with meaningful HTML before adding layout classes.
181
+ - Class names explain layout responsibility, but they do not replace landmarks, headings, lists, buttons, links, or form controls.
182
+ - DOM order, reading order, and focus order should remain logical.
183
+
184
+ 3. One primary spatial problem
185
+ - Each pattern should optimize one primary spatial problem.
186
+ - Secondary behavior is allowed when it is incidental or required for composition.
187
+ - If a pattern has multiple primary problems, split it into smaller primitives or mark it as a shell/composite.
188
+
189
+ 4. Minimum robust CSS
190
+ - Use the smallest set of declarations that keeps the pattern stable under real content and container constraints.
191
+ - Minimal does not mean fragile; constraints, overflow rules, intrinsic sizing, and fallbacks are valid when they carry declared responsibility.
192
+
193
+ 5. Portable plain HTML/CSS
194
+ - Plain HTML and CSS are the source of truth.
195
+ - Framework-specific versions are optional derivatives, not canonical patterns.
196
+
197
+ 6. Explicit constraints and change points
198
+ - Widths, heights, gaps, breakpoints, scroll containers, fixed/sticky anchors, and other constraints should be easy to find.
199
+ - Values users are expected to tune should be surfaced clearly.
200
+
201
+ 7. Named scroll ownership
202
+ - If a pattern scrolls, the scrolling element must be obvious.
203
+ - The pattern should make clear what scrolls, what stays fixed, and where height is determined.
204
+
205
+ 8. No decorative debt
206
+ - Decorative styling does not belong in reusable pattern CSS unless it is required to explain layout behavior.
207
+ - Demo-only visual aids should be separate from the reusable pattern.
208
+
209
+ ## CSS Authoring Policy
210
+
211
+ - Prefer low-specificity, single-class selectors.
212
+ - Avoid ID selectors for styling or layout naming.
213
+ - Avoid deep combinators, selector chaining, and nesting unless the pattern is specifically demonstrating that tradeoff.
214
+ - Use cascade layers when the CSS surface grows beyond isolated snippets.
215
+ - Keep CSS declarations in alphabetical order inside each rule.
216
+ - Prefer intrinsic sizing and content/container-driven adaptation.
217
+ - Use viewport breakpoints only when the spatial problem is viewport-level.
218
+ - Prefer container queries for component-local responsiveness.
219
+ - Prefer logical properties for spacing and sizing unless physical direction is required.
220
+ - Treat exceptions as explicit and local; use state hooks or `data-*` attributes for variants instead of escalating selector specificity.
221
+
222
+ ## Class Naming Policy
223
+
224
+ Class names should read like a map of the layout structure.
225
+
226
+ - Name layout responsibility, not appearance.
227
+ - Make root-child, parent-child, area-element, and fixed-scroll relationships obvious.
228
+ - Prefer pattern-scoped names for related nodes.
229
+ - Avoid vague names like `container`, `wrapper`, `box`, `top`, `content`, and `bottom` unless the surrounding pattern name makes their responsibility unambiguous.
230
+ - Avoid DOM-depth names such as `card_header_title_icon`; describe stable roles instead.
231
+ - Do not use IDs for layout naming. IDs are reserved for JavaScript hooks or document-level targets when needed.
232
+
233
+ Prefer:
234
+
235
+ ```html
236
+ <div class="app_shell">
237
+ <header class="app_shell_header"></header>
238
+ <main class="app_shell_scroll_area"></main>
239
+ <footer class="app_shell_footer"></footer>
240
+ </div>
241
+ ```
242
+
243
+ Avoid:
244
+
245
+ ```html
246
+ <div class="container">
247
+ <div class="top"></div>
248
+ <div class="content"></div>
249
+ <div class="bottom"></div>
250
+ </div>
251
+ ```
252
+
253
+ ## Value And Token Policy
254
+
255
+ - Tokenize reusable design intent, not every layout number.
256
+ - Use tokens for stable, shared values such as `content-width`, `gutter`, `stack-gap`, `section-gap`, or density steps.
257
+ - Keep browser/context mechanics in raw CSS: `auto`, percentages, `min-content`, `max-content`, `fit-content`, `clamp()`, viewport units, container-query units, and intrinsic sizing.
258
+ - Put tokens behind logical CSS, for example `padding-block: var(--space-4)`.
259
+ - Use breakpoint names for layout states, not device names.
260
+
261
+ ## Pattern Contract
262
+
263
+ Use this shape when adding a new pattern:
264
+
265
+ ```txt
266
+ Pattern name
267
+ Category
268
+ Primary spatial problem
269
+ Secondary spatial problems
270
+ When to use
271
+ HTML structure
272
+ CSS
273
+ Core properties
274
+ Properties that break the layout if removed
275
+ Constraints and change points
276
+ Scroll ownership
277
+ Accessibility and source-order notes
278
+ Browser/fallback notes
279
+ Composition notes
280
+ Anti-patterns
281
+ ```
282
+
283
+ Suggested categories:
284
+
285
+ - Containment
286
+ - Centering
287
+ - Stacking
288
+ - In-line grouping
289
+ - Split / Sidebar
290
+ - Grid / Repetition
291
+ - Viewport / Shell
292
+ - Overlay / Exception
293
+ - Media / Fit
294
+ - Reveal / Density control
295
+
296
+ ## Verification Matrix
297
+
298
+ Before accepting a pattern, verify the smallest relevant matrix:
299
+
300
+ - Viewports: `320px`, `375px`, `768px`, `1024px`, `1440px`
301
+ - Containers: tight, medium, roomy, and `100%` parent
302
+ - Content: empty, short, long label, long paragraph, unbroken string
303
+ - Direction: `ltr` and `rtl`
304
+ - Writing mode: default, plus vertical writing mode if the pattern claims support
305
+ - Interaction: default, hover, focus, active, expanded, scroll top/middle/bottom when relevant
306
+
307
+ Acceptance checks:
308
+
309
+ - The layout reflows without unusable two-dimensional scrolling.
310
+ - Long and empty content do not break alignment or hide essential content.
311
+ - Focus order remains logical and visible.
312
+ - Scrollable regions and sticky elements behave as declared.
313
+ - Screenshot diffs are reviewed when the pattern has visual fixtures.
@@ -0,0 +1,36 @@
1
+ import path from "node:path";
2
+ import StyleDictionary from "style-dictionary";
3
+
4
+ export const adapter = Object.freeze({ name: "style-dictionary", version: "5.5.0" });
5
+
6
+ const durationTransform = "stylegallery/duration-css";
7
+ if (!Object.hasOwn(StyleDictionary.hooks.transforms, durationTransform)) {
8
+ StyleDictionary.registerTransform({
9
+ filter: (token) => token.$type === "duration",
10
+ name: durationTransform,
11
+ transform: (token) => `${token.$value.value}${token.$value.unit}`,
12
+ transitive: true,
13
+ type: "value",
14
+ });
15
+ }
16
+
17
+ export function createStyleDictionaryConfig(source, output) {
18
+ return {
19
+ log: { verbosity: "verbose", warnings: "warn" },
20
+ platforms: {
21
+ css: {
22
+ buildPath: `${path.dirname(output)}${path.sep}`,
23
+ files: [
24
+ {
25
+ destination: path.basename(output),
26
+ format: "css/variables",
27
+ options: { outputReferences: true },
28
+ },
29
+ ],
30
+ transforms: [...StyleDictionary.hooks.transformGroups.css, durationTransform],
31
+ },
32
+ },
33
+ source: [source],
34
+ usesDtcg: true,
35
+ };
36
+ }
@@ -0,0 +1,157 @@
1
+ ---
2
+ type: Interface Guide
3
+ title: Agent-Native StyleGallery
4
+ description: Machine-facing identity, query, execution, protocol-projection, and governed-learning contracts for StyleGallery.
5
+ ---
6
+
7
+ # Agent-Native StyleGallery
8
+
9
+ Primary role: machine interface guide.
10
+
11
+ Agent-Native StyleGallery lets a person, script, or agent inspect the governed StyleGallery knowledge graph without learning repository paths first. The Markdown corpus remains the human-readable source material; the agent-native layer gives its governed fixture records stable identities, closed schemas, deterministic operations, and protocol-specific projections.
12
+
13
+ This is shared non-domain infrastructure. It does not add a sixth StyleGallery domain, make example profiles canonical, or allow an MCP client to mutate repository knowledge.
14
+
15
+ ## Mental Model
16
+
17
+ | Layer | Contract |
18
+ | --- | --- |
19
+ | Identity | A `StableRef` names a logical object. A `VersionID` binds that StableRef to canonical content bytes. Changing governed content creates a different VersionID. |
20
+ | Knowledge | Claim, Evidence, Validation, Governance, and Policy records remain separate. Validation or governance never erases contradictory evidence. |
21
+ | Operations | One registry defines operation names, schemas, effect class, idempotency, capability requirements, adapters, and `read_only` metadata. |
22
+ | Execution | Task records preserve intent; Run records represent attempts; Effects record observable side effects; Receipts bind normalized inputs, outputs, policy decisions, and effects. |
23
+ | Retrieval | View snapshots and context packages are deterministic, bounded, and provenance-linked. Retrieval does not assert truth or mutate the registry. |
24
+ | Learning | Proposal, independent verification, governance decision, and promotion are distinct immutable records. Nothing is promoted automatically. |
25
+ | Protocols | CLI and MCP derive their read surfaces from the same registry, and their overlapping operations are fixture-equivalent. A2A projects Task state; AG-UI projects ordered Run events. Protocol IDs correlate with, but never replace, domain IDs. |
26
+
27
+ The canonical fixture and operation inventory is [registry.json](registry.json). Closed machine-readable contracts start at [schema/agent-native.schema.json](schema/agent-native.schema.json).
28
+
29
+ ## CLI
30
+
31
+ Run the CLI from the repository root:
32
+
33
+ ```sh
34
+ npm run sg -- discover --format json
35
+ npm run sg -- resolve sg:profile/editorial-reference-profile --format json
36
+ npm run sg -- claims sg:profile/editorial-reference-profile --format json
37
+ npm run sg -- context sg:profile/editorial-reference-profile --format json
38
+ npm run sg -- ops --format json
39
+ ```
40
+
41
+ The executable can also be invoked directly:
42
+
43
+ ```sh
44
+ ./scripts/sg.mjs discover --format json
45
+ ```
46
+
47
+ All machine-mode results are deterministic JSON on stdout. A failed request returns `{ "ok": false }`, a stable failure code, and a nonzero exit status.
48
+
49
+ ### Commands
50
+
51
+ | Command | Use |
52
+ | --- | --- |
53
+ | `discover` | Read the self-description, immutable manifest identity, conformance receipt, protocol surfaces, and operation summaries. |
54
+ | `resolve <StableRef-or-VersionID>` | Resolve one immutable fixture record. Supplying a VersionID requires an exact version match. |
55
+ | `claims <StableRef>` | Inspect related Claim, Evidence, Validation, Governance, and Policy records without collapsing them into one status. |
56
+ | `context <StableRef>` | Build a deterministic, bounded context package with a snapshot, member manifest, policy, and cache key. |
57
+ | `ops` | List all operation specifications, including internal governed mutations and their exposure metadata. |
58
+
59
+ ## MCP
60
+
61
+ Start the stdio MCP server with:
62
+
63
+ ```sh
64
+ npm run sg:mcp
65
+ ```
66
+
67
+ An MCP client can launch it directly:
68
+
69
+ ```json
70
+ {
71
+ "mcpServers": {
72
+ "stylegallery": {
73
+ "command": "node",
74
+ "args": ["/absolute/path/to/StyleGallery/scripts/sg-mcp.mjs"]
75
+ }
76
+ }
77
+ }
78
+ ```
79
+
80
+ The MCP surface is read-only. It derives exposed tools from the same registry used by the CLI and accepts only operations marked `read_only: true` with `effect_class: "NONE"`.
81
+
82
+ Read-only tools:
83
+
84
+ - `discover`
85
+ - `resolve`
86
+ - `claims`
87
+ - `context`
88
+ - `ops`
89
+ - `retrieve`
90
+
91
+ Resources:
92
+
93
+ - `sg://self` - self-description and conformance profile
94
+ - `sg://manifest` - immutable fixture manifest
95
+ - `sg://object/{encoded StableRef}` - one record resolved through the common registry
96
+
97
+ Registered mutation operations such as `proposal.create`, `proposal.verify`, `proposal.decide`, `proposal.promote`, `task.create`, `run.start`, `effect.record`, and `effect.reconcile` are deliberately absent from MCP.
98
+
99
+ ## Internal Governed Operations
100
+
101
+ The eight mutation operations are pure internal reducers. They validate and return new immutable records; they do not persist files, alter the fixture registry, or make external calls automatically.
102
+
103
+ Code that intentionally owns governance and persistence can invoke the common registry:
104
+
105
+ ```js
106
+ import { invokeRegistryOperation } from "../../scripts/agent-native/registry.mjs";
107
+
108
+ const result = invokeRegistryOperation("task.create", {
109
+ stable_ref: "sg:task/example",
110
+ intent: { operation: "resolve" },
111
+ required_result: { type: "profile_projection" }
112
+ });
113
+ ```
114
+
115
+ Capabilities deny by default when no operation scope is granted. An external effect without a durable connector receipt remains `UNCERTAIN`; only receipt-backed reconciliation may mark it `COMMITTED`.
116
+
117
+ ## Conformance And Trust Boundary
118
+
119
+ `discover` reports `fixture_verified` only when an immutable execution receipt:
120
+
121
+ - binds the executable fixture StableRef and VersionID;
122
+ - records the exact command and canonical result digest;
123
+ - carries a passing validator identity and version; and
124
+ - has a VersionID that matches its own canonical content.
125
+
126
+ This proves fixture-level executable conformance. It does not claim production authorization, remote transport security, exactly-once external effects, or independent organizational review.
127
+
128
+ ## A2A And AG-UI
129
+
130
+ - A2A exposes an Agent Card and projects StyleGallery Task states to A2A v1 task states.
131
+ - AG-UI projects a Run into ordered `RUN`, text, tool, state, and terminal events.
132
+ - Protocol bindings keep A2A/AG-UI identifiers separate from StyleGallery Task and Run identifiers.
133
+
134
+ These are projections, not additional sources of business logic. The operation registry and execution records remain canonical.
135
+
136
+ ## Verification
137
+
138
+ Run the complete agent-native contract suite:
139
+
140
+ ```sh
141
+ npm run test:agent-native
142
+ ```
143
+
144
+ The suite covers identity and manifest tampering, epistemic separation, capability denial, receipt-derived effect state, causal DAG cycles, governed-learning forgery, CLI behavior, real MCP SDK transport, CLI-to-MCP equivalence, schemas, A2A, AG-UI, retrieval, and conformance receipts.
145
+
146
+ When root routing or this governance entry changes, also run:
147
+
148
+ ```sh
149
+ node scripts/validate-links.mjs --json
150
+ node scripts/validate-ia.mjs --json
151
+ node scripts/validate-governance.mjs --json
152
+ ```
153
+
154
+ ## Navigation
155
+
156
+ Parent: [Consumer Reference](../index.md).
157
+ Next: [Repository governance](../../GOVERNANCE.md).