design-context
Skill17 starsChanged 8 months agoMITView on GitHub
Foundational design context skill. Establishes brand identity, color system, typography, design style, and audience preferences, saved to .agents/design-context.md for every other design skill to reuse. Trigger phrases: "set up design context", "define brand style", "style guide setup", "initialize design", "set brand colors", "use our brand". To build a full token system and components use design-system; to generate a palette use color-palette; to create a logo and identity use brand-identity.
3 other projects use a version of this.
Adopted by
Most recently taken up by
- itsryanarmani/skillstheir own version, first seen Nov 8, 2026
- pooriaarab/skillstheir own version, first seen Nov 7, 2026
- Above-the-Fold-Studio/designmd-skillstheir own version, first seen Nov 1, 2026
Other versions3 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 3
- itsryanarmani/skills★ 1same name
- pooriaarab/skills★ 1same name
- Above-the-Fold-Studio/designmd-skills★ 0same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository29 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- ad-creative-designSkill
- banner-designSkill
- brand-identitySkill
- card-designSkill
- color-paletteSkill
- dark-modeSkill
- dashboard-designSkill
- design-critiqueSkill
- design-systemSkill
- email-designSkill
- graphic-designSkill
- hero-sectionSkill
- icon-designSkill
- image-generationSkill
- image-treatmentSkill
- infographicSkill
- landing-page-designSkill
- layout-compositionSkill
- mobile-ui-designSkill
- motion-designSkill
- poster-designSkill
- presentation-designSkill
- product-mockupSkill
- social-media-graphicSkill
- thumbnail-designSkill
- typographySkill
- ui-designSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
18 rules. 0 are common, 13 are distinctive, and 5 are very specific to this project.
0
Common
Most of the 3 edited versions we read keep these.
13
Distinctive
This author's own choices. Worth a look.
5
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 23
Before gathering new information, check for existing design context.
- Distinctive: line 43
When scanning Tailwind config, extract:
- Distinctive: line 52
When scanning CSS variables, map:
- Distinctive: line 62
If context is found, present it to the user for confirmation before proceeding.
- Distinctive: line 68
If no existing context is found, gather the following conversationally.
- Very specific: line 114
Default scale (Tailwind's hand-tuned sizes, base 16px -- roughly, not exactly, a 1.25 ratio).
- Distinctive: line 255
Check the palette before writing it, and tell the user about any failures (don't silently change their brand colors -- propose the nearest …
- Very specific: line 263
Run the bundled checker rather than estimating by eye (<design-context> is this skill's directory):
- Very specific: line 272
Add a Last updated: YYYY-MM-DD line and the detection source (e.g.
- Distinctive: line 278
When any other design skill activates, it must:
- Very specific: line 282
Use the specified typography -- load Google Fonts if needed via <link> tag
- Distinctive: line 302
When the user wants to update context:
- Very specific: line 304
Read the existing .agents/design-context.md
- Distinctive: line 305
Ask what they want to change
- Distinctive: line 306
Update only the changed fields
- Distinctive: line 310
Never overwrite the entire file for a single field change.
- Distinctive: line 316
If no context is set and the user wants to proceed anyway, use these defaults:
- Distinctive: line 334
Always note in the output that defaults were used and recommend setting up proper design context.
“Common” is measured: kept by at least 6 in 10 of the 3 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Design Context
The foundational skill for all design work. Every other design skill checks this context first. This skill gathers, stores, and serves brand identity, color systems, typography, and design preferences so that all generated visuals are cohesive and on-brand.
Context is saved to .agents/design-context.md for reuse across sessions.
Step 1: Check for Existing Context
Before gathering new information, check for existing design context.
Auto-Detection Sources
Scan the codebase for existing design tokens in this priority order:
.agents/design-context.md-- previously saved context (highest priority)tailwind.config.js/tailwind.config.ts-- theme.extend.colors, fontFamily, spacing (Tailwind v3)- CSS
@themeblock -- Tailwind v4 defines tokens in CSS:@theme { --color-primary: ...; --font-sans: ...; } - CSS custom properties --
--color-primary,--font-heading, etc. in:rootorglobals.css. shadcn/ui projects use--primary,--secondary,--accent,--muted,--destructive,--radius, often as bare HSL components (222 47% 11%) oroklch(...)-- convert to hex when saving package.json-- project name, description- Design token files --
tokens.json(W3C DTCG$value/$type),theme.js,design-system.* - Font loading --
next/fontimports, Google Fonts<link>tags,@font-facerules - Existing components -- scan for recurring color values, font stacks, spacing patterns
manifest.json/site.webmanifest-- theme_color, name- Brand assets --
logo.svg,public/,assets/,brand/folders, favicon - Figma variables -- if Figma MCP is available, pull variables from connected files
Auto-Detection Logic
When scanning Tailwind config, extract:
colors.primary -> Brand primary color
colors.secondary -> Brand secondary color
colors.accent -> Accent color
fontFamily.sans -> Body font
fontFamily.heading or fontFamily.display -> Heading fontWhen scanning CSS variables, map:
--color-primary, --primary -> Primary color
--color-secondary, --secondary -> Secondary color
--color-accent, --accent -> Accent color
--font-heading, --font-display -> Heading font
--font-body, --font-sans -> Body font
--radius, --border-radius -> Border radius preferenceIf context is found, present it to the user for confirmation before proceeding.
Step 2: Gather Brand Identity
If no existing context is found, gather the following conversationally. Ask in natural groupings, not as a checklist dump.
Brand Core
| Field | Description | Example |
| Brand Name | Official name | "Acme Studio" |
| Tagline | Short brand tagline | "Design without limits" |
| Mission | One-sentence mission | "Empower creators with professional tools" |
| Industry | Primary industry/sector | "SaaS / Creative Tools" |
Color System
Gather a minimum of 4 color groups. Store as hex codes.
| Role | Purpose | Example |
| Primary | Main brand color, CTAs, key UI | #2563EB |
| Primary Light | Hover states, backgrounds | #3B82F6 |
| Primary Dark | Active states, text on light | #1D4ED8 |
| Secondary | Supporting color, secondary actions | #7C3AED |
| Accent | Highlights, badges, notifications | #F59E0B |
| Neutral 50 | Lightest background | #FAFAFA |
| Neutral 100 | Card backgrounds | #F5F5F5 |
| Neutral 200 | Borders, dividers | #E5E5E5 |
| Neutral 500 | Placeholder text | #737373 |
| Neutral 800 | Body text | #262626 |
| Neutral 900 | Headings | #171717 |
| Success | Positive states | #10B981 |
| Warning | Caution states | #F59E0B |
| Error | Error states | #EF4444 |
Typography
| Field | Description | Example |
| Heading Font | Display/heading typeface | "Inter, sans-serif" |
| Body Font | Body text typeface | "Inter, sans-serif" |
| Mono Font | Code/technical typeface | "JetBrains Mono, monospace" |
| Base Size | Root font size | 16px |
| Scale Ratio | Type scale multiplier | 1.25 (Major Third) |
| Heading Weight | Default heading weight | 700 |
| Body Weight | Default body weight | 400 |
Type Scale Reference
Default scale (Tailwind's hand-tuned sizes, base 16px -- roughly, not exactly, a 1.25 ratio). If the user wants a true modular scale, compute it with the typography skill instead:
xs: 12px / 0.75rem
sm: 14px / 0.875rem
base: 16px / 1rem
lg: 18px / 1.125rem
xl: 20px / 1.25rem
2xl: 24px / 1.5rem
3xl: 30px / 1.875rem
4xl: 36px / 2.25rem
5xl: 48px / 3rem
6xl: 60px / 3.75rem
7xl: 72px / 4.5remDesign Style
Identify the primary style from these archetypes:
| Style | Characteristics |
| Minimal | Generous whitespace, restrained palette, clean lines, subtle shadows |
| Bold | Saturated colors, large typography, strong contrast, geometric shapes |
| Playful | Bright colors, rounded corners, illustrations, casual tone |
| Corporate | Structured grids, blue/gray palette, professional imagery, formal |
| Luxurious | Dark backgrounds, metallic accents, serif fonts, fine details |
| Retro | Vintage palettes, halftone textures, serif/slab type, warm tones |
| Brutalist | Raw aesthetic, high contrast, monospace type, unconventional layout |
| Organic | Earth tones, natural textures, flowing shapes, warm neutrals |
Audience and Tone
| Field | Description | Example |
| Primary Audience | Who sees these designs | "Tech-savvy professionals 25-40" |
| Aesthetic Preferences | What resonates with them | "Clean, modern, data-driven" |
| Tone | Communication style | "Professional but approachable" |
| Formality | Scale of 1-5 | 3 (balanced) |
Brand Marks
| Field | Description | Example |
| Logo Description | Describe the logo visually | "Geometric 'A' mark in primary blue" |
| Logo Usage | Where/how to use it | "Top-left, min 32px height" |
| Icon Style | Preferred icon style | "Outlined, 2px stroke, rounded caps" |
| Logo Files | Paths to real logo files | public/logo.svg, brand/logo-white.png |
| Reference Images | Product photos, past designs the user likes | assets/product-hero.png |
Record file paths, not just descriptions. Image-generation skills pass these files as --image references, which reproduces a logo or product far more faithfully than a text description.
Brand Rules
| Field | Description | Example |
| Always | Non-negotiables | "Logo on white or primary only", "Sentence case headlines" |
| Never | Things to avoid | "No gradients on the logo", "No stock photos of handshakes" |
| Voice samples | 2-3 real headlines or taglines | "Ship faster. Sleep better." |
Platform Preferences
| Platform | Priority | Notes |
| Web | High/Medium/Low | Responsive, modern browsers |
| Mobile | High/Medium/Low | Touch-friendly, safe areas |
| High/Medium/Low | CMYK considerations | |
| Social | High/Medium/Low | Platform-specific sizes |
Step 3: Save Context
Save the gathered context to .agents/design-context.md using this template:
# Design Context
## Brand Identity
- **Name:** [Brand Name]
- **Tagline:** [Tagline]
- **Mission:** [Mission]
- **Industry:** [Industry]
## Color System
| Role | Hex | Usage |
|------|-----|-------|
| Primary | #XXXXXX | CTAs, key elements |
| Primary Light | #XXXXXX | Hover, backgrounds |
| Primary Dark | #XXXXXX | Active, dark text |
| Secondary | #XXXXXX | Supporting elements |
| Accent | #XXXXXX | Highlights, badges |
| Neutral 50 | #XXXXXX | Light backgrounds |
| Neutral 100 | #XXXXXX | Card backgrounds |
| Neutral 200 | #XXXXXX | Borders |
| Neutral 500 | #XXXXXX | Muted text |
| Neutral 800 | #XXXXXX | Body text |
| Neutral 900 | #XXXXXX | Headings |
| Success | #XXXXXX | Positive |
| Warning | #XXXXXX | Caution |
| Error | #XXXXXX | Error |
## Typography
- **Heading Font:** [Font stack]
- **Body Font:** [Font stack]
- **Mono Font:** [Font stack]
- **Base Size:** [size]
- **Scale Ratio:** [ratio]
- **Heading Weight:** [weight]
- **Body Weight:** [weight]
## Design Style
- **Primary Style:** [Style archetype]
- **Border Radius:** [value]
- **Shadow Style:** [subtle/medium/dramatic/none]
- **Spacing System:** [4px/8px base grid]
## Audience
- **Primary:** [Description]
- **Aesthetic:** [Preferences]
- **Tone:** [Tone description]
## Brand Marks
- **Logo:** [Description]
- **Logo Files:** [paths]
- **Reference Images:** [paths]
- **Icon Style:** [Description]
## Brand Rules
- **Always:** [rules]
- **Never:** [rules]
- **Voice samples:** [examples]
## Platform Priority
- Web: [priority]
- Mobile: [priority]
- Social: [priority]
- Print: [priority]Validate Before Saving
Check the palette before writing it, and tell the user about any failures (don't silently change their brand colors -- propose the nearest passing shade):
- Body text (Neutral 800) on Neutral 50 and on white: >= 4.5:1
- Primary as a button background with white text: >= 4.5:1 (if it fails, use Primary Dark for text-bearing buttons)
- Primary as link text on white: >= 4.5:1
- Neutral 500 placeholder/muted text on white: >= 4.5:1 if it carries meaning
- Borders and focus rings (Neutral 200 is decorative only; focus rings need >= 3:1 against their background)
Run the bundled checker rather than estimating by eye (<design-context> is this skill's directory):
python <design-context>/scripts/contrast.py --context .agents/design-context.md # all pairings above
python <design-context>/scripts/contrast.py "#737373" "#ffffff" # any single pairIt exits 1 on any failure and suggests the nearest passing shade for each one (same hue and chroma, adjusted lightness). Other skills can use it the same way for any foreground/background pair.
Add a Last updated: YYYY-MM-DD line and the detection source (e.g. "from tailwind.config.ts") at the top of the file so later sessions know how fresh it is.
Step 4: Using Context in Other Skills
When any other design skill activates, it must:
- Read
.agents/design-context.mdfirst - Apply the color system -- never use arbitrary colors
- Use the specified typography -- load Google Fonts if needed via
<link>tag - Match the design style archetype
- Respect the tone and audience preferences
Quick Context Snippet for Other Skills
Other skills should include this check at the top of their workflow:
Before generating any visual:
1. Read .agents/design-context.md
2. Extract: primary color, secondary color, accent, heading font, body font, style archetype
3. If no context file exists, ask the user to run the design-context skill first,
or use sensible defaults and note that output may not be on-brandStep 5: Context Updates
When the user wants to update context:
- Read the existing
.agents/design-context.md - Ask what they want to change
- Update only the changed fields
- Confirm the changes
- Save the updated file
Never overwrite the entire file for a single field change.
Default Fallbacks
If no context is set and the user wants to proceed anyway, use these defaults:
Primary: #2563EB (blue-600)
Secondary: #7C3AED (violet-600)
Accent: #F59E0B (amber-500)
Neutral: Tailwind gray scale
Heading Font: Inter
Body Font: Inter
Success: #10B981 (fills/icons) / #047857 (text)
Warning: #F59E0B (fills/icons) / #B45309 (text)
Error: #EF4444 (fills/icons) / #B91C1C (text)
Style: Minimal
Tone: ProfessionalThe lighter semantic shades fail 4.5:1 as text on white (2.5:1, 2.2:1, 3.8:1) -- use them for backgrounds, badges with dark text, and icons; use the darker shades for text.
Always note in the output that defaults were used and recommend setting up proper design context.
Note: Inter everywhere plus blue-600 is the most common "AI-generated" look. When using defaults for anything expressive (posters, social graphics, landing pages), ask one quick question -- "any colors, fonts, or sites you like the feel of?" -- before falling back.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

