From ai-scrum
Detects project design system for HTML report styling. Searches by convention paths, falls back to neutral default theme. Returns design tokens (colors, typography, spacing) for html-report-generator.
How this skill is triggered — by the user, by Claude, or both
Slash command
/ai-scrum:design-system-detectorThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Находит design system проекта чтобы HTML отчёт выглядел в branding.
Находит design system проекта чтобы HTML отчёт выглядел в branding.
.sprints/active/design-system-detection.md)Поиск по convention в этом порядке (first match wins):
.sprints/config.yaml field:
html_reports:
design_system_path: "/path/to/design.md"
Если specified - use this path.
~/Dev/{project_name}-design-system/DESIGN.master.md
Where {project_name} derived from current project's directory name.
Example:
~/Dev/meridian/~/Dev/meridian-design-system/DESIGN.master.md<project>/design-system/DESIGN.master.md
Single subfolder convention.
<project>/DESIGN.md
Simpler convention - one file.
Если ничего не найдено - use baked-in neutral default theme.
If design file found, parse for:
Pattern matching:
## Colors
- Primary: #1a73e8
- Secondary: #34a853
- Background: #ffffff
- Foreground: #1a1a1a
Or block:
:root {
--color-primary: #1a73e8;
--color-secondary: #34a853;
}
Or YAML/JSON tokens:
colors:
primary: '#1a73e8'
secondary: '#34a853'
Skill парсит multiple formats, extracts tokens.
.sprints/active/design-system-detection.md:
# Design System Detection
**Detected at**: {{TIMESTAMP}}
**Method**: {{METHOD}} <!-- explicit_config | adjacent_repo | in_project | single_file | not_found -->
**Source**: {{PATH or 'none - using default'}}
## Tokens extracted
### Colors
- primary: #1a73e8
- secondary: #34a853
- accent: #fbbc04
- background: #ffffff
- foreground: #1a1a1a
- muted: #5f6368
### Typography
- font_heading: 'Inter', sans-serif
- font_body: 'Source Sans Pro', sans-serif
- font_mono: 'JetBrains Mono', monospace
### Spacing
- xs: 4px
- sm: 8px
- md: 16px
- lg: 24px
- xl: 40px
### Brand
- name: "Project Name"
- logo: /path/to/logo.svg (or "none")
## Confidence
{{HIGH | MEDIUM | LOW}}
If LOW: parsing was partial, some defaults applied для missing tokens.
Some tokens parsed, some missing:
Confidence: N/A (default mode)
Use complete default theme (modern neutral).
Если nothing detected:
colors:
primary: "#3b82f6" # Blue
secondary: "#10b981" # Green
accent: "#f59e0b" # Amber
background: "#ffffff"
foreground: "#1a1a1a"
muted: "#666666"
typography:
font_heading: "-apple-system, system-ui, sans-serif"
font_body: "-apple-system, system-ui, sans-serif"
font_mono: "Monaco, monospace"
spacing:
xs: "4px"
sm: "8px"
md: "16px"
lg: "24px"
xl: "40px"
severity_colors:
blocker: "#dc2626"
critical: "#ea580c"
high: "#ca8a04"
medium: "#2563eb"
low: "#6b7280"
These mapped to CSS variables в HTML report template.
Detection cached в .sprints/active/design-system-detection.md:
Detected tokens validated:
Invalid tokens: replaced с defaults, logged как warning.
def generate_html_report(data):
design_system = design_system_detector.detect()
css = render_css_template(
defaults=DEFAULT_TOKENS,
overrides=design_system.tokens if design_system else {}
)
html = render_html_template(data, inline_css=css)
return html
В final report user message:
HTML report generated: .sprints/archive/<TS>/report.html
Design system: {{DETECTION_RESULT}}
- Found: {{PATH}} (confidence: HIGH)
- OR Not found: using neutral default theme
User знает откуда стилизация - можно adjust если не нравится.
npx claudepluginhub shakhovskiya-create/shakhoff-claude-marketplace --plugin ai-scrumGuides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.