Maintain a brand kit — the canonical brand context an ad or content pipeline reads (positioning, audience, voice, standing instructions, brand-type, value-props, colors), plus manage the product list and attach product photos. Use when someone says "update my brand kit", "set my brand voice/audience", "add a product to my brand", or hands you a folder of product shots to attach. Platform-agnostic: it teaches the field model, partial-update/clear semantics, override behavior, caps and validation, and the hero-image and product-matching rules — independent of any specific backend.
72
91%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
Passed
No findings from the security scan
Keep a brand kit correct and rich by talking to the user. A brand kit is the canonical context an ad/content-generation pipeline reads, so what's in it directly shapes every downstream generation. Reach for this whenever the user wants to set or refine brand positioning/voice/audience, add standing do/don't guidance, manage the product list, or attach product photos.
This skill is the portable domain model — the fields, the semantics, the rules. How you actually persist a change is the host's concern: a brand-kit API, a CLI, or a brand-kit document in a workspace. The field model, semantics, and caps below hold regardless of which backend stores the kit.
These are the context fields. Treat each edit as a partial update (see semantics): set only what's changing.
description — what the brand does, in 1–2 sentences.audience — target audience / ICP.voice — tone of the copy.instructions — standing guidance applied to every generation (e.g. "always
show the product in use", "never use red"). High-leverage — set this whenever
the user describes a recurring do/don't, not a one-off.brand_type — one of: product, saas, service, agency, restaurant, fashion,
beauty, fitness, finance, education, health.value_props — short selling points; the kit keeps the first 5.primary_color / accent_color — hex like #1a2b3c (validate the format).Products (a list on the kit) carry: name (required), description, link,
pricing (free text, e.g. "$49"), offers (e.g. "20% off launch week"),
notes (markdown), and an ordered list of images.
Identify the brand. If the user has multiple brands, confirm which one by name; if one, use it. Read its current kit and quote back what's already set so the user sees exactly what you're about to change.
Translate intent into fields. Map the free-form request onto the field
model above. If something is a recurring rule, it belongs in instructions,
not in a one-off generation prompt.
Apply context edits as a partial update. Confirm each write by reflecting the new value back.
Manage products (create/edit/delete) before attaching any image — the product must exist first.
Attach product photos. For each image: if the filename is ambiguous about which product it depicts, view it rather than guessing; rename to a semantic name if helpful. Then upload/host it and attach it to the right product (omit the product to make it a brand-level reference image — general imagery not tied to one product). Remember the first image is the hero.
Confirm. Summarize what changed — fields updated, products added/edited, images attached and to which product — and surface any cap or validation issue with the exact limit and the fix.
An updated brand kit: revised context fields, an up-to-date product list, and product/brand images attached in the right order (hero first). Plus a short human-readable summary of what changed and any limits hit.
instructions, not buried in a one-off prompt.| Symptom | Cause | Fix |
|---|---|---|
| Edit wiped an unrelated field | Sent a full object instead of a partial update | Send only the changed fields; omit the rest. |
| Hand edit reappears wrong after a brand-research run | Edit not recorded as a user override | Persist manual edits as overrides so refreshes preserve them. |
| Image attached to the wrong product | Guessed the product from the filename | View ambiguous images before attaching; match product by id/name. |
| Wrong image used as the generation reference | Hero (first image) is not the canonical shot | Reorder so the canonical shot is first. |
| User friction over field names | Asked the user to name fields | Translate their free-form description into fields yourself. |
| A cap was hit silently (12th product / 9th image / 6th value prop dropped) | Exceeded a hard limit | Tell the user the limit and what was dropped; trim or replace. |
| Standing rule ignored on later generations | Put it in a one-off prompt, not instructions | Move recurring do/don'ts into instructions. |
A confirmed brand/product pronunciation is a standing rule. Save it in the host's existing brand-facts store as a user-authored must rule whose text is exactly Pronounce "<written term>" as "<spoken form>" (for example Pronounce "Gooseworks" as "Goose Works"). Readers still accept the older Pronunciation: written term => spoken form; write the new form. Match an existing rule by its id to avoid duplicates. Read that brand's rules separately after the write, verify the exact term/form and preserve unrelated facts. Every subsequent voice plan reads these rules before spending. An unknown name is resolved before generation.
cc3e518
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.