Agent skill

Brand Discovery

by affaan-m in affaan-m/ECC

Run a structured, resumable multi-session brand identity interview across 8 modules (purpose, positioning, audience, personality, voice, narrative, founder tension) using laddering, 5 Whys, and…

MITAuto-check passedMarketing & SEO

Install Brand Discovery

skills CLI
$ npx skills add affaan-m/ECC --skill brand-discovery -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install affaan-m/ECC brand-discovery --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/affaan-m/ECC.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/brand-discovery .claude/skills/brand-discovery && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
brand-discovery
GitHub stars
277k
Used in
1 other repo
Token cost
~1.9k tokens
SKILL.md length
905 words
Files
9 (incl. references)
Skills in repo
683
Repo updated
First seen
Licence
MIT

At a glance

Run a structured, resumable multi-session brand identity interview across 8 modules (purpose, positioning, audience, personality, voice, narrative, founder tension) using laddering, 5 Whys, and…

  • Works in 3 steps: Check for prior progress. Look for an… → Read the current module file if one is… → Report to the user in two or three…
  • Repositioning a brand
  • SKILL.md covers When to Activate, Session start protocol, Interview discipline and Module sequence, plus 4 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Brand Discovery is an agent skill from affaan-m/ECC. Run a structured, resumable multi-session brand identity interview across 8 modules (purpose, positioning, audience, personality, voice, narrative, founder tension) using laddering, 5 Whys, and projective techniques, persisting answers to disk and producing a master brandbook (90SYNTHESIS.md). Use when creating or repositioning a brand, briefing designers or writers, or making implicit founder knowledge explicit.

Its SKILL.md is about 1.9k tokens, which your agent loads only when the skill is triggered. The skill folder holds 9 other files, including reference files (for example `references/10_purpose-why.md`, `references/20_positioning.md` and `references/30_audience-niche.md`).

It sits in Marketing & SEO, covering Brand strategy and identity and Root cause analysis. The repository describes itself as: The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond. The licence is MIT.

When your agent uses it

  • Repositioning a brand
  • Briefing designers
  • Making implicit founder knowledge explicit

Example prompts

  • “/brand-discovery”

Workflow steps

3 steps, taken from the first numbered list in SKILL.md.

  1. Check for prior progress. Look for an existing set of module files
  2. Read the current module file if one is in progress, and scan its Raw
  3. Report to the user in two or three sentences: which module we are

What it can do on your machine

Read from SKILL.md and the folder at commit 2d515e4. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are json).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Brand Discovery loads about 1.9k tokens when it runs, and up to ~5.4k if it reads all its reference files. Until then it costs about 108 tokens; SKILL.md has 905 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~108
When it runs · the whole SKILL.md, loaded when a task matches
~1.9k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~5.4k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from affaan-m/ECC at commit 2d515e4, republished under its MIT licence (© affaan-m). 905 words, ~1,880 tokens.

