mcouthon/agents/power-ui
Claude Code and agent skill by mcouthon/agents
- community
Checking that the SKILL.md file is still in the repository.
Build power-user interfaces: keyboard-first, information-dense, AI-present. Covers row patterns, keyboard layers, AI integration, liveness, nav chrome, color discipline, triage UX, visual impact planning, and checklists. Triggers on: 'power-ui', 'keyboard first', 'data table', 'information dense', 'command palette', 'liveness', 'nav chrome', 'color discipline', 'triage UX', 'bulk action bar', 'suggestion chips', 'drawer auto-advance', 'visual impact', 'row component'. Full access mode.
Install
npx vskill@latest install mcouthon/agents/power-uiSKILL.md
Power-UI Construction Manual
Patterns and checklists for power-user interfaces: information-dense, fully keyboard-operable, AI-present. Stack: React + TypeScript + Tailwind CSS. Adapt token names to your design system.
0. When to Use This Skill
Target Archetype
This skill is for power-user tools — apps where the primary user is a daily-driver who values speed, density, and keyboard mastery over discoverability and onboarding.
Good fits: personal dashboards, admin consoles, developer tools, triage interfaces, AI command centers, ops tools.
Not for: marketing sites, onboarding flows, consumer apps prioritizing discoverability, or tools where most users are occasional visitors. For those, use /design alone.
Relationship with /design
The /design skill builds your visual foundation — tokens, typography, color, shadows, animation system, component styling. This skill layers interaction architecture on top: keyboard navigation, information density, AI presence, page structure.
Workflow: Start with /design for tokens and primitives → apply this skill for page structure and interaction patterns.
When both skills apply, this skill overrides these /design defaults:
/design default | power-ui override | Why | |
|---|---|---|---|
| Card variants for content display | 36–40px flat rows for lists; cards for detail panels only | Density — 3× more items visible | |
| PageHeader with title/description | SectionLabel (ALL-CAPS, 11px, count + meta) | Vertical space — ~60px saved per page | |
| Generous spacing personality | Dense spacing default | Power users scan, not browse | |
| Layered shadow depth for premium feel | Borders-only or minimal shadows | Shadows don't aid scan-line rhythm |
Everything not in this table follows /design as-is. The two skills are complementary, not competing.
1. Principles
- Dense over spacious. Every pixel earns its place. List rows are 36–40px. Cards are for detail panels — not data grids.
- Keyboard-first. Any task achievable by mouse must be achievable by keyboard.
j/kto move, Enter to act, Escape to retreat. - AI is a first-class citizen. Contextual "Ask AI" buttons are surface-level — not buried in menus or settings.
- Signal over decoration. Color, weight, and icons carry semantic meaning. No chrome for its own sake.
- Progressive reveal. Actions appear on hover/focus — they don't consume permanent space.
- The interface feels alive. Background activity is visible — pulse indicators, shimmer loading, real-time updates. Static screens feel broken.
1.1 Color Discipline
Color is signal, not decoration. Every hue must answer: "what does this tell the user?" If the answer is nothing, use monochrome.
| Rule | Guidance | |
|---|---|---|
| ≤ 4 semantic hues | Primary (interactive), success, warning, danger. That's it. If you add a fifth hue, you need to justify what signal it carries that the existing four cannot. | |
| Interactive-only primary | Accent/primary color appears ONLY on elements users click — buttons, links, focus rings, selected-row accents. Never on decorative icons, informational labels, or category badges. | |
| Monochrome-default badges | Category, type, and source badges use gray (muted variant). Only urgency/status badges (critical, overdue, error) earn a semantic color. | |
| Monochrome avatars | User/entity avatars are grayscale (initial on surface-raised). No per-entity color hashing — deterministic hue-from-name creates uncontrolled rainbow noise that blows the hue budget. | |
| Anti-AI-purple zone | LLM-generated UIs statistically cluster around purple (hues 260–310 at high chroma). If your primary lands there, drop the chroma significantly or shift the hue — otherwise the app reads as "AI default" rather than intentional. | |
| Single-hue gradients | If using gradients, stay within one hue family (lightness/chroma ramp at a fixed hue angle). Multi-hue gradients fight semantic color meaning. |
Hue budget example (adapt hues/tokens to your palette):
| Role | Example hue | Token | Used for | |
|---|---|---|---|---|
| Primary | Blue ~240 | primary | Buttons, links, focus rings, selected-row accent | |
| Danger | Red ~25 | error | Critical alerts, overdue, destructive actions | |
| Caution | Amber ~70 | warning | High priority, needs-attention, VIP | |
| Success | Green ~155 | success | Completed, passing, healthy |
An info hue (blue) may exist but should be rare — informational banners only, never alongside more than 2 other semantic hues on one screen.
2. Component Patterns
Token convention: Code examples below use raw Tailwind values(text-[11px],bg-white/[0.03]) for portability. In your project,replace these with semantic tokens from your design system:| Example value | Replace with | Purpose || -------------------------- | ------------------- | ------------------- ||text-[11px]|text-caption| Caption/label text ||text-[13px]|text-body-sm| Body text (small) ||bg-white/[0.03]|bg-surface-hover| Subtle hover state ||text-primary/70|text-accent-muted| Muted accent text ||text-muted-foreground/50|text-faint| Faintest text level |See the/designskill for building your token system.
Theme note: Examples use dark-mode-first values. For light mode,invert the opacity pattern:bg-black/[0.03]instead ofbg-white/[0.03].
2.1 Section Label
Replace generic page <h1> headers with a structured label: ALL-CAPS entity name · count + optional meta + far-right action cluster.
2.2 Data-Table Row (36–40px)
All list views use flat, fixed-height rows. Never use cards for data grids.
Anatomy:
- Visual — status dot, priority bars, or source icon (14px,
shrink-0) - Identifier — short ID,
font-mono text-[11px] tabular-nums text-primary/70 shrink-0 - Title —
min-w-0 flex-1 truncate text-[13px], bold for unread, muted for seen - Timestamp —
w-8 font-mono text-[11px] tabular-nums text-muted-foreground/50 shrink-0 - Hover actions —
opacity-0 group-hover:opacity-100, 28px icon buttons
2.3 Slide-Over Drawer (Detail Panel)
Detail views open as a right-side slide-over (~55vw) — not inline expansion, not a modal. Row click or Enter opens it; Escape or backdrop click closes it.
This is the start of the file. Read the full SKILL.md on GitHub.
Security
- Security scanPassed, 95 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckinggenerated/claude/skills/power-ui/SKILL.md
Popularity
- Repository stars
- 79
- Repository forks
- 11
- 7-day trend score
- 22
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/mcouthon/agents/power-ui)