@adia-ai/adia-ui-factory 0.2.4 → 0.8.1

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 (145) hide show
  1. package/.claude-plugin/plugin.json +6 -8
  2. package/.mcp.json +1 -1
  3. package/CHANGELOG.md +40 -67
  4. package/README.md +32 -53
  5. package/agents/app-architect.md +28 -0
  6. package/agents/routing-corpus.json +202 -0
  7. package/agents/screen-composer.md +27 -0
  8. package/bin/adia-info +235 -0
  9. package/bin/adia-lint +17 -2
  10. package/commands/adia-genui.md +5 -8
  11. package/commands/adia-migrate.md +5 -6
  12. package/commands/adia-orient.md +5 -10
  13. package/commands/adia-scaffold.md +7 -13
  14. package/commands/adia-verify.md +5 -6
  15. package/package.json +5 -6
  16. package/references/a2ui-mcp-tools.md +11 -8
  17. package/references/authoring-components.md +25 -1
  18. package/references/component-model.md +52 -4
  19. package/references/contracts/a2ui-mcp-surface.md +35 -0
  20. package/references/contracts/migration-guide-format.md +34 -0
  21. package/references/data-and-hydration.md +8 -5
  22. package/references/genui-a2ui.md +12 -6
  23. package/references/llm.md +22 -39
  24. package/references/migration.md +110 -36
  25. package/references/project-shapes.md +11 -13
  26. package/references/shell-admin.md +5 -2
  27. package/references/shell-chat.md +5 -3
  28. package/references/shell-editor.md +1 -1
  29. package/references/shell-embed.md +40 -26
  30. package/references/shell-simple.md +5 -2
  31. package/references/spa-architecture.md +28 -73
  32. package/references/ssr-integration.md +1 -1
  33. package/references/verification.md +8 -12
  34. package/skills/adia-compose/SKILL.md +121 -0
  35. package/skills/{adia-ui-kit → adia-compose}/assets/figma-make/guidelines/Guidelines.md +3 -3
  36. package/skills/{adia-ui-kit → adia-compose}/assets/figma-make/guidelines/components.md +1 -1
  37. package/skills/{adia-ui-kit → adia-compose}/assets/figma-make/guidelines/styles.md +1 -1
  38. package/skills/{adia-ui-kit → adia-compose}/assets/figma-make/guidelines/tokens.md +3 -3
  39. package/skills/{adia-ui-kit → adia-compose}/assets/templates/FEEDBACK.template.md +7 -7
  40. package/skills/{adia-ui-kit → adia-compose}/assets/templates/RESPONSE.template.md +6 -7
  41. package/skills/adia-compose/references/composition-traps.md +58 -0
  42. package/skills/adia-compose/references/feedback-discipline.md +20 -0
  43. package/skills/adia-compose/references/spec-to-ui-reasoning.md +158 -0
  44. package/skills/adia-data/SKILL.md +78 -0
  45. package/skills/adia-genui/SKILL.md +83 -0
  46. package/skills/adia-host/SKILL.md +119 -0
  47. package/skills/adia-llm/SKILL.md +36 -0
  48. package/skills/adia-migrate/SKILL.md +95 -0
  49. package/skills/adia-orient/SKILL.md +135 -0
  50. package/skills/adia-project/SKILL.md +83 -0
  51. package/skills/adia-shells/SKILL.md +74 -0
  52. package/skills/adia-verify/SKILL.md +43 -0
  53. package/skills/adia-verify/references/verification.md +42 -0
  54. package/commands/adia-compose.md +0 -10
  55. package/commands/adia-wire.md +0 -13
  56. package/skills/adia-ui-compose/SKILL.md +0 -57
  57. package/skills/adia-ui-data/SKILL.md +0 -62
  58. package/skills/adia-ui-factory/SKILL.md +0 -113
  59. package/skills/adia-ui-genui/SKILL.md +0 -74
  60. package/skills/adia-ui-kit/CHANGELOG.md +0 -41
  61. package/skills/adia-ui-kit/SKILL.md +0 -442
  62. package/skills/adia-ui-kit/assets/team-scaffold/archive-README.md +0 -30
  63. package/skills/adia-ui-kit/assets/team-scaffold/drafts-README.md +0 -57
  64. package/skills/adia-ui-kit/assets/team-scaffold/inbox-README.md +0 -76
  65. package/skills/adia-ui-kit/assets/team-scaffold/outbox-README.md +0 -46
  66. package/skills/adia-ui-kit/assets/team-scaffold/team-root.README.md +0 -51
  67. package/skills/adia-ui-kit/assets/team-scaffold/tickets-README.md +0 -208
  68. package/skills/adia-ui-kit/assets/team-scaffold/tickets-REGISTRY.md +0 -81
  69. package/skills/adia-ui-kit/assets/templates/AGENTS.template.md +0 -128
  70. package/skills/adia-ui-kit/assets/templates/CLAUDE.template.md +0 -1
  71. package/skills/adia-ui-kit/assets/templates/figma-make-guidelines.md +0 -90
  72. package/skills/adia-ui-kit/evals/adversarial-content-trust.json +0 -83
  73. package/skills/adia-ui-kit/evals/evals.json +0 -55
  74. package/skills/adia-ui-kit/evals/routing-corpus.json +0 -121
  75. package/skills/adia-ui-kit/evals/teach-routing-cases.json +0 -92
  76. package/skills/adia-ui-kit/references/capabilities.md +0 -245
  77. package/skills/adia-ui-kit/references/catalog-lookup.md +0 -186
  78. package/skills/adia-ui-kit/references/changelog-archive/CHANGELOG-v1.md +0 -8
  79. package/skills/adia-ui-kit/references/changelog-archive/CHANGELOG-v2.md +0 -3585
  80. package/skills/adia-ui-kit/references/changelog-archive/CHANGELOG-v3.md +0 -1899
  81. package/skills/adia-ui-kit/references/common-gotchas-consumer.md +0 -522
  82. package/skills/adia-ui-kit/references/component-literacy.md +0 -291
  83. package/skills/adia-ui-kit/references/composition.md +0 -245
  84. package/skills/adia-ui-kit/references/correction-loop.md +0 -462
  85. package/skills/adia-ui-kit/references/css-policy.md +0 -343
  86. package/skills/adia-ui-kit/references/decision-model.md +0 -158
  87. package/skills/adia-ui-kit/references/diagnostic-output.md +0 -57
  88. package/skills/adia-ui-kit/references/docs-catalog.md +0 -239
  89. package/skills/adia-ui-kit/references/exclusions.md +0 -225
  90. package/skills/adia-ui-kit/references/feedback-authoring.md +0 -466
  91. package/skills/adia-ui-kit/references/figma-make.md +0 -244
  92. package/skills/adia-ui-kit/references/flows-auth.md +0 -307
  93. package/skills/adia-ui-kit/references/flows-content.md +0 -206
  94. package/skills/adia-ui-kit/references/flows-data.md +0 -348
  95. package/skills/adia-ui-kit/references/flows-interaction.md +0 -181
  96. package/skills/adia-ui-kit/references/flows-shells.md +0 -336
  97. package/skills/adia-ui-kit/references/gap-detection.md +0 -266
  98. package/skills/adia-ui-kit/references/harness.md +0 -284
  99. package/skills/adia-ui-kit/references/loading-protocol.md +0 -406
  100. package/skills/adia-ui-kit/references/local-link.md +0 -198
  101. package/skills/adia-ui-kit/references/mcp.md +0 -401
  102. package/skills/adia-ui-kit/references/migration.md +0 -116
  103. package/skills/adia-ui-kit/references/mission.md +0 -194
  104. package/skills/adia-ui-kit/references/mode-routing.md +0 -298
  105. package/skills/adia-ui-kit/references/patterns-agent.md +0 -223
  106. package/skills/adia-ui-kit/references/patterns-data.md +0 -1065
  107. package/skills/adia-ui-kit/references/patterns-forms.md +0 -223
  108. package/skills/adia-ui-kit/references/patterns-layout.md +0 -326
  109. package/skills/adia-ui-kit/references/patterns-recipes.md +0 -1416
  110. package/skills/adia-ui-kit/references/patterns-shells.md +0 -1097
  111. package/skills/adia-ui-kit/references/patterns-traits.md +0 -259
  112. package/skills/adia-ui-kit/references/patterns-wiring.md +0 -339
  113. package/skills/adia-ui-kit/references/pev-rationale.md +0 -137
  114. package/skills/adia-ui-kit/references/reasoning-gate.md +0 -146
  115. package/skills/adia-ui-kit/references/reasoning-methodologies.md +0 -112
  116. package/skills/adia-ui-kit/references/recon.md +0 -192
  117. package/skills/adia-ui-kit/references/rendering-model.md +0 -431
  118. package/skills/adia-ui-kit/references/response-authoring.md +0 -398
  119. package/skills/adia-ui-kit/references/session-log-schema.md +0 -203
  120. package/skills/adia-ui-kit/references/session-log-template.md +0 -118
  121. package/skills/adia-ui-kit/references/setup.md +0 -652
  122. package/skills/adia-ui-kit/references/skill-hygiene.md +0 -135
  123. package/skills/adia-ui-kit/references/spec-to-ui-reasoning.md +0 -394
  124. package/skills/adia-ui-kit/references/state.md +0 -229
  125. package/skills/adia-ui-kit/references/teach-protocol.md +0 -421
  126. package/skills/adia-ui-kit/references/theme.md +0 -142
  127. package/skills/adia-ui-kit/references/version-check.md +0 -69
  128. package/skills/adia-ui-kit/scripts/audit-decision-trace.mjs +0 -198
  129. package/skills/adia-ui-kit/scripts/audit-kit-roster.mjs +0 -366
  130. package/skills/adia-ui-kit/scripts/changelog-archive.mjs +0 -126
  131. package/skills/adia-ui-kit/scripts/check-adia-versions.py +0 -404
  132. package/skills/adia-ui-kit/scripts/run-skill-evals.mjs +0 -358
  133. package/skills/adia-ui-kit/scripts/validate-session-log.mjs +0 -242
  134. package/skills/adia-ui-kit/skill.json +0 -102
  135. package/skills/adia-ui-llm/SKILL.md +0 -51
  136. package/skills/adia-ui-migrate/SKILL.md +0 -64
  137. package/skills/adia-ui-migration/CHANGELOG.md +0 -47
  138. package/skills/adia-ui-migration/SKILL.md +0 -381
  139. package/skills/adia-ui-migration/skill.json +0 -29
  140. package/skills/adia-ui-project/SKILL.md +0 -77
  141. package/skills/adia-ui-shells/SKILL.md +0 -62
  142. package/skills/adia-ui-spa/SKILL.md +0 -52
  143. package/skills/adia-ui-ssr/SKILL.md +0 -52
  144. package/skills/adia-ui-verify/SKILL.md +0 -44
  145. /package/skills/{adia-ui-kit → adia-compose}/assets/templates/FEEDBACK-OMISSIONS-DEFENSE.template.md +0 -0
