Agent skill

Design Engineering

by softspark in softspark/ai-toolkit

UI craftsmanship: animation rules, easing, micro-interactions, state polish.

Apache-2.0Auto-check passedFrontend & Design

Install Design Engineering

skills CLI
$ npx skills add softspark/ai-toolkit --skill design-engineering -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install softspark/ai-toolkit design-engineering --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/softspark/ai-toolkit.git skills-src && mkdir -p .claude/skills && cp -r skills-src/app/skills/design-engineering .claude/skills/design-engineering && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
design-engineering
GitHub stars
179
Token cost
~4.3k tokens
SKILL.md length
2,019 words
Files
3
Skills in repo
112
Repo updated
First seen
Licence
Apache-2.0

At a glance

UI craftsmanship: animation rules, easing, micro-interactions, state polish.

  • Works in 2 steps: Cheap self-check. Load the rendered… → Independent verifier pass. A separate…
  • Tasks that involve Web animation and motion
  • SKILL.md covers Core Principles, Anti-Slop Visual & Structural…, Pre-Emit Self-Critique (Six… and The 8 Interactive States…, plus 13 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Design Engineering is an agent skill from softspark/ai-toolkit. UI craftsmanship: animation rules, easing, micro-interactions, state polish. Triggers: animation, transition, ease-out, motion, micro-interaction, hover, loading state, UI polish.

Its SKILL.md is about 4.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 3 other files (for example `reference/animation-recipes.md` and `reference/component-craft.md`).

It sits in Frontend & Design, covering Web animation and motion and UI design. The repository describes itself as: Professional-grade AI coding toolkit: 94 skills, 44 agents, multi-platform (Claude, Cursor, Windsurf, Copilot, Gemini, Cline, Roo Code, Aider, Augment, Antigravity, Codex CLI… The licence is Apache-2.0.

When your agent uses it

  • Tasks that involve Web animation and motion
  • Tasks that involve UI design

Example prompts

  • “/design-engineering”

Requirements

  • Pre-approved tools (allowed-tools): Read

Workflow steps

2 steps, taken from the first numbered list in SKILL.md.

  1. Cheap self-check. Load the rendered result yourself, eyeball it, and fix the obvious breaks (broken layout, wrong token, console errors)…
  2. Independent verifier pass. A separate reviewer (or fresh subagent) does the deeper check — visual fidelity against source, layout under…

What it can do on your machine

Read from SKILL.md and the folder at commit d64db2b. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Read

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are css and typescript).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Design Engineering loads about 4.3k tokens when it runs. Until then it costs about 50 tokens; SKILL.md has 2,019 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~50
When it runs · the whole SKILL.md, loaded when a task matches
~4.3k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from softspark/ai-toolkit at commit d64db2b, republished under its Apache-2.0 licence (© softspark). 2,019 words, ~4,350 tokens.

Download SKILL.mdSave it as .claude/skills/design-engineering/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.
name
design-engineering
description
UI craftsmanship: animation rules, easing, micro-interactions, state polish. Triggers: animation, transition, ease-out, motion, micro-interaction, hover, loading state, UI polish.
allowed-tools
Read
effort
medium
user-invocable
false

Design Engineering Skill

Based on Emil Kowalski's design engineering philosophy — UI polish, component craftsmanship, and the compound value of invisible details.

Core Principles

  • Taste is trainable. Develops through studying exceptional work, reverse-engineering animations, and intentional practice.
  • Invisible details create love. Most UI refinements users never consciously register — but combined they produce something stunning.
  • Beauty differentiates. When functionality is table stakes, aesthetic excellence becomes genuine leverage.

Anti-Slop Visual & Structural Checklist

Defaults that signal machine-generated UI ("AI slop"). Each is a falsifiable rule to uphold:

  • Avoid full-bleed saturated gradient backgrounds (purple-to-pink/blue hero washes) and gradient headlines (background-clip: text). Use solid ink or warm neutral tinting.
  • Avoid emoji as load-bearing decoration (emoji as icons, bullet markers, or section badges). Use a real icon set (Lucide/Phosphor/Heroicons) or typographic hierarchy.
  • Avoid the 3-equal-column card grid with icon-above-heading tiles, nested cards-in-cards, or cards with thick coloured left-edge side stripes.
  • Avoid hand-drawn fake imagery in SVG (synthetic "photos", invented logos, faux screenshots). Use a real asset or an honest labeled placeholder.
  • Avoid fake re-drawn UI chrome (mock browser bars with traffic-light dots, mock IDE title bars, faux phone frames). Let content stand cleanly or use real screenshots in a <figure>.
  • Avoid default-attractor sameness (Hero → 3 features → CTA → footer). Pick intentional macrostructures and vary heading placement, column rhythm, and divider language.
  • Avoid the overused default font stack (Inter/Roboto on system-ui with no pairing). Apply the 2+1 rule (display + body + at most 1 outlier face in <=2 slots).
  • Avoid italic headers: headings and display type are always roman (font-style: normal). Never use single-word italic emphasis inside a headline.

Pre-Emit Self-Critique (Six Axes)

Before marking any UI output complete, score it 1–5 on these six axes (score <3 on any axis triggers a revision pass):

#AxisAssessment
PPhilosophyClear position and intent ("why"), not just arbitrary decoration
HHierarchyClear primary / secondary / tertiary weight distinguishable in 2 seconds
EExecutionExact rule weights, contrast ratios, focus rings, zero layout shifts
SSpecificityTailored specifically to this brief, not a generic interchangeable template
RRestraintRemoved anything unearned (decorative bloat, redundant cards, excess padding)
VVarietyStructurally distinct from previous layouts in the project (not just a color swap)

The 8 Interactive States Discipline

Every interactive element (button, input, select, card, tab, switch) must explicitly handle all 8 states in code. Styling only default + hover is an immediate defect:

StateTriggerRequired Treatment
1. DefaultAt restClean base styling, defined token bindings
2. HoverPointer over (@media (hover: hover))Subtle background shift (4–6%) or 1px translate, no layout jump
3. FocusKeyboard navigationVisible :focus-visible ring (2px solid, 1–2px offset), instant appearance
4. ActivePressedPressed-in feel: slight darken, transform: translateY(1px) or scale(0.98)
5. DisabledInactive (disabled, aria-disabled)3 channels: opacity: 0.55, cursor: not-allowed, muted token color
6. LoadingAsync in-flight (data-state="loading")Inline spinner replacing icon/badge, label preserved, submit disabled
7. ErrorValidation failure (aria-invalid="true")Distinct error token border/message, helper text replaced, error icon
8. SuccessOperation completed (data-state="success")Quiet confirmation: subtle green/accent indicator or checkmark, auto-dismiss

Input Fields & Zero Layout Shift

Input fields, textareas, and selects are where almost-right UIs break:

  • Constant border width (1px everywhere): Never change border-width between default, hover, focus, error, or disabled states. State changes go to background-color, outline, box-shadow, or border-color.
  • Reserved transparent outline: Initialize with outline: 2px solid transparent; outline-offset: 1px; so activating :focus-visible never shifts layout or thrashes paint.
  • Matched component heights: Input height MUST equal adjacent button height (base floor 44px for touch targets).
  • Reserved helper-text slot: Allocate min-height: 1lh for helper/error text so appearing validation messages do not push downstream page content.

Responsive Non-Negotiables

Verify every layout at 320px, 375px, 414px, and 768px:

  • No horizontal scroll: Apply overflow-x: clip (never hidden) on both html and body.
  • Single-line clickable affordances: Buttons, primary nav links, footer links, and CTAs must never wrap to two lines. Shorten label or reflow parent container.
  • Image grid tracks: Always use minmax(0, 1fr) instead of bare 1fr to prevent image intrinsic dimensions from blowing out the grid.
  • Header wrapping: Display headers must include overflow-wrap: anywhere; min-width: 0;.

Locked Tokens Discipline

  • All colors and typography must bind to declared tokens (var(--color-accent), var(--font-display)).
  • Never improvise inline hex / rgb / OKLCH values in components mid-build.
  • Keep accent footprint under ~5% of viewport area (accent is for focal emphasis, not surface fill).
  • Tint neutral surfaces toward the primary anchor hue (minimum 0.005 chroma in OKLCH) — avoid flat #000 / #fff.

Minimum-Scale Floors

Accessibility-grounded hard thresholds. Going below these is a defect, not a style choice:

ContextFloorBasis
Slide / presentation body text~24pxReadable from the back of a room
Print body text~12ptLegible at arm's length on paper
Mobile touch targets44px × 44pxApple HIG minimum tappable size

Treat these as the lower bound, not the target. Captions and footnotes may approach the floor; primary content should sit comfortably above it.

Context-First & Pre-Flight Discipline

High-fidelity work MUST be rooted in real context before any pixels are produced:

  • Run Pre-Flight Scan: Inspect existing design.md, package font stacks, palette tokens (:root, Tailwind @theme), motion libraries (framer-motion, motion, gsap), and spacing scale.
  • Preserve existing design systems: Never overwrite established tokens or typography unless explicitly asked.
  • Lift exact values: Copy real token variable names and spacing classes straight from source. Do NOT reconstruct token values from memory.

Question-Budget Gate

Calibrate questions to how bounded the ask is, then proceed:

  • Rich context + bounded ask → ask nothing, build. Example: "match this card to the existing dashboard" with the repo in hand.
  • Open ask → ask before building. Example: "prototype my onboarding" needs goals, target audience, and which dimension to diverge on (UX flow vs. visual treatment vs. copy). Resolve those three, then start.

Explore Many Variations

For exploratory or open work, produce 3+ atomic variations across distinct axes, never three tweaks of one idea:

  • Vary on different dimensions: layout, color, type treatment, interaction model.
  • Deliberately mix safe matches with at least one novel direction — do not converge early.
  • Order them basic → advanced so the reviewer can scan the gradient (the "Design It Twice" premise extended past two).

Match Existing Vocabulary

When editing a live UI, conform to it instead of imposing a new style:

  • Reverse-engineer the palette, interactive states (hover/active/disabled), motion timing, and shadow/card/density treatment.
  • Match the copy tone too — terse product UI and chatty marketing copy are different vocabularies.
  • A change that introduces a foreign style is a regression even when it looks good in isolation.

No-Filler Content

  • Every element earns its place. No dummy stats, decorative sections, or lorem blocks added just to fill space. If a block has no purpose, cut it.
  • Honest placeholder beats a bad fake. A labeled placeholder ("[product screenshot]") is better than an invented icon or hand-drawn fake image. Do NOT fabricate assets — ask for the real ones.

Animation Decision Framework

Frequency determines approach
Usage PatternStrategy
100+ dailyNo animation
Tens dailyDrastically reduce
OccasionalStandard animation
Rare/first-timeAdd delight

Never animate keyboard-initiated actions — they repeat hundreds of times daily, making animation feel sluggish.

Purpose validation

Every animation requires justification: spatial consistency, state indication, explanation, user feedback, or preventing jarring transitions. "It looks cool" alone disqualifies frequent interactions.

Easing rules
DirectionEasingWhy
Entering elementsease-outImmediate feedback
On-screen movementease-in-outNatural acceleration
Hover/color changeseaseSmooth transition
Constant motionlinearNo acceleration

Critical: Abandon default CSS easings. Use custom curves:

css
/* Punchy entrance */
transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);

