About brand-setup
An interactive brand-profiling skill for marketers and agencies, with quick and full setup paths. It stores separate profiles per brand so marketing modules can use each brand’s voice, audience, goals, and guidelines.
Key features
- 01Quick or full profile setup
- 02Collect identity and business details
- 03Record brand voice and channels
- 04Capture goals, markets, and competitors
- 05Isolate profiles and guidelines by brand
- 06Switch or update existing brands
Use cases
- 01Create a marketing profile for a new client
- 02Manage multiple client brands at an agency
- 03Update a brand’s voice, audience, or goals
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ indranilbanerjee/ digital-marketing-pro --skill brand-setupAfter installing, type/brand-setupin Claude Code to confirm it loaded.
Details
From the project READMEBrand Setup — Interactive Brand Profiling
Script location. If your host does not set
${CLAUDE_PLUGIN_ROOT}, the scripts are in this plugin'sscripts/folder, next toskills/. Run them with Python 3.10 or newer:python, orpython3wherepythonis not found (macOS, many Linux systems).
When to Use This Skill
- User says "set up a new brand" or "create a brand profile"
- User mentions a new client or project for marketing
- User wants to switch between brands (agency use case)
- User wants to update brand voice, audiences, or goals
- First time using any marketing skill without an active brand
Setup Modes
Quick Setup (5 questions — recommended for getting started fast)
If the user wants to get started quickly, or says "quick setup", ask only these 5 essential questions:
- Brand name — "What's your brand or business name?"
- What you do — "In one sentence, what does [brand] do?" (extract industry, business model, USP)
- Target audience — "Who is your primary customer?" (extract B2B/B2C, demographics)
- Brand voice — "Pick 3 words that describe how your brand communicates" (map to formality/energy/humor/authority scales)
- Primary channel — "Where do you primarily market? (social media, email, SEO, paid ads, etc.)"
From these 5 answers, intelligently populate the full profile:
- Infer industry, business model type, and compliance requirements
- Map voice descriptors to the 1-10 scales (e.g., "professional" → formality: 8, "fun" → humor: 7)
- Set sensible defaults for everything else
- Tell the user: "Quick profile created! You can refine it anytime with /digital-marketing-pro:brand-setup --full"
Full Setup (17 questions — comprehensive profiling)
Use the full setup when:
- User explicitly asks for detailed/full/comprehensive setup
- User says "/digital-marketing-pro:brand-setup --full"
- User wants to update specific sections of an existing profile
Process (Full Setup)
Step 1: Brand Identity
Ask the user one question at a time (don't overwhelm):
- Brand name: "What's the brand/company name?"
- Elevator pitch: "In one sentence, what does [brand] do?"
- USP: "What makes [brand] different from competitors?"
- Mission/Values: "What's the brand's mission? What values drive it?"
Step 2: Business Model
-
Business type: Present options:
- B2B SaaS / Software
- B2C eCommerce / DTC
- B2B Services / Consulting
- Local Business
- Agency (managing multiple clients)
- Creator / Personal Brand
- Enterprise
- Non-Profit
- Marketplace
-
Revenue model: subscription, transactional, freemium, marketplace commission, donation, retainer, advertising
-
Price range and sales cycle: "What's your typical deal size and how long does it take to close?"
Step 3: Industry & Compliance
- Industry: "What industry are you in?" (match to industry-profiles.md)
- Regulated?: "Are you in a regulated industry? (healthcare, finance, legal, alcohol, cannabis, etc.)"
- Target markets: "What countries/regions do you sell to?" (triggers compliance rules)
Step 4: Brand Voice
-
Voice dimensions — Ask user to rate 1-10 or describe:
- Formality (1=very casual like a friend, 10=very formal like a law firm)
- Energy (1=calm and measured, 10=enthusiastic and bold)
- Humor (1=never use humor, 10=humor is core to the brand)
- Authority (1=peer-level, friendly guide, 10=expert thought leader)
-
Personality traits: "Pick 3-5 words that describe the brand's personality" (e.g., witty, empathetic, direct, bold, thoughtful, playful, authoritative, warm)
-
This-Not-That: "Give me examples of how you'd say something vs. how you wouldn't" (e.g., "We say 'Let's figure this out together' not 'Contact our support team'")
-
Sample content: "Share 2-3 URLs or text snippets of content you think nails your brand voice"
Step 5: Channels & Goals
-
Active channels: "Which marketing channels are you currently using?" (website, Instagram, LinkedIn, Twitter, TikTok, YouTube, Facebook, Pinterest, Email, Google Ads, Meta Ads, etc.)
-
Goals: "What's your #1 marketing goal right now?" + target KPIs + budget range + team size
Step 6: Competitors
- Competitors: "Name 3-5 competitors (direct or aspirational)"
- For each: name, URL, relationship (direct/indirect/aspirational), known strengths/weaknesses
Step 7: Save & Confirm
After collecting all information:
- Run:
python "${CLAUDE_PLUGIN_ROOT}/scripts/setup.py" --create-brand "[brand name]" - Update the created profile.json with all collected data
- Add the AI-assistance disclosure block (defaults unless the user chooses otherwise):
"ai_disclosure": {"mode": "claude-surfaces", "text": null, "author": null}. Modes:claude-surfaces(default — the disclosure attaches when content runs on a Claude surface or the surface is uncertain; skipped only on an affirmatively-detected non-Claude harness),always(every surface — safest for brands with their own AI-transparency obligations),off(never; the brand owns that choice).authoris OPTIONAL and may stay null — the default wording ("reviewed by our editorial team") needs no name. Customtextreplaces the default verbatim; note the default is vendor-neutral and claims only the review the pipeline performs - Confirm to user: "Brand profile created for [brand_name]. All marketing modules will now use this context. You can update it anytime by saying 'update my brand profile.'"
Switching Brands
When user says "switch to [brand name]":
- Run:
python "${CLAUDE_PLUGIN_ROOT}/scripts/setup.py" --list-brands - Find matching brand
- Update
~/.claude-marketing/brands/_active-brand.json - Confirm: "Switched to [brand_name]."
Updating a Brand
When user wants to update specific fields:
- Load current profile from
~/.claude-marketing/brands/{slug}/profile.json - Ask about the specific field(s) to update
- Write updated profile back
- Confirm changes
Profile Storage and Brand Isolation
Each brand lives under ~/.claude-marketing/brands/{slug}/: profile.json (full brand context), guidelines/ (imported style guides, restrictions, approved messaging), and templates/ (custom deliverable templates). Every skill loads these automatically. Agencies keep one profile per client; each brand gets isolated context with no cross-contamination, and /digital-marketing-pro:switch-brand <name> (or --list) changes the active one.
After Setup
After creating the profile, ask:
"Brand profile for [name] is ready. Would you like to:
- Import an existing style guide? (
/digital-marketing-pro:import-guidelines) - Run a competitive analysis? (
/digital-marketing-pro:competitor-analysis) - Plan your first campaign? (
/digital-marketing-pro:campaign-plan) - Audit your SEO? (
/digital-marketing-pro:seo-audit) - Check which connectors are active? (
/digital-marketing-pro:integrations)"
Important Notes
- NEVER skip the brand voice section — it's what makes all content outputs on-brand
- For agencies: each client should be a separate brand profile
- Store voice samples as markdown files in the brand's voice-samples/ directory
- Auto-detect industry compliance rules based on the industry and market selections