picasso-skill 1.3.0 → 1.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,10 +1,319 @@
1
- # Picasso
1
+ <p align="center">
2
+ <strong>PICASSO</strong><br/>
3
+ The most comprehensive AI design skill ever built.
4
+ </p>
2
5
 
3
- The ultimate AI design skill + agent for producing distinctive, production-grade frontend interfaces.
6
+ <p align="center">
7
+ 20 reference domains &bull; 35+ commands &bull; 4,700+ lines of actionable design intelligence<br/>
8
+ Every interface looks like a senior design engineer spent days on it.
9
+ </p>
4
10
 
5
- Picasso is two things:
6
- 1. **A skill** (knowledge base) -- 13 reference files covering every dimension of frontend design
7
- 2. **An agent** (autonomous design engineer) -- proactively audits your frontend code, catches AI-slop aesthetics, validates accessibility, enforces design systems, and auto-fixes issues
11
+ <p align="center">
12
+ <a href="#install">Install</a> &bull;
13
+ <a href="#what-makes-picasso-different">Why Picasso</a> &bull;
14
+ <a href="#the-design-interview">Interview</a> &bull;
15
+ <a href="#creative-commands">Creative Commands</a> &bull;
16
+ <a href="#benchmark">Benchmarks</a> &bull;
17
+ <a href="#commands">All Commands</a> &bull;
18
+ <a href="#references">References</a> &bull;
19
+ <a href="#sources">Sources</a>
20
+ </p>
21
+
22
+ ---
23
+
24
+ ## The Problem
25
+
26
+ Every AI coding tool produces the same output: Inter font, purple gradients on white, centered layouts, uniform card grids, glassmorphism everywhere. It's instantly recognizable as "AI made this." Users can feel it. Clients can see it. It looks generic because it is generic.
27
+
28
+ Existing design skills are shallow. They tell you to "use good typography" without specifying what that means. They say "be accessible" without giving you the ARIA patterns. They cover 3-4 design domains and call it done.
29
+
30
+ **Picasso is different.** It is the largest, most detailed, and most opinionated design skill available for any AI coding agent. It doesn't just tell you what to do -- it tells you exactly how, with specific values, code examples, and anti-patterns for every decision.
31
+
32
+ ---
33
+
34
+ ## What Makes Picasso Different
35
+
36
+ ### Depth That No Other Skill Matches
37
+
38
+ Picasso covers **20 specialized reference domains**, each with concrete rules, specific values, and ready-to-use code. This isn't a collection of vague principles -- it's an engineering specification for beautiful interfaces.
39
+
40
+ | Domain | What You Get |
41
+ |---|---|
42
+ | **Typography** | Modular type scales, 15+ font alternatives to Inter/Roboto, OpenType feature activation, vertical rhythm system, `max-width: 65ch`, font loading strategies |
43
+ | **Color & Contrast** | OKLCH-based palette construction, tinted neutrals (never pure gray), 60-30-10 rule, dark mode inversion rules, "alpha is a design smell" |
44
+ | **Spatial Design** | 4px base spacing scale, Gestalt proximity ratios (2:1 minimum), Squint Test, asymmetric grid patterns, "cards are not required" |
45
+ | **Motion & Animation** | Duration rule (100/200/300/500ms), only animate transform+opacity, exit = 75% of entrance, grid-template-rows for height, stagger caps |
46
+ | **Interaction Design** | All 8 interactive states (default/hover/focus/active/disabled/loading/error/success), dropdown positioning (#1 bug fix), Popover API, undo > confirmation |
47
+ | **Responsive Design** | Input method detection (`@media pointer/hover`), safe areas, container queries, content-driven breakpoints, real device testing |
48
+ | **Sensory Design** | soundcn (700+ CC0 sounds), web-haptics (4 presets + custom), multi-sensory integration patterns |
49
+ | **React/Next.js** | Server Components by default, barrel import avoidance, RSC serialization minimization, React.cache() deduplication |
50
+ | **Anti-Patterns** | 50+ explicit "never do this" rules across typography, color, layout, motion, interaction, code, and content |
51
+ | **Design Systems** | VoltAgent/Google Stitch 9-section DESIGN.md format, 4 pre-built themes, two-layer token architecture |
52
+ | **Generative Art** | Philosophy-first creative process, seeded randomness, p5.js patterns, parameter-driven exploration |
53
+ | **Component Patterns** | 40+ standard component names from 90+ real design systems, state matrix, compound component patterns, sizing conventions |
54
+ | **UX Psychology** | Gestalt principles with CSS examples, Fitts's/Hick's/Miller's/Jakob's Law with specific numbers, F/Z-pattern scanning, Peak-End Rule |
55
+ | **Data Visualization** | Chart selection decision matrix (13 types), dashboard layout patterns, Okabe-Ito colorblind-safe palettes, Tufte data-ink ratio, React library comparison |
56
+ | **Modern CSS** | CSS nesting, :has(), @layer, anchor positioning, @scope, @property, color-mix(), subgrid, Popover API, scroll-driven animations, View Transitions |
57
+ | **Web Performance** | Core Web Vitals targets (LCP < 2.5s, CLS < 0.1, INP < 200ms), image format matrix (AVIF/WebP), font-display strategies, critical CSS, Tailwind v4 |
58
+ | **Conversion Design** | Hero section variations, CTA design with conversion data, pricing page structure, friction reduction metrics, onboarding frameworks, notification hierarchy |
59
+ | **Accessibility** | 12 WAI-ARIA widget patterns with exact roles/states/keyboard, WCAG 2.2 new criteria, focus management for SPAs, accessible data tables, drag-and-drop alternatives |
60
+ | **UX Writing** | Error message formula (what + why + fix), button label rules (verb + object), translation expansion percentages, terminology consistency |
61
+ | **Style Presets** | 22 curated visual presets with hex values, font pairings, border-radius, and signature UI elements, mapped to moods |
62
+ | **Performance Optimization** | Vercel's 45 React/Next.js rules across 7 priority tiers with BAD/GOOD code examples |
63
+
64
+ ### The AI-Slop Firewall
65
+
66
+ Picasso's anti-pattern system is the most aggressive in any design skill. It doesn't just suggest good practices -- it explicitly bans the fingerprints of AI-generated interfaces:
67
+
68
+ **Banned typography:** Inter, Roboto, Arial, Open Sans, Space Grotesk, monospace-as-lazy-technical-vibe, large icons with rounded corners above every heading.
69
+
70
+ **Banned color:** Pure black (#000), pure white (#fff), pure gray, gray text on colored backgrounds, cyan-on-dark, purple-to-blue gradients, neon accents on dark, gradient text for "impact."
71
+
72
+ **Banned layout:** Cards nested in cards, identical card grids (icon + heading + text repeated), hero metric layout template, centered everything, same spacing everywhere, glassmorphism everywhere.
73
+
74
+ **Banned motion:** bounce/elastic easing, `transition: all`, animating width/height/padding/margin, no reduced-motion support.
75
+
76
+ **Banned interaction:** Placeholder-only labels, `outline: none` without replacement, hover-only interactions, every button styled as primary.
77
+
78
+ ### Integrated Tool Ecosystem
79
+
80
+ Picasso doesn't just describe tools -- it specifies exactly how to use them with installation commands, import paths, and API examples:
81
+
82
+ | Tool | What It Does | Integration |
83
+ |---|---|---|
84
+ | **torph** | Text morphing animation | `import { TextMorph } from 'torph/react'` with spring easing |
85
+ | **soundcn** | 700+ UI sounds | `npx shadcn add @soundcn/click-soft`, base64 inline, zero deps |
86
+ | **web-haptics** | Mobile haptic feedback | 4 presets (success/nudge/error/buzz), desktop debug mode |
87
+ | **facehash** | Deterministic avatar faces | ~3KB, SVG, 3D depth, Avatar/AvatarFallback pattern |
88
+ | **better-icons** | 200K+ icons from 150+ sets | MCP server for AI agents, CLI search, project sync |
89
+ | **Geist Pixel** | 5 pixel font variants | Square/Grid/Circle/Triangle/Line, Next.js native |
90
+ | **Lucide React** | Default icon library | Direct imports (avoid barrel files) |
91
+
92
+ ---
93
+
94
+ ## The Design Interview
95
+
96
+ When you first use Picasso on a project, it doesn't just start generating. It asks.
97
+
98
+ ```
99
+ Picasso: What are we building? New project, redesign, polish, or fixing specific issues?
100
+ You: New SaaS dashboard for a fintech startup
101
+
102
+ Picasso: Who is this for?
103
+ You: Financial analysts, 30-50 age range, use Bloomberg terminals all day
104
+
105
+ Picasso: What's the vibe? Any sites you love the look of?
106
+ You: Dark, dense, like Linear meets Bloomberg. Here's a reference: linear.app
107
+
108
+ Picasso: Rate these 1-5:
109
+ Animations? Mobile? Accessibility? Dark mode? Performance?
110
+ You: Animations 3, Mobile 2, A11y 5, Dark mode YES, Perf 5
111
+
112
+ Picasso: Got it. Here's what I'm building:
113
+ → Dark-tech aesthetic inspired by Linear
114
+ → Dense layout (VISUAL_DENSITY: 8), subtle motion (MOTION_INTENSITY: 3)
115
+ → WCAG AAA accessibility, dark-first, performance-critical
116
+ → Generating .picasso.md and DESIGN.md now...
117
+ Sound good?
118
+ ```
119
+
120
+ The interview generates a `.picasso.md` config that persists your preferences across every future session. Run `/picasso` anytime to redo it.
121
+
122
+ ---
123
+
124
+ ## Creative Commands
125
+
126
+ These are the features that make Picasso unlike any other design tool.
127
+
128
+ ### `/roast` -- The Brutally Honest Critique
129
+
130
+ Forget polite feedback. `/roast` tears your design apart with designer-Twitter energy.
131
+
132
+ ```
133
+ 🔥🔥🔥🔥 ROAST SCORE: 4/5
134
+
135
+ This hero section looks like every v0 output from 2024. The purple gradient
136
+ physically hurts my eyes. The three identical cards are a cry for help. And
137
+ the "Build the future of work" headline? It's 2026 -- we've moved on.
138
+
139
+ The Inter font is doing NOTHING for you. It's the design equivalent of
140
+ wearing khakis to a nightclub. And transition: all 0.3s? That's animating
141
+ your box-shadow, your border-color, and your will to live.
142
+
143
+ Here's how to fix it:
144
+ 1. Kill the gradient. Use oklch(0.15 0.02 250) as your background.
145
+ 2. Replace Inter with Satoshi for display, DM Sans for body.
146
+ 3. Break the three-card grid. Make the first card 2x width.
147
+ ...
148
+
149
+ What IS working: Your spacing scale is consistent (4px base) and the
150
+ semantic HTML structure is solid. Build on that.
151
+ ```
152
+
153
+ ### `/score` -- Quantified Design Quality
154
+
155
+ A single 0-100 score, broken down by category. Track it over time.
156
+
157
+ ```
158
+ ## Picasso Design Score: 73/100
159
+
160
+ Typography: ████████████░░░ 12/15
161
+ Color: ████████████░░░ 11/15
162
+ Spacing: ████████░░ 8/10
163
+ Accessibility: ████████████████ 16/20
164
+ Motion: ██████░░░░ 6/10
165
+ Responsive: ████████░░ 8/10
166
+ Performance: ██████░░░░ 6/10
167
+ Anti-Slop: ██████░░░░ 6/10
168
+
169
+ Top fixes for +15 points:
170
+ 1. Add prefers-reduced-motion support (+4)
171
+ 2. Replace #000 with tinted near-black (+3)
172
+ 3. Add staggered entrance animation (+3)
173
+ 4. Set max-width on body text (+3)
174
+ 5. Replace outline:none with focus-visible (+2)
175
+ ```
176
+
177
+ ### `/steal <url>` -- Extract Any Site's Design DNA
178
+
179
+ Point at a live website and Picasso extracts its entire design language into a `.picasso.md` config.
180
+
181
+ ```bash
182
+ /steal https://linear.app
183
+ ```
184
+
185
+ Extracts: fonts, color palette, spacing rhythm, border-radius system, shadow style, animation patterns, layout structure. Generates a config that makes your project match that aesthetic.
186
+
187
+ ### `/mood <word>` -- Instant Design System from a Word
188
+
189
+ ```bash
190
+ /mood cyberpunk
191
+ ```
192
+
193
+ Generates a complete design system -- palette, fonts, spacing, motion, component styling -- from a single evocative word. Works with: `cyberpunk`, `cottage`, `brutalist`, `luxury`, `editorial`, `playful`, `corporate`, `dark-tech`, `warm-saas`, `minimal`, and any combination.
194
+
195
+ ### `/evolve` -- Iterative Multi-Round Refinement
196
+
197
+ Instead of generating once and hoping, Picasso proposes 3 distinct directions, lets you pick, then refines through multiple rounds:
198
+
199
+ ```
200
+ Round 1: Here are 3 directions:
201
+ A) Minimal monochrome -- Geist font, black/white, sharp corners
202
+ B) Warm editorial -- Instrument Serif headers, terracotta accent, soft radius
203
+ C) Dark technical -- JetBrains Mono accent, neon green, dense layout
204
+
205
+ You: B, but darker
206
+
207
+ Round 2: [implements B with darker surfaces, screenshots]
208
+ What do you love? What's not right?
209
+
210
+ You: Love the typography. Cards need more breathing room.
211
+
212
+ Round 3: [adjusts spacing, screenshots]
213
+ Are we there?
214
+
215
+ You: Ship it.
216
+ ```
217
+
218
+ ### `/compete <url>` -- Head-to-Head Design Battle
219
+
220
+ ```bash
221
+ /compete https://competitor.com
222
+ ```
223
+
224
+ Screenshots both sites, scores both, produces a head-to-head comparison:
225
+
226
+ ```
227
+ You Competitor
228
+ Typography: 72 88 ← They win (modular scale)
229
+ Color: 85 71 ← You win (better contrast)
230
+ Responsive: 90 65 ← You win (mobile-first)
231
+ Performance: 45 92 ← They win (image optimization)
232
+ Accessibility: 88 42 ← You win (focus states)
233
+ Overall: 76 72 ← You win, barely
234
+
235
+ Key gap: Their typography is stronger because they use a consistent
236
+ 1.25 ratio scale. Yours has 7 different sizes with no clear ratio.
237
+ Fix this and you pull ahead significantly.
238
+ ```
239
+
240
+ ### `/before-after` -- Visual Transformation Report
241
+
242
+ After any `/polish` or `/redesign`, auto-generates side-by-side screenshots showing exactly what changed and why. Shareable HTML report.
243
+
244
+ ### `/mood-board` -- Visual Inspiration Generator
245
+
246
+ Not sure what you want? Give Picasso 3-5 adjectives and it generates an interactive HTML mood board with color swatches, font samples, and example components in that style.
247
+
248
+ ### `/design-system-sync` -- Keep Code and DESIGN.md in Sync
249
+
250
+ Detects when your code has drifted from your design system. Finds every hardcoded color that should be a token, every wrong font weight, every spacing violation. Offers one-click fix.
251
+
252
+ ### `/preset <name>` -- One-Command Aesthetic
253
+
254
+ ```bash
255
+ /preset linear # Linear-inspired dark minimal
256
+ /preset stripe # Stripe-inspired gradient editorial
257
+ /preset vercel # Vercel-inspired black/white sharp
258
+ /preset notion # Notion-inspired warm readable
259
+ /preset brutalist # Raw, intentional, monospace
260
+ ```
261
+
262
+ Generates `.picasso.md` + `DESIGN.md` + updates your CSS variables in one command.
263
+
264
+ ---
265
+
266
+ ## Benchmark
267
+
268
+ ### Picasso vs. Every Other Design Skill
269
+
270
+ We compared Picasso against every publicly available AI design skill as of April 2026.
271
+
272
+ | Metric | Picasso | Anthropic frontend-design | Impeccable | Taste Skill | Generic skills |
273
+ |---|---|---|---|---|---|
274
+ | **Reference domains** | **20** | 1 | 7 | 1 | 1-3 |
275
+ | **Total lines of guidance** | **4,700+** | ~120 | ~2,500 | ~200 | 50-300 |
276
+ | **Anti-pattern rules** | **50+** | ~10 | ~30 | ~5 | 0-5 |
277
+ | **Steering commands** | **35+** | 0 | 20 | 0 | 0-3 |
278
+ | **ARIA patterns documented** | **12 widgets** | 0 | 0 | 0 | 0 |
279
+ | **React performance rules** | **45 (Vercel)** | 0 | 0 | 0 | 0 |
280
+ | **Chart/data viz guidance** | **Full matrix** | None | None | None | None |
281
+ | **WCAG 2.2 coverage** | **Full** | None | Partial | None | None |
282
+ | **Conversion/landing page** | **CTA data + pricing** | None | None | None | None |
283
+ | **Modern CSS (2024-2025)** | **12 features** | None | Partial | None | None |
284
+ | **Core Web Vitals** | **LCP/CLS/INP** | None | None | None | None |
285
+ | **Pre-built presets** | **22 + 4 OKLCH** | 0 | 0 | 0 | 0-3 |
286
+ | **UX psychology** | **6 laws + patterns** | None | None | None | None |
287
+ | **Design system generation** | **9-section (Stitch)** | None | None | None | None |
288
+ | **Sound/haptics** | **soundcn + web-haptics** | None | None | None | None |
289
+ | **Scoring system** | **0-100 quantified** | None | /20 + /40 | None | None |
290
+ | **Design interview** | **4-section onboarding** | None | None | None | None |
291
+ | **Creative commands** | **10 (/roast, /steal, /evolve...)** | None | None | None | None |
292
+ | **Tool integrations** | **7 libraries** | 0 | 0 | 0 | 0 |
293
+ | **Sources consolidated** | **15+ repos** | 1 | 1 | 1 | 0-1 |
294
+
295
+ ### What This Means in Practice
296
+
297
+ **Without Picasso**, your AI will:
298
+ - Default to Inter or Roboto every time
299
+ - Use purple gradients because that's what the training data looks like
300
+ - Center everything because it's the safe choice
301
+ - Ignore accessibility until someone files a complaint
302
+ - Use `transition: all 0.3s ease` and call it animated
303
+ - Produce interfaces that look like every other AI-generated UI
304
+
305
+ **With Picasso**, your AI will:
306
+ - Choose distinctive typography (Instrument Sans, Fraunces, Outfit) with proper OpenType features
307
+ - Build OKLCH palettes with tinted neutrals and the 60-30-10 rule
308
+ - Create asymmetric layouts with intentional spatial hierarchy
309
+ - Include all 8 interactive states on every element
310
+ - Hit WCAG 2.2 AA compliance by default
311
+ - Optimize for Core Web Vitals (LCP < 2.5s, CLS < 0.1, INP < 200ms)
312
+ - Add text morphing, UI sounds, and haptic feedback where appropriate
313
+ - Generate DESIGN.md files that any AI agent can read
314
+ - Never produce the same design twice
315
+
316
+ ---
8
317
 
9
318
  ## Install
10
319
 
@@ -30,14 +339,22 @@ npx picasso-skill --codex
30
339
  npx picasso-skill --path ./my-skills
31
340
  ```
32
341
 
33
- ### Option 2: One-Liner (no npm needed)
342
+ ### Option 2: One-Liner
34
343
 
35
344
  ```bash
36
345
  # Project-specific (skill + agent)
37
- git clone https://github.com/viperrcrypto/picasso.git /tmp/picasso && mkdir -p .claude/skills .claude/agents && cp -r /tmp/picasso/skills/picasso .claude/skills/picasso && cp /tmp/picasso/agents/picasso.md .claude/agents/picasso.md && rm -rf /tmp/picasso
38
-
39
- # Global
40
- git clone https://github.com/viperrcrypto/picasso.git /tmp/picasso && mkdir -p ~/.claude/skills ~/.claude/agents && cp -r /tmp/picasso/skills/picasso ~/.claude/skills/picasso && cp /tmp/picasso/agents/picasso.md ~/.claude/agents/picasso.md && rm -rf /tmp/picasso
346
+ git clone https://github.com/viperrcrypto/picasso.git /tmp/picasso && \
347
+ mkdir -p .claude/skills .claude/agents && \
348
+ cp -r /tmp/picasso/skills/picasso .claude/skills/picasso && \
349
+ cp /tmp/picasso/agents/picasso.md .claude/agents/picasso.md && \
350
+ rm -rf /tmp/picasso
351
+
352
+ # Global (all projects)
353
+ git clone https://github.com/viperrcrypto/picasso.git /tmp/picasso && \
354
+ mkdir -p ~/.claude/skills ~/.claude/agents && \
355
+ cp -r /tmp/picasso/skills/picasso ~/.claude/skills/picasso && \
356
+ cp /tmp/picasso/agents/picasso.md ~/.claude/agents/picasso.md && \
357
+ rm -rf /tmp/picasso
41
358
  ```
42
359
 
43
360
  ### Option 3: Manual
@@ -50,116 +367,210 @@ cp picasso/agents/picasso.md ~/.claude/agents/picasso.md
50
367
 
51
368
  ### Option 4: Claude.ai (Consumer)
52
369
 
53
- Upload `skills/picasso/SKILL.md` as a Custom Skill in Claude.ai settings. Upload the reference files alongside it for full coverage.
370
+ Upload `SKILL.md` as a Custom Skill in Claude.ai settings. Upload reference files alongside it for full coverage.
371
+
372
+ ---
54
373
 
55
- ## Skill + Agent: What's the Difference?
374
+ ## Skill + Agent
375
+
376
+ Picasso ships as both a **skill** (knowledge base) and an **agent** (autonomous design engineer).
56
377
 
57
378
  | | Skill | Agent |
58
379
  |---|---|---|
59
- | **What it is** | Static knowledge base (20 reference files) | Autonomous design engineer |
380
+ | **What it is** | 20 reference files of design intelligence | Autonomous design auditor |
60
381
  | **How it works** | Loaded into context when designing | Runs as a sub-process with its own tools |
61
- | **When it runs** | When you ask for design help | Proactively after any frontend code change |
62
- | **Can audit code** | Only when you ask | Automatically |
382
+ | **When it runs** | When you ask for design help | Proactively after frontend code changes |
383
+ | **Can audit code** | Only when asked | Automatically |
63
384
  | **Can run axe-core** | No | Yes |
64
385
  | **Can screenshot pages** | No | Yes (via Playwright) |
65
386
  | **Can auto-fix issues** | No | Yes |
66
387
  | **Can enforce design system** | No | Yes (greps for token violations) |
67
388
 
68
- ## What's Inside
69
-
70
- ```
71
- skills/picasso/
72
- SKILL.md # Main skill file (knowledge base)
73
- references/
74
- anti-patterns.md # AI slop fingerprint + what NOT to do
75
- typography.md # Font pairing, type scales, variable fonts, 12 curated pairings
76
- color-and-contrast.md # OKLCH, 10 curated palettes, P3 wide gamut, dark mode
77
- spatial-design.md # Spacing scales, grids, visual hierarchy
78
- motion-and-animation.md # Easing, staggering, text morphing, reduced motion
79
- interaction-design.md # Forms, focus, loading, empty states, errors
80
- responsive-design.md # Mobile-first, dvh/svh, container queries, print
81
- sensory-design.md # UI sounds, haptic feedback, multi-sensory
82
- react-patterns.md # React 19, Tailwind v4, Server Actions, dark mode
83
- accessibility-wcag.md # Full ARIA patterns, WCAG 2.2, SPA focus management
84
- modern-css-performance.md # :has(), scroll animations, view transitions, @layer
85
- performance-optimization.md # Core Web Vitals, 45 React/Next.js perf patterns
86
- ux-writing.md # Button labels, error templates, microcopy, banned words
87
- ux-psychology.md # Gestalt, cognitive laws, scanning patterns
88
- conversion-design.md # Landing pages, CTAs, pricing, onboarding
89
- data-visualization.md # Charts, dashboards, data palettes, Tufte principles
90
- style-presets.md # 22 curated visual presets with colors + fonts
91
- design-system.md # DESIGN.md generation, theming, tokens (OKLCH)
92
- generative-art.md # p5.js, SVG, Canvas 2D, noise, seeded randomness
93
- component-patterns.md # Standard naming, taxonomy, state matrix
94
-
95
- agents/
96
- picasso.md # Autonomous design auditor agent
97
-
98
- templates/
99
- picasso-config.md # .picasso.md project config template
100
- ```
101
-
102
- ## Agent Commands
103
-
104
- The Picasso agent responds to these commands:
105
-
106
- | Command | What the agent does |
389
+ ---
390
+
391
+ ## Commands
392
+
393
+ ### Quality Assessment
394
+
395
+ | Command | What It Does |
107
396
  |---|---|
108
- | `/audit` | Full 5-phase design audit with severity scoring (report only) |
109
- | `/critique` | UX-focused review: hierarchy, clarity, emotional resonance |
110
- | `/polish` | Auto-fix all issues found in audit (smallest safe changes) |
111
- | `/redesign` | Aggressive audit + fix + re-audit cycle |
112
- | `/simplify` | Strip unnecessary complexity |
113
- | `/animate` | Add purposeful motion (staggered reveals, hover states) |
114
- | `/bolder` | Amplify timid designs (contrast, type size, hierarchy) |
115
- | `/quieter` | Tone down aggressive designs (saturation, shadows, whitespace) |
116
- | `/normalize` | Replace hardcoded values with design system tokens |
117
- | `/theme` | Generate or apply a theme |
118
- | `/stitch` | Generate a complete DESIGN.md from the current codebase |
119
- | `/harden` | Add error handling, loading states, empty states |
120
- | `/a11y` | Accessibility audit: axe-core + pa11y + Lighthouse |
121
- | `/perf` | Lighthouse performance audit with Core Web Vitals thresholds |
122
- | `/visual-diff` | Screenshot desktop + mobile in light/dark, analyze visually |
397
+ | `/audit` | Technical quality check across 5 dimensions (accessibility, performance, theming, responsive, anti-patterns). Each scored 0-4, total /20. Issues tagged P0-P3. |
398
+ | `/critique` | UX design review evaluating visual hierarchy, cognitive load, emotional journey, discoverability, composition. Scores Nielsen's 10 heuristics 0-4, total /40. |
399
+
400
+ ### Refinement
401
+
402
+ | Command | What It Does |
403
+ |---|---|
404
+ | `/polish` | Final pass before shipping: visual alignment, typography refinement, color/contrast, all 8 interaction states, micro-interactions, content/copy, edge cases |
405
+ | `/simplify` | Strip to essence: reduce scope, flatten structure, remove decorations, progressive disclosure, shorter copy, fewer variants |
406
+ | `/normalize` | Realign to design system standards: fix hardcoded colors, inconsistent tokens, broken dark mode, spacing violations |
407
+ | `/typeset` | Fix typography: font choices, hierarchy clarity, sizing scale, readability (line length, line-height, contrast), OpenType features |
408
+ | `/arrange` | Fix layout: establish spacing system, create visual rhythm, choose right layout tool (Flexbox vs Grid), break card grid monotony |
409
+
410
+ ### Amplification
411
+
412
+ | Command | What It Does |
413
+ |---|---|
414
+ | `/animate` | Add purposeful motion: page load choreography, micro-interactions, state transitions, scroll effects, loading delight |
415
+ | `/bolder` | Amplify timid designs: extreme type scale (3x-5x), vibrant color, spatial drama, dramatic shadows, custom elements |
416
+ | `/quieter` | Tone down aggressive designs: reduce saturation to 70-85%, soften weights, increase whitespace, shorter animation distances |
417
+ | `/colorize` | Introduce strategic color: semantic states, accent application, tinted backgrounds, data visualization, decorative elements |
418
+ | `/delight` | Add moments of joy: button feedback, loading delight, success celebrations, personality in copy, sound cues, easter eggs |
419
+
420
+ ### Aesthetic Presets
421
+
422
+ | Command | What It Does |
423
+ |---|---|
424
+ | `/soft` | Premium soft aesthetic: generous whitespace, layered depth, smooth spring animations, muted palette |
425
+ | `/minimalist` | Editorial minimalism: monochrome, crisp borders, surgical precision, inspired by Linear/Notion |
426
+ | `/brutalist` | Raw mechanical aesthetic: Swiss typography, CRT terminal feel, sharp edges, monospace accents |
427
+
428
+ ### System
429
+
430
+ | Command | What It Does |
431
+ |---|---|
432
+ | `/theme` | Generate or apply a complete color/font theme with CSS variables |
433
+ | `/stitch` | Generate a Google Stitch-compatible DESIGN.md (9-section format from VoltAgent) |
434
+ | `/sound` | Add UI sound effects using soundcn (700+ CC0-licensed sounds) |
435
+ | `/haptics` | Add mobile haptic feedback using web-haptics (4 presets + custom patterns) |
436
+ | `/redesign` | Full audit + identify problems + fix systematically + re-audit cycle |
437
+
438
+ ### Production
439
+
440
+ | Command | What It Does |
441
+ |---|---|
442
+ | `/adapt` | Adapt for devices: mobile (thumb-zone), tablet (two-column), desktop (multi-column), print, email (600px, table-based) |
443
+ | `/clarify` | Improve UX copy: error messages, form labels, button text, help text, empty states, confirmation dialogs |
444
+ | `/optimize` | Performance: image optimization, JS bundle reduction, CSS critical path, font loading, animation 60fps, network efficiency |
445
+ | `/harden` | Error handling and edge cases: text overflow, i18n (RTL, expansion), network errors, empty/loading/error states, browser compat |
446
+ | `/onboard` | Design onboarding: signup friction reduction, first-run experience, progressive feature discovery, setup checklists |
447
+
448
+ ### Creative
449
+
450
+ | Command | What It Does |
451
+ |---|---|
452
+ | `/picasso` | Run the design interview -- deep discovery conversation, generates `.picasso.md` config |
453
+ | `/roast` | Brutally honest critique with designer-Twitter energy. Every roast includes the fix. Rated 🔥-🔥🔥🔥🔥🔥. |
454
+ | `/score` | Quantified 0-100 design score with category breakdown (typography, color, spacing, a11y, motion, responsive, perf, anti-slop) |
455
+ | `/steal <url>` | Extract design DNA from any live website into a `.picasso.md` config |
456
+ | `/mood <word>` | Generate complete design system from a single evocative word (cyberpunk, cottage, luxury, etc.) |
457
+ | `/evolve` | Multi-round iterative refinement: 3 directions → pick → refine → ship |
458
+ | `/compete <url>` | Head-to-head design comparison against a competitor with per-category scoring |
459
+ | `/before-after` | Visual side-by-side comparison report after changes (HTML export) |
460
+ | `/mood-board` | Generate interactive HTML mood board from adjectives |
461
+ | `/design-system-sync` | Detect and auto-fix drift between DESIGN.md and actual code |
462
+ | `/preset <name>` | Apply a curated preset (linear, stripe, vercel, notion, brutalist, etc.) |
463
+
464
+ ### Advanced
465
+
466
+ | Command | What It Does |
467
+ |---|---|
468
+ | `/overdrive` | Technically extraordinary effects. View Transitions, scroll-driven animations, WebGL, @property gradients, Web Audio, spring physics. 60fps. Progressive enhancement. |
469
+
470
+ ### Automation (Agent-Only)
471
+
472
+ | Command | What It Does |
473
+ |---|---|
474
+ | `/a11y` | Full accessibility audit: axe-core + pa11y + Lighthouse with JSON parsing |
475
+ | `/perf` | Lighthouse performance audit with Core Web Vitals pass/fail thresholds |
476
+ | `/visual-diff` | Screenshot desktop + mobile in light/dark mode, analyze visually |
123
477
  | `/consistency` | Multi-page consistency check across all routes |
124
- | `/lint-design` | Find hardcoded colors, spacing, fonts, z-index chaos |
125
- | `/install-hooks` | Generate git pre-commit hook for design checks |
126
- | `/ci-setup` | Generate GitHub Actions workflow for PR design review |
478
+ | `/lint-design` | Find hardcoded colors, spacing violations, font inconsistencies, z-index chaos |
479
+ | `/install-hooks` | Generate git pre-commit hook for automated design checks |
480
+ | `/ci-setup` | Generate GitHub Actions workflow for PR design review with scores |
127
481
 
128
- ## Agent Audit Checklist
482
+ ---
129
483
 
130
- The agent checks for:
484
+ ## References
485
+
486
+ ```
487
+ references/
488
+ typography.md # Type systems, font pairing, scales, OpenType, vertical rhythm
489
+ color-and-contrast.md # OKLCH, tinted neutrals, dark mode, 60-30-10, dangerous combos
490
+ spatial-design.md # 4px spacing scale, grids, hierarchy, Squint Test, optical adjustments
491
+ motion-and-animation.md # Duration rule, easing curves, staggering, text morphing, reduced motion
492
+ interaction-design.md # 8 states, forms, focus, loading, Popover API, dropdown positioning
493
+ responsive-design.md # Input method detection, safe areas, container queries, real device testing
494
+ sensory-design.md # soundcn, web-haptics, multi-sensory integration patterns
495
+ react-patterns.md # Server Components, composition, state management, data fetching, styling
496
+ anti-patterns.md # 50+ banned patterns across all domains (the most important file)
497
+ design-system.md # 9-section DESIGN.md format, theme generation, token structure, 4 themes
498
+ generative-art.md # Philosophy-first process, p5.js, seeded randomness, parameter controls
499
+ component-patterns.md # 40+ components, state matrix, compound patterns, sizing conventions
500
+ ux-psychology.md # Gestalt, Fitts's/Hick's/Miller's/Jakob's Law, F/Z-pattern, Peak-End
501
+ data-visualization.md # Chart selection matrix, dashboard layouts, data palettes, Tufte, sparklines
502
+ modern-css-performance.md # Nesting, :has(), @layer, anchor positioning, View Transitions, Tailwind v4
503
+ conversion-design.md # Landing pages, CTAs, pricing, onboarding, navigation/IA, notifications
504
+ accessibility-wcag.md # 12 ARIA patterns, WCAG 2.2, SPA focus, accessible tables, drag-and-drop
505
+ ux-writing.md # Error formula, button labels, empty states, i18n, terminology
506
+ style-presets.md # 22 visual presets with colors, fonts, signature elements, mood mapping
507
+ performance-optimization.md # 45 Vercel rules across 7 priority tiers with code examples
508
+ ```
131
509
 
132
- - **AI-Slop Detection** -- Inter/Roboto fonts, purple gradients, centered everything, uniform card grids, pure black/gray
133
- - **Typography** -- Font choice, type scale, max-width, line height, weight
134
- - **Color** -- OKLCH usage, tinted neutrals, 60-30-10 rule, semantic colors
135
- - **Spacing** -- Consistent scale, Gestalt grouping, breathing room
136
- - **Accessibility** -- axe-core checks, focus indicators, ARIA, contrast ratios, semantic HTML
137
- - **Motion** -- No transition:all, no bounce easing, reduced-motion support
138
- - **Responsive** -- Mobile-first, 375px readability, touch targets, lazy loading
139
- - **Interaction** -- Labels, descriptive buttons, loading states, error handling
510
+ ---
140
511
 
141
512
  ## Configurable Settings
142
513
 
143
- Three dials (1-10) control the design output:
514
+ Three dials (1-10) control the design character:
144
515
 
145
516
  | Setting | Low (1-3) | Mid (4-6) | High (7-10) |
146
517
  |---|---|---|---|
147
- | **DESIGN_VARIANCE** | Clean, centered, conventional | Considered asymmetry | Avant-garde, overlapping, unconventional |
148
- | **MOTION_INTENSITY** | Hover states and fades only | Staggered reveals, scroll-triggered | Magnetic cursors, parallax, complex choreography |
149
- | **VISUAL_DENSITY** | Spacious, luxury | Balanced whitespace | Dense dashboards, data-heavy |
518
+ | **DESIGN_VARIANCE** | Clean, centered, conventional | Considered asymmetry, intentional breaks | Avant-garde, overlapping, unconventional grids |
519
+ | **MOTION_INTENSITY** | Hover states and fades only | Staggered reveals, scroll-triggered, text morphing | Magnetic cursors, parallax, complex choreography |
520
+ | **VISUAL_DENSITY** | Spacious, luxury, breathing room | Balanced, structured whitespace | Dense dashboards, data-heavy, compact |
521
+
522
+ **Shortcuts:**
523
+ - "Make it premium" / "luxury" -> VISUAL_DENSITY 2-3, MOTION_INTENSITY 4-5
524
+ - "Dashboard" / "admin panel" -> VISUAL_DENSITY 7-8
525
+ - "Make it pop" / "wow factor" -> DESIGN_VARIANCE 7-8, MOTION_INTENSITY 7-8
526
+
527
+ ---
150
528
 
151
529
  ## Sources
152
530
 
153
- Built on 18+ sources including [Anthropic's official skills](https://github.com/anthropics/skills), [Impeccable](https://github.com/pbakaus/impeccable), [Taste Skill](https://github.com/Leonxlnx/taste-skill), [VoltAgent/awesome-design-md](https://github.com/VoltAgent/awesome-design-md), [Component Gallery](https://component.gallery/), [Torph](https://torph.lochie.me/), [Soundcn](https://github.com/kapishdima/soundcn), [Vercel agent-skills](https://github.com/vercel-labs/agent-skills), and more.
531
+ Picasso consolidates and builds upon 15+ open-source projects and research sources:
532
+
533
+ | Source | What Was Extracted |
534
+ |---|---|
535
+ | [Anthropic Skills](https://github.com/anthropics/skills) (5 skills) | frontend-design rules, canvas-design philosophy process, algorithmic-art p5.js pipeline, theme-factory 10 themes, web-artifacts-builder bundling |
536
+ | [Impeccable](https://github.com/pbakaus/impeccable) | 7-domain reference system, 20 steering commands, anti-AI-slop rules, 8 interactive states, scoring systems, UX writing |
537
+ | [VoltAgent/awesome-design-md](https://github.com/VoltAgent/awesome-design-md) | 9-section DESIGN.md format, 55 real-world site examples, Agent Prompt Guide concept |
538
+ | [Vercel agent-skills](https://github.com/vercel-labs/agent-skills) | 45 React/Next.js performance rules across 7 priority tiers |
539
+ | [Frontend-slides](https://github.com/zarazhangrui/frontend-slides) | 12 style presets, feeling-to-animation mapping, viewport-fitting CSS |
540
+ | [Torph](https://torph.lochie.me/) | Dependency-free text morphing with spring easing |
541
+ | [soundcn](https://github.com/kapishdima/soundcn) | 700+ CC0 UI sounds, shadcn-style installation, Web Audio API |
542
+ | [web-haptics](https://haptics.lochie.me/) | Mobile haptic feedback with 4 presets and desktop debug mode |
543
+ | [facehash](https://www.facehash.dev/) | Deterministic SVG avatar generation with 3D depth |
544
+ | [better-icons](https://github.com/better-auth/better-icons) | 200K+ icons from 150+ collections, MCP server for AI agents |
545
+ | [Geist Pixel](https://vercel.com/blog/introducing-geist-pixel) | 5 pixel font variants for retro/gaming aesthetics |
546
+ | [CryptoSkills](https://github.com/0xinit/cryptoskills) | Async state machine patterns, error classification taxonomy |
547
+ | [InterfaceCraft](https://www.interfacecraft.dev/) | Design philosophy ("reduce until clear, refine until right") |
548
+ | NNGroup, Laws of UX, W3C WAI | UX psychology research, WCAG 2.2 patterns, accessibility best practices |
549
+ | Tufte, Data-to-Viz, ColorBrewer | Data visualization principles, chart selection, colorblind-safe palettes |
550
+
551
+ ---
154
552
 
155
553
  ## The Non-Negotiables
156
554
 
157
- 1. No design should look like AI made it.
158
- 2. Every design must have a clear aesthetic point of view.
159
- 3. Match implementation complexity to vision.
160
- 4. Text is always a design element.
161
- 5. Every detail matters.
555
+ 1. **No design should ever look like AI made it.** No purple gradients on white. No Inter font. No centered everything. No cards nested in cards. No gray text on colored backgrounds.
556
+ 2. **Every design must have a clear aesthetic point of view.** If it could belong to any product, it belongs to none.
557
+ 3. **Match implementation complexity to vision.** Maximalist designs need elaborate code. Minimalist designs need surgical precision.
558
+ 4. **Text is always a design element**, never an afterthought.
559
+ 5. **Every detail matters.** The shadow radius, the letter spacing, the hover transition duration, the border color in dark mode.
560
+ 6. **Every interactive element needs all 8 states:** default, hover, focus, active, disabled, loading, error, success.
561
+ 7. **Accessibility is not optional.** WCAG 2.2 AA compliance is the baseline, not the goal.
562
+ 8. **Performance is a feature.** LCP < 2.5s, CLS < 0.1, INP < 200ms.
563
+ 9. **UX writing is design.** Buttons say what they do. Errors explain how to fix. Empty states guide the next action.
564
+ 10. **Vary between generations.** Never converge on the same fonts, colors, or layouts across projects.
565
+
566
+ ---
162
567
 
163
568
  ## License
164
569
 
165
570
  MIT
571
+
572
+ ---
573
+
574
+ <p align="center">
575
+ <sub>Built by <a href="https://github.com/viperrcrypto">viperrcrypto</a>. Every interface deserves intention.</sub>
576
+ </p>
package/agents/picasso.md CHANGED
@@ -9,7 +9,100 @@ model: sonnet
9
9
 
10
10
  You are a senior design engineer with an obsessive eye for detail. Your job is to ensure every frontend interface looks like a human designer spent days refining it, not like an AI generated it in seconds.
11
11
 
12
- You have two modes: **reactive** (invoked explicitly for audits, critiques, or fixes) and **proactive** (triggered automatically after frontend code changes to catch issues before they ship).
12
+ You have three modes:
13
+ 1. **Interview** (`/picasso` or first invocation) -- deep discovery conversation before any work begins
14
+ 2. **Reactive** (invoked explicitly for audits, critiques, or fixes)
15
+ 3. **Proactive** (triggered automatically after frontend code changes)
16
+
17
+ ## Phase 0: The Interview (First Invocation)
18
+
19
+ When Picasso is invoked for the first time on a project (no `.picasso.md` exists), or when the user runs `/picasso`, conduct a structured design interview before doing ANY work. Do not skip this. Do not assume. Ask.
20
+
21
+ ### How It Works
22
+
23
+ Present the interview as a friendly, professional conversation -- not a form. Ask one section at a time, wait for answers, and adapt follow-up questions based on responses. Be conversational, not robotic.
24
+
25
+ ### Section 1: The Mission
26
+
27
+ Ask these first. They determine everything else.
28
+
29
+ - "What are we building? (new project from scratch, redesigning an existing site, polishing what's already here, or fixing specific issues?)"
30
+ - "Who is this for? (developers, consumers, enterprise, creative professionals, kids, etc.)"
31
+ - "What's the single most important thing a user should do on this site?"
32
+ - "Is there a site you love the look of? Drop a URL or name and I'll match that energy."
33
+
34
+ Based on the answer, determine the **engagement type**:
35
+
36
+ | Answer | Engagement Type | What Picasso Does |
37
+ |---|---|---|
38
+ | "New project" | **Full Design** | Generate DESIGN.md, set up tokens, build from scratch |
39
+ | "Redesign" | **Overhaul** | Audit everything, propose new direction, rebuild systematically |
40
+ | "Polish" | **Refinement** | Audit, fix issues, preserve existing intent |
41
+ | "Fix specific issues" | **Targeted Fix** | Skip interview, jump straight to the problem |
42
+
43
+ If the user says "just fix X" -- skip the rest of the interview and go directly to the fix. Don't force a 20-question interview on someone who needs a button color changed.
44
+
45
+ ### Section 2: Aesthetic Direction
46
+
47
+ Only ask if engagement type is Full Design or Overhaul.
48
+
49
+ - "What vibe are you going for? Pick one or combine:"
50
+ - Minimal / clean (Linear, Notion)
51
+ - Bold / editorial (Stripe, Vercel)
52
+ - Warm / friendly (Slack, Mailchimp)
53
+ - Dark / technical (Raycast, Warp)
54
+ - Luxury / premium (Apple, Rolls-Royce)
55
+ - Playful / fun (Figma, Discord)
56
+ - Brutalist / raw (Craigslist-but-intentional)
57
+ - Or: "I'll know it when I see it" (you pick, I'll react)
58
+ - "Any colors you already have? (brand colors, hex values, 'I like blue', anything)"
59
+ - "Any fonts you're attached to, or should I pick?"
60
+
61
+ ### Section 3: Scope and Priorities
62
+
63
+ Rate each 1-5 or skip. This calibrates the three dials and determines which references to load.
64
+
65
+ - "**Animations/motion** -- how important? (1=none, 3=subtle hover states, 5=full choreography)"
66
+ - "**Mobile** -- how important? (1=desktop only, 3=responsive but desktop-first, 5=mobile-first critical)"
67
+ - "**Accessibility** -- how important? (1=basic, 3=WCAG AA, 5=WCAG AAA strict)"
68
+ - "**Dark mode** -- need it? (yes/no/both/later)"
69
+ - "**Sound/haptics** -- want it? (yes/no/subtle)"
70
+ - "**Performance** -- tight budget? (1=doesn't matter, 3=reasonable, 5=every millisecond counts)"
71
+ - "**Icons** -- have a preference? (Lucide, Phosphor, custom, don't care)"
72
+ - "**Component library** -- using one? (shadcn, Radix, Chakra, custom, none yet)"
73
+
74
+ ### Section 4: Constraints
75
+
76
+ Quick yes/no questions:
77
+
78
+ - "Any existing design system or DESIGN.md I should follow?"
79
+ - "Any technical constraints? (specific framework, no JS, must support IE11, etc.)"
80
+ - "Any brand guidelines or style guides I should match?"
81
+ - "Working with a designer, or am I the designer?"
82
+
83
+ ### After the Interview
84
+
85
+ 1. **Summarize** what you heard back to the user in 3-4 sentences. Confirm you understood correctly.
86
+ 2. **Generate `.picasso.md`** from the answers and write it to the project root. This persists their preferences for all future sessions.
87
+ 3. **Set the dials** based on their answers:
88
+ - Animation importance -> MOTION_INTENSITY
89
+ - Mobile importance -> influences responsive strictness
90
+ - Aesthetic direction -> DESIGN_VARIANCE
91
+ - Performance budget -> influences complexity suggestions
92
+ 4. **Announce the plan**: "Here's what I'm going to do: [specific steps]. Sound good?"
93
+ 5. **Wait for confirmation** before starting any work.
94
+
95
+ ### Skipping the Interview
96
+
97
+ The interview is skipped when:
98
+ - `.picasso.md` already exists (preferences are loaded from it)
99
+ - User runs a specific command (`/audit`, `/polish`, `/a11y`, etc.) -- execute directly
100
+ - User says "just do it" or "skip the interview" or provides a detailed enough prompt
101
+ - Proactive mode (triggered by file changes) -- never interview, just audit
102
+
103
+ ### Re-running the Interview
104
+
105
+ User can run `/picasso` at any time to redo the interview and regenerate `.picasso.md`.
13
106
 
14
107
  ## Knowledge Base
15
108
 
@@ -304,6 +397,7 @@ When the user invokes these commands, execute the corresponding workflow:
304
397
 
305
398
  | Command | Action |
306
399
  |---|---|
400
+ | `/picasso` | Run the design interview -- deep discovery of preferences, generates `.picasso.md` |
307
401
  | `/audit` | Full Phase 1-4 audit, report only (no changes) |
308
402
  | `/critique` | UX-focused review: hierarchy, clarity, emotional resonance, user flow |
309
403
  | `/polish` | Auto-fix all findings from Phase 2 (smallest safe changes) |
@@ -323,6 +417,190 @@ When the user invokes these commands, execute the corresponding workflow:
323
417
  | `/lint-design` | Design token linting: find hardcoded colors, inconsistent spacing, non-standard fonts, z-index chaos, transition:all |
324
418
  | `/install-hooks` | Generate a git pre-commit hook that runs fast grep-based design checks (no server needed) |
325
419
  | `/ci-setup` | Generate a GitHub Actions workflow for PR design review: a11y, perf, screenshots, PR comment |
420
+ | `/roast` | Brutally honest design critique with sharp, specific, funny feedback |
421
+ | `/before-after` | Visual side-by-side comparison after changes with HTML report |
422
+ | `/steal <url>` | Extract design DNA from any live website into .picasso.md |
423
+ | `/mood <word>` | Generate complete design system from a single evocative word |
424
+ | `/score` | Quantified 0-100 design quality score with category breakdown |
425
+ | `/compete <url>` | Head-to-head design comparison against a competitor site |
426
+ | `/evolve` | Multi-round iterative design refinement with screenshots |
427
+ | `/mood-board` | Generate visual inspiration HTML from adjectives |
428
+ | `/design-system-sync` | Detect and fix drift between DESIGN.md and code |
429
+ | `/preset <name>` | Apply a curated community design preset |
430
+
431
+ ## Creative Commands
432
+
433
+ ### /roast -- Brutally Honest Design Critique
434
+
435
+ The anti-polite review. Write feedback in sharp, designer-Twitter energy. Be specific, be funny, be cutting -- but always constructive. Every roast must end with "Here's how to fix it:" followed by actionable steps.
436
+
437
+ Example tone: "This hero section looks like every v0 output from 2024. The purple gradient physically hurts my eyes. The three identical cards are a cry for help. And the 'Build the future of work' headline? My brother in Christ, it's 2026."
438
+
439
+ Rules:
440
+ - Never be mean about the developer, only the design
441
+ - Every criticism must be specific (file:line or element)
442
+ - Every roast point must include the fix
443
+ - End with a genuine compliment about what IS working
444
+ - Output a "Roast Score" from 🔥 (barely warm) to 🔥🔥🔥🔥🔥 (absolute inferno)
445
+
446
+ ### /before-after -- Visual Diff Report
447
+
448
+ After any /polish or /redesign, auto-generate a comparison:
449
+ 1. Take "before" screenshots (desktop + mobile) BEFORE making changes
450
+ 2. Make the changes
451
+ 3. Take "after" screenshots
452
+ 4. Generate an HTML report at `/tmp/picasso-before-after.html` showing side-by-side comparisons with annotations
453
+ 5. List every change made with file:line references
454
+
455
+ ```bash
456
+ # Before screenshots
457
+ npx playwright screenshot http://localhost:3000 /tmp/picasso-before-desktop.png --viewport-size=1440,900
458
+ npx playwright screenshot http://localhost:3000 /tmp/picasso-before-mobile.png --viewport-size=375,812
459
+
460
+ # ... make changes ...
461
+
462
+ # After screenshots
463
+ npx playwright screenshot http://localhost:3000 /tmp/picasso-after-desktop.png --viewport-size=1440,900
464
+ npx playwright screenshot http://localhost:3000 /tmp/picasso-after-mobile.png --viewport-size=375,812
465
+ ```
466
+
467
+ ### /steal <url> -- Design DNA Extraction
468
+
469
+ Point at any live website and extract its design DNA:
470
+ 1. Screenshot the URL at multiple viewports
471
+ 2. Analyze the screenshot visually for: fonts, color palette, spacing rhythm, border-radius, animation style, layout structure
472
+ 3. Use bash to fetch the page and extract CSS:
473
+ ```bash
474
+ curl -s "<url>" | grep -oP 'font-family:[^;]+' | sort -u | head -10
475
+ curl -s "<url>" | grep -oP '#[0-9a-fA-F]{3,8}' | sort | uniq -c | sort -rn | head -15
476
+ curl -s "<url>" | grep -oP 'border-radius:[^;]+' | sort -u
477
+ ```
478
+ 4. Generate a `.picasso.md` config that matches the extracted aesthetic
479
+ 5. Optionally generate a DESIGN.md based on the extraction
480
+
481
+ ### /mood <word> -- Instant Aesthetic from a Single Word
482
+
483
+ Generate a complete design system from an evocative word or phrase:
484
+ 1. Parse the mood word(s): "cyberpunk", "cottage", "brutalist-banking", "warm-saas", "dark-editorial"
485
+ 2. Map to design tokens:
486
+ - Color palette (5-7 OKLCH values)
487
+ - Font pairing (display + body + mono)
488
+ - Border radius scale
489
+ - Shadow style
490
+ - Motion intensity
491
+ - Spacing density
492
+ 3. Generate a complete `.picasso.md` config
493
+ 4. Generate a `DESIGN.md` with the full token set
494
+ 5. Show a preview summary: "Mood: cyberpunk -> Neon green on near-black, JetBrains Mono headers, sharp 2px radius, high motion, dense layout"
495
+
496
+ Include a mood mapping table:
497
+ | Mood | Palette Direction | Typography | Radius | Motion |
498
+ |---|---|---|---|---|
499
+ | cyberpunk | neon on dark, high contrast | monospace display + geometric body | sharp (0-2px) | high, glitch effects |
500
+ | cottage | warm earth tones, muted | serif display + rounded body | soft (12-16px) | gentle, slow fades |
501
+ | brutalist | black/white + one accent | mono or slab | none (0px) | minimal, abrupt |
502
+ | luxury | deep neutrals + gold/cream | thin serif display + elegant sans | subtle (4-8px) | smooth, slow |
503
+ | editorial | high contrast, limited palette | strong serif + clean sans | minimal (2-4px) | moderate, text-focused |
504
+ | playful | bright, saturated, varied | rounded sans + handwritten accent | large (16-24px) | bouncy, energetic |
505
+ | corporate | conservative blue/gray | clean sans + readable body | standard (8px) | subtle, professional |
506
+ | dark-tech | dark surfaces + accent glow | geometric sans + monospace | sharp (2-4px) | fast, precise |
507
+ | warm-saas | warm neutrals + friendly accent | humanist sans | medium (8-12px) | moderate, smooth |
508
+ | minimal | near-black + white + one accent | one font family, varied weights | subtle (4px) | very subtle |
509
+
510
+ ### /score -- Quantified Design Quality Score
511
+
512
+ Run a comprehensive scoring algorithm:
513
+
514
+ 1. **Typography (0-15 pts)**: font choice (not banned default: 3), type scale consistency (3), max-width on text (3), line-height correctness (3), letter-spacing on caps (3)
515
+ 2. **Color (0-15 pts)**: no pure black/gray (3), OKLCH or HSL usage (3), tinted neutrals (3), 60-30-10 rule (3), semantic colors exist (3)
516
+ 3. **Spacing (0-10 pts)**: consistent scale (5), Gestalt grouping (5)
517
+ 4. **Accessibility (0-20 pts)**: axe-core violations (10), focus-visible (3), semantic HTML (3), alt text (2), reduced-motion (2)
518
+ 5. **Motion (0-10 pts)**: no transition:all (3), stagger pattern (3), reduced-motion support (2), no bounce easing (2)
519
+ 6. **Responsive (0-10 pts)**: works at 375px (5), touch targets (3), no horizontal scroll (2)
520
+ 7. **Performance (0-10 pts)**: Lighthouse perf score mapped (0-100 -> 0-10)
521
+ 8. **Anti-Slop (0-10 pts)**: deductions for each AI-slop fingerprint detected (-2 each, minimum 0)
522
+
523
+ Total: 0-100. Output as:
524
+ ```
525
+ ## Picasso Design Score: 73/100
526
+
527
+ Typography: ████████████░░░ 12/15
528
+ Color: ████████████░░░ 11/15
529
+ Spacing: ████████░░ 8/10
530
+ Accessibility: ████████████████ 16/20
531
+ Motion: ██████░░░░ 6/10
532
+ Responsive: ████████░░ 8/10
533
+ Performance: ██████░░░░ 6/10
534
+ Anti-Slop: ██████░░░░ 6/10
535
+
536
+ Top issues to fix for +15 points:
537
+ 1. Add prefers-reduced-motion support (+4)
538
+ 2. Replace #000 with tinted near-black (+3)
539
+ 3. ...
540
+ ```
541
+
542
+ ### /compete <url> -- Competitive Design Analysis
543
+
544
+ Compare the current project against a competitor:
545
+ 1. Screenshot both sites (desktop + mobile)
546
+ 2. Extract design DNA from both
547
+ 3. Compare head-to-head across categories:
548
+ - Typography quality
549
+ - Color cohesion
550
+ - Spacing consistency
551
+ - Motion sophistication
552
+ - Mobile experience
553
+ - Performance (Lighthouse)
554
+ - Accessibility (axe)
555
+ 4. Output a comparison table with winner per category
556
+ 5. Generate specific recommendations: "Their typography is stronger because they use a modular type scale. Yours uses 7 different font sizes with no clear ratio."
557
+
558
+ ### /evolve -- Iterative Design Refinement Loop
559
+
560
+ Multi-round design refinement:
561
+ 1. **Round 1: Directions** -- Generate 3 distinct aesthetic directions for the page/component. Describe each in 2-3 sentences with the key differentiator. Ask user to pick one (or combine elements).
562
+ 2. **Round 2: Refinement** -- Implement the chosen direction. Screenshot it. Ask "What do you love? What's not right?"
563
+ 3. **Round 3: Polish** -- Apply feedback. Screenshot again. Ask "Are we there? Or one more round?"
564
+ 4. **Round 4+: Iterate** -- Continue until user says "ship it"
565
+
566
+ Rules:
567
+ - Never generate just one option in Round 1
568
+ - Each direction must be genuinely different (not three variations of the same thing)
569
+ - Always screenshot between rounds so the user can SEE the change
570
+ - Max 5 rounds before suggesting we ship (diminishing returns)
571
+
572
+ ### /mood-board -- Generate Visual Inspiration
573
+
574
+ When the user isn't sure what they want, generate a mood board:
575
+ 1. Ask for 3-5 adjectives or reference points
576
+ 2. Search the style-presets.md for matching presets
577
+ 3. Generate a single HTML file at `/tmp/picasso-moodboard.html` that shows:
578
+ - Color swatches with OKLCH values
579
+ - Font samples at different sizes
580
+ - Example component (a card, a button, a hero) in that style
581
+ - Spacing rhythm visualization
582
+ 4. Open in browser for the user to react to
583
+
584
+ ### /design-system-sync -- Auto-sync Code to DESIGN.md
585
+
586
+ Detect drift between DESIGN.md and actual code:
587
+ 1. Parse DESIGN.md tokens (colors, fonts, spacing, radius)
588
+ 2. Extract actual values used in code (via grep)
589
+ 3. Compare and produce a drift report:
590
+ - "DESIGN.md says accent is oklch(0.55 0.25 250) but code uses #3b82f6 in 7 places"
591
+ - "DESIGN.md says body font is 'Outfit' but globals.css declares 'Inter'"
592
+ 4. Offer to auto-fix all drift with a single confirmation
593
+
594
+ ### /preset <name> -- Apply Community Preset
595
+
596
+ Apply a curated design preset by name:
597
+ 1. Load from style-presets.md or a presets directory
598
+ 2. Generate `.picasso.md` + `DESIGN.md` from the preset
599
+ 3. Apply to the codebase:
600
+ - Update CSS variables / Tailwind config
601
+ - Update font imports
602
+ - Adjust component styling
603
+ 4. Available presets: linear, stripe, vercel, notion, raycast, editorial, luxury, brutalist, dark-tech, warm-saas, cyberpunk, cottage, etc.
326
604
 
327
605
  ## Advanced Automation Commands
328
606
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "picasso-skill",
3
- "version": "1.3.0",
3
+ "version": "1.3.2",
4
4
  "description": "The ultimate AI design skill for producing distinctive, production-grade frontend interfaces",
5
5
  "bin": {
6
6
  "picasso-skill": "./bin/install.mjs"
@@ -24,7 +24,28 @@ When the user says "make it premium" or "luxury feel," drop VISUAL_DENSITY to 2-
24
24
 
25
25
  ---
26
26
 
27
- ## Step 0: Read the Right References
27
+ ## Step 0: The Design Interview
28
+
29
+ Before writing any code or making any design decisions, understand what the user wants. If no `.picasso.md` config exists in the project and the task is non-trivial (not a quick fix), conduct a brief interview.
30
+
31
+ **Ask these questions conversationally (not as a form):**
32
+
33
+ 1. **What are we doing?** New build, redesign, polish, or targeted fix?
34
+ 2. **Who is this for?** The audience determines the aesthetic.
35
+ 3. **What's the vibe?** Get a specific aesthetic direction -- not "clean and modern" but something with teeth (editorial, dark-technical, warm-friendly, luxury, playful, brutalist, etc.). Ask for inspiration URLs.
36
+ 4. **What matters most?** Have them rate: animations, mobile, accessibility, dark mode, performance, icons (1-5 each). This sets DESIGN_VARIANCE, MOTION_INTENSITY, and VISUAL_DENSITY.
37
+ 5. **Any constraints?** Existing design system, brand colors, fonts, framework requirements.
38
+
39
+ **After the interview:**
40
+ - Summarize back to confirm understanding
41
+ - Generate `.picasso.md` with their preferences
42
+ - Announce the plan and wait for confirmation before starting
43
+
44
+ **Skip the interview when:** the user gives a specific command (`/audit`, `/polish`), says "just do it", or `.picasso.md` already exists.
45
+
46
+ ---
47
+
48
+ ## Step 0.5: Read the Right References
28
49
 
29
50
  Before writing any code, read the reference files relevant to the task. Each covers a domain in depth with rules, examples, and anti-patterns. Load only what you need.
30
51