Never use ease-in — it delays initial movement exactly when attention peaks, making interfaces feel sluggish.

Show full SKILL.md (792 more words)Show less
Duration guidelines
ElementTiming
Button press100-160ms
Tooltips, small popovers125-200ms
Dropdowns, selects150-250ms
Modals, drawers200-500ms

UI animations should stay under 300ms. Speed perception matters as much as actual speed.

Component Patterns

Buttons must respond
css
button:active {
  transform: scale(0.97);
}

Tactile feedback confirming interface responsiveness.

Never scale from zero
css
/* Bad */
.enter { transform: scale(0); opacity: 0; }

/* Good — natural entrance */
.enter { transform: scale(0.95); opacity: 0; }

Real-world objects don't vanish and reappear. Start from scale(0.95).

Popovers scale from triggers
css
.popover {
  transform-origin: var(--radix-popover-content-transform-origin);
}

Exception: modals keep centered origin (viewport-anchored, not trigger-anchored).

Tooltip optimization

Initial tooltip includes delay; subsequent hovers skip both delay and animation via [data-instant] attribute — perceived speed without defeating accidental activation prevention.

Advanced Animation Techniques

For advanced transform mastery, 3D orbits, and clip-path animation recipes (tabs, hold-to-delete, image reveals, sliders), see reference/animation-recipes.md.