@@ -1,223 +0,0 @@
1
- # Agent & Chat Patterns
2
-
3
- ## Chat Shell (canonical substrate composition)
4
-
5
- The canonical chat surface composes substrate primitives directly — `<chat-shell>` orchestrates LLM streaming + proxy-url wiring, with bespoke children for header / thread / composer / sidebar:
6
-
7
- ```html
8
- <chat-shell
9
- proxy-url="/api/chat"
10
- provider="anthropic"
11
- model="claude-sonnet-4-7"
12
- system="You are a helpful assistant."
13
- thinking>
14
- <chat-header>
15
- <span slot="name">Assistant</span>
16
- <chat-status slot="status">Connected</chat-status>
17
- </chat-header>
18
-
19
- <chat-thread>
20
- <chat-empty>
21
- <empty-state-ui icon="chat-circle" heading="How can I help?" description="Ask anything."></empty-state-ui>
22
- </chat-empty>
23
- </chat-thread>
24
-
25
- <chat-composer>
26
- <chat-input-ui placeholder="Message…" submit-on-enter></chat-input-ui>
27
- </chat-composer>
28
- </chat-shell>
29
- ```
30
-
31
- | Element | Purpose |
32
- |-----------|---------|
33
- | `chat-shell` | Behavior-only LLM-streaming orchestrator. Wires markdown rendering, code-block upgrades, proxy-url integration |
34
- | `chat-header` | Top chrome bar — name, status, settings |
35
- | `chat-thread` | Message-list scroll surface; reflects `[streaming]`, `[empty]` on itself |
36
- | `chat-empty` | Empty-state slot inside `<chat-thread>` |
37
- | `chat-composer` | Wraps the input primitive; flex footer alignment |
38
- | `chat-input-ui` | Primitive textarea with submit-on-enter, slash-commands, attachments |
39
- | `chat-sidebar` | Optional `slot="leading"` — conversation list, persistence |
40
- | `chat-status` | Reflected connection indicator inside `<chat-header>` |
41
-
42
- **State as attribute (cross-cut via `:has()`):**
43
-
44
- ```css
45
- chat-shell:has(chat-thread[streaming]) chat-header { /* show streaming indicator */ }
46
- chat-shell:has(chat-thread[empty]) chat-composer { /* center the empty-state */ }
47
- ```
48
-
49
- For the full canonical shape including sidebar persistence and styling, see `flows-shells.md` `## Chat Shell` and the substrate demo at `packages/web-modules/chat/chat-shell/chat-shell.examples.html`. Per ADR-0023, all children are bespoke cluster-namespaced elements; legacy data-attribute shapes (`[data-chat-messages]`, `[data-chat-input]`) were retired in v0.4.0 per ADR-0024.
50
-
51
- ## Manual Chat Layout (vanilla composition, no chat-shell)
52
-
53
- Build a chat surface from raw layout primitives — useful when you need full control over message-bubble rendering or aren't wiring an LLM stream:
54
-
55
- ```html
56
- <card-ui size="lg" style="height:600px;display:flex;flex-direction:column">
57
- <header divider>
58
- <span slot="icon"><avatar-ui text="Assistant" size="sm"></avatar-ui></span>
59
- <span slot="heading" variant="section">Assistant</span>
60
- <badge-ui slot="action" text="Online" variant="success" size="xs"></badge-ui>
61
- </header>
62
- <section style="flex:1;overflow-y:auto">
63
- <col-ui gap="4" id="messages"></col-ui>
64
- </section>
65
- <footer divider>
66
- <row-ui gap="2" style="width:100%">
67
- <input-ui raw placeholder="Type a message..." style="flex:1"></input-ui>
68
- <button-ui text="Send" variant="primary" icon="paper-plane-right" size="sm"></button-ui>
69
- </row-ui>
70
- </footer>
71
- </card-ui>
72
- ```
73
-
74
- ## Message Bubbles
75
-
76
- ```html
77
- <!-- User (right-aligned) -->
78
- <row-ui justify="end">
79
- <card-ui size="sm" variant="filled" style="max-width:70%;background:var(--a-accent-subtle)">
80
- <section><p>Can you help me build a dashboard?</p></section>
81
- </card-ui>
82
- </row-ui>
83
-
84
- <!-- Assistant (left-aligned with avatar) -->
85
- <row-ui gap="2" align="start">
86
- <avatar-ui text="AI" size="sm"></avatar-ui>
87
- <card-ui size="sm" style="max-width:70%">
88
- <section><p>I'd be happy to help!</p></section>
89
- </card-ui>
90
- </row-ui>
91
- ```
92
-
93
- ## Suggestion Chips
94
-
95
- ```html
96
- <row-ui gap="1" style="flex-wrap:wrap">
97
- <button-ui text="Stat cards dashboard" variant="outline" size="sm"></button-ui>
98
- <button-ui text="Login form" variant="outline" size="sm"></button-ui>
99
- <button-ui text="User profile card" variant="outline" size="sm"></button-ui>
100
- </row-ui>
101
- ```
102
-
103
- ## A2UI Rendering
104
-
105
- ### Static
106
- ```html
107
- <a2ui-root id="surface"></a2ui-root>
108
- ```
109
- ```js
110
- root.processAll([{
111
- type: 'updateComponents',
112
- surfaceId: 'default',
113
- components: [
114
- { id: 'root', component: 'Card', children: ['hdr', 'sec'] },
115
- { id: 'hdr', component: 'Header', children: ['title'] },
116
- { id: 'title', component: 'Text', variant: 'h3', textContent: 'Hello' },
117
- { id: 'sec', component: 'Section', children: ['col'] },
118
- { id: 'col', component: 'Column', children: ['msg'] },
119
- { id: 'msg', component: 'Text', variant: 'body', textContent: 'Generated content.' },
120
- ],
121
- }]);
122
- ```
123
-
124
- ### Streaming
125
- ```html
126
- <a2ui-root src="/api/agent" transport="sse"></a2ui-root>
127
- ```
128
- Transports: `sse`, `ws`, `jsonl`, `mcp`.
129
-
130
- ### A2UI Playground (debugging)
131
-
132
- For interactive A2UI debugging — schema explorer, surface state inspection, code view — open the playground app at `apps/genui/` (multi-route a2ui workbench) or `playgrounds/composed-flow/` (single-page demo). There is no dedicated `<a2ui-playground>` primitive; the playground experience is composed via `<a2ui-root>` + `<chat-shell>` + dev panels in those apps.
133
-
134
- ## Gen UI Pipeline
135
-
136
- ```js
137
- import { generateUI, generateUIStream } from '@adia-ai/a2ui-compose';
138
-
139
- // Instant mode (pattern matching, no LLM)
140
- const result = await generateUI({ intent: 'login form', mode: 'instant' });
141
-
142
- // Streaming mode (LLM-powered)
143
- for await (const event of generateUIStream({ intent: 'dashboard with metrics', llmAdapter })) {
144
- switch (event.type) {
145
- case 'status': // pipeline stage transition
146
- case 'clarify': // vague intent — questions for user
147
- case 'research': // brand/reference research results
148
- case 'decompose': // complex intent split into subtasks
149
- case 'text_delta': // raw LLM text chunk
150
- case 'partial': // parseable partial A2UI — render immediately
151
- case 'complete': // final result with validation, suggestions, executionId
152
- case 'error': // generation error
153
- }
154
- }
155
- ```
156
-
157
- Multi-turn: pass `executionId` from a previous `complete` event to iterate.
158
-
159
- ## Evolution Engine
160
-
161
- ```js
162
- import { savePattern, importPattern, FeedbackCollector, evaluatePromotion } from '@adia-ai/a2ui-compose';
163
-
164
- // Save a generation as a reusable pattern
165
- savePattern('login-form', { messages: result.messages, validation: result.validation, intent: 'login form', canvasHTML: canvas.getHTML() });
166
-
167
- // Import at runtime
168
- importPattern(patternJSON);
169
-
170
- // Collect user feedback
171
- const feedback = new FeedbackCollector();
172
- feedback.initFromGeneration(execId, { intent, domain, messages, validation });
173
- feedback.collectFeedback(execId, { rating: 5, intentAlignment: 5, visualQuality: 4, componentChoice: 5 });
174
-
175
- // Check if this should become a named pattern
176
- const promo = evaluatePromotion({ score: 98, feedback: { rating: 5 }, alignment: { score: 0.9 } });
177
- // -> { shouldPromote: true, confidence: 0.97, suggestedName: 'login-form' }
178
- ```
179
-
180
- ## Activity Feed
181
-
182
- ```html
183
- <card-ui>
184
- <header><span slot="heading" variant="section">Activity</span></header>
185
- <section>
186
- <col-ui gap="2">
187
- <row-ui gap="2" align="start">
188
- <avatar-ui text="Jane" size="sm"></avatar-ui>
189
- <col-ui gap="1">
190
- <small><strong>Jane</strong> created a new project</small>
191
- <small style="color:var(--a-canvas-text-subtle)">2 minutes ago</small>
192
- </col-ui>
193
- </row-ui>
194
- <divider-ui></divider-ui>
195
- <row-ui gap="2" align="start">
196
- <avatar-ui text="Alex" size="sm"></avatar-ui>
197
- <col-ui gap="1">
198
- <small><strong>Alex</strong> deployed to production</small>
199
- <small style="color:var(--a-canvas-text-subtle)">15 minutes ago</small>
200
- </col-ui>
201
- </row-ui>
202
- </col-ui>
203
- </section>
204
- </card-ui>
205
- ```
206
-
207
- ## MCP Tools (13)
208
-
209
- | Tool | Purpose |
210
- |------|---------|
211
- | `generate_ui` | Natural language -> A2UI |
212
- | `validate_schema` | 15 structural + 5 wiring checks |
213
- | `lookup_component` | Component API by type name |
214
- | `get_component_map` | Full 80-type catalog |
215
- | `search_patterns` | Keyword + semantic + remix search |
216
- | `classify_intent` | Domain classification |
217
- | `assemble_context` | Token-budgeted context assembly |
218
- | `check_anti_patterns` | HTML anti-pattern detection |
219
- | `get_traits` | Trait catalog |
220
- | `convert_html` | HTML -> A2UI transpilation |
221
- | `get_wiring_catalog` | Controller/handler/resolver catalog |
222
- | `import_pattern` | Import pattern JSON at runtime |
223
- | `submit_feedback` | Structured quality feedback |