Help us improve
Share bugs, ideas, or general feedback.
From sf-skills
Extracts and applies CMS brand guidelines (voice, tone, style, colors) to generated content. Activates when users request branded content.
npx claudepluginhub ccmalcom/sf-skills-plugin --plugin sf-skillsHow this skill is triggered — by the user, by Claude, or both
Slash command
/sf-skills:applying-cms-brandThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Universal skill for searching, extracting, and applying CMS brand guidelines to generated content.
Enforces brand guidelines on sales/marketing content like emails, proposals, pitch decks, and posts by loading from session, files, or user, applying voice/tone, and validating.
Generates user-level brand guidelines skill through phased workflow: ingest assets like websites/docs/images, interactive discovery, synthesize identity, output SKILL.md for enforcement. Activates on brand queries.
Generates a brand.md file with Strategy, Voice, and Visual layers. Detects parent brand files for hierarchical product branding. Use when asked to create brand identity or strategy.
Share bugs, ideas, or general feedback.
Universal skill for searching, extracting, and applying CMS brand guidelines to generated content.
This skill is for APPLYING existing brand guidelines from Salesforce CMS to content you generate.
Use this skill when the user wants to:
DO NOT use this skill when the user wants to:
CRITICAL: You must retrieve brand instructions BEFORE generating or modifying any brand.
When a user requests branded content:
Never generate content first and retrofit branding later. Brand instructions must inform content generation from the start.
Copy this checklist and track your progress:
CMS Branding Progress:
- [ ] Step 1: Determine if brand is already identified or needs search
- [ ] Step 2: Search for brands (if needed) and present options to user
- [ ] Step 3: Extract brand instructions for the selected brand
Check if the user has already specified which brand to use:
Brand is known (user named it, or only one brand exists):
Brand is unknown (user says "apply my brand" without specifying which):
Tool: search_brands
Process:
{
"inputs": [{
"searchQuery": "keyword or brand name"
}]
}
search_brands with the querymanagedContentId — Unique ID (use this for extraction in Step 3)managedContentKey — Content key identifiertitle — Brand display namecontentUrl — URL to the brand contenttotalResults — Number of brands foundIf multiple brands found, use ask_followup_question to present options:
I found [N] brands in your CMS. Which one should I apply?
1. [Brand Title 1]
2. [Brand Title 2]
3. [Brand Title 3]
Which brand would you like to use?
If one brand found, confirm with the user:
I found the brand "[Brand Title]". Should I apply this brand's guidelines to the content?
If no brands found:
No brands found in Salesforce CMS. To use branding:
1. Create a brand in Salesforce CMS (Content Type: sfdc_cms__brand)
2. Provide brand guidelines directly in this conversation
Would you like to proceed without CMS branding, or provide guidelines manually?
Never auto-select a brand without confirmation. Always wait for user choice.
Tool: get_brand_instructions
Process:
Call get_brand_instructions — This retrieves the branding extraction prompt template
Parse the response:
promptBody — Contains the full brand instruction prompt with extraction and application rulesFollow the instructions in promptBody — The prompt template contains specific guidance on:
The extracted brand instructions typically include:
| Property | Description |
|---|---|
| Brand Voice | How the brand speaks (e.g., professional, friendly, authoritative) |
| Brand Tone | Emotional quality of communication (e.g., confident, warm, empathetic) |
| Key Messages | Core messaging pillars and value propositions |
| Content Rules | Dos and don'ts for content generation |
| Style Guidelines | Typography, color, spacing preferences |
| Guardrails | Hard restrictions on language, topics, or claims |
| Error | Response |
|---|---|
search_brands unavailable | "Brand search is unavailable. Please provide your brand name or guidelines directly." |
get_brand_instructions unavailable | "Cannot retrieve brand instructions. Please share your brand guidelines in this conversation and I'll apply them manually." |
| Org lacks Vibes branding | "CMS branding is not enabled for this org. Contact your admin to enable the Agentforce Vibes branding feature." |
| Permission denied | "You don't have permission to access CMS brands. Ensure you have Managed Content Authoring permission." |
| Brand extraction returns empty | "The brand exists but has no configured guidelines. Please add brand properties in CMS or provide guidelines here." |
Never silently fail. Always inform the user and offer alternatives.