home / skills / steveclarke / dotfiles / teach-impeccable

teach-impeccable skill

/ai/skills/teach-impeccable

This skill gathers project design context and persists it to your AI config, establishing consistent guidelines across sessions.

This is most likely a fork of the teach-impeccable skill from pbakaus
npx playbooks add skill steveclarke/dotfiles --skill teach-impeccable

Review the files below or copy the command above to add this skill to your agents.

Files (1)
SKILL.md
2.8 KB
---
name: teach-impeccable
description: One-time setup that gathers design context for your project and saves it to your AI config file. Run once to establish persistent design guidelines.
user-invokable: true
---

Gather design context for this project, then persist it for all future sessions.

## Step 1: Explore the Codebase

Before asking questions, thoroughly scan the project to discover what you can:

- **README and docs**: Project purpose, target audience, any stated goals
- **Package.json / config files**: Tech stack, dependencies, existing design libraries
- **Existing components**: Current design patterns, spacing, typography in use
- **Brand assets**: Logos, favicons, color values already defined
- **Design tokens / CSS variables**: Existing color palettes, font stacks, spacing scales
- **Any style guides or brand documentation**

Note what you've learned and what remains unclear.

## Step 2: Ask UX-Focused Questions

STOP and call the AskUserQuestion tool to clarify. Focus only on what you couldn't infer from the codebase:

### Users & Purpose
- Who uses this? What's their context when using it?
- What job are they trying to get done?
- What emotions should the interface evoke? (confidence, delight, calm, urgency, etc.)

### Brand & Personality
- How would you describe the brand personality in 3 words?
- Any reference sites or apps that capture the right feel? What specifically about them?
- What should this explicitly NOT look like? Any anti-references?

### Aesthetic Preferences
- Any strong preferences for visual direction? (minimal, bold, elegant, playful, technical, organic, etc.)
- Light mode, dark mode, or both?
- Any colors that must be used or avoided?

### Accessibility & Inclusion
- Specific accessibility requirements? (WCAG level, known user needs)
- Considerations for reduced motion, color blindness, or other accommodations?

Skip questions where the answer is already clear from the codebase exploration.

## Step 3: Write Design Context

Synthesize your findings and the user's answers into a `## Design Context` section:

```markdown
## Design Context

### Users
[Who they are, their context, the job to be done]

### Brand Personality
[Voice, tone, 3-word personality, emotional goals]

### Aesthetic Direction
[Visual tone, references, anti-references, theme]

### Design Principles
[3-5 principles derived from the conversation that should guide all design decisions]
```

Write this section to `.impeccable.md` in the project root. If the file already exists, update the Design Context section in place.

Then STOP and call the AskUserQuestion tool to clarify. whether they'd also like the Design Context appended to CLAUDE.md. If yes, append or update the section there as well.

Confirm completion and summarize the key design principles that will now guide all future work.

Overview

This skill performs a one-time design-context gathering run and persists the results into the project's AI config so every future session shares the same design guidelines. It scans the codebase for visual assets, tokens, and patterns, then asks targeted UX questions to fill gaps before writing a Design Context section to CLAUDE.md. Run it once during project setup to establish consistent, persistent design rules.

How this skill works

The skill inspects docs, config files, components, design tokens, and brand assets to infer users, visual patterns, and tech constraints. It pauses to request missing UX or brand details, then synthesizes findings into a concise Design Context section. Finally it writes or updates the CLAUDE.md file in the project root so the context persists for all future sessions.

When to use it

  • Initial project setup to establish a single source of truth for design decisions
  • Onboarding new contributors who need consistent brand and UX guidance
  • Before major UI work to ensure design choices align with established guidelines
  • When consolidating scattered design notes into a persistent, machine-readable file
  • When you want to lock in accessibility and aesthetic decisions across environments

Best practices

  • Run once after repository is reasonably complete (docs, components, tokens present)
  • Answer the UX-focused questions clearly and succinctly; the tool only asks what is unclear
  • Keep design principles short, actionable, and technology-agnostic
  • Store brand assets and tokens in predictable folders so the scanner finds them
  • Review and occasionally update CLAUDE.md when brand or UX goals change

Example use cases

  • A solo maintainer establishes tone, colors, and accessibility targets for future AI sessions
  • A team aligns on users and emotional goals before redesigning the UI
  • New machines or CI runners pull the same design context automatically from the config
  • Standardizing spacing, typography, and color tokens across multiple repos or apps

FAQ

What exactly does the skill write and where?

It creates or updates a ## Design Context section in CLAUDE.md at the project root containing Users, Brand Personality, Aesthetic Direction, and Design Principles.

Do I need to run it again after changes?

Only run it again if brand goals, major UX targets, or token files change. Otherwise the persisted context should remain valid.