Skip to content
Back to skills

Color Picker Pro

ASecurity

Pick, convert, and manage colors with format conversions, palette extraction, and harmony tools.

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 29, 2026
ai-agentspythonrustgodocumentation

Security analysis

A100/100

Scanned September 29, 2026

npx -y skills add aicodedecode/awesome-muse-skills --skill color-picker-pro --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Color Picker Pro?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Color Picker Pro
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/aicodedecode-color-picker-pro/badge)](https://www.skillsdirectory.com/skills/aicodedecode-color-picker-pro)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: color-picker-pro
description: Pick, convert, and manage colors with format conversions, palette extraction, and harmony tools.
category: utilities
---

## Overview

Color picking sounds trivial until you're matching a brand color from a screenshot, converting
between HEX/RGB/HSL/CMYK, or extracting a palette from an image. This skill covers practical color
workflows: precise picking, lossless format conversion, palette extraction, accessibility checking,
and organizing color decisions.

## When to use

- Picking exact colors from screens, images, or designs

- Converting between color formats (HEX, RGB, HSL, CMYK, Pantone-ish)

- Extracting palettes from images or brand assets

- Checking contrast ratios for accessibility

- Building and documenting color palettes

## Core concepts

- - **Color formats and when to use them.** HEX (`#3B82F6`) — web standard, compact. RGB
  (`rgb(59,130,246)`) — same data, explicit. HSL (`hsl(217,91%,60%)`) — intuitive for adjusting
  (tweak lightness/saturation directly). CMYK — print only. Name them correctly per context.
- - **Picking precisely.** Screen pickers sample the rendered pixel — which includes anti-aliasing,
  compression artifacts, and color profiles. For brand colors, get the value from the source file or
  brand guide, not a screenshot. Screenshots lie by a few values.
- - **HSL for manipulation.** Need a darker variant? Drop HSL lightness 10%. Need muted? Drop
  saturation. Doing this math in HEX is guesswork; in HSL it's deterministic.
- - **Palette extraction.** From images: quantize to dominant colors (median-cut or k-means), then
  curate — raw extraction includes muddy intermediates. Pick 4-6 that represent the image's
  character, then refine.
- - **Contrast checking.** Every text/background pair: 4.5:1 for body text (WCAG AA). Check
  programmatically, not by eye — eyes adapt and deceive.
- - **Color management gotchas.** The same HEX renders differently across displays (calibration),
  and screenshots embed display profiles. For critical matching, work in a color-managed pipeline
  and verify on the target medium.

## Practical workflow

1. 1. **Pick the color.** Use a screen picker for approximations; source files/brand guides for
   exact values. Note the format you picked in — convert deliberately, don't eyeball conversions.
2. 2. **Convert formats.** Use reliable converters (or code) — HEX↔RGB is trivial math, RGB→HSL
   needs the proper formula, CMYK conversion depends on the profile (it's not pure math). Document
   which profile was used for print conversions.
3. 3. **Build variants.** From a base color in HSL: generate tints (lightness up), shades (lightness
   down), and muted versions (saturation down) in even steps. A 5-9 step scale per key color covers
   most UI needs.
4. 4. **Check harmony.** Test candidate palettes: complementary tension? analogous calm? Run through
   a color-blindness simulator — a palette that collapses for 8% of users needs rework.
5. 5. **Verify contrast.** Check all text/background combinations against WCAG ratios. Adjust
   lightness (not hue) to fix failures — it preserves the palette's character.
6. 6. **Document the palette.** Name colors semantically (`primary`, `surface`, `critical`), record
   all formats (HEX for web, CMYK for print), note usage rules. A palette without documentation gets
   misused.

**Quick conversions (Python):**
```python
import colorsys
# HEX -> RGB -> HSL
h = "3B82F6"
r, g, b = (int(h[i:i+2], 16) / 255 for i in (0, 2, 4))
hh, ll, ss = colorsys.rgb_to_hls(r, g, b)  # note: HLS, swap S/L for HSL
print(f"hsl({hh*360:.0f}, {ss*100:.0f}%, {ll*100:.0f}%)")
# Contrast ratio (relative luminance, WCAG)
def lum(c):
    c /= 255
    return c / 12.92 if c <= 0.03928 else ((c + 0.055) / 1.055) ** 2.4
def ratio(h1, h2):
    L = sorted([sum(w * lum(int(x[i:i+2], 16)) for i, w in zip((0,2,4),(0.2126,0.7152,0.0722))) for x in (h1, h2)])
    return (L[1] + 0.05) / (L[0] + 0.05)
print(ratio("FFFFFF", "3B82F6"))  # contrast of blue on white
```

## Common pitfalls

- - **Trusting screenshots.** Compression and profiles shift values. For brand-critical colors,
  always go to the source.
- - **Eyeballing conversions.** Guessing the CMYK equivalent of a screen color. Use proper
  conversion with the right profile — or accept that some RGB colors can't print.
- - **Raw extraction without curation.** Auto-extracted palettes include muddy averages. Curate:
  pick the colors with character, drop the mush.
- - **Skipping contrast checks.** "Looks fine to me" fails for users with low vision. The math takes
  10 seconds — run it.
- - **Inconsistent formats.** HEX in CSS, RGB in design tokens, named colors in docs — pick per
  context but keep a single source of truth with all formats recorded.
- - **Forgetting dark mode.** A palette perfected for light backgrounds can fail on dark. Derive and
  check the dark variants, don't just invert.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…