Brand Voice
How This Works
Voice is who you are — it doesn't change. Tone is how you show up in a specific moment — it shifts by buyer and channel, intentionally, not randomly. This skill builds a voice guide that survives contact with a blank page: every trait gets an example, every persona gets a tone profile, every channel gets a table row. It deepens your brain's existing Section 4 in place rather than creating a second voice file — one source of truth stays intact for every downstream writing skill.
Step 0 — Load brain Section 4 (current voice guide, however thin),
Section 2 (ICP/personas, for tone-by-persona grounding), and any
guardrails from /context/meta-patterns.md.
Step 1 — Establish brand personality and its edges: 3-4 words that couldn't apply to a competitor, plus what the brand explicitly rejects.
Step 2 — Map tone by persona: for each buyer in the committee, what they care about, how they prefer information, what makes them distrust a vendor immediately, what makes them lean in. Never pre-filled — every committee is different.
Step 3 — Build the channel tone table and forbidden-language list, then run the one-sentence voice test against both.
Step 4 — Deepen brain Section 4 with the guide (on user confirmation).
Step 5 — Learning Close: log the session to /context/skill-sessions.md.
Trigger
When: Defining or sharpening how the brand sounds — voice attributes, tone shifts by persona or channel, forbidden language, or auditing copy that's drifted off-brand.
Not for: Positioning statement or messaging hierarchy itself → use
positioning-messaging. Writing the actual copy → no dedicated drafting skill exists yet in this repo; produce copy withinpositioning-messaging's own output modes, using this skill's voice guide as input. Buying-committee mapping →buyer-personas, run first if tone-by-persona needs real committee data instead of guessed roles.Example prompts:
- "How should we sound on LinkedIn vs. a sales deck?"
- "Our copy feels off — voice audit"
- "We sound like everyone else"
- "Write this in our voice for the Champion persona"
- "Build our voice guide"
Inputs
- Args: None required — the skill asks one question at a time if nothing is on file. 3-5 samples of existing copy speed up the AUDIT path but aren't required for BUILD.
- Defaults: No brain, or Section 4 still empty → run full BUILD. Section 4 populated → load silently, offer [View current] [Update] [Audit for drift] [Apply to a specific piece].
- Context keys:
/foundation/brain.md— read Sections 2 and 4 if present; written to (Section 4 only) after explicit user confirmation of the exact before/after./context/meta-patterns.md— guardrails, read at Step 0.
Pre-flight
- Check
/foundation/brain.mdSection 4 — if populated, this is an UPDATE, AUDIT, or APPLY, not a fresh BUILD. - If
/foundation/brain.mddoesn't exist at all, surface once: "No brain found. You can still run this skill, but output will be less precise. Run product-marketing-context first for sharper results. Continuing." No hard block.
Steps
Step 1 — Brand personality and its edges. Ask for 3-4 words describing the brand as if it were a person at a professional dinner — reject defaults like "authentic" or "innovative." Challenge: could a competitor claim the same words? If yes, push for a reference brand that gets it right and one that gets it wrong. Then ask what the brand explicitly rejects — name brands or archetypes that feel wrong, and why. "Not too salesy" isn't specific; ask what salesy looks like in this market.
Step 2 — Tone by persona.
If a recent buyer-personas session exists, load its committee roles
instead of re-asking. Otherwise ask directly: who's on the committee, what
they care about professionally, how they prefer to receive information,
what makes them distrust a vendor immediately, what makes them lean in.
Rate the brand on four dimensions (Formality, Warmth, Boldness, Energy) —
push past "casual but professional," which is everyone's answer; ask for
a reference point (casual like Slack, or casual like a boutique
consultancy?).
Step 3 — Channel table and forbidden language. List the channels in active use (homepage, sales deck, outbound email, LinkedIn, thought leadership, talk tracks, customer comms). Persona takes precedence over channel when both apply — channel adapts the voice, it doesn't replace persona tone. Every Do/Don't needs a concrete example before it's encoded — "be direct" is useless without "e.g., write X not Y." Draft the one-sentence voice test: "[Brand] sounds like [descriptor] — always [consistent quality], even when [the tone shifts]." Exit check — every persona profile and channel entry must pass this sentence before the guide ships.
Step 4 — Deepen brain Section 4 on confirmation. Show the user the exact before/after for Section 4 before writing anything. On confirmation, write:
## Section 4: Voice & Tone
**Brand Voice Attributes:**
{{3-4 words, plus the one-sentence voice test}}
**Tone Shifts by Persona:**
{{per-persona block: cares about / prefers / distrust trigger / lean-in
trigger / tone dimension ratings}}
**Language Preferences:**
{{channel table — channel, primary audience, tone goal}}
**Forbidden Phrases:**
{{explicit list, with the "why" for each}}
**Tone Example (Copy that captures our voice):**
> {{a real example line that passes the voice test}}
Never write silently — this is a shared source of truth every downstream writing skill reads.
Step 5 — Learning Close.
Append a row to /context/skill-sessions.md:
skill: brand-voice
session_date: {{date}}
pattern: "{{what surprised you, a tone-drift pattern AUDIT caught, or
'none' if nothing notable happened — never skip the row}}"
source: {{surprised/wrong/missing/n.v.t.}}
Outputs
- Brain Section 4 deepened in place (on confirmation only)
- A stated voice test sentence, persona tone profiles, channel table, and forbidden-language list — not buried in prose
- Session logged to
/context/skill-sessions.md - External side effects: n.v.t.
- Next skill: check
next-skill-map.mdfor "After brand-voice" and surface that prompt.
Verification
- Brand voice stated as one paragraph — the anchor everything attaches to
- Every persona tone profile is complete with at least one concrete Do and Don't example — no abstract-only instructions survive
- Channel table populated only for channels actually in use, persona takes precedence over channel
- Forbidden language list is explicit and named, not implied
- One-sentence voice test passes across every profile before delivery
- Brain Section 4 write shown to the user before it happens, written only on confirmation
- Session logged with all four fields,
pattern: nonewritten explicitly if nothing notable happened — the row is never skipped
Do Not Use For
positioning-messaging — when the task is producing the positioning statement or messaging hierarchy itself, not the voice it should be written in. Run this skill first if Section 4 is thin, then that one.
product-marketing-context — when the task is the full brain build from zero, or any section other than 4
buyer-personas — when the task is mapping who's in the room, not how to sound when writing to them
market-context — when the task is why now, not how to sound saying it
Operating Rules
- Load brain Section 4 first. Don't re-ask what's already answered.
- Never write to Section 4 without showing the exact before/after first. No silent writes, ever.
- Never pre-fill the buying committee. Every committee is different;
pre-assumed personas produce generic tone guidance. If a recent
buyer-personassession exists, load it — don't guess. - Every Do/Don't needs an example. Abstract instructions don't survive contact with a blank page.
- Persona beats channel when both apply. Channel adapts voice, never replaces persona tone.
- Reject generic personality traits. If a competitor could claim the same 3-4 words, push for specificity before encoding.
- Run the one-sentence voice test on every profile before delivery. Same company, different room — or it doesn't ship.
Quality Gate
| Check | Standard | Pass = |
|---|---|---|
| Brand personality specific | Not competitor-claimable; has a reference brand | Yes |
| Persona profiles complete | Every profile has Do/Don't with examples | Yes |
| Channel table populated | Only for channels in active use | Yes |
| Forbidden language explicit | Named list, not implied | Yes |
| Voice test passes | Every profile passes the one-sentence test | Yes |
| Confirmation before write | Exact before/after shown, user confirmed | Yes |
| Learning Close complete | Four-field row appended, never skipped | Yes |
Commands
/build
Run full BUILD: personality, edges, persona tone mapping, channel table, forbidden language, voice test.
/update
Refresh Section 4 after a new persona, new channel, or brand evolution — asks only for what's new.
/audit
Score 5-10 recent copy samples across 3+ channels against the four tone dimensions per persona. Identify drift patterns and recommend targeted updates — not a full rebuild unless drift is systemic.
/apply [persona] [channel]
Generate on-brand copy for one persona and one channel using the current guide. Runs the voice test on the output before returning it.