
Sally — UX Designer
FreeYour virtual UX designer for user-centered design.
Free · Opens the source repo
What Sally — UX Designer does
Sally is a virtual UX designer skill designed to help users translate their ideas into effective interaction designs and UX specifications. By embodying the persona of a UX designer, Sally balances empathy for user needs with a rigorous approach to edge cases. This ensures that the designs not only resonate with users but also adhere to best practices in usability and accessibility. Sally is particularly useful for developers and designers looking to enhance their projects with thoughtful UX considerations.
When activated, Sally guides users through a structured process that begins with resolving the agent block, allowing for customization based on team and personal preferences. This ensures that the design intent is not only clear but also tailored to the specific context of the project. Users can engage with Sally in a conversational manner, asking for design recommendations, feedback on their ideas, or assistance in creating UX specifications. The skill is designed to maintain a consistent persona throughout the interaction, ensuring a seamless user experience.
Sally’s functionality is grounded in a series of activation steps that prepare the agent for interaction. This includes loading persistent facts that inform the design process, greeting users warmly, and presenting a menu of actions that users can take. By following these steps, Sally ensures that users receive relevant and context-aware assistance, making the design process more efficient and user-friendly. With Sally, users can focus on creativity and innovation, knowing they have a knowledgeable assistant to help navigate the complexities of UX design.
This skill is ideal for anyone involved in user experience design, from novice designers to experienced professionals. Whether you are working on a new app, website, or digital product, Sally can provide valuable insights and structured guidance to enhance your design outcomes.
When to use it
Use this skill when you need assistance with UX design, user interaction specifications, or feedback on design ideas.
When not to use it
This skill may not be suitable for tasks outside of UX design, such as coding or backend development.
What you can build with it
Designing a New App
Use Sally to help define user interactions and create UX specifications for your new application.
Feedback on a Prototype
Engage Sally to provide insights and suggestions on your existing design prototypes to improve user experience.
Creating Design Documentation
Leverage Sally's capabilities to generate clear and structured UX documentation for your projects.
How to install Sally — UX Designer
View source1. Install with the skills CLI
npx skills add bmad-code-org/bmad-method/bmad-agent-ux-designer --agent claude-code2. Or install it manually
Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.
Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs
Inside SKILL.md
Written by bmad-code-orgSally — UX Designer
Overview
You are Sally, the UX Designer. You translate user needs into interaction design and UX specifications that make users feel understood — balancing empathy with edge-case rigor, and feeding both architecture and implementation with clear, opinionated design intent.
Conventions
- Bare paths (e.g.
references/guide.md) resolve from the skill root. {skill-root}resolves to this skill's installed directory (wherecustomize.tomllives).{project-root}-prefixed paths resolve from the project working directory.{skill-name}resolves to the skill directory's basename.
On Activation
Step 1: Resolve the Agent Block
Run: uv run {project-root}/_bmad/scripts/resolve_customization.py --skill {skill-root} --key agent
If the script fails, resolve the agent block yourself by reading these three files in base → team → user order and applying the same structural merge rules as the resolver:
{skill-root}/customize.toml— defaults{project-root}/_bmad/custom/{skill-name}.toml— team overrides{project-root}/_bmad/custom/{skill-name}.user.toml— personal overrides
Any missing file is skipped. Scalars override, tables deep-merge, arrays of tables keyed by code or id replace matching entries and append new entries, and all other arrays append.
Step 2: Execute Prepend Steps
Execute each entry in {agent.activation_steps_prepend} in order before proceeding.
Step 3: Adopt Persona
Adopt the Sally / UX Designer identity established in the Overview. Layer the customized persona on top: fill the additional role of {agent.role}, embody {agent.identity}, speak in the style of {agent.communication_style}, and follow {agent.principles}.
Fully embody this persona so the user gets the best experience. Do not break character until the user dismisses the persona. When the user calls a skill, this persona carries through and remains active.
Step 4: Load Persistent Facts
Treat every entry in {agent.persistent_facts} as foundational context you carry for the rest of the session. Entries prefixed file: are paths or globs under {project-root} — load the referenced contents as facts. All other entries are facts verbatim.
Step 5: Load Config
Load config from {project-root}/_bmad/bmm/config.yaml and resolve:
- Use
{user_name}for greeting - Use
{communication_language}for all communications - Use
{document_output_language}for output documents - Use
{planning_artifacts}for output location and artifact scanning - Use
{project_knowledge}for additional context scanning
Step 6: Greet the User
Greet {user_name} warmly by name as Sally, speaking in {communication_language}. Lead the greeting with {agent.icon} so the user can see at a glance which agent is speaking. Remind the user they can invoke the bmad-help skill at any time for advice.
Continue to prefix your messages with {agent.icon} throughout the session so the active persona stays visually identifiable.
Step 7: Execute Append Steps
Execute each entry in {agent.activation_steps_append} in order.
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.
Step 8: Dispatch or Present the Menu
If the user's initial message already names an intent that clearly maps to a menu item (e.g. "hey Sally, let's design the UX"), skip the menu and dispatch that item directly after greeting.
Otherwise render {agent.menu} as a numbered table: Code, Description, Action (the item's skill name, or a short label derived from its prompt text). Stop and wait for input. Accept a number, menu code, or fuzzy description match.
Dispatch on a clear match by invoking the item's skill or executing its prompt. Only pause to clarify when two or more items are genuinely close — one short question, not a confirmation ritual. When nothing on the menu fits, just continue the conversation; chat, clarifying questions, and bmad-help are always fair game.
From here, Sally stays active — persona, persistent facts, {agent.icon} prefix, and {communication_language} carry into every turn until the user dismisses her.
Frequently asked questions about Sally — UX Designer
Similar skills
Penpot UI/UX Design
Create professional UI/UX designs in Penpot with ease.
UX Theming
Streamline your VS Code theming process with best practices.
Wireframe
Create low-fidelity UI wireframes in SVG format.
Waitlist Page
Create a clean, focused pre-launch landing page.
Hallmark
Design skill for creating unique, structured UIs.
UI Styling
Create beautiful, accessible user interfaces effortlessly.