Performance Rules

GPU acceleration

Only animate transform and opacity — these skip layout and paint. Animating padding, margin, height, width triggers full rendering pipeline.

CSS variables caveat

Changing parent CSS variables recalculates styles on all children. Update transform directly on elements instead.

Framer Motion gotcha

Shorthand properties (x, y, scale) use main-thread requestAnimationFrame, not GPU:

tsx
// Bad — main thread
<motion.div animate={{ x: 100 }} />

// Good — GPU accelerated
<motion.div animate={{ transform: "translateX(100px)" }} />
CSS beats JavaScript

CSS animations run off-thread and remain smooth during page loads. Framer Motion drops frames when browser is busy. Use CSS for predetermined animations; JavaScript for dynamic, interruptible ones.

Accessibility

Reduced motion

Keep opacity and color transitions (aid comprehension). Remove movement and position animations:

css
@media (prefers-reduced-motion: reduce) {
  * {
    animation-duration: 0.01ms !important;
    transition-duration: 0.01ms !important;
  }
}
Touch hover protection
css
@media (hover: hover) and (pointer: fine) {
  .card:hover {
    transform: translateY(-2px);
  }
}

Touch triggers false hover positives — always gate hover animations.

Building Loved Components

For component craftsmanship principles (developer experience, defaults, edge cases, asymmetric timing), see reference/component-craft.md.

