OKLCH scale engine
Eleven-stop ramps with brand-tinted neutrals. Pin the seed to any step; edit stops in HSL or OKLCH without breaking monotonic lightness.
AgentStylusPalette
OKLCH scales, harmony theory, and contrast proof — expressed as a stable API agents can call and designers can refine.
Field note · 01
Agents invent. Designers refine. Products ship. Someone has to own the system between them.
Palette turns one seed into scales, roles, harmony, audits, and tokens — so the handoff isn’t a hex in a chat.
agent“Brand color is
#FF7A3D. Done.”
design“That’s a swatch. Where’s 50–950? Neutrals? Status? Can body text pass?”
ship“We exported three CSS files. None of them match Figma. The CTA fails AA.”
Capabilities
Not a mood board. A reproducible pipeline from brief → brand system → audit → export.
Eleven-stop ramps with brand-tinted neutrals. Pin the seed to any step; edit stops in HSL or OKLCH without breaking monotonic lightness.
Secondary, tertiary, and status (success / warning / danger / info) as first-class scales — parallel to primary, not bolted on.
Theory strategies scored by perceptual separation and audit fitness. Industry weights live in catalogue config, not hard-coded switches.
WCAG AA/AAA and APCA |Lc| targets, pair findings with auto-fixes, and an N×N matrix across brand, neutrals, and theme surfaces.
Solid, neon (OKLCH box + CTA APCA), and gradient with scrim sampling — each with explicit pass/fail gates.
Full-bleed mockups and gallery views act as the visual unit test for every token change.
Package × notation: CSS, Tailwind, tokens, agent JSON — Hex, RGB, HSL, OKLCH — named from your document title.
Industry presets, website scrape (when CORS allows), and image extraction — start from seed, recipe, or evidence.
Interface contract
Pure ESM library — no DOM. Same brief, same output. Provenance lists algorithms and parameters for audit trails.
Input
BrandBrief → seed | presetId | extracted[]
Output
BrandSystem → scales · harmony · audit · tokens
Start
Seed → system → checks → export. No account wall between you and the model.