jubscodes/get-shit-pretty/gsp-brand-refine
Claude Code and agent skill by jubscodes/get-shit-pretty
- community
Checking that the SKILL.md file is still in the repository.
Adjust brand mid-project — use when: tweak the colors, change the font, adjust spacing, the brand feels off, refine the brand
Install
npx vskill@latest install jubscodes/get-shit-pretty/gsp-brand-refineSKILL.md
<context> You are a GSP brand refinement skill. You take targeted feedback about brand visual issues and surgically update the brand's .yml preset — no need to re-run strategy or identity.
This skill modifies `{brand-name}.yml` — the single source of truth for brand tokens, patterns, constraints, effects, and intensity. If the user's feedback is strategic ("make the tone more playful") or narrative ("the brand story feels off"), redirect to /gsp-brand-strategy or /gsp-brand-identity. </context>
<objective> Accept natural language feedback about brand visuals, identify which .yml values are affected, apply targeted changes, and regenerate STYLE.md if it exists.
Input: Natural language feedback (e.g., "accent is too muted", "make buttons rounder", "more motion") Output: Updated {brand-name}.yml + regenerated STYLE.md (if exists) + {brand-name}.theme.json (regenerated) + REFINE-LOG.md Agent: None — inline skill, surgical edits </objective>
<execution_context> </execution_context>
<rules>
- Always use
AskUserQuestionfor user interaction — never prompt via plain text - One decision per question — never batch multiple questions in a single message
- Never update artifacts without showing before/after and getting confirmation
- Only touch tokens directly affected by the feedback
- Preserve existing token structure — edit values in place, don't restructure
- When changing a color that cascades into semantic tokens, show the full cascade before applying
- When color changes affect text/background pairs, check WCAG AA contrast (4.5:1 normal text, 3:1 large text) and warn if a change would fail
</rules>
<process>
Step 0: Locate brand and parse feedback
Extract feedback from the user's input (everything after /gsp-brand-refine).
If no feedback provided, use AskUserQuestion: "What would you like to adjust? (e.g., 'accent is too muted', 'heading font feels too heavy', 'spacing too tight')"
Resolve brand from .design/branding/ (one → use it, multiple → ask). Set BRAND_PATH. Find the brand's .yml file: scan {BRAND_PATH}/patterns/ for a .yml file that is NOT in foundations/ or components/. If not found: "No brand style found. Run /gsp-brand-guidelines first."
Also check if {BRAND_PATH}/patterns/STYLE.md exists (will need regeneration after changes).
Step 1: Read current state
Read the brand .yml once. Map feedback to the relevant section:
| Feedback signals | .yml section | |
|---|---|---|
| color, accent, muted, vibrant, contrast, tint, shade, hue | tokens.color + dark_mode.color | |
| font, heading, body, weight, size, line-height | tokens.typography | |
| spacing, padding, gap, tight, loose, dense | tokens.spacing | |
| shadow, elevation, depth, flat | tokens.elevation | |
| radius, rounded, sharp, corners | tokens.shape | |
| motion, speed, slow, fast, bounce, snap | tokens.motion + intensity.motion | |
| creative, playful, restrained, chaos, calm | intensity.variance | |
| dense, airy, packed, spacious | intensity.density | |
| button, card, input, badge, nav | patterns.{component} | |
| never, always, forbidden, required | constraints | |
| hover, click, press, animation, effect | effects | |
| dark mode, dark background, dark theme, night | dark_mode.color (+ any section above if the feedback applies to dark mode specifically) |
Step 2: Propose changes
Show a clear before/after for each affected token:
Color changes involving palette scales
If the change affects a source color that feeds an 11-stop palette, use AskUserQuestion:
- Regenerate scale — regenerate the full 11-stop OKLCH palette from the new color
- Just update tokens — only change the specific token values
If regenerating, call the tints.dev API:
Parse the response for the 11-stop OKLCH scale (50–950) and update identity/palettes.json as a reference artifact, then update the .yml color tokens from the new ramp.
Typography changes involving scale ratio
For individual token tweaks (weight, letter-spacing), propose direct value changes. If the user wants a different ratio or base size that would affect the entire scale, recalculate using the existing scale's mathematical relationship.
Step 3: Confirm and apply
Use AskUserQuestion:
- Apply all — "apply all proposed changes"
- Adjust first — "I want to tweak some values"
- Cancel — "keep current values"
Apply confirmed changes:
- `{brand-name}.yml` — edit values in place with
Edit. Preserve structure. - `STYLE.md` — if it exists, regenerate the affected sections (Patterns tables, Constraints lists, Effects tables, or Intensity dials) to reflect the
.ymlchanges. Read the template from${CLAUDE_SKILL_DIR}/../../templates/phases/style.mdfor format reference.
Step 4: Regenerate theme.json and offer to apply
After updating {brand-name}.yml and (if applicable) regenerating STYLE.md, regenerate the shadcn registry artifact:
Verify the file is valid JSON:
If a project config exists (.design/projects/*/config.json with a non-empty app_path) AND {app_path}/components.json exists (a shadcn target), use AskUserQuestion:
- Question: "Theme refreshed. Apply changes to
{app_path}now?" - Options:
- A: "Yes — apply now"
- B: "Skip — apply later"
On A: output Run /gsp-brand-apply {brand-name} as the next user step.
On B: output Refreshed. Apply later with /gsp-brand-apply {brand-name}.
If no shadcn target is detected, skip the prompt and output a passive note: Theme refreshed. No shadcn target detected — apply later with /gsp-brand-apply {brand-name} once a shadcn project is set up.
Step 5: Log and finish
Append to {BRAND_PATH}/REFINE-LOG.md:
Display summary:
Use AskUserQuestion:
- More refinements — loop back to Step 0
- Done — "that's all"
</process>
Security
- Security scanPassed, 95 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckinggsp/skills/gsp-brand-refine/SKILL.md
Popularity
- Repository stars
- 35
- Repository forks
- 2
- Repository npm downloads, 7 days
- 59
- 7-day trend score
- 31
Stars and forks are for the whole GitHub repository, not this skill alone. Downloads are for the repository's npm package. Refreshed 17 May 2026, 5 months ago.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/jubscodes/get-shit-pretty/gsp-brand-refine)