sf-ai-agentforce-persona
Deep persona design for Agentforce agents with 50-point scoring. TRIGGER when: user designs agent personas, defines agent personality/identity, creates persona documents, encodes persona into Agentforce Builder fields or Agent Script, translates brand guidelines to agent voice, or asks about agent tone/voice/register. DO NOT TRIGGER when: building agent metadata (use sf-ai-agentforce), testing agents (use sf-ai-agentforce-testing), or Agent Script DSL (use sf-ai-agentscript).
What this skill does
# Agent Persona Design
## How to Use
This skill designs an AI agent persona through a fast input-to-sample-dialog loop. Provide any starting input — a brand guide PDF, a URL, a prior persona document, or a text description — and the skill drafts a complete persona, shows you how the agent sounds in sample dialog, and lets you refine until it's right.
**What it produces:**
- A persona document (`_local/generated/[agent-name]-persona.md`) defining who the agent is, how it sounds, and what it never does
- Scoring available on request (50-point rubric)
- Encoding available as a separate workflow (persona → tool-specific field values)
**What it drives downstream:** The persona document feeds into conversation design and Agentforce encoding. Those are separate steps — this skill defines the *persona*, not dialog flows or field configurations.
**Session resumption:** If you stop mid-workflow, your partial progress is preserved in the conversation and can be resumed.
## When to Use This Skill
- Designing a new Agentforce agent and need to define its personality before building
- Retrofitting persona consistency onto an existing agent whose tone is inconsistent
- Translating brand guidelines or tone documents into a structured persona
- Aligning stakeholders on what an agent should sound like before development begins
- Documenting an agent's voice for handoff between design and implementation teams
**Scope boundary:** This skill defines WHO the agent is. It does not define dialog flows, utterance templates, or interaction branching — those belong in conversation design.
**Delegate elsewhere when:**
- building agent metadata, topics, or actions → [sf-ai-agentforce](../sf-ai-agentforce/SKILL.md)
- testing finished agent behavior → [sf-ai-agentforce-testing](../sf-ai-agentforce-testing/SKILL.md)
- encoding deterministic `.agent` logic or FSM behavior → [sf-ai-agentscript](../sf-ai-agentscript/SKILL.md)
## Framework Reference
Read `references/persona-framework.md` for the full framework. It defines:
- **Identity** — 3-5 personality adjectives that anchor every other decision
- **12 dimensions** across 5 categories:
- **Register** — Subordinate / Peer / Advisor / Coach
- **Voice** — Formality, Warmth, Personality Intensity (3 independent dimensions)
- **Tone** — Emotional Coloring, Empathy Level (+ Tone Boundaries, Tone Flex)
- **Delivery** — Brevity, Humor
- **Chatting Style** — Emoji, Formatting, Punctuation, Capitalization
- **Phrase Book & Never-Say List** — what to say and what to never say
- **Tone Flex** — how tone shifts by context
- **Lexicon** — per-topic vocabulary
Dimensions are ordered by dependency — upstream choices constrain downstream ones. Constraint notes in the framework explain how earlier choices pull later ones. Constraints are recommendations, not hard locks — any combination is valid.
---
## Entry Point Detection
Detect the user's intent from their opening message:
- **User provides brand input, text description, or no document** → **Design flow** (below)
- **User provides a completed persona.md document and asks to encode** → **Encode flow** (below)
- **User provides a persona.md + a list of topics or actions** → **Encode flow**
- **User provides a completed persona.md without stating intent** → Show a compact summary of the loaded persona, then offer the hub menu (refine, score, encode). Do not assume encode.
- **Ambiguous** → Ask: "Are you designing a new persona or encoding an existing one for Agentforce?"
---
## Design Flow
Two phases: **Phase 1 (Essentials)** gets to sample dialog as fast as possible. **Phase 2 (Electives)** lets the user choose what to do next.
```
PHASE 1: INPUT → CONTEXT → DRAFT → PERSONA → SAMPLE DIALOG
│
PHASE 2: ┌─────┴─────┐
│ HUB MENU │
└─────┬─────┘
┌───────────┼───────────┐
│ │ │
Refine Explore Export
(identity, (different (download,
dimensions, scenario) score,
phrase book, encode)
never-say,
tone flex,
lexicon)
```
### Phase 1: Essentials
#### Step 1: Input
Accept any starting input. No detection question needed — accept whatever the user provides.
**Accepted inputs:**
- Brand guide or tone-of-voice document (PDF, text)
- Organization URL
- Prior persona document (persona.md from a previous session)
- Free-text description (e.g., "a sales coach who talks like Crocodile Dundee")
- Existing agent system prompt or Agent Script file
- Any combination of the above
**If the user provides nothing** (invokes the skill without additional input):
> "Share something to get started — a brand guide, a URL, or just describe the agent in your own words. I'll draft a persona and show you how it sounds in conversation."
Do NOT ask a detection question. Accept whatever arrives and proceed.
#### Step 2: Minimal Context
Collect only what the input doesn't already answer. **Every question is skippable.** Zero questions is valid — if the input provides enough signal, skip directly to Draft.
**Context signals to extract or ask about (priority order):**
1. **Company** — who they are, what they do, who they serve. If the user provided a brand guide or URL, extract this — don't re-ask.
2. **Audience** — who the agent serves: internal employee, external customer, partner, vendor, investor, or other. Affects register, formality, warmth. If the user says "internal sales coach," audience is already answered.
3. **Modality** — how the agent communicates: chat, email, telephony, multimodal, or other. Affects Chatting Style, Brevity, and whether emoji makes sense. Multiple modalities are valid.
4. **Primary language** — affects formality norms and cultural adaptation.
5. **At least 1 use case or JTBD** — needed to generate meaningful sample dialog.
**Do NOT collect:** interaction model (agent design, not persona), agent type (agent design, not persona), topic list, agent name (comes after identity).
**Extraction before asking:** Parse the user's input for context signals before deciding what to ask. "Design an internal sales coach persona for Buc-ee's" already answers audience (internal), role (sales coach), and implies a brand context. Don't re-ask what's already given.
**May ask 1-2 clarifying questions** to surface tensions in the input (e.g., "Your brand guide emphasizes both 'bold irreverence' and 'trusted expertise' — which should win when they conflict?"). But every question is skippable.
#### One-Shot vs. Wizard
After extracting context, assess the richness of the input:
- **Rich input** (brand guide PDF, detailed description, prior persona, URL with strong brand copy): Offer the user a choice — "I have strong signals — I can draft the full persona now and show you how it sounds, or walk through each dimension category if you prefer." Default to **one-shot**: draft everything silently, present the persona, then show sample dialog.
- **Minimal input** (brief description, just a company name): Default to **wizard**: ask context questions, walk through dimensions by dependency tier.
- **Blank slate** (no input at all): Prompt for input first, then wizard path.
Either path leads to the same output. The user can always override — a one-shot user can refine afterward, and a wizard user can skip ahead.
#### Step 3: Draft
This step is the skill's intelligence — it must execute explicitly as specified below.
##### 3A: Input Parsing
Extract persona signals from the user's input. Brand guides are often much richer than they appear — mine them thorRelated in Ads & Marketing
ads
IncludedMulti-platform paid advertising audit and optimization skill. Analyzes Google, Meta, YouTube, LinkedIn, TikTok, Microsoft, and Apple Ads. 250+ checks with scoring, parallel agents, industry templates, and AI creative generation.
banana
IncludedAI image generation Creative Director powered by Google Gemini Nano Banana models. Use this skill for ANY request involving image creation, editing, visual asset production, or creative direction. Triggers on: generate an image, create a photo, edit this picture, design a logo, make a banner, visual for my anything, and all /banana commands. Handles text-to-image, image editing, multi-turn creative sessions, batch workflows, and brand presets.
rpg-migration-analyzer
IncludedAnalyzes legacy RPG (Report Program Generator) programs from AS/400 and IBM i systems for migration to modern Java applications. Extracts business logic from RPG III/IV/ILE source code, identifies data structures (D-specs), file operations (F-specs), program dependencies (CALLB/CALLP), and converts RPG constructs to Java equivalents. Generates migration reports, complexity estimates, and Java implementation strategies with POJO classes, JPA entities, and service methods. Use when modernizing AS/400 or IBM i legacy systems, analyzing RPG source files (.rpg, .rpgle, .RPGLE), converting RPG to Java, mapping data specifications to Java classes, planning legacy system migration, or when user mentions RPG analysis, Report Program Generator, RPG III/IV/ILE, AS/400 modernization, IBM i migration, packed decimal conversion, or mainframe application rewrite.
brand-library-architect
IncludedBuild a complete brand library for a product — visual asset render pipeline, brand documentation set (BRAND, COPY, MANIFESTO, BIOS, FAQ, GLOSSARY, TONE, PRICING), open-source convention files (README, CONTRIBUTING, SECURITY, CODE_OF_CONDUCT), and a self-contained press kit. This skill should be used when the user asks to "build a brand library / brand kit / press kit / brand assets" for a product, "set up a brand library workflow," "create a positioning manifesto plus visual identity," or any combination of brand documentation + visual asset pipeline. Apply phase-by-phase or run end-to-end. Templates are product-agnostic and use {{TOKEN}} placeholders the skill prompts the user to fill.
writing-tech-post
IncludedAuthors engineering blog posts end-to-end: launch deep-dives, incident postmortems, architecture migrations, performance case studies, tutorials, AI/agent system writeups, security disclosures, and research-to-product translations. Picks the correct archetype, plans the abstraction ladder, enforces an evidence cadence (diagrams, benchmarks, profiles, traces, code, ablations), tunes voice against publisher house styles (Datadog, Vercel, GitHub, AWS, Meta, Cloudflare, Jane Street), and runs a pre-publish gate for narrative momentum and disclosure ethics. Use when drafting a new engineering post, restructuring a draft that feels flat, deciding which evidence form belongs where, validating that depth and product context are balanced, or preparing a postmortem, migration, or performance narrative for external publication. Do not use for API reference documentation, README authoring, marketing copy, release notes, generic SEO content, ghost-written executive thought leadership, or non-engineering long-form essays.
blog-google
IncludedGoogle API integration for blog performance: PageSpeed Insights, CrUX Core Web Vitals with 25-week history, Search Console performance, URL Inspection, Indexing API, GA4 organic traffic, NLP entity analysis for E-E-A-T, YouTube video search for embedding, and Google Ads Keyword Planner. Progressive feature availability based on credential tier (API key, OAuth/service account, GA4, Ads). Shares config with claude-seo at ~/.config/claude-seo/google-api.json. Use when user says "google data", "page speed", "core web vitals", "search console", "indexation", "GA4", "keyword research", "nlp entities", "blog performance", "youtube search", "google api setup".