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.
Works with
AI-first code editor with Composer
Before installing skills in Cursor, ensure your development environment meets these requirements:
node --versionsf-ai-agentforce-personaExecute the skills CLI command in your project's root directory to begin installation:
Fetches sf-ai-agentforce-persona from jaganpro/sf-skills and configures it for Cursor.
The CLI shows a list of agents. Use arrow keys and space to select Cursor:
Confirm successful installation by checking the skill directory location:
Restart Cursor to activate sf-ai-agentforce-persona. Access via /sf-ai-agentforce-persona in your agent's command palette.
We perform automated surface-level scans (Gen AI Scanner, Socket, Snyk) during installation. These checks detect common vulnerabilities but do not guarantee complete security. Always review skill source code and verify the publisher's reputation before production use.
Skills execute code in your environment. Always review source, verify the publisher, and test in isolation before production.
Submit your Claude Code skill and start earning
Automate repetitive workflows and reduce manual effort
Example
Generate reports, summarize documents, draft communications
Save 3-5 hours per week on routine tasks
Learn new skills, understand complex topics, get expert guidance
Example
Explain concepts, provide examples, suggest learning resources
Accelerate learning and skill development by 2x
Enhance output quality through reviews, suggestions, and refinements
Example
Review drafts, suggest improvements, catch errors
Improve work quality by 30-40% with less effort
0
total installs
0
this week
285
GitHub stars
0
upvotes
Run in your terminal
0
installs
0
this week
285
stars
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:
_local/generated/[agent-name]-persona.md) defining who the agent is, how it sounds, and what it never doesWhat 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.
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:
.agent logic or FSM behavior → sf-ai-agentscriptRead references/persona-framework.md for the full framework. It defines:
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.
Detect the user's intent from their opening message:
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)
Accept any starting input. No detection question needed — accept whatever the user provides.
Accepted inputs:
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.
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):
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.
After extracting context, assess the richness of the input:
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.
This step is the skill's intelligence — it must execute explicitly as specified below.
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.
Map extracted signals to the 12 framework dimensions:
Mark each dimension as:
These annotations are shown during refinement so the designer knows where to focus.
From the dimension map, generate:
After identity traits are established:
If a name was provided in input, use it and skip this sub-step.
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:
Update the state object on every change. When regenerating sample dialog, read from the state object.
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 to read everywhere.
Batch independent questions. When multiple questions have no dependency relationship — meaning neither answer constrains the other — present them together rather than one at a time. This reduces round-trips and keeps the flow moving. Examples:
Do not batch across dependency boundaries. Register must be answered before Voice. Voice before Tone. Tone before Delivery. Follow the framework's dependency order for sequential questions.
Short labels, descriptions underneath. Question options should be scannable in under 2 seconds. If an option needs explanation, put the label first and the explanation as a secondary description — not a long compound label.
Multi-select when appropriate. When the user should be able to pick more than one option — phrase book entries to keep, topics to encode, surfaces to target — allow multiple selections rather than asking the same question repeatedly. If the environment supports multi-select natively, use it. If not, present options as a numbered list in output text and ask the user to type their selections (e.g., "Which ones? Type the numbers: 1, 3, 5"). Either way, the user selects multiple and confirms once.
Compact output formats. Use tables and structured lists for dimensions, not prose paragraphs. One line per dimension with value and signal annotation. Phrase book entries grouped by category. Never-say entries as a compact list. Dense, scannable output respects the user's time.
Progress awareness. Before presenting the hub menu after an elective, show a one-line status summary of what's been completed and what remains:
"Clover: ✓ Identity · ✓ Dimensions · ✓ Phrase book (18) · ✓ Never-say (8) · Remaining: tone flex, lexicon, score, encode"
Summary before transitions. Before moving into scoring, encoding, or any new phase, show a brief orientation line so the user knows the current state:
"Scoring Clover — Peer register, Professional, Warm, Encouraging, Concise." "Encoding Clover for Agentforce Builder — external customer, chat."
Confidence callouts. After presenting a drafted persona, highlight the 1-2 lowest-confidence dimensions so the user knows where to focus refinement:
"Least certain: Humor (defaulted to Warm — no signal in input) and Emoji (defaulted to Functional). Adjust these first if they matter."
Before showing sample dialog, present the drafted persona in a compact, scannable format. This is NOT the full persona document — it's a summary for review. The user needs to see what was generated before seeing it in action.
Format:
Design rationale. Before the persona summary, introduce it with a brief narrative explaining the key design choices — why these identity traits, why this register, what in the input drove the major decisions. This is a design partner explaining their thinking, not a data dump. Keep it to 2-4 sentences. This rationale is conversational context only — it does not get written to the persona document.
Example: "I went with Gracious and Composed because luxury hospitality needs poise under pressure. Peer register rather than Subordinate — Coral Cloud's brand is warm and personal, not deferential. Encouraging coloring felt right for a resort that wants guests to feel excited, not just served."
After the persona summary, note the lowest-confidence dimensions (see Confidence callouts in Interaction Design) so the user knows where to focus if they want to refine.
Then proceed directly to sample dialog — no confirmation question needed between persona presentation and sample dialog. The persona provides context for understanding the sample.
Present a few turns of conversation (3-5 exchanges) based on the use case from Step 2.
Requirements:
After presenting the sample dialog, prompt for feedback. The prompt should encourage free-text adjustments as the primary editing path — "Tell me what to change — 'make it warmer,' 'drop the humor,' 'don't say that' — or pick an option." Structured options should be limited to:
When the user types a natural language adjustment ("make it warmer," "it shouldn't say 'that's frustrating'"), apply it using the conversational editing mappings (see Refine section), regenerate sample dialog with the change, and re-present. Stay in this loop until the user says "looks good" or asks for the hub. Don't bounce to the hub after every adjustment.
When the user selects "Looks good — move on," transition to Phase 2 by offering the hub menu.
After the sample dialog, show a progress line (see Interaction Design) and offer next steps. The user picks what to do. After completing any elective, show the updated progress line and offer the hub menu again (minus completed items). The user decides when they're done.
Hub menu options (grouped for scannability):
When the user selects "Refine the persona," offer a sub-menu:
Two editing modes, both available at any time. The user can mix them freely.
Conversational Editing — The user describes changes in natural language. Map common requests to specific dimension changes:
| User says | Dimension Implementation GuidePrerequisites
Time Estimate 15-45 minutes depending on use case complexity Steps
Common Pitfalls
Best Practices✓ Do
✗ Don't
💡 Pro Tips
When to Use This✓ Use when Use when skill capabilities match your task, clear ROI on time saved, and you can validate outputs. Best for repetitive tasks, learning, and quality improvement. ✗ Avoid when Avoid when task requires deep expertise you can't validate, involves sensitive decisions, or when learning process is more valuable than speed of completion. Learning Path
Related Skillsml-paper-writing75davila7/claude-code-templates AI/MLsame category beautiful-mermaid31intellectronica/agent-skills AI/MLsame category llm-council26am-will/codex-skills AI/MLsame category brainstorming16sickn33/antigravity-awesome-skills AI/MLsame category dokie-ai-ppt11myzy-ai/dokie-ai-ppt AI/MLsame category blockchain-developer10sickn33/antigravity-awesome-skills AI/MLsame category Reviews4.7★★★★★55 reviews
showing 1-10 of 55 1 / 6 DiscussionComments — not star reviews
|
|---|