Install
$ agentstack add skill-zstvns-design-skills-logo-design ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Logo Design
You design and evaluate logos. A logo is the most distilled expression of a brand — it has to do the most work with the least. Read design-principles and .agents/brand.md before you judge or draw anything.
> A logo is never judged on its own. Every part of the assessment happens in a context: against the competition, against the feeling the brand must produce, and against every place the mark has to live. Pull the brand context and the competitor set first — without them you cannot actually evaluate a mark, only react to it.
The Bar: SAD
A good logo is Simple, Appropriate, Distinct. The acronym is easy; the discipline is that each dimension is only judgeable against a specific context. Skip the context and you're just expressing taste.
Simple — judged across every implementation
Simple doesn't mean minimal or sparse. It means one idea that survives every reduction, drawn the same way everywhere. The baseline test is black and white: a logo must work with all color removed. If it needs its color, a gradient, or a glow to read, it isn't simple — color is the last layer, not a crutch. "Black and white" does not mean solid 100% black, though — opacity steps and tints of a single value (a mark built from 30/60/100% of one hue) are legitimate and still pass, because the mark is monochrome; it isn't leaning on color to read. The failure is dependence on hue/gradient, not the use of tints. Then verify across the whole implementation set, never just the hero lockup:
- Does it hold at a 16px favicon? In a circle-cropped social avatar? A rounded-square app icon? Reversed on dark? Single-color? Etched, embroidered, foil-stamped?
- Is it the same construction in all of them — or did someone quietly draw a different simplified version to survive the favicon? If the mark needs a second drawing to work small, it isn't simple yet.
- Is there a single source of truth? Multiple versions in the wild with inconsistent light source, shadow direction, or orientation is a Simple failure — the mark has no defined construction. Establish the canonical drawing and the rules around it.
- Judge the wordmark/lockup, not just the mark glyph. Inconsistent weight or size between words (e.g. "Cash Flow" bold + "Portal" light) raises cognitive load and can imply an unintended sub-brand. Unify the lockup, or drop the trailing word and reserve it for the legal/URL name.
- Lay the implementations out side by side (see [references/sad-checklist.md](references/sad-checklist.md)). Consistent + instantly legible everywhere = simple.
- Recognition failure caps Simple. If the mark misreads as something else at small sizes — a mascot that reads as a different animal in the favicon, a "G" that reads as a "C" — that's a Simple failure, not a footnote. Flag it and let it move the score; an unrecognizable-at-small-size mark isn't doing its job.
This is why gathering the logo in all its forms (the brand skill does this) is non-negotiable: simplicity is an observation across the set, not a property of one file.
Appropriate — judged against the core feelings
A logo can be beautiful and wrong. Appropriate means it produces the feelings the brand is built to produce — the Emotional Target in .agents/brand.md — for this audience, in this category.
- A playful, bouncing mark is wrong for a brand whose job is to feel like a vault; a severe, serious mark is wrong for a kids' product.
- You cannot judge appropriateness without the core feelings. If
.agents/brand.mdhas no Emotional Target, stop and define it (brand-strategy) — otherwise "appropriate" collapses into "do I like it."
Distinct — judged against the direct competition
Distinctiveness only exists relative to the field.
- Put the mark on a shelf with the direct competitors' logos and the category's visual conventions. Does it stand out, or dissolve into the set?
- Compare silhouettes, not just details — a triangle/arrow mark nearly identical in silhouette to a high-profile competitor's (e.g. Vercel's) is a direct recognition conflict, even if the execution differs.
- Check it against famous and well-known logos too — unintentional resemblance is a liability, not a coincidence.
- The real test: cover the name. Would the audience know it's them and not a competitor?
- A mark that executes the category default (see
design-principles→ Coherent Is Not the Same as Good) is competent, not distinct. Name that when you see it. - Run the shelf for real. If you haven't placed the mark beside the actual competitor logos and compared silhouettes, you have not assessed Distinct — don't infer it from the mark alone. Distinct is independent of Simple: passing black & white tells you nothing about distinctiveness. A clean, attractive, B&W-legible mark that shares a silhouette with a high-profile competitor (e.g. Vercel's triangle) fails — and because SAD is not averaged, one failed criterion sinks the whole logo. Never report a colliding mark as "passes SAD cleanly."
Assess (get) vs. Design (make)
Assessing an existing mark — the live, common case:
- Make sure you're judging the current mark — take it from the live navigation bar, not a favicon, OG image, or press kit (those are often stale). Then gather it in every form, plus the competitor set (the
brandskill's Step 1 handles this). - Confirm whether there's a symbol at all — inspect the favicon, app icon, and full lockup, not just the nav wordmark. Brands routinely pair a wordmark with a glyph (or carry a motif inside the mark); missing it produces a false "wordmark-only, no mark" verdict. Don't penalize a wordmark for being a wordmark, either — a wordmark can be genuinely distinct.
- Run SAD-in-context and report per dimension, with the evidence — the implementation grid for Simple, the emotional-target check for Appropriate, the competitor shelf for Distinct.
- Be honest about the spread: most marks pass Simple, many pass Appropriate, and far fewer pass Distinct. "Distinct" is where good logos are separated from competent ones — don't soften it.
- Write the verdict into the Logo section of
.agents/brand.md.
The mark is equity, not scripture. Don't preserve a weak logo just because it exists. If the creative direction is shifting significantly (Revolution or serious Evolution), the logo is on the table too — say so plainly rather than protecting a mark that fails SAD.
Designing a new mark — new brand, or the existing one fails the bar:
- Work from
.agents/brand.md: the Emotional Target and muses are the brief; the competitor set defines what "distinct" requires. - Find the thematic idea first. The strongest marks distill a brand concept into one form — a derivative of a bigger story pared to a single mark (e.g. three data points joined by a circle = a closed-loop system; the Roman standard = command). The mark should mean something traceable to the brand, not just decorate. A mark with no thematic root reads as arbitrary — the "no thematic element" failure. Pull it from the muses/abstraction (
creative-direction) or the brand's own story. - Generate sketches broadly across the three families — typographic / wordmark (letterforms and their expression, graphic motifs in the letters, or letters fused with a pictorial/abstract element — explore the full wordmark, e.g. the whole name, not just the initial letter), pictorial (a stylized representation, Apple-style), abstract (a non-literal mark that evokes a feeling, Nike-style). Three rules the sketch phase lives or dies by:
- Generate, don't hand-draw. Produce the options with a generative tool — see [references/generative-tooling.md](references/generative-tooling.md). An agent hand-authoring SVG primitives cannot construct a usable mark; the sketches must come from a generative surface (or, absent one, be labeled low-fidelity).
- Show every option as a mark + wordmark lockup, so orientation reads and the mark is judged the way it will actually ride.
- Don't force one per family. Pick the ones that actually work — they can all be abstract. Family is a lens for coverage, not a quota.
Show the client "the ugly" — many options — then your top three plus alternatives, with your recommendation. Don't marry the first idea.
- Resolve in black and white first. If it doesn't work in one value, color won't save it — color comes after the form is right. If the client is hesitant, show B&W before finalizing.
- Construct it properly. The mark's vector comes from a generative tool, not typed-out `` coordinates; the wordmark is set in a licensed face and outlined — never generated (generative type garbles the letterforms). A designer then refines to the bar: geometric harmony (golden-ratio circles/squares) corrected by eye, unified paths, hand-tracked type, an optically balanced and centered mark-to-wordmark lockup (no tagline in the lockup — the wordmark stands alone). This is where geometric cohesion, type quality, and ratios are won or lost: [references/logo-construction.md](references/logo-construction.md) and [references/generative-tooling.md](references/generative-tooling.md).
- Build the full system: primary lockup, secondary/stacked (only if used), the standalone mark, clear space, minimum size, reversed and single-color variants.
- Test against SAD and the implementation grid before calling it done.
For a redesign or refinement, diagnose the move first — the gap from weak to strong is usually one structural fix, not "add polish": resolve an ambiguous glyph into one clear idea; kill a weak mark and make the wordmark itself distinctive; give fragile hairline type real weight; swap a literal/cliché metaphor for a fresher one tied to positioning; never ship a system default font. Full patterns with worked before→after cases: [references/logo-fixes.md](references/logo-fixes.md).
An agent hand-drawing SVG cannot construct a logo — and a rough mark is not a resolved mark. Agent-authored / "parametric" SVG comes out rough every time: uneven curve tension, awkward optical weight, near-misses that misread (a disc-with-wedge reading as Pac-Man). The fix is not more polish — it's the right tool: generate the mark with a generative vector tool ([references/generative-tooling.md](references/generative-tooling.md)) and hand the vector to a designer to resolve. Whatever you put in front of the client, say what it is — "this is a rough cut / a wireframe stand-in; the construction still needs a real vector pass" — rather than scoring it bulletproof. Presenting an unresolved mark as finished is how the whole logo ships at a quality the brand can't use.
Present it: the identity presentation
A mark is sold (and sign-off is won) in context, not on a white artboard. Present the identity presentation: the sketches and creative direction that led here, the inspiration, the mark itself, its black-and-white form, and — the load-bearing part — the mark applied: business cards, signage, billboards, social, ephemera (hats, shirts), a sub-brand side by side if there is one, and on the shelf next to the competitors. Show the application of everything and make the case objectively — "this stands out in your market" — with the competitor lineup right there to prove it. This is where Distinct stops being an assertion and becomes visible.
Deliver the Logo as ONE Locked Element
The single most common way a good mark gets wrecked downstream is that consumers rebuild it — a designer (or an agent) places the symbol, sets the wordmark themselves, picks their own gap, tints it to match an accent, and drops it in a rounded box. Prevent that by delivering the logo as a single, self-contained, locked asset, not a kit of parts:
- One file per lockup. The mark and the wordmark are locked together inside the asset in fixed proportion and fixed relationship. A consumer places the logo; they never assemble it. Provide the standalone symbol as its own separate asset for the cases that genuinely need it (avatar, app icon, favicon) — but it is a named variant, not an invitation to re-lockup.
- The wordmark ships as outlined vector, so it can never re-render in a substitute face on a machine without the licensed font.
- Correct artwork bounds. The
viewBox/ artboard must contain the whole drawing with its intended clear space — no clipping. A mark that arrives cropped by its own frame will be cropped everywhere it's used. Verify by rendering each delivered file standalone at large and small size. - Color is fixed and enumerated. Ship the exact variants — full-color, inverse, all-white, all-black, grayscale — and state plainly that recoloring the logo is misuse. Don't leave the mark color-inheriting or undefined such that a consumer's CSS decides it; if a version is meant to take a single color, deliver it as the one-color variant with the permitted colors named.
- Never drop the name or swap the face. The logotype is part of the mark. A lockup missing the wordmark, set in the wrong typeface, or filled with placeholder/AI-slop copy is not the logo.
- Never invent medium-specific ornament. Lines, frames, or decorations added "just for the business card / the deck" that aren't in the brand system are off-brand by definition — applying an identity means placing the system's elements, not adding new ones.
- State the invariants next to the files: minimum size, clear space, permitted variants, and an explicit misuse list — no recoloring, no boxing/containing, no cropping, no re-spacing or rebuilding the lockup, no stretching, no effects. And when the mark stands alone (e.g. dead-center on a card), actually center it.
The governing principle: the logo behaves identically in every medium. Web, print, deck, social, signage, app icon — same asset, same proportions, same relationship, same colors. If it looks or behaves differently on a new surface, the identity has been broken, not adapted.
Layout, print safe-zones/bleed, and deck-vs-web composition live in collateral-design; logo-design guarantees only that the mark itself stays locked and on-system wherever it lands.
Output & delivery
Write the Logo section of .agents/brand.md: lockups, the mark, clear space, minimum size, color/reversed variants, misuse — and, for an assessment, the SAD verdict with the evidence behind each dimension. Also append the Logo section of .agents/design.md (the living record — see creative-direction → design-doc-template.md): the same spec with the fuller rationale — construction/geometry notes, why the mark answers the Emotional Target, file locations — dated. brand.md carries the distilled rules; design.md carries the record.
Write the locked assets where the other skills will find them
A logo recorded only as prose can't be applied — the next skill has nothing to place, so it rebuilds the mark and wrecks it. So emit real files to a canonical path and register them in the context docs:
.agents/assets/logo/
logo-lockup.svg # primary — icon + outlined logotype, ONE locked element
logo-icon.svg # the mark alone
logo-lockup-inverse.svg # icon holds its colour, logotype flips (dark grounds)
logo-lockup-black.svg logo-lockup-white.svg logo-lockup-gray.svg
avatar.svg # square, icon centred
app-icon.svg # rounded square
raster/ # PNG + JPEG of each, for surfaces that can't take SVG
Then record those exact paths in the Logo section of both .agents/design.md and .agents/brand.md. Downstream skills — web-design, collateral-design, motion-design — reference and place these files; they never redraw, re-space, recolour, crop, box, or
…
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: zstvns
- Source: zstvns/design-skills
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.