Skip to content
Back to skills

Brand Update

ASecurity

[ADD v{{VERSION}}] Update project branding — new colors, fonts, tone, audit artifacts

  • 11 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 6, 2026
ai-agentsgo

Security analysis

A100/100

Scanned October 6, 2026

npx -y skills add MountainUnicorn/add --skill brand-update --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Brand Update?

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

Security grade badge for Brand Update
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/mountainunicorn-brand-update/badge)](https://www.skillsdirectory.com/skills/mountainunicorn-brand-update)

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
---
description: "[ADD v{{VERSION}}] Update project branding — new colors, fonts, tone, audit artifacts"
allowed-tools: [Read, Write, Edit, Glob, Grep, AskUserQuestion]
references: ["design-system.md", "rules/telemetry.md"]
---

# ADD Brand Update Command v{{VERSION}}

Update the project's branding configuration with new materials and audit existing generated artifacts for brand consistency. Optionally apply fixes to bring artifacts in line with the new brand.

## Pre-Flight

1. Check if `.add/config.json` exists. If not, tell the user to run `/add:init` first.
2. Read `.add/config.json` and extract the current `branding` section.
3. Read `${CLAUDE_PLUGIN_ROOT}/templates/presets.json` for available presets and palette generation algorithm.

## Arguments

The user provided: $ARGUMENTS

If arguments contain specific values (hex color, preset name, etc.), use them directly instead of asking.

## Phase 1: Collect New Branding

### Step 1.1: Determine Update Scope

Use AskUserQuestion:
```
Question: "What would you like to update?"
Options:
  - "Accent color only"
  - "Full brand refresh (color, fonts, tone, logo)"
  - "Apply a color preset"
```

### Step 1.2a: Accent Color Only

Use AskUserQuestion:
```
Question: "Choose a new accent color:"
Options:
  - "Raspberry (#b00149) — bold and warm"
  - "AI Purple (#6366f1) — classic tech"
  - "Ocean (#0891b2) — professional and calm"
  - "Custom hex color"
```

If "Custom hex color": Ask for the hex value. Validate it's a valid 3 or 6 character hex color (with or without #).

Generate the full palette from the selected color using the algorithm in `${CLAUDE_PLUGIN_ROOT}/templates/presets.json`:

1. Parse hex to RGB, convert to HSL
2. Generate all palette values (accentLight, accentDark, accentMuted, accentGlow, gradientStart, gradientMid, gradientEnd)
3. Keep fixed colors (success: #22c55e, warning: #eab308, info: #0ea5e9)

### Step 1.2b: Full Brand Refresh

Ask each in sequence:

**Color:** Same as Step 1.2a above.

**Fonts:** "Do you have font preferences?"
Use AskUserQuestion:
  - "Use system defaults (Recommended)"
  - "Let me specify fonts"

If specifying: Ask for heading font, body font, code font. Store in `branding.fonts`.

**Tone:** "Describe your brand's tone/voice in a few words (e.g., 'professional but approachable', 'bold and confident', 'technical and precise')."
(Default: null — no tone constraint)

**Logo:** "Path to your project logo file? (Leave empty to skip)"
(Default: null)

**Style Guide:** "URL or file path to your style guide? (Leave empty to skip)"
(Default: null)

### Step 1.2c: Apply a Color Preset

List presets from `${CLAUDE_PLUGIN_ROOT}/templates/presets.json`:

Use AskUserQuestion:
```
Question: "Choose a color preset:"
Options:
  - "Raspberry (#b00149) — bold and warm"
  - "AI Purple (#6366f1) — classic tech"
  - "Ocean (#0891b2) — professional and calm"
  - "Forest (#059669) — rich emerald green"
```

(If more than 4 presets, show the top 4 most popular. User can type "Other" for Sunset or Midnight.)

Load the full palette from the preset. Set `presetName` to the chosen preset.

## Phase 2: Update Configuration

### Step 2.1: Write Updated Config

Update `.add/config.json` `branding` section with the new values:

```json
"branding": {
  "accentColor": "{NEW_ACCENT}",
  "presetName": "{PRESET_NAME_OR_NULL}",
  "palette": {
    "accent": "{NEW_ACCENT}",
    "accentLight": "{GENERATED}",
    "accentDark": "{GENERATED}",
    "accentMuted": "{GENERATED}",
    "accentGlow": "{GENERATED}",
    "gradientStart": "{GENERATED}",
    "gradientMid": "{GENERATED}",
    "gradientEnd": "{GENERATED}",
    "success": "#22c55e",
    "warning": "#eab308",
    "info": "#0ea5e9"
  },
  "fonts": {"heading": "{OR_NULL}", "body": "{OR_NULL}", "code": "{OR_NULL}"},
  "tone": "{OR_NULL}",
  "logoPath": "{OR_NULL}",
  "styleGuideSource": "{OR_NULL}"
}
```

Use the Edit tool to update the branding section in `.add/config.json`. Preserve all other config sections.

### Step 2.2: Confirm Update

```
BRANDING UPDATED

  Previous: {old_accentColor} ({old_presetName or "custom"})
  New:      {new_accentColor} ({new_presetName or "custom"})

  Palette:
    Gradient:   {gradientStart} → {gradientMid} → {gradientEnd}
    Light/Dark: {accentLight} / {accentDark}
```

## Phase 3: Artifact Audit

### Step 3.1: Find Generated Artifacts

Scan for existing generated artifacts:
- `docs/infographic.svg`
- `reports/*.html`
- Any file in `docs/` or `reports/` that contains color hex values matching the OLD branding

### Step 3.2: Audit Each Artifact

For each found artifact, compare embedded colors against the NEW branding palette.

**SVG files:** Search for hex colors in gradient definitions, fill attributes, stroke attributes.
**HTML files:** Search for CSS variable definitions (`--accent:`), inline style colors, gradient definitions.

### Step 3.3: Report Audit Results

```
ARTIFACT AUDIT

  Found {N} generated artifacts:

  docs/infographic.svg
    → Uses old accent #6366f1 in {N} locations
    → Needs update: gradient definitions, card accents, metric highlights

  reports/spike-2026-02-14.html
    → Uses old accent #6366f1 in CSS variables
    → Needs update: --accent, --accent-light, --accent-dark

  {N} artifacts need brand updates.
```

If no artifacts found:
```
ARTIFACT AUDIT

  No generated artifacts found. New artifacts will use the updated branding.
```

### Step 3.4: Offer to Fix

If artifacts need updates:

Use AskUserQuestion:
```
Question: "{N} artifacts have outdated branding. Fix them now?"
Options:
  - "Yes — regenerate artifacts with new branding (Recommended)"
  - "No — I'll update them manually later"
```

**If "Yes":**
For each artifact type:
- **Infographic SVG:** If `/add:infographic` skill exists, suggest running it. Otherwise, use Edit tool to find-and-replace old palette hex values with new ones in the SVG.
- **HTML Reports:** Use Edit tool to update CSS variables and inline colors.

Report what was fixed:
```
FIXES APPLIED

  ✓ docs/infographic.svg — updated {N} color references
  ✓ reports/spike-2026-02-14.html — updated CSS variables

  All artifacts now match configured branding.
```

**If "No":**
```
Artifacts left as-is. Run /add:brand to check drift status anytime.
```

## Phase 4: Summary

```
BRAND UPDATE COMPLETE

  Accent:     {accentColor} ({presetName or "custom"})
  Artifacts:  {N} found, {M} updated
  Config:     .add/config.json updated

  View branding: /add:brand
```

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…