From designpowers
Captures and recalls user's aesthetic preferences, patterns, and design instincts across projects. Use when starting new projects or making taste decisions.
npx claudepluginhub owl-listener/designpowers --plugin designpowersThis skill uses the workspace's default tool permissions.
Design memory is the system's understanding of your taste. Not a style guide — a living record of the aesthetic instincts, recurring preferences, and design convictions you've demonstrated across projects. Every project teaches the system something about how you see. This skill captures those lessons so you stop repeating yourself.
Searches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
Searches prompts.chat for AI prompt templates by keyword or category, retrieves by ID with variable handling, and improves prompts via AI. Use for discovering or enhancing prompts.
Provides process, architecture, review, hiring, and testing guidelines for engineering teams relying on AI code generation.
Design memory is the system's understanding of your taste. Not a style guide — a living record of the aesthetic instincts, recurring preferences, and design convictions you've demonstrated across projects. Every project teaches the system something about how you see. This skill captures those lessons so you stop repeating yourself.
BEFORE loading or updating design memory, check whether the Designpowers welcome sequence has been shown this session. If the user has not yet seen the welcome (the bird, the greeting, and the walkthrough offer), you MUST invoke the using-designpowers skill FIRST and complete the welcome sequence before returning here. The bird must appear before any work begins. No exceptions.
The taste profile lives at .designpowers/taste-profile.md in the user's home directory (cross-project) or in the project root (project-specific overrides). The home directory version is the canonical record. Project-specific overrides are temporary and scoped.
# Taste Profile
_Last updated: [date] from project [project name]_
_Projects contributed: [count]_
## Aesthetic Identity
### Visual Language
- **Palette tendency:** [e.g., "muted earth tones, avoids saturated primaries"]
- **Typography stance:** [e.g., "geometric sans for UI, serif for editorial — never decorative faces"]
- **Density preference:** [e.g., "generous whitespace, never cramped — willing to scroll"]
- **Shape language:** [e.g., "soft radius (8-12px), never fully rounded, never sharp"]
- **Imagery style:** [e.g., "photographic over illustrative, desaturated, real people not stock"]
### Interaction Style
- **Animation philosophy:** [e.g., "purposeful and subtle — no delight animations"]
- **Feedback approach:** [e.g., "immediate, quiet confirmation — no modals for success"]
- **Navigation preference:** [e.g., "flat structures, avoids deep nesting"]
- **Error handling tone:** [e.g., "direct and helpful, no humour in errors"]
### Content Voice
- **Tone range:** [e.g., "professional but warm — never corporate, never casual"]
- **Formality level:** [e.g., "uses contractions, avoids jargon, addresses user as 'you'"]
- **Vocabulary stance:** [e.g., "plain language advocate — reading level grade 8 or below"]
## Strong Opinions
Decisions the user has made repeatedly or emphatically. These are near-certain for future projects.
| Opinion | Strength | Evidence |
|---------|----------|----------|
| [e.g., "No hamburger menus on desktop"] | Strong (3 projects) | Overrode design-lead in Project A, Project C. Stated preference in Project B |
| [e.g., "Dark mode must be true dark, not grey"] | Strong (2 projects + explicit statement) | User said "I never want grey dark mode" in Project B |
| ... | ... | ... |
## Soft Patterns
Tendencies that have appeared but are not yet confirmed as strong opinions. These are suggestions, not constraints.
| Pattern | Occurrences | Context |
|---------|-------------|---------|
| [e.g., "Tends to prefer left-aligned over centered headings"] | 2 projects | Approved left-aligned in A, didn't comment in B |
| ... | ... | ... |
## Anti-Patterns
Things the user has explicitly rejected or corrected away from.
| Anti-Pattern | Evidence |
|--------------|----------|
| [e.g., "Gradient backgrounds"] | Rejected in Project A, replaced in Project B |
| [e.g., "Skeleton loading screens"] | "Just use a spinner" — Project C |
| ... | ... |
## Project History
| Project | Date | Key Taste Decisions | New Learnings |
|---------|------|--------------------|-|
| [name] | [date] | [2-3 key decisions] | [what we learned about taste] |
| ... | ... | ... | ... |
~/.designpowers/taste-profile.md"Based on previous projects, I know you tend toward [key patterns]. Any of these no longer true?"
Listen for taste signals throughout the workflow:
| Signal Type | Strength | Example |
|---|---|---|
| User override | Strongest | User changes colour the design-lead chose |
| Explicit statement | Strong | "I always want visible focus indicators" |
| Emphatic approval | Moderate | "Yes! That's exactly right" |
| Silent approval | Weak | User does not comment on a decision (do not record as preference until pattern repeats) |
| Correction | Strong (negative) | "No, not like that — more like..." |
When a taste signal is detected:
When a project completes (after verification-before-shipping):
design-state.md"From this project, I learned: [new learnings]. Your taste profile now has [X] strong opinions and [Y] soft patterns."
| Agent | How they use the taste profile |
|---|---|
| design-strategist | References voice and content preferences when setting principles |
| design-lead | Treats strong opinions as constraints, soft patterns as starting points |
| design-scout | Filters competitive research through taste preferences — "you usually dislike X, but this competitor does it well because..." |
| motion-designer | References animation philosophy — if the user prefers subtle, don't propose elaborate choreography |
| content-writer | References tone, formality, and vocabulary preferences |
| design-builder | References interaction style preferences for implementation decisions |
| design-critic | Evaluates whether output matches known preferences — flags drift |
| accessibility-reviewer | Cross-references any taste preferences that might conflict with accessibility |
If a taste preference conflicts with accessibility requirements, accessibility always wins. But flag it:
"Your taste profile says 'no focus indicators on clean UI elements,' but WCAG requires visible focus. I'll ensure focus indicators are present but styled to match your minimal aesthetic."
When taste memory conflicts with a current project's needs:
using-designpowers (at project start), design-state (at project end)design-state.md, handoff chain, user overrides~/.designpowers/taste-profile.mddesign-discovery, designpowers-critique, design-retrospective| Pattern | Why It Fails |
|---|---|
| Recording every decision as a taste preference | Most decisions are contextual, not taste. Only record decisions that reflect personal aesthetic judgement |
| Treating soft patterns as constraints | Soft patterns are hypotheses. They need more evidence before becoming constraints |
| Never updating the profile | Taste evolves. If a user contradicts a strong opinion, update it — don't cling to the old data |
| Overriding project needs with taste | The brief and personas come first. Taste is a tiebreaker and a starting point, not a trump card |
| Recording accessibility overrides as taste | If the user accepts an accessibility-driven change, that's compliance, not preference. Don't record "prefers visible focus indicators" just because they accepted a WCAG fix |