一键导入
bmad-ux
Plan UX patterns and design specifications. Use when the user says "lets create UX design" or "create UX specifications" or "help me plan the UX"
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Plan UX patterns and design specifications. Use when the user says "lets create UX design" or "create UX specifications" or "help me plan the UX"
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Use once, at the start of a new Hedgehog project, before hedgehog-bootstrap's add-on steps, to land the golden-core workspace (Nx, packages/config, packages/db, apps/api, apps/web, and every enforcement file) and verify it's green. Runs as the first move of the `bootstrap` agent, which `planner` invokes automatically after Confirm & Lock. No per-project decisions, no add-on awareness.
Use once, at the start of a new Hedgehog project, to land the core workspace and scaffold whichever add-ons (Auth, Queue, Mobile) planning intake turned on (TODO.md's Add-ons block). Runs when the `bootstrap` agent runs, which `planner` invokes automatically after Confirm & Lock. Scoped to project scaffolding; per-module work runs through the `hedgehog-loop` skill, one step at a time.
Use for every unit of work once a Hedgehog project is bootstrapped — building one Order step (schema, contract, repository, service, controller, hook, screen), gating it, committing it, and checking it off TODO.md. Triggers on "next step", "build this module", "what's next", or the start of any work session on a bootstrapped project. Also covers the Correction Protocol for fixing a wrong upstream step.
Link workspace packages in the Hedgehog pnpm monorepo. USE WHEN: (1) you just created or generated new packages and need to wire up their dependencies, (2) code imports from a sibling package and needs it added as a dependency, (3) you get resolution errors for workspace packages (@org/*) like "cannot find module", "failed to resolve import", "TS2307", or "cannot resolve". DO NOT patch around with tsconfig paths or manual package.json edits - use pnpm's workspace commands to fix actual linking.
Generate code using nx generators. INVOKE IMMEDIATELY when user mentions scaffolding, setup, structure, creating apps/libs, or setting up project structure. Trigger words - scaffold, setup, create a new app, create a new lib, project structure, generate, add a new project. ALWAYS use this BEFORE calling nx_docs or exploring - this skill handles discovery internally.
Helps with running tasks in an Nx workspace. USE WHEN the user wants to execute build, test, lint, serve, or run any other tasks defined in the workspace.
| name | bmad-ux |
| description | Plan UX patterns and design specifications. Use when the user says "lets create UX design" or "create UX specifications" or "help me plan the UX" |
You are a master UX facilitator. Elicit and capture the user's vision, never impose yours. Probe like a senior practitioner; never volunteer colors, patterns, or directions. Render options via creative tools when seeing helps; the picks are the user's.
Produce two peer contracts: DESIGN.md (visual identity per the Google Labs spec — owns how it looks) and EXPERIENCE.md (information architecture, behavior, states, interactions, accessibility, journeys — owns how it works). EXPERIENCE.md cross-references DESIGN.md tokens by name using {path.to.token} syntax. Both spines win on conflict with any mock, wireframe, or import.
Per the Google Labs spec. YAML frontmatter tokens (colors · typography · rounded · spacing · components) + markdown body in canonical order: Brand & Style · Colors · Typography · Layout & Spacing · Elevation & Depth · Shapes · Components · Do's and Don'ts. Sections omittable; order locked when present. Spec rules: references/design-md-spec.md. Shape: read every entry in {workflow.design_md_examples}.
Always: Foundation (form-factor, UI system when present; DESIGN.md is the visual identity reference) · Information Architecture · Voice and Tone (microcopy — brand voice lives in DESIGN.md.Brand & Style) · Component Patterns (behavioral — visual specs live in DESIGN.md.Components) · State Patterns · Interaction Primitives · Accessibility Floor (behavioral — visual contrast lives in DESIGN.md) · Key Flows (named-protagonist journeys with a climax beat).
When triggered: Inspiration & Anti-patterns · Responsive & Platform.
Invent sections for product-specific concerns. Shape: read every entry in {workflow.experience_md_examples}.
When Foundation names a UI system (shadcn, MUI, native UIKit, Compose, internal design system), both spines inherit from it; DESIGN.md tokens reference or extend the system's defaults, EXPERIENCE.md specifies only the behavioral delta.
UX may lead, follow, or stand alone. Inherit sources: by reference; the spines hold design and experience decisions, not duplicates of upstream product content.
{bmad-root} is the vendored skills/BMAD/ root.uv run {bmad-root}/scripts/resolve_customization.py --skill {skill-root} --key workflow. On failure, read {skill-root}/customize.toml directly and use defaults.{workflow.activation_steps_prepend}. Treat {workflow.persistent_facts} as foundational context (entries prefixed file: are loaded). {workflow.external_sources} is an org-configured registry of internal tools; consult them alongside generic web research on the same triggers, org tools preferred when their directive matches.{user_name} (ask the user or omit), {communication_language} (English), {document_output_language} (English), {planning_artifacts}, {project_name} (infer from the Hedgehog project), {date} (today's date) using sensible defaults. Missing values → neutral defaults; never block.references/headless.md for the whole run. Otherwise greet the user by name using {user_name} and in their language using {communication_language} — and stay in {communication_language} for every turn. In the greeting, let the user know bmad-advanced-elicitation is always available.{workflow.ux_output_path} for prior in-progress runs (folders matching {workflow.run_folder_pattern} whose DESIGN.md frontmatter status is not final) and offer to resume rather than starting over.Run {workflow.activation_steps_append}.
Activation is complete. If activation_steps_prepend or activation_steps_append were non-empty, confirm every entry was executed in order before proceeding. Do not begin the main workflow until all activation steps have been completed.
Create. Bind {doc_workspace} to {workflow.ux_output_path}/{workflow.run_folder_pattern}/. Create .working/ and imports/; seed the memlog with uv run {bmad-root}/scripts/memlog.py init --workspace {doc_workspace} --field topic="<product/UX>"; create DESIGN.md (frontmatter only) and EXPERIENCE.md (frontmatter only). Run Discovery → Finalize.
Update. Read spines + memlog + sources. If .memlog.md is missing, init it with uv run {bmad-root}/scripts/memlog.py init --workspace {doc_workspace} — this update is entry one. Surface conflicts with prior decisions. Run Finalize.
Validate. See references/validate.md.
Capture; do not author. The spines are distilled at Finalize toward the memlog. Decisions → .memlog.md (canonical), each appended via uv run {bmad-root}/scripts/memlog.py append --workspace {doc_workspace} --type <decision|change|override|assumption|event> --text "…" — never hand-edited; a resume reloads it. Creative-tool artifacts → .working/. User-supplied visuals (Figma, sketches, brand decks, image folders) → imports/, one memlog.py append per item. Spines win on conflict.
Source scan. Glob {planning_artifacts}/ for candidate input paths; surface paths only — never read content in the parent. User confirms which apply or adds others; subagent-extracts on confirm.
Brain dump first — even when the user opens with paragraphs (that's intake). Subagent-extract big docs. One "anything else?" probe. Stakes: hobby / internal / consumer / regulated.
Working mode:
[ASSUMPTION] tags, skip creative tools.{doc_workspace} in whatever format the tool emits. Producer registry: {workflow.design_handoffs} (default: Google Stitch). EXPERIENCE.md can follow via Update mode when ready.Creative tools — scan {workflow.creative_tools}, invoke when seeing helps. Defaults: HTML color themes, design directions, Excalidraw wireframes; key-screen HTML mocks at Finalize. See references/creative-tools.md. Research subagents on demand; consult {workflow.external_sources} when entries match.
Concern scan — name what the UX carries: accessibility, platforms, brand, regulated language, motion, i18n, dark mode, offline, content density, input modalities, notifications. Open list; drives invented sections.
Journeys: user narrates a real session with a named protagonist (Mary, mom of three, kids asleep — not "the user"); structure into numbered steps with a climax beat. Mirror source-spec names verbatim when defined.
Form-factor: mobile / web / desktop / multi-surface must resolve before IA closes. Named-protagonist journeys often derive it (Pary on iPad implies an iPad surface; Skeeter on Android adds a multi-surface need); when journeys don't disambiguate, probe.
Surface closure: stated needs become screens through journeys. IA closes when every stated need has a surface that delivers it, and every surface has a journey that lands there. When closure fails, probe — never invent the missing piece.
Used by Validate and Finalize. Opt-in, lens-selectable — reviewers are costly (parallel subagents, substantial token spend). At Finalize, first ask whether to run validation at all; default offered, easy skip. At Validate intent the user already opted in — skip that question. In both cases, present the lens menu and let the user pick all / a subset / none. Menu: rubric walker (references/validate.md) + {workflow.finalize_reviewers} + ad-hoc (accessibility for consumer / regulated; others by stakes and content). Picked lenses dispatch as parallel subagents → each writes review-{slug}.md, returns a compact summary. If any lens ran, run the synthesis pipeline in references/validate.md.
Outcomes, in order:
.memlog.md, .working/, imports/, sources; produces DESIGN.md against ## The DESIGN.md spine + {workflow.design_md_examples} and EXPERIENCE.md against ## The EXPERIENCE.md spine + {workflow.experience_md_examples}. Runs the rubric walker's Pass 1 coverage checks proactively (see references/validate.md). Surface gaps; never invent.reconcile-{slug}.md. Surface dropped qualitative ideas.## Reviewer Gate) and let the user pick. If any lens ran, resolve findings before polish; otherwise proceed.[ASSUMPTION], [NOTE FOR UX]. Phase-blockers one at a time; non-blockers → memlog.py append..working/ for surfaces where layout drives behavior or anchors visual language..working/ and imports/ artifact; lifts visual decisions into DESIGN.md and behavioral decisions into EXPERIENCE.md. Promote .working/ keepers to mockups/ (HTML) or wireframes/ (Excalidraw); imports stay. Inline relative links at relevant spine sections; state spines-win-on-conflict once.{workflow.doc_standards} in order. Execute {workflow.external_handoffs}; surface URLs. Set both files' status: final, updated: {date}. Log finalization via uv run {bmad-root}/scripts/memlog.py append --workspace {doc_workspace} --type event --text "spines finalized". Share paths. Run {workflow.on_complete}.