mcpField
S
service-concierge-portal-generate

service-concierge-portal-generate

github.com/forcedotcom云与 DevOps1.1k1.2k 次安装1 天前更新
代码仓库

关于 service-concierge-portal-generate

用于在新建或现有的 LWR Experience Cloud 站点部署 Agentforce Concierge,并将现有活跃 Agent 接入门户;此技能不负责创建 Agent。

主要功能

  1. 01部署到 LWR Experience Cloud
  2. 02连接现有活跃 Agent
  3. 03配置门户品牌与组件
  4. 04设置访客访问及 CORS/CSP
  5. 05委托配置消息渠道与嵌入服务

适用场景

  1. 01部署面向客户的 Concierge 门户
  2. 02将现有 Agent 接入门户
  3. 03配置门户消息渠道和嵌入服务

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/forcedotcom/sf-skills --skill service-concierge-portal-generate

安装后在 Claude Code 中输入/service-concierge-portal-generate确认已加载。

附带文件references/portal-deploy-runbook.md

详细介绍

service-concierge-portal-generate:部署 Agentforce Concierge 门户

在 LWR Experience Cloud 站点上部署 Agentforce Concierge 体验——一个以 Agent 为先的着陆页,包含欢迎语、提示栏、建议选项和完整聊天界面。这是一项渠道设置技能:它会将现有 Agent 接入新的或现有的门户站点;不会创建 Agent。

此技能存在的原因

Concierge 门户设置是一项包含 20 个步骤的工作流,且对步骤顺序有严格要求(捆绑包结构、路由接线、访客访问标记、CORS/CSP 记录)。将其作为独立技能,既可以从 service-helpagent-coordinate(检查点 3 → Help Portal 分支)调用,也可以在用户已有 Agent、只需设置门户时直接调用。

技能清单预检(操作前必须完成)

在向用户提问之前,请先确认此技能委派的所有技能均已安装:

for skill in service-digital-engagement-channel-configure service-digital-engagement-deployment-configure service-agentforce-channel-configure; do
  [ -d ".claude/skills/$skill" ] && echo "OK: $skill" || echo "MISSING: $skill"
done

如果有任何技能缺失,请立即停止,并告知用户缺失技能的准确目录名称。缺失技能安装完成前,不要继续操作。

必需输入

输入获取方式
目标组织别名($ORG)如果当前对话轮次中未提供,通过 AskUserQuestion 询问
Agent($BOT_ID、$BOT_DEV_NAME)始终查询组织;绝不要根据先前上下文推断
MessagingChannel($MESSAGING_CHANNEL_DEV_NAME、$MESSAGING_CHANNEL_ID)可选——如果调用技能已创建,则传入;否则在运行手册步骤 E 中委派给 service-digital-engagement-channel-configure
EmbeddedServiceConfig($ESC_ID、$ESC_DEV_NAME)可选——如果调用技能已创建,则传入;否则在运行手册步骤 F.3 中委派给 service-digital-engagement-deployment-configure

如果未提供 MESSAGING_CHANNEL_DEV_NAME 和 ESC_ID,此技能会将创建工作委派给相应技能(请参阅运行手册 §E 和 §F.3)。门户站点本身——DEB 捆绑包、品牌设置、组件、访客访问权限、CORS/CSP——始终由此技能配置。

工作流

阅读 references/portal-deploy-runbook.md 并从头到尾按其操作。运行手册是权威的分步指南;此 SKILL.md 仅负责路由和提供上下文。

