bug-reproduce
Turn a known bug into a tight, red-capable reproducer, then prove the reproducer locks that…
Author/validate/export Google's DESIGN.md token spec files.
$ npx -y skills add Prismer-AI/PrismerCloud --skill prismer-design-md --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/prismer-design-mdContext preview
The summary Claude sees to decide when to auto-load this skill.
Author/validate/export Google's DESIGN.md token spec files.
name: prismer-design-md
scope: coding
category: creative
description: Author/validate/export Google's DESIGN.md token spec files.
version: 1.1.0
author: Hermes Agent
license: MIT
platforms: [linux, macos, windows]
metadata:
nativeReplaces: [design-md]
hermes:
tags: [design, design-system, tokens, ui, accessibility, wcag, tailwind, dtcg, google]
related_skills: [prismer-popular-web-designs, frontend-design, pkf-svg]DESIGN.md is Google's open spec (Apache-2.0, `google-labs-code/design.md`) for describing a visual identity to coding agents. One file combines:
Tokens give exact values. Prose tells agents *why* those values exist and how to apply them. The CLI (`npx @google/design.md@0.3.0`) lints structure + WCAG contrast, diffs versions for regressions, and exports to Tailwind or W3C DTCG JSON.
For purely visual inspiration or layout examples, use `popular-web-designs` instead. For *process and taste* when designing a one-off HTML artifact from scratch (prototype, deck, landing page, component lab), use `claude-design`. This skill is for the *formal spec file* itself.
---
version: alpha
name: Heritage
description: Architectural minimalism meets journalistic gravitas.
colors:
primary: "#1A1C1E"
secondary: "#6C7278"
tertiary: "#B8422E"
neutral: "#F7F5F2"
typography:
h1:
fontFamily: Public Sans
fontSize: 3rem
fontWeight: 700
lineHeight: 1.1
letterSpacing: "-0.02em"
body-md:
fontFamily: Public Sans
fontSize: 1rem
rounded:
sm: 4px
md: 8px
lg: 16px
spacing:
sm: 8px
md: 16px
lg: 24px
components:
button-primary:
backgroundColor: "{colors.tertiary}"
textColor: "#FFFFFF"
rounded: "{rounded.sm}"
padding: 12px
button-primary-hover:
backgroundColor: "{colors.primary}"
---
## Overview
Architectural Minimalism meets Journalistic Gravitas...
## Colors
- **Primary (#1A1C1E):** Deep ink for headlines and core text.
- **Tertiary (#B8422E):** "Boston Clay" — the sole driver for interaction.
## Typography
Public Sans for everything except small all-caps labels...
## Components
`button-primary` is the only high-emphasis action on a page...| Type | Format | Example | |------|--------|---------| | Color | any CSS color (hex, `rgb()`, `oklch()`, named) | `"#1A1C1E"`, `"oklch(62% 0.18 250)"` | | Dimension | number + unit (`px`, `em`, `rem`) | `48px`, `-0.02em` | | Token reference | `{path.to.token}` | `{colors.primary}` | | Typography | object with `fontFamily`, `fontSize`, `fontWeight`, `lineHeight`, `letterSpacing`, `fontFeature`, `fontVariation` | see above |
Component property whitelist: `backgroundColor`, `textColor`, `typography`, `rounded`, `padding`, `size`, `height`, `width`. Variants (hover, active, pressed) are **separate component entries** with related key names (`button-primary-hover`), not nested.
Sections are optional, but present ones should appear in this order. The linter flags out-of-order sections (`section-order`, warning) and duplicate headings — consumers per the spec reject duplicates, so fix both before returning the file.
1. Overview (alias: Brand & Style) 2. Colors 3. Typography 4. Layout (alias: Layout & Spacing) 5. Elevation & Depth (alias: Elevation) 6. Shapes 7. Components 8. Do's and Don'ts
Unknown sections are preserved, not errored. Unknown token names are accepted if the value type is valid. Unknown component properties produce a warning.
1. **Ask the user** (or infer) the brand tone, accent color, and typography direction. If they provided a site, image, or vibe, translate it to the token shape above. 2. **Write `DESIGN.md`** in their project root using `write_file`. Always include `name:` and `colors:`; other sections optional but encouraged. 3. **Use token references** (`{colors.primary}`) in the `components:` section instead of re-typing hex values. Keeps the palette single-source. 4. **Lint it** (see below). Fix any broken references or WCAG failures before returning. 5. **If the user has an existing project**, also write Tailwind or DTCG exports next to the file (`tailwind.theme.json`, `tokens.json`).
The CLI is `@google/design.md@0.3.0` (Node). Use `npx` — no global install needed.
# Validate structure + token references + WCAG contrast npx -y @google/design.md@0.3.0 lint DESIGN.md # Compare two versions, fail on regression (exit 1 = regression) npx -y @google/design.md@0.3.0 diff DESIGN.md DESIGN-v2.md # Export to Tailwind v3 theme JSON (`tailwind` is a back-compat alias) npx -y @google/design.md@0.3.0 export --format json-tailwind DESIGN.md > tailwind.theme.json # Export to a Tailwind v4 CSS @theme block (--color-*, --text-*, --radius-*, ...) npx -y @google/design.md@0.3.0 export --format css-tailwind DESIGN.md > theme.css # Export to W3C DTCG (Design Tokens Format Module) JSON npx -y @google/design.md@0.3.0 export --format dtcg DESIGN.md > tokens.json # Print the spec itself — useful when injecting into an agent prompt npx -y @google/design.md@0.3.0 spec --rules-only --format json
All commands accept `-` for stdin. `lint` returns exit 1 on errors (warnings alone exit 0). `export` exits 0 on a successful export regardless of lint findings in the source — run `lint` separately to gate on those. Output is JSON by defaul
Repo: Prismer-AI/PrismerCloud
Turn a known bug into a tight, red-capable reproducer, then prove the reproducer locks that…
Review a diff against its acceptance criteria in four segments (convention adherence, bug…
Five-dimension design audit (frontend UI/UX · server data-model & flow · endpoint spec ·…
Before merge, mechanize Documentation-First — derive the code delta from git diff, then…
Diagnose the local dev machine before any APC loop step — run apc env doctor, classify each…
Close out a local coding task on the bound daemon — stage, commit, branch, merge, push via…