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 t

By jaganpro · 1,170 installs

npx skills add jaganpro/sf-skills --skill sf-ai-agentforce-persona

Source repository · Upstream listing

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: 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 thoroughly. A good brand guide can populate identity, dimensions, phrase book, never say list, AND lexicon in a single pass. Aim to use 80%+ of actionable content. Signal Type What to Look For Maps To Voice/tone Adjectives, "we are..." statements, voice pillars ("clear, concise, authoritative") Identity traits, dimensions Negative "Never," "don't," prohibited words/phrasings ("say 'complimentary' not 'free'"), prohibited greetings Never Say List, Phrase Book Vocabulary Brand name, product lines → global. Brand "isms," preferred terms → global or per topic. Domain jargon → per topic. Preferred vs. prohibited word pairs Global Lexicon, per topic Lexicon, Never Say + Phrase Book pairs Formatting Capitalization rules, punctuation opinions (Oxford comma, em dashes), number/date/price formatting, foreign word formatting Chatting Style dimensions + custom section CTAs/interaction CTA patterns ("SHOP NOW"), promotional language rules Phrase Book + Never Say Usage rules Preposition preferences ("at [brand]" not "from [brand]"), standards that would sound wrong if violated Never Say + Phrase Book Audience Who the brand talks to, formal vs. informal examples, relationship language Design Inputs, Register, Formality If input is a prior persona.md: Extract dimensions directly. 3B: Dimension Selection Map extracted signals to the 12 framework dimensions: 1. Pre populate all 12 dimensions from the input signals 2. Override dimensions where the input provides clear signals (e.g., brand guide says "never use slang" → Formality: Formal) 3. For each dimension, show the full spectrum and indicate which value is recommended and why when there's a strong signal 3C: Confidence Annotations Mark each dimension as: Strong signal — clear evidence in input (quote or cite the source) Default — inferred from context, no direct evidence in input These annotations are shown during refinement so the designer knows where to focus. 3D: Generation From the dimension map, generate: Identity traits — 3 5 adjectives with behavioral definitions Phrase Book — example phrases tuned to all selected dimensions. Generate 2 4 phrases per category — one example is not enough to establish a pattern. Categories include: All agents: Acknowledgement, Affirmation, Apologies (for agent mistakes only — not system errors), Off Topic Redirect (steering back from out of scope requests), Welcome/Greeting External facing agents (customer, vendor, investor): Escalation/Handoff (passing to a human) Encouraging/Enthusiastic coloring: Celebrating Progress Coach register: Teaching Moments Humor ≠ None: Humor Examples (showing the humor type in context) Optional (any agent): Returning Customer Greeting (personalized re engagement) Do not include errors or system error handling in the Phrase Book — error messages are generated as required messages during encoding Never Say List — anti phrases derived from Tone Boundaries, Identity contradictions, and input's negative signals. Generate at least 5 entries — cover generic chatbot filler, register violations, and persona specific anti phrases Tone Boundaries — what the agent must never sound like Tone Flex — baseline + triggers + shift rules Negative Identity — 2 4 character level anti patterns. Generate from negative signals in the input and from Identity traits. Global Lexicon — brand name, company name, product line names, industry terms used across all topics. Values (optional) — Only if the user explicitly stated beliefs, values, or worldview. Never infer values. 3E: Name After identity traits are established: Suggest up to 3 names that distill the identity Allow the user to write their own Reassure: "You can change this later." If a name was provided in input, use it and skip this sub step. 3F: State Object Maintain the full dimension map as an explicit state object across the conversation. Every regeneration works from this state, not from conversation history. The state object contains: All 12 dimension values Confidence annotation per dimension (strong signal / default) Identity traits Negative Identity statements Values (if provided by user — never inferred) Phrase Book Never Say List Tone Boundaries Tone Flex rules Update the state object on every change. When regenerating sample dialog, read from the state object. Interaction Design These guidelines apply across all surfaces — CLI, TUI, web, IDE. Each environment adapts the patterns to its own idiom. Output before questions. Show generated content (dimensions, phrase book, tone flex) as regular output first. Then ask a concise question with short options. Never embed long content inside question labels or option descriptions — it will be truncated in constrained environments and is harder