picasso-skill 1.3.2 → 1.3.4
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 +20 -0
- package/agents/picasso.md +82 -0
- package/bin/install.mjs +16 -2
- package/commands/before-after.md +9 -0
- package/commands/compete.md +12 -0
- package/commands/evolve.md +23 -0
- package/commands/godmode.md +36 -0
- package/commands/mood.md +17 -0
- package/commands/preset.md +14 -0
- package/commands/roast.md +24 -0
- package/commands/score.md +15 -0
- package/commands/steal.md +12 -0
- package/package.json +2 -1
package/README.md
CHANGED
|
@@ -445,10 +445,30 @@ Picasso ships as both a **skill** (knowledge base) and an **agent** (autonomous
|
|
|
445
445
|
| `/harden` | Error handling and edge cases: text overflow, i18n (RTL, expansion), network errors, empty/loading/error states, browser compat |
|
|
446
446
|
| `/onboard` | Design onboarding: signup friction reduction, first-run experience, progressive feature discovery, setup checklists |
|
|
447
447
|
|
|
448
|
+
### `/godmode` -- The Nuclear Option
|
|
449
|
+
|
|
450
|
+
One command. Full transformation. Interview, audit, score, roast, fix everything, verify, before/after report.
|
|
451
|
+
|
|
452
|
+
```
|
|
453
|
+
/godmode
|
|
454
|
+
|
|
455
|
+
Phase 1: Understanding your project...
|
|
456
|
+
Phase 2: Scoring... 42/100. Roasting... 🔥🔥🔥🔥
|
|
457
|
+
Phase 3: Found 23 issues. Fixing all = score ~85. Proceed? [y]
|
|
458
|
+
Phase 4: Fixing... typography ✓ color ✓ spacing ✓ a11y ✓ motion ✓ responsive ✓ perf ✓
|
|
459
|
+
Phase 5: Re-scoring... 87/100 (+45 points)
|
|
460
|
+
Phase 6: Before/after report generated.
|
|
461
|
+
|
|
462
|
+
GODMODE Complete: 42 → 87 (+45 points), 47 files modified, 23 issues fixed
|
|
463
|
+
```
|
|
464
|
+
|
|
465
|
+
---
|
|
466
|
+
|
|
448
467
|
### Creative
|
|
449
468
|
|
|
450
469
|
| Command | What It Does |
|
|
451
470
|
|---|---|
|
|
471
|
+
| `/godmode` | The ultimate command: interview + audit + score + roast + fix everything + before/after report |
|
|
452
472
|
| `/picasso` | Run the design interview -- deep discovery conversation, generates `.picasso.md` config |
|
|
453
473
|
| `/roast` | Brutally honest critique with designer-Twitter energy. Every roast includes the fix. Rated 🔥-🔥🔥🔥🔥🔥. |
|
|
454
474
|
| `/score` | Quantified 0-100 design score with category breakdown (typography, color, spacing, a11y, motion, responsive, perf, anti-slop) |
|
package/agents/picasso.md
CHANGED
|
@@ -427,6 +427,88 @@ When the user invokes these commands, execute the corresponding workflow:
|
|
|
427
427
|
| `/mood-board` | Generate visual inspiration HTML from adjectives |
|
|
428
428
|
| `/design-system-sync` | Detect and fix drift between DESIGN.md and code |
|
|
429
429
|
| `/preset <name>` | Apply a curated community design preset |
|
|
430
|
+
| `/godmode` | The ultimate command: interview + audit + score + roast + fix everything + before/after report |
|
|
431
|
+
|
|
432
|
+
## /godmode -- The Ultimate Design Transformation
|
|
433
|
+
|
|
434
|
+
`/godmode` is the nuclear option. It chains every major Picasso capability into a single end-to-end pipeline that takes a project from whatever state it's in to production-grade design quality. No shortcuts, no skipping steps.
|
|
435
|
+
|
|
436
|
+
### The Pipeline (executed in order)
|
|
437
|
+
|
|
438
|
+
**Phase 1: Understand**
|
|
439
|
+
1. Run the **design interview** (Section 1-4) if no `.picasso.md` exists. If it exists, load it.
|
|
440
|
+
2. **Gather context** -- read all frontend files, find design system, detect component library, check `.picasso.md`.
|
|
441
|
+
|
|
442
|
+
**Phase 2: Assess**
|
|
443
|
+
3. Run `/score` -- establish the **before score** (0-100). Save it.
|
|
444
|
+
4. Run `/roast` -- get the brutally honest assessment. Show it to the user.
|
|
445
|
+
5. Run `/audit` -- full 5-phase technical audit with severity-ranked findings.
|
|
446
|
+
6. Run `/a11y` -- axe-core + pa11y + Lighthouse accessibility.
|
|
447
|
+
7. Run `/perf` -- Lighthouse performance with Core Web Vitals.
|
|
448
|
+
8. Run `/lint-design` -- find all design token violations.
|
|
449
|
+
9. Run `/consistency` -- check all pages match each other.
|
|
450
|
+
10. Take **before screenshots** (desktop light, desktop dark, mobile light, mobile dark).
|
|
451
|
+
|
|
452
|
+
**Phase 3: Plan**
|
|
453
|
+
11. Compile all findings into a prioritized fix list, grouped by impact:
|
|
454
|
+
- **Critical** (score impact: +10-20): a11y violations, anti-slop fingerprints, broken responsive
|
|
455
|
+
- **High** (score impact: +5-10): typography issues, color problems, spacing inconsistencies
|
|
456
|
+
- **Medium** (score impact: +2-5): motion improvements, interaction state gaps, performance
|
|
457
|
+
- **Low** (score impact: +1-2): polish items, micro-interactions, copy improvements
|
|
458
|
+
12. Present the plan to the user: "Here are 23 issues. Fixing all of them will take your score from 42 to ~85. Shall I proceed?"
|
|
459
|
+
13. **Wait for confirmation.** Never proceed without a "go."
|
|
460
|
+
|
|
461
|
+
**Phase 4: Fix**
|
|
462
|
+
14. Execute fixes in priority order (Critical -> High -> Medium -> Low):
|
|
463
|
+
- Typography: replace banned fonts, fix type scale, set max-width, correct line-heights
|
|
464
|
+
- Color: replace pure black/gray, tint neutrals, fix contrast ratios, apply 60-30-10
|
|
465
|
+
- Spacing: normalize to 4px scale, fix Gestalt grouping, add breathing room
|
|
466
|
+
- Layout: break uniform card grids, add spatial surprises, vary section rhythm
|
|
467
|
+
- Motion: add staggered entrance, fix transition:all, add reduced-motion support
|
|
468
|
+
- Accessibility: fix axe violations, add focus-visible, add ARIA, fix semantic HTML
|
|
469
|
+
- Interaction: add all 8 states, fix form labels, add loading/empty/error states
|
|
470
|
+
- Performance: add lazy loading, set image dimensions, optimize font loading
|
|
471
|
+
- Copy: replace generic headlines, fix button labels, improve error messages
|
|
472
|
+
15. After each category, re-run the relevant checks to verify the fix worked.
|
|
473
|
+
|
|
474
|
+
**Phase 5: Verify**
|
|
475
|
+
16. Run `/score` again -- establish the **after score**.
|
|
476
|
+
17. Take **after screenshots** (same 4 viewports).
|
|
477
|
+
18. Run `/before-after` -- generate the visual comparison report.
|
|
478
|
+
19. Run `/a11y` and `/perf` again to confirm improvements.
|
|
479
|
+
|
|
480
|
+
**Phase 6: Report**
|
|
481
|
+
20. Present the final report:
|
|
482
|
+
|
|
483
|
+
```
|
|
484
|
+
## GODMODE Complete
|
|
485
|
+
|
|
486
|
+
Before: 42/100 → After: 87/100 (+45 points)
|
|
487
|
+
|
|
488
|
+
Typography: 6/15 → 14/15 (+8)
|
|
489
|
+
Color: 5/15 → 13/15 (+8)
|
|
490
|
+
Spacing: 4/10 → 9/10 (+5)
|
|
491
|
+
Accessibility: 8/20 → 19/20 (+11)
|
|
492
|
+
Motion: 3/10 → 8/10 (+5)
|
|
493
|
+
Responsive: 6/10 → 9/10 (+3)
|
|
494
|
+
Performance: 5/10 → 8/10 (+3)
|
|
495
|
+
Anti-Slop: 5/10 → 7/10 (+2)
|
|
496
|
+
|
|
497
|
+
Changes made: 47 files modified
|
|
498
|
+
Issues fixed: 23 (8 critical, 7 high, 5 medium, 3 low)
|
|
499
|
+
Time: ~12 minutes
|
|
500
|
+
|
|
501
|
+
Before/after report: /tmp/picasso-before-after.html
|
|
502
|
+
```
|
|
503
|
+
|
|
504
|
+
### Godmode Rules
|
|
505
|
+
|
|
506
|
+
- **Always ask before proceeding.** Show the plan, get confirmation.
|
|
507
|
+
- **Fix in priority order.** Critical first, low last. If the user says "stop" at any point, stop and report what was done so far.
|
|
508
|
+
- **Never break working functionality.** If a fix might break something, flag it and ask.
|
|
509
|
+
- **Re-verify after every category.** Don't stack fixes without checking they work.
|
|
510
|
+
- **The before/after report is mandatory.** The user must be able to see and share the transformation.
|
|
511
|
+
- **If the before score is already 85+**, say so: "This is already in great shape. Here are the 3-4 things that would take it to 95+." Don't force a full pipeline on a polished project.
|
|
430
512
|
|
|
431
513
|
## Creative Commands
|
|
432
514
|
|
package/bin/install.mjs
CHANGED
|
@@ -8,6 +8,7 @@ const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
|
8
8
|
const packageRoot = resolve(__dirname, "..");
|
|
9
9
|
const skillSource = join(packageRoot, "skills", "picasso");
|
|
10
10
|
const agentSource = join(packageRoot, "agents", "picasso.md");
|
|
11
|
+
const commandsSource = join(packageRoot, "commands");
|
|
11
12
|
|
|
12
13
|
const args = process.argv.slice(2);
|
|
13
14
|
const command = args[0] || "install";
|
|
@@ -99,11 +100,24 @@ try {
|
|
|
99
100
|
console.log(` ${join(agentDir, "picasso.md")}`);
|
|
100
101
|
}
|
|
101
102
|
|
|
103
|
+
// Install commands
|
|
104
|
+
const commandsDir = agentDir ? join(agentDir, "..", "commands") : null;
|
|
105
|
+
if (commandsDir && existsSync(commandsSource)) {
|
|
106
|
+
mkdirSync(commandsDir, { recursive: true });
|
|
107
|
+
const cmds = readdirSync(commandsSource).filter(f => f.endsWith(".md"));
|
|
108
|
+
for (const cmd of cmds) {
|
|
109
|
+
cpSync(join(commandsSource, cmd), join(commandsDir, cmd));
|
|
110
|
+
}
|
|
111
|
+
console.log(`\n Commands installed (${cmds.length}):`);
|
|
112
|
+
for (const cmd of cmds) {
|
|
113
|
+
console.log(` /${cmd.replace(".md", "")}`);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
|
|
102
117
|
console.log(`\n Picasso is ready. Start designing.\n`);
|
|
103
118
|
|
|
104
119
|
if (agentDir) {
|
|
105
|
-
console.log(`
|
|
106
|
-
console.log(` You can also invoke it manually with /audit, /critique, or /polish.\n`);
|
|
120
|
+
console.log(` Try: /godmode, /roast, /score, /mood, /evolve, /steal, /compete\n`);
|
|
107
121
|
}
|
|
108
122
|
} catch (err) {
|
|
109
123
|
console.error(` Error installing: ${err.message}`);
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
Run the Picasso /before-after command -- visual transformation report.
|
|
2
|
+
|
|
3
|
+
Use the Picasso agent to generate a before/after comparison:
|
|
4
|
+
|
|
5
|
+
1. Take "before" screenshots (desktop light, desktop dark, mobile light, mobile dark)
|
|
6
|
+
2. Apply /polish or /redesign fixes
|
|
7
|
+
3. Take "after" screenshots at the same viewports
|
|
8
|
+
4. Generate an HTML report at /tmp/picasso-before-after.html showing side-by-side comparisons
|
|
9
|
+
5. List every change made with file:line references
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
Run the Picasso /compete command -- head-to-head design comparison.
|
|
2
|
+
|
|
3
|
+
Use the Picasso agent to compare the current project against the competitor URL: $ARGUMENTS
|
|
4
|
+
|
|
5
|
+
Steps:
|
|
6
|
+
1. Screenshot both sites (desktop + mobile)
|
|
7
|
+
2. Extract design DNA from both (fonts, colors, spacing, radius)
|
|
8
|
+
3. Score both across: typography, color, spacing, motion, responsive, performance (Lighthouse), accessibility (axe)
|
|
9
|
+
4. Output a head-to-head comparison table with winner per category
|
|
10
|
+
5. Generate specific recommendations for closing gaps
|
|
11
|
+
|
|
12
|
+
If no competitor URL is provided, ask the user for one.
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
Run the Picasso /evolve command -- iterative multi-round design refinement.
|
|
2
|
+
|
|
3
|
+
Use the Picasso agent for multi-round design:
|
|
4
|
+
|
|
5
|
+
Round 1: DIRECTIONS
|
|
6
|
+
- Generate 3 genuinely different aesthetic directions for the current page/component.
|
|
7
|
+
- Describe each in 2-3 sentences with the key differentiator.
|
|
8
|
+
- Ask the user to pick one, combine elements, or reject all.
|
|
9
|
+
|
|
10
|
+
Round 2: IMPLEMENTATION
|
|
11
|
+
- Implement the chosen direction.
|
|
12
|
+
- Take screenshots.
|
|
13
|
+
- Ask "What do you love? What's not right?"
|
|
14
|
+
|
|
15
|
+
Round 3+: REFINEMENT
|
|
16
|
+
- Apply feedback. Screenshot again.
|
|
17
|
+
- Ask "Are we there? Or one more round?"
|
|
18
|
+
- Continue until user says "ship it" or max 5 rounds.
|
|
19
|
+
|
|
20
|
+
Rules:
|
|
21
|
+
- Each direction must be genuinely different (not 3 variations of the same thing)
|
|
22
|
+
- Always screenshot between rounds
|
|
23
|
+
- Max 5 rounds before suggesting we ship
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
Run the Picasso /godmode command -- the ultimate design transformation pipeline.
|
|
2
|
+
|
|
3
|
+
Use the Picasso agent (subagent_type: "picasso") to execute the full godmode pipeline:
|
|
4
|
+
|
|
5
|
+
Phase 1: UNDERSTAND
|
|
6
|
+
- Check for .picasso.md config. If not found, run the design interview (ask what we're building, who it's for, aesthetic direction, priorities 1-5 for animations/mobile/a11y/dark mode/performance, constraints).
|
|
7
|
+
- Gather context: read all frontend files, find design system, detect component library.
|
|
8
|
+
|
|
9
|
+
Phase 2: ASSESS
|
|
10
|
+
- Run /score to establish the BEFORE score (0-100 with category breakdown).
|
|
11
|
+
- Run /roast for the brutally honest assessment.
|
|
12
|
+
- Run /audit for full technical audit with severity-ranked findings.
|
|
13
|
+
- Run /a11y (axe-core + pa11y + Lighthouse accessibility).
|
|
14
|
+
- Run /perf (Lighthouse Core Web Vitals).
|
|
15
|
+
- Run /lint-design (find hardcoded colors, spacing violations, font inconsistencies).
|
|
16
|
+
- Take BEFORE screenshots (desktop light, desktop dark, mobile light, mobile dark).
|
|
17
|
+
|
|
18
|
+
Phase 3: PLAN
|
|
19
|
+
- Compile all findings into a prioritized fix list (Critical -> High -> Medium -> Low).
|
|
20
|
+
- Present the plan: "Found X issues. Fixing all = score ~Y. Proceed?"
|
|
21
|
+
- WAIT for user confirmation before proceeding.
|
|
22
|
+
|
|
23
|
+
Phase 4: FIX
|
|
24
|
+
- Execute fixes in priority order: typography, color, spacing, layout, motion, accessibility, interaction, performance, copy.
|
|
25
|
+
- Re-verify after each category.
|
|
26
|
+
|
|
27
|
+
Phase 5: VERIFY
|
|
28
|
+
- Run /score again for the AFTER score.
|
|
29
|
+
- Take AFTER screenshots.
|
|
30
|
+
- Generate before/after comparison.
|
|
31
|
+
|
|
32
|
+
Phase 6: REPORT
|
|
33
|
+
- Show final score comparison with per-category breakdown.
|
|
34
|
+
- Show files modified and issues fixed.
|
|
35
|
+
|
|
36
|
+
If the before score is already 85+, say so and suggest the 3-4 things that would take it to 95+.
|
package/commands/mood.md
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
Run the Picasso /mood command -- generate a design system from a word.
|
|
2
|
+
|
|
3
|
+
Use the Picasso agent to generate a complete design system from the mood word: $ARGUMENTS
|
|
4
|
+
|
|
5
|
+
Map the mood to design tokens:
|
|
6
|
+
- Color palette (5-7 OKLCH values)
|
|
7
|
+
- Font pairing (display + body + mono)
|
|
8
|
+
- Border radius scale
|
|
9
|
+
- Shadow style
|
|
10
|
+
- Motion intensity
|
|
11
|
+
- Spacing density
|
|
12
|
+
|
|
13
|
+
Generate both .picasso.md and DESIGN.md from the mood.
|
|
14
|
+
|
|
15
|
+
Common moods: cyberpunk, cottage, brutalist, luxury, editorial, playful, corporate, dark-tech, warm-saas, minimal. Also accepts combinations like "brutalist-banking" or "warm-editorial".
|
|
16
|
+
|
|
17
|
+
If no mood word is provided, ask the user for one.
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
Run the Picasso /preset command -- apply a curated design preset.
|
|
2
|
+
|
|
3
|
+
Use the Picasso agent to apply the named preset: $ARGUMENTS
|
|
4
|
+
|
|
5
|
+
Available presets: linear, stripe, vercel, notion, raycast, editorial, luxury, brutalist, dark-tech, warm-saas, cyberpunk, cottage, minimal, playful.
|
|
6
|
+
|
|
7
|
+
Steps:
|
|
8
|
+
1. Load the preset from style-presets.md reference
|
|
9
|
+
2. Generate .picasso.md + DESIGN.md from the preset
|
|
10
|
+
3. Update CSS variables / Tailwind config to match
|
|
11
|
+
4. Update font imports
|
|
12
|
+
5. Show a summary of what was applied
|
|
13
|
+
|
|
14
|
+
If no preset name is provided, list all available presets and ask the user to pick.
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
Run the Picasso /roast command -- brutally honest design critique.
|
|
2
|
+
|
|
3
|
+
Use the Picasso agent to review the current project's frontend with sharp, designer-Twitter energy.
|
|
4
|
+
|
|
5
|
+
Rules:
|
|
6
|
+
- Be specific about every criticism (file:line or element reference)
|
|
7
|
+
- Be funny and cutting, but never mean about the developer -- only the design
|
|
8
|
+
- Every roast point MUST include the fix
|
|
9
|
+
- End with a genuine compliment about what IS working
|
|
10
|
+
- Output a Roast Score from 🔥 (barely warm) to 🔥🔥🔥🔥🔥 (absolute inferno)
|
|
11
|
+
- Load anti-patterns.md first to check against the AI slop fingerprint
|
|
12
|
+
|
|
13
|
+
Format:
|
|
14
|
+
```
|
|
15
|
+
🔥🔥🔥 ROAST SCORE: X/5
|
|
16
|
+
|
|
17
|
+
[Sharp, specific critiques with file:line references]
|
|
18
|
+
|
|
19
|
+
Here's how to fix it:
|
|
20
|
+
1. [Fix with exact code/instruction]
|
|
21
|
+
2. ...
|
|
22
|
+
|
|
23
|
+
What IS working: [Genuine positive observations]
|
|
24
|
+
```
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
Run the Picasso /score command -- quantified design quality score.
|
|
2
|
+
|
|
3
|
+
Use the Picasso agent to score the current project's frontend design on a 0-100 scale.
|
|
4
|
+
|
|
5
|
+
Categories:
|
|
6
|
+
- Typography (0-15): font choice, type scale, max-width, line-height, letter-spacing
|
|
7
|
+
- Color (0-15): no pure black/gray, OKLCH usage, tinted neutrals, 60-30-10, semantics
|
|
8
|
+
- Spacing (0-10): consistent 4px scale, Gestalt grouping
|
|
9
|
+
- Accessibility (0-20): axe-core violations, focus-visible, semantic HTML, alt text, reduced-motion
|
|
10
|
+
- Motion (0-10): no transition:all, stagger pattern, reduced-motion, no bounce
|
|
11
|
+
- Responsive (0-10): works at 375px, touch targets, no horizontal scroll
|
|
12
|
+
- Performance (0-10): Lighthouse perf score mapped 0-100 -> 0-10
|
|
13
|
+
- Anti-Slop (0-10): deductions for AI-slop fingerprints (-2 each)
|
|
14
|
+
|
|
15
|
+
Output format with visual bars and top fixes for maximum point improvement.
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
Run the Picasso /steal command -- extract design DNA from a URL.
|
|
2
|
+
|
|
3
|
+
Use the Picasso agent to extract the design language from the provided URL: $ARGUMENTS
|
|
4
|
+
|
|
5
|
+
Steps:
|
|
6
|
+
1. Screenshot the URL at desktop (1440x900) and mobile (375x812)
|
|
7
|
+
2. Fetch the page source and extract: font-family declarations, color values (#hex, rgb, oklch), border-radius values, box-shadow values
|
|
8
|
+
3. Analyze the screenshots visually for: layout structure, spacing rhythm, typography hierarchy, color palette, animation style
|
|
9
|
+
4. Generate a .picasso.md config that matches the extracted aesthetic
|
|
10
|
+
5. Optionally generate a DESIGN.md with the full token set
|
|
11
|
+
|
|
12
|
+
If no URL is provided, ask the user for one.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "picasso-skill",
|
|
3
|
-
"version": "1.3.
|
|
3
|
+
"version": "1.3.4",
|
|
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"
|
|
@@ -33,6 +33,7 @@
|
|
|
33
33
|
"bin/",
|
|
34
34
|
"skills/",
|
|
35
35
|
"agents/",
|
|
36
|
+
"commands/",
|
|
36
37
|
"LICENSE"
|
|
37
38
|
]
|
|
38
39
|
}
|