Content Setup Skill
When This Skill Activates
This skill runs in three scenarios:
- Explicit invocation: user runs
/content setup, /content brand show, /content brand update, or /content voice.
- Missing brand detection: any other content skill (e.g.,
/content draft, /content social) checks for the brand/ directory and it does not exist. That skill should hand off here before proceeding.
- Voice recalibration: user drops writing samples into
brand/voice-samples/ and runs /content voice to re-derive voice attributes.
Command Routing
| Command |
Behavior |
/content setup |
Full onboarding flow (all 5 phases) |
/content brand show |
Display current brand configuration from brand/BRAND.md, brand/VOICE.md, brand/VISUAL.md |
/content brand update |
Interactive modification of existing brand files |
/content voice |
Analyze writing samples in brand/voice-samples/ and update brand/VOICE.md |
The Onboarding Philosophy
This is a conversation, not a form. Claude should:
- Ask one question at a time (sometimes two if they are tightly related).
- Listen to the answer, then probe deeper when the response is vague or generic.
- Challenge cliches. If the user says "we empower people," ask what that looks like on a Tuesday afternoon.
- Reflect back what you heard before moving to the next phase, so the user can correct misunderstandings early.
- Keep a running internal summary; do not ask the user to repeat themselves.
- Be warm but direct. This process should feel like working with a sharp brand strategist, not filling out a government form.
Never dump all questions at once. The flow is adaptive -- skip questions whose answers are already obvious from prior responses. Add follow-ups when something interesting surfaces.
Phase 1: Identity (5-7 questions)
Goal: Understand who this brand is at its core.
Key topics:
- Brand or company name
- What you actually do (product/service/mission)
- Who you serve (audience -- push for specifics)
- The elevator pitch (30 seconds or less)
- Competitors and how you differ from them
- The single biggest differentiator
- One-word brand essence
Probe hard on differentiators. "Better quality" is not a differentiator. "We hand-test every unit before shipping" is.
See questions/brand-identity.md for the full question script with follow-up probes.
See questions/audience.md for the detailed audience deep-dive.
Phase 2: Voice (4-5 questions)
Goal: Capture how the brand sounds when it writes.
Key topics:
- Voices they admire (brands, writers, publications)
- Formality scale from 1 (SMS to a friend) to 10 (Supreme Court brief)
- Humor style (dry, playful, none, self-deprecating, absurdist)
- Favorite phrases and words they love to use
- Forbidden words and phrases (what should never appear)
- Writing samples (if available, analyze them)
If writing samples exist in brand/voice-samples/, analyze them for patterns: sentence length, vocabulary level, punctuation habits, rhetorical devices, tone shifts.
See questions/voice-tone.md for the full question script with the formality scale reference.
Phase 3: Visual (4-5 questions)
Goal: Document the visual identity so content can reference it.
Key topics:
- Logo description and usage rules
- Primary and secondary color palette (hex values if known)
- Reference brands whose visual style they admire
- Typography preferences (serif vs sans-serif, specific fonts)
- Photography and illustration style (candid vs posed, illustrations vs photos, abstract vs literal)
Claude is not designing the brand -- just documenting what exists or what the user aspires to. If they have no visual identity yet, capture their preferences and inspirations.
See questions/visual-style.md for the full question script.
Phase 4: Platforms (3-4 questions)
Goal: Know where the content lives and how often it ships.
Key topics:
- Current publishing platforms (blog, social, newsletter, podcast, etc.)
- Posting frequency goals per platform
- Content types per platform (long-form, short-form, threads, video scripts)
- Platforms they explicitly want to avoid and why
See questions/platforms.md for the full question script.
Phase 5: Review
Goal: Confirm everything before generating files.
Process:
- Present a structured summary of all captured information, organized by phase.
- Ask: "What did I get wrong? What's missing?"
- Iterate until the user confirms.
- Generate the output files.
Output Generation
After the user confirms the review, generate three files using the templates:
| File |
Template |
Purpose |
brand/BRAND.md |
templates/BRAND.md.template |
Core identity, audience, platforms, content pillars |
brand/VOICE.md |
templates/VOICE.md.template |
Voice attributes, example sentences, vocabulary, rhythm |
brand/VISUAL.md |
templates/VISUAL.md.template |
Color palette, typography, logo rules, visual principles |
Create the brand/ directory if it does not exist. If files already exist, confirm before overwriting.
See the templates/ directory for the exact output format of each file.
/content brand show
When the user runs /content brand show:
- Check that
brand/BRAND.md, brand/VOICE.md, and brand/VISUAL.md exist.
- If any are missing, report which files are missing and offer to run setup.
- If all exist, read each file and present a clean summary:
- Brand identity in 2-3 sentences
- Voice profile (key attributes, formality level)
- Visual snapshot (primary colors, typography)
- Active platforms and frequency
- End with: "Run
/content brand update to modify any of this."
/content brand update
When the user runs /content brand update:
- Read all existing brand files.
- Ask: "What would you like to change?" Accept free-form input.
- Map the requested changes to the relevant file(s).
- Show a diff-style preview of what will change.
- Confirm before writing.
- Update only the affected sections, preserving everything else.
This is not a full re-onboarding. It is a surgical edit. If the user wants to start over, they should run /content setup again.
/content voice
When the user runs /content voice:
- Check for
brand/voice-samples/ directory.
- If it does not exist, create it and ask the user to drop 3-5 writing samples there (blog posts, emails, social posts -- anything representative).
- If samples exist, analyze them for:
- Average sentence length and variation
- Vocabulary complexity (Flesch-Kincaid or similar heuristic)
- Punctuation patterns (em-dash heavy? Semicolons? Exclamation points?)
- Rhetorical devices (questions, lists, metaphors, analogies)
- Tone markers (formal/casual, confident/tentative, warm/distant)
- Signature phrases or recurring patterns
- Present findings to the user for confirmation.
- Update
brand/VOICE.md with the analysis, merging with any existing manual entries.
Error Handling
- If the user abandons mid-flow, save progress to
brand/.setup-draft.json so they can resume later.
- If brand files exist when
/content setup is invoked, warn the user and ask whether to start fresh or update.
- If writing samples are too short (under 200 words total), warn that the voice analysis will be unreliable and ask for more material.
Quality Bar
A completed brand setup must pass the validation checklist in validation.md. Key requirements:
- No placeholder text or "TBD" entries in final output
- Audience description includes at least: role, experience level, and primary pain point
- Voice section includes at least 3 "sounds like us" and 3 "doesn't sound like us" examples
- At least one publishing platform defined with a frequency goal
- Differentiator is specific and falsifiable (a competitor could not claim the same thing)
1---2name: content-setup3description: Interactive brand onboarding that creates the /brand/ directory with BRAND.md, VOICE.md, and VISUAL.md. Use when user runs /content setup, /content brand show, /content brand update, or /content voice. Also triggers when any content skill detects brand/ is missing.4---56# Content Setup Skill78## When This Skill Activates910This skill runs in three scenarios:11121. **Explicit invocation**: user runs `/content setup`, `/content brand show`, `/content brand update`, or `/content voice`.132. **Missing brand detection**: any other content skill (e.g., `/content draft`, `/content social`) checks for the `brand/` directory and it does not exist. That skill should hand off here before proceeding.143. **Voice recalibration**: user drops writing samples into `brand/voice-samples/` and runs `/content voice` to re-derive voice attributes.1516---1718## Command Routing1920| Command | Behavior |21|---|---|22| `/content setup` | Full onboarding flow (all 5 phases) |23| `/content brand show` | Display current brand configuration from `brand/BRAND.md`, `brand/VOICE.md`, `brand/VISUAL.md` |24| `/content brand update` | Interactive modification of existing brand files |25| `/content voice` | Analyze writing samples in `brand/voice-samples/` and update `brand/VOICE.md` |2627---2829## The Onboarding Philosophy3031This is a conversation, not a form. Claude should:3233- Ask one question at a time (sometimes two if they are tightly related).34- Listen to the answer, then probe deeper when the response is vague or generic.35- Challenge cliches. If the user says "we empower people," ask what that looks like on a Tuesday afternoon.36- Reflect back what you heard before moving to the next phase, so the user can correct misunderstandings early.37- Keep a running internal summary; do not ask the user to repeat themselves.38- Be warm but direct. This process should feel like working with a sharp brand strategist, not filling out a government form.3940**Never dump all questions at once.** The flow is adaptive -- skip questions whose answers are already obvious from prior responses. Add follow-ups when something interesting surfaces.4142---4344## Phase 1: Identity (5-7 questions)4546Goal: Understand who this brand is at its core.4748Key topics:49- Brand or company name50- What you actually do (product/service/mission)51- Who you serve (audience -- push for specifics)52- The elevator pitch (30 seconds or less)53- Competitors and how you differ from them54- The single biggest differentiator55- One-word brand essence5657Probe hard on differentiators. "Better quality" is not a differentiator. "We hand-test every unit before shipping" is.5859See `questions/brand-identity.md` for the full question script with follow-up probes.6061See `questions/audience.md` for the detailed audience deep-dive.6263---6465## Phase 2: Voice (4-5 questions)6667Goal: Capture how the brand sounds when it writes.6869Key topics:70- Voices they admire (brands, writers, publications)71- Formality scale from 1 (SMS to a friend) to 10 (Supreme Court brief)72- Humor style (dry, playful, none, self-deprecating, absurdist)73- Favorite phrases and words they love to use74- Forbidden words and phrases (what should never appear)75- Writing samples (if available, analyze them)7677If writing samples exist in `brand/voice-samples/`, analyze them for patterns: sentence length, vocabulary level, punctuation habits, rhetorical devices, tone shifts.7879See `questions/voice-tone.md` for the full question script with the formality scale reference.8081---8283## Phase 3: Visual (4-5 questions)8485Goal: Document the visual identity so content can reference it.8687Key topics:88- Logo description and usage rules89- Primary and secondary color palette (hex values if known)90- Reference brands whose visual style they admire91- Typography preferences (serif vs sans-serif, specific fonts)92- Photography and illustration style (candid vs posed, illustrations vs photos, abstract vs literal)9394Claude is not designing the brand -- just documenting what exists or what the user aspires to. If they have no visual identity yet, capture their preferences and inspirations.9596See `questions/visual-style.md` for the full question script.9798---99100## Phase 4: Platforms (3-4 questions)101102Goal: Know where the content lives and how often it ships.103104Key topics:105- Current publishing platforms (blog, social, newsletter, podcast, etc.)106- Posting frequency goals per platform107- Content types per platform (long-form, short-form, threads, video scripts)108- Platforms they explicitly want to avoid and why109110See `questions/platforms.md` for the full question script.111112---113114## Phase 5: Review115116Goal: Confirm everything before generating files.117118Process:1191. Present a structured summary of all captured information, organized by phase.1202. Ask: "What did I get wrong? What's missing?"1213. Iterate until the user confirms.1224. Generate the output files.123124---125126## Output Generation127128After the user confirms the review, generate three files using the templates:129130| File | Template | Purpose |131|---|---|---|132| `brand/BRAND.md` | `templates/BRAND.md.template` | Core identity, audience, platforms, content pillars |133| `brand/VOICE.md` | `templates/VOICE.md.template` | Voice attributes, example sentences, vocabulary, rhythm |134| `brand/VISUAL.md` | `templates/VISUAL.md.template` | Color palette, typography, logo rules, visual principles |135136Create the `brand/` directory if it does not exist. If files already exist, confirm before overwriting.137138See the `templates/` directory for the exact output format of each file.139140---141142## /content brand show143144When the user runs `/content brand show`:1451461. Check that `brand/BRAND.md`, `brand/VOICE.md`, and `brand/VISUAL.md` exist.1472. If any are missing, report which files are missing and offer to run setup.1483. If all exist, read each file and present a clean summary:149 - Brand identity in 2-3 sentences150 - Voice profile (key attributes, formality level)151 - Visual snapshot (primary colors, typography)152 - Active platforms and frequency1534. End with: "Run `/content brand update` to modify any of this."154155---156157## /content brand update158159When the user runs `/content brand update`:1601611. Read all existing brand files.1622. Ask: "What would you like to change?" Accept free-form input.1633. Map the requested changes to the relevant file(s).1644. Show a diff-style preview of what will change.1655. Confirm before writing.1666. Update only the affected sections, preserving everything else.167168This is not a full re-onboarding. It is a surgical edit. If the user wants to start over, they should run `/content setup` again.169170---171172## /content voice173174When the user runs `/content voice`:1751761. Check for `brand/voice-samples/` directory.1772. If it does not exist, create it and ask the user to drop 3-5 writing samples there (blog posts, emails, social posts -- anything representative).1783. If samples exist, analyze them for:179 - Average sentence length and variation180 - Vocabulary complexity (Flesch-Kincaid or similar heuristic)181 - Punctuation patterns (em-dash heavy? Semicolons? Exclamation points?)182 - Rhetorical devices (questions, lists, metaphors, analogies)183 - Tone markers (formal/casual, confident/tentative, warm/distant)184 - Signature phrases or recurring patterns1854. Present findings to the user for confirmation.1865. Update `brand/VOICE.md` with the analysis, merging with any existing manual entries.187188---189190## Error Handling191192- If the user abandons mid-flow, save progress to `brand/.setup-draft.json` so they can resume later.193- If brand files exist when `/content setup` is invoked, warn the user and ask whether to start fresh or update.194- If writing samples are too short (under 200 words total), warn that the voice analysis will be unreliable and ask for more material.195196---197198## Quality Bar199200A completed brand setup must pass the validation checklist in `validation.md`. Key requirements:201202- No placeholder text or "TBD" entries in final output203- Audience description includes at least: role, experience level, and primary pain point204- Voice section includes at least 3 "sounds like us" and 3 "doesn't sound like us" examples205- At least one publishing platform defined with a frequency goal206- Differentiator is specific and falsifiable (a competitor could not claim the same thing)