skills/council/advocate/interaction-design/SKILL.md
Use when designing component interaction specs with visual states, transitions, and accessibility requirements. Covers state matrices, responsive behavior, ARIA compliance, and content constraints. Do not use for multi-step user journey mapping (use journey-mapping).
npx skillsauth add dtsong/my-claude-setup interaction-designInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Design component interaction specs with all visual states, transitions, and accessibility requirements.
Reads component requirements, design system documentation, and platform guidelines for interaction analysis. Does not modify files or execute code. Does not access running applications or browser environments directly.
No user-provided values are used in commands or file paths. All inputs are treated as read-only analysis targets.
| State | Visual Treatment | When Active | |-------|-----------------|-------------| | Default/Rest | Base styling | No interaction | | Hover | Subtle highlight, cursor change | Mouse over (desktop) | | Focus | Visible focus ring | Keyboard navigation, tab | | Active/Pressed | Depressed/accent state | Mouse down, touch | | Loading/Pending | Spinner, skeleton, disabled input | Async operation in progress | | Success/Confirmed | Green accent, checkmark, brief flash | Operation completed | | Error/Invalid | Red accent, error message, icon | Validation failed, API error | | Disabled | Muted colors, no pointer events | Precondition not met | | Empty/Placeholder | Placeholder text, illustration | No data or content yet |
For each state change:
role attribute (button, dialog, alert, etc.)aria-label or aria-labelledby for non-text elementsaria-describedby for supplementary descriptionsaria-live regions for dynamic updatesaria-liveCompaction resilience: If context was lost during a long session, re-read the Inputs section to reconstruct what component is being designed, check the Progress Checklist for completed steps, then resume from the earliest incomplete step.
| State | Background | Border | Text | Icon | Cursor | Shadow | |-------|-----------|--------|------|------|--------|--------| | Default | ... | ... | ... | ... | ... | ... | | Hover | ... | ... | ... | ... | ... | ... | | Focus | ... | ... | ... | ... | ... | ... | | Active | ... | ... | ... | ... | ... | ... | | Loading | ... | ... | ... | ... | ... | ... | | Success | ... | ... | ... | ... | ... | ... | | Error | ... | ... | ... | ... | ... | ... | | Disabled | ... | ... | ... | ... | ... | ... |
[Default] ←→ [Hover] → [Active] → [Loading] → [Success]
↓ ↓
[Focus] [Error]
↓
[Active]
Props:
- variant: 'primary' | 'secondary' | 'ghost'
- size: 'sm' | 'md' | 'lg'
- disabled: boolean
- loading: boolean
- ...
Events:
- onClick / onPress
- onFocus / onBlur
- ...
Slots:
- icon (leading/trailing)
- children (content)
- ...
development
Use when the council needs to surface organizational knowledge buried across multiple internal sources (wikis, design docs, ADRs, past tickets, postmortems, chat archives, code repos). Plans where to look, what to cross-reference, and how to synthesize findings into evidence the council can act on. Do not use for external market research (use competitive-analysis), library evaluation (use library-evaluation), or technology trend assessment (use technology-radar).
testing
Use to convert a Word .docx file to PDF and/or verify its page count. Triggers on: converting docx to pdf, rendering a document, checking how many pages a docx produces, or asserting a page-count constraint (e.g. a resume must stay 2 pages). Wraps LibreOffice headless conversion.
development
Security audit checklist for web applications. Use when reviewing, auditing, or hardening a web app's security posture. Covers rate limiting, auth headers, IP blocking, CORS, security middleware, input validation, file upload limits, ORM usage, and password hashing. Triggers on requests like "review security", "harden this app", "security audit", "check for vulnerabilities", or when building/reviewing API endpoints.
development
Interactive wizard to craft effective prompts using Claude Code best practices