picasso-skill 2.7.0 → 3.0.0
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 +118 -115
- package/agents/picasso.md +44 -17
- package/bin/install.mjs +5 -3
- package/commands/godmode.md +3 -4
- package/package.json +1 -1
- package/skills/picasso/SKILL.md +82 -21
- package/skills/picasso/references/figma-mcp.md +190 -0
- package/skills/picasso/references/ux-evaluation.md +211 -0
- package/skills/picasso/references/visual-preview.md +367 -0
- package/skills/picasso/references/animation-performance.md +0 -244
- package/skills/picasso/references/interaction-design.md +0 -162
package/README.md
CHANGED
|
@@ -5,14 +5,14 @@
|
|
|
5
5
|
</p>
|
|
6
6
|
|
|
7
7
|
<p align="center">
|
|
8
|
-
|
|
8
|
+
33 reference domains • 15 slash commands • 19,000 lines of design intelligence<br/>
|
|
9
9
|
Every interface looks like a senior design engineer spent days on it.
|
|
10
10
|
</p>
|
|
11
11
|
|
|
12
12
|
<p align="center">
|
|
13
13
|
<a href="#install">Install</a> •
|
|
14
14
|
<a href="#what-makes-picasso-different">Why Picasso</a> •
|
|
15
|
-
<a href="#
|
|
15
|
+
<a href="#visual-discovery-not-a-questionnaire">Visual Discovery</a> •
|
|
16
16
|
<a href="#creative-commands">Creative Commands</a> •
|
|
17
17
|
<a href="#benchmark">Benchmarks</a> •
|
|
18
18
|
<a href="#commands">All Commands</a> •
|
|
@@ -36,7 +36,7 @@ Existing design skills are shallow. They tell you to "use good typography" witho
|
|
|
36
36
|
|
|
37
37
|
### Depth That No Other Skill Matches
|
|
38
38
|
|
|
39
|
-
Picasso covers **
|
|
39
|
+
Picasso covers **33 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.
|
|
40
40
|
|
|
41
41
|
| Domain | What You Get |
|
|
42
42
|
|---|---|
|
|
@@ -44,7 +44,7 @@ Picasso covers **32 specialized reference domains**, each with concrete rules, s
|
|
|
44
44
|
| **Color & Contrast** | OKLCH-based palette construction, tinted neutrals (never pure gray), 60-30-10 rule, dark mode inversion rules, "alpha is a design smell" |
|
|
45
45
|
| **Spatial Design** | 4px base spacing scale, Gestalt proximity ratios (2:1 minimum), Squint Test, asymmetric grid patterns, "cards are not required" |
|
|
46
46
|
| **Motion & Animation** | Duration rule (100/200/300/500ms), only animate transform+opacity, exit = 75% of entrance, grid-template-rows for height, stagger caps |
|
|
47
|
-
| **
|
|
47
|
+
| **UX Evaluation** | Nielsen's 10 heuristics as actionable checklist, Jobs to Be Done extraction from code, component state machines (8 states), prompt enhancement for vague requests |
|
|
48
48
|
| **Responsive Design** | Input method detection (`@media pointer/hover`), safe areas, container queries, content-driven breakpoints, real device testing |
|
|
49
49
|
| **Sensory Design** | soundcn (700+ CC0 sounds), web-haptics (4 presets + custom), multi-sensory integration patterns |
|
|
50
50
|
| **React/Next.js** | Server Components by default, barrel import avoidance, RSC serialization minimization, React.cache() deduplication |
|
|
@@ -69,7 +69,7 @@ Picasso covers **32 specialized reference domains**, each with concrete rules, s
|
|
|
69
69
|
| **Micro-Interactions** | IntersectionObserver scroll animations, View Transitions API, magnetic cursors, gesture detection (swipe/pinch), animation budget (max 3 concurrent) |
|
|
70
70
|
| **i18n Visual Patterns** | Logical properties for RTL, text expansion by language (+35% German), CJK rendering, Noto font stacks, icon mirroring rules |
|
|
71
71
|
| **Brand & Identity** | Logo sizing (min 24px), clear space rules, lockup variants, 60-30-10 brand color usage, when to bend brand rules |
|
|
72
|
-
| **
|
|
72
|
+
| **Visual Preview** | Self-contained HTML preview generation, side-by-side direction comparison, preset browser grid, font URL mapping, screenshot protocol |
|
|
73
73
|
| **Code Typography** | JetBrains Mono/Fira Code selection, syntax highlighting contrast (3:1 min), code block design, copy button UX, diff views, terminal styling |
|
|
74
74
|
|
|
75
75
|
### The AI-Slop Firewall
|
|
@@ -102,33 +102,34 @@ Picasso doesn't just describe tools -- it specifies exactly how to use them with
|
|
|
102
102
|
|
|
103
103
|
---
|
|
104
104
|
|
|
105
|
-
##
|
|
105
|
+
## Visual Discovery (Not a Questionnaire)
|
|
106
106
|
|
|
107
|
-
|
|
107
|
+
Most users can't articulate what they want but can instantly react to what they see. So Picasso shows, not asks. The gallery generation is **non-negotiable** -- it cannot be collapsed into questions, text descriptions, or verbal mood boards.
|
|
108
108
|
|
|
109
109
|
```
|
|
110
|
-
Picasso
|
|
111
|
-
|
|
110
|
+
1. CRAWL Picasso agent silently reads your codebase, identifies the
|
|
111
|
+
product type, studies 2-3 real competitors in your space.
|
|
112
112
|
|
|
113
|
-
|
|
114
|
-
|
|
113
|
+
2. ASK 2-3 quick questions max: "What's the primary user action?"
|
|
114
|
+
"Any brand colors to keep?" "Site you love the look of?"
|
|
115
115
|
|
|
116
|
-
|
|
117
|
-
|
|
116
|
+
3. SHOW Generates 6-10 fast HTML sample pages, each a different
|
|
117
|
+
design direction applied to YOUR app's actual structure.
|
|
118
|
+
Screenshots each one. Opens a gallery for you to browse.
|
|
118
119
|
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
You: Animations 3, Mobile 2, A11y 5, Dark mode YES, Perf 5
|
|
120
|
+
4. REACT You: "Like 3 and 7. Hate the dark ones. 7 is close but
|
|
121
|
+
the font is too playful."
|
|
122
122
|
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
Sound good?
|
|
123
|
+
5. NARROW Generates 3-5 refined samples based on your reactions.
|
|
124
|
+
Each one more polished than round 1.
|
|
125
|
+
|
|
126
|
+
6. CONFIRM You pick a direction. Agent generates .picasso.md and
|
|
127
|
+
hands off to the skill for implementation.
|
|
129
128
|
```
|
|
130
129
|
|
|
131
|
-
|
|
130
|
+
This process runs automatically when there's no `.picasso.md` in your project. Once you've confirmed a direction, `.picasso.md` stores your tokens and future invocations skip straight to execution. Run `/picasso` to redo discovery at any time.
|
|
131
|
+
|
|
132
|
+
You never have to go look at design sites for inspiration. Picasso brings it to you. Your reactions reveal more preferences than any questionnaire.
|
|
132
133
|
|
|
133
134
|
---
|
|
134
135
|
|
|
@@ -170,19 +171,19 @@ A single 0-100 score, broken down by category. Track it over time.
|
|
|
170
171
|
|
|
171
172
|
Typography: ████████████░░░ 12/15
|
|
172
173
|
Color: ████████████░░░ 11/15
|
|
173
|
-
Spacing: ████████░░
|
|
174
|
-
|
|
175
|
-
Motion: ██████░░░░
|
|
176
|
-
Responsive: ████████░░
|
|
177
|
-
Performance: ██████░░░░
|
|
178
|
-
Anti-Slop: ██████░░░░
|
|
174
|
+
Spacing: ████████░░ 8/10
|
|
175
|
+
UX Heuristics: ████████████████ 16/20
|
|
176
|
+
Motion: ██████░░░░ 6/10
|
|
177
|
+
Responsive: ████████░░ 8/10
|
|
178
|
+
Performance: ██████░░░░ 6/10
|
|
179
|
+
Anti-Slop: ██████░░░░ 6/10
|
|
179
180
|
|
|
180
181
|
Top fixes for +15 points:
|
|
181
|
-
1.
|
|
182
|
-
2.
|
|
183
|
-
3. Add
|
|
184
|
-
4.
|
|
185
|
-
5. Replace
|
|
182
|
+
1. Replace default primary color with industry-appropriate choice (+4)
|
|
183
|
+
2. Set max-width on body text and increase to 16px (+3)
|
|
184
|
+
3. Add prefers-reduced-motion support (+3)
|
|
185
|
+
4. Replace outline:none with focus-visible (+3)
|
|
186
|
+
5. Replace #000 with tinted near-black (+2)
|
|
186
187
|
```
|
|
187
188
|
|
|
188
189
|
### `/steal <url>` -- Extract Any Site's Design DNA
|
|
@@ -205,22 +206,22 @@ Generates a complete design system -- palette, fonts, spacing, motion, component
|
|
|
205
206
|
|
|
206
207
|
### `/evolve` -- Iterative Multi-Round Refinement
|
|
207
208
|
|
|
208
|
-
|
|
209
|
+
Proposes 3 directions as visual HTML previews, lets you pick, then implements and refines through multiple rounds with screenshots between each:
|
|
209
210
|
|
|
210
211
|
```
|
|
211
|
-
Round 1:
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
212
|
+
Round 1: [generates 3 visual preview cards, screenshots them]
|
|
213
|
+
A) Counsel -- sage/teal, serif headers, 8px radius
|
|
214
|
+
B) Chambers -- dark, amber accent, monospace, 3px sharp
|
|
215
|
+
C) Parchment -- warm cream, terracotta, italic serif
|
|
215
216
|
|
|
216
|
-
You: B, but
|
|
217
|
+
You: B, but less extreme
|
|
217
218
|
|
|
218
|
-
Round 2: [implements B with
|
|
219
|
+
Round 2: [implements B with adjustments, screenshots running app]
|
|
219
220
|
What do you love? What's not right?
|
|
220
221
|
|
|
221
222
|
You: Love the typography. Cards need more breathing room.
|
|
222
223
|
|
|
223
|
-
Round 3: [adjusts spacing, screenshots]
|
|
224
|
+
Round 3: [adjusts spacing, screenshots again]
|
|
224
225
|
Are we there?
|
|
225
226
|
|
|
226
227
|
You: Ship it.
|
|
@@ -250,19 +251,16 @@ Fix this and you pull ahead significantly.
|
|
|
250
251
|
|
|
251
252
|
### `/before-after` -- Visual Transformation Report
|
|
252
253
|
|
|
253
|
-
After any
|
|
254
|
+
After any design changes, auto-generates side-by-side screenshots showing exactly what changed and why. Shareable HTML report.
|
|
254
255
|
|
|
255
256
|
### `/preset <name>` -- One-Command Aesthetic
|
|
256
257
|
|
|
257
258
|
```bash
|
|
258
|
-
/preset
|
|
259
|
-
/preset
|
|
260
|
-
/preset vercel # Vercel-inspired black/white sharp
|
|
261
|
-
/preset notion # Notion-inspired warm readable
|
|
262
|
-
/preset brutalist # Raw, intentional, monospace
|
|
259
|
+
/preset # Visual browser grid of all 22 presets -- pick one
|
|
260
|
+
/preset bold-signal # Preview Bold Signal, then apply it
|
|
263
261
|
```
|
|
264
262
|
|
|
265
|
-
Generates `.picasso.md` + `DESIGN.md` + updates
|
|
263
|
+
Without args: generates a visual grid showing all 22 presets with swatches, fonts, and sample buttons. Pick visually. With a name: shows a full-page preview before applying. Generates `.picasso.md` + `DESIGN.md` + updates CSS variables.
|
|
266
264
|
|
|
267
265
|
---
|
|
268
266
|
|
|
@@ -274,10 +272,10 @@ We compared Picasso against every publicly available AI design skill as of April
|
|
|
274
272
|
|
|
275
273
|
| Metric | Picasso | Anthropic frontend-design | Impeccable | Taste Skill | Generic skills |
|
|
276
274
|
|---|---|---|---|---|---|
|
|
277
|
-
| **Reference domains** | **
|
|
278
|
-
| **Total lines of guidance** | **
|
|
275
|
+
| **Reference domains** | **33** | 1 | 7 | 1 | 1-3 |
|
|
276
|
+
| **Total lines of guidance** | **19,000** | ~120 | ~2,500 | ~200 | 50-300 |
|
|
279
277
|
| **Anti-pattern rules** | **50+** | ~10 | ~30 | ~5 | 0-5 |
|
|
280
|
-
| **
|
|
278
|
+
| **Slash commands** | **15** | 0 | 20 | 0 | 0-3 |
|
|
281
279
|
| **ARIA patterns documented** | **12 widgets** | 0 | 0 | 0 | 0 |
|
|
282
280
|
| **React performance rules** | **45 (Vercel)** | 0 | 0 | 0 | 0 |
|
|
283
281
|
| **Chart/data viz guidance** | **Full matrix** | None | None | None | None |
|
|
@@ -290,8 +288,8 @@ We compared Picasso against every publicly available AI design skill as of April
|
|
|
290
288
|
| **Design system generation** | **9-section (Stitch)** | None | None | None | None |
|
|
291
289
|
| **Sound/haptics** | **soundcn + web-haptics** | None | None | None | None |
|
|
292
290
|
| **Scoring system** | **0-100 quantified** | None | /20 + /40 | None | None |
|
|
293
|
-
| **
|
|
294
|
-
| **Creative commands** | **
|
|
291
|
+
| **Visual discovery** | **6-10 HTML gallery + reaction loop** | None | None | None | None |
|
|
292
|
+
| **Creative commands** | **15 (/roast, /score, /godmode, /steal, /evolve, /mood, /compete, /variants, /preset, /before-after, /figma, /preview, /backlog, /quick-audit, /autorefine)** | None | None | None | None |
|
|
295
293
|
| **Tool integrations** | **7 libraries** | 0 | 0 | 0 | 0 |
|
|
296
294
|
| **Sources consolidated** | **15+ repos** | 1 | 1 | 1 | 0-1 |
|
|
297
295
|
|
|
@@ -380,21 +378,39 @@ Upload `SKILL.md` as a Custom Skill in Claude.ai settings. Upload reference file
|
|
|
380
378
|
|
|
381
379
|
---
|
|
382
380
|
|
|
383
|
-
## Skill + Agent
|
|
381
|
+
## Skill + Agent: A Unified Pipeline
|
|
382
|
+
|
|
383
|
+
Picasso ships as both a **skill** (design knowledge + execution framework) and an **agent** (autonomous discovery + validation). They are NOT alternatives -- they are sequential phases of the same pipeline.
|
|
384
384
|
|
|
385
|
-
|
|
385
|
+
```
|
|
386
|
+
User asks for design work
|
|
387
|
+
-> Skill loads, checks for .picasso.md
|
|
388
|
+
-> No .picasso.md? BLOCK. Spawn Picasso agent.
|
|
389
|
+
-> Agent crawls codebase silently
|
|
390
|
+
-> Agent asks 2-3 questions max
|
|
391
|
+
-> Agent generates 6-10 HTML sample pages to /tmp/picasso-gallery/
|
|
392
|
+
-> Agent screenshots gallery, presents to user
|
|
393
|
+
-> User reacts (like/hate/adjust)
|
|
394
|
+
-> Agent narrows to 3-5 refined samples
|
|
395
|
+
-> User picks direction
|
|
396
|
+
-> Agent generates .picasso.md
|
|
397
|
+
-> Control returns to skill for execution
|
|
398
|
+
-> Skill runs anti-slop gate, references, design thinking, code
|
|
399
|
+
-> Agent re-spawned for post-execution screenshot validation
|
|
400
|
+
```
|
|
386
401
|
|
|
387
|
-
| | Skill | Agent |
|
|
402
|
+
| | Skill (Execution) | Agent (Discovery + Validation) |
|
|
388
403
|
|---|---|---|
|
|
389
|
-
| **What it is** |
|
|
390
|
-
| **How it works** | Loaded into context
|
|
391
|
-
| **When it runs** |
|
|
392
|
-
| **
|
|
393
|
-
| **Can
|
|
394
|
-
| **Can
|
|
404
|
+
| **What it is** | 33 reference files + anti-slop gate + implementation standards | Autonomous design engineer with visual discovery |
|
|
405
|
+
| **How it works** | Loaded into context for design execution | Runs as a sub-process with its own dedicated context |
|
|
406
|
+
| **When it runs** | After `.picasso.md` exists, for all design code work | First invocation (no `.picasso.md`), slash commands, validation |
|
|
407
|
+
| **Owns** | References, anti-slop gate, design thinking, code standards | Visual discovery gallery, screenshots, direction confirmation |
|
|
408
|
+
| **Can screenshot** | No | Yes (via `npx playwright screenshot`) |
|
|
409
|
+
| **Can generate gallery** | No | Yes (6-10 HTML sample pages) |
|
|
395
410
|
| **Can auto-fix issues** | No | Yes (with pre-flight git/test checks) |
|
|
396
|
-
| **
|
|
397
|
-
|
|
411
|
+
| **Enforces anti-slop gate** | Yes, before any code | Yes, mandatory before any generation |
|
|
412
|
+
|
|
413
|
+
**Neither works alone on design-level tasks.** Discovery (agent) then execution (skill) then validation (agent).
|
|
398
414
|
|
|
399
415
|
---
|
|
400
416
|
|
|
@@ -419,7 +435,9 @@ These have dedicated command files and can be invoked directly.
|
|
|
419
435
|
| `/compete <url>` | Head-to-head design comparison against a competitor site |
|
|
420
436
|
| `/before-after` | Visual side-by-side comparison after changes with HTML report |
|
|
421
437
|
| `/preset <name>` | Apply a curated community design preset (linear, stripe, vercel, notion, etc.) |
|
|
422
|
-
| `/variants` | Generate 2-3 distinct visual directions
|
|
438
|
+
| `/variants` | Generate 2-3 distinct visual directions with side-by-side visual HTML previews |
|
|
439
|
+
| `/preview` | Visual preview of design tokens, presets, or side-by-side direction comparison |
|
|
440
|
+
| `/figma` | Figma MCP integration: extract design tokens, audit, compare Figma vs live |
|
|
423
441
|
| `/backlog` | Create persistent design debt backlog with impact-priority scoring in `.picasso-backlog.md` |
|
|
424
442
|
|
|
425
443
|
### `/godmode` -- The Nuclear Option
|
|
@@ -443,70 +461,55 @@ GODMODE Complete: 42 → 87 (+45 points), 47 files modified, 23 issues fixed
|
|
|
443
461
|
|
|
444
462
|
### Agent Behaviors (Internal)
|
|
445
463
|
|
|
446
|
-
These are defined in the Picasso agent
|
|
464
|
+
These are capabilities defined in the Picasso agent that run as part of pipelines (e.g., `/godmode` calls several internally). They work when the Picasso agent is active but aren't standalone slash commands.
|
|
447
465
|
|
|
448
466
|
| Behavior | What It Does |
|
|
449
467
|
|---|---|
|
|
450
|
-
|
|
|
451
|
-
|
|
|
452
|
-
|
|
|
453
|
-
|
|
|
454
|
-
|
|
|
455
|
-
|
|
|
456
|
-
| `/animate` | Add purposeful motion: staggered reveals, hover states, scroll-triggered animations |
|
|
457
|
-
| `/bolder` | Amplify timid designs: increase contrast, enlarge type, strengthen hierarchy |
|
|
458
|
-
| `/quieter` | Tone down aggressive designs: reduce saturation, soften shadows, increase whitespace |
|
|
459
|
-
| `/normalize` | Align with design system: replace hardcoded values with tokens |
|
|
460
|
-
| `/harden` | Add error handling, loading states, empty states, edge case handling |
|
|
461
|
-
| `/theme` | Generate or apply a theme via DESIGN.md |
|
|
462
|
-
| `/stitch` | Generate a complete DESIGN.md from the current codebase |
|
|
463
|
-
| `/a11y` | Full accessibility audit: axe-core + pa11y + Lighthouse with JSON parsing |
|
|
464
|
-
| `/perf` | Lighthouse performance audit with Core Web Vitals pass/fail thresholds |
|
|
465
|
-
| `/visual-diff` | Screenshot desktop + mobile in light/dark mode, analyze visually |
|
|
466
|
-
| `/consistency` | Multi-page consistency check across all routes |
|
|
467
|
-
| `/lint-design` | Find hardcoded colors, spacing violations, font inconsistencies, z-index chaos |
|
|
468
|
-
| `/mood-board` | Generate visual inspiration HTML from adjectives |
|
|
469
|
-
| `/design-system-sync` | Detect and fix drift between DESIGN.md and code |
|
|
470
|
-
| `/install-hooks` | Generate git pre-commit hook for automated design checks |
|
|
471
|
-
| `/ci-setup` | Generate GitHub Actions workflow for PR design review with scores |
|
|
468
|
+
| Visual Discovery | Crawl codebase, generate HTML gallery, collect reactions, confirm direction, write `.picasso.md` |
|
|
469
|
+
| Design Audit | Full technical audit across typography, color, spacing, UX heuristics, motion, responsive |
|
|
470
|
+
| Auto-Fix | Fix audit findings with smallest safe changes, re-audit to verify |
|
|
471
|
+
| Screenshot Validation | Take and view screenshots between every major edit to verify output |
|
|
472
|
+
| Anti-Slop Gate | Mandatory pre-code checklist: font, color, layout, differentiation commitments |
|
|
473
|
+
| Competitor Research | Study 2-3 real competitors in the same domain before any redesign |
|
|
472
474
|
|
|
473
475
|
---
|
|
474
476
|
|
|
475
477
|
## References
|
|
476
478
|
|
|
477
479
|
```
|
|
478
|
-
references/ #
|
|
480
|
+
references/ # 33 files, 7,000 lines
|
|
479
481
|
anti-patterns.md # 50+ banned patterns (THE MOST IMPORTANT FILE)
|
|
480
|
-
typography.md # Type systems, font pairing, scales,
|
|
481
|
-
color-and-contrast.md # OKLCH, tinted neutrals, dark mode, 60-30-10
|
|
482
|
+
typography.md # Type systems, font pairing, scales, vertical rhythm
|
|
483
|
+
color-and-contrast.md # OKLCH, tinted neutrals, dark mode, 60-30-10
|
|
482
484
|
spatial-design.md # 4px spacing scale, grids, hierarchy, Squint Test
|
|
483
|
-
depth-and-elevation.md #
|
|
484
|
-
motion-and-animation.md # Duration
|
|
485
|
-
micro-interactions.md # Scroll animations, View Transitions, gestures,
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
react-patterns.md # Server Components, composition, state management, styling
|
|
499
|
-
design-system.md # 9-section DESIGN.md format, theme generation, tokens
|
|
485
|
+
depth-and-elevation.md # Shadows, layering, z-index, hover patterns
|
|
486
|
+
motion-and-animation.md # Duration, easing, staggering, performance (merged)
|
|
487
|
+
micro-interactions.md # Scroll animations, View Transitions, gestures, cursors
|
|
488
|
+
navigation-patterns.md # Breadcrumbs, sidebar, tabs, bottom bar, mega menus
|
|
489
|
+
tables-and-forms.md # Sortable tables, inline editing, validation
|
|
490
|
+
loading-and-states.md # Skeletons, error boundaries, empty states, offline
|
|
491
|
+
responsive-design.md # Input method detection, container queries
|
|
492
|
+
dark-mode.md # Preference hierarchy, elevation, transitions
|
|
493
|
+
images-and-media.md # Format selection, srcset, favicons, OG images
|
|
494
|
+
brand-and-identity.md # Logo sizing, brand color, lockup variants
|
|
495
|
+
i18n-visual-patterns.md # RTL, logical properties, text expansion, CJK
|
|
496
|
+
code-typography.md # Monospace fonts, syntax highlighting, code blocks
|
|
497
|
+
sensory-design.md # useSound hook, haptic patterns, multi-sensory
|
|
498
|
+
react-patterns.md # Server Components, composition, Tailwind v4
|
|
499
|
+
design-system.md # DESIGN.md format, theme generation, tokens
|
|
500
500
|
generative-art.md # Philosophy-first process, p5.js, seeded randomness
|
|
501
501
|
component-patterns.md # 40+ components, state matrix, compound patterns
|
|
502
|
-
ux-psychology.md # Gestalt, Fitts's/Hick's/Miller's/Jakob's Law
|
|
503
|
-
ux-writing.md # Error formula, button labels,
|
|
502
|
+
ux-psychology.md # Gestalt, Fitts's/Hick's/Miller's/Jakob's Law
|
|
503
|
+
ux-writing.md # Error formula, button labels, terminology
|
|
504
|
+
ux-evaluation.md # Nielsen's 10 heuristics, JTBD, state machines
|
|
504
505
|
data-visualization.md # Chart selection matrix, dashboard layouts, Tufte
|
|
505
|
-
conversion-design.md # Landing pages, CTAs, pricing, onboarding
|
|
506
|
-
accessibility-wcag.md #
|
|
506
|
+
conversion-design.md # Landing pages, CTAs, pricing, onboarding
|
|
507
|
+
accessibility-wcag.md # ARIA patterns, WCAG 2.2, focus management
|
|
507
508
|
modern-css-performance.md # Nesting, :has(), @layer, View Transitions, Tailwind v4
|
|
508
|
-
performance-optimization.md #
|
|
509
|
-
style-presets.md # 22 visual presets with
|
|
509
|
+
performance-optimization.md # Core Web Vitals, priority tiers
|
|
510
|
+
style-presets.md # 22 visual presets with values and font pairings
|
|
511
|
+
visual-preview.md # HTML preview generation, templates, font mapping
|
|
512
|
+
figma-mcp.md # Figma MCP workflows, token extraction
|
|
510
513
|
tools-catalog.md # torph, soundcn, Lucide, Facehash, better-icons
|
|
511
514
|
```
|
|
512
515
|
|
package/agents/picasso.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: picasso
|
|
3
|
-
description: "Senior design engineer agent that
|
|
3
|
+
description: "Senior design engineer agent that owns visual discovery and design validation. Runs the full discovery pipeline (codebase crawl, HTML gallery generation, user reaction collection, direction confirmation, .picasso.md generation). Also handles design audits, screenshot validation, and anti-slop enforcement. Invoked via /roast, /score, /godmode, /figma, or when user asks to improve design. Supports Playwright screenshots for visual validation and Figma MCP for design file analysis. 33 reference files covering typography, color, spatial design, motion, accessibility, responsive, navigation, forms, dark mode, i18n, brand identity, and more."
|
|
4
4
|
tools: ["Read", "Write", "Edit", "Bash", "Grep", "Glob", "mcp__figma__get_file", "mcp__figma__get_node", "mcp__figma__get_styles", "mcp__figma__get_components", "mcp__figma__get_image", "mcp__talk_to_figma"]
|
|
5
5
|
model: opus
|
|
6
6
|
---
|
|
@@ -9,8 +9,19 @@ model: opus
|
|
|
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
|
|
13
|
-
|
|
12
|
+
## How You Work With the Picasso Skill
|
|
13
|
+
|
|
14
|
+
The Picasso **skill** (SKILL.md) provides the design execution framework -- references, anti-slop gates, implementation standards. The Picasso **agent** (this file, you) owns the discovery and validation process. They work together:
|
|
15
|
+
|
|
16
|
+
1. **The skill gates on you.** Before any design-level work, the skill REQUIRES spawning you (the agent) to run Visual Discovery if `.picasso.md` doesn't exist. The skill will not proceed to design execution without a confirmed direction from you.
|
|
17
|
+
2. **You gate on the skill.** After discovery completes and `.picasso.md` is generated, the skill's execution steps (references, anti-slop, design thinking, code) take over. Your Phase 0b anti-slop gate and the skill's Step 0.5 anti-slop gate are the same process -- run it once, not twice.
|
|
18
|
+
3. **You validate the skill's output.** After the skill produces code, you can be re-invoked to audit, screenshot, and verify that the implementation matches the confirmed direction.
|
|
19
|
+
|
|
20
|
+
**Neither the skill nor the agent should ever work alone on design-level tasks.** Discovery (agent) then execution (skill) then validation (agent). This is the full pipeline.
|
|
21
|
+
|
|
22
|
+
## Modes
|
|
23
|
+
|
|
24
|
+
1. **Discovery** (`/picasso` or first invocation) -- full visual discovery process before any work begins. MANDATORY when no `.picasso.md` exists.
|
|
14
25
|
2. **Reactive** (invoked explicitly for audits, critiques, or fixes)
|
|
15
26
|
3. **Proactive** (triggered automatically after frontend code changes)
|
|
16
27
|
|
|
@@ -33,11 +44,11 @@ These rules are NON-NEGOTIABLE and override everything else. Violating them prod
|
|
|
33
44
|
|
|
34
45
|
---
|
|
35
46
|
|
|
36
|
-
## Phase 0: The Visual Discovery Process (
|
|
47
|
+
## Phase 0: The Visual Discovery Process (MANDATORY)
|
|
37
48
|
|
|
38
|
-
When Picasso is invoked
|
|
49
|
+
When Picasso is invoked and no `.picasso.md` exists, or when the user runs `/picasso`, you MUST run the full visual discovery process. No exceptions. No shortcuts. No collapsing steps. Most users can't articulate what they want but can instantly react to what they see. So: show, don't ask.
|
|
39
50
|
|
|
40
|
-
|
|
51
|
+
**The only bypass:** The user says "just fix [one specific element]" (e.g., "fix the button color on line 42"). Targeted single-element fixes skip discovery. Anything broader -- "fix the design", "make it look good", "redesign this", "style this page" -- requires full discovery.
|
|
41
52
|
|
|
42
53
|
### The Core Principle
|
|
43
54
|
|
|
@@ -66,26 +77,38 @@ Ask only what you can't determine from the code:
|
|
|
66
77
|
|
|
67
78
|
That's it. Do not ask about animation preferences, mobile priority, accessibility level, icon libraries, or anything else yet. Get to visuals as fast as possible.
|
|
68
79
|
|
|
69
|
-
### Step 3: Generate the Sample Gallery (THE KEY STEP)
|
|
80
|
+
### Step 3: Generate the Sample Gallery (THE KEY STEP -- NON-NEGOTIABLE)
|
|
81
|
+
|
|
82
|
+
This is what makes Picasso different from every other design tool. You MUST generate actual HTML files. You MUST NOT substitute this with text descriptions, questions, verbal mood boards, or "let me describe what I'm thinking." The user needs to SEE options, not READ about them.
|
|
70
83
|
|
|
71
|
-
|
|
84
|
+
**HARD RULE: If you reach this step and do not generate at least 6 HTML files, you have failed. There is no valid reason to skip this. Not time, not complexity, not "the user seems to know what they want." Generate the gallery.**
|
|
85
|
+
|
|
86
|
+
Generate a gallery of **6-10 fast, diverse sample pages** showing different design directions applied to THIS project's actual content/structure.
|
|
72
87
|
|
|
73
88
|
1. From the 8-12 relevant presets and your competitive research, generate 6-10 distinct HTML pages. Each one is a quick, self-contained page showing:
|
|
74
89
|
- The app's actual nav structure (from the codebase)
|
|
75
90
|
- A representative content area (dashboard, listing, form -- whatever the app's primary screen is)
|
|
76
91
|
- Styled with a different design direction (different font, color, layout, radius, density)
|
|
92
|
+
- Each sample MUST be visually distinct from every other sample. If two samples look similar, replace one.
|
|
77
93
|
|
|
78
94
|
2. Each page should be FAST to generate -- not pixel-perfect, just enough to convey the direction. Think 30 seconds per page, not 5 minutes. Use the templates from `references/visual-preview.md` but vary them significantly. The goal is VOLUME and DIVERSITY, not polish.
|
|
79
95
|
|
|
80
96
|
3. Number each sample (1-10) so the user can reference them easily.
|
|
81
97
|
|
|
82
|
-
4. Write all samples to `/tmp/picasso-gallery/sample-{N}.html` (create the directory).
|
|
98
|
+
4. Write all samples to `/tmp/picasso-gallery/sample-{N}.html` (create the directory via `mkdir -p /tmp/picasso-gallery`).
|
|
83
99
|
|
|
84
100
|
5. Also generate a single `/tmp/picasso-gallery/index.html` that shows a thumbnail grid of all samples -- each as a small card (200px wide) with the sample number and the key differentiator (font name + primary color + one-word mood).
|
|
85
101
|
|
|
86
|
-
6. Screenshot via Bash: `npx playwright screenshot /tmp/picasso-gallery/index.html /tmp/picasso-gallery.png --viewport-size=1200,800`.
|
|
102
|
+
6. Screenshot via Bash: `npx playwright screenshot /tmp/picasso-gallery/index.html /tmp/picasso-gallery.png --viewport-size=1200,800`. Then VIEW the screenshot: `Read /tmp/picasso-gallery.png`. Taking without viewing is the same as not taking one.
|
|
103
|
+
|
|
104
|
+
7. Also screenshot each individual sample for the user to browse inline:
|
|
105
|
+
```bash
|
|
106
|
+
for i in $(seq 1 N); do npx playwright screenshot /tmp/picasso-gallery/sample-$i.html /tmp/picasso-gallery/sample-$i.png --viewport-size=1200,800; done
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
8. Present: "Here are {N} directions for your app. React to what you see -- which ones do you like? Which do you hate? Anything close but needs tweaking? You can also open `/tmp/picasso-gallery/index.html` in your browser to browse them all."
|
|
87
110
|
|
|
88
|
-
|
|
111
|
+
9. **STOP AND WAIT.** Do not proceed until the user reacts. Do not assume preferences. Do not pre-select a direction. The user's job is to react, your job is to show.
|
|
89
112
|
|
|
90
113
|
### Step 4: Collect Reactions
|
|
91
114
|
|
|
@@ -180,13 +203,17 @@ After the user confirms the brief, load the SPECIFIC reference files for what th
|
|
|
180
203
|
|
|
181
204
|
Then ACTUALLY READ those files before writing code. Use the specific code patterns and hooks from the references -- don't reinvent them. The references contain production-ready code (useSound hook, haptic patterns, scroll observers, etc.).
|
|
182
205
|
|
|
183
|
-
### Skipping the
|
|
206
|
+
### Skipping the Visual Discovery Process
|
|
207
|
+
|
|
208
|
+
The visual discovery process (Phase 0, Steps 1-6) is skipped ONLY when:
|
|
209
|
+
- `.picasso.md` already exists AND the user is working within the established direction
|
|
210
|
+
- User runs a pure audit command that generates no code (`/audit`, `/score`, `/quick-audit`, `/roast`)
|
|
211
|
+
- User asks to fix ONE specific element ("fix the button on line 42") -- not design-level work
|
|
212
|
+
- Proactive mode (triggered by file changes) -- audit only, no generation
|
|
213
|
+
|
|
214
|
+
**"Just do it" and "skip the interview" do NOT skip discovery.** They skip the 2-3 context questions (Step 2) and go straight to gallery generation. The user still sees visual samples and still reacts. The gallery is not part of the interview -- it IS the process. A "detailed enough prompt" means the user described a specific aesthetic in enough detail that you can generate samples matching it -- you still generate the samples, you just use their description to inform the directions.
|
|
184
215
|
|
|
185
|
-
|
|
186
|
-
- `.picasso.md` already exists (preferences are loaded from it)
|
|
187
|
-
- User runs a specific command (`/audit`, `/polish`, `/a11y`, etc.) -- execute directly
|
|
188
|
-
- User says "just do it" or "skip the interview" or provides a detailed enough prompt
|
|
189
|
-
- Proactive mode (triggered by file changes) -- never interview, just audit
|
|
216
|
+
**NEVER skip the gallery for design-level work.** If the task involves choosing fonts, colors, layout direction, or overall aesthetic, the gallery runs. Period.
|
|
190
217
|
|
|
191
218
|
**CRITICAL: Even when the interview is skipped, Phase 0b (Anti-Slop Gate) MUST still run for any design generation task.** The interview captures preferences. The gate ensures quality. They are independent. Skipping one does not skip the other. The only commands that bypass BOTH are pure audit commands (`/audit`, `/score`, `/quick-audit`, `/roast`) which do not generate code.
|
|
192
219
|
|
package/bin/install.mjs
CHANGED
|
@@ -29,8 +29,8 @@ if (command === "help" || command === "--help" || command === "-h") {
|
|
|
29
29
|
npx picasso-skill --path DIR Install to a custom directory
|
|
30
30
|
|
|
31
31
|
What gets installed:
|
|
32
|
-
.claude/skills/picasso/ Skill (knowledge base:
|
|
33
|
-
.claude/agents/picasso.md Agent (
|
|
32
|
+
.claude/skills/picasso/ Skill (knowledge base: 33 reference files)
|
|
33
|
+
.claude/agents/picasso.md Agent (visual discovery + design validation)
|
|
34
34
|
`);
|
|
35
35
|
process.exit(0);
|
|
36
36
|
}
|
|
@@ -127,7 +127,9 @@ try {
|
|
|
127
127
|
console.log(`\n Picasso is ready. Start designing.\n`);
|
|
128
128
|
|
|
129
129
|
if (agentDir) {
|
|
130
|
-
console.log(`
|
|
130
|
+
console.log(` 15 commands: /godmode /roast /score /mood /evolve /steal /compete`);
|
|
131
|
+
console.log(` /variants /preset /preview /figma /backlog /autorefine`);
|
|
132
|
+
console.log(` /quick-audit /before-after\n`);
|
|
131
133
|
}
|
|
132
134
|
} catch (err) {
|
|
133
135
|
console.error(` Error installing: ${err.message}`);
|
package/commands/godmode.md
CHANGED
|
@@ -14,10 +14,9 @@ Phase 2: ASSESS
|
|
|
14
14
|
- Take BEFORE screenshots (desktop + mobile) and VIEW them with the Read tool.
|
|
15
15
|
- Run /score to establish the BEFORE score (0-100 with category breakdown).
|
|
16
16
|
- Run /roast for the brutally honest assessment (must be based on screenshots, not code guessing).
|
|
17
|
-
- Run
|
|
18
|
-
- Run
|
|
19
|
-
-
|
|
20
|
-
- Run /lint-design (find hardcoded colors, spacing violations, font inconsistencies).
|
|
17
|
+
- Run the full Phase 2 design audit from the agent definition (typography, color, spacing, layout, a11y, contrast, motion, responsive, interaction).
|
|
18
|
+
- Run axe-core accessibility check if dev server is available: `npx axe-cli http://localhost:PORT --exit 2>/dev/null || true`
|
|
19
|
+
- Grep for hardcoded colors, spacing violations, font inconsistencies, transition:all, outline:none.
|
|
21
20
|
|
|
22
21
|
Phase 3: PLAN
|
|
23
22
|
- Compile all findings into a prioritized fix list (Critical -> High -> Medium -> Low).
|