agentsclimarketplace

Ui screen grammar

Skill lubochka/xiigen-mvp-engine/.agents/skills/ui-screen-grammar

Self-building AI code generation engine that generates application flows instead of implementing them. AGPL-3.0.

Install
npx -y skills add lubochka/xiigen-mvp-engine --skill ui-screen-grammar

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • 13 days oldThe repository was created 13 days ago. New is not bad, but a brand new repository carrying a familiar-sounding name is the shape a typosquat arrives in, and there has been no time for anyone else to find a problem with it.
  • 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

The standalone catalogue of the seven screen grammars (G1 PROGRESS_STRIP, G2 VERDICT_GRID, G3 CARD_LIST, G4 TOPOLOGY_CANVAS, G5 KIOSK, G6 DASHBOARD, G7 SETTINGS_TABS) with a Pre-Code Declaration gate and a Grammar Violation Signals table, mapped to React page templates. One page = one grammar, declared in writing before any JSX.

SKILL.md

6.6 KB, as published. Nobody here has run it

SK-561 UI Screen Grammar — Declare one of seven before any JSX (React)

Before a control is written, a page must commit to one screen grammar and record why not the others. This skill is the standalone catalogue of the seven grammars plus the Pre-Code Declaration gate and the Violation Signals table.

Why this skill exists (the gap it closes)

The seven grammar types already appear inside SK-539 §0.3 as a lookup table, and SK-550 uses the word "grammar" inside its examination cells. But mvp had no separate skill that (a) catalogues all seven as React page templates, (b) forces a Pre-Code Declaration ("why NOT G2?") before JSX, and (c) lists Grammar Violation Signals. Without that, grammar is chosen implicitly and only caught late at FC-18 UX-30. SK-561 makes the choice explicit and early. It references SK-539 for the per-flow grammar assignments and FC-18 UX-30 for enforcement — it does not duplicate the role/route checks.

When to Invoke

  • Before writing any JSX for a new or rebuilt client/src/pages/*Page.tsx.
  • At the design gate (SK-539 Section 0) — declare grammar here, then run the four role questions.
  • When UX-30 fails at FC-18 — the page rendered a generic CRUD table instead of an implemented grammar; come back here, declare, and rebuild.

Section 1 — The Seven Grammars (React templates)

One page implements exactly one grammar. The "User's question" is the test: the screen exists to answer that one question.

TypeUser's questionReact shape (mvp)
G1 PROGRESS_STRIP"Where is this in its lifecycle?"Horizontal/vertical step strip; per-step status chip; current step highlighted; progress count N of M.
G2 VERDICT_GRID"What did each evaluator decide, and why?"Item × reviewer grid; one verdict cell per (item, reviewer); reason on cell; consensus panel.
G3 CARD_LIST"Which items need my attention, in what state?".map() of domain cards with state badge; filter/sort header; one lead/hero card or section, never a uniform wall (see SK-560 BAN-3).
G4 TOPOLOGY_CANVAS"How do the parts connect?"Nodes + edges via reactflow; phase grouping; side detail panel; human-readable node labels. Reference: topology/graph screens.
G5 KIOSK"I have one task, one decision."Single dominant CTA/decision; minimal chrome; one job per screen (RSVP, check-in, single-form submit).
G6 DASHBOARD"What are my key metrics right now?"Metric tiles + chart(s) + period selector; one dominant chart as the anchor.
G7 SETTINGS_TABS"Which setting do I need to change?"Tabbed form sections; labelled fields; save confirmation.

Authoritative per-flow grammar assignments live in SK-539 §0.3 and planning--business-flows-registry.md. The declared grammar must match those where they exist, and match .impeccable.md and the examination record.


Section 2 — Pre-Code Declaration gate (mandatory)

Before JSX, write this block into the session record / .impeccable.md:

SCREEN GRAMMAR DECLARATION — [page / flow-slug]
  Chosen grammar:        [G1 | G2 | G3 | G4 | G5 | G6 | G7]
  User's one question:   "[the question this screen answers]"
  Why NOT the nearest alternative:
                         "Not G2 because ___" (name the runner-up and reject it)
  Dominant anchor:       "[the one element that wins the eye]"  (ties to SK-560)
  Source of truth:       [SK-539 §0.3 row | examination record | business-flows-registry]
  Matches .impeccable.md:[yes | n/a — produced here]

A page whose declaration is missing, or whose chosen grammar contradicts the registry without a documented rationale, is not ready to implement. A documented deviation from the pre-declared grammar must be recorded in the session record and the FC-18 Audit Trail.


Section 3 — Grammar Violation Signals

These are the smells that a page picked the wrong grammar or no grammar. Each is a prompt to stop and re-declare.

SignalWhat it usually means
Generic Name / Status / Notes / Actions table on a TENANT_CONSUMER/PUBLIC pageNo grammar declared — scaffolding left exposed (FC-18 UX-30 BLOCK). Likely should be G2/G3/G4.
Multi-step lifecycle squeezed into a single flat listG1 PROGRESS_STRIP needed; a CARD_LIST hides the lifecycle.
Several reviewers/verdicts flattened into one status columnG2 VERDICT_GRID needed; the per-reviewer reasoning is lost.
A graph of connected nodes rendered as a table of rowsG4 TOPOLOGY_CANVAS needed; relationships are invisible in a table.
Many competing CTAs on a one-task screenG5 KIOSK violated; reduce to one decision.
Metrics shown as a list of numbers with no chart/periodG6 DASHBOARD needed; no anchor metric.
Settings spread across many pages instead of tabsG7 SETTINGS_TABS needed.
"Everything is the same size" — no dominant anchorGrammar present but BAN-3 / anchor failure (see SK-560 §3).

Section 4 — Integration

  • SK-539 / FC-18 UX-30 enforces that a declared grammar is actually implemented (not a CRUD table). SK-561 is the declaration + catalogue; FC-18 is the enforcement.
  • SK-560 owns visual craft (the dominant-anchor and uniform-grid BANs).
  • SK-550 (visual-examination-round) examines screens per cell; the declared grammar is an input to each cell's expected layout.
  • G4 dependency: reactflow for nodes/edges; reuse existing topology components rather than re-rolling a canvas.

Section 5 — What this skill does NOT do

  • It does not assign role tiers, route guards, or visibility scopes (SK-539 §1).
  • It does not score visual craft (SK-560).
  • It is not a trainable unit; grammar selection is a human/architect declaration, not a model output. Any learned grammar-suggestion model would live in llm_mvp_core, not here.

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.