关于 sf-ai-agentforce-persona
Agent Persona Design 是一项技能,可根据品牌指南、网址或文字描述等输入,设计 Agentforce Agent 的身份、表达方式和边界。它会生成角色文档与示例对话,并提供独立的评分和编码流程。
主要功能
- 01根据多种来源起草角色设定
- 02定义身份与沟通维度
- 03生成示例对话供评审
- 04通过迭代流程完善角色设定
- 05导出角色文档
适用场景
- 01在构建 Agentforce Agent 前设计角色
- 02使 Agent 的语气符合品牌指南
- 03为团队交接记录现有 Agent 的表达方式
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ jaganpro/ sf-skills --skill sf-ai-agentforce-persona安装后在 Claude Code 中输入/sf-ai-agentforce-persona确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
CREDITS.mdLICENSEREADME.mdassets/persona-encoding-template.mdpersona-template.mdsample-dialog-template.mdreferences/persona-encoding-guide-voice.mdpersona-encoding-guide.mdpersona-framework.md详细介绍
Agent 人设设计
使用方法
此技能通过快速的输入到示例对话循环来设计 AI Agent 人设。提供任意起始输入——品牌指南 PDF、URL、先前的人设文档或文本描述——此技能便会起草一份完整的人设,展示 Agent 在示例对话中的表现,并让你不断完善,直至满意。
生成内容:
- 人设文档(
_local/generated/[agent-name]-persona.md),定义 Agent 是谁、说话风格以及绝不会做什么 - 按需提供评分(50 分制评分标准)
- 可通过单独的工作流进行编码(人设 → 特定工具的字段值)
后续用途: 人设文档将用于对话设计和 Agentforce 编码。这些是单独的步骤——此技能定义的是人设,而不是对话流程或字段配置。
会话恢复: 如果你在工作流中途停止,已完成的部分会保留在对话中,可在之后继续。
何时使用此技能
- 设计新的 Agentforce Agent,并需要在开始构建前定义其个性
- 为语气不一致的现有 Agent 补充统一的人设
- 将品牌指南或语气文档转化为结构化人设
- 在开发开始前,让利益相关方就 Agent 应有的说话风格达成一致
- 为设计团队与实施团队之间的交接记录 Agent 的表达风格
范围界定: 此技能定义 Agent 是谁。它不定义对话流程、话语模板或交互分支——这些属于对话设计。
以下情况请委派给其他技能:
- 构建 Agent 元数据、主题或操作 → sf-ai-agentforce
- 测试已完成的 Agent 行为 → sf-ai-agentforce-testing
- 编码确定性的
.agent逻辑或 FSM 行为 → sf-ai-agentscript
框架参考
阅读 references/persona-framework.md 以了解完整框架。框架定义了:
- 身份 — 3-5 个个性形容词,为其他每项决策奠定基础
- 12 个维度,分为 5 个类别:
- 关系定位 — 下属 / 同伴 / 顾问 / 教练
- 声音 — 正式程度、亲和力、个性强度(3 个独立维度)
- 语气 — 情绪色彩、共情程度(另含语气边界、语气弹性)
- 表达方式 — 简洁程度、幽默感
- 聊天风格 — 表情符号、格式、标点、大小写
- 常用语与禁用语列表 — 应说什么,以及绝不应说什么
- 语气弹性 — 语气如何随情境变化
- 词汇表 — 各主题对应的词汇
各维度按依赖关系排序——前置选择会限制后续选择。框架中的约束说明会解释较早的选择如何影响后续选择。这些约束是建议,而非硬性限制——任何组合都有效。
入口意图判定
根据用户的开场消息判断其意图:
- 用户提供品牌输入、文本描述或未提供文档 → 设计流程(见下文)
- 用户提供已完成的 persona.md 文档并要求进行编码 → 编码流程(见下文)
- 用户提供 persona.md 和主题或操作列表 → 编码流程
- 用户提供已完成的 persona.md,但未说明意图 → 显示已加载人设的精简摘要,然后提供主菜单(完善、评分、编码)。不要默认选择编码。
- 意图不明确 → 询问:“你是要设计新的人设,还是要为 Agentforce 编码现有的人设?”
设计流程
分为两个阶段:**阶段 1(核心)**尽快进入示例对话。**阶段 2(可选)**让用户选择下一步操作。
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)
阶段 1:核心
步骤 1:输入
接受任何初始输入。无需询问识别问题——用户提供什么都可以接受。
接受的输入:
- 品牌指南或语气风格文档(PDF、文本)
- 组织网址
- 先前的角色文档(上一会话中的 persona.md)
- 自由文本描述(例如:“一位说话风格像 Crocodile Dundee 的销售教练”)
- 现有 Agent 系统提示词或 Agent Script 文件
- 以上任意组合
如果用户没有提供任何内容(在没有附加输入的情况下调用此技能):
“分享一些内容即可开始——品牌指南、网址,或者用自己的话描述一下这个 Agent。我会起草一份角色设定,并展示它在对话中的表现。”
不要询问识别问题。接受用户提供的任何内容并继续。
步骤 2:最少背景信息
只收集输入中尚未回答的信息。每个问题都可以跳过。 不问任何问题也可以——如果输入提供了足够的信息,就直接进入起草环节。
需要提取或询问的背景信息(按优先级排列):
- 公司——公司是谁、做什么、服务哪些对象。如果用户提供了品牌指南或网址,就从中提取,不要再次询问。
- 受众——Agent 服务的对象:内部员工、外部客户、合作伙伴、供应商、投资者或其他对象。这会影响措辞、正式程度和亲和力。如果用户说“内部销售教练”,受众就已经明确。
- 沟通方式——Agent 如何沟通:聊天、电子邮件、电话、多模态或其他方式。这会影响聊天风格、简洁程度,以及是否适合使用 emoji。可以有多种沟通方式。
- 主要语言——会影响正式程度规范和文化适配。
- 至少 1 个使用场景或 JTBD——生成有意义的对话示例所必需。
不要收集: 交互模型(属于 Agent 设计,而非角色设定)、Agent 类型(属于 Agent 设计,而非角色设定)、主题列表、Agent 名称(身份确定后再定)。
先提取,再提问: 在判断要问什么之前,先解析用户的输入,提取背景信息。“为 Buc-ee's 设计一个内部销售教练角色”已经说明了受众(内部)、角色(销售教练),并暗示了品牌背景。不要重复询问已有信息。
可以提出 1-2 个澄清问题,以明确输入中存在的取舍(例如:“您的品牌指南既强调‘大胆无畏’,又强调‘值得信赖的专业能力’——两者冲突时应以哪一项为准?”)。但每个问题都可以跳过。
一次性生成与向导模式
提取背景信息后,评估输入的丰富程度:
- 丰富输入(品牌指南 PDF、详细描述、先前的角色设定、品牌文案鲜明的网址):让用户选择——“我已经获得了充足的信息,可以现在起草完整的角色设定并展示它的表现;如果您愿意,也可以逐项了解各个维度类别。”默认采用一次性生成:静默起草全部内容,呈现角色设定,然后展示对话示例。
- 极少输入(简短描述,或仅有公司名称):默认采用向导模式:询问背景信息,并按依赖层级逐步梳理各个维度。
- 空白起点(完全没有输入):先提示用户提供输入,然后进入向导流程。
两种路径都会得到相同的输出。用户始终可以调整:采用一次性生成的用户之后可以继续完善,采用向导模式的用户也可以跳过后续步骤。
步骤 3:起草
此步骤体现了该技能的智能能力——必须严格按照下方的说明明确执行。
3A:输入解析
从用户输入中提取人格信号。品牌指南往往比看起来丰富得多——请充分挖掘。一份好的品牌指南可以一次性填充身份特质、维度、短语手册、禁用表达清单和词汇表。目标是利用 80% 以上的有效内容。
| 信号类型 | 查找内容 | 对应项 |
|---|---|---|
| 语气/风格 | 形容词、“我们是……”之类的表述、语气支柱(“清晰、简洁、权威”) | 身份特质、维度 |
| 负面要求 | “绝不”“不要”、禁用词语/表达(“说‘赠送’,不要说‘免费’”)、禁用问候语 | 禁用表达清单、短语手册 |
| 词汇 | 品牌名称、产品线 → 全局;品牌特色用语、偏好术语 → 全局或按主题;领域术语 → 按主题;偏好词与禁用词的配对 | 全局词汇表、按主题划分的词汇表、禁用表达清单与短语手册中的词语配对 |
| 格式 | 大小写规则、标点偏好(牛津逗号、长破折号)、数字/日期/价格格式、外来词格式 | 对话风格维度 + 自定义部分 |
| 行动号召/互动 | 行动号召模式(“立即购买”)、促销用语规则 | 短语手册 + 禁用表达清单 |
| 使用规则 | 介词偏好(用“at [brand]”,而非“from [brand]”)、违反时会显得不妥的标准 | 禁用表达清单 + 短语手册 |
| 受众 | 品牌的沟通对象、正式与非正式表达示例、关系用语 | 设计输入、语域、正式程度 |
如果输入是先前的 persona.md: 直接提取各项维度。
3B:维度选择
将提取的信号映射到框架的 12 个维度:
- 根据输入信号预先填充全部 12 个维度
- 在输入提供明确信号时覆盖相应维度(例如,品牌指南写明“绝不使用俚语” → 正式程度:正式)
- 对每个维度展示完整范围;存在强信号时,标明建议值及原因
3C:置信度注释
将每个维度标记为:
- 强信号 — 输入中有明确依据(引用或注明来源)
- 默认值 — 根据上下文推断,输入中没有直接依据
这些注释会在优化过程中显示,让设计者知道应重点关注哪些内容。
3D:生成
根据维度映射生成:
- 身份特质 — 3-5 个形容词,并附行为定义
- 短语手册 — 根据所有已选维度调整示例短语。每个类别生成 2-4 条短语——仅提供一个示例不足以体现模式。类别包括:
- 所有 Agent: 确认收到、肯定回应、道歉(仅针对 Agent 的错误,不包括系统错误)、偏题引导(将对话引回范围内)、欢迎/问候
- 面向外部的 Agent(客户、供应商、投资者): 升级/转交(转交给人工)
- 鼓励/热情风格: 庆祝进展
- 教练语域: 教学时刻
- 幽默 ≠ 无: 幽默示例(在语境中展现幽默类型)
- 可选(任何 Agent): 回访客户问候(个性化重新互动)
- 不要在短语手册中加入错误或系统错误处理——错误消息会在编码过程中按需生成
- 禁用表达清单 — 根据语气边界、身份矛盾和输入中的负面信号提炼反向表达。至少生成 5 项——涵盖通用聊天机器人套话、语域违规和特定人格的反向表达
- 语气边界 — Agent 绝不能表现出的语气
- 语气弹性 — 基线 + 触发条件 + 转变规则
- 负面身份特质 — 2-4 项角色层面的反模式。根据输入中的负面信号及身份特质生成
- 全局词汇表 — 在所有主题中使用的品牌名称、公司名称、产品线名称和行业术语
- 价值观 (可选) — 仅当用户明确陈述信念、价值观或世界观时才填写。绝不推断价值观。
3E:名称
确定身份特征后:
- 最多建议 3 个能够提炼身份的名称
- 允许用户自己填写名称
- 提醒用户:“之后可以更改。”
如果输入中已提供名称,则使用该名称并跳过此子步骤。
3F:状态对象
在整个对话中,将完整的维度映射作为显式的状态对象予以维护。每次重新生成都应基于此状态,而非对话历史。状态对象包含:
- 全部 12 个维度的值
- 每个维度的置信度标注(强信号 / 默认值)
- 身份特征
- 负面身份陈述
- 价值观(仅当用户提供时使用,绝不推断)
- 短语库
- 禁用表达列表
- 语气边界
- 语气灵活规则
每次发生更改时都更新状态对象。重新生成示例对话时,应读取状态对象。
交互设计
以下指南适用于所有界面——CLI、TUI、Web、IDE。每种环境都应根据自身习惯调整这些模式。
先输出,再提问。 先将生成的内容(维度、短语库、语气灵活规则)作为常规输出展示。然后提出简洁的问题,并提供简短选项。不要在问题标签或选项说明中嵌入长篇内容——在受限环境中,这些内容会被截断,而且无论在哪种环境中都难以阅读。
合并互不依赖的问题。 如果多个问题之间没有依赖关系——也就是说,任何一个答案都不会限制另一个答案——就应一起提出,而不是逐个提问。这样可以减少往返,让流程更顺畅。例如:
- 上下文信号(模态 + 用例)彼此独立——应一起询问
- 语气维度(正式程度、亲和度、个性强度)彼此独立——应一起询问
- 聊天风格维度(表情符号、格式、标点、大小写)彼此独立——应一起询问
- 编码上下文(工具 + 主题 + 操作)彼此独立——应一起询问
不要跨越依赖边界合并问题。 必须先确定语域,再确定语气。先确定语气,再确定基调。先确定基调,再确定表达方式。按框架的依赖顺序依次提问。
标签简短,说明置于下方。 问题选项应能在 2 秒内快速浏览。如果某个选项需要解释,应将标签放在前面,并把解释作为次级说明,而不是写成冗长的复合标签。
适当使用多选。 如果用户可以选择多个选项——例如要保留的短语库条目、要编码的主题、要针对的界面——就应允许多选,而不是反复询问同一个问题。如果环境原生支持多选,就使用该功能。如果不支持,则在输出文本中将选项列为编号列表,并请用户输入所选编号(例如:“选哪些?请输入编号:1、3、5”)。无论采用哪种方式,用户都可以选择多个选项并一次性确认。
使用紧凑的输出格式。 维度应使用表格和结构化列表呈现,而不是用段落描述。每个维度单独占一行,并注明值和信号标注。短语库条目按类别分组。禁用表达以紧凑列表呈现。内容密集、便于浏览,能尊重用户的时间。
明确进度。 完成某个选修步骤后,在展示主菜单之前,用一行状态摘要说明已完成和待完成的内容:
“Clover:✓ 身份 · ✓ 维度 · ✓ 短语库(18 条) · ✓ 禁用表达(8 条) · 剩余:语气灵活规则、词汇、评分、编码”
转换阶段前先做摘要。 进入评分、编码或任何新阶段之前,先简要说明当前状态,帮助用户了解进度:
“正在为 Clover 评分——同伴语域、专业、亲和、鼓励、简洁。” “正在为 Agentforce Builder 编码 Clover——外部客户、聊天。”
提示置信度。 展示拟定的人设后,指出置信度最低的 1 到 2 个维度,让用户知道应重点完善哪些内容:
“最不确定:幽默(默认为亲和——输入中没有相关信号)和表情符号(默认为实用)。如果这些维度很重要,请优先调整。”
步骤 4:展示角色设定
展示示例对话之前,先以简洁、便于浏览的格式呈现拟定的角色设定。这不是完整的角色设定文档,而是供审核的摘要。用户需要先看到生成的内容,再了解它实际呈现的效果。
格式:
- 身份特征 — 各项特质写在一行,用圆点分隔
- 维度 — 紧凑表格:每个维度占一行,包含取值和信号标记(★ = 输入中有强烈信号,无标记 = 默认值或推断值)
- 常用语 — 按类别分组列出条目,展示实际用语
- 禁用语 — 简明列表
- 语气边界 — 简明列表
- 语气灵活度 — 表格包含触发条件、措辞风格变化、共情程度变化和幽默指导
设计思路。 在角色设定摘要前,用简短的说明介绍关键设计选择——为什么采用这些身份特质,为什么选择这种语域,以及输入中的哪些内容影响了主要决策。这是设计伙伴在解释自己的思路,而不是罗列数据。控制在 2-4 句话。这段说明只是对话上下文,不会写入角色设定文档。
示例:“我选择了亲切、沉稳的特质,因为高端酒店服务需要在压力下保持从容。这里采用平等交流的语域,而非从属语域——Coral Cloud 的品牌温暖而亲切,不是低声下气。采用鼓励性的措辞也很合适,因为度假村希望客人感到兴奋,而不只是获得服务。”
展示角色设定摘要后,指出置信度最低的维度(参见“交互设计”中的置信度提示),让用户知道如果想进一步调整,可以重点关注哪些方面。
然后直接进入示例对话——展示角色设定和示例对话之间无需询问确认。角色设定能帮助用户理解示例。
步骤 5:示例对话
根据步骤 2 中的使用场景,展示几轮对话(3-5 轮交流)。
要求:
- 对话应展现角色设定的实际效果——选词、语气、简洁度、幽默感和格式
- 至少包含一个“有看点”的交流:错误、澄清或情绪时刻,而不只是顺利进展的情况
- 这些 Agent 都不会说“您好!今天有什么可以帮您?”——示例应清楚展现角色设定带来的影响
- 对于语音/电话模态,从包含 AI 披露信息的欢迎语开始对话,让用户看到它在实际情境中的效果
**展示示例对话后,**征求反馈。提示语应鼓励用户优先用自由文本进行调整——“告诉我需要改什么——‘让语气更温暖些’‘删掉幽默感’‘别这么说’——也可以选择一个选项。”结构化选项应限于:
- “看起来不错——继续看看下一步”
- “试试不同的场景”
- (始终提供自由文本输入)
当用户输入自然语言调整(“让语气更温暖些”“不该说‘这确实令人沮丧’”)时,使用对话式编辑映射(参见“优化”部分)应用调整,重新生成示例对话并再次呈现。持续这一循环,直到用户表示“看起来不错”或要求打开导航菜单。不要每次调整后都跳回导航菜单。
当用户选择“看起来不错——继续”时,转入第 2 阶段,提供导航菜单。
第 2 阶段:选做项
展示示例对话后,显示进度行(参见“交互设计”)并提供下一步选项。由用户选择要做什么。完成任一选做项后,显示更新后的进度行,并再次提供导航菜单(已完成的项目除外)。由用户决定何时结束。
导航菜单选项(分组排列,便于浏览):
- “优化角色设定”——打开子菜单:身份特征、维度、常用语、禁用语、语气灵活度、词库或自由文本补充
- “试试不同的示例对话场景”
- “为角色设定评分”
- “下载角色设定文档”
- “为 Agentforce 部署进行编码”
- “我完成了”
优化
当用户选择“优化角色设定”时,显示一个子菜单:
- “身份特征”
- “维度”(显示当前值以供参考)
- “表达手册”
- “禁用表达列表”
- “语气灵活调整规则”
- “词汇表”
- “其他”(自由文本——参见下文“其他”)
两种编辑模式,随时都可使用。用户可以自由混合使用。
对话式编辑 — 用户用自然语言描述要进行的更改。将常见请求映射到具体维度的更改:
| 用户说 | 维度更改 | 另请考虑 |
|---|---|---|
| “更温暖” | 温暖度:提高一档 | 共情程度:提高一档 |
| “更冷淡”/“没那么温暖” | 温暖度:降低一档 | 共情程度:降低一档 |
| “更正式” | 正式程度:提高一档 | 语域:转向顾问型 |
| “没那么正式”/“更随意” | 正式程度:降低一档 | |
| “更简短”/“更精炼” | 简洁度:降低一档(趋向简短) | |
| “更长”/“多些细节” | 简洁度:提高一档(趋向详尽) | |
| “更有个性” | 个性强度:提高一档 | 如果幽默度为无,则考虑启用 |
| “个性少一些”/“更中性” | 个性强度:降低一档 | |
| “别那么像机器人” | 温暖度:提高 + 个性强度:提高 | |
| “更专业” | 正式程度:专业,幽默度:无或冷幽默 | 个性强度:中等 |
| “更友好” | 温暖度:提高 + 情感色彩:鼓励 | 共情程度:提高 |
| “更直接”/“更直白” | 情感色彩:趋向直率,简洁度:趋向简短 | 共情程度:趋向最低 |
| “更鼓励人” | 情感色彩:鼓励 | 共情程度:中等或敏锐 |
| “更好笑” | 幽默度:提高一档 | 如果个性强度为内敛,则提高个性强度 |
| “不要幽默” | 幽默度:无 | |
| “多用表情符号” | 表情符号:提高一档 | |
| “少用表情符号” | 表情符号:降低一档 |
当请求含义不明确时,应用主要映射并说明所做的更改,以便用户纠正。
确定性编辑 — 用户要求“显示所有设置”“显示维度表”或“让我看看详情”时启用。显示所有维度及其置信度标注。由用户选择要调整的具体维度。展示完整取值范围并突出显示当前值。调整后重新生成示例对话。
基于差异的重新生成 — 单个维度更改后:
- 明确显示更改:“温暖度:温暖 → 冷淡”
- 保持所有未更改的维度不变
- 重新生成示例对话,仅改变已更改的维度
- 说明输出中发生了哪些变化,让用户了解维度更改如何影响行为
其他(自由文本补充)
当用户想要添加的内容不属于标准框架概念时,予以接受。检查输入:
- 如果它自然对应现有框架元素(例如语气边界、表达手册条目或词汇表词条),建议将其纳入相应部分并征求用户同意。
- 如果不适合,则将用户生成的文本作为自定义章节插入角色设定文档,并确保它包含在编码输出中。
词汇表
词汇表为可选项。介绍其概念:按主题限定范围的领域词汇。收集重要词汇,尤其是特定主题相关的词汇。区分词汇表与表达手册:
- 表达手册 = Agent 在常见情境中的表达方式(确认、引导转换、庆祝)
- 词汇表 = Agent 在特定领域使用的具体词语和术语(技术术语、品牌用语、行业行话)
完成
当用户选择“我完成了”时,如果角色设定文档尚未保存,则询问是否下载。显示最终总结,说明生成了什么以及文件写入位置。顺利退出。
评分
依据 50 分制评分标准对角色文档进行评分。评分为按需进行——由用户提出请求时触发。
**评分前,**先展示简短的导览摘要(参见交互设计)。然后内嵌显示评分表。显示后,提出将评分表保存到 _local/generated/[agent-name]-persona-scorecard.md。随后返回主菜单。
为获得公正的评分,请让其他人使用评分标准评估生成的角色。
| 类别 | /10 | 标准 |
|---|---|---|
| 身份一致性 | /10 | • 特征鲜明、彼此不矛盾,并以行为定义——描述可观察到的行为,而非愿望 • 设计输入完整且一致:受众 → 语域,模态 → 聊天风格,公司 → 参照框架 |
| 维度一致性 | /10 | • 各维度与身份一致,并遵守限制 • 语气边界与情感色彩/同理心一致;语气灵活度处于合理范围内 • 聊天风格适配模态(电话场景下应弱化) |
| 行为具体性 | /10 | • 提供具体的行为示例和可测试规则 • Never-Say 至少包含 5 项(聊天机器人填充语 + 语域违规表达 + 角色特有表达) • 已填写全局词汇表 • 品牌指南:提取是否深入——是否涵盖词汇、格式、用法和行动号召? |
| 短语手册质量 | /10 | • 每个适用类别包含 2–4 条短语 • 所有角色均需包含:确认、肯定、道歉(仅限出错时)、离题引导、欢迎 • 有条件适用:升级/转交(外部),庆祝进展(鼓励型),教学时刻(教练型),幽默示例(幽默 ≠ 无) • 短语符合语域和维度 • 已纳入品牌指南内容 |
| 示例质量 | /10 | • 即使不查看维度表,也能辨认出角色 • 涵盖顺利场景 + 不确定性 + 边界场景 • 适合对应模态(电话场景:重新校准简洁程度,省略格式设置) • 自然融入品牌词汇 |
评分规则:
- 独立评估每个类别。给出分数,并用 1–2 句话说明理由。
- 标出各维度之间的不一致。区分有效的张力与矛盾。
- 如果任何类别得分低于 7 分,请提供具体的改进建议。
- 总分:45–50 分为可投入生产,35–44 分为基础扎实,25–34 分为需要修改,低于 25 分则重新开始。
编码流程
用于将现有角色文档编码为特定工具输出格式的独立入口。用户提供完整的 persona.md 后,或设计流程结束后,均可使用。
阅读 references/persona-encoding-guide.md 了解编码架构,并阅读 assets/persona-encoding-template.md 了解输出结构。语音选择和调优不属于主要编码流程——仅当模态包含电话或其他语音输出时,才将 references/persona-encoding-guide-voice.md 作为参考。
**编码前,**先展示简短的导览摘要(参见交互设计),确认 Agent 名称、编写工具、受众和模态。
编码上下文
公司、受众和模态已在设计阶段(步骤 2)收集。编码时继承这些信息,不要再次询问。只收集编码所需的信息:
- Agent 编写工具 — “您要为 Agentforce Builder 还是 Agent Script 编码?”
- 主题(可选)— “您是否定义了特定主题?按主题编码可针对每个主题调整简洁程度、语气灵活度和词汇。”如果用户提供了主题,则生成每个主题的角色说明。如果用户拒绝,则提出:“不需要,请生成几个示例。”在这种情况下,根据角色上下文推断 2-3 个合理的主题,并生成每个主题的说明,明确标注:“这些示例是根据角色上下文推断的,请替换为您的实际主题。”
- 操作(可选)— “您是否定义了特定操作?按操作编码可生成符合角色设定的加载文本,供用户在等待时查看。”如果用户提供了操作,则为每项操作生成符合角色设定的加载文本。如果用户拒绝,则提出:“不需要,请生成几个示例。”在这种情况下,根据角色上下文推断 2-3 个合理的操作,并为每项操作生成符合角色设定的加载文本,明确标注:“这些示例是根据角色上下文推断的,请替换为您的实际操作。”
用户可以先只完成全局编码,之后再补充主题和操作。
生成内容
如果使用 Agent Script
输出可直接粘贴的 YAML 代码块:
系统代码块:
config.agent_name— 角色名称。system.instructions— 将完整角色内容写成 YAML 字面块标量(|):身份、各维度的行为规则、短语库、聊天风格规则、语气规则、语气边界、禁用语列表。没有字符数限制。system.messages.welcome— 生成一条静态的、符合角色设定的欢迎消息。对于启用多模态且包含电话渠道的 Agent,生成两条:一条文本欢迎消息,以及一条更简短、针对听觉优化并包含 AI 披露的电话欢迎消息。默认使用静态消息;补充说明也可选择动态消息。system.messages.error— 生成一条(1)静态的、符合角色设定的系统错误消息。此字段不支持动态选项。
按主题覆盖(如果提供了主题):
5. 每个主题对应的 reasoning.instructions — 角色校准:简洁程度、词汇、语气灵活度、短语库条目、幽默指导、角色提醒。
6. 主题级 system: 覆盖 — 仅当某个主题的语气灵活度需要完整的系统级覆盖时才使用。很少需要。
按操作生成的加载文本(如果提供了操作):
7. 每项操作对应的 progress_indicator_message — 符合角色设定的加载文本,并设置 include_in_progress_indicator: True。
确定性响应示例:
8. 使用角色语气编写常见 if/else 分支的 | text 示例。
电话渠道调整(如果模态包含电话渠道): 9. 指令调整 — 说明简洁程度的重新校准(电话渠道下缩短一个档位)、格式限制(不使用表情符号,项目符号改为序数),以及结构化数据的任何停顿指导。
如果使用 Agentforce Builder
Agent 配置字段:
- 名称(80 个字符)— 显示字符数。
- 角色(255 个字符)— 仅提供功能摘要:Agent 的职责以及服务对象。“你是……”此处不要描述角色风格。显示字符数。
- 公司(255 个字符)— 根据第 2 步收集的公司背景信息填写。显示字符数。
- 欢迎消息(800 个字符,建议 ≤ 255)— 生成一条符合角色设定的静态欢迎消息,体现身份 + 语域 + 语音风格 + 语气 + 简洁度。对于使用电话渠道的多模态 Agent,生成两条:一条文本欢迎消息和一条更短的电话欢迎消息(针对听觉体验优化,并包含 AI 身份披露)。显示字符数。
- 错误消息— 生成一条符合角色设定的静态系统错误消息,体现正式程度 + 亲和度 + 情绪色彩 + 简洁度。
Agentforce Builder 设置: 6. 语气下拉菜单— 根据语域 + 正式程度提供建议。注明这只是粗略近似。 7. 欢迎屏幕上的对话建议— 定义了用例时开启;开放式场景时关闭。 8. Agent 回复中的对话建议— 对主动型 Agent 开启;对苏格拉底式 Agent 关闭。
全局角色设定区块: 9. 全局指令— 为专用的全局指令主题提供完整的角色设定内容。综合所有角色设定部分。
各主题的角色设定指令(如果提供了主题): 10. 为每个主题定制指令,包含简洁度校准、短语库条目、词汇表术语、语气调整触发条件和幽默指导。
加载文本: 11. 各操作的加载文本— 如果提供了具体操作,为每项操作生成符合角色设定的加载文本。如果用户选择了“生成一些示例”,则推断 2-3 个合理的操作,并为每项操作生成符合角色设定的加载文本,同时明确标注为示例。
电话场景调整(如果模态包含电话):与上文的 Agent Script 电话场景调整相同。
输出
以内嵌形式展示编码值以供审核。字符数受限的字段(名称、角色、公司、欢迎消息、错误消息)需内嵌显示并附上字符数。无字符数限制的字段(全局指令、各主题指令)过长,无法内嵌显示——请显示摘要和字符数,并将完整内容写入文件。
使用 Write 工具写入编码输出。默认路径:_local/generated/[agent-name]-persona-encoding.md。然后返回中心菜单。
输出
该技能最多生成四个 Markdown 文件:
- 角色设定文档(
_local/generated/[agent-name]-persona.md)— 遵循assets/persona-template.md结构。定义 Agent 是谁、表达方式如何,以及绝不做什么的设计文档。 - 对话示例(
_local/generated/[agent-name]-sample-dialog.md)— 遵循assets/sample-dialog-template.md结构。用于验证角色设定的产物,通过对话展示角色设定。 - 评分卡(
_local/generated/[agent-name]-persona-scorecard.md)— 50 分制评估标准。按需生成。 - 编码输出(
_local/generated/[agent-name]-persona-encoding.md)— 遵循assets/persona-encoding-template.md结构。因工具而异:Agentforce Builder 字段值和设置,或 Agent Script YAML 区块。通过 Encode 流程按需生成。