Review Checklist

IssueResolution
transition: allSpecify properties: transition: transform 200ms ease-out
scale(0) entriesStart scale(0.95) with opacity: 0
ease-in on UISwitch to ease-out or custom curve
Popover transform-origin: centerUse trigger-aware CSS variable
Animation on keyboard actionsRemove entirely
Duration > 300ms UIReduce to 150-250ms
Hover without media queryAdd @media (hover: hover) and (pointer: fine)
Keyframes on rapid triggersUse CSS transitions
Framer x/y under loadUse transform: "translateX()"
Identical enter/exit speedMake exit faster (e.g., 2s enter, 200ms exit)
Simultaneous element appearanceStagger 30-80ms between items

Two-Stage Verification Handoff

Visual work ships through two passes, mirroring the toolkit's verification-before-completion and subagent two-stage review ethos:

  1. Cheap self-check. Load the rendered result yourself, eyeball it, and fix the obvious breaks (broken layout, wrong token, console errors) before handing off. Never claim done on output you have not opened.
  2. Independent verifier pass. A separate reviewer (or fresh subagent) does the deeper check — visual fidelity against source, layout under different widths, console clean. On pass it stays silent; it surfaces ONLY on failure, with the specific defect.

Anti-Patterns

  • transition: all — animates unintended properties, hurts performance
  • ease-in on UI elements — delays feedback when attention peaks
  • Animating height/width/margin — triggers layout recalculation
  • Same duration for enter and exit — exits should be faster
  • Hover effects without @media (hover: hover) — breaks touch devices
  • Framer Motion shorthands under load — drops frames on main thread

