picasso-skill 1.3.3 → 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/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(` The Picasso agent will automatically audit your frontend code.`);
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+.
@@ -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",
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
  }