Skip to content
Agentmart
Submit a tool

ui-color-palette-generate-source-colors

Generate source colors to seed a palette.

Skill by a-ng-d

IndexedMIT★ 1
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/a-ng-d-ui-color-palette-generate-source-colors

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Generate source colors to seed a palette. Supports three modes — extract dominant colors from an image, generate from a natural language prompt, or derive harmonies from a base color. Output is a set of ColorConfiguration objects ready to pass to ui-color-palette-scale-palette.

Use cases: design, agent-building

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/ui-color-palette-generate-source-colors

What's inside

Skill name
ui-color-palette-generate-source-colors
Description
Generate source colors to seed a palette. Supports three modes — extract dominant colors from an image, generate from a natural language prompt, or derive harmonies from a base color. Output is a set of ColorConfiguration objects ready to pass to ui-color-palette-scale-palette.
License
MIT
Instructions
191 lines in SKILL.md · view on GitHub

Files (1)

  • SKILL.md

SKILL.md (first lines)

# Generate Source Colors

Use the **ui-color-palette** MCP tools to produce source colors before building a full palette.

The output of this skill is a set of `ColorConfiguration` objects (role name + hex) ready to be passed to `ui-color-palette-scale-palette`.

---

## Step 0 — Check for existing SourceColors

**Before asking anything**, check whether a `SourceColors` slot is already populated in the conversation context.

If `SourceColors` exists, show the existing colors (name + hex) and ask: reuse, add more, or start fresh. Wait for reply before proceeding.

---

## Step 1 — Choose a source mode

If the mode is not already clear from context, ask which source to use:

- **Image** — extract dominant colors from a photo (requires public URL)
- **Prompt** — describe mood/brand in natural language
- **Harmony** — derive from a single base color
- **Design tool** — extract fills from a current selection in Figma, Penpot, Sketch, or Framer

Wait for reply.

---

## Mode A — Image extraction

**Tool**: `extract_dominant_colors`

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `imageUrl` | string | Yes | Public URL of a JPEG or PNG image |
| `colorCount` | number | No | Number of dominant colors to extract (default: 5) |
| `maxIterations` | number | No | Max iterations for k-means clustering |
| `tolerance` | number | No | Convergence tolerance |
| `skipTransparent` | boolean | No | Skip transparent pixels (default: true) |

### Step A1 — Collect the image URL

Ask for a public JPEG or PNG URL if not already provided.

### Step A2 — Color count (optional)

Ask how many dominant colors to extract (default: 5).

### Step A3 — Call `extract_dominant_colors`

Call the tool with the URL and parameters. The tool returns colors as hex and/or RGB (0–255 per channel).

### Step A4 — Show results and assign roles

Show the extracted colors as swatches (hex + preview). Ask the user to assign a role name (`primary`, `neutral`, `accent`, `error`) to each color they want to keep, and discard the rest.

### Step A5 — Normalize to ColorConfiguration

Convert each kept color to a `ColorConfiguration` object:
- `id` = omit — the server generates it automatically via `uid()`
- `name` = the role name the user provided
- `rgb` = divide each 0–255 channel by 255 → `{ r: R/255, g: G/255, b: B/255 }`
- Apply defaults: `hue: { shift: 0, isLocked: false }`, `chroma: { shift: 100, isLocked: false }`, `alpha: { isEnabled: false, backgroundColor: "#FFFFFF" }`

---

## Mode B — Prompt generation

**Tool**: `generate_colors_from_prompt`

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `prompt` | string | Yes | Natural language description of the desired palette |

### Step B1 — Collect the prompt

Ask for a natural language description if not already provided (mood, brand, context, or specific colors; e.g. "a calm fintech app with deep blues and warm neutrals").

### Step B2 — Call `generate_colors_from_prompt`

Call the tool with the prompt string. The tool uses AI (Mistral) to return a set of colors.

### Step B3 — Show results and assign roles

Show the suggested colors as swatches. Ask the user to assign a role name to each color they want to keep and discard the rest.

### Step B4 — Normalize to ColorConfiguration

Convert each kept color to a `ColorConfiguration` object using the same mapping as Step A5.

---

## Mode C — Harmony derivation

**Tool**: `create_color_harmony`

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `baseColor` | array | Yes | An RGB Channel tuple: `[r, g, b]` — values 0–255 |
| `type` | enum | No | `ALL`, `COMPLEMENTARY`, `ANALOGOUS`, `TRIADIC`, `TETRADIC`, `SQUARE`, `COMPOUND` (default: `ALL`) |
| `analogousSpread` | number | No | Spread angle in degrees for analogous harmonies (default: 30) |
| `returnFormat` | enum | No | `rgb`, `hex`, or `both` (default: `both`) |

### Step C1 — Collect the base color

Ask for a hex base color if not already provided. Convert to an RGB Channel tuple:
- Parse hex → `[r, g, b]` with values 0–255
- Example: `#3B82F6` → `[59, 130, 246]`

### Step C2 — Choose harmony type

Ask which harmony type: Complementary (2 colors), Compound (3), Analogous (3), Triadic (3), Tetradic (4), Square (4), or All.

### Step C3 — Call `create_color_harmony`

Call the tool with the Channel object, selected type, and `returnFormat: "both"`.

### Step C4 — Show results and assign roles

From a-ng-d/claude-ui-color-palette, MIT.

More from a-ng-d/claude-ui-color-palette

Signals

Stars
1
Forks
0
Open issues
0
Last commit (this folder)
May 14, 2026 (5 months ago)

From GitHub (fetched Oct 24, 2026).

Details

License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from a-ng-d

Cite this page

ui-color-palette-generate-source-colors skill. Agent Mart. https://agentmart.dev/skills/a-ng-d-ui-color-palette-generate-source-colors (last updated 2026-10-24)