Agent skill · Documentation

blog-brand

Establish durable brand and voice context for cross-skill consumption. Generates BRAND.md (audience, positioning, do/don't editorial rules, taboo phrases, competitor differentiation) and VOICE.md (existing persona JSON re-expressed as readable prose), both written to the project root. When present, all blog sub-skills auto-load these files before writing or reviewing. Pairs with blog-persona, which manages the structured persona JSON. Use when user says "blog brand", "create brand context", "brand voice doc", "BRAND.md", "VOICE.md", "establish editorial brand", "brand guidelines for blog".

Infrasity-Labsgithub.com/Infrasity-LabsGitHub ↗
claude-codeMIT
Install
npx skills add Infrasity-Labs/dev-gtm-claude-skills --skill blog-brand --agent claude-code

Same command for any agent — swap --agent for codex, cursor, copilot.

Facts
Files in the skill folder: 1
SKILL.md size: 8 KB
Bundled scripts: none
Path: .claude/skills/blog-brand/SKILL.md
Open the folder on GitHub →
Where it comes from
Stars: 97
Language: Python

Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.

From the SKILL.md

# Blog Brand: Durable Editorial Context Generates two project-root files that every blog sub-skill auto-loads when present: - `BRAND.md`: who the audience is, what the brand stands for, what to never say - `VOICE.md`: how the brand sounds, structurally and lexically These provide persistent editorial context that survives across sessions and propagates to every command. ## Why this exists Today, persona JSON (from `blog-persona`) is loaded by some skills and not others. Topic-cluster context lives inside cluster vaults. Competitor positioning lives nowhere. Each blog command re-derives "what is the brand" from whatever context it has. `BRAND.md` and `VOICE.md` fix this: one canonical source, loaded by the `blog` orchestrator at the start of every command. When neither file exists, behavior is unchanged. Backward compatible. ## Commands | Command | Purpose | |---|---| | `/blog brand init` | Interactive interview, writes BRAND.md and VOICE.md to project root | | `/blog brand show` | Display current contents (or report missing) | | `/blog brand update` | Re-run the interview with current values as defaults | ## Init Workflow Run the 5-step interactive interview. Ask each step, wait fo

What's inside
Steps it walks through
  1. Why this exists
  2. Commands
  3. Init Workflow
  4. Step 1: Audience
  5. Step 2: Positioning
  6. Step 3: Editorial rules
  7. Step 4: Topic boundaries
  8. Step 5: Voice (auto-fill from blog-persona if present)
  9. Output Files
  10. BRAND.md template
  11. VOICE.md template
  12. Show Workflow
  13. Update Workflow
  14. Integration with the blog orchestrator
More from dev-gtm-claude-skills
All skills →
About this skill
What does the blog-brand skill do?

Establish durable brand and voice context for cross-skill consumption. Generates BRAND.md (audience, positioning, do/don't editorial rules, taboo phrases, competitor differentiation) and VOICE.md (existing persona JSON re-expressed as readable prose), both written to the project root. When present, all blog sub-skills auto-load these files before writing or reviewing. Pairs with blog-persona, which manages the structured persona JSON. Use when user says "blog brand", "create brand context", "brand voice doc", "BRAND.md", "VOICE.md", "establish editorial brand", "brand guidelines for blog".

How do I install it?

Run `npx skills add Infrasity-Labs/dev-gtm-claude-skills --skill blog-brand --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.

Where does this skill come from?

From Infrasity-Labs/dev-gtm-claude-skills, a repository with 97 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.

Is a popular skill a good skill?

Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.

Keep going