Rules

  • MUST specify exact properties in transition (transition: transform 200ms ease-out) — never transition: all
  • MUST use ease-out (or a custom curve) on UI appearances; ease-in delays feedback at the moment the user's attention peaks
  • NEVER animate height, width, margin, or top/left — animate transform and opacity only
  • CRITICAL: exit is faster than enter. A 2s linear enter (hold-to-delete) needs a 200ms ease-out exit
  • MANDATORY: any animation longer than 300ms for UI feedback needs an explicit justification
  • MUST implement all 8 interactive states (default, hover, focus-visible, active, disabled, loading, error, success) for every interactive element
  • MUST keep border-width: 1px constant across all input states (default/hover/focus/error/disabled) with a reserved transparent outline to guarantee zero layout shift
  • MUST apply overflow-x: clip on both html and body to eliminate horizontal viewport scrolling on mobile (320px–768px)
  • MUST ensure clickable affordance text (buttons, nav links, CTAs) remains single-line across all viewports
  • MUST keep all display headings roman (font-style: normal) — never use single-word italic emphasis inside headlines
  • MUST adhere to the 2+1 typography rule (max 3 families, outlier face used in at most 2 slots)
  • MUST lock all colors to named CSS variable tokens — never improvise inline hex/rgb/OKLCH values mid-render
  • MUST lift exact values (hex, spacing, font stack, radii) from real source — never reconstruct tokens from memory
  • MUST keep mobile touch targets at 44px+ minimum floor
  • NEVER ship slop defaults (purple/blue gradient hero washes, gradient text headlines, emoji as icons, cards-in-cards, side-stripe cards, centered-everything 100vh heroes)
  • NEVER add filler (dummy stats, fake testimonials, invented logos, lorem) — use honest labeled placeholders
  • MUST run pre-emit self-critique scoring (P/H/E/S/R/V) before completing UI implementation

Gotchas

For compositor edge cases, Framer Motion GPU optimizations, and reduced-motion gotchas, see reference/animation-recipes.md.

When NOT to Load

  • For accessibility beyond motion (contrast, focus, ARIA) — use /a11y-validate
  • For component-library architecture (Radix, Headless UI, ShadCN) — use /frontend-specialist agent
  • For information architecture and user flows — use /ux-designer agent
  • For generic CSS patterns without motion — this skill is motion-specific
  • For brand voice / content tone — use /brand-voice

© softspark, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 2 other files in app/skills/design-engineering of softspark/ai-toolkit.

  • SKILL.md
  • reference/animation-recipes.md
  • reference/component-craft.md

Open the folder on GitHubat commit d64db2b

Compare with similar skills

Design Engineering next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Design Engineering compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Design Engineering this skillsoftspark/ai-toolkit179—~4.3kAutomated safety check: PassApache-2.0
Make Interfaces Feel Bettersamuelclay/NewsBlur7.6k10 repos~1.5kAutomated safety check: PassMIT
Baseline UIibelick/ui-skills9.5k8 repos~855Automated safety check: PassMIT
Apple Liquid Glass Designnaplesblue/apple-design-skill267—~2.3kAutomated safety check: PassMIT
Better UItrycompai/crm11k—~2.4kAutomated safety check: PassMIT
UI UX Pro MaxOhh-889/skyroc7956 repos~14kAutomated safety check: PassMIT

Similar skills

  • Make Interfaces Feel Better

    samuelclay/NewsBlur

    Design engineering principles for making interfaces feel polished.

    7.6k GitHub starsUsed in 10 repos~1.5k tokens
    Frontend & DesignAuto-check passed
  • Baseline UI

    ibelick/ui-skills

    Applies a fixed set of UI rules for stack, components, interaction, animation, typography and layout, or reviews a file against them with concrete fixes.

    9.5k GitHub starsUsed in 8 repos~855 tokens
    Frontend & DesignAuto-check passed
  • Apple Liquid Glass Design

    naplesblue/apple-design-skill

    Sets design rules for web interfaces that should feel like current Apple design: unified surfaces, restrained type and glass only where layers overlap.

    267 GitHub stars~2.3k tokensUpdated 2 mo ago
    Frontend & DesignAuto-check passed
  • Better UI

    trycompai/crm

    Design engineering principles for making interfaces feel polished.

    11k GitHub stars~2.4k tokensUpdated 26 days ago
    Frontend & DesignAuto-check passed
  • UI UX Pro Max

    Ohh-889/skyroc

    UI/UX design intelligence for web, mobile, and desktop. An agent skill from Ohh-889/skyroc.

    795 GitHub starsUsed in 6 repos~14k tokens
    Frontend & DesignAuto-check passed
  • Antigravity Design Expert

    sickn33/agentic-awesome-skills

    Core UI/UX engineering skill for building highly interactive, spatial, weightless, and glassmorphism-based web interfaces using GSAP and 3D CSS.

    47k GitHub starsUsed in 2 repos~868 tokens
    Frontend & DesignAuto-check passed

