@jaimevalasek/aioson 1.5.1 → 1.6.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 (131) hide show
  1. package/README.md +6 -0
  2. package/docs/design-previews/aurora-command-ui-website.html +884 -0
  3. package/docs/design-previews/aurora-command-ui.html +682 -0
  4. package/docs/design-previews/bold-editorial-ui-website.html +658 -0
  5. package/docs/design-previews/bold-editorial-ui.html +717 -0
  6. package/docs/design-previews/clean-saas-ui-website.html +1202 -0
  7. package/docs/design-previews/clean-saas-ui.html +549 -0
  8. package/docs/design-previews/cognitive-core-ui-website.html +1009 -0
  9. package/docs/design-previews/cognitive-core-ui.html +463 -0
  10. package/docs/design-previews/glassmorphism-ui-website.html +572 -0
  11. package/docs/design-previews/glassmorphism-ui.html +886 -0
  12. package/docs/design-previews/index.html +699 -0
  13. package/docs/design-previews/interface-design-website.html +1187 -0
  14. package/docs/design-previews/interface-design.html +513 -0
  15. package/docs/design-previews/neo-brutalist-ui-website.html +621 -0
  16. package/docs/design-previews/neo-brutalist-ui.html +797 -0
  17. package/docs/design-previews/premium-command-center-ui-website.html +1217 -0
  18. package/docs/design-previews/premium-command-center-ui.html +552 -0
  19. package/docs/design-previews/warm-craft-ui-website.html +684 -0
  20. package/docs/design-previews/warm-craft-ui.html +739 -0
  21. package/docs/en/cli-reference.md +20 -9
  22. package/docs/pt/README.md +7 -0
  23. package/docs/pt/agent-sharding.md +132 -0
  24. package/docs/pt/agentes.md +8 -2
  25. package/docs/pt/busca-de-contexto.md +129 -0
  26. package/docs/pt/cache-de-contexto.md +156 -0
  27. package/docs/pt/comandos-cli.md +28 -0
  28. package/docs/pt/design-hybrid-forge.md +107 -0
  29. package/docs/pt/inicio-rapido.md +54 -3
  30. package/docs/pt/inteligencia-adaptativa.md +324 -0
  31. package/docs/pt/monitor-de-contexto.md +104 -0
  32. package/docs/pt/recuperacao-de-sessao.md +125 -0
  33. package/docs/pt/sandbox.md +125 -0
  34. package/docs/pt/skills.md +98 -6
  35. package/package.json +1 -1
  36. package/src/agent-loader.js +280 -0
  37. package/src/cli.js +94 -0
  38. package/src/commands/agent-loader.js +85 -0
  39. package/src/commands/context-cache.js +90 -0
  40. package/src/commands/context-monitor.js +92 -0
  41. package/src/commands/context-search.js +66 -0
  42. package/src/commands/design-hybrid-options.js +385 -0
  43. package/src/commands/health.js +214 -0
  44. package/src/commands/init.js +54 -13
  45. package/src/commands/install.js +52 -13
  46. package/src/commands/learning-evolve.js +355 -0
  47. package/src/commands/live.js +34 -0
  48. package/src/commands/recovery.js +43 -0
  49. package/src/commands/sandbox.js +37 -0
  50. package/src/commands/setup-context.js +22 -2
  51. package/src/commands/setup.js +178 -0
  52. package/src/commands/skill.js +79 -32
  53. package/src/commands/tool-registry-cmd.js +232 -0
  54. package/src/commands/update.js +7 -0
  55. package/src/constants.js +9 -0
  56. package/src/context-cache.js +159 -0
  57. package/src/context-search.js +326 -0
  58. package/src/design-variation-catalog.js +503 -0
  59. package/src/i18n/messages/en.js +32 -2
  60. package/src/i18n/messages/es.js +30 -2
  61. package/src/i18n/messages/fr.js +30 -2
  62. package/src/i18n/messages/pt-BR.js +32 -2
  63. package/src/install-animation.js +260 -0
  64. package/src/install-profile.js +143 -0
  65. package/src/install-wizard.js +474 -0
  66. package/src/installer.js +38 -10
  67. package/src/parser.js +7 -1
  68. package/src/recovery-context-session.js +154 -0
  69. package/src/runtime-store.js +97 -1
  70. package/src/sandbox.js +177 -0
  71. package/src/tool-executor.js +94 -0
  72. package/src/updater.js +11 -3
  73. package/template/.aioson/agents/analyst.md +58 -3
  74. package/template/.aioson/agents/architect.md +38 -0
  75. package/template/.aioson/agents/design-hybrid-forge.md +127 -0
  76. package/template/.aioson/agents/dev.md +103 -0
  77. package/template/.aioson/agents/deyvin.md +57 -0
  78. package/template/.aioson/agents/pm.md +58 -0
  79. package/template/.aioson/agents/product.md +28 -0
  80. package/template/.aioson/agents/qa.md +79 -0
  81. package/template/.aioson/agents/setup.md +65 -3
  82. package/template/.aioson/agents/sheldon.md +107 -6
  83. package/template/.aioson/agents/tester.md +156 -0
  84. package/template/.aioson/config.md +15 -0
  85. package/template/.aioson/context/forensics/.gitkeep +0 -0
  86. package/template/.aioson/context/seeds/seed-example.md +27 -0
  87. package/template/.aioson/context/user-profile.md +42 -0
  88. package/template/.aioson/locales/en/agents/setup.md +33 -1
  89. package/template/.aioson/locales/es/agents/setup.md +33 -1
  90. package/template/.aioson/locales/fr/agents/setup.md +33 -1
  91. package/template/.aioson/locales/pt-BR/agents/setup.md +33 -1
  92. package/template/.aioson/skills/design/aurora-command-ui/SKILL.md +243 -0
  93. package/template/.aioson/skills/design/aurora-command-ui/references/art-direction.md +293 -0
  94. package/template/.aioson/skills/design/aurora-command-ui/references/components.md +827 -0
  95. package/template/.aioson/skills/design/aurora-command-ui/references/dashboards.md +250 -0
  96. package/template/.aioson/skills/design/aurora-command-ui/references/design-tokens.md +585 -0
  97. package/template/.aioson/skills/design/aurora-command-ui/references/motion.md +365 -0
  98. package/template/.aioson/skills/design/aurora-command-ui/references/patterns.md +482 -0
  99. package/template/.aioson/skills/design/aurora-command-ui/references/websites.md +387 -0
  100. package/template/.aioson/skills/design/glassmorphism-ui/SKILL.md +222 -0
  101. package/template/.aioson/skills/design/glassmorphism-ui/references/art-direction.md +159 -0
  102. package/template/.aioson/skills/design/glassmorphism-ui/references/components.md +498 -0
  103. package/template/.aioson/skills/design/glassmorphism-ui/references/dashboards.md +236 -0
  104. package/template/.aioson/skills/design/glassmorphism-ui/references/design-tokens.md +274 -0
  105. package/template/.aioson/skills/design/glassmorphism-ui/references/motion.md +355 -0
  106. package/template/.aioson/skills/design/glassmorphism-ui/references/patterns.md +198 -0
  107. package/template/.aioson/skills/design/glassmorphism-ui/references/websites.md +307 -0
  108. package/template/.aioson/skills/design/neo-brutalist-ui/SKILL.md +213 -0
  109. package/template/.aioson/skills/design/neo-brutalist-ui/references/art-direction.md +228 -0
  110. package/template/.aioson/skills/design/neo-brutalist-ui/references/components.md +855 -0
  111. package/template/.aioson/skills/design/neo-brutalist-ui/references/dashboards.md +334 -0
  112. package/template/.aioson/skills/design/neo-brutalist-ui/references/design-tokens.md +342 -0
  113. package/template/.aioson/skills/design/neo-brutalist-ui/references/motion.md +286 -0
  114. package/template/.aioson/skills/design/neo-brutalist-ui/references/patterns.md +458 -0
  115. package/template/.aioson/skills/design/neo-brutalist-ui/references/websites.md +723 -0
  116. package/template/.aioson/skills/process/aioson-spec-driven/SKILL.md +45 -0
  117. package/template/.aioson/skills/process/aioson-spec-driven/references/approval-gates.md +109 -0
  118. package/template/.aioson/skills/process/aioson-spec-driven/references/artifact-map.md +44 -0
  119. package/template/.aioson/skills/process/aioson-spec-driven/references/classification-map.md +37 -0
  120. package/template/.aioson/skills/process/aioson-spec-driven/references/hardening-lane.md +49 -0
  121. package/template/.aioson/skills/process/aioson-spec-driven/references/maintenance-and-state.md +66 -0
  122. package/template/.aioson/skills/process/aioson-spec-driven/references/ui-language.md +75 -0
  123. package/template/.aioson/skills/process/design-hybrid-forge/SKILL.md +144 -0
  124. package/template/.aioson/skills/process/design-hybrid-forge/references/crossover-protocol.md +221 -0
  125. package/template/.aioson/skills/process/design-hybrid-forge/references/naming-registry.md +88 -0
  126. package/template/.aioson/skills/process/design-hybrid-forge/references/output-contract.md +291 -0
  127. package/template/.aioson/skills/process/design-hybrid-forge/references/pair-compatibility.md +117 -0
  128. package/template/.aioson/skills/process/design-hybrid-forge/references/quality-gates.md +188 -0
  129. package/template/.aioson/skills/process/design-hybrid-forge/references/variation-library.md +125 -0
  130. package/template/AGENTS.md +23 -1
  131. package/template/CLAUDE.md +1 -0
