interaction-design
3
总安装量
2
周安装量
#58930
全站排名
安装命令
npx skills add https://github.com/pluginagentmarketplace/custom-plugin-ux-design --skill interaction-design
Agent 安装分布
codex
2
claude-code
2
kilo
1
zencoder
1
cline
1
Skill 文档
Interaction Design Skill
Atomic Skill: Design intuitive interactions that guide users through seamless experiences
Purpose
This skill provides frameworks for designing responsive, accessible, and delightful user interactions.
Skill Invocation
Skill("custom-plugin-ux-design:interaction-design")
Parameter Schema
Input Parameters
interface InteractionDesignParams {
// Required
type: "pattern" | "microinteraction" | "flow" | "feedback" | "gesture";
context: string;
// Optional
platform?: "web" | "mobile" | "desktop";
interaction_model?: "touch" | "mouse" | "keyboard" | "voice" | "hybrid";
accessibility?: {
reduced_motion?: boolean;
keyboard_only?: boolean;
};
}
Validation Rules
type:
type: enum
required: true
values: [pattern, microinteraction, flow, feedback, gesture]
context:
type: string
required: true
min_length: 10
platform:
type: enum
default: "web"
Execution Flow
INTERACTION DESIGN EXECUTION
ââââââââââââââââââââââââââââââââââââââââââââ
Step 1: UNDERSTAND USER GOALS
âââ Identify user intent
âââ Map expected outcomes
âââ Define success criteria
Step 2: DESIGN TRIGGERS
âââ Define interaction triggers
âââ Specify input methods
âââ Consider accessibility
Step 3: CREATE RESPONSE
âââ Design visual feedback
âââ Specify timing/easing
âââ Add audio/haptic (optional)
Step 4: HANDLE STATES
âââ Success state
âââ Error state
âââ Loading state
âââ Empty state
Step 5: DOCUMENT & TEST
âââ Create specifications
âââ Prototype interactions
âââ Validate with users
ââââââââââââââââââââââââââââââââââââââââââââ
Retry Logic
retry_config:
max_attempts: 3
backoff_type: exponential
initial_delay_ms: 500
max_delay_ms: 5000
retryable_errors:
- ANIMATION_RENDER_FAILED
- PROTOTYPE_SYNC_ERROR
Logging Hooks
interface InteractionLog {
timestamp: string;
event: "interaction_start" | "feedback_shown" | "complete" | "error";
interaction_type: string;
duration_ms: number;
success: boolean;
}
Learning Modules
Module 1: Interaction Patterns
COMMON PATTERNS
âââ Navigation
â âââ Tab navigation
â âââ Sidebar toggle
â âââ Breadcrumbs
âââ Data Entry
â âââ Form validation
â âââ Autocomplete
â âââ Date pickers
âââ Content
â âââ Infinite scroll
â âââ Pull to refresh
â âââ Expand/collapse
âââ Actions
âââ Drag and drop
âââ Swipe actions
âââ Long press
Module 2: Micro-interactions
MICRO-INTERACTION ANATOMY
âââ Trigger (user action)
âââ Rules (what happens)
âââ Feedback (visual response)
âââ Loops/Modes (ongoing state)
TIMING GUIDELINES
âââ Instant: 0-100ms (feedback)
âââ Fast: 100-300ms (transitions)
âââ Normal: 300-500ms (animations)
âââ Slow: 500ms+ (complex sequences)
EASING CURVES
âââ ease-out: Deceleration (entering)
âââ ease-in: Acceleration (exiting)
âââ ease-in-out: Smooth (moving)
âââ spring: Natural (bouncy)
Module 3: User Flows
FLOW DESIGN PRINCIPLES
âââ Minimize steps to goal
âââ Provide clear progress
âââ Allow easy recovery
âââ Confirm destructive actions
âââ Remember user state
FLOW COMPONENTS
âââ Entry points
âââ Decision points
âââ Action points
âââ Exit points
âââ Error paths
Module 4: Affordances
AFFORDANCE TYPES
âââ Explicit (buttons, links)
âââ Pattern-based (icons, gestures)
âââ Hidden (shortcuts, gestures)
âââ Negative (disabled states)
SIGNIFIERS
âââ Visual cues (icons, arrows)
âââ Text labels
âââ Cursor changes
âââ Animation hints
âââ Sound cues
Module 5: Feedback Systems
FEEDBACK TYPES
âââ Visual (color, motion)
âââ Auditory (sounds, voice)
âââ Haptic (vibration)
âââ Systemic (notifications)
FEEDBACK TIMING
âââ Immediate: < 100ms
âââ Responsive: 100-300ms
âââ Perceived: 300-1000ms
âââ Delayed: > 1000ms (show progress)
Error Handling
| Error Code | Description | Recovery |
|---|---|---|
IX-001 |
Missing feedback | Add visual response |
IX-002 |
Gesture conflict | Redesign gesture |
IX-003 |
Animation jank | Optimize performance |
IX-004 |
Unclear affordance | Add signifiers |
IX-005 |
Dead-end flow | Add escape routes |
Troubleshooting
Problem: Users miss interactions
Diagnosis:
âââ Check: Affordance visibility
âââ Check: Position in hierarchy
âââ Check: Size and contrast
âââ Solution: Enhance discoverability
Steps:
1. Conduct findability test
2. Increase visual prominence
3. Add onboarding hints
4. Consider progressive disclosure
Problem: Interactions feel slow
Diagnosis:
âââ Check: Animation duration
âââ Check: Easing curves
âââ Check: Response delay
âââ Solution: Optimize timing
Steps:
1. Measure time to feedback
2. Reduce to 100-300ms range
3. Use appropriate easing
4. Add immediate micro-feedback
Unit Test Templates
describe("InteractionDesignSkill", () => {
describe("pattern validation", () => {
it("should include trigger and feedback", async () => {
const result = await invoke({
type: "pattern",
context: "form submission"
});
expect(result.pattern.trigger).toBeDefined();
expect(result.pattern.feedback).toBeDefined();
});
});
describe("microinteraction timing", () => {
it("should stay within timing guidelines", async () => {
const result = await invoke({
type: "microinteraction",
context: "button click"
});
expect(result.animation.duration_ms).toBeLessThanOrEqual(300);
});
});
describe("accessibility", () => {
it("should provide reduced motion alternative", async () => {
const result = await invoke({
type: "microinteraction",
accessibility: { reduced_motion: true }
});
expect(result.animation.reduced_motion_fallback).toBeDefined();
});
});
});
Quality Metrics
| Metric | Target | Measurement |
|---|---|---|
| Task completion | > 95% | User success rate |
| Time to feedback | < 100ms | Perceived responsiveness |
| Animation FPS | 60fps | Frame rate |
| Accessibility | 100% | Keyboard navigable |
Version History
| Version | Date | Changes |
|---|---|---|
| 1.0.0 | 2025-12-30 | Production-grade upgrade |