Use when you have a written implementation plan to execute in a separate session with review checkpoints
npx skills add phrazzld/claude-config --skill "brand-builder"
Install specific skill from multi-skill repository
# Description
|
# SKILL.md
name: brand-builder
description: |
Interactive brand discovery for a project. Creates brand-profile.yaml
that guides all future content generation.
Run once per project to establish voice, audience, topics.
argument-hint: "[project-name]"
/brand-builder
Establish brand identity. Generate content that fits.
What This Does
Interactive discovery process that creates a brand-profile.yaml in the project root.
This profile guides /post and /announce skills to generate on-brand content.
Process
Phase 1: Discovery (Interactive)
Ask the user questions using AskUserQuestion:
1. Target Audience
Who is the primary user of [product]?
- Developers / technical users
- General consumers
- Business / enterprise
- Specific niche (describe)
2. Tone & Voice
What tone should [product] use?
- Professional & authoritative
- Casual & friendly
- Playful & fun
- Technical & precise
3. Core Value Proposition
In one sentence, what does [product] do for users?
(User provides free text)
4. Content Topics
What topics are relevant to [product]'s audience? (Select multiple)
- Product updates & features
- Industry news & trends
- Tips & tutorials
- Behind-the-scenes / building in public
- User stories & testimonials
- General interest in the domain
5. Competitors / Inspirations
What brands or products inspire [product]'s voice?
(User provides free text - optional)
Phase 2: Context Gathering (Automatic)
Gather additional context without user input:
Git History Analysis
# Recent commits to understand what's being built
git log --oneline -20
# Key features from README
cat README.md | head -100
# Tech stack from package.json / Cargo.toml / etc.
cat package.json 2>/dev/null | jq '{name, description, keywords}'
Existing Marketing Materials
- Check for existing brand-profile.yaml
- Look for marketing copy in README, landing page
- Note any existing social presence
Phase 3: Profile Generation
Generate brand-profile.yaml combining user input and gathered context:
# Brand Profile for [Product Name]
# Generated by /brand-builder on [date]
# Used by /post and /announce for content generation
product:
name: Volume
domain: volume.app
tagline: "Track your lifts. See your gains."
category: health
audience:
primary: "Gym-goers who want to track strength training progress"
demographics:
- Age 25-45
- Fitness enthusiasts
- Data-driven
pain_points:
- Hard to remember what weight to use
- Can't see progress over time
- Existing apps are too complex
voice:
tone: casual_friendly
personality:
- Encouraging but not preachy
- Data-focused without being nerdy
- Celebrates small wins
avoid:
- Bro culture / toxic fitness
- Overly technical jargon
- Shaming language
content:
mix:
product_updates: 30%
valuable_content: 70%
topics:
# Product-related (30%)
- New features and improvements
- Tips for using the app
- User milestones
# Domain-related (70%)
- Strength training tips
- Form and technique
- Progress tracking psychology
- Motivation and consistency
- Gym culture and community
hashtags:
primary:
- "#fitness"
- "#strengthtraining"
- "#gymlife"
product:
- "#volumeapp"
- "#trackyourlifts"
posting_frequency: "2-3 times per week"
inspirations:
- "Strong app - clean and focused"
- "Strava - community without being overwhelming"
twitter_account: "@MistyStepLLC" # From products.yaml category
# Generated context
context:
tech_stack: "Next.js, TypeScript, Convex"
recent_features:
- "Interval timer"
- "Exercise library"
- "Progress charts"
github_repo: "MistyStep/volume"
Phase 4: Save & Confirm
Save to project root as brand-profile.yaml.
Confirm with user:
Brand profile created for [Product].
Summary:
- Audience: [primary audience]
- Tone: [tone]
- Content mix: 30% product / 70% valuable content
- Topics: [list top 3]
Saved to: ./brand-profile.yaml
Run /post [product] to generate content using this profile.
Usage
# In a project directory
/brand-builder
# Or specify project name
/brand-builder volume
Output
Creates brand-profile.yaml in:
1. Current directory (if in a project)
2. Or ~/.claude/skills/brand-builder/profiles/[product].yaml as fallback
Integration
Other skills use this profile:
- /post - Reads profile for voice, topics, hashtags
- /announce - Uses profile for launch messaging
- /social-content - Generates content calendar from topics
Re-running
If brand-profile.yaml already exists:
1. Load existing profile
2. Ask if user wants to update specific sections
3. Preserve unchanged sections
4. Update modified sections
Example Session
> /brand-builder
I'll help establish a brand identity for this project.
Let me gather some context first...
[Reads README, package.json, git history]
Found: "Volume" - a fitness tracking app
Question 1 of 5: Who is your primary user?
[AskUserQuestion with options]
...
Brand profile created!
Summary:
- Audience: Gym-goers tracking strength progress
- Tone: Casual & encouraging
- Topics: Strength training, progress tracking, gym tips
Saved to: ./brand-profile.yaml
Next: Run /post volume "shipped interval timer" to generate a launch post.
# Supported AI Coding Agents
This skill is compatible with the SKILL.md standard and works with all major AI coding agents:
Learn more about the SKILL.md standard and how to use these skills with your preferred AI coding agent.