More from softspark/ai-toolkit

All 112 skills in this repo
  • Prepare Test Env

    softspark/ai-toolkit

    Prepare or verify a project QA environment with source identity, readiness, browser access, evidence paths and owned cleanup.

    179 GitHub stars~1.8k tokensUpdated yesterday
    Auto-check: notes
  • A11y Validate

    softspark/ai-toolkit

    Accessibility validator: WCAG 2.1 AA, EN 301 549, EAA. An agent skill from softspark/ai-toolkit.

    179 GitHub stars~3.8k tokensUpdated yesterday
    Auto-check: notes
  • Analyze

    softspark/ai-toolkit

    Analyzes code quality, complexity, patterns across codebase.

    179 GitHub stars~1k tokensUpdated yesterday
    Auto-check passed
  • Autonomous Dev

    softspark/ai-toolkit

    Drives a brief, specification, issue or existing PR through implementation, review, tests and QA to a ready PR.

    179 GitHub stars~2.6k tokensUpdated yesterday
    Auto-check: notes
  • Brand Voice

    softspark/ai-toolkit

    Direct technical voice for docs, README, user-facing text. An agent skill from softspark/ai-toolkit.

    179 GitHub stars~2.1k tokensUpdated yesterday
    Auto-check passed
  • CI

    softspark/ai-toolkit

    Detect/generate/debug CI pipeline config (GitHub Actions, GitLab CI).

    179 GitHub stars~1.1k tokensUpdated yesterday
    Auto-check: notes

Questions about Design Engineering

What does Design Engineering do?

UI craftsmanship: animation rules, easing, micro-interactions, state polish. Design Engineering is an agent skill from softspark/ai-toolkit. UI craftsmanship: animation rules, easing, micro-interactions, state polish.

When should I use Design Engineering?

Design Engineering fits situations like: tasks that involve Web animation and motion; tasks that involve UI design.

How do I install Design Engineering in Claude Code?

Run `npx skills add softspark/ai-toolkit --skill design-engineering -a claude-code`. Or copy the skill folder (app/skills/design-engineering in softspark/ai-toolkit) into .claude/skills/design-engineering in your project. Claude Code loads it when a task matches its description.

How do I install Design Engineering in Codex?

Run `npx skills add softspark/ai-toolkit --skill design-engineering -a codex`. Or copy the skill folder (app/skills/design-engineering in softspark/ai-toolkit) into .agents/skills/design-engineering in your project. Codex loads it when a task matches its description.

Can I use Design Engineering in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add softspark/ai-toolkit --skill design-engineering -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/design-engineering, .gemini/skills/design-engineering, .github/skills/design-engineering and .opencode/skills/design-engineering in your project.

What does Design Engineering need to run?

SKILL.md names no scripts, command-line tools or credentials: Design Engineering is instructions for the agent only. Its frontmatter pre-approves these tools: Read.

Does Design Engineering access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Design Engineering safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Design Engineering use?

Design Engineering is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Design Engineering use?

About 4.3k tokens (SKILL.md is roughly 17k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Design Engineering?

Skills that share tags, products or a category with Design Engineering: Make Interfaces Feel Better (samuelclay/NewsBlur, 7.6k stars), Baseline UI (ibelick/ui-skills, 9.5k stars), Apple Liquid Glass Design (naplesblue/apple-design-skill, 267 stars) and Better UI (trycompai/crm, 11k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Design Engineering?

softspark (a GitHub user) maintains it in softspark/ai-toolkit, which has 179 GitHub stars. The repository holds 112 skills in this directory. The repository was last updated on October 7, 2026.

Source: softspark/ai-toolkit on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.