emotional-disconnect — Claude Code skill: fix animation emotion
Diagnoses why an animation feels wrong and matches motion to the emotion the moment should carry. Useful when users call your UI cold or annoying.
npx skills add dylantarre/animation-principles --skill emotional-disconnect -a claude-codeWhat emotional-disconnect does
The skill ties the character of motion to context. It walks Disney's principles and finds the source of the mismatch in each: Appeal covers emotional resonance, Exaggeration covers intensity, Timing covers speed, Squash and Stretch covers elasticity, Follow Through covers how things end. Every principle comes with a stated issue and a fix.
Inside there is an emotion-to-motion map. Joy means bouncy overshoot at a fast tempo, Calm means a gentle ease-out and slow timing, Urgency means a sharp ease-in with no overshoot, Serious means linear or barely visible easing. The same file ships CSS variables — --ease-calm, --ease-playful, --ease-urgent — with the cubic-bezier values spelled out.
A troubleshooting checklist and five quick fixes round it out: name the target emotion, match easing to it, slow down serious moments, cut animations that fight the tone. One checklist item suggests asking users for three words that describe the motion. Nothing gets installed beyond the skill file, and it edits no code on its own — your agent applies the guidance to the markup you already have.
What it helps with
- pin down why an animation feels off when nobody can articulate it
- strip playful motion out of a serious screen
- pick an easing curve that matches the intended emotion
- retune timing so it fits the tone of the page
- remove elastic effects from clinical or professional contexts
Example prompts for the agent
- The checkout modal animation feels too playful, run emotional-disconnect on it
- Users say the interface feels cold — pick motion that reads as calm
- Check the easing and timing on the onboarding page, it should feel joyful
How to install emotional-disconnect
1Skills CLI (Vercel)
npx skills add dylantarre/animation-principles --skill emotional-disconnect -a claude-code2Manually: put the files in place
~/.claude/skills/emotional-disconnect/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/emotional-disconnect/
1Skills CLI (Vercel)
npx skills add dylantarre/animation-principles --skill emotional-disconnect -a codex2Manually: put the files in place
.agents/skills/emotional-disconnect/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add dylantarre/animation-principles --skill emotional-disconnect -a cursor2Manually: put the files in place
.cursor/skills/emotional-disconnect/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install dylantarre/animation-principles emotional-disconnect2Manually: put the files in place
.github/skills/emotional-disconnect/SKILL.md1Skills CLI (Vercel)
npx skills add dylantarre/animation-principles --skill emotional-disconnect -a gemini-cli2Platform CLI
gemini skills install https://github.com/dylantarre/animation-principles --path skills/12-by-problem-type/emotional-disconnectManually: put the files in place
.devin/skills/emotional-disconnect/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add dylantarre/animation-principles --skill emotional-disconnect -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about emotional-disconnect
How do I install emotional-disconnect in Claude?
Run npx skills add dylantarre/animation-principles --skill emotional-disconnect -a claude-code. The skill lands at ~/.claude/skills/emotional-disconnect/SKILL.md.
What does emotional-disconnect do?
It aligns animation with the emotion a moment should evoke. The skill diagnoses the mismatch through Appeal, Exaggeration, Timing, Squash and Stretch and Follow Through, then gives a fix for each.
Which platforms can run this skill?
Besides Claude, there are install commands for Codex, Cursor, GitHub Copilot, Gemini CLI and OpenCode. GitHub Copilot uses a different one: gh skill install dylantarre/animation-principles emotional-disconnect.
Source text
SKILL.md · MIT
--- name: emotional-disconnect description: Use when animation feels wrong, creates unintended emotional response, or mismatches context --- # Emotional Disconnect Align animation emotion with context using Disney's principles. ## Problem Indicators - Animation feels "off" but hard to articulate - Playful motion on serious content - Sterile motion on warm content - Users describe UI as cold/robotic or chaotic/annoying - Mismatch between animation and message ## Diagnosis by Principle ### Appeal **Issue**: Animation lacks emotional resonance **Fix**: Define the emotional goal. Warm = soft easing, overshoot. Professional = crisp, linear. Match motion to message. ### Exaggeration **Issue**: Wrong intensity for emotional context **Fix**: Serious contexts need restraint. Joyful contexts can be bouncy. Match exaggeration to emotional stakes. ### Timing **Issue**: Speed conflicts with emotional tone **Fix**: Calm emotions = slower. Excitement = faster. Tension = variable speed. Timing IS emotion. ### Squash and Stretch **Issue**: Elastic effects on rigid contexts **Fix**: Squash/stretch implies playfulness and life. Remove for serious, clinical, or professional contexts. ### Follow Through **Issue**: Endings don't match emotional intent **Fix**: Abrupt endings feel harsh. Soft landings feel gentle. Bouncy endings feel playful. Choose consciously. ## Quick Fixes 1. **Name the target emotion** - "This should feel calm" 2. **Match easing to emotion** - Bouncy = playful, smooth = calm 3. **Adjust timing to context** - Slow down serious moments 4. **Remove mismatch sources** - Cut animations that fight the tone 5. **Test with emotional vocabulary** - Ask users "how does this feel?" ## Troubleshooting Checklist - [ ] What emotion should this moment evoke? - [ ] Does animation easing match that emotion? - [ ] Is timing appropriate for emotional context? - [ ] Would removing animation feel better? - [ ] Do similar products use different motion here? - [ ] Ask users: "What 3 words describe this animation?" - [ ] Does animation match content gravity? - [ ] Test: Cover content, does motion emotion match? ## Emotion-to-Motion Map | Emotion | Easing | Timing | Effects | |---------|--------|--------|---------| | Joy | Bouncy overshoot | Fast | Squash/stretch, scale up | | Calm | Gentle ease-out | Slow | Fade, subtle slide | | Trust | Smooth, predictable | Medium | Minimal, consistent | | Urgency | Sharp ease-in | Fast | Direct, no overshoot | | Playful | Spring physics | Variable | Rotation, bounce | | Serious | Linear or subtle ease | Slow | Minimal movement | ## Code Pattern ```css /* Calm/trustworthy */ --ease-calm: cubic-bezier(0.4, 0, 0.2, 1); /* Playful/joyful */ --ease-playful: cubic-bezier(0.34, 1.56, 0.64, 1); /* Urgent/serious */ --ease-urgent: cubic-bezier(0.4, 0, 1, 1); ```
© dylantarre · MIT · dylantarre/animation-principles