| name | creating-sticker-packs |
| description | Use when creating raster sticker packs, hand-drawn character stickers, object stickers, mascot cutouts, transparent PNG assets, chroma-key cutouts, or reference-derived sticker styles for websites, apps, presentations, and social content. |
Creating Sticker Packs
Overview
Create coherent sticker packs as separate transparent PNGs, not one opaque collage. Establish one visual source of truth, use the available image-generation capability for visual source groups, and use deterministic processing for extraction, normalization, packaging, and numerical QA.
Use the image-generation tool available in the current agent environment. Do not require a specific provider, API, CLI, or skill. Use $hatch-pet instead for animated Codex pets or sprite atlases.
Visible Progress
Keep this checklist visible and update it only when the artifact exists:
- Defining the sticker pack.
- Establishing the visual anchor.
- Generating the source groups.
- Cutting, checking, and packaging.
Input, Template, And Finish
Infer the subject list, character/object mix, count, output location, palette, canvas size, template, and finish. Ask one question only when a missing choice would materially change the visual direction or output contract.
Built-in template IDs are orbit-task-crew, pop-slogan-decals, soft-ui-glyphs, colorful-hand-drawn, monochrome-doodle, retro-print, and soft-crayon; use reference-derived for a user-supplied visual source. Finish IDs are clean-flat, marker-grain, ink-doodle, retro-screen-print, and soft-crayon. The default finish is clean-flat.
Resolve template and finish independently. The template controls subject grammar, line, palette roles, silhouette, face and prop language, rim, and composition. The finish controls surface treatment only. Do not add grain, hatching, halftone, wax, or paper texture unless the user selects the corresponding finish. Read style-presets.md before writing a prompt.
Read workflow-contract.md before preparing a run or processing source sheets. It defines the run schema, visual jobs, prompt recipe, processing command, failure map, and retained outputs.
Production Principles
Adapt these validated controls from $hatch-pet without inheriting its animation protocol:
- use one available image-generation capability consistently for each visual source group;
- anchor every later group to one approved visual source;
- persist one non-conflicting chroma key through prompt, request, processing, and QA;
- keep image prompts visual and keep geometry/QA rules in deterministic code;
- track selected source groups before declaring jobs complete;
- perform one authoritative cleanup and validation pass per source group;
- inspect the final contact sheet instead of repeatedly opening every intermediate;
- repair the smallest failed source group while preserving passing groups.
Do not inherit animation rows, look directions, atlas geometry, or pet packaging.
Canonical Visual Anchor
For a single source sheet, user references or the approved selected sheet may be the anchor. For a multi-sheet pack without usable references, generate and approve the first source group before later groups. Copy it to references/canonical-anchor.png and provide it to every later visual-generation request when the available tool accepts reference images.
The anchor locks line construction, palette roles, texture, proportions, face language, rim width, and visual scale. A later group that drifts from it fails visual QA even when its alpha is valid.
Built-In Preset Anchors
orbit-task-crew has a bundled visual anchor at preset-anchors/orbit-task-crew.png. When this preset is selected, copy that image to references/canonical-anchor.png before creating visual jobs and provide it to every visual-generation request when supported, including the first group. Treat the anchor as style and character-system evidence, not as a fixed subject list or a scene to reproduce.
Default an orbit-task-crew pack to two source groups when the brief supports it: three distinct task-role mascots, followed by four to six celestial or work-object stickers. Keep every output independently usable. The final website or document may arrange the crew near a curved ground and the objects above them, but do not bake that full layout into each sticker sheet.
pop-slogan-decals has a bundled visual anchor at preset-anchors/pop-slogan-decals.png. Use it as evidence for typography hierarchy, badge variety, spot-color roles, black contour, accent language, and warm-white rim. Never reuse its phrases unless the user explicitly requests them. Verify every requested phrase letter-for-letter before accepting a source; regenerate a misspelling, and simplify the phrase or use deterministic typography if the same text failure repeats.
soft-ui-glyphs has a bundled visual anchor at preset-anchors/soft-ui-glyphs.png. Use it as evidence for confident medium-bold rounded monoline glyphs, muted tile colors, generous negative space, and controlled geometric backing silhouettes. Favor long strokes, large-radius turns, rounded terminals, and rhythmically grouped components over block-built segments. The colored tile itself is the sticker silhouette: require no exterior white or gray die-cut rim unless the user explicitly requests one. Never copy an anchor glyph's exact geometry when deriving a new subject.
Built-In Finish Anchors
The four non-flat finishes have visual anchors under references/finish-anchors/. When marker-grain, ink-doodle, retro-screen-print, or soft-crayon is selected, provide its anchor to every visual-generation request when supported, including the first group. A template or canonical anchor controls subject family, silhouette, proportions, face language, palette roles, and composition; the finish anchor controls material treatment only. The requested subjects never come from the finish anchor. clean-flat uses its exact prompt clause and no finish anchor.
Image Generation
Use the available image-generation capability. Do not require a particular image API, CLI, model, or sub-skill. Prefer one lightweight visual worker per independent source group when available; otherwise perform the same checks in the parent. If the tool cannot accept reference images, encode the canonical anchor's observable traits precisely in the prompt and visually compare the result before accepting it.
Each sheet contains three through six complete subjects on one perfectly flat chroma background, with generous outer margins and large blank gaps. Use an informal row or arc, not equal cells. Require one connected sticker silhouette per subject. Join small accents through the backing rim, or omit detached marks when the template has no rim. For soft-ui-glyphs, make the colored tile the complete silhouette, explicitly forbid an exterior die-cut rim, and reject cramped glyph scale, tile outlines, shadows, and block-built rectangular strokes.
Write separate prompt clauses for the selected template and finish. When finish is omitted, include the exact clean-flat clause from style-presets.md. Do not let a texture finish alter the template's family traits, and do not weaken a selected textured finish into barely visible generic noise.
Before accepting a source, verify exact count, identity, style, spacing, clipping, background flatness, and accidental text. Copy the selected file into decoded/, record its source_path, then mark that visual job complete.
Processing And QA
Call load_workspace_dependencies and use its exact Python executable for the bundled processor. The script uses the persisted key, suppresses edge spill, splits only at real blank gaps, preserves aspect ratio, adds consistent transparent padding, and writes final PNGs, a manifest, a checkerboard contact sheet, and QA JSON.
Treat qa/qa-report.json as authoritative for count, alpha, clipping, and processing errors. Once it has ok: true, do not stack another chroma cleanup pass.
Inspect qa/contact-sheet.png at normal website size. Confirm subject meaning, coherent style, palette, scale, identity, rim treatment, clean edges, and readable silhouettes. A visual failure triggers regeneration of only the affected source group with the canonical anchor attached.
For soft-ui-glyphs, also inspect at roughly 96 px on both light and dark backgrounds. Reject inconsistent stroke weight, square terminals, key-color fringe, cramped negative space, block-built corners, visible tile outlines or shadows, glyph bounds above 72% in either axis, or bounds above 66% in both axes.
Rules
- Choose green, magenta, or cyan by palette distance and persist the exact hex value.
- Avoid unrequested text, labels, logos, scenery, gradients, shadows, glow, background plates, and translucent effects. Selecting
pop-slogan-decals explicitly requires its requested phrases but never permits extra copy.
- Keep subjects opaque enough for clean extraction and keep intentional accents connected to their sticker silhouette.
- If the same visual root failure occurs twice, change the arrangement or simplify the offending detail.
- Do not use this skill for animated pets, sprite atlases, logos, or editable SVGs.
Acceptance Criteria
- Requested names and output count match
final/manifest.json.
- Every output is a square RGBA PNG with transparent corners and consistent padding.
- No subject is clipped, merged, split, or contaminated by the chroma key.
- Multi-sheet packs visibly match the canonical anchor.
- No unrequested visual elements appear.
- Every explicitly requested phrase is spelled exactly and remains readable at normal display size.
- The final contact sheet is coherent and readable at normal display size.
qa/qa-report.json has ok: true before delivery.
Quick Reference