Your project’s design system lives in docs/design-system.md. When you want
to change it — adopt a new design language, switch component libraries, or
start fresh — genasis handles the transition safely.
# Browse available design systems
genasis design status
# Swap to a new design system by slug
genasis design swap tailwind-minimal
# → backs up current design-system.md to pristine.bak
# → fetches new spec via npx getdesign
# → emits Plane issues for impacted UI areas
# → posts 🚨 DESIGN CHANGE to Mattermost
After the swap, frontend agents pause until they read the updated spec.
If you have your own design spec (e.g., exported from Figma):
genasis design swap --from ./my-design-spec.md
# → same flow but reads from local file instead of gallery
genasis design restore
# → moves external DESIGN.md to archive
# → restores pristine.bak as design-system.md
# → clears §B user overrides
When a developer needs to deviate from the design system:
genasis design override add "Use 8px gap instead of 12px in card grids for mobile"
# → appends to §B of design-system.md
# → designer agent acknowledges and tracks
genasis design override list # show all accumulated overrides
genasis design override remove <id>
When a design swap affects 4+ areas (color-tokens, typography, spacing, layout, components, motion), genasis automatically:
Use --per-area to force one-issue-per-area even when <4 areas change,
or --full-rewrite to always create the EPIC structure.
genasis design verify
# → compares DESIGN.md SHA-256 with .design-state.toml hash
# → detects unauthorized modifications
In genasis.toml:
[design]
gallery_index_url = "https://getdesign.md/"
add_command = "npx getdesign@latest add {slug} --force --out {out}"
disable_telemetry = true # no analytics sent to getdesign
external_dir = "docs/design-system"
docs/example-design-system.md — sample design spec