/install edic-design-system
EDIC Design System Skill
When this skill is active, every visual artifact you produce — components, pages, landing sections, documentation, emails, reports — must conform to the EDIC design system. Prefer design tokens (CSS custom properties). Never hard-code magic numbers.
Design character
- Editorial × Olive Green: magazine-grade restraint, generous whitespace, serif headings + sans body, a warm paper background, and a confident — never loud — olive-green accent.
- Reference moods: Monocle (typographic restraint), Stripe (warm utility), Mercury (refined calm).
Hard rules (anti-patterns)
- Define all colors in OKLch; mix with
color-mix(in oklch, …). - Use
var(--ds-*)tokens for every visual value. No hard-coded#fff/16px. - Dark mode never uses pure black
#000— use warm greyoklch(15% 0.008 75). - In dark mode, lighten the accent ~5–10% vs. light mode.
- Components use base + modifier:
ds-btn/ds-btn--primary. - No inline
style=except genuinely dynamic values (e.g. stagger--d). - Icon-only buttons need
aria-label; decorative SVGs needaria-hidden="true".
Color tokens (core)
Light (:root):
--ds-color-bg: oklch(97% 0.012 80) /* warm paper background */
--ds-color-surface: oklch(99% 0.005 80)
--ds-color-surface-raised: oklch(100% 0 0) /* popovers / modals */
--ds-color-border: oklch(89% 0.012 80)
--ds-color-muted: oklch(48% 0.015 60) /* secondary text */
--ds-color-fg: oklch(20% 0.02 60) /* body text */
--ds-color-fg-strong: oklch(14% 0.025 60) /* headings */
Olive ramp --ds-color-olive-50…900; accent:
--ds-color-olive-400: oklch(52% 0.08 115) /* === --ds-accent === */
--ds-accent-hover: var(--ds-color-olive-500)
--ds-accent-soft: var(--ds-color-olive-100)
Semantic (each has a -bg tint): success oklch(55% 0.1 145),
warning oklch(65% 0.1 85), error oklch(50% 0.14 30), info oklch(55% 0.08 240).
Dark ([data-theme="dark"]): base oklch(15% 0.008 75), body oklch(84% 0.008 72),
accent oklch(57% 0.065 115).
Typography
--ds-font-display: "Iowan Old Style","Charter",Georgia,"Noto Serif SC",serif
--ds-font-body / --ds-font-ui: "Noto Sans SC",-apple-system,system-ui,sans-serif
--ds-font-mono: "JetBrains Mono","IBM Plex Mono",monospace
Scale (rem): caption .75 · body-sm .875 · body 1 · body-lg 1.125 · lead 1.25 · h4 1.5 · h3 1.875 · h2 2.25 · h1 3 · display 3.75 · hero 4.5.
- Headings: display family +
--ds-leading-tight(1.1) +--ds-tracking-tight(-0.01em). - Body: line-height 1.55, measure 65–75 chars (~540px / 72ch).
- CJK/Latin mix: body tracking 0.03em, heading 0.06em; full-width CJK punctuation.
Spacing / radius / shadow / motion
- Spacing: 4px base,
--ds-space-1..32(4→128px). - Radius: sm 2 · md 4 · lg 8 · xl 12 · 2xl 16 · full. Core 8–16px.
- Shadow:
--ds-shadow-xs..2xl. - Motion: duration
--ds-duration-150..500; ease--ds-ease-out: cubic-bezier(.16,1,.3,1),--ds-ease-spring. Always honorprefers-reduced-motion: reduce.
Component class catalog
Layout
- 基础布局:
ds-wrapperds-section(--alt/--tight)ds-stack(--sm/--lg)ds-cluster(--center)ds-proseds-flex-row - 网格系统:
ds-grid-2ds-grid-3ds-grid-4ds-grid-6ds-grid-iconsds-feature-grid - 区块元素:
ds-section-head(--center)ds-section-header - 间距工具:
ds-mt-*ds-mb-*ds-pt-0ds-gap-16ds-mx-autods-items-centerds-justify-start - 间距展示:
ds-spacing-visds-spacing-blockds-radius-visds-shadow-vis
Buttons & Interactive
- 按钮:
ds-btn+--primary/--secondary/--ghost+--sm/--lg - 图标按钮:
ds-icon-btn - 复制按钮:
ds-copy-btn(--light)
Cards & Surfaces
- 卡片:
ds-card+--hoverable/--flat - 玻璃卡片:
ds-glass-card(--sm/--lg)ds-glass-metads-glass-demo-bg - 组件预览:
ds-component-previewds-component-groupds-component-label
Forms
- 基础表单:
ds-input(--error)ds-labelds-hintds-selectds-checkboxds-radiods-toggle(--track/--thumb) - 扩展表单:
ds-form-inputds-form-textareads-form-selectds-form-rowds-form-groupds-form-labelds-form-checkboxds-form-hint(--error)ds-form-submitds-form-required
Feedback
- 徽章:
ds-badge(--default/--accent/--success/--warning/--error) - 警告框:
ds-alert(--info/--success/--warning/--error)ds-alert-iconds-alert-title - 通知:
ds-toast(--error/--success/--warning)ds-toast-groupds-toast-iconds-toast-textds-toast-close
Navigation
- 导航栏:
ds-navbar(--scrolled)ds-navbar-innerds-navbar-brandds-navbar-linksds-navbar-link(--active)ds-navbar-actionsds-navbar-ctads-navbar-icon-link - 移动端菜单:
ds-mnav-triggerds-mnav-trigger-bards-mnav-backdrop - 页面导航:
ds-pagenav(--rail/--hidden)ds-pagenav-disclosureds-pagenav-summaryds-pagenav-chevronds-pagenav-listds-pagenav-link(--active)ds-pagenav-numds-pagenav-text - 标签页:
ds-tabsds-tab(--active)ds-tab-content(--active) - 面包屑:
ds-breadcrumbds-breadcrumb-currentds-breadcrumb-sep - 分页:
ds-paginationds-page-btn(--active) - 侧边导航:
ds-navds-nav-item(--active)ds-nav-iconds-nav-section-label - 霜冻导航:
ds-frosted-nav - 主题切换:
ds-theme-toggle-btn(--fixed)
Data Display
- 表格:
ds-tableds-table-wrapds-table-minids-table-mini-row - 进度条:
ds-progressds-progress-bards-progress-fillds-progress-label - 头像:
ds-avatar(--sm/--lg) - 芯片/标签:
ds-chip(--active)ds-chip-remove - 骨架屏:
ds-skeleton - 色卡:
ds-swatchds-swatch-colords-swatch-infods-swatch-nameds-swatch-value - 类型标签:
ds-type-labelds-type-label-meta
Overlay & Glass
- 遮罩层:
ds-overlay-sampleds-overlay-bgds-overlay-layerds-overlay-strongds-overlay-lightds-overlay-label - 模态框:
ds-modalds-modal-headerds-modal-bodyds-modal-footerds-modal-close - 工具提示:
ds-tooltip-demods-tooltip-bubble - 下拉菜单:
ds-dropdownds-dropdown-itemds-dropdown-divider
Typography
- 标题:
ds-displayds-herods-h1ds-h2ds-h3ds-h4ds-h5ds-subtitle - 正文:
ds-leadds-captionds-eyebrowds-serifds-monods-metads-cover - 中文排版:
ds-text-cjkds-text-cjk-headingds-text-mixedds-text-indentds-hanging-punctuationds-text-emphasisds-text-highlight - 引用:
ds-quote-cjkds-no-orphands-num-unit - 工具:
ds-text-centerds-text-mutedds-text-accentds-text-balanceds-text-prettyds-inline-codeds-body-sm
Article TOC
- 目录:
ds-tocds-toc-articleds-toc-article-titleds-toc-listds-toc-link(--active/--h3)ds-toc-indicatords-toc-badgeds-toc-gridds-toc-itemds-toc-num
Timeline
- 时间线:
ds-timelineds-timeline-itemds-timeline-dotds-timeline-contentds-timeline-dateds-timeline-titleds-timeline-tag
Date / Calendar
- 日期组:
ds-date-groupds-date-wrapds-date-inputds-date-iconds-date-calendar - 日历:
ds-cal-headerds-cal-navds-cal-month-yeards-cal-monthds-cal-yeards-cal-weekdaysds-cal-grid-newds-cal-dayds-cal-todayds-cal-selectedds-cal-mutedds-cal-weekendds-cal-weekend-colds-cal-footerds-cal-btn(--primary)
Slider
- 滑块:
ds-slider-groupds-slider-label-rowds-slider-valueds-slider-track-wrapds-slider-trackds-slider-fillds-sliderds-slider-labels
Accordion
- 手风琴:
ds-accordionds-accordion-itemds-accordion-headerds-accordion-arrowds-accordion-content
Code Block
- 代码:
ds-codeds-code-bards-code-lang
Brand / Logo
- Logo:
ds-logo(--lg)ds-logo-markds-logo-textds-logo-wordds-logo-subds-logo-herods-logo-draw - 品牌预览:
ds-brand-preview(--paper/--ink)
Site Shell
- 英雄区:
ds-hero-sectionds-hero-innerds-hero-badgeds-hero-titleds-hero-leadds-hero-actionsds-hero-metads-hero-mark-wrapds-gradient-text - 数据统计:
ds-stat-gridds-statds-stat-numds-stat-label - 步骤列表:
ds-stepsds-stepds-step-numds-step-body - 兼容徽章:
ds-compat-gridds-compat-itemds-cta-h2 - 特性卡片:
ds-feature-cardds-feature-ico - 下载卡片:
ds-dl-grid(--two-rows)ds-dl-cardds-dl-topds-dl-icods-dl-metads-dl-actions - 文档布局:
ds-docsds-docs-asideds-docs-mainds-doc-block - 提示卡片:
ds-promptds-prompt-headds-prompt-titleds-prompt-bodyds-prompt-foot - 富页脚:
ds-footer-richds-footer-colsds-footer-brandds-footer-col-headingds-footer-linksds-footer-bottom
Motion & Animation
- 滚动揭示:
ds-reveal(--left/--right/--scale, stagger via inline--d) - 连续动效:
ds-anim-floatds-anim-spin-slowds-anim-pulseds-anim-fade-inds-anim-riseds-anim-glow-breathe
Gravitas & Glow (dark-mode accent)
- 发光效果:
ds-glow-borderds-aurads-surface-glowds-heading-glow
Decorative
- 边缘装饰:
ds-edge-decor(--tl/--tr/--bl/--br) - 背景斑点:
ds-bg-blob(--1/--2/--3)
Accessibility
- 无障碍:
ds-sr-onlyds-skip#ds-main
Output expectations
- Produce complete, runnable HTML fragments assuming
styles.css(and optionalscripts.js) are linked. - If the host has no stylesheet, include a minimal
\x3Cstyle>but still use OKLch and equivalent token values. - Use semantic structure (
header/main/section/nav/footer) with correct heading order. - Default to light theme and guarantee the same markup works under
[data-theme="dark"]. - When unsure, favor the more restrained, more whitespace, more editorial option.
Example: token-driven card
\x3Carticle class="ds-card ds-card--hoverable">
\x3Cspan class="ds-badge ds-badge--accent">新\x3C/span>
\x3Ch4 class="ds-serif ds-mt-3">橄榄园笔记\x3C/h4>
\x3Cp class="ds-text-muted">使用令牌的卡片,悬停浮起,深浅主题自适配。\x3C/p>
\x3Ca class="ds-btn ds-btn--primary ds-mt-4" href="#">阅读全文\x3C/a>
\x3C/article>
Reference
- Full handbook & live tokens: https://edic.cgartlab.com/handbook.html
- Usage docs: https://edic.cgartlab.com/docs.html
- Structured tokens:
tokens.json
- Make sure OpenClaw is installed (local or Docker)
- Run the install command in chat:
/install edic-design-system - After installation, invoke the skill by name or use
/edic-design-system - Provide required inputs per the skill's parameter spec and get structured output
What is Edic Design System?
Generate UI components, full pages, documents, emails, and assets that strictly follow the EDIC design system (Editorial × Olive Green, OKLch tokens, dark-mo... It is an AI Agent Skill for Claude Code / OpenClaw, with 29 downloads so far.
How do I install Edic Design System?
Run "/install edic-design-system" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.
Is Edic Design System free?
Yes, Edic Design System is completely free, licensed under MIT-0. You can download, install and use it at no cost.
Which platforms does Edic Design System support?
Edic Design System is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).
Who created Edic Design System?
It is built and maintained by Chenyang (@cgartlab); the current version is v1.5.1.