@@ -0,0 +1,221 @@
1
+ # Crossover Protocol — design-hybrid-forge
2
+
3
+ Load when running Phase 2 (Identity Synthesis) and Phase 3 (Crossover Spec).
4
+
5
+ This is the methodological core of the forge. Follow it in order. Do not skip to generation.
6
+
7
+ ---
8
+
9
+ ## Phase 2 — Identity Synthesis
10
+
11
+ Before writing a single file, answer all six questions. If you cannot answer them, you are not ready to generate.
12
+
13
+ ### 2.1 Name the creative tension
14
+
15
+ Write one sentence naming what the two skills pull against each other.
16
+
17
+ Example:
18
+ > "cognitive-core-ui pulls toward dense operational precision and solid surfaces; glassmorphism-ui pulls toward fluid depth through transparency. The hybrid resolves this by making the command structure live inside a glass aurora — precision without opacity."
19
+
20
+ If the sentence feels like a compromise ("both are dark and professional"), the pair is too similar. Pick a different pair or articulate a sharper tension.
21
+
22
+ ### 2.2 Decide the substrate winner
23
+
24
+ The background system of the hybrid belongs to exactly ONE parent. Never split this 50/50.
25
+
26
+ Ask: which parent's background model is more distinctive and harder to achieve without the other?
27
+ - If parent A uses a gradient substrate (glassmorphism, premium-command) and parent B uses solid backgrounds → gradient substrate wins.
28
+ - If both use solid backgrounds → the one with the stronger depth model wins.
29
+ - If both use gradient substrates → this pair may be too similar (check anti-pairs).
30
+
31
+ Document the substrate winner and the exact CSS value.
32
+
33
+ ### 2.3 Decide the structure winner
34
+
35
+ The layout architecture and information density rules belong to exactly ONE parent.
36
+
37
+ Ask: which parent has a more opinionated information structure?
38
+ - mono rails → cognitive-core wins
39
+ - editorial sections → bold-editorial wins
40
+ - raw grid → neo-brutalist wins
41
+ - balanced/neutral → the other parent's structure can fill in
42
+
43
+ Document the structure winner and what it contributes concretely (layout, rhythm, navigation pattern, density scale).
44
+
45
+ ### 2.4 Design the accent fusion
46
+
47
+ The hybrid's accent must be genuinely new. Rules:
48
+ - NOT parent A's accent color
49
+ - NOT parent B's accent color
50
+ - Usually a gradient pair where each endpoint references one parent
51
+ - Sometimes a completely new color at the midpoint between the two parent accents
52
+ - The gradient pair is the hybrid's strongest visual signature
53
+
54
+ Document the primary accent, secondary accent, gradient, and at least one glow/shadow value derived from it.
55
+
56
+ **Method — midpoint derivation:**
57
+ 1. Get parent A's accent in HSL
58
+ 2. Get parent B's accent in HSL
59
+ 3. The hybrid's primary can be the H/S/L midpoint, or a deliberate shift toward the more distinctive one
60
+ 4. The gradient goes from primary → secondary (A-derived → B-derived)
61
+
62
+ **Example (cognitive-core × glassmorphism):**
63
+ - cognitive-core accent: `#22D3EE` (teal, H=190)
64
+ - glassmorphism accent: `#7C3AED` (violet, H=263)
65
+ - midpoint H ≈ 226 (blue) — but this is bland
66
+ - chosen: shift toward teal → `#00C8E8` (electric teal) + keep violet as gradient endpoint
67
+ - result: `linear-gradient(135deg, #00C8E8, #7C3AED)` — teal-electric × violet
68
+
69
+ ### 2.5 Name the hybrid
70
+
71
+ Requirements:
72
+ - 2–3 word compound noun or adjective + noun
73
+ - Must NOT be a concatenation of parent names (not "glass-core" or "warm-brutalist")
74
+ - Must evoke the resolved tension — what the interface *feels like*, not what it's made of
75
+ - Should be memorable and suggest a specific vibe
76
+
77
+ **Naming patterns:**
78
+ | Pattern | Example |
79
+ |---|---|
80
+ | Material + Role | `aurora-command`, `crystal-forge`, `void-craft` |
81
+ | Texture + Purpose | `warm-terminal`, `raw-glass`, `cold-editorial` |
82
+ | Atmosphere + Function | `dusk-ops`, `ember-dashboard`, `frost-bureau` |
83
+ | Poetic compound | `eclipse-ui`, `obsidian-core`, `solar-canvas` |
84
+
85
+ After naming: confirm it is not in `naming-registry.md`. If taken, iterate.
86
+
87
+ ### 2.6 Write the three pillars
88
+
89
+ Every AIOSON design skill defines its identity through three pillars. Write them for the hybrid now, before generating any file.
90
+
91
+ Each pillar is a short paragraph (3–5 sentences) describing one non-negotiable visual principle. The three must be distinct and together tell the full story of the hybrid.
92
+
93
+ Structure:
94
+ ```
95
+ 1. [Substrate + surface model] — how depth is created
96
+ 2. [Structure + rhythm model] — how information is organized
97
+ 3. [Accent + signature model] — what the eye remembers
98
+ ```
99
+
100
+ If you can't write three distinct, non-overlapping pillars, the hybrid doesn't have a clear enough identity. Revise the crossover spec before generating.
101
+
102
+ ### 2.7 Optional modifier ownership
103
+
104
+ If the user selected modifier skills, assign each one a narrow lane.
105
+
106
+ Allowed modifier lanes:
107
+ - accent refinement
108
+ - motion language
109
+ - landing-page / website composition
110
+ - one small component family
111
+
112
+ Forbidden modifier lanes:
113
+ - substrate / background model
114
+ - layout structure
115
+ - density default
116
+ - navigation architecture
117
+
118
+ If you cannot describe the modifier contribution in one short sentence, drop the modifier.
119
+
120
+ ---
121
+
122
+ ## Phase 3 — Crossover Spec
123
+
124
+ A crossover spec is a table mapping every design dimension to its source.
125
+
126
+ ### 3.1 Dimension map
127
+
128
+ Fill in this table for the chosen pair:
129
+
130
+ | Dimension | Source | Value / Rule |
131
+ |---|---|---|
132
+ | Background model | A or B | e.g. "gradient substrate from glassmorphism" |
133
+ | Surface treatment | A or B or NEW | e.g. "dark-tinted glass from hybrid" |
134
+ | Layout system | A or B | e.g. "command shell from cognitive-core" |
135
+ | Navigation pattern | A or B | e.g. "topbar + sidebar from cognitive-core" |
136
+ | Typography | A or B or NEW | e.g. "Inter + JetBrains Mono from cognitive-core" |
137
+ | Heading scale | A or B | e.g. "bold headings from cognitive-core" |
138
+ | Accent primary | NEW | e.g. "#00C8E8 teal-electric" |
139
+ | Accent secondary | NEW | e.g. "#7C3AED violet" |
140
+ | Accent gradient | NEW | e.g. "linear-gradient(135deg, #00C8E8, #7C3AED)" |
141
+ | Depth model | A, B, or NEW | e.g. "blur-based layers from glassmorphism" |
142
+ | Border style | A or B or NEW | e.g. "luminous rgba white from glassmorphism" |
143
+ | Shadow style | NEW | e.g. "teal-electric tinted shadows" |
144
+ | Density default | A or B | e.g. "compact from cognitive-core" |
145
+ | Border radius | A or B | e.g. "generous (16px+) from glassmorphism" |
146
+ | Mono labels | A or B or none | e.g. "section rails only from cognitive-core" |
147
+ | New signature | NEW | e.g. "dark glass panels revealing aurora gradient" |
148
+
149
+ ### 3.2 New elements (things neither parent has)
150
+
151
+ List at least 3 elements that are genuinely new — not in parent A, not in parent B.
152
+
153
+ These are the hybrid's creative contribution:
154
+ - A new surface type, a new interaction pattern, a new composition rule
155
+ - Something that only makes sense because BOTH parents are in the mix
156
+
157
+ Example from aurora-command-ui:
158
+ 1. **Dark-tinted glass** — glassmorphism's glass is white-transparent; cognitive-core's surfaces are solid dark. The hybrid invents dark-tinted glass (`rgba(10,14,26,0.65)`) that is neither.
159
+ 2. **Gradient stat numbers** — cognitive-core has plain white stat numbers; glassmorphism puts gradients on hero text. The hybrid puts the teal→violet gradient on operational stat numbers specifically.
160
+ 3. **Aurora glow shadows** — cognitive-core uses black shadows; glassmorphism uses violet-tinted shadows. The hybrid uses teal-electric shadows, which only makes sense because the teal accent is "operational signal" (from cognitive-core) applied to a glass system (from glassmorphism).
161
+
162
+ ### 3.3 Conflict resolution
163
+
164
+ When both parents claim the same dimension, use this priority order:
165
+ 1. **Substrate parent wins background** — no exceptions
166
+ 2. **Structure parent wins layout and density** — no exceptions
167
+ 3. **For everything else**: whichever parent has the more distinctive/unusual approach wins. The blend wins only if it creates a new element that didn't exist before.
168
+ 4. **Modifiers never override the 2 rules above.** If a modifier conflicts with a primary parent on substrate or structure, the modifier loses automatically.
169
+
170
+ ### 3.4 Anti-blend rules
171
+
172
+ Never do these:
173
+ - Average the two accent colors and use the average → the hybrid looks washed out
174
+ - Use both parent layout systems simultaneously → the interface looks confused
175
+ - Apply parent A's texture at 50% and parent B's texture at 50% → neither reads clearly
176
+ - Keep both parent backgrounds in different sections → the substrate must be unified
177
+ - Let a modifier become a stealth third parent → the identity collapses
178
+
179
+ ### 3.5 Modifier map (optional)
180
+
181
+ If modifiers exist, add this small table after the dimension map:
182
+
183
+ | Modifier | Allowed lane | Concrete contribution |
184
+ |---|---|---|
185
+ | `modifier-skill` | motion | "springier reveal timings for marketing sections only" |
186
+
187
+ Keep this table short. Zero to 2 rows maximum in the default flow, or zero to 3 rows only in advanced mode.
188
+
189
+ ---
190
+
191
+ ## Crossover spec output format
192
+
193
+ After completing phases 2 and 3, produce this summary before writing any file:
194
+
195
+ ```
196
+ HYBRID: {name}
197
+ PARENTS: {skill_a} × {skill_b}
198
+ MODIFIERS: {optional list or "none"}
199
+ TENSION: {one sentence}
200
+
201
+ SUBSTRATE: {parent} — {substrate value}
202
+ STRUCTURE: {parent} — {what it contributes}
203
+ ACCENT: primary={value}, secondary={value}, gradient={value}
204
+
205
+ PILLARS:
206
+ 1. {pillar title}: {3–5 sentences}
207
+ 2. {pillar title}: {3–5 sentences}
208
+ 3. {pillar title}: {3–5 sentences}
209
+
210
+ DIMENSION MAP: (filled table)
211
+
212
+ MODIFIER MAP: (only if modifiers exist)
213
+
214
+ NEW ELEMENTS:
215
+ - {element 1}
216
+ - {element 2}
217
+ - {element 3}
218
+ ```
219
+
220
+ This summary is NOT a file. It lives in the conversation and guides file generation.
221
+ Once the user confirms: proceed to Phase 4 (file generation).
@@ -0,0 +1,88 @@
1
+ # Naming Registry — design-hybrid-forge
2
+
3
+ Load when naming a new hybrid or checking for conflicts.
4
+
5
+ ---
6
+
7
+ ## Registered hybrids
8
+
9
+ | Hybrid name | Parents | Shipped | Domain |
10
+ |---|---|---|---|
11
+ | `aurora-command-ui` | cognitive-core-ui × glassmorphism-ui | 2026-03-29 | SOC, AI platforms, dev tools |
12
+
13
+ ---
14
+
15
+ ## Naming conventions
16
+
17
+ ### Rules
18
+
19
+ 1. The name must be a compound of 2–3 words separated by hyphens.
20
+ 2. Must end in `-ui` (consistent with native skills).
21
+ 3. Must NOT contain either parent name (not "glass-core-ui", not "warm-glass-ui").
22
+ 4. Must evoke the resolved creative tension — the hybrid's *vibe*, not its recipe.
23
+ 5. Must be original — check this registry before finalizing.
24
+
25
+ ### Patterns that work
26
+
27
+ | Pattern | Examples |
28
+ |---|---|
29
+ | `{atmosphere}-{function}-ui` | `aurora-command-ui`, `dusk-ops-ui`, `frost-bureau-ui` |
30
+ | `{material}-{role}-ui` | `crystal-forge-ui`, `void-craft-ui`, `obsidian-core-ui` |
31
+ | `{temperature}-{structure}-ui` | `warm-terminal-ui`, `cold-editorial-ui`, `ember-grid-ui` |
32
+ | `{light}-{discipline}-ui` | `shadow-data-ui`, `neon-ledger-ui`, `pale-signal-ui` |
33
+
34
+ ### Patterns to avoid
35
+
36
+ - Concatenating parent names: `glass-cognitive-ui`, `brutalist-warm-ui` ✕
37
+ - Generic terms: `modern-ui`, `premium-dark-ui`, `clean-glass-ui` ✕
38
+ - Overclaiming: `perfect-ui`, `ultimate-command-ui` ✕
39
+ - Too abstract with no feel: `hybrid-alpha-ui`, `variant-b-ui` ✕
40
+
41
+ ---
42
+
43
+ ## Name ideas bank (unclaimed)
44
+
45
+ The following names are available for future hybrids. They are not reserved — first hybrid that ships with a matching identity claims the name.
46
+
47
+ ### Dark + glass tier
48
+ - `void-glass-ui` — dark structural void with glass transparency
49
+ - `eclipse-dashboard-ui` — dark command, glass panels, celestial depth
50
+ - `obsidian-signal-ui` — black-glass surfaces with sharp operational precision
51
+ - `midnight-forge-ui` — deep dark atmosphere with raw structural energy
52
+
53
+ ### Warm + structured tier
54
+ - `ember-command-ui` — warm earthy palette meeting command center density
55
+ - `clay-terminal-ui` — terracotta palette over raw grid structure
56
+ - `warm-bureau-ui` — humanized command center, serif meets mono
57
+ - `amber-ops-ui` — golden-warm atmosphere with operational structure
58
+
59
+ ### Raw + luminous tier
60
+ - `brutalist-glass-ui` — raw borders made luminous through glass
61
+ - `frost-grid-ui` — neo-brutalist structure with glass frost treatment
62
+ - `chalk-signal-ui` — rough texture with precision data signals
63
+ - `raw-aurora-ui` — structural honesty floating on a glass aurora
64
+
65
+ ### Editorial + depth tier
66
+ - `cinema-data-ui` — editorial cinematic rhythm with data density
67
+ - `manifesto-ops-ui` — bold editorial headlines + operational panels
68
+ - `dark-editorial-glass-ui` — editorial structure with glass depth layers
69
+ - `ink-command-ui` — editorial typography commanding operational data
70
+
71
+ ### Clean + luminous tier
72
+ - `crystalline-saas-ui` — minimal glass precision for enterprise
73
+ - `cloud-command-ui` — clean systematic structure with glass elevation
74
+ - `pale-aurora-ui` — light glass system over soft gradient, enterprise-grade
75
+
76
+ ---
77
+
78
+ ## How to register a new hybrid
79
+
80
+ Only after explicit core promotion, add a row to the "Registered hybrids" table with:
81
+ - The exact skill name used in the directory
82
+ - Both parent skill names (alphabetical order)
83
+ - The date shipped (`YYYY-MM-DD`)
84
+ - 3–4 word domain description
85
+
86
+ Also remove the name from the ideas bank if it was claimed from there.
87
+
88
+ Project-local hybrids do not update this registry automatically. They should keep their chosen name in `.skill-meta.json` until a curator promotes them to core.
@@ -0,0 +1,291 @@
1
+ # Output Contract — design-hybrid-forge
2
+
3
+ Load when running Phases 4 and 5 (skill generation + preview generation).
4
+
5
+ Defines exactly what each file must contain and the minimum quality bar.
6
+
7
+ ---
8
+
9
+ ## File generation order
10
+
11
+ Write in this order — each file informs the next:
12
+
13
+ 1. `SKILL.md` — identity + rules (uses crossover spec from phase 3)
14
+ 2. `references/design-tokens.md` — all CSS variables (uses accent + substrate from phase 2)
15
+ 3. `references/art-direction.md` — expression modes + signature library (uses pillars from phase 2)
16
+ 4. `references/components.md` — component library (uses tokens + art direction)
17
+ 5. `references/patterns.md` — page layouts (uses components)
18
+ 6. `references/dashboards.md` — dashboard presets (uses patterns + tokens)
19
+ 7. `references/websites.md` — landing patterns (uses components + art direction)
20
+ 8. `references/motion.md` — animations (uses tokens + components)
21
+ 9. `.skill-meta.json` — author, parentage, generator, install/distribution metadata
22
+ 10. `previews/{name}.html` — dashboard preview (uses all above)
23
+ 11. `previews/{name}-website.html` — landing preview (uses all above)
24
+ 12. `AGENTS.md` — register the installed skill section when that file exists
25
+
26
+ ---
27
+
28
+ ## File-by-file requirements
29
+
30
+ ### SKILL.md
31
+
32
+ Required sections (must all be present):
33
+ - Frontmatter: `name`, `description` (includes activation keywords)
34
+ - One-paragraph system description
35
+ - `## Package structure` (directory tree)
36
+ - `## Activation rules` (when to load / when not to)
37
+ - `## Responsibility boundary` (defines / does not decide)
38
+ - `## Loading guide` (table: task → which references to load)
39
+ - `## Visual signature — three pillars` (the three from phase 2)
40
+ - `## Hybrid DNA` (from A / from B / new in hybrid — explicit)
41
+ - `## Modifier DNA` (only if modifiers were used)
42
+ - `## Variation Overlay` (only if a variation preset / overlay was selected)
43
+ - `## Theme system` (default theme + optional, HTML data-theme snippet)
44
+ - `## Visual DNA` (complete CSS color specs for dark + light, including hex values)
45
+ - `## Layout structure` (ASCII diagram of the main app shell)
46
+ - `## Signature details` (list of specific CSS rules for the signature moves)
47
+ - `## Application rules` (7–10 binding rules)
48
+ - `## Intent before visuals` (3 questions + bad/good examples)
49
+ - `## Workflow discipline` (7-step checklist)
50
+ - `## Non-negotiable quality gates` (8–12 gates)
51
+ - `## Positioning vs parent skills` (comparison table vs both parents)
52
+ - `## Delivery modes` (greenfield + brownfield)
53
+
54
+ The file must state clearly that the hybrid is selected as one design skill and must not be blended live with other active design skills.
55
+
56
+ ### references/design-tokens.md
57
+
58
+ Required content:
59
+ - Typography strategy (system vs Google Fonts decision)
60
+ - Complete `:root` block: typography tokens, spacing (4px rhythm), radius, transitions, z-index
61
+ - `[data-theme="dark"]` block: ALL color tokens
62
+ - `[data-theme="light"]` block: ALL color tokens
63
+ - **Hybrid glass/surface tokens** (unique to this hybrid — the new surface system)
64
+ - Shadow tokens (tinted with hybrid accent — never plain black)
65
+ - Layout tokens (sidebar width, nav height, content widths)
66
+ - Breakpoints
67
+ - Interaction guardrails (at least 4 rules)
68
+ - Token scope guardrails (rule 1–4 with safe/unsafe examples)
69
+ - Admin compact density scale (if structure parent = cognitive-core or clean-saas)
70
+
71
+ If modifiers were used, token changes must stay inside their allowed lane. Example: a motion modifier must not redefine layout width tokens.
72
+ If a variation overlay exists, reflect it in tokens only where it changes expression without violating the parent-owned structure/substrate rules.
73
+
74
+ Minimum: dark theme has at least 8 bg/surface tokens, 6 accent tokens, 6 semantic tokens, 4 shadow tokens.
75
+
76
+ ### references/art-direction.md
77
+
78
+ Required content:
79
+ - Core rule ("same system, different expressions")
80
+ - Mandatory pre-build outputs (7 items)
81
+ - **5 expression modes** — each with: for/feel/composition/visual cues/signature ideas
82
+ - Signature library (table with ≥10 reusable details)
83
+ - Anti-generic tests (≥4 tests, at least one unique to this hybrid)
84
+ - What makes each mode distinct (table contrasting the 5 modes)
85
+
86
+ If modifiers exist, call out exactly where they are allowed to appear and where they are forbidden.
87
+ If a variation overlay exists, describe how it changes the expression modes without turning them into unrelated themes.
88
+
89
+ ### references/components.md
90
+
91
+ Required: ≥20 named components, each with:
92
+ - Name and purpose
93
+ - Key CSS properties (using tokens, never hardcoded values)
94
+ - Hover/active/focus states
95
+ - The hybrid-specific surface treatment (glass/texture/depth)
96
+
97
+ Must include: top bar, sidebar, stat card, section header, data table, badge/chip, modal, button variants (primary gradient + secondary + ghost), form input, dropdown, at least one hybrid-specific component that doesn't exist in either parent.
98
+
99
+ ### references/patterns.md
100
+
101
+ Required: ≥6 page layout patterns, each with:
102
+ - ASCII diagram of the layout
103
+ - CSS skeleton (grid/flex, sizing, overflow)
104
+ - Fallback rules
105
+ - Use case (when to choose this pattern)
106
+
107
+ Must include: main app shell, dashboard shell (≥1 operational variant), auth page, settings page.
108
+
109
+ ### references/dashboards.md
110
+
111
+ Required:
112
+ - General rules section (≥6 rules)
113
+ - Chart color palette (CSS variables)
114
+ - Chart rendering rules (one per chart type)
115
+ - **5 dashboard presets**, each with:
116
+ - Expression mode
117
+ - Feel (concrete words)
118
+ - Domain vocabulary
119
+ - Full layout description (stat row + main panels + table/feed)
120
+ - Signature move
121
+
122
+ ### references/websites.md
123
+
124
+ Required:
125
+ - General rules section
126
+ - Page shell CSS
127
+ - ≥2 hero variants (at least one split layout, one centered/atmospheric)
128
+ - ≥4 section patterns (feature grid, proof rail, pricing, testimonials/CTA)
129
+ - Footer pattern
130
+ - Anti-patterns list (≥5)
131
+
132
+ ### references/motion.md
133
+
134
+ Required:
135
+ - Timing philosophy (3–4 sentences)
136
+ - Core easing functions (CSS custom properties)
137
+ - ≥8 named animations, each with CSS keyframes + usage context
138
+ - Reduced motion block (`@media (prefers-reduced-motion: reduce)`)
139
+ - Performance rules (≥4)
140
+
141
+ ### .skill-meta.json
142
+
143
+ Required content:
144
+ - `source: "generated"`
145
+ - `generation_mode: "project-local"`
146
+ - `installedAt`
147
+ - `author.name` when the user provided one
148
+ - `generator.skill: "design-hybrid-forge"`
149
+ - `generator.model` when the runtime/tool exposes it
150
+ - `generator.tool` when known (`claude`, `codex`, etc.)
151
+ - `parents.primary` with exactly 2 entries
152
+ - `parents.modifiers` with 0–2 entries by default, or 0–3 only when advanced mode was enabled
153
+ - `promotion.status` (`local`, `candidate`, `promoted`)
154
+ - `variation_profile` when a preset/overlay was selected
155
+ - `variation_profile.modifier_policy` when the active preset declared it
156
+
157
+ Recommended shape:
158
+
159
+ ```json
160
+ {
161
+ "source": "generated",
162
+ "generation_mode": "project-local",
163
+ "installedAt": "2026-03-30T00:00:00.000Z",
164
+ "author": {
165
+ "name": "ACME Design Team"
166
+ },
167
+ "generator": {
168
+ "skill": "design-hybrid-forge",
169
+ "tool": "codex",
170
+ "model": "gpt-5.x"
171
+ },
172
+ "parents": {
173
+ "primary": ["cognitive-core-ui", "glassmorphism-ui"],
174
+ "modifiers": ["bold-editorial-ui"]
175
+ },
176
+ "variation_profile": {
177
+ "modifier_policy": "up_to_2_modifiers",
178
+ "style_modes": ["cinematic-immersive"],
179
+ "motion_system": ["scroll-driven-scenes"],
180
+ "advanced_css": ["scroll-driven-animations", "view-transition-api"]
181
+ },
182
+ "promotion": {
183
+ "status": "local"
184
+ }
185
+ }
186
+ ```
187
+
188
+ ### AGENTS.md registration
189
+
190
+ When `AGENTS.md` exists in the project, update the "Installed skills" section so Codex can invoke the new hybrid via `@{slug}`.
191
+
192
+ If `.aioson/context/design-variation-preset.md` was consumed for the generation:
193
+ - preserve the history snapshot under `.aioson/context/history/design-variation-presets/`
194
+ - remove or archive the active preset from `.aioson/context/` after the hybrid files are finished
195
+ - do not treat that preset as the permanent visual configuration of the project
196
+
197
+ Required row format:
198
+
199
+ ```markdown
200
+ | @{slug} | `.aioson/installed-skills/{slug}/SKILL.md` | {short description} |
201
+ ```
202
+
203
+ ---
204
+
205
+ ## Preview requirements
206
+
207
+ ### Dashboard preview (`previews/{name}.html`)
208
+
209
+ Must show:
210
+ - The aurora/substrate background visible through glass panels
211
+ - Command strip with live dots (if structure parent = cognitive-core)
212
+ - Top bar with logo + tab nav + actions
213
+ - Sidebar with section labels + nav items
214
+ - Stat row (4 cards minimum)
215
+ - At least one chart (can be SVG simulation)
216
+ - At least one feed or alert panel
217
+ - Full data table (with header + 3–5 rows)
218
+ - All glass surfaces with `::before` reflection
219
+ - Hybrid accent gradient on at least 3 visible elements
220
+ - AIOSON badge (fixed, top-right)
221
+ - Must render correctly with no external dependencies beyond Google Fonts
222
+
223
+ ### Landing page preview (`previews/{name}-website.html`)
224
+
225
+ Must show:
226
+ - Full-page substrate background (fixed, aurora gradient or equivalent)
227
+ - Glass navigation bar (fixed, scroll-opaque behavior via CSS class)
228
+ - Hero section (split or centered — not a plain two-column with no visual punch)
229
+ - At least one decorative atmosphere element (orb, gradient blob, etc.)
230
+ - Proof rail / social proof strip
231
+ - Feature cards section (≥6 cards, 3-column grid)
232
+ - Pricing section (3 tiers, featured card visually distinct with gradient border)
233
+ - Footer with glass treatment
234
+ - Hybrid accent gradient on hero heading or CTA
235
+ - AIOSON badge
236
+
237
+ ### Technical requirements (both previews)
238
+
239
+ - Single `.html` file (no external CSS or JS files)
240
+ - Google Fonts loaded via `<link>` (Inter + JetBrains Mono)
241
+ - All CSS in `<style>` tag in `<head>`
242
+ - All design tokens as CSS custom properties in `:root`
243
+ - Glass elements use `@supports (backdrop-filter: blur(1px))` fallback or document that they don't need it
244
+ - No JavaScript required for visual display (JS only for optional interactions)
245
+ - Renders at 1440px wide (the preview standard)
246
+
247
+ ---
248
+
249
+ ## Optional promotion requirements
250
+
251
+ Only for explicit core-promotion mode:
252
+ - prepare a gallery card for `docs/design-previews/index.html`
253
+ - prepare the hybrid for `.aioson/skills/design/{name}/`
254
+ - update naming/registry files only in the AIOSON core repo
255
+
256
+ ### Gallery card requirements
257
+
258
+ When adding to `index.html` in core-promotion mode:
259
+
260
+ ```html
261
+ <!-- Hybrid card structure -->
262
+ <div class="skill-card">
263
+ <div class="preview-thumb thumb-{name}">
264
+ <span class="preview-label">{3-word vibe description}</span>
265
+ </div>
266
+ <div class="card-body">
267
+ <div class="card-header">
268
+ <span class="card-name accent-{name}">{Display Name}</span>
269
+ <span class="hybrid-badge">✦ Hybrid</span> <!-- REQUIRED for hybrids -->
270
+ </div>
271
+ <p class="card-description">
272
+ {Parent A} × {Parent B}. {2–3 sentence description of the hybrid identity.}
273
+ </p>
274
+ <div class="card-meta">
275
+ <!-- 4 use case pills -->
276
+ </div>
277
+ <div class="card-links">
278
+ <a href="{name}.html">Dashboard</a>
279
+ <a href="{name}-website.html">Landing page</a>
280
+ </div>
281
+ </div>
282
+ </div>
283
+ ```
284
+
285
+ Thumbnail CSS must:
286
+ - Use the hybrid's substrate as background
287
+ - Include a `::before` pseudo-element showing the glass surface treatment
288
+ - Include an atmospheric `::after` showing the accent glow
289
+ - Be visually distinct from both parent thumbnails in the gallery
290
+
291
+ Update the skill count in `hero-meta` and `footer`.