Genai Mesh Gradient logo

Genai Mesh Gradient

Community
9929y
genai-mesh-gradient

A research-informed GenAI visual-generation workflow. Translate user intent and design constraints into controllable mesh gradients; generate and refine mesh gradients for presentations, web backgrounds and brand visuals, with palette selection and brand-design guidance. Use editable Figma layers or SVG/code routes for sky-inspired, dreamlike, flower-inspired, diffuse, heightmap and multipoint effects, including reference reconstruction.

Overview

Publisher9929y
Repositorygenai-mesh-gradient
Skill namegenai-mesh-gradient
Stars
107
Forks
8
Bundled files
25
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • 25 bundled files

    Scripts, templates, and references the model can read while it works. Files are read-only and never executed.

  • Open source

    Published by 9929y on GitHub. Read the source before you install it.

Installation

Install the Genai Mesh Gradient AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/9929y/genai-mesh-gradient/tree/main
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/9929y/genai-mesh-gradient.git \
  .claude/skills/genai-mesh-gradient
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Genai Mesh Gradient in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Genai Mesh Gradient on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Genai Mesh Gradient is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

GenAI Mesh Gradient

A research-informed agent skill for controllable visual generation, developed by Yanice Yang (research publications: Liuqingqing Yang). The workflow connects user input, explicit design constraints and feedback to editable visual output. Read the bilingual README for the two related papers and the precise connection. This package supplies agent instructions and procedural renderers; it does not implement or reproduce the papers' trained diffusion models. Do not present their reported metrics as results for this skill or infer sole invention from coauthorship. Use an external image-generation tool only when the task calls for model-generated pixels and label that output accurately.

Turn a visual reference into an explicit recipe, render it in a suitable tool, inspect the result, and adjust the parameter responsible for the mismatch. Prefer an editable construction when the user needs to keep designing.

This skill supplies design decisions and small rendering helpers. It does not install an app, establish a Figma connection, or grant file permissions.

Start with the actual request

Identify the reference or palette, intended use, dimensions, transparency, editability, and whether the user wants a still, ambient motion, or image reveal. Use provided context; ask only when a missing choice changes the outcome. If dimensions are unspecified, use a 1200 × 800 landscape study and say so.

Read art-direction.md for the intended use, palette selection, brand judgment and an editing process a non-specialist can follow. For a deck, design in its actual slide ratio with a quiet text zone. For a website, check mobile crop and text protection. Do not deliver an artwork that only looks good without its real foreground content.

When color is undecided, offer a small comparison: monochromatic, analogous, and a restrained contrasting accent (or neutral-plus-accent for dense content). Use the same geometry and seed so the user is choosing color, not different compositions. Explain roles, a fitting use and a tradeoff; lock the selected palette before making a large batch. Do not overwrite supplied brand colors.

Distinguish three tasks:

  • Reconstruct: preserve the reference's composition, color proportions, bright and dark masses, direction, and edge behavior. Do not replace these with a random attractive palette.
  • Generate: design a new composition from the requested palette and mood. Label it as an original study rather than an exact recreation.
  • Image-derived abstraction: extract color, connected regions, approximate coverage, position, luminance, and major structure before choosing a renderer.

Choose a route by capability

Read adapters.md for the selected tool only.

NeedRouteWhat stays editable
Figma still, color masses, soft topologyNative radial fills and optional vector shapesShape, fill, stop alpha, position, scale, stacking
Portable still without a write connectionLayered SVGPaths and gradient definitions in an SVG editor; import fidelity must be checked
Warped flow, diffusion, paint simulation, continuous revealCanvas/WebGL or a tool with documented shader supportParameters/code; an exported bitmap is flattened
Model-generated material or complex illustrationAvailable image-generation toolUsually pixels; never describe it as editable mesh geometry

Discover the actual connector tools before promising an action. A connection with only read tools cannot create native Figma layers. If a Figma write tool exists, use its current instructions and required session flow. Otherwise offer SVG or a runnable renderer, or explain the one missing connection. Do not silently substitute a bitmap for requested editable layers.

Write a compact recipe before rendering

Use normalized coordinates with the origin at the top left. Specify:

text
effect: sky-inspired | dreamlike | flower-inspired | diffuse | heightmap | multipoint
optional browser study: atmospheric | fluid | pigment | oil | silhouette | petal
canvas: width, height, opaque base or transparent
palette: ordered colors with intended roles and rough area proportions
regions: color, center(x,y), extent(rx,ry), direction, opacity, edge softness
structure: bright/dark masses, silhouette or petal boundary if required
material: grain scale/amount, optional warp, pooling or brush hierarchy
seed: fixed for reproducible comparisons
delivery: native Figma | layered SVG | rendered image | executable code

Several disconnected regions may share one color. One average position per color loses a composition with the same hue in opposite corners. Region radii and alpha are not area coverage: overlap and stacking change the visible proportions. Inspect the composite before claiming a palette match.

Build the still first

For the Figma workflow, read figma-recipes.md: Sky-inspired, Dreamlike, Flower-inspired, Diffuse, Heightmap, and Multipoint. For matching an existing bitmap, also read the fitting and detail-calibration procedure there. These are distinct construction choices, not six filters.

Read effects.md only for the related browser-rendering families (atmospheric, fluid, pigment, brush, silhouette and petal). Keep each visual grammar separate from presets such as pale, dark, or saturated. A fidelity level is a mode of an effect, not a new effect family.

  1. Block the base and major color masses. Match composition and light/dark balance before adding texture.
  2. Adjust overlap, asymmetry, edge softness, and local contrast. A few strong masses often work better than many weak ones.
  3. Add only the material cues that distinguish the requested family. Keep fine grain separate from low-frequency boundary distortion.
  4. Render at the intended dimensions. Inspect both the whole image and a detail crop at normal display scale.
  5. Fix the dominant mismatch, keeping seed and unrelated parameters fixed. Stop when the reference/use-case criteria pass.

Simplify the user's edits

Expose a few meaningful choices first: use-case/quiet zone, palette, composition, fusion/softness and contrast. Keep per-layer controls available for refinement. Return massNodes from the native helper so later edits can target each group's transform and its separate color fill without changing the mask.

For size, aspect ratio, palette sample recipes and blur, read palettes-and-layout.md. At a 1536×1024 reference size, compare 100 / 150 / 200 px for broad light fields. The current soft Flower uses 125–160 px and 56–85% plane opacity; the 40-level Heightmap uses 24–38 px; scale a chosen radius by min(width,height)/1024 when resizing the canvas. Changing export scale alone does not require changing the layer radius again. Tune sample-specific values for edge fusion and contour identity; use broader diffusion only when it serves the composition; judge each layer rather than imposing one number. The Gaussian-mask method has no extra layer blur by default. For a different aspect ratio, recompose the centers and quiet zone, and define physical mass radii relative to the short side; do not nonuniformly stretch or assume a centered crop will work.

Use scripts/palette_studies.js for the exact four-pool browser palette examples and three recomposed Gaussian-mask layout specs. These are original sample recipes, not automatic replicas of the six Figma studies. Inspect a selected sample in design/illustrations/ when matching its appearance; a method label alone is not enough. The old radial petal SVG sketch is not the Flower target.

For normal recoloring, edit the named color fills, preserve geometry, then inspect the composite. For layout, move/scale/rotate a whole mass group. Keep raster corrections off during substantial redesign.

The current blue/orange gallery can be reconstructed with scripts/blue_orange_studies.js, inlined after figma_native.js; read the current construction table in figma-recipes.md. This six-study builder has been executed in live Figma and returns native artboard/layer IDs. Its paths use a 3:2 composition; recompose before adapting to a different ratio.

Helpers:

  • scripts/figma_native.js defines buildMesh(figma, spec) for native Gaussian alpha-mask groups with separate solid color fills. Read the adapter first. It deliberately creates no texture, segmentation, mesh control-point grid, or animation.
  • python3 scripts/render_svg.py --effect atmospheric --output study.svg creates an original deterministic SVG study. Run --help for dimensions, seed, palette and texture options. It provides four schematic families; it does not analyze an input image or reproduce all six advanced effects.

Diagnose instead of adding more blur

SymptomLikely causeFirst correction
Defocused photographRenderer still depends on fine source pixelsRebuild from simplified regions; discard fine texture
Muddy/gray mixtureToo much overlapping complementary pigmentSeparate major masses; reduce broad alpha; restore a light or dark anchor
Visible colored circlesSimilar circular masses and isolated boundariesVary aspect/placement; overlap; use shaped vectors where contours matter
Horizontal sunset bandsCenters aligned on rowsChange topology and direction, not just hue
Texture covers everythingGrain too large or opaqueLower amount; inspect at actual display size
Petal looks like a flower iconPerfect radial symmetry, central rosetteEnlarge/crop planes; use a curved shadow and transmitted light if the reference calls for it
Dreamlike looks ornamentalThin closed highlight loop replaces broad lightRemove the outline and restore unequal offset light/shadow regions
Heightmap stays simple despite many layersRepeated scaled outline, no saddlesChange the height field and inspect splits/merges before increasing levels
Export differs from previewDifferent dimensions, color/filter handling or pipelineRender both through the same pipeline; check actual exported pixels

Add motion only when requested

Read motion.md. Keep the still's settings independent from reveal progress and ambient time. Do not assume every effect should end at a photograph: use the user's requested endpoint.

Deliver with evidence

Return the usable artifact or Figma node link, route, effect and key adjustable parameters. State what is editable and which effects were approximated or rasterized. Confirm export dimensions, background/alpha and orientation. For a reference match, discuss composition/coverage/edges rather than claiming pixel identity without an image comparison.

Keep original references unchanged. Do not publish private file links, local paths, personal conversation transcripts, or third-party reference images as part of a reusable recipe. Use original examples or licensed assets.

Scope of evidence

The Figma recipes are grounded in read-only inspection of existing native artwork and recovered historical construction records. The original chat UI could not be restored. Node structures and representative renders were checked; design intent and undocumented algorithms are identified as interpretations. Browser effect and motion guidance additionally synthesizes archived prototype notes. Parameter ranges are starting points. See index.html for validation status. Neither raw history nor private Figma file links are bundled.

Bundled files

The model reads these on demand while the skill is loaded. They are exposed as readable files and are never executed.

Frequently asked questions

What does the Genai Mesh Gradient AI skill do?

A research-informed GenAI visual-generation workflow. Translate user intent and design constraints into controllable mesh gradients; generate and refine mesh gradients for presentations, web backgrounds and brand visuals, with palette selection and brand-design guidance. Use editable Figma layers or SVG/code routes for sky-inspired, dreamlike, flower-inspired, diffuse, heightmap and multipoint effects, including reference reconstruction.

Why use Genai Mesh Gradient on TypingMind?

Because you install it once and use it with any model. Genai Mesh Gradient is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Genai Mesh Gradient in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/9929y/genai-mesh-gradient/tree/main. TypingMind reads its SKILL.md and bundles its files and installs it as a skill you can enable per chat.

Which AI models can use Genai Mesh Gradient?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Genai Mesh Gradient?

As many as you like. As long as a model supports skills, you can use Genai Mesh Gradient with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Genai Mesh Gradient AI skill free?

Yes. It is published on GitHub by 9929y under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