BrandOS — The brand contract generator

CLI · Agent · DESIGN.md

The design tool that designed itself.

BrandOS is a small CLI plus an opinionated agent prompt that converts a brief into a portable design contract: tokens, themes, an 8-axis tweaks engine, brand marks and a parser surface — ready for any framework.

npx brand-os init --name "Acme" --style minimal --palette slate

Schema -> DESIGN.md -> tweaks -> previews

Contrast-validated themes (WCAG AA + APCA Lc)

Bring any UI library — UI8Kit ships as a reference

Running BrandOS on https://yourbrand.com

The CLI is composing your brand contract

Five phases run end-to-end on your machine — no SaaS in the middle.

Discover

brand-os discover

Reading brief...

0
Extract

brand-os --ast-input <url>

Walking HTML AST...

0
Compose

brand-os init --json

Generating semantic tokens...

0
Iterate

brand-os tweaks --apply

Spawning 8-axis tweaks engine...

0
Emit

brand-os --bootstrap

Writing DESIGN.md (YAML + 8 sections)...

0
$
brand-os --bootstrap
Awaiting CLI input.
BrandOS contract is ready.

DESIGN.md · tweaks/ · brand-marks/ · parser-contract.json

Open BrandOS preview
Live brand contracts

Four brands, generated by the CLI itself.

Each card opens its own design-system preview. Same UI8Kit primitives, different brand layer.

BrandOS

The brand contract generator.

Generator

Noto Sans

Strict monochrome chrome, vibrant product gradients. Variable Noto Sans, pill geometry, dashed focus — the design tool that designed itself.

CLIAgentDESIGN.mdOpen Source

UI8Kit

React prototype kit.

Prototype Kit

Nunito / Nunito Sans

Neutral slate palette, Nunito headings, Nunito Sans body text, semantic CVA primitives. The prototype layer every brand stacks on top of.

React 19Tailwind 4CVAshadcn

RestA

Restaurant brand kit.

Restaurant

Cormorant Garamond / Manrope

Warm hospitality palette, Cormorant Garamond headings, Manrope body text, and soft elevation. Built for menus, reservations and CMS dashboards.

MenuReservationsCMSPromo

Authfly

Open SSO IdP.

SSO Auth

Noto Sans

Confident dark canvas, vibrant red accent, hosted-UI patterns, and Noto Sans typography. Self-hosted SAML 2.0 + OIDC + Passkeys.

SAMLOIDCWebAuthnIdP
CLI workflow

Five phases. One contract.

Each phase is useful alone and composable end-to-end.

01

Discover

Four-question brief: goal, layout, content, audience. The agent asks only what is missing and infers the rest from any HTML you provide.

02

Extract

Optional AST pass over reference HTML lifts color roles, typography hierarchy, density and repeated wrappers — feeding the schema with reality.

03

Compose

init -> schema.json with tokens, themes, tweaks defaults, brand marks, illustration intent and recipes. The schema is the working source of truth.

04

Iterate

Switch ergonomics on the fly: chat for direction, surgical edits for tokens, the live tweaks dock for theme/density/radius/depth previews.

05

Emit & Validate

A single command produces DESIGN.md, tweaks/, brand-marks/, parser-contract.json and manifest.json — with contrast warnings reported to stdout.

8

Tweak axes ship out of the box

6

Validated themes per emission

< 2s

Schema -> full bundle on a laptop

0 KB

Runtime weight outside the tweaks layer

What ships

A small CLI that does one thing extremely well.

BrandOSS gives you the contract. The Go UI proves it can become a real design system.

DESIGN.md as the exchange format

Every emission writes a YAML-fronted Markdown contract that any LLM reads natively, without your prompt scaffolding.

8-axis tweaks engine

Theme, accent, density, radius, depth, motion, type-scale and surface texture — all driven by data-attribute toggles.

Contrast budgets that actually run

Per-theme WCAG AA and APCA Lc validators ship with every emission. Failing pairs are logged with concrete deltas.

Provider-agnostic core

BrandOS prepares the contract. UI library, framework, output format — all decided downstream. UI8Kit happens to be the reference.

Open source, version-pinned

CLI is a small Bun-built binary published on npm; schemas live in your repo; emissions live in your repo. No SaaS, no telemetry.

Single AGENTS.md for every LLM

Drop the prompt into Cursor, Claude Code, Codex, or any agent runtime. The same brief flow works across tools.

FAQ

Common questions

Short answers about BrandOSS, UI8Kit and the migration from React.

No. BrandOS is a CLI plus an agent prompt. Schemas, emissions and previews live in your repository. There is no account, no telemetry, and no online rendering required.

A preset hands you a styled theme. BrandOS hands you a contract: brand thesis, voice, semantic tokens, named themes with contrast budgets, an 8-axis tweaks engine, parser fixtures and brand marks.

Any. The output is plain DESIGN.md plus CSS variables. We ship a React reference and Go UI8Kit pages, but Vue, Svelte, Astro, Next.js, Go templates or WordPress can stack on top of the same tokens layer.

It exposes perceptual axes — theme, accent, density, radius, depth, motion, type-scale, surface texture — as variables and attributes. Any UI built on the BrandOS tokens responds live.

Yes. brand-os --ast-input site.html --ast-suite brand.schema.json runs an HTML AST pass and writes analysis JSON with detected tokens, density and repeated wrappers.

UI8Kit is the reference: it proves the contract is implementable. Each design-system page uses UI8Kit primitives plus a thin per-brand token layer.

Ready when you are

Generate a contract in one command.

No signup, no SaaS, no waiting list. Read AGENTS.md, run the CLI, ship a real design system today.

npx brand-os init