关于 sales-agentforce-pipeline-management-configure
用于在 Salesforce 组织中配置 Agentforce Pipeline Management 的技能,覆盖初始部署和修复未完成的配置。它按依赖顺序协调平台设置、字段提示词、流程、权限和 Agent 激活。
主要功能
- 01首先检查组织许可证和版本
- 02启用所需的平台设置
- 03配置选定的商机字段
- 04创建并验证提示词模板
- 05部署流程并激活 Agent
- 06支持无人值守设置和修复
适用场景
- 01在新组织中设置 Pipeline Management
- 02补全或修复部分配置
- 03选择用于商机建议的字段
- 04在 CI 或定时任务中无人值守运行
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ forcedotcom/ sf-skills --skill sales-agentforce-pipeline-management-configure安装后在 Claude Code 中输入/sales-agentforce-pipeline-management-configure确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
assets/field-completion-template.genAiPromptTemplate-meta.xmlpipeline_management_flow.flow-meta.xmlsales_management_agent.agentsales_management_agent.bundle-meta.xmlsfdx-project.jsonassets/stage-descriptions/bant.txtmeddic.txtspiced.txtexamples/custom-prompt-instructions.mdreferences/admin-communication.mdagent-creation.mdauth-and-cli.mdautomation-matrix.mdautonomous-updates.mdcanonical-agent-path.mddata-sources.mdfield-completion-prompt-template.mdfield-completion-prompts.mdflags.mdflow-clone-from-template.mdmetadata-inventory.mdopportunity-stages.mdrepair-diagnostics.mdsetup-order.mdsoap-api-enablement.mdscripts/add-field-suggestion.shCHANGES.mdcreate-agent.shcreate-flow.shdefine-agent-access.sh详细介绍
Agentforce 销售管道管理配置
在 Salesforce 组织中端到端配置 Agentforce 销售管道管理。此技能适用于全新组织(零配置)以及需要修复或补全配置的部分配置组织。
范围
- 范围内:启用 Pipeline Management、配置 Sales Management Agent、激活/自定义流(Process Field Update Suggestions、Get Opportunity Grounding Data、Get AI Recommendations from Call Transcripts)、提示词模板配置、权限集分配、数据源设置、商机阶段描述、自主字段更新配置,以及部分组织修复。
- 范围外:从头构建自定义 Agent(请使用
agentforce-generate)。Einstein Conversation Insights 或 Einstein Activity Capture 的初始配置(它们属于独立产品)。安装 Slack 应用。为 Opportunity Team Member 编写自定义 Apex 触发器。
先决条件
必须验证(脚本无法检查或更改这些内容)
- 版本:Enterprise、Performance、Unlimited 或 Developer Edition,并配有 Agentforce for Sales 附加组件(或 Agentforce 1 Sales Edition)。设置会在前置步骤(Step 0)中探测这一项——如果组织无法运行 Pipeline Management,就会立即显示许可证/版本提示并失败,不会再询问其他内容;但版本/许可证的配置仍由管理员负责。
- 用户权限:执行用户需要
View Setup和(Modify All Data或Customize Application)、Manage AI Agents和(Manage Agentforce Employee Agents或Customize Application),以及Assign Permission Sets。
由 scripts/setup-all.sh 自动启用
设置脚本会自动切换以下设置——运行脚本前不要手动启用这些设置。
- Einstein Generative AI(
EinsteinGptSettings.enableEinsteinGptPlatform)——必需;必须在 Agentforce Agent 启用前开启。 - Agentforce Agent(
EinsteinCopilotSettings.enableEinsteinGptCopilot)——必需;依赖 Einstein Generative AI。 - Agentforce Studio / Agent Platform(
AgentPlatformSettings.enableAgentPlatform)——必需;依赖 Agentforce Agent,且是 Deal Agent 的启用条件。此设置关闭时,Core 会拒绝SalesDealAgentSettings.enableDealAgent,导致 Deal Agent 激活失败,但不会明确指出原因。 - Enhanced Notes(
EnhancedNotesSettings.enableEnhancedNotes)——必需;Pipeline Management 将 ContentNote 用作主要数据源。 - Opportunity Team(
OpportunitySettings.enableOpportunityTeam)——必需;建议流使用 OpportunityTeamMember,未启用此设置会导致部署失败。 - Pipeline Inspection(
OpportunitySettings.enablePipelineInspection)——必需;提供销售代表查看并接受/忽略建议的界面。即使未启用,系统仍会生成建议,但用户无处查看。 - Enhanced Email(
EmailAdministrationSettings.enableEnhancedEmailEnabled)——可选但推荐;仅在使用 Einstein Activity Capture 时才需要用于邮件正文索引。 - Pipeline Management(
SalesDealAgentSettings.enableDealAgent)——必需;用于启用该功能本身。
澄清问题
先运行许可证预检,再询问以下任何问题。 你的第一个操作(解析组织别名后)应运行
bash scripts/setup-all.sh <org-alias> --check-license。它只运行身份验证和功能门禁,不会询问任何问题,也不会更改任何内容。如果退出码非零, 请将打印出的许可证/版本阻碍信息转达给用户,然后停止——不要询问任何澄清问题,也不要进行任何更改。只有在退出码为 0(组织具备相应能力——全新组织或已配置组织)时,才继续询问以下问题。
预检通过后,确定:
- 全新配置还是修复? 这是一个从未配置过 Pipeline Management 的新组织,还是一个配置不完整的组织?
- 数据源:应使用哪些数据源为 Agent 提供信息?
- Notes(默认启用)
- Emails(需要 Einstein Activity Capture)
- Voice/Video calls(需要 Einstein Conversation Insights)
- Enhanced Email(用于索引电子邮件正文——需要
EmailAdministrationSettings.enableEnhancedEmailEnabled)
- 自主更新:Agent 是否应自主更新商机字段,还是仅建议更新,供用户审核?
- Agent 应管理哪些字段?(请务必先问这个问题——设置由字段选择驱动。)
setup-all.sh从一开始就会基于你选择的字段构建流程——不会先同时部署所有字段再移除不需要的字段。询问:"你希望 Agent 为哪些 Opportunity 字段建议取值?OOTB 选项包括 Next Step(NextStep)和 Opportunity Stage(StageName);你也可以添加自定义文本字段(例如 Competitor Analysis 字段)。"- 至少需要 1 个字段——如果未选择任何字段,设置会中止(退出码为 1)。不会默认选择
NextStep。 - 最多共 5 个字段;OOTB 字段也计入其中。选择超过 5 个字段会在进行任何更改之前中止。
- 在非交互运行中,使用
--fields "NextStep,StageName,Risk__c"传入字段集合,或在交互式提示中输入。
- 至少需要 1 个字段——如果未选择任何字段,设置会中止(退出码为 1)。不会默认选择
- 按字段自定义提示词(不包括
StageName的所有字段)。 对于每个选定的非StageName字段,设置过程会收集可选的目标(“你必须考虑……”)和指令(提取指导):NextStep自带经过精心设计的 OOTB 托管提示词。只有在提供目标/指令时,设置过程才会覆盖它(交互式运行:会询问是否自定义;非交互运行:传入--field-goal "NextStep:…"/--field-instruction "NextStep:…")。跳过自定义即可保留 OOTB 提示词。- 自定义字段始终会获得目标/指令(使用你提供的文本,或脚本提供的合理默认值)。
StageName不可自定义——它是托管的选项列表模板,不支持覆盖;设置过程不会为它显示提示。
- 自定义字段资格:仅支持 Opportunity 上的标准或自定义文本字段——普通文本(
type=string)或不超过 255 个字符的文本区域(type=textarea、htmlFormatted=false);长度不得超过 255;不支持长文本区域(长度 > 255)、富文本区域(htmlFormatted=true)、选项列表或公式字段。建议内容会限制为该字段自身的长度。问题 4 中选定的字段会在setup-all.sh执行期间接入;设置完成后添加的其他字段使用scripts/add-field-suggestion.sh <org-alias> <FieldApiName>(每个字段执行一次;参见阶段 4.3)。两种方式都会执行总数上限 5 个的限制——add-field-suggestion.sh会拒绝接入第 6 个字段。 - Opportunity 阶段:Opportunity 阶段是选项列表值,不同的 Opportunity 记录类型可能提供不同的阶段子集。是否使用标准或自定义商机阶段?是否需要定义/更新其说明?注意:
OpptStageDescription按阶段全局生效——仅以OpportunityStageApiName为键,没有按记录类型区分的列——因此每个活动阶段只写入一次说明,并应用于所有提供该阶段的记录类型。无论组织是否使用 Opportunity 记录类型,设置过程都相同。
管理员沟通指南
重要:此技能面向管理员,而非开发人员。请遵循以下规则:
- 在后台运行所有 bash 命令(
run_in_background: true)——包括主要设置命令,以及用于监控进度的任何日志跟踪命令。 - 监控进度时不要显示命令——可以跟踪日志以提供进度更新,但跟踪命令也必须在后台运行。解析输出,只显示友好的更新,例如“✓ Opportunity Team:已启用”。绝不要显示跟踪命令本身或原始日志行。
- 静默调查错误——出现故障时,在后台进行诊断(检查数据、运行查询、修复环境问题),不要逐步描述每个操作。只说明结论和采取的措施:“我需要先创建一个测试机会。现在就来创建……”而不是“
--json输出已损坏……我来检查一下……ANSI 颜色代码……我来修复……” - 使用通俗语言说明:说“正在设置平台……”而不是“正在运行 setup-all.sh 第 1.5 阶段”。
- 隐藏技术细节:除非用户要求调试,否则不要提供 SOAP 响应、curl 命令、jq 解析、阶段编号或脚本路径。
- 检查退出代码:始终判断成功或失败,并将技术错误转述为管理员易懂的信息。
- 说明预计耗时:“大约需要 3 分钟……”可以避免用户询问“是不是卡住了?”
- 妥善处理错误:自动重试临时故障;对于实际阻碍,解释情况并提供选项。
有关错误转述模式、示例和恢复策略的详细信息,请参阅 references/admin-communication.md。
工作流
重要——主要入口:对于端到端设置,请运行 scripts/setup-all.sh。它会按照正确的依赖顺序处理所有前提条件、启用操作、流部署、权限和验证。仅在运行 setup-all.sh 后诊断或修复特定组件时,才使用单独的脚本。
setup-all.sh 是一个由字段选择驱动的三阶段设置流程:(1) 平台启用 + Agent 用户 + PSG 分配;(2) 字段选择 → 提示词模板创建/激活 → 阶段描述(仅在选择了 StageName 时)→ 提示词验证;(3) 流构建(仅使用所选字段)、流激活、Agent 激活、PSG 重新计算。它默认安全:仅建议模式,不会创建阶段描述(除非用户提出要求),且在提示词就绪前不会让流正式运行。
规范的 Agent 路径——两次调用,中间进行交互式调整循环
完整的两次调用模式、代码示例、Agent 规则、说明模板和内部步骤图,请参阅 references/canonical-agent-path.md。
摘要:将设置拆分为调用 1(--through-phase prompts)和调用 2(--from-phase flow),并在两者之间进行调整循环,由你逐个字段推动提示词审批。调用 2 为必需——缺少它就不会生成流,也不会生成任何建议。
无人值守 / CI 路径(单次调用,无调整循环)
对于完全无人值守的运行(cron/CI,或用户明确拒绝审核提示词时):
bash setup-all.sh <org-alias> --fields "NextStep,StageName,Risk__c" \
[--field-goal "NextStep:<text>"] [--field-instruction "NextStep:<text>"] \
[--autonomous] [--create-stage-descriptions] [--skip-prompt-verification] \
--non-interactive [--users "[email protected],[email protected]"]
在单次运行模式下,验证步骤仍会显示每个字段的建议(仅供参考)。请将这些建议转达给用户。
标志
完整的标志说明请参阅 references/flags.md。重要标志:
--check-license— 仅进行预检(退出代码 0 = 符合条件,1 = 存在阻碍)。必须首先运行。--through-phase prompts/--from-phase flow— 分阶段运行的终点(互斥)--fields "NextStep,StageName"— 必需字段集合(至少 1 个,最多 5 个)--autonomous— 启用自动应用模式(默认关闭)--non-interactive/--yes— 无人值守模式(需要--fields)--users "[email protected],[email protected]"— 用于 PSG 分配的明确用户列表(会验证电子邮件格式)
以下阶段说明了手动操作/修复场景下的决策逻辑。分步详情请参阅 references/setup-order.md。
自动化摘要
每个配置步骤是否可通过 CLI 自动化,以及如何自动化,都记录在 references/automation-matrix.md 中。简而言之:前置条件、启用、流克隆/激活、Agent 发布/激活、权限、字段建议和阶段说明都可通过 CLI 自动化(setup-all.sh 会按依赖顺序执行);只有 Agent Analytics 只能通过 UI 操作。
阶段 0 — 身份验证和组织评估
-
身份验证 — 请参阅
references/auth-and-cli.md。使用sf --json | jq时,务必加上2>/dev/null。 -
评估组织状态 — 分支判断信号(不是 PSG 是否存在——即使尚未配置,许可证也会附带 PSG):
- 启用状态:通过 SOAP readMetadata 读取
SalesDealAgentSettings.enableDealAgent - 已运行设置(以下任一条件成立):(a) Agent 用户持有
SalesManagementAgentUserPsg;(b) 流Process_Field_Update_Suggestions存在(按 ApiName 判断,而非标签);(c)BotDefinition的AgentTemplate IN ('SalesMgmt__NGASalesAgent','SalesMgmt__SalesAgent')
- 启用状态:通过 SOAP readMetadata 读取
-
运行
scripts/setup-all.sh <org-alias>— 自动处理分支判断:- 未启用且没有任何信号 → 全新配置(阶段 1)
- 存在部分信号 → 修复(阶段 3)
- 条件全部满足 → 仅验证
阶段 1 — 启用前置条件和 Pipeline Management
完整脚本请参阅 references/setup-order.md。 按依赖顺序启用:Einstein GenAI → Agentforce Agent → Agent Platform → Enhanced Notes → Opportunity Team → Pipeline Management → Pipeline Inspection。然后部署流(scripts/create-flow.sh)并验证 Agent 架构(references/agent-creation.md)。
启用时自动创建的内容:Agent 用户 + PSG(自动分配)。必须手动创建的内容:BotDefinition:SalesAgent(通过 authoring-bundle 发布)和计划触发型流(通过模板部署)。
阶段 2 — 分配权限
-
定义 Agent 访问权限:
bash scripts/define-agent-access.sh <org-alias>— 创建自定义权限集,并将其关联到两个 PSG 中。请参阅references/agent-creation.md→ “Agent Access”。 -
向目标用户分配 PSG:硬性规则 — 绝不批量分配。 仅将
SalesManagementUserPsg授予:(1) 正在运行的用户;以及 (2) 明确列出的--users用户。不得先枚举用户再授予权限。
阶段 3 — 修复模式(部分配置的组织)
完整检查清单请参阅 references/repair-diagnostics.md。常见问题:流已停用 → 使用 Tooling API PATCH;Agent 未激活 → sf agent activate;提示词模板未激活 → 通过版本往返重新部署;Agent 缺失 → 通过 SOAP 开关关闭再打开。
阶段 4 — 自定义(需要管理员决策)
-
定义商机阶段描述 — 使用
references/opportunity-stages.md中的“提出并修正”模式。查询启用的阶段,展示参考文件中的默认值,应用用户的修正,然后通过 Tooling API 批量创建。重要:启用 Pipeline Management 时,阶段描述可能会自动配置(测试组织中发现已预填 MEDDIC 描述)。尝试创建前,务必先检查是否已有描述。如果描述已存在,请更新而非创建,以避免重复。
-
配置其他数据源 — 决策表见
references/data-sources.md(Einstein Conversation Insights、Einstein Activity Capture、Inbox)。 -
添加自定义商机字段建议(设置完成后) — 设置时选择的字段会通过
setup-all.sh --fields接入。如需向已配置的组织添加新字段,请运行scripts/add-field-suggestion.sh <org-alias> <FieldApiName>(例如Risk__c字段)。该脚本会验证字段、填充规范模板(assets/field-completion-template.genAiPromptTemplate-meta.xml),通过版本往返部署并激活模板,然后以幂等方式将字段接入正在运行的Process_Field_Update_Suggestions流程(遵守 5 个字段的上限)。可选标志:--label、--goal、--instruction(两行特定于字段的提示词)、--verify-with-note(创建一条 Note 并运行同步生成)、--opp <Id>、--skip-flow、--force。实现机制见references/field-completion-prompts.md,目标和指令行的编写方法见references/field-completion-prompt-template.md。命名说明:提示词模板中的
<type>为einstein_gpt__fieldCompletion(所有元数据中均使用此值,切勿更改)。设置界面(Prompt Builder)将此类别标记为 “Field Generation”,两者指的是同一功能。管理员应查找“Field Generation”,而非“Field Completion”。 -
配置自主更新 — 自主模式是一个组织范围的开关(
SalesDealAgentSettings.enableDealAgentAutoApproveAllTasks),而非按字段设置:开启后,Agent 会自动应用所有字段建议,无需审核;关闭时(默认状态),每项建议都需要等待人工批准。可通过setup-all.sh --autonomous启用。开关及安全注意事项见references/autonomous-updates.md。 -
启用 Agent Analytics — Setup → Einstein Feedback and Monitoring → Agent Analytics(仅限 UI)。
了解流程
有关完整的流程架构、克隆方法和技术限制,请参见 references/flow-clone-from-template.md。
关键信息:Pipeline Management 使用从托管模板克隆的计划触发型流程(Process_Field_Update_Suggestions)。通过 ApiName(而非标签)进行检测。该流程会使用所选字段调用 getOrExecFieldUpdtSuggestion — 添加字段时,必须同时激活其模板并将其接入流程的集合(add-field-suggestion.sh 会以原子方式处理这两项)。此流程处于激活状态前,不会生成任何建议。
关键注意事项
- 管道管理需要独立的
BotDefinition:SalesAgent——缺少 BotDefinition 会导致设置受阻。在大多数版本中,系统会自动预配;若未自动预配,publish_and_activate_agent()(位于shared/agent-bundle-publish.sh,由setup-all.sh和create-agent.sh调用)会发布assets/sales_management_agent.agent中的捆绑包并将其激活。不要依赖EmployeeCopilotPlanner后备方案——用户需要交互式聊天界面。 - 只有当 Agent 处于活动状态且对商机具有 读/写权限时,流程才会运行;Agent 会作为商机团队成员加入(注意 OpportunityTeamMember 上的 Apex 触发器)
- 每日上限:8,000 次大模型请求 / 约 4,000 个商机。建议在 30 天后过期
- 阶段模板通过
GetOpportunityStageDetailsInvocableAction读取OpptStageDescription——如果任何活动阶段缺少描述,阶段建议就会失败 - 启用 DealAgent 不要使用 CLI Metadata 部署——只能使用 SOAP API v64.0(CLI 存在静默失败模式)
- 不要启用
BotSettings/enableBots——这是旧版消息机器人,与此无关,且会因“Legal Terms”错误而失败 - 管道管理不使用托管包——启用时会直接预配组件
- 如果在 Setup 中看不到此开关 → 请确认拥有 Sales Cloud EE+ 许可证和 Agentforce SKU
- 对通过管道传递给 jq 的
sf ... --json始终使用2>/dev/null(过滤掉会破坏 JSON 的 CLI 警告)
参考资料
references/setup-order.md— 完整的设置步骤,可直接复制粘贴,包含所有脚本references/soap-api-enablement.md— 所有前置条件的 SOAP API 模式references/flow-clone-from-template.md— 基于 ApiName 检测的流程克隆方法references/agent-creation.md— Agent 创建(自动预配 + 创作捆绑包发布;SOAP 开关只会重新预配 Agent 用户和 PSG,不会重新预配 BotDefinition)references/field-completion-prompts.md— 端到端添加自定义字段建议(已验证的 v67 模式、三项要求、add-field-suggestion.sh的机制及验证)references/field-completion-prompt-template.md— 编写脚本所需的字段专属目标和指令行references/opportunity-stages.md— 阶段描述和方法论references/repair-diagnostics.md— 处理部分配置的组织references/auth-and-cli.md— 身份验证方法、CLI 兼容性references/data-sources.md— EAC/ECI/Notes/Enhanced Email 决策表references/autonomous-updates.md— 自动应用模式开关和安全注意事项references/metadata-inventory.md— 已预配元数据组件的完整清单references/automation-matrix.md— 可通过 CLI 自动化的设置步骤(及其方法)与仅限 UI 的步骤references/admin-communication.md— 便于管理员理解的说明模式:错误翻译表、静默调查示例,以及用于以对话方式引导设置的逐步说明模板
示例
examples/custom-prompt-instructions.md— 用于方法论对齐和控制更新积极性的自定义提示词指令模式
独立脚本
每个设置阶段的可执行脚本(从 scripts/ 目录运行,并确保 CWD 中有 sfdx-project.json):
scripts/setup-all.sh— 主编排脚本:由字段选择驱动的三阶段端到端设置(身份验证 + 启用 + Agent 用户/PSG → 字段选择 + 提示词模板 + 阶段描述 + 提示词验证门控 → 流构建/激活 + Agent 激活 + PSG 重新计算)。必须指定--fields(未指定则中止);默认交互式运行;默认采用安全选项(仅提供建议,不创建阶段描述),可通过--field-goal/--field-instruction、--autonomous、--create-stage-descriptions、--skip-prompt-verification选择启用相应功能,并通过--non-interactive/--yes执行无人值守运行scripts/shared/flow-builder.sh— 由setup-all.sh引入的流字段收集辅助函数:build_field_collection(全新构建 — 创建仅连接所选字段的流),以及strip_flow_field/add_flow_field/flow_wired_fields(修复 — 就地协调已部署流中的字段)scripts/shared/stage-descriptions.sh— 由setup-all.sh引入的第 4c.5 阶段描述创建脚本;导出run_stage_descriptions()(根据STAGENAME_SELECTED自行决定是否运行;为第 8.5 阶段摘要设置STAGE_DESCRIPTIONS_BLOCKED)scripts/shared/test-opp.sh— 由两个验证脚本(flow-debug-and-verify.sh、verify-prompt-generation.sh)引入的共享测试商机和依据说明解析脚本;导出resolve_test_opportunity(复用/创建/回退到[PM-TEST]测试商机、滚动更新 CloseDate、创建/刷新依据说明)和seed_grounding_notescripts/retrieve-settings.sh— 审核当前组织设置状态scripts/enable-prerequisites.sh— 仅启用前置设置(Einstein GenAI、Agentforce、Enhanced Notes、Opportunity Team),通过 SOAP 完成 — 不涉及字段/流/Agent。setup-all.sh会内联执行相同的启用操作;仅在需要单独、非破坏性地切换前置条件时使用此独立脚本scripts/enable-deal-agent.sh— 通过 SOAP API 启用 Pipeline Management(独立辅助脚本;setup-all.sh会内联启用 PM — 仅在需要单独手动切换时使用)scripts/create-flow.sh— 检测、从模板部署或激活建议流(无法完成时提供 UI 操作指引)scripts/create-agent.sh— 验证/创建/激活 Agent(自动配置 + 发布创作包;SOAP 切换仅会重新配置 Agent 用户/PSG,不会重新配置 BotDefinition);完成后还会定义 Agent 访问权限scripts/define-agent-access.sh— 定义 Agent 访问权限,使持有SalesManagementUserPsg的用户和持有SalesManagementAgentUserPsg的自主 Agent 用户都能启动/运行 Agent(创建自定义权限集 + 添加SetupEntityAccess+ 将PermissionSetGroupComponent添加到两个 PSG + 重新计算)scripts/deploy-settings.sh— 部署非 SOAP 设置(Notes、Email、Opportunity)scripts/add-field-suggestion.sh— 为任何符合条件的 Opportunity 文本字段添加 AI 字段补全建议(验证 → 填充规范模板 → 通过版本往返部署并激活 → 接入流;--verify-with-note用于同步生成)scripts/verify-all.sh— 全面的配置状态检查(只读)
管理员验证工具
以下脚本可帮助管理员在设置后验证 Pipeline Management 是否正常运行。使用这些脚本确认字段建议是否按预期生成。
运行任一验证脚本前,请先撰写一条符合实际情况的背景说明,并通过 PM_GROUNDING_NOTE 环境变量传入。 只有当商机的备注包含真实销售背景时,AI 才会生成建议——通用占位内容无法提供任何背景,因此会返回空结果,让正常运行的配置看起来像是出了问题。请根据已配置的 --fields 以及任何 --field-goal/--field-instruction 撰写几句话,描述可信的销售电话或会议内容(例如,NextStep 的具体后续步骤和截止日期,或 StageName 的买家、预算、痛点和时间线信号)。不要使用刻板模板——请根据实际配置量身撰写。例如:PM_GROUNDING_NOTE="Discovery call with the VP of Sales: confirmed a $250K budget and a Q3 go-live; agreed next steps are a technical deep-dive with IT and an ROI analysis." bash scripts/flow-debug-and-verify.sh <org>。如果未设置该环境变量,脚本会回退到通用备注。
这两个脚本由该技能分别调用,但会使用同一个测试商机和同一条背景说明。 它们都会查找或创建一个归当前用户所有、名为 [PM-TEST] Test Pipeline Verification Opp 的商机([PM-TEST] 前缀可让你通过 Opportunity WHERE Name LIKE '[PM-TEST]%' 找到此工具创建的所有商机)。复用商机时,脚本会将其 CloseDate 延后 30 天,使其继续符合流程条件;仅当你传入的 PM_GROUNDING_NOTE 与已存储的备注不同时,才会刷新背景说明(否则会保留现有备注)。两次调用都应传入相同的 PM_GROUNDING_NOTE 值,确保无论运行顺序如何,备注都保持一致。
scripts/flow-debug-and-verify.sh— 对计划建议流进行引导式两阶段验证。- flow-debug-start (
bash scripts/flow-debug-and-verify.sh <org> [opp-id]) 会重复使用名为[PM-TEST] Test Pipeline Verification Opp的稳定、归用户所有的测试商机(如果该商机仍符合条件),避免重复运行时不断创建重复商机;否则会创建该商机。如果创建失败,则回退到任意归用户所有的开放商机;在最终选定的商机上创建或刷新用于 grounding 的 Note,并打印流的 Debug URL、要选择的商机,以及之后要运行的准确verify命令——包括末尾的基线计数(运行前的建议数量)。它使用归用户所有的商机,因此生成的建议会显示在管理员按所有者筛选的 Pipeline Inspection 中。如果没有可用商机,它会打印可执行的提示并以状态码 0 退出,不进行验证。将 URL 和商机告知用户,并等待用户在 Flow Builder 中针对该商机运行 Debug——这是在计划的记录触发流上绑定真实$Record的唯一按需途径(取消选中回滚模式 UNCHECKED,以保留 DML 变更)。 - verify (
bash scripts/flow-debug-and-verify.sh <org> <opp-id> verify [baseline]) 在用户确认 Debug 运行完成后执行:它会确认流已执行到其操作(将 Agent 用户添加到 Opportunity Team),并轮询约 4 分钟,等待生成AiGenActionItem建议。传入 flow-debug-start 打印的基线值——该值在 Debug 运行前捕获,因此差值准确;省略该值会退回到较弱的绝对值检测。两阶段之间的等待发生在对话中,而不是脚本内部。
- flow-debug-start (
scripts/verify-prompt-generation.sh— 通过直接调用 Einstein/generationsAPI,测试字段背后的提示词模板。传入字段的 API 名称(bash scripts/verify-prompt-generation.sh <org> <field> [opp-id]——例如NextStep、Risk__c);脚本会将字段解析为其托管/派生模板(不带命名空间的托管名称会返回ENTITY_IS_DELETED),并使用与flow-debug-and-verify.sh相同的归用户所有商机选择策略(两者共用一个已引入的 lib:重复使用共享的[PM-TEST] Test Pipeline Verification Opp→ 创建该商机 → 按所有者筛选回退 → 优雅跳过)——跳过时唯一的区别是不会调用 Einstein 端点。脚本会显示实际生成的建议文本,帮助管理员验证自定义提示词指令。
Agent 资源
assets/sales_management_agent.agent— 销售管理 Agent 的 Agent Script 定义(自动配置失败时使用)assets/sales_management_agent.bundle-meta.xml— AiAuthoringBundle 元数据(使用sf agent publish authoring-bundle --api-name SalesAgent部署)assets/field-completion-template.genAiPromptTemplate-meta.xml— 带有@@PLACEHOLDERS@@的规范einstein_gpt__fieldCompletion提示词模板,由scripts/add-field-suggestion.sh填充(请勿直接部署)