Agent skill

Grainy Gouache Illustration

by MengTo in MengTo/Skills

Draws cozy animal scenes as hand-authored 480x360 SVG cards in a grainy, risograph-like gouache style on hot pink, for empty states, headers and marketing cards.

MITAuto-check passedMedia & Creative

Install Grainy Gouache Illustration

skills CLI
$ npx skills add MengTo/Skills --skill illustration-grainy-gouache -a claude-code

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

GitHub CLI
$ gh skill install MengTo/Skills illustration-grainy-gouache --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/MengTo/Skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/agent-skills/illustration/illustration-grainy-gouache .claude/skills/illustration-grainy-gouache && 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
illustration-grainy-gouache
GitHub stars
6.7k
Token cost
~5.2k tokens
SKILL.md length
2,930 words
Files
13 (incl. scripts, references)
Skills in repo
39
Repo updated
First seen
Licence
MIT

At a glance

Draws cozy animal scenes as hand-authored 480x360 SVG cards in a grainy, risograph-like gouache style on hot pink, for empty states, headers and marketing cards.

  • Works in 9 steps: Brief: name the subject in 3 words and… → Pose and hero: choose one of the working… → Block: write a generator (gen.mjs in… → …
  • Making a cozy animal illustration for an empty state or 404 page
  • SKILL.md covers The look in one sentence, Palette, Line and fill and Characters, plus 7 more sections
  • Runs JavaScript scripts from its folder; calls node

What it does

This style skill produces one kind of image: a cute animal doing a design or coding task, drawn as flat, outline-free SVG shapes with soft gradient shading, a fine dark grain that gathers at the edges, a chalky purple shadow under the group and big glossy eyes. The card is saturated hot pink with cream sparkles and falling autumn leaves. It suits places where a product wants warmth, such as empty states, onboarding, 404 pages, seasonal blog headers and feature spots.

A palette table lists measured hex values and says every large form uses a color ramp rather than a flat fill. The folder ships `style.json`, three example SVG cards, a craft reference, a demo page and scripts named gouache.mjs, lint.mjs and render.mjs. Boundaries send other briefs elsewhere: plain flat vector goes to illustration-flat, hand-inked critters to illustration-ink-sketch and people to illustration-outlined-cartoon, since this style has no human cards. The excerpt is cut off inside the palette.

When your agent uses it

  • Making a cozy animal illustration for an empty state or 404 page
  • Creating a warm handmade header image for a blog post
  • Producing onboarding step art in a risograph-like style
  • Adding a card to an existing grainy gouache set

Example prompts

  • “Draw a fox at a laptop in the grainy gouache style for our 404 page.”
  • “Make an owl with a stack of books as a blog header card.”
  • “Create an onboarding illustration of a cat at a desk with autumn leaves and sparkles.”

Workflow steps

9 steps, taken from the first numbered list in SKILL.md.

  1. Brief: name the subject in 3 words and the one action that shows it ("rabbit ships a side project": pressing deploy, a tiny rocket…
  2. Pose and hero: choose one of the working poses or a close variant; decide every paw's job (grip, rest, perch) and, for each gripping paw…
  3. Block: write a generator (gen.mjs in your own work folder) that imports scripts/gouache.mjs by absolute path (an ES import resolves…
  4. Draw: replace flat fills with ramps and overlays, add patterns, the face, paws, props; add decor and leaves last, in the margins.
  5. Render: node scripts/render.mjs card.svg card.png.
  6. Sheet: node scripts/render.mjs --sheet sheet.png examples/*.svg card.svg. Ask "same hand, same set?"
  7. Zoom: node scripts/render.mjs card.svg z-face.png --zoom x,y,w,h --scale 8 on the face, every paw, the feet and each contact (hips on…
  8. Critique on the five criteria in references/craft.md, harshly; fix; re-render. Expect 4 rounds.
  9. Lint: node scripts/lint.mjs card.svg --prefix wk- --palette style.json. Fix every ERROR; each WARN must be a deliberate fur or tint ramp.

What it can do on your machine

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

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 3 files in scripts/ (JavaScript), which the agent can run.

    Shell commands in SKILL.md call:

    • node

    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.

Context cost

Grainy Gouache Illustration loads about 5.2k tokens when it runs, and up to ~7.9k if it reads all its reference files. Until then it costs about 224 tokens; SKILL.md has 2,930 words of instructions outside code blocks.

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

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 passed

The automated check found no risky patterns in SKILL.md.

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); the scripts in this folder are not scanned.

SKILL.md

The full file from MengTo/Skills at commit 83a47fe, republished under its MIT licence (© MengTo). 2,930 words, ~5,225 tokens.

Download SKILL.mdSave it as .claude/skills/illustration-grainy-gouache/SKILL.md (or your agent's skills folder). This skill also uses 12 other files; get the full folder from GitHub.
name
illustration-grainy-gouache
description
Draws original cosy animal scenes as hand-authored SVG cards (480x360) in a grainy gouache, risograph-like style. Identifying traits are flat shapes with no outlines on a hot-pink card; soft 3-4 stop gradient shading on every rounded form, darker toward edges and base; a fine dark multiply grain that gathers at each shape's edges; a chalky purple-pink shadow pooled under the group; and big glossy eyes with cream star highlights, framed by grained autumn leaves and sparse cream sparkles. It covers design and coding moments with one cute animal at a laptop, monitor, desk, window, mug or book stack. Use when someone asks for grainy, gouache, riso, risograph, textured, cosy, cozy, autumn, hygge, storybook or children's-book style animal art, or for an empty state, onboarding step, 404 page, blog header, feature spot or marketing card with a warm handmade feel.

Illustration: Grainy gouache

A warm editorial style: one cute animal doing a design or coding thing, painted in flat, outline-free shapes that are softly shaded and dusted with fine dark grain, on a saturated hot-pink card with cream sparkles and falling autumn leaves. Use it where a product wants warmth and charm: empty states, onboarding, seasonal blog headers, "we're working on it" pages.

Boundary: for clean flat vector with no texture and no animals, use illustration-flat. For a hand-inked critter with hatching and googly eyes on white, use illustration-ink-sketch. For people with inked outlines, use illustration-outlined-cartoon. This style has no human cards; if a brief needs a person, use one of those instead.

Extracted from a set of 42 original design-and-coding cards in 14 styles; the three cards in examples/ are this style's shipped cards.

The look in one sentence

Outline-free shapes, each filled with a soft light-to-dark gradient and then speckled with a fine dark grain that thickens toward the shape's edges and into its shadows, sitting on hot pink #FF81BE with a chalky purple pool beneath.

Remove the edge-gathered grain and it becomes plain flat vector; change the pink and it stops belonging to the set.

Palette

Measured from the examples. Every large form uses a ramp, never one flat colour. style.json lists every legitimate value.

RoleHexWhere it goes
Card background#FF81BEfull-bleed rect, every card, including night and rain scenes
Cream#FDD5A8sparkles, bursts, dots, steam, code text, rain, pompom, fur ticks
Cream light#FFF3E2tiny glints on drops and pompoms only
Pool shadow / core#B95A93 / #A04A80chalky floor pool; core at opacity 0.8 under the heaviest object
Blush#FF7FB0cheek ellipses at opacity 0.6
Vermilion#FF4816flat accents: editor dot, bookmark, commit node
Vermilion ramp#FF5A24 #F2440F #F0420E #B02B08 #9C2306mugs, plant pots, fox fur (radial #FF5A26→#FB4714→#D9380C→#9C2406)
Coral#FF6A3Acode accent, mug rim, sticky note
Knit#EE430F+#C2320A, dark #D2360B+#A42807, rib #E03A0C+#A8290Asweater, sleeves, beanie, cuffs
Ochre / gold#E7A13A / #D88A1Ecode keywords, sticky notes, band borders / gilt rules, fringe, owl toes
Ochre ramp#E38C1E #C96E05 #9E5004window frames, book covers
Wood top#F0A23C→#D98418, edge #F6B860, contact #7A3A04 @0.38desk tops, sills
Maroon ramp#8A220A #701001 #4A0901, deep #5A0E02 #3A0601books, desk and sill fronts, round window frames, aprons
End shade#1A0402gradient overlay at 0.4-0.5 on both ends of boxes and spines
Screen#8A2632→#621626→#3A0A14screens; night sky #3A1424→#1C0910; rain pane #22090F→#4E1420
Near-black#191113 bezel, ramp #3A2E31→#0D0809, edge #6A5A5Flaptops, monitors, lamps, paws, ear tips
Face ink#0D0809 pupils/nose, #120A0B #1A0E0F lines, #F7D6A6 eye ringfaces
Cream fur#FFE6C4→#FCD9AE→#F0BF88muzzles, chests, tail tips (radial)
Ivy#16592C #0F4A23 | #0C3F1D #082F15, veins #06150Aivy leaves, vines
Olive#7A7318 #6A6416 | #524810 #3C350C, veins #1C1804; mug #5E5712olive leaves, plant, mugs
Olive accent#A8B030 code green, #8A9416 editor dot, #545C01 scarfsmall accents only
Oak#E08A1C #D47A0C | #C96E05 #A85A05, veins #3A1404oak leaves
Fur, amber#E59240→#CF7426→#A9531A→#7A3510; limbs #B85E1E→#5E280C; paws #6A3418→#32150Abrown animals
Fur, owl#F0962E→#DC7A14→#B85A08→#8A3E04; wing #7E2A06→#461402orange animals

Never: an outline around a shape; blue, teal, purple or grey anywhere except the pool; pure white except the lamp-light cone; any background but #FF81BE; a large shape in one flat colour; glows or rim lights. Cream decor never sits on cream fur, and a vermilion head never sits on pink alone: put it in front of a dark plane.

Line and fill

At 480 wide:

  • Shapes are fills, never stroked. Separate shapes with a value or hue step plus the grain edge. A stroke around a mug or a head is the first sign of a different style.
  • Thin dark detail lines only, round caps, never #000: leaf veins 0.6-0.7, leaf stems 0.9, whiskers 0.75-0.8 (#1A0E0F or #3A1A0C), mouth and lid line 1.05-1.3 (#120A0B), finger creases 0.7 (#1A0A04), feather lines 0.9-1.1.
  • Cream lines: steam 1.15-1.35, burst rays 1.3, scarf braces 1.1, rain 1.0 at stroke-opacity 0.22-0.5, ear-fur ticks 1.1.
  • Code on screens: stroke 2.2-2.6, round caps, rows 7-8.4 apart, 2-3 segments per row in ochre, cream, coral, olive-green.
  • Gradients: radial for round forms (cx 0.42-0.46, cy 0.30-0.34, r 0.72-0.78; stops light 0, mid 0.5, shade 0.82, edge 1). Vertical linear for slabs (light top, dark base). Horizontal 5-stop for cylinders (dark 0, mid 0.22, highlight 0.45, mid 0.75, darkest 1).
  • Overlays add depth without new colours: gEnds across a box, gBase (#5A0E02 0→0.5) at a cylinder's foot, a crown band (#7A3510 @0.3) clipped to the top of a head, a radial "sweat" (#5A0E02 0→0.55 at the rim) over a torso, sleeve gradients (dark maroon 0.55 outside → #FF8A50 0.12-0.22 inside).
  • Cast shadows inside the figure: the sleeve path filled #4A0901, blurred 2.4 (soft), offset 3.5 px, clipped to the torso, opacity 0.85.
  • Grain: wrap every solid shape group in filter="url(#p-grain)"; big light planes (window frames, desk tops) use grainL. Faces' details, code, cream decor, whiskers and veins stay crisp: draw them outside the grain group, after it.
  • Patterns (userSpaceOnUse): knit 7x6 chevron, rib 3.2x10 stripes, Fair-Isle band 12x11 (maroon, cream drop, ochre dots), scarf 22x19, feather chevron 8x7.

Characters

Animals only: fox, otter and owl in the examples. A new card brings one new or repeated animal (rabbit, hedgehog, bear cub, raccoon, cat, badger all suit).

  • Proportions: head as wide as the torso or wider (84-92 px); head height 0.8-1.0 x torso height (shoulder to seat); head top to seat 110-150 px, plus 30-40 if the legs reach the floor. Short limbs, no visible neck: the chin overlaps the shoulders by 8-10 px. Measure it in the SVG: a 0.6 head-to-torso ratio looks lanky next to the set.
  • Head: one smooth closed path in a radial fur gradient; a darker crown band clipped to the top; a cream muzzle (gCream) with a darker copy 1.6 px lower at 0.55 opacity as its shadow; ears with a darker inner shape (#C2300A or #5A2408); fox ear tips black via a clipPath. Tilt the head group 5-9 degrees toward what the animal looks at.
  • Eyes (the signature): cream ring #F7D6A6 r 10-12, pupil #0D0809 at 0.81 r shifted 0.22 r toward the look direction, a cream 4-point star (scale 0.52-0.78) on the look side above centre, a cream dot r 1.35-1.6 below on the other side. Centres 29-37 px apart, so the eyes nearly touch. A sleepy variant clips a fur-coloured lid over the top with a 1.3 lid line and a short flick at the outer corner.
  • Nose and mouth: a rounded inverted triangle 10-17 px wide in #0D0809, a #6A5A5C shine ellipse, then a 1.05 "w" mouth hanging from it. Muzzle dots #7A4A30 r 0.9 on otters.
  • Whiskers: two per side, 0.75-0.8, 28-75 px long, fanning slightly. Blush: #FF7FB0 @0.6, rx 4.4-6.6, ry 2.6-3.4, under each outer eye corner.
  • Paws are this style's hands. Gripping (the otter's mug): a fur forearm tube 12 → 9.5 wide leaves a rib cuff 17 → 15.5; a dark paw (#6A3418→#32150A) has a palm block about 9 x 15, three finger tubes 4.6 → 4.2 wide and 5.8-6.8 long laid ACROSS the front of the mug 4.7 apart, a thumb tube 5.6 → 4 arching over from the side, and 0.7 creases between finger rows. Resting: the toe-notched paw (19 px wide, gBlack) flat on the surface. Perching: three toe tubes 4.6 → 3.8 per foot wrapping the bar, each ending in a 1.3 dark claw hook that curls under. The thumb tube follows references/craft.md handedness. Paws take the animal's own fur ramp (or the dark paw ramp); a cream paw on a cream object (a paper rocket, a cream mug) disappears.
  • Clothing: knit sweater (torso pKnitD, sleeves pKnit, rib collar, cuffs and hem), optional Fair-Isle band with 1.3 ochre borders; scarf with a 7-8 px gold fringe; beanie (knit dome, rib brim, cream pompom r 8.6 with a #FFF0DC glint). Folds are shading overlays, not lines.
  • Sitting: the hips overlap the ledge top by 4-6 px; leg tubes (19 → 13) drop in front of the ledge face to webbed feet (pad plus four #3E1A0A toe ellipses rx 2.35 ry 3.3) turned out 8-20 degrees; a tail tube (17 → 4.6) curls out behind. On a low seat (a pouf, a stool) the thighs come toward the viewer as one lap shape no wider than the hips, with two knee bulges; the shins (30 → 25) drop in front of the seat face and the feet plant on the floor with #7A3A04 contact ellipses.
  • Poses that work: curled on a laptop deck with paws forward (fox); sitting on a sill holding a mug in both paws (otter); perched on a lamp arm, head tilted to the screen (owl); sitting on a pouf with one paw raised holding a small prop overhead and the other paw on a laptop's keys (the self-test's rabbit).

Decor and props

  • Background decor: 2 cream bursts (8 rays, scale 0.75-0.9, one rotated 12-14 degrees), 6-7 cream 4-point stars (scale 0.55-0.95), 18-21 cream dots r 1.0-1.4. Only in the margins, at least 8 px from the scene.
  • Leaves: 7-8 per card, three kinds (ivy, oak, olive), scale 0.55-1.4, grained, in 2-3 loose clusters at x < 80 and x > 400, plus at most one stray near the top. Each leaf is split down the vein into a light and a dark half.
  • Props: laptop (bezel #191113 rx 4-8, maroon screen with code, three editor dots r 1.5-1.9), monitor on a black stand (a 7 px monospace 02:14 is the only text ever used), mug (vermilion, olive or cream cylinder, 2-3 cream steam squiggles, a cream motif such as a crescent or ring-and-bar), book stack (maroon, ivy, ochre; gilt rules 1.6 wide; dotted borders r 0.9 every 7 px), window (arched ochre or round maroon frame; rain, moon and stars only inside the pane), desk (ochre top, maroon front, brass pulls), desk lamp (black tube arm, speckled light cone), potted plant (vermilion pot, 5 fanned olive leaves, an ivy vine), sticky notes (ochre or coral, folded corner).
  • Per card: one hero animal plus 3-5 props. Never people, UI-kit panels, logos, icons, blue sky, or more than a few characters of text.

Composition

  • Card: <rect width="480" height="360" fill="#FF81BE"/>, then decor, then leaves, then the scene group.
  • Scene size: 330-360 px wide (70-75% of the card) and 250-290 px tall, horizontal centre within 10 px of x 240. The floor pool's lower edge sits at y 310-330 and runs 10-20 px past the furniture on each side.
  • Focal point: the animal's face, in the upper-middle (y 100-190), in front of a dark plane (screen, window pane, round window or a chalkboard in the night-sky ramp) so the orange reads.
  • Ground: no floor line; the chalky pool is the ground. Objects on a desk or sill get #7A3A04 @0.38 contact ellipses (ry 1.7-2) and the edge gets a #F6B860 0.9 highlight line.
  • Group transform: draw the scene, then centre it with one wrapper: translate(0 -20) or translate(0 10), or translate(240 178) scale(1.07) translate(-240 -178). Never scale the decor or leaves with it.
  • Density: medium. Every quadrant has decor; the scene keeps clear pink around it.
Show full SKILL.md (1,110 more words)Show less

Techniques

scripts/gouache.mjs prints the shared defs with your prefix and has the repeated builders. Run from the skill folder:

bash
node scripts/gouache.mjs defs wk-          # filters, leaves, sparkles, common ramps, knit patterns
node scripts/gouache.mjs --demo /tmp/g.svg # a test card using every builder
js
import fs from 'node:fs';
import * as G from '/abs/path/to/illustration-grainy-gouache/scripts/gouache.mjs'; // relative to THIS file, not the cwd
const p = 'wk-';
const extraDefs = '';   // your fur ramps, clothing gradients and clipPaths
const body = [
  G.background(p, { seed: 3 }),                                  // pink + bursts, stars, dots
  G.leaves(p, [['ivy', 40, 112, -20, 1.15], ['oak', 436, 60, 22, 0.95]]),
  G.shadow(p, 70, 410, 312, { core: [90, 330] }),                 // chalky pool
  G.grained(p, `<path d="${G.tube([[201, 260], [200, 271], [198, 281]], [19, 16, 13])}" fill="url(#${p}gMaroon)"/>`),
  G.eye(p, 197, 143, 10.8, [1, 0.3]),                             // glossy eye, looking right
].join('\n');
fs.writeFileSync('card.svg', G.card(p, G.defs(p) + extraDefs, body, 'Title, Grainy gouache style'));

G.defs(p) defines these ids (all prefixed): filters grain, grainL, chalk, speck, soft; symbols ivy, oak, olv, star, burst, drop; gradients gBlack, gMaroon, gOchre, gTop (wood top), gEnds, gBase, gScreen, gDeck, gCream, gVerm, gOliveCyl, gCreamCyl, gCone, plus the leaf ramps; patterns pKnit, pKnitD, pRib. Put the animal's fur ramps, clothing gradients and any clipPaths in your own extraDefs string. Builders: background, leaves, shadow, grained(p, svg, 'grain' | 'grainL'), tube, smooth, eye, blush, use, card.

1. The edge grain. Fractal noise (base frequency 2.1) becomes dark brown-violet specks; the mask 2.0 x alpha - 1.8 x blur(alpha, 3.2) is a band just inside each edge; a second term weights it by how dark the fill is; the specks multiply onto the shape. grainFilter() in the helper holds it. Change dens (1.0-1.08) for density, never baseFrequency.

2. A shaded form. Base gradient, then overlays in the same clip, then grain on the group:

xml
<g filter="url(#wk-grain)">
  <path d="M74 288 L314 288 C318.5 293 319 309 314 314 L74 314 C69.5 309 69.5 293 74 288 Z" fill="url(#wk-gMaroon)"/>
  <path d="M74 288 L314 288 C318.5 293 319 309 314 314 L74 314 C69.5 309 69.5 293 74 288 Z" fill="url(#wk-gEnds)"/>
</g>
<path d="M174 299.5 L204 299.5 M174 303 L196 303" stroke="#701001" stroke-width="1.2" stroke-linecap="round"/>

3. Limbs and tails are G.tube(points, widths): filled tapered tubes along a smooth centre-line with round caps (cap0/cap1: false where a limb enters a sleeve).

4. The pool shadow is two blobs through the chalk filter (displaced, mottled alpha): #B95A93, then a #A04A80 core at 0.8.

Failure modes

  • The set breaks when the background changes. Night Shift and Rainy Refactor were first drawn on indigo and teal; judges scored both 7. Back on #FF81BE they scored 8.5 and 9. Put night, rain and weather inside windows and screens only.
  • Grain reads as dirty TV static. The first draft used uniform grain over everything. Gather it at edges and into dark tones (the filter above); use grainL on big light planes; keep cream fur, faces' details and decor crisp.
  • Glows look digital. Radial glow and rim-light gradients were removed from the night scene. Light is a white cone at 0.5 opacity through the speck filter, plus a speckled pool.
  • The hero disappears. Orange fur on hot pink has little contrast. Stage the head over a dark screen, pane or frame.
  • Mitten paws. A dark blob for a paw reads as a glove. Build palm + finger tubes + thumb tube + 0.7 creases, with the fingers in front of the object and the thumb closing over it.
  • The lap reads as a skirt. In the self-test a lap shape wider than the hips, with thin shins set inside it, read as a green tutu. Keep the lap within the hip width and make the shins nearly as wide as the knees.
  • Floating animal. A sitter that stops at the ledge edge hovers. Overlap the hips 4-6 px onto the surface, hang the feet in front of the face, and put the pool shadow under the whole group.
  • An outline creeps in. A 1 px stroke around a prop turns it into a different style. Use a value step.
  • Clutter. More than 8 leaves or decor inside the scene box crowds the card. Keep leaves in the margins.
  • Text. Wordmarks or labels break the painterly read. At most a 7 px monospace clock on a screen.

Examples

  • examples/cozy-commit.svg (Cozy Commit): a fox curled on an open laptop on a book stack, scarf with a { } pattern, cocoa mug. Shows a lying pose, resting paws, sleepy lidded eyes, the scarf pattern, book shading with gEnds, a commit graph on screen.
  • examples/rainy-refactor.svg (Rainy Refactor): an otter in a knit sweater on a rainy window sill, holding a tea mug in both paws. Shows the gripping paw build, knit/rib/Fair-Isle patterns, sleeve cast shadows, a seated pose with feet over the ledge, rain clipped to the pane, a diff on a small laptop.
  • examples/night-shift.svg (Night Shift): an owl in a beanie perched on a desk-lamp arm, watching a monitor at 02:14. Shows perching toes, a feather-tier wing, the speckled lamp cone, a round night window, sticky notes, a desk with legs and contact shadows.

Workflow

Run commands from the skill folder (the one holding this file). Pick a prefix such as wk-.

  1. Brief: name the subject in 3 words and the one action that shows it ("rabbit ships a side project": pressing deploy, a tiny rocket sticker). Pick the animal and one dark backdrop for its head.
  2. Pose and hero: choose one of the working poses or a close variant; decide every paw's job (grip, rest, perch) and, for each gripping paw, left or right and where the thumb goes (references/craft.md).
  3. Block: write a generator (gen.mjs in your own work folder) that imports scripts/gouache.mjs by absolute path (an ES import resolves against the generator file, not the cwd); place the furniture, pool shadow and the animal's big shapes with flat colours first; render.
  4. Draw: replace flat fills with ramps and overlays, add patterns, the face, paws, props; add decor and leaves last, in the margins.
  5. Render: node scripts/render.mjs card.svg card.png.
  6. Sheet: node scripts/render.mjs --sheet sheet.png examples/*.svg card.svg. Ask "same hand, same set?"
  7. Zoom: node scripts/render.mjs card.svg z-face.png --zoom x,y,w,h --scale 8 on the face, every paw, the feet and each contact (hips on ledge, mug on surface).
  8. Critique on the five criteria in references/craft.md, harshly; fix; re-render. Expect 4 rounds.
  9. Lint: node scripts/lint.mjs card.svg --prefix wk- --palette style.json. Fix every ERROR; each WARN must be a deliberate fur or tint ramp.

Verify

  • Background is one full-bleed #FF81BE rect with no rx.
  • No shape has a stroke outline; the only strokes are detail lines at 0.6-1.3, cream decor lines and code lines.
  • Every large shape has a gradient and sits inside a grain or grainL group; at 8x the specks thicken at its edges.
  • Face details, whiskers, code and cream decor are crisp (outside the grain groups).
  • Eyes: cream ring, offset pupil, star highlight on the look side, small dot opposite, both pupils looking the same way.
  • Blush at 0.6, whiskers present on mammals, nose with a shine.
  • Each paw is built from finger or toe tubes, and every thumb sits on the side its handedness requires.
  • The animal's head sits in front of a dark plane.
  • A chalky #B95A93 pool sits under the whole group; nothing floats; contacts overlap by a few px.
  • 7-8 leaves, 2 bursts, 6-7 stars, 18-21 dots, all in the margins, none touching the scene or the card edge.
  • Scene 330-360 px wide, centred on x 240 within 10 px, pool bottom at y 310-330.
  • No text beyond a tiny monospace screen label; no blue, grey or pure white outside the lamp cone.
  • Head at least as wide as the torso, head height at least 0.8 x torso height (measure the paths).
  • Every id starts with the prefix; lint passes.

© MengTo, MIT. 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 12 other files (scripts, references) in agent-skills/illustration/illustration-grainy-gouache of MengTo/Skills.

  • SKILL.md
  • agents/openai.yaml
  • demo/PROMPT.md
  • demo/index.html
  • demo/preview.jpg
  • examples/cozy-commit.svg
  • examples/night-shift.svg
  • examples/rainy-refactor.svg
  • references/craft.md
  • scripts/gouache.mjs
  • scripts/lint.mjs
  • scripts/render.mjs
  • style.json

Open the folder on GitHubat commit 83a47fe

Compare with similar skills

Grainy Gouache Illustration 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.

Grainy Gouache Illustration compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Grainy Gouache Illustration this skillMengTo/Skills6.7k—~5.2kAutomated safety check: PassMIT
Imagensanjay3290/ai-skills4326 repos~657Automated safety check: PassApache-2.0
Web Visualsglifxyz/glif-mcp-server213—~1.5kAutomated safety check: PassMIT
App Icons And Logosglifxyz/glif-mcp-server213—~1.3kAutomated safety check: PassMIT
Imagegennexu-io/open-design100k—~300Automated safety check: PassApache-2.0
Imagennexu-io/open-design100k—~279Automated safety check: PassApache-2.0

Similar skills

  • Imagen

    sanjay3290/ai-skills

    Generate images using Google Gemini's image generation capabilities.

    432 GitHub starsUsed in 6 repos~657 tokens
    Media & CreativeAuto-check passed
  • Web Visuals

    glifxyz/glif-mcp-server

    Make images, textures, illustrations and background video for a website or app you are building, with Glif, and wire them into the code.

    213 GitHub stars~1.5k tokensUpdated 2 days ago
    Media & CreativeAuto-check passed
  • App Icons And Logos

    glifxyz/glif-mcp-server

    Design a logo, app icon, favicon set, icon set or brand kit with Glif for an app or site you are building, then export every size and wire it into the code.

    213 GitHub stars~1.3k tokensUpdated 2 days ago
    Media & CreativeAuto-check passed
  • Imagegen

    nexu-io/open-design

    Generate and edit images using OpenAI's Image API for project assets — UI mockups, icons, illustrations, social cards, and visual references.

    100k GitHub stars~300 tokensUpdated yesterday
    Media & CreativeAuto-check passed
  • Imagen

    nexu-io/open-design

    Generate images using Google Gemini's image generation API for UI mockups, icons, illustrations, and visual assets.

    100k GitHub stars~279 tokensUpdated yesterday
    Media & CreativeAuto-check passed
  • Webui Design

    notivn/AIEV

    Design system for the AI Edit Video web dashboard (noti.vn) - the three-step type scale, light/dark color tokens, the component primitives every page must use, Inter font, SVG icons, Shopify Admin…

    127 GitHub stars~3.5k tokensUpdated yesterday
    Media & CreativeAuto-check passed

More from MengTo/Skills

All 39 skills in this repo
  • Draws hand-authored SVG spot illustrations in a bold pop-geometric style for design and coding scenes.

    6.7k GitHub stars~5.1k tokensUpdated 5 days ago
    Auto-check passed
  • Draws a slim, long-limbed character acting out one coding or design moment as an outline-free flat SVG card, in a fixed measured palette with confetti and no ground line.

    6.7k GitHub stars~4.9k tokensUpdated 5 days ago
    Auto-check passed
  • Draws flat vector spot illustrations of lanky people doing design and coding things, with solid black as a main fill, for empty states, onboarding and error pages.

    6.7k GitHub stars~5.2k tokensUpdated 5 days ago
    Auto-check passed
  • Draws hand-authored SVG spot illustrations in a halftone line style for design and coding scenes.

    6.7k GitHub stars~4.7k tokensUpdated 5 days ago
    Auto-check passed
  • Draws hand-inked cartoon critters and living objects as SVG cards (480x360), each acting out a coding or design idea.

    6.7k GitHub stars~4.6k tokensUpdated 5 days ago
    Auto-check passed
  • Draws true-isometric diorama illustrations of developer and design workspaces in one green ramp, generated as SVG with a bundled scene kit.

    6.7k GitHub stars~5k tokensUpdated 5 days ago
    Auto-check passed

Questions about Grainy Gouache Illustration

What does Grainy Gouache Illustration do?

Draws cozy animal scenes as hand-authored 480x360 SVG cards in a grainy, risograph-like gouache style on hot pink, for empty states, headers and marketing cards. This style skill produces one kind of image: a cute animal doing a design or coding task, drawn as flat, outline-free SVG shapes with soft gradient shading, a fine dark grain that gathers at the edges, a chalky purple shadow under the group and big glossy eyes. The card is saturated hot pink with cream sparkles and falling autumn leaves.

When should I use Grainy Gouache Illustration?

Grainy Gouache Illustration fits situations like: making a cozy animal illustration for an empty state or 404 page; creating a warm handmade header image for a blog post; producing onboarding step art in a risograph-like style; adding a card to an existing grainy gouache set.

How do I install Grainy Gouache Illustration in Claude Code?

Run `npx skills add MengTo/Skills --skill illustration-grainy-gouache -a claude-code`. Or copy the skill folder (agent-skills/illustration/illustration-grainy-gouache in MengTo/Skills) into .claude/skills/illustration-grainy-gouache in your project. Claude Code loads it when a task matches its description.

How do I install Grainy Gouache Illustration in Codex?

Run `npx skills add MengTo/Skills --skill illustration-grainy-gouache -a codex`. Or copy the skill folder (agent-skills/illustration/illustration-grainy-gouache in MengTo/Skills) into .agents/skills/illustration-grainy-gouache in your project. Codex loads it when a task matches its description.

Can I use Grainy Gouache Illustration 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 MengTo/Skills --skill illustration-grainy-gouache -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/illustration-grainy-gouache, .gemini/skills/illustration-grainy-gouache, .github/skills/illustration-grainy-gouache and .opencode/skills/illustration-grainy-gouache in your project.

What does Grainy Gouache Illustration need to run?

Going by SKILL.md and its folder, Grainy Gouache Illustration needs JavaScript for the scripts in its folder and the command-line tools its instructions call (node).

Does Grainy Gouache Illustration 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 Grainy Gouache Illustration safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Grainy Gouache Illustration use?

Grainy Gouache Illustration is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Grainy Gouache Illustration use?

About 5.2k tokens (SKILL.md is roughly 21k 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 2.6k tokens, read only when the agent opens those files.

What are the alternatives to Grainy Gouache Illustration?

Skills that share tags, products or a category with Grainy Gouache Illustration: Imagen (sanjay3290/ai-skills, 432 stars), Web Visuals (glifxyz/glif-mcp-server, 213 stars), App Icons And Logos (glifxyz/glif-mcp-server, 213 stars) and Imagegen (nexu-io/open-design, 100k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Grainy Gouache Illustration?

MengTo (a GitHub user) maintains it in MengTo/Skills, which has 6,694 GitHub stars. The repository holds 39 skills in this directory. The repository was last updated on October 6, 2026.

Source: MengTo/Skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.