入口
  1. 询问组织别名:

    AskUserQuestion:
      question: "Which org should I deploy the Concierge portal to?"
      header: "Org alias"
      options:
        - label: "Enter alias"
          description: "Type the org alias (e.g. help-portal-dev, trailsignup)"
    
  2. 查询活动 Agent(激活状态位于 BotVersion.Status = 'Active',而非 BotDefinition 上——未筛选的 SELECT ... FROM BotDefinition 会返回已停用/非活动的 Bot,操作手册无法为其配置,因此请明确筛选活动的 BotVersion):

    sf data query --target-org $ORG --json \
      --query "SELECT Id, DeveloperName, MasterLabel FROM BotDefinition WHERE Id IN (SELECT BotDefinitionId FROM BotVersion WHERE Status='Active') ORDER BY MasterLabel"
    
    • 零行(没有 Bot,或只有非活动/已停用的 Bot——配置时两者都视为零)→ 在同一轮中立即停止。不要加载操作手册,不要委派给 service-digital-engagement-channel-configure 或 service-digital-engagement-deployment-configure,不要伪造 BOT_ID,也不要提供“先创建新 Agent”这一 AskUserQuestion 选项。告知用户,门户需要一个活动 Agent 才能进行配置,并引导用户使用 agentforce-generate 或 service-helpagent-coordinate 先创建 Agent,然后重新调用此技能。
    • 一个或多个活动 Agent → 通过 AskUserQuestion 将所有返回的 Agent 列为选项,并添加一个**“先创建新 Agent”**选项。不要假设用户想选唯一或第一个 Agent——务必明确询问。

    如果用户选择**“先创建新 Agent”**:立即停止,并显示以下消息:

    创建新 Agent 不在此技能的范围内。请运行 agentforce-generate 技能(或运行 service-helpagent-coordinate 完整配置 Help Agent)来创建 Agent,然后重新调用 Concierge 门户技能。

    如果用户选择现有 Agent:记录 BOT_ID 和 BOT_DEV_NAME,然后继续。

    **长列表规则:**如果 Agent 超过 6 个,请分页显示——每次显示 6 个,并提供“显示更多”选项,不要一次性全部列出。

  3. 加载 references/portal-deploy-runbook.md,并从上到下执行 §0。

返回值(供调用技能使用)

成功后,提供:

变量值
NETWORK_ID已配置门户的 18 位 Network Id
PUBLISHED_PORTAL_URL面向客户的线上 URL(用于 Incognito 验证)
MESSAGING_CHANNEL_DEV_NAME已与 Agent 配置的 EmbeddedMessaging 渠道
ESC_IDEmbeddedServiceConfig Id(身份验证路径)
最终报告格式

完成后,总结已部署的内容,并在清晰标注的区块中提供上述四个返回值,以便用户(或调用技能)据此采取行动。如果活动 Agent 查询返回零行,则直接跳转到步骤 2 的停止消息——无需报告返回值。

规则/约束

规则原因
在与用户交互前运行技能清单预检委派给缺失的技能会导致部署中途失败,使门户处于不完整状态
开始前,Agent 必须存在且处于 Active 状态配置非活动 Agent 会导致门户能够加载但无法响应
开始 §A 问题前,完整阅读 references/portal-deploy-runbook.md执行每个步骤时,操作手册的 §0 阶段表必须在上下文中
绝不在行内创建 MessagingChannel 或 EmbeddedServiceConfig——务必委派service-digital-engagement-channel-configure 和 service-digital-engagement-deployment-configure 负责这些对象;行内创建会绕过队列解析、升级配置和 ESD 验证
绝不跳过 §L.0 中的访客访问标记OptionsGuestChatterEnabled + OptionsGuestMemberVisibility 默认值为 False——不设置时,门户在 Incognito 中会显示空白
每次更改 DEB 标记后都要重新发布isRelaxedCSPLevel、authenticationType、headMarkup 只有在发布后才会生效
只允许暂停操作一次:§F.4 Agentforce Orchestrator 开关其他每个步骤都应无界面执行——除非无界面路径返回不可恢复错误,否则绝不因 UI 操作而暂停

参考文件索引

文件阅读时机
references/portal-deploy-runbook.md始终阅读——权威的 20 步部署操作手册

评论

支持 Markdown