agent design skill risk: low
Design Token Architecture and Slide Generator
Defines a three-layer token system (primitive, semantic, component) with CSS variables, component specs, validation scripts, and Tailwind integration. Specifies rules, data sources…
SKILL 26 files · 4 folders
---
name: ckm-design-system
description: "Token architecture, component specifications, and slide generation. Three-layer tokens (primitive→semantic→component), CSS variables, spacing/typography scales, component specs, strategic slide creation. Use for design tokens, systematic design, brand-compliant presentations."
---
# Design System
Token architecture, component specifications, systematic design, slide generation.
## When to Use
- Design token creation
- Component state definitions
- CSS variable systems
- Spacing/typography scales
- Design-to-code handoff
- Tailwind theme configuration
- **Slide/presentation generation**
## Token Architecture
Load: `references/token-architecture.md`
### Three-Layer Structure
```
Primitive (raw values)
↓
Semantic (purpose aliases)
↓
Component (component-specific)
```
**Example:**
```css
/* Primitive */
--color-blue-600: #2563EB;
/* Semantic */
--color-primary: var(--color-blue-600);
/* Component */
--button-bg: var(--color-primary);
```
## Quick Start
**Generate tokens:**
```bash
node scripts/generate-tokens.cjs --config tokens.json -o tokens.css
```
**Validate usage:**
```bash
node scripts/validate-tokens.cjs --dir src/
```
## References
| Topic | File |
|-------|------|
| Token Architecture | `references/token-architecture.md` |
| Primitive Tokens | `references/primitive-tokens.md` |
| Semantic Tokens | `references/semantic-tokens.md` |
| Component Tokens | `references/component-tokens.md` |
| Component Specs | `references/component-specs.md` |
| States & Variants | `references/states-and-variants.md` |
| Tailwind Integration | `references/tailwind-integration.md` |
## Component Spec Pattern
| Property | Default | Hover | Active | Disabled |
|----------|---------|-------|--------|----------|
| Background | primary | primary-dark | primary-darker | muted |
| Text | white | white | white | muted-fg |
| Border | none | none | none | muted-border |
| Shadow | sm | md | none | none |
## Scripts
| Script | Purpose |
|--------|---------|
| `generate-tokens.cjs` | Generate CSS from JSON token config |
| `validate-tokens.cjs` | Check for hardcoded values in code |
| `search-slides.py` | BM25 search + contextual recommendations |
| `slide-token-validator.py` | Validate slide HTML for token compliance |
| `fetch-background.py` | Fetch images from Pexels/Unsplash |
## Templates
| Template | Purpose |
|----------|---------|
| `design-tokens-starter.json` | Starter JSON with three-layer structure |
## Integration
**With brand:** Extract primitives from brand colors/typography
**With ui-styling:** Component tokens → Tailwind config
**Skill Dependencies:** brand, ui-styling
**Primary Agents:** ui-ux-designer, frontend-developer
## Slide System
Brand-compliant presentations using design tokens + Chart.js + contextual decision system.
### Source of Truth
| File | Purpose |
|------|---------|
| `docs/brand-guidelines.md` | Brand identity, voice, colors |
| `assets/design-tokens.json` | Token definitions (primitive→semantic→component) |
| `assets/design-tokens.css` | CSS variables (import in slides) |
| `assets/css/slide-animations.css` | CSS animation library |
### Slide Search (BM25)
```bash
# Basic search (auto-detect domain)
python scripts/search-slides.py "investor pitch"
# Domain-specific search
python scripts/search-slides.py "problem agitation" -d copy
python scripts/search-slides.py "revenue growth" -d chart
# Contextual search (Premium System)
python scripts/search-slides.py "problem slide" --context --position 2 --total 9
python scripts/search-slides.py "cta" --context --position 9 --prev-emotion frustration
```
### Decision System CSVs
| File | Purpose |
|------|---------|
| `data/slide-strategies.csv` | 15 deck structures + emotion arcs + sparkline beats |
| `data/slide-layouts.csv` | 25 layouts + component variants + animations |
| `data/slide-layout-logic.csv` | Goal → Layout + break_pattern flag |
| `data/slide-typography.csv` | Content type → Typography scale |
| `data/slide-color-logic.csv` | Emotion → Color treatment |
| `data/slide-backgrounds.csv` | Slide type → Image category (Pexels/Unsplash) |
| `data/slide-copy.csv` | 25 copywriting formulas (PAS, AIDA, FAB) |
| `data/slide-charts.csv` | 25 chart types with Chart.js config |
### Contextual Decision Flow
```
1. Parse goal/context
↓
2. Search slide-strategies.csv → Get strategy + emotion beats
↓
3. For each slide:
a. Query slide-layout-logic.csv → layout + break_pattern
b. Query slide-typography.csv → type scale
c. Query slide-color-logic.csv → color treatment
d. Query slide-backgrounds.csv → image if needed
e. Apply animation class from slide-animations.css
↓
4. Generate HTML with design tokens
↓
5. Validate with slide-token-validator.py
```
### Pattern Breaking (Duarte Sparkline)
Premium decks alternate between emotions for engagement:
```
"What Is" (frustration) ↔ "What Could Be" (hope)
```
System calculates pattern breaks at 1/3 and 2/3 positions.
### Slide Requirements
**ALL slides MUST:**
1. Import `assets/design-tokens.css` - single source of truth
2. Use CSS variables: `var(--color-primary)`, `var(--slide-bg)`, etc.
3. Use Chart.js for charts (NOT CSS-only bars)
4. Include navigation (keyboard arrows, click, progress bar)
5. Center align content
6. Focus on persuasion/conversion
### Chart.js Integration
```html
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/chart.umd.min.js"></script>
<canvas id="revenueChart"></canvas>
<script>
new Chart(document.getElementById('revenueChart'), {
type: 'line',
data: {
labels: ['Sep', 'Oct', 'Nov', 'Dec'],
datasets: [{
data: [5, 12, 28, 45],
borderColor: '#FF6B6B', // Use brand coral
backgroundColor: 'rgba(255, 107, 107, 0.1)',
fill: true,
tension: 0.4
}]
}
});
</script>
```
### Token Compliance
```css
/* CORRECT - uses token */
background: var(--slide-bg);
color: var(--color-primary);
font-family: var(--typography-font-heading);
/* WRONG - hardcoded */
background: #0D0D0D;
color: #FF6B6B;
font-family: 'Space Grotesk';
```
### Reference Implementation
Working example with all features:
```
assets/designs/slides/claudekit-pitch-251223.html
```
### Command
```bash
/slides:create "10-slide investor pitch for ClaudeKit Marketing"
```
## Best Practices
1. Never use raw hex in components - always reference tokens
2. Semantic layer enables theme switching (light/dark)
3. Component tokens enable per-component customization
4. Use HSL format for opacity control
5. Document every token's purpose
6. **Slides must import design-tokens.css and use var() exclusively**
\n\n\n\n```\n\n### Token Compliance\n\n```css\n/* CORRECT - uses token */\nbackground: var(--slide-bg);\ncolor: var(--color-primary);\nfont-family: var(--typography-font-heading);\n\n/* WRONG - hardcoded */\nbackground: #0D0D0D;\ncolor: #FF6B6B;\nfont-family: 'Space Grotesk';\n```\n\n### Reference Implementation\n\nWorking example with all features:\n```\nassets/designs/slides/claudekit-pitch-251223.html\n```\n\n### Command\n\n```bash\n/slides:create \"10-slide investor pitch for ClaudeKit Marketing\"\n```\n\n## Best Practices\n\n1. Never use raw hex in components - always reference tokens\n2. Semantic layer enables theme switching (light/dark)\n3. Component tokens enable per-component customization\n4. Use HSL format for opacity control\n5. Document every token's purpose\n6. **Slides must import design-tokens.css and use var() exclusively**\n" REQUIRED CONTEXT
- references/token-architecture.md
- assets/design-tokens.json
- docs/brand-guidelines.md
OPTIONAL CONTEXT
- slide goal or topic
- deck position and total slides
ROLES & RULES
- Load references/token-architecture.md
- Never use raw hex in components - always reference tokens
- ALL slides MUST import assets/design-tokens.css
- ALL slides MUST use CSS variables exclusively
- ALL slides MUST use Chart.js for charts
- ALL slides MUST include navigation
- ALL slides MUST center align content
- ALL slides MUST focus on persuasion/conversion
- Document every token's purpose
- Use HSL format for opacity control
EXPECTED OUTPUT
- Format
- code
- Constraints
- always import design-tokens.css and use CSS variables exclusively
- use Chart.js for any charts
- follow three-layer token structure
- validate output with provided scripts
SUCCESS CRITERIA
- Generate tokens from JSON config
- Validate token usage in code
- Produce brand-compliant slide HTML
- Use only design token CSS variables
- Follow three-layer token architecture
FAILURE MODES
- Hardcoding color or font values instead of using tokens
- Omitting design-tokens.css import in slides
- Using CSS-only bars instead of Chart.js
- Skipping required slide navigation or centering
EXAMPLES
Includes multiple CSS token examples, component spec tables, Chart.js code snippets, search command examples, and a full decision flow diagram.
CAVEATS
- Dependencies
- references/token-architecture.md
- references/primitive-tokens.md
- references/semantic-tokens.md
- references/component-tokens.md
- references/component-specs.md
- references/states-and-variants.md
- references/tailwind-integration.md
- docs/brand-guidelines.md
- assets/design-tokens.json
- assets/design-tokens.css
- assets/css/slide-animations.css
- data/slide-strategies.csv
- data/slide-layouts.csv
- data/slide-layout-logic.csv
- data/slide-typography.csv
- data/slide-color-logic.csv
- data/slide-backgrounds.csv
- data/slide-copy.csv
- data/slide-charts.csv
- scripts/generate-tokens.cjs
- scripts/validate-tokens.cjs
- scripts/search-slides.py
- scripts/slide-token-validator.py
- scripts/fetch-background.py
- Missing context
- Actual content of referenced external files (e.g., token-architecture.md)
- Specific user input format for commands like /slides:create
QUALITY
- OVERALL
- 0.84
- CLARITY
- 0.88
- SPECIFICITY
- 0.92
- REUSABILITY
- 0.78
- COMPLETENESS
- 0.85
IMPROVEMENT SUGGESTIONS
- Add explicit input/output placeholders (e.g., {{brand_guidelines_path}}) to increase reusability as a template.
- Include a short 'Success Criteria' section listing verifiable outputs for each major task (tokens, slides).
USAGE
Copy the prompt above and paste it into your AI of choice — Claude, ChatGPT, Gemini, or anywhere else you're working. Replace any placeholder sections with your own context, then ask for the output.
MORE FOR AGENT
- Comprehensive Codebase Bug Analysis and Fixeragentanalysis
- Xcode MCP Usage Guidelines for Agentsagenttool_use
- Xcode MCP Usage Guidelinesagenttool_use
- Rapid App MVP Prototyperagentcoding
- Local Documentation Online Sync Automatoragentoperations
- HashiCorp Packer Golden Image Expertagentoperations
- Xquik X/Twitter API Integration Skillagenttool_use
- MoltPass Client for AI Agent Identitiesagentsecurity
- AI-First Design Handoff Specs Generatoragentcoding
- Consciousness Council Multi-Perspective Deliberationagentplanning
- Creative Thinking Frameworks for CS Researchagentresearch
- Filesystem Agent Context Engineeringagenttool_use
- Academic Paper Figure Generatoragentresearch
- Multi-Agent Architecture Patterns Guideagentplanning
- Existing Web Design Premium Upgraderagentcreative
- Product Marketing Context Document Creatoragentmarketing
- Test-Driven Development Workflow Rulesagentcoding
- Agent Tool Design Principlesagenttool_use
- TDD Implementation Plan Writeragentplanning
- Conventional Git Commit Creatoragenttool_use
- GitHub Trending Dashboard Generatoragenttool_use
- Structured Autonomy Implementation Agentagentcoding
- PROGRESS.md Manager for Agentic Codingagentcoding
- Deep Investigation Agent for Geopolitics Researchagentresearch
- Repo Workflow AGENTS.md Editoragentworkflow