design-md
Create, consume, and validate DESIGN.md files — the open format for describing visual identity to coding agents.
Skill by kvithayathil
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/kvithayathil-design-md
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: documents, design, frontend
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/design-md
What's inside
- Skill name
design-md- Description
- Create, consume, and validate DESIGN.md files — the open format for describing visual identity to coding agents. DESIGN.md combines YAML design tokens (colors, typography, spacing, components) with Markdown design rationale. Triggers on: DESIGN.md, design system, design tokens, visual identity, brand tokens, UI styling, theme generation, color palette, typography tokens, WCAG contrast, design-token lint, style regression, component tokens, spacing scale, rounded corners.
- License
- Apache-2.0
- Metadata
- author: kvithayathil · living: true · version: 1.0.0 · spec-version: alpha · last-reviewed: 2026-04-27 · self-learning: true · self-updating: true · update-policy: periodic-remote-check+evolve-on-evidence
- Instructions
- 155 lines in SKILL.md · view on GitHub
Files (15)
- SKILL.md
- CHANGELOG.md · references/
- INDEX.md · references/
- LESSONS_LEARNED.md · references/
- authoring-guide.md · references/
- cli-guide.md · references/
- css-custom-properties.md · references/conversions/
- design-tokens-json.md · references/conversions/
- tailwind.md · references/conversions/
- component-patterns.md · references/examples/
- full-system.md · references/examples/
- minimal.md · references/examples/
- spec-quickref.md · references/
- spec-source.md · references/
- wcag-contrast.md · references/
SKILL.md (first lines)
# DESIGN.md Skill
DESIGN.md is a plain-text design system spec: **YAML front matter** (machine-readable tokens) +
**Markdown body** (human-readable rationale). Tokens are normative values. Prose explains intent.
## Mode Selection
Pick one mode based on task. Each mode has its own workflow below.
| Mode | Trigger Phrases | Start Here |
|------|----------------|------------|
| **consume** | "build UI", "style this", "apply design", "use the design system" | Consume Mode below |
| **create** | "create design system", "make a DESIGN.md", "design tokens for my project" | → [references/authoring-guide.md](references/authoring-guide.md) |
| **validate** | "lint", "check contrast", "validate design", "diff design" | CLI Tooling below |
| **convert** | "tailwind config", "css variables", "tokens.json", "style dictionary" | → [references/INDEX.md](references/INDEX.md) → conversions/ |
## Consume Mode
Default mode. Use whenever a DESIGN.md exists in the project root or a specified path.
1. **Parse** YAML front matter — extract all token groups (`colors`, `typography`, `rounded`, `spacing`, `components`)
2. **Resolve** `{path.to.token}` references before applying values
3. **Read** prose sections for design intent — prose answers "why" when tokens alone are ambiguous
4. **Apply** tokens to implementation using the project's CSS approach
Application rules by token group:
| Token Group | How to Apply |
|-------------|-------------|
| `colors` | Map to background, text, border values. Use descriptive names (primary, secondary) as semantic roles |
| `typography` | Bundle fontFamily + fontSize + fontWeight + lineHeight + letterSpacing as a unit |
| `components` | Assemble from sub-properties (`backgroundColor`, `textColor`, `rounded`, `padding`). Variant naming convention: `button-primary`, `button-primary-hover`, `button-primary-active` |
| `rounded` / `spacing` | Apply as sizing values using the scale levels (`sm`, `md`, `lg`, etc.) |
When tokens don't cover a specific need, defer to prose sections for intent, then make a decision consistent with the design personality.
## Create Mode
→ Full workflow in [references/authoring-guide.md](references/authoring-guide.md)
Quick start:
1. Collect brand personality, target audience, emotional response (Overview section)
2. Define color palettes → derive `colors` tokens
3. Choose typography levels → define `typography` tokens
4. Set spacing scale, rounding, elevation strategy
5. Define component tokens using `{path.to.token}` references
6. Write prose sections in required order
7. Run `lint` to validate
## Validate Mode
### CLI Tooling
All commands via `npx @google/design.md` or `bunx @google/design.md`.
```bash
npx @google/design.md lint DESIGN.md # Structure + WCAG contrast validation
npx @google/design.md lint --format json # Machine-readable JSON output
npx @google/design.md diff DESIGN.md v2.md # Detect token + prose regressions
```
**When to run:**
| Situation | Command |
|-----------|---------|
| After authoring a new DESIGN.md | `lint` |
| Before committing design changes | `diff` against previous version |
| Contrast warnings from lint | → [references/wcag-contrast.md](references/wcag-contrast.md) |
| CI/CD integration | `lint --format json` and check `summary.errors` |
→ Full CLI reference: [references/cli-guide.md](references/cli-guide.md)
## Quick Reference
Token types:
| Type | Format | Example |
|------|--------|---------|
| Color | `#` + hex (sRGB) | `"#1A1C1E"` |
| Dimension | number + unit (`px`, `em`, `rem`) | `48px`, `1.5rem` |
| Token Reference | `{path.to.token}` | `{colors.primary}` |
| Typography | object with font properties | `fontFamily`, `fontSize`, `fontWeight`, `lineHeight`, `letterSpacing` |
Prose section order (use `##` headings, can omit but must be in sequence):
1. Overview — brand personality, emotional response
2. Colors — palette rationale
3. Typography — font strategy
4. Layout — grid/spacing model
5. Elevation & Depth — shadow/depth approach
6. Shapes — border radius strategy
7. Components — per-component styling guidance
8. Do's and Don'ts — guardrails
Component token properties: `backgroundColor`, `textColor`, `typography`, `rounded`, `padding`, `size`, `height`, `width`.
→ Full schema: [references/spec-quickref.md](references/spec-quickref.md)
## Common Mistakes
| Mistake | Fix |
|---------|-----|
| Omitting prose sections | Prose gives intent — agent needs "why" not just "what" |
| Hardcoding colors instead of token references | Use `{colors.primary}` in components, not `"#1A1C1E"` |
| Wrong section order | Must follow: Overview → Colors → Typography → Layout → Elevation → Shapes → Components → Do's/Don'ts |
| Duplicate section headings | Rejected by spec — each heading must be unique |
| Missing `name` in frontmatter | Required field — design system must have a name |
| Ignoring WCAG contrast | Run `lint` — AA requires 4.5:1 for normal text, 3:1 for large |
| Mixing units inconsistently | Pick `px` or `rem` per token group, stay consistent |
## Self-Learning / Self-Updating Protocol
> This skill tracks the DESIGN.md spec at `google-labs-code/design.md` (currently alpha).
> Agent may modify `references/` files when new evidence or spec changes warrant it.
### Spec Freshness
If `last-reviewed` > 7 days, run freshness check:
```bashFrom kvithayathil/agent-resources, Apache-2.0.
More from kvithayathil/agent-resources
- 0.544score
design-an-interface
mattpocock
Generate multiple radically different interface designs for a module using parallel sub-agents.
SkillAFreshness: AClaude Code +9 - 0.539score
grill-me
mattpocock
Interview the user relentlessly about a plan or design until reaching shared understanding, resolving each branch of the decision tree.
SkillAFreshness: AClaude Code +9 - 0.479score
modern-git-patterns
kvithayathil
Use when working with git commands, planning git workflows, advising on git best practices, or needing version-aware git guidance.
SkillCFreshness: CClaude Code +9 - 0.414score
android-layouts
kvithayathil
Android layout best practices for XML/Views and Jetpack Compose.
SkillDFreshness: DClaude Code +9 - 0.410score
provenance-tracking
kvithayathil
Ensures every remote-installed skill has a references/ folder citing its upstream source and can be checked for updates against that source.
SkillDFreshness: DClaude Code +9 - 0.409score
android-data-layer
kvithayathil
Data layer patterns for Android/KMP - data sources, repositories, DTOs, mappers, Room entities, Ktor HttpClient, safe call helpers, token storage, and…
SkillDFreshness: DClaude Code +9 - 0.409score
android-di-koin
kvithayathil
Koin dependency injection setup for Android/KMP - module definitions per layer, ViewModel injection, assembling modules in :app, and koinViewModel() in…
SkillDFreshness: DClaude Code +9 - 0.409score
android-error-handling
kvithayathil
Generic Result wrapper, error types, and extension helpers for Android/KMP - Result<T, E>, DataError, EmptyResult, map, onSuccess, onFailure.
SkillDFreshness: DClaude Code +9 - 0.409score
android-module-structure
kvithayathil
Module layout, dependency rules, and Gradle convention plugins for Android and Kotlin Multiplatform (KMP) projects.
SkillDFreshness: DClaude Code +9 - 0.409score
android-navigation
kvithayathil
Type-safe Compose Navigation for Android/KMP - route objects, feature nav graphs, cross-feature callbacks, and wiring in :app.
SkillDFreshness: DClaude Code +9 - 0.409score
android-presentation-mvi
kvithayathil
MVI presentation layer for Android/KMP - State, Action, Event, ViewModel, Root/Screen composable split, UI models, UiText error mapping, and process death…
SkillDFreshness: DClaude Code +9 - 0.409score
android-testing
kvithayathil
Testing patterns for Android/KMP - ViewModel unit tests with JUnit5, Turbine, AssertK, UnconfinedTestDispatcher, fake repositories, SavedStateHandle, and…
SkillDFreshness: DClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 1
- Last commit (this folder)
- Apr 27, 2026 (6 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- Version
- 1.0.0
- License
- Apache-2.0
- Repository
- github.com/kvithayathil/agent-resources
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from kvithayathil
- 0.479score
modern-git-patterns
kvithayathil
Use when working with git commands, planning git workflows, advising on git best practices, or needing version-aware git guidance.
SkillCFreshness: CClaude Code +9 - 0.414score
android-layouts
kvithayathil
Android layout best practices for XML/Views and Jetpack Compose.
SkillDFreshness: DClaude Code +9 - 0.410score
provenance-tracking
kvithayathil
Ensures every remote-installed skill has a references/ folder citing its upstream source and can be checked for updates against that source.
SkillDFreshness: DClaude Code +9 - 0.409score
android-testing
kvithayathil
Testing patterns for Android/KMP - ViewModel unit tests with JUnit5, Turbine, AssertK, UnconfinedTestDispatcher, fake repositories, SavedStateHandle, and…
SkillDFreshness: DClaude Code +9 - 0.409score
android-data-layer
kvithayathil
Data layer patterns for Android/KMP - data sources, repositories, DTOs, mappers, Room entities, Ktor HttpClient, safe call helpers, token storage, and…
SkillDFreshness: DClaude Code +9 - 0.409score
android-di-koin
kvithayathil
Koin dependency injection setup for Android/KMP - module definitions per layer, ViewModel injection, assembling modules in :app, and koinViewModel() in…
SkillDFreshness: DClaude Code +9
Cite this page
design-md skill. Agent Mart. https://agentmart.dev/skills/kvithayathil-design-md (last updated 2026-10-24)