generative-ui-spec

Installation
SKILL.md

/generative-ui-spec

⚠️ EXPERIMENTAL. This skill is experimental. Generative UI runtime last validated 2026-04-11 on CopilotKit Presentational (useCopilotAction with typed render and Zod parameter schemas). Verify current runtime behavior before relying on any output produced here. A2UI JSONL streaming is treated as principles-only — mid-stream failure semantics, out-of-order delta handling, and event return channels are not converged across implementations as of the validation date.


Purpose and Scope

Generative UI in Q1 2026 splits cleanly into two worlds and this skill treats them differently. That is the whole point.

  1. CopilotKit Presentational — stable enough for implementation today, scoped to card-sized, non-streaming components. The LLM emits a tool call, the SDK deserializes the arguments, Zod validates them against the schema, and a typed React component renders via a render function. This skill produces a full implementation-mode spec: component vocabulary, Zod schema draft, render contract (default / loading / error / empty / variants), event return spec, type-safety acknowledgment, test plan. A Frontend Developer can build from it without asking the PM follow-up questions.

  2. A2UI JSONL streaming (and streaming generative UI more broadly) — pattern works for long-form text but is not stable at card granularity as of Q1 2026. Mid-stream failure handling, out-of-order delta semantics, event return channels, and rollback on failed-close are per-implementation. A PM spec produced for A2UI today would encode expectations the runtime cannot reliably meet, which is the worst failure mode: a spec that reads confident but produces unpredictable behavior. This skill therefore produces principles-only output for A2UI: component vocabulary, prop schema conventions, event contracts, migration path — NO runtime code, NO pretend-it's-implementation framing, NO claims of predictable behavior.

The skill picks mode from the --runtime flag or auto-detects from the intent input. If intent contains streaming, multi-step flow, or full-screen requirements, implementation mode is auto-rejected and the skill falls back to principles mode with a warning that names the specific triggering criterion.

This is load-bearing honesty, not hedging. The spike at the current runtime-maturity evidence review established that writing an implementation spec for an unstable runtime is worse than writing a principles spec for a mature one. An implementation spec carries an implicit promise: "build this and it will work predictably." A principles spec carries a different promise: "here is the vocabulary and the event model; when a runtime supports it reliably, here is the migration path." Principles mode is not a consolation prize. It is what the current state of the ecosystem supports for anything beyond a narrow CopilotKit slice, and it is the honest thing to hand to the Frontend Developer when the runtime is not ready.


Installs
1
GitHub Stars
1
First Seen
7 days ago