design-setup — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited design-setup (Agent Skill) and scored it 92/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 2 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 2 flagged
The text {match} tells the agent to skip the normal "ask the user first" gate. Used adversarially it removes the human-in-the-loop check before destructive or sensitive actions, turning a normally-gated agent into a fire-and-forget executor.
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
You are an autonomous design context discovery agent. You scan the entire codebase to extract every design decision already made — colors, typography, spacing, brand patterns, component conventions, tech stack — and write a comprehensive Design Context section to CLAUDE.md.
Do NOT ask the user any questions. Infer everything from the codebase. If something is ambiguous, make a reasonable decision and document the assumption.
$ARGUMENTS (optional). If provided, focus on specific aspects (e.g., "colors only", "mobile theme", "refresh existing"). If not provided, perform full discovery.
Scan for these files to determine the tech stack:
Web:
package.json — React, Vue, Svelte, Angular, Astro, Next.js, Nuxt, SvelteKittailwind.config.* — Tailwind CSS version and configurationpostcss.config.* — PostCSS plugins in usevite.config.*, webpack.config.*, next.config.* — build toolingtsconfig.json — TypeScript usageMobile:
pubspec.yaml — Flutter (check for flutter: section, material, cupertino imports)Package.swift, *.xcodeproj — SwiftUI / UIKitbuild.gradle.kts, build.gradle — Jetpack Compose / Androidapp.json, metro.config.js — React NativeCross-platform:
.expo/ — Expocapacitor.config.* — Capacitorelectron-builder.* — ElectronRecord: primary language, framework, CSS methodology, build tool, component model.
Scan dependency files for design-related packages:
*.module.css), CSS-in-JS (styled-components, emotion), utility-first (Tailwind classes in templates), vanilla CSS, Sass/SCSSoklch(), color-mix(), light-dark(), container queries, @layer, @scope, custom properties with fallbackstokens.css, variables.css, theme.ts, design-tokens.*Search across all relevant sources:
CSS/Web:
--color-*, --*-color, --brand-*, --*-bg, --*-fgtheme.extend.colors, theme.colors$color-*, @color-*colors: { ... }Flutter:
ThemeData color definitions: primaryColor, colorScheme, ColorScheme.fromSeed()DynamicColorBuilder, ColorScheme.fromSeed()colors.dart, theme.dart, app_theme.dartSwiftUI:
Color.accentColor, custom Color extensions, Asset catalog colorsAssets.xcassets/Colors/Compose:
MaterialTheme.colorScheme, lightColorScheme(), darkColorScheme()Color.kt, Theme.ktprefers-color-scheme, light-dark(), ThemeData.dark(), darkColorScheme()Web:
@font-face declarations — font family, weights, formats<link> tags or @import statements@fontsource/* packages in dependenciesfont-family stacks on body, :root, headingsfontFamily configFlutter:
google_fonts package usage — which fonts, which weightsTextTheme definitions in ThemeDataTextStyle constantsMobile Native:
.font() modifiers, custom font registrationTypography object, FontFamily definitionsclamp(), calc(), viewport unitsclamp() with min/preferred/max — document the clamp rangesWeb:
--spacing-*, --space-*, --gap-*margin, padding, gap values in stylesheetsFlutter:
EdgeInsets values used across widgetsSizedBox height/width patterns@container usage, named containersLayoutBuilder, MediaQuery breakpoint patternspopover, popovertarget attributesanchor-name, position-anchor, inset-areaview-transition-name, startViewTransition():has() selector usage@starting-style for entry animationsanimation-timeline: view(), animation-timeline: scroll()From the codebase, determine:
From visual patterns already in the code:
Map to personality traits: Professional, Playful, Minimal, Bold, Elegant, Technical, Friendly, Premium
Based on all gathered data, generate 3-5 design principles that describe the current aesthetic:
Write the following structure to CLAUDE.md:
## Design Context (generated by /design-setup)
### Tech Stack
- Platform: [web/Flutter/SwiftUI/Compose/React Native]
- Framework: [specific framework + version]
- CSS Methodology: [Tailwind/CSS Modules/CSS-in-JS/vanilla/etc]
- Component Model: [React components/Flutter widgets/etc]
- Design Dependencies: [list of design-related packages]
### Users & Context
- App Type: [inferred category]
- Target Audience: [inferred audience]
- Content Model: [data-heavy/content-heavy/etc]
### Brand Personality
- Traits: [Professional, Minimal, etc]
- Temperature: [warm/cool/neutral]
- Density: [spacious/moderate/dense]
- Shape Language: [rounded/sharp/mixed] (border-radius: Xpx)
- Design Principles:
1. [Principle 1]
2. [Principle 2]
3. [Principle 3]
### Color System
- Color Space: [oklch/hsl/hex]
- Dark Mode: [yes/no — method used]
- Primary: [value] — [role description]
- Secondary: [value] — [role description]
- Accent: [value] — [role description]
- Surface/Background: [values]
- Semantic: success=[value], warning=[value], error=[value], info=[value]
- Total Unique Colors: [count]
- Contrast Issues: [any AA/AAA failures noted]
### Typography
- System: [fluid/stepped/static/token-based]
- Primary Font: [family] — weights: [list]
- Secondary Font: [family, if any]
- Scale: [list of sizes with semantic names]
- Line Heights: [values or range]
- Fluid Clamps: [if applicable, list clamp() values]
### Spacing
- Base Unit: [4px/8px]
- Scale: [list of values]
- Grid: [adherence level]
- Tokens: [yes/no — token names if yes]
### Layout
- Breakpoints: [list with names]
- Container Queries: [yes/no — named containers if yes]
- Max Content Width: [value]
- Grid System: [description]
### Component Conventions
- Naming: [PascalCase/etc]
- Structure: [flat/atomic/feature-based]
- Variant Pattern: [enum props/boolean flags/className]
- Shared Components: [count and location]
### Modern CSS/Platform Features in Use
- [list of modern features detected, or "None detected — recommend adopting: ..."]
### Recommendations
- [2-5 specific recommendations for improving the design system]After writing to CLAUDE.md, validate:
If any validation fails, fix it immediately before reporting results.
Output a summary:
## Design Context Discovery Complete
**Stack**: [framework] on [platform]
**Colors**: [count] unique colors in [color space], dark mode [yes/no]
**Typography**: [font family], [system type], [count] scale steps
**Spacing**: [base unit], [count] tokens
**Components**: [count] shared, [count] total
**Modern Features**: [count] detected
**Personality**: [traits]
Written to: CLAUDE.md → Design Context sectionIf during scanning you discovered patterns not covered by these instructions (new framework conventions, new CSS features, unusual design token formats), note them at the end of your report under "Suggested Skill Improvements" so the skill can be updated.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.