Agent skill

Moai Domain Design Dna

by modu-ai in modu-ai/moai-adk

Reverse-engineer a reference design — a screenshot, an image set, or a live URL — into a portable Design DNA JSON across three dimensions (measurable tokens, qualitative style, special-rendering…

Apache-2.0Auto-check: notesGame Development

Install Moai Domain Design Dna

skills CLI
$ npx skills add modu-ai/moai-adk --skill moai-domain-design-dna -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install modu-ai/moai-adk moai-domain-design-dna --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/modu-ai/moai-adk.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/moai-domain-design-dna .claude/skills/moai-domain-design-dna && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
moai-domain-design-dna
GitHub stars
1.2k
Token cost
~2.6k tokens
SKILL.md length
1,245 words
Files
4 (incl. references)
Skills in repo
48
Repo updated
First seen
Licence
Apache-2.0

At a glance

Reverse-engineer a reference design — a screenshot, an image set, or a live URL — into a portable Design DNA JSON across three dimensions (measurable tokens, qualitative style, special-rendering…

  • Works in 3 steps: Structure → Analyze (reference → DNA JSON) → Generate (DNA JSON + content → artifact)
  • Tasks that involve 3D graphics and WebGL
  • SKILL.md covers The three dimensions, Phase 1 — Structure, Phase 2 — Analyze (reference →… and Phase 3 — Generate (DNA JSON +…, plus 5 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Moai Domain Design Dna is an agent skill from modu-ai/moai-adk. Reverse-engineer a reference design — a screenshot, an image set, or a live URL — into a portable Design DNA JSON across three dimensions (measurable tokens, qualitative style, special-rendering effects), then generate a new self-contained artifact from that JSON. Carries the extraction rules (dominance-based colour roles, relative radius measurement, multi-reference conflict resolution), a performance-tier technology map for Canvas / WebGL / shader / scroll effects, and a delivery gate covering contrast, reduced…

Its SKILL.md is about 2.6k tokens, which your agent loads only when the skill is triggered. The skill folder holds 4 other files, including reference files (for example `references/diagram-profiles.md`, `references/dna-schema.md` and `references/effects-implementation.md`). Compatibility notes: Designed for Claude Code

It sits in Game Development, covering 3D graphics and WebGL. The repository describes itself as: Agentic development harness for Claude Code — SPEC-driven plan/run/sync, TRUST 5 quality gates, model+effort routing, and Claude×GLM multi-LLM cost control. Single Go binary, 16… The licence is Apache-2.0.

When your agent uses it

  • Tasks that involve 3D graphics and WebGL

Example prompts

  • “/moai-domain-design-dna”

Requirements

  • Compatibility (from SKILL.md): Designed for Claude Code
  • Pre-approved tools (allowed-tools): Read, Write, Edit, Grep, Glob, WebFetch, Bash

Workflow steps

3 steps, taken from the step headings in SKILL.md.

  1. Structure
  2. Analyze (reference → DNA JSON)
  3. Generate (DNA JSON + content → artifact)

What it can do on your machine

Read from SKILL.md and the folder at commit 2aab5f7. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Read
    • Write
    • Edit
    • Grep
    • Glob
    • WebFetch
    • Bash

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

  • Compatibility

    Designed for Claude Code

    From compatibility in the SKILL.md frontmatter.

Context cost

Moai Domain Design Dna loads about 2.6k tokens when it runs, and up to ~7.4k if it reads all its reference files. Until then it costs about 144 tokens; SKILL.md has 1,245 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~144
When it runs · the whole SKILL.md, loaded when a task matches
~2.6k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~7.4k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NotePre-approves every shell command (allowed-tools: Bash)SKILL.md
    allowed-tools: Read, Write, Edit, Grep, Glob, WebFetch, Bash

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from modu-ai/moai-adk at commit 2aab5f7, republished under its Apache-2.0 licence (© modu-ai). 1,245 words, ~2,621 tokens.

Download SKILL.mdSave it as .claude/skills/moai-domain-design-dna/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.
name
moai-domain-design-dna
description
Reverse-engineer a reference design — a screenshot, an image set, or a live URL — into a portable Design DNA JSON across three dimensions (measurable tokens, qualitative style, special-rendering effects), then generate a new self-contained artifact from that JSON. Carries the extraction rules (dominance-based colour roles, relative radius measurement, multi-reference conflict resolution), a performance-tier technology map for Canvas / WebGL / shader / scroll effects, and a delivery gate covering contrast, reduced motion, and animation-loop hygiene.
allowed-tools
Read, Write, Edit, Grep, Glob, WebFetch, Bash
compatibility
Designed for Claude Code
when_to_use
Use when someone points at an existing design and wants its look captured or reproduced — "build this in the same style as this screenshot", "extract the…
license
Apache-2.0
user-invocable
true
metadata.version
1.0.0
metadata.category
domain
metadata.status
active
metadata.related-skills
moai-ref-ui-polish, moai-domain-html-report, moai-domain-svg-infographic

Design DNA

Most "make it look like this" requests fail the same way: the reference is looked at once, an impression is formed, and the impression is coded from memory. What survives is a vague resemblance — the palette drifts, the rhythm flattens, and the one effect that gave the reference its character is missing entirely.

This skill inserts an artifact between looking and building. The reference is first deconstructed into a Design DNA JSON, and only that JSON is used to generate. The intermediate step is what makes the result checkable: every colour, radius, and easing curve in the output traces to a recorded field, so a mismatch is a diff rather than an argument about taste.

Provenance: the three-dimension taxonomy and several extraction rules are adapted from the MIT-licensed zanwei/design-dna skill. See .claude/rules/moai/NOTICE.md for the retained copyright notice.

The three dimensions

The split matters because the three are extracted differently and fail differently.

DimensionWhat it holdsHow it is obtained
design_systemWhat can be measured — colour hex values, type scale, spacing base unit, radius, elevation, motion timings, component patternsSampled and measured from the reference; numeric
design_styleWhat can be felt — mood, ornamentation level, composition strategy, whitespace philosophy, interaction personality, microcopy toneJudged holistically; descriptive words, not numbers
visual_effectsWhat cannot be expressed in plain CSS — Canvas scenes, WebGL / 3D, shaders, particle systems, scroll-driven motion, cursor behaviour, glassmorphismRead from source where available, described from screenshots where not

Collapsing them loses information in both directions. A token dump with no style dimension reproduces the colours and none of the character; a mood board with no system dimension reproduces the vibe and no two elements align.

Field-by-field schema and enum vocabularies: references/dna-schema.md.

Phase 1 — Structure

When the request is for the schema itself ("what does a design profile contain?"), read references/dna-schema.md, present the three dimensions and their field groups, and ask whether any dimension should be extended or dropped before extraction begins.

Phase 2 — Analyze (reference → DNA JSON)

Read references/dna-schema.md first, then work reference by reference.

  • Image or screenshot → read it directly and analyse its visual properties.
  • URL → fetch the page. Prefer the source: <canvas> elements, WebGL contexts, animation-library imports, custom shaders, IntersectionObserver scroll triggers, and SVG <animate> are stated facts, where a screenshot only supports inference.
  • Video or interaction capture → the only reliable source for motion timings, scroll choreography, and transition personality.
Extraction rules
  1. Colour roles are assigned by dominance, not by hue. Primary is the colour holding the most area, secondary the supporting surface, accent whatever carries the calls to action. Map the neutral scale as an ordered ramp from the lightest background to the darkest text.
  2. Measure radius relatively. Record it against the element height that carries it — an absolute 12px is meaningless once the button is a different size, while "half the control height" survives rescaling. The concentric-radius rule for nested surfaces is moai-ref-ui-polish's; do not restate it here, apply it there.
  3. Infer type scale from ratios, not from absolute sizes. Heading-to-body ratio and line-height rhythm transfer across viewports; pixel sizes do not.
  4. Density is proximity. Judge spacing from element gaps relative to the base unit, and section rhythm from whether those gaps stay constant or escalate between sections.
  5. When references conflict, record the dominant pattern and name the variant. Averaging two references produces a design neither of them has.
  6. Fill every field. An empty string is indistinguishable from "not looked at". Where the reference genuinely does not exercise a field, say so in the value — an explicit "not observed" is data; a blank is a gap.
  7. Effects absent from the reference get enabled: false. This is the non-invention rule, and it is load-bearing: an unset flag invites the generator to add a particle field nobody asked for.
  8. What cannot be identified goes in composite_notes. A screenshot shows that a surface glows without showing how. Describing the observation beats guessing the implementation and recording the guess as fact.

Output the completed JSON, then ask whether any value should be adjusted before generation.

Show full SKILL.md (570 more words)Show less

Phase 3 — Generate (DNA JSON + content → artifact)

Read references/effects-implementation.md before implementing any visual_effects entry.

Order matters, because early decisions constrain later ones. Colour and typography together carry most of a design's identity, so they are settled first; effects are layered onto a design that already works without them.

  1. Colour and typography
  2. Spacing and layout
  3. Shape and elevation
  4. design_style qualitative fields — these guide the judgement calls the token values do not determine
  5. visual_effects
  6. Motion and interaction, last: an interface whose static layout is wrong is not rescued by animating it

Emit design_system as CSS custom properties in a single :root block, so every downstream value has one definition and a token swap is one edit.

Fetch real assets rather than approximating them. When the reference is a URL and the design needs its logo, image, or font, retrieve the actual asset from that source. A recreated approximation is the single most visible difference between a copy and a clone.

Default output is a self-contained file — inline CSS and JS, no build step — unless a framework was specified. The self-contained convention itself is documented once in moai-domain-html-report § output; the difference here is scope: that skill renders a report from markdown, this one generates a designed artifact from a DNA profile.

Profile persistence

Phase 2 can end by saving the completed DNA JSON as a named profile, and Phase 3 can start from the active profile instead of re-extracting the same reference: references/diagram-profiles.md documents the mechanism — the project-root .design-dna/ store, the marker-first active selector, the slug grammar, schema validation with "not observed" backfill on load, and the confirm-before-overwrite / verify-by-re-read save path. A project with no profile marker proceeds exactly as above; persistence adds a save hook and a start-from option, never a routing change.

Delivery gate

Verify before handing over. Each item below has failed in practice.

  • Every colour in the output traces to a DNA palette entry.
  • Font families, spacing rhythm, and radius match their DNA tokens.
  • Body text meets 4.5:1 contrast, large text 3:1.
  • prefers-reduced-motion: reduce is honoured — not merely detected.
  • Nothing renders for an effect whose enabled flag is false.
  • Animation loops use requestAnimationFrame; setInterval is not an animation primitive and drifts against the display refresh.
  • Canvas and WebGL contexts are sized to their container and handle resize.
  • The declared fallback_strategy is actually implemented, not just recorded.

Polish iteration

A first pass that reads thin is usually not a token problem — it is an attention problem, and re-reading the reference beats re-reading the output. Re-attach the same references and audit against them along six axes: hierarchy, ornamentation, typographic rhythm, motion, materiality, and overall interface finish. Merge the conclusions back into the current implementation rather than regenerating from scratch, which discards the parts that were already right.

Boundaries

RequestOwner
Markdown report → HTMLmoai-domain-html-report
Architecture / flow diagrammoai-domain-svg-infographic
Chart, dashboard, or categorical palettedataviz
Component-level finish: concentric radius, optical alignment, hit areas, easing craftmoai-ref-ui-polish
Hosted claude.ai visual-identity pageartifact-design
Design-system sync with the Claude Design productmanager-design

This skill owns one thing the others do not: turning an existing reference into a structured profile, and generating from that profile. Where the design is authored from first principles rather than deconstructed, those skills own it.

References

  • references/dna-schema.md — the three-dimension field list and enum vocabularies
  • references/diagram-profiles.md — named-profile persistence: the .design-dna/ store, marker-first resolution, slug grammar, load-time validation
  • references/effects-implementation.md — performance tiers, technology selection, and per-effect implementation patterns

© modu-ai, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 3 other files (references) in .claude/skills/moai-domain-design-dna of modu-ai/moai-adk.

  • SKILL.md
  • references/diagram-profiles.md
  • references/dna-schema.md
  • references/effects-implementation.md

Open the folder on GitHubat commit 2aab5f7

Compare with similar skills

Moai Domain Design Dna next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Moai Domain Design Dna compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Moai Domain Design Dna this skillmodu-ai/moai-adk1.2k—~2.6kAutomated safety check: NotesApache-2.0
Image to Three.js Modelimg2threejs/img2threejs18k1 repos~8.2kAutomated safety check: PassApache-2.0
Web CloneJane-xiaoer/claude-skill-web-clone1k1 repos~2.7kAutomated safety check: PassMIT
Threejs Game Directormajidmanzarpour/threejs-game-skills2.5k—~2.2kAutomated safety check: PassMIT
Game Asset Generatorhtdt/godogen7.1k—~2.8kAutomated safety check: PassMIT
Threejs Gameplay Systemsvalkor-ai/loom1.2k1 repos~1.4kAutomated safety check: PassApache-2.0

Similar skills

  • Image to Three.js Model

    img2threejs/img2threejs

    Rebuilds the object in a reference image as a procedural, animation-ready Three.js model written entirely in code, using staged sculpting with quality checks.

    18k GitHub starsUsed in 1 repo~8.2k tokens
    Game DevelopmentAuto-check passed
  • Web Clone

    Jane-xiaoer/claude-skill-web-clone

    网站复刻 / 克隆方法论。USE WHEN 用户说 复刻网站、克隆网站、clone website、抄个站、仿站、 照着这个站做一个、reproduce site、还原某个网页效果、把这个站搬下来改成我的、 复刻某个交互/WebGL/Canvas/Three.js 效果。提供「先拿真源码 → 判路径 → 逆向拆解 → 搭工程 → 替换内容」的可移植决策树,覆盖静态站 /…

    1k GitHub starsUsed in 1 repo~2.7k tokens
    Game DevelopmentAuto-check passed
  • Threejs Game Director

    majidmanzarpour/threejs-game-skills

    Entrypoint for building, upgrading, and finishing Three.js browser games.

    2.5k GitHub stars~2.2k tokensUpdated 13 days ago
    Game DevelopmentAuto-check passed
  • Generates game art from text prompts: PNG images, GLB 3D models, rigged characters, animations and sprites, with background removal.

    7.1k GitHub stars~2.8k tokensUpdated 9 days ago
    Game DevelopmentAuto-check passed
  • Build and iterate playable Three.js game systems: starter scaffold, architecture, design briefs, core loops, level and encounter design, entities, input, camera, collision and physics, scoring…

    1.2k GitHub starsUsed in 1 repo~1.4k tokens
    Game DevelopmentAuto-check passed
  • Threejs World Generation

    calesthio/OpenMontage

    Build deterministic, editable, free-viewpoint Three.js worlds from text or structured briefs.

    66k GitHub stars~2k tokensUpdated 8 days ago
    Game DevelopmentAuto-check passed

More from modu-ai/moai-adk

All 48 skills in this repo
  • Builds hand-editable SVG diagrams from computed layout coordinates, lints the source and renders a 2x PNG, with rules for when mermaid is the better choice.

    1.2k GitHub stars~5.2k tokensUpdated yesterday
    Auto-check: notes
  • MoAI Foundation Core

    modu-ai/moai-adk

    Reference for MoAI-ADK's core development principles: TRUST 5 quality gates, SPEC-first domain-driven workflow, agent delegation and token budgeting.

    1.2k GitHub stars~5k tokensUpdated yesterday
    Auto-check passed
  • MoAI SPEC Workflow

    modu-ai/moai-adk

    Manages SPEC documents for MoAI-ADK development, with GEARS or EARS requirement notation, acceptance criteria and a link into the Plan-Run-Sync workflow.

    1.2k GitHub stars~5.1k tokensUpdated yesterday
    Auto-check passed
  • MoAI TDD Workflow

    modu-ai/moai-adk

    Drives test-first development through the RED, GREEN, REFACTOR cycle, with a config switch that selects between TDD and a DDD workflow for existing code.

    1.2k GitHub stars~3.1k tokensUpdated yesterday
    Auto-check passed
  • MoAI Worktree Management

    modu-ai/moai-adk

    Gives each SPEC its own Git worktree with a registry of active workspaces, base-branch sync and cleanup of merged ones, inside the MoAI-ADK workflow.

    1.2k GitHub stars~3.9k tokensUpdated yesterday
    Auto-check passed
  • Watches a pull request's CI checks after creation, separates required from auxiliary failures, applies limited safe fixes and escalates anything semantic to you.

    1.2k GitHub stars~2.4k tokensUpdated yesterday
    Auto-check: notes

Questions about Moai Domain Design Dna

What does Moai Domain Design Dna do?

Reverse-engineer a reference design — a screenshot, an image set, or a live URL — into a portable Design DNA JSON across three dimensions (measurable tokens, qualitative style, special-rendering…. Moai Domain Design Dna is an agent skill from modu-ai/moai-adk. Reverse-engineer a reference design — a screenshot, an image set, or a live URL — into a portable Design DNA JSON across three dimensions (measurable tokens, qualitative style, special-rendering effects), then generate a new self-contained artifact from that JSON.

When should I use Moai Domain Design Dna?

Moai Domain Design Dna fits situations like: tasks that involve 3D graphics and WebGL.

How do I install Moai Domain Design Dna in Claude Code?

Run `npx skills add modu-ai/moai-adk --skill moai-domain-design-dna -a claude-code`. Or copy the skill folder (.claude/skills/moai-domain-design-dna in modu-ai/moai-adk) into .claude/skills/moai-domain-design-dna in your project. Claude Code loads it when a task matches its description.

How do I install Moai Domain Design Dna in Codex?

Run `npx skills add modu-ai/moai-adk --skill moai-domain-design-dna -a codex`. Or copy the skill folder (.claude/skills/moai-domain-design-dna in modu-ai/moai-adk) into .agents/skills/moai-domain-design-dna in your project. Codex loads it when a task matches its description.

Can I use Moai Domain Design Dna in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add modu-ai/moai-adk --skill moai-domain-design-dna -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/moai-domain-design-dna, .gemini/skills/moai-domain-design-dna, .github/skills/moai-domain-design-dna and .opencode/skills/moai-domain-design-dna in your project.

What does Moai Domain Design Dna need to run?

SKILL.md names no scripts, command-line tools or credentials: Moai Domain Design Dna is instructions for the agent only. Its frontmatter pre-approves these tools: Read, Write, Edit, Grep, Glob, WebFetch, Bash. Compatibility (from SKILL.md): Designed for Claude Code.

Does Moai Domain Design Dna access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Moai Domain Design Dna safe to install?

Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does Moai Domain Design Dna use?

Moai Domain Design Dna is published under the Apache-2.0 licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Moai Domain Design Dna use?

About 2.6k tokens (SKILL.md is roughly 10k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 4.8k tokens, read only when the agent opens those files.

What are the alternatives to Moai Domain Design Dna?

Skills that share tags, products or a category with Moai Domain Design Dna: Image to Three.js Model (img2threejs/img2threejs, 18k stars), Web Clone (Jane-xiaoer/claude-skill-web-clone, 1k stars), Threejs Game Director (majidmanzarpour/threejs-game-skills, 2.5k stars) and Game Asset Generator (htdt/godogen, 7.1k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Moai Domain Design Dna?

modu-ai (a GitHub organization) maintains it in modu-ai/moai-adk, which has 1,230 GitHub stars. The repository holds 48 skills in this directory. The repository was last updated on October 9, 2026.

Source: modu-ai/moai-adk on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.