brand-asset — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited brand-asset (Agent Skill) and scored it 96/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 1 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 1 flagged
The text {match} tells the agent to skip the normal "ask the user first" gate. Used adversarially it removes the human-in-the-loop check before destructive or sensitive actions, turning a normally-gated agent into a fire-and-forget executor.
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Generate the visual identity elements a brand reuses everywhere — logo concepts, icons, patterns, illustrations, textures — as prompt specs sharp enough that the whole family looks designed by one hand. Prime rule: cohesion over cleverness. A brand asset is judged by how well it matches its siblings and survives resizing, not by how impressive it is alone. And be honest about the medium: the model outputs raster concepts; production logos and icons still need vector tracing.
Use for logos, icon sets, patterns, brand illustrations, and textures. Hand off instead when:
skills/creative/creative-strategist first; itsbrief supplies this skill's style, palette, and mood. For a single throwaway asset, derive a minimal style inline and label it an assumption.
skills/creative/product-photographyskills/creative/social-graphicsskills/creative/image-generationskills/creative/orchestrator sequences it (strategist → this skill → the rest)
Ask in one batch, only what's missing:
also the automation's exact --asset-type choices.)
palette hex codes? For icons/patterns joining an existing identity, matching it is mandatory, not optional.
simplicity requirements and variant needs.
FAL_API_KEY set, or deliver specs only?Infer, don't ask: aspect ratio (logos/icons/patterns → 1:1; wordmark lockups → 3:2 or 16:9); resolution 2K (patterns/textures 4K). Don't stall: with brand + asset type known, assume the rest, label it, proceed.
organic, illustrative, abstract) + palette in words and hex + mood — taken from the Creative Direction Brief when it exists. Every asset in the family uses the same style line verbatim.
references/asset-library.md —read it now; it has the per-type templates, style vocabulary, color application patterns, and delivery specs. Decision rules:
(--num-images 4) or 3–4 distinct specs (different style angles). Never one take. Flat, plain background, no photorealism, no tiny text.
weight and corner radius stay consistent; never one icon per call.
seamless, tileable, edge-to-edge andtest-tile the result before accepting.
bevels clutter (unless the style calls for it), no readable text beyond the exact brand name supplied, no stock-clipart clichés.
FAL_API_KEY (or FAL_KEY) is set: python docs/creative_cli.py brand \
--asset-type logo --brand-name "TechCorp" \
--prompt "<full prompt>" \
--aspect-ratio 1:1 --resolution 2K --num-images 4Saves to assets/brand-assets/<brand-slug>/<asset-type>/ as <type>_<n>_<timestamp>.png. No key → deliver specs + exact commands; never claim generation happened. Parameter source of truth: skills/creative/image-generation/references/automation.md.
slot (recommend one, one-line reason). Check winners against the quality bar; fix misses with the fix-it phrases in references/asset-library.md — one iteration round.
(format below) and state the production step honestly (e.g. "trace to SVG before shipping").
One block per asset:
## Asset Spec — [asset name, e.g. logo-concept-A]
- **Asset type:** logo / icon / pattern / illustration / texture
- **Brand:** [name] · **Usage:** [where it will live]
- **Style:** [one style line, shared across the family]
- **Palette:** [color name #hex, role] ...
- **Composition:** [e.g. centered mark, plain background / 6-icon sheet on grid / edge-to-edge tile]
- **Mood:** [2–3 adjectives]
- **Aspect ratio:** [ratio] · **Resolution:** [1K/2K/4K] · **Format:** png
- **Negative constraints:** [no watermark, no text beyond "<brand>", ...]
- **Prompt (final, paste-ready):**
> [single flowing prompt]
- **Variants:** [n] — [what varies]
- **File naming:** assets/brand-assets/<brand-slug>/<asset-type>/<type>_<n>_<timestamp>.png
- **Generate with:** `python docs/creative_cli.py brand --asset-type ... --brand-name "..." --prompt "..." --aspect-ratio ... --num-images n`
- **Production note:** [raster concept — trace to SVG / normalize grid / verify tiling]After selection, append per approved asset a Brand guide entry: asset name, file path, color variants needed, minimum size / clear space (logos), and usage rule — using the guidelines skeleton in references/asset-library.md.
seamless, tileable in the prompt AND tiling verified (or flagged unverified)fal-ai/nano-banana-pro; no size/steps/guidance knobs exist)Hard don'ts: never mix two styles in one asset family; never present a generated logo as trademark-cleared (recommend a clearance search); never fake generation results when the API key is absent.
skills/creative/creative-strategist → upstream; the Creative Direction Briefsupplies style line, palette, mood, and prohibitions.
skills/creative/image-generation → shared automation;skills/creative/image-generation/references/automation.md is the parameter source of truth.
skills/creative/social-graphics and skills/creative/product-photography →downstream; consume approved logos/patterns as recurring elements.
skills/creative/orchestrator → sequences this skill inside brand-identity andrebrand paths; the artifact passed forward is the approved asset set + brand guide entries.
references/asset-library.md — full templates, style vocabulary, deliveryspecs, guidelines skeleton, fix-it phrases. Read before writing specs.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.