Review image files (PNG/JPEG) against brand guidelines — score visual compliance across 8 dimensions, identify violations with exact fixes, and apply corrections via Pillow or AI regeneration. Use when reviewing ad creatives, social media images, or AI-generated visuals for brand alignment. Triggers on "check this image against brand", "review this ad image", "score this creative", "is this image on-brand", "fix brand violations on this image". For HTML/email/SMS content review, use the brand-compliance skill instead.
72
90%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
Review image files (PNG/JPEG) against brand guidelines. Score across 8 visual compliance dimensions, identify violations with exact locations, and apply fixes when the user accepts them.
For HTML emails, SMS copy, or text-based content, use the brand-compliance skill instead. This skill focuses on pixel-level visual analysis of image files.
Use this skill when:
Use brand-compliance instead when:
Image — file path to a PNG or JPEG (e.g., /tmp/instagram-ad.png)
Brand Guidelines — one of:
./brand-guidelines.md)brand-guidelines.md in the current working directoryIf either input is missing, ask for it before proceeding. If no brand guidelines are available, prompt the user to create one using brand-compliance/references/brand-guidelines.md as a template.
Read the provided brand guidelines and extract image-relevant rules:
Note which sections are unconfigured — only score against configured sections.
Read the image file visually. Assess each compliance dimension against the extracted guidelines:
Identify specific violations with exact location (e.g., "CTA button area uses #FF3333 instead of brand CTA #CC262C").
Score across 8 dimensions (0–5 each, 40 points max). Only score dimensions where guidelines are configured.
| # | Dimension | What is checked |
|---|---|---|
| 1 | Color Palette Accuracy | Dominant colors match brand hex codes, no off-palette colors in prominent areas, correct color context usage (e.g., CTA color reserved for CTAs only) |
| 2 | Logo & Visual Identity | Logo present where required, correct variant (dark/light for background), proper placement zone, adequate clear space, meets minimum size, not distorted |
| 3 | Typography & Text Overlays | Correct font family on headline/body overlays, proper weight and size, readable over background, brand-consistent styling |
| 4 | Imagery Style & Mood | Photography mood matches brand personality (candid vs staged), subject framing, lighting quality, avoids prohibited aesthetics (heavy filters, stock-photo feel) |
| 5 | Messaging & Copy | Text overlays use approved terminology, avoid prohibited terms, match brand voice, tagline/signature present if required |
| 6 | Legal & Disclosures | Required marks visible — FTC #ad for sponsored content, copyright notice, trademark symbols, disclaimers appropriately sized and placed |
| 7 | Accessibility | Text overlay contrast >= 4.5:1 against background, minimum font size met, recommend alt text for the image |
| 8 | Channel Specifications | Image dimensions match target channel (1080x1080 Instagram feed, 1080x1920 story, etc.), file size within limits, correct aspect ratio |
Compliance tiers:
For detailed scoring criteria per dimension, see references/image-scoring-rubric.md.
Generate an HTML compliance dashboard and save it as brand-compliance-report-{asset-name}.html in the working directory.
Image embedding: When including the reviewed image or any reference images in the HTML dashboard, always embed them as base64 data URIs (data:image/png;base64,...) directly in the src attribute. Never use local file paths — the viewer cannot resolve them. Use Python to encode:
import base64
with open("image.png", "rb") as f:
src = "data:image/png;base64," + base64.b64encode(f.read()).decode()Dashboard structure:
<details>, grouped by dimension, each with: what was found, where in the image, exact fix recommendation<details>, prioritized Critical > High > Medium > Low, each with projected score impactOpen with mcp__work__open_file if available. If the MCP tool is unavailable, print the file path for the user to open manually.
Also summarize violations in plain text in the chat so the user can act without switching to the dashboard.
When the user says "apply fixes", "yes", "make the changes", or accepts specific fixes:
Prerequisites check: Before running any Pillow scripts, verify the dependency:
python3 -c "import PIL" 2>/dev/null || echo "MISSING"If missing, instruct the user to run pip install Pillow before proceeding.
Fix methods by violation type:
| Violation type | Fix method |
|---|---|
| Text overlay color or position | Python (Pillow) — composite corrected text over image |
| Logo missing or misplaced | Python (Pillow) — composite logo at correct position with clear space |
| Color overlay or tint correction | Python (Pillow) — apply color adjustment |
| Wrong dimensions or aspect ratio | Python (Pillow) — resize/crop to target specs |
| Wrong subject, mood, or composition | Regenerate with mcp__work__generate_image using a corrected prompt built from brand guidelines. If the MCP tool is unavailable, provide the corrected prompt for the user to run with the image-gen skill. |
For Python/Pillow edits: write a self-contained script to a temp file, run it with Bash, save the corrected image alongside the original (e.g., {name}-fixed.png).
After all fixes are applied, re-run the full scoring analysis on the updated image and produce a new compliance dashboard showing:
Brand Compliance Score: [X]/40 — [Tier]
Violations ([N] found):
1. [Dimension] — [what] at [location]
Fix: [exact change]
2. ...
Type 'apply fixes' to implement all changes.Updated Score: [X]/40 — [Tier] (was [Y]/40)
Changes applied:
- [Fix 1]
- [Fix 2]
Remaining: [N violations] — [list or "None — fully compliant"]brand-compliance/references/brand-guidelines.md as a template to follow.#B35D33" enables precise matchingFor a complete worked example showing an image review, scoring, violation identification, fix application, and re-scoring, see examples/image-review-example.md.
1a0845f
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.