brand-identity
Grounding + Method skill. Turns a confirmed brand strategy into an identity constraint set: colour story, type story, logo direction, imagery direction. It DEFINES tokens and constraints — it does not render marks. Dependency direction: pack-brand (B) exports constraints; pack-ai-image (A) consumes them. brand-to-tokens emits the DTCG token file from these constraints. logo-generation and brand-asset-generation generate the actual marks from these constraints. Never invert that direction.
When to use
- After
brand-strategy is confirmed (archetype, voice, positioning settled).
- When deriving the colour story, type story, logo direction, or imagery direction for a project.
- Before running
brand-to-tokens to emit the DTCG token file.
- Before handing constraints to
logo-generation or brand-asset-generation in pack-ai-image.
Procedure
Receive the confirmed strategy — archetype, voice, positioning, and target sector from brand-strategy. Refuse to proceed if strategy is still a draft.
Ground the colour story via the brand corpus:
./scripts-run <skills-root>/corpus-grounding/scripts/ground search \
--manifest <skills-root>/brand/data/manifest.json \
"<archetype + sector>" --domain color --json
Read confidence and evidence_gap from the response. Record both verbatim in the output. Derive colour roles (primary, secondary, neutral, accent) and direction (temperature, contrast ratio floor, emotional register).
- Ground the type story via:
./scripts-run <skills-root>/corpus-grounding/scripts/ground search \
--manifest <skills-root>/brand/data/manifest.json \
"<archetype + sector>" --domain typography --json
Output is a pairing-filter + heading/body class labels, not concrete tokens. Hand this filter to typography-system for the actual type tokens.
- Ground the logo direction via:
./scripts-run <skills-root>/corpus-grounding/scripts/ground search \
--manifest <skills-root>/brand/data/manifest.json \
"<archetype + sector>" --domain logo --json
Capture mark style, form language, and vector requirement. Note: any mark that the consumer may need in editable form MUST be specified as editable vector (SVG/AI), not raster.
Derive imagery direction from archetype and sector context: subject matter, mood, composition style, colour treatment, and what to avoid.
Assemble the identity constraint set — the structured seed for downstream skills. Record confidence and evidence_gap verbatim from all three corpus calls.
Human confirms the constraint set before any downstream step runs.
Export — hand off: brand-to-tokens receives the colour + type constraints and emits .tokens.json (DTCG); logo-generation and brand-asset-generation receive the logo direction and imagery direction. Direction of flow: B (pack-brand) -> A (pack-ai-image).
Output format
- Colour story — roles (primary, secondary, neutral, accent) with direction (temperature, contrast floor, register), cited from corpus with confidence score.
- Type story — heading class and body class derived from the archetype pairing-filter; note that concrete tokens come from
typography-system, not from this skill.
- Logo direction — mark style, form language, vector requirement (editable SVG/AI where needed), and any explicit exclusions.
- Imagery direction — subject matter, mood, composition style, colour treatment, and anti-patterns to avoid.
- Confidence + evidence_gap — verbatim from all corpus calls; flag any domain where evidence_gap is high before the human confirmation step.
- Handoff note — which constraints go to
brand-to-tokens (colour + type) and which go to the generation skills in pack-ai-image (logo direction + imagery direction).
Do NOT
- Generate the actual marks here — that is
logo-generation and brand-asset-generation.
- Invert the dependency direction — generation lives in pack-ai-image (A), not in pack-brand (B).
- Ship a raster as a final logo where the consumer needs an editable vector mark.
- Override an existing set of brand tokens on a live project without explicit user confirmation.
Gotcha
- Identity DEFINES constraints; generation CONSUMES them. Keep the B->A direction in every handoff note.
- A type story is a pairing-filter plus heading/body class labels — the concrete type tokens (scale, weight, line-height) come from
typography-system, not from this skill.
- Vector-vs-raster is a real decision for any mark: confirm with the user before recording the logo direction, because raster is irreversible for downstream editing needs.
See also
1---2name: brand-identity3description: Define a brand identity constraint set from a confirmed strategy — colour story, type story, logo direction, imagery direction. Defines the tokens that token emission and asset generation consume.4---56# brand-identity78Grounding + Method skill. Turns a confirmed brand strategy into an identity constraint set: colour story, type story, logo direction, imagery direction. It DEFINES tokens and constraints — it does not render marks. Dependency direction: pack-brand (B) exports constraints; pack-ai-image (A) consumes them. `brand-to-tokens` emits the DTCG token file from these constraints. `logo-generation` and `brand-asset-generation` generate the actual marks from these constraints. Never invert that direction.910## When to use1112- After `brand-strategy` is confirmed (archetype, voice, positioning settled).13- When deriving the colour story, type story, logo direction, or imagery direction for a project.14- Before running `brand-to-tokens` to emit the DTCG token file.15- Before handing constraints to `logo-generation` or `brand-asset-generation` in pack-ai-image.1617## Procedure18191. **Receive the confirmed strategy** — archetype, voice, positioning, and target sector from `brand-strategy`. Refuse to proceed if strategy is still a draft.20212. **Ground the colour story** via the brand corpus:2223```bash24./scripts-run <skills-root>/corpus-grounding/scripts/ground search \25 --manifest <skills-root>/brand/data/manifest.json \26 "<archetype + sector>" --domain color --json27```2829 Read `confidence` and `evidence_gap` from the response. Record both verbatim in the output. Derive colour roles (primary, secondary, neutral, accent) and direction (temperature, contrast ratio floor, emotional register).30313. **Ground the type story** via:3233```bash34./scripts-run <skills-root>/corpus-grounding/scripts/ground search \35 --manifest <skills-root>/brand/data/manifest.json \36 "<archetype + sector>" --domain typography --json37```3839 Output is a pairing-filter + heading/body class labels, not concrete tokens. Hand this filter to `typography-system` for the actual type tokens.40414. **Ground the logo direction** via:4243```bash44./scripts-run <skills-root>/corpus-grounding/scripts/ground search \45 --manifest <skills-root>/brand/data/manifest.json \46 "<archetype + sector>" --domain logo --json47```4849 Capture mark style, form language, and vector requirement. Note: any mark that the consumer may need in editable form MUST be specified as editable vector (SVG/AI), not raster.50515. **Derive imagery direction** from archetype and sector context: subject matter, mood, composition style, colour treatment, and what to avoid.52536. **Assemble the identity constraint set** — the structured seed for downstream skills. Record confidence and evidence_gap verbatim from all three corpus calls.54557. **Human confirms** the constraint set before any downstream step runs.56578. **Export** — hand off: `brand-to-tokens` receives the colour + type constraints and emits `.tokens.json` (DTCG); `logo-generation` and `brand-asset-generation` receive the logo direction and imagery direction. Direction of flow: B (pack-brand) -> A (pack-ai-image).5859## Output format60611. **Colour story** — roles (primary, secondary, neutral, accent) with direction (temperature, contrast floor, register), cited from corpus with confidence score.622. **Type story** — heading class and body class derived from the archetype pairing-filter; note that concrete tokens come from `typography-system`, not from this skill.633. **Logo direction** — mark style, form language, vector requirement (editable SVG/AI where needed), and any explicit exclusions.644. **Imagery direction** — subject matter, mood, composition style, colour treatment, and anti-patterns to avoid.655. **Confidence + evidence_gap** — verbatim from all corpus calls; flag any domain where evidence_gap is high before the human confirmation step.666. **Handoff note** — which constraints go to `brand-to-tokens` (colour + type) and which go to the generation skills in pack-ai-image (logo direction + imagery direction).6768## Do NOT6970- Generate the actual marks here — that is `logo-generation` and `brand-asset-generation`.71- Invert the dependency direction — generation lives in pack-ai-image (A), not in pack-brand (B).72- Ship a raster as a final logo where the consumer needs an editable vector mark.73- Override an existing set of brand tokens on a live project without explicit user confirmation.7475## Gotcha7677- Identity DEFINES constraints; generation CONSUMES them. Keep the B->A direction in every handoff note.78- A type story is a pairing-filter plus heading/body class labels — the concrete type tokens (scale, weight, line-height) come from `typography-system`, not from this skill.79- Vector-vs-raster is a real decision for any mark: confirm with the user before recording the logo direction, because raster is irreversible for downstream editing needs.8081## See also8283- [`brand-strategy`](../brand-strategy/SKILL.md) — supplies the confirmed strategy.84- [`brand-to-tokens`](../brand-to-tokens/SKILL.md) — emits the DTCG token source of truth.85- [`typography-system`](../typography-system/SKILL.md) — turns the type story into type tokens.86- [`logo-generation`](../logo-generation/SKILL.md) — generates marks from this identity (pack-ai-image).87- [`brand`](../brand/SKILL.md) — the corpus grounded against.