Download SKILL.mdSave it as .claude/skills/brand-discovery/SKILL.md (or your agent's skills folder). This skill also uses 8 other files; get the full folder from GitHub.
name
brand-discovery
description
Run a structured, resumable multi-session brand identity interview across 8 modules (purpose, positioning, audience, personality, voice, narrative, founder tension) using laddering, 5 Whys, and projective techniques, persisting answers to disk and producing a master brandbook (90_SYNTHESIS.md). Use when creating or repositioning a brand, briefing designers or writers, or making implicit founder knowledge explicit.

Brand Discovery

Use this skill to conduct a structured, adaptive brand identity interview. The goal is a complete 90_SYNTHESIS.md — a master brandbook the organization can use to brief designers, writers, and external collaborators.

The interview runs across multiple sessions. Capture answers to disk as you go so that no elicited knowledge is lost when a conversation ends, and so a later session can resume from where the last one stopped.

When to Activate

  • A brand is being created, repositioned, or needs a written identity reference to brief collaborators.
  • Multiple sessions are expected — the conversation will span days or weeks.
  • Multiple founders or stakeholders need individual interviews before a reconciliation pass.
  • The user wants a structured, repeatable method rather than an ad-hoc chat.
  • Existing brand documentation is scattered, implicit, or founder-dependent and needs to be made explicit.

Session start protocol

On every activation, perform these steps before asking any interview question:

  1. Check for prior progress. Look for an existing set of module files and a state.json checkpoint in the project's brand-identity directory. If none exists, this is a fresh start — confirm the brand name, participants, and where to save the brand-identity files, then begin at the first module.
  2. Read the current module file if one is in progress, and scan its Raw section for previously captured answers.
  3. Report to the user in two or three sentences: which module we are in, its status, and what remains. Then ask: "Continue here, or switch module?"

Interview discipline

Apply these rules throughout every module:

  1. One question at a time. Never present a list of questions.
  2. After each answer: short paraphrase → one deepening probe OR close the thread if the topic is saturated. Never move on silently.
  3. Laddering: for every "what" answer, follow with "Why does that matter to you?" until a core value surfaces (typically two to four iterations).
  4. 5 Whys: for beliefs or positioning claims — push until the root reason, not the surface declaration, is on the table.
  5. Detect thin answers: if generic, jargon-heavy, or vague, ask for one concrete example, a client story, or a number.
  6. Projective techniques (use once per module to break a plateau):
    • "If the brand were a person, how would they walk into a room?"
    • Brand obituary: "If the organization closed in five years, what would customers miss? What would you regret not having said?"
    • Competitive contrast: "Name one peer you admire but would never want to become. What specifically makes them the wrong model?"
  7. Saturation signal: when two consecutive probes produce no new information, summarise and close the module.
  8. End of module: write a structured module file with two sections:
    • ## Raw — verbatim quotes and examples.
    • ## Synthesis — your interpretation, three candidate formulations, open questions, contradictions between participants. Then update the state.json checkpoint (see State protocol below).

Module sequence

FileLabelFrameworks used
10_purpose-why.mdPurpose / WhySinek Golden Circle, Lencioni
20_positioning.mdPositioningDunford "Obviously Awesome", Moore template
30_audience-niche.mdAudience & NicheBaker "Business of Expertise", ICP
40_personality-archetype.mdPersonality & ArchetypeMark & Pearson 12 archetypes, J. Aaker 5 dims
50_voice-tone.mdVoice & ToneBrand voice guidelines
60_narrative-story.mdNarrative / StoryNeumeier trueline, brand story arc
70_founder-tension.mdFounder Brands vs Studio BrandEnns "Win Without Pitching"
90_SYNTHESIS.mdMaster BrandbookKapferer prism, Aaker brand system

Complete modules in order. Honour a user request to jump modules and note the skip in state.json.

Show full SKILL.md (348 more words)Show less

State write protocol

After each module reaches saturation or done status, write two files:

Module file at modules/{moduleFile} — full Raw and Synthesis content.

state.json — a lightweight checkpoint so a later session can resume. Update completedModules, inProgressModule, nextModule, lastUpdated. Schema:

json
{
  "session": "{brand_name}-brand-{YYYY-MM}",
  "outputPath": "{path_to_brand_identity_directory}",
  "completedModules": [],
  "inProgressModule": "10_purpose-why.md",
  "nextModule": "20_positioning.md",
  "participants": ["founder-A"],
  "lastUpdated": "{ISO-8601}"
}

After writing, confirm: "Module X saved. State updated. Next: Y."

Terminal module (90_SYNTHESIS.md): when writing the final synthesis, set inProgressModule to "90_SYNTHESIS.md" and nextModule to null in state.json. After writing, set completedModules to include "90_SYNTHESIS.md", then set inProgressModule to null — leaving it populated would cause a future resumption to treat the completed brandbook as still in progress. Confirm: "Brandbook complete. All modules saved."

Multi-founder mode

When more than one founder participates, write each founder's answers to founders/{participant}.md instead of the main module files. Validate the participant name before writing: accept only alphanumeric characters and hyphens (e.g. founder-a, anna); reject names containing path separators (/, \, ..) or special characters. Validate moduleFile against the enumerated module sequence (10 through 90 only). Validate outputPath to ensure it is an absolute path within the project directory — reject relative paths and paths that escape via .. segments. After all founders complete a module, run a reconciliation pass: summarise convergences and divergences in the module file, flag "productive tensions" for the group alignment workshop.

Anti-Patterns

  • Starting without reading state first. Every session must open by checking for existing module files and state.json. Skipping this loses all continuity from prior sessions.
  • Asking multiple questions at once. One question at a time is not optional — lists produce checklist answers, not real insight.
  • Moving to Synthesis before saturation. If the last two probes produced no new information, the module is done. If they did — it isn't.
  • Skipping multi-founder reconciliation. When multiple stakeholders are involved, individual interviews must complete before reconciliation. Discussing the brand collectively first introduces anchoring bias.
  • Treating this as a one-shot session. This skill is designed for multiple sessions. Rushing to 90_SYNTHESIS.md in one conversation produces shallow output.
  • competitive-platform-analysis — after brand-discovery establishes the positioning brief, use this to scope and categorise the competitor set.
  • brand-voice (ECC) — if the brand-discovery voice-and-tone module needs a separate, source-derived writing-style profile.

© affaan-m, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 8 other files (references) in skills/brand-discovery of affaan-m/ECC.

  • SKILL.md
  • references/10_purpose-why.md
  • references/20_positioning.md
  • references/30_audience-niche.md
  • references/40_personality-archetype.md
  • references/50_voice-tone.md
  • references/60_narrative-story.md
  • references/70_founder-tension.md
  • references/90_SYNTHESIS.md

Open the folder on GitHubat commit 2d515e4

Used in 1 other repository

We found 2 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in affaan-m/ECC, which our catalogue first saw on October 7, 2026.

Compare with similar skills

Brand Discovery next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Brand Discovery compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Brand Discovery this skillaffaan-m/ECC277k1 repos~1.9kAutomated safety check: PassMIT
Brand Namingarnabbagxd/Brand-building-skills729—~2.3kAutomated safety check: PassMIT
Brand Strategy Squadohmyjahh/xquads-squads277—~852Automated safety check: PassMIT
Positioning BasicsBrianRWagner/ai-marketing-claude-code-skills441—~1.9kAutomated safety check: PassNone
Brand Analyzerailabs-393/ai-labs-claude-skills455—~3.6kAutomated safety check: PassMIT
03 Performance Eval Globalminhnv0807/ai-business-skills609—~3.5kAutomated safety check: PassMIT

Similar skills

  • Brand Naming

    arnabbagxd/Brand-building-skills

    Full brand naming workflow for founders, agencies, and businesses.

    729 GitHub stars~2.3k tokensUpdated 4 mo ago
    Marketing & SEOAuto-check passed
  • Brand Strategy Squad

    ohmyjahh/xquads-squads

    Portuguese-language brand strategy squad: a chief agent routes work to 14 specialists for positioning, audits, identity, architecture, brand story, archetypes and naming.

    277 GitHub stars~852 tokensUpdated 12 days ago
    Marketing & SEOAuto-check passed
  • Positioning Basics

    BrianRWagner/ai-marketing-claude-code-skills

    Walks founders and marketers through five specific questions to produce a positioning statement, and optionally a full messaging hierarchy or competitive differentiation map.

    441 GitHub stars~1.9k tokensUpdated 6 mo ago
    Marketing & SEOAuto-check passed
  • Brand Analyzer

    ailabs-393/ai-labs-claude-skills

    This skill should be used when the user requests brand analysis, brand guidelines creation, brand audits, or establishing brand identity and consistency standards.

    455 GitHub stars~3.6k tokensUpdated 11 mo ago
    Marketing & SEOAuto-check passed
  • 03 Performance Eval Global

    minhnv0807/ai-business-skills

    A skill your agent uses when marketing numbers look bad and the user needs to know WHY — layered root-cause diagnosis across tracking, delivery, creative, landing page, offer, and audience quality…

    609 GitHub stars~3.5k tokensUpdated 29 days ago
    Marketing & SEOAuto-check passed
  • Competitor Branding

    arnabbagxd/Brand-building-skills

    Analyze how competitors present their brand — identity, messaging, positioning, voice, and visual style — to find gaps and opportunities.

    729 GitHub stars~1.3k tokensUpdated 4 mo ago
    Marketing & SEOAuto-check passed

More from affaan-m/ECC

All 682 skills in this repo
  • Skill Stocktake

    affaan-m/ECC

    Audits your installed Claude skills and commands for quality, with a quick mode for recently changed skills and a full mode that evaluates all of them through subagents.

    277k GitHub starsUsed in 5 repos~3.1k tokens
    Auto-check passed
  • Ingests, indexes, searches, edits and monitors video, audio and live streams through the VideoDB Python SDK, returning stream links, clips and timestamps.

    277k GitHub starsUsed in 3 repos~3.5k tokens
    Auto-check: notes
  • Docs Governance

    affaan-m/ECC

    Route broad documentation-governance requests to existing ECC skills and run an opt-in, read-only audit of mapped documentation roles, links, ADR indexes, and evidence references.

    277k GitHub stars~1.1k tokensUpdated today
    Auto-check passed
  • Rules Distillation

    affaan-m/ECC

    Scans installed skills for principles that recur across them and proposes rule-file changes: append, revise, add a section, create a file or leave as covered.

    277k GitHub starsUsed in 2 repos~2.3k tokens
    Auto-check passed
  • Builds DRAFT counterparty agreements from one markdown template and a small JSON spec per party, with clauses picked by the party's role.

    277k GitHub stars~2.9k tokensUpdated today
    Auto-check passed
  • Set an ECC-specific frontend design direction for production UI work.

    277k GitHub starsUsed in 1 repo~2.2k tokens
    Auto-check passed

Questions about Brand Discovery

What does Brand Discovery do?

Run a structured, resumable multi-session brand identity interview across 8 modules (purpose, positioning, audience, personality, voice, narrative, founder tension) using laddering, 5 Whys, and…. Brand Discovery is an agent skill from affaan-m/ECC.md).

When should I use Brand Discovery?

Brand Discovery fits situations like: repositioning a brand; briefing designers; making implicit founder knowledge explicit.

How do I install Brand Discovery in Claude Code?

Run `npx skills add affaan-m/ECC --skill brand-discovery -a claude-code`. Or copy the skill folder (skills/brand-discovery in affaan-m/ECC) into .claude/skills/brand-discovery in your project. Claude Code loads it when a task matches its description.

How do I install Brand Discovery in Codex?

Run `npx skills add affaan-m/ECC --skill brand-discovery -a codex`. Or copy the skill folder (skills/brand-discovery in affaan-m/ECC) into .agents/skills/brand-discovery in your project. Codex loads it when a task matches its description.

Can I use Brand Discovery in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add affaan-m/ECC --skill brand-discovery -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/brand-discovery, .gemini/skills/brand-discovery, .github/skills/brand-discovery and .opencode/skills/brand-discovery in your project.

What does Brand Discovery need to run?

SKILL.md names no scripts, command-line tools or credentials: Brand Discovery is instructions for the agent only.

Does Brand Discovery access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Brand Discovery safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Brand Discovery use?

Brand Discovery is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Brand Discovery use?

About 1.9k tokens (SKILL.md is roughly 7.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 3.5k tokens, read only when the agent opens those files.

What are the alternatives to Brand Discovery?

Skills that share tags, products or a category with Brand Discovery: Brand Naming (arnabbagxd/Brand-building-skills, 729 stars), Brand Strategy Squad (ohmyjahh/xquads-squads, 277 stars), Positioning Basics (BrianRWagner/ai-marketing-claude-code-skills, 441 stars) and Brand Analyzer (ailabs-393/ai-labs-claude-skills, 455 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Brand Discovery?

affaan-m (a GitHub user) maintains it in affaan-m/ECC, which has 276,673 GitHub stars. The repository holds 683 skills in this directory. The repository was last updated on October 11, 2026.

Source: affaan-m/ECC on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.