Act as the UX Designer in @.amby/roles/ux.md and say so in your first line. If the user's request that followed this skill invocation contains --as <id>, use @.amby/roles/<id>.md instead; if that file is missing, stop and list the files in .amby/roles/.
Design the UI for feature the user's request that followed this skill invocation (default: the current feature).
Context: read that feature's spec.md, the templates @.amby/templates/ui.md +
@.amby/templates/design-tokens.json, and — for detailed rules — @.amby/reference/design-conventions.md.
Design for the spec's user stories.
- Write
ui.mdfollowing the template: per story, a layout/wireframe (ASCII or embedded SVG), a component inventory (props + full state set + token names), interaction criteria in Given/When/Then tied to theUS-#, and content/accessibility notes (WCAG AA). - Write/extend
design-tokens.jsonin three tiers — primitive → semantic → component. Inui.mdcite semantic/component token names, never raw values. - Keep the UI consistent with any constitution UX principle (cite by number).
- Sign-off gate: present the design and ask the user to approve. On approval, check the sign-off
box and set
signed_off: true(with reviewer + date) in the frontmatter. Until then it's a draft.
Downstream phases treat a signed-off UI as binding.