service-concierge-portal-generate
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
Chineseservice-concierge-portal-generate: Agentforce Concierge portal deploy
service-concierge-portal-generate:Agentforce Concierge门户部署
Deploys an Agentforce Concierge experience on an LWR Experience Cloud site — an agent-first landing page with a welcome greeting, prompt bar, suggestion chiclets, and full chat surface. This is a channel-setup skill: it wires an existing agent to a new or existing portal site; it does not author the agent.
在LWR Experience Cloud站点上部署Agentforce Concierge体验——这是一个以代理为核心的登录页面,包含欢迎语、提示栏、建议选项卡和完整聊天界面。这是一项渠道设置技能:它将现有代理连接到新的或现有的门户站点,但不负责创建代理。
Why this skill exists
此技能的存在意义
The Concierge portal setup is a 20-step workflow with precise sequencing requirements (bundle shape, routing wiring, guest access flags, CORS/CSP records). Keeping it as a standalone skill lets it be invoked from (Checkpoint 3 → Help Portal branch) or called directly when the user already has an agent and only needs the portal.
service-helpagent-coordinateConcierge门户设置是一个包含20个步骤的工作流,有着严格的顺序要求(包结构、路由配置、访客访问标志、CORS/CSP记录)。将其作为独立技能,可以从(检查点3 → 帮助门户分支)调用,也可以在用户已有代理仅需门户时直接调用。
service-helpagent-coordinateSkills inventory pre-flight (MANDATORY before anything else)
技能清单预检(执行任何操作前必须完成)
Before asking the user any questions, verify that every skill this skill delegates to is installed:
bash
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"
doneIf any skill is missing, stop immediately and tell the user which skills are absent with their exact directory names. Do not proceed until the missing skills are installed.
在向用户提出任何问题前,请验证此技能委托调用的所有技能均已安装:
bash
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如果有任何技能缺失,请立即停止操作,并告知用户缺失的技能及其确切目录名称。在缺失技能安装完成前,请勿继续。
Required inputs
必填输入项
| Input | How resolved |
|---|---|
Target org alias ( | Ask via |
Agent ( | Always query the org — never infer from prior context |
MessagingChannel ( | Optional — pass from calling skill if already created; otherwise delegate to |
EmbeddedServiceConfig ( | Optional — pass from calling skill if already created; otherwise delegate to |
If and are not provided, this skill will delegate their creation to the appropriate skills (see runbook §E and §F.3). The portal site itself — the DEB bundle, branding, components, guest access, CORS/CSP — is always provisioned by this skill.
MESSAGING_CHANNEL_DEV_NAMEESC_ID| 输入项 | 获取方式 |
|---|---|
目标组织别名( | 如果当前对话回合未提供,通过 |
代理( | 始终从组织查询——切勿从上下文推断 |
MessagingChannel( | 可选——如果已创建,从调用技能传递;否则在运行手册的步骤E中委托给 |
EmbeddedServiceConfig( | 可选——如果已创建,从调用技能传递;否则在运行手册的步骤F.3中委托给 |
如果未提供和,此技能将委托给相应技能创建它们(参见运行手册§E和§F.3)。门户站点本身——包括DEB包、品牌标识、组件、访客访问、CORS/CSP——始终由本技能配置。
MESSAGING_CHANNEL_DEV_NAMEESC_IDWorkflow
工作流
Read and follow it end-to-end. The runbook is the authoritative step-by-step guide; this SKILL.md is the router and context layer only.
references/portal-deploy-runbook.md阅读并从头到尾执行。运行手册是权威的分步指南;本SKILL.md仅作为路由和上下文层。
references/portal-deploy-runbook.mdEntry point
入口点
-
Ask for the org alias:yaml
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)" -
Query for active agents (activation lives on, not on
BotVersion.Status = 'Active'— an unfilteredBotDefinitionreturns retired/inactive bots the runbook cannot wire, so filter on activeSELECT ... FROM BotDefinitionexplicitly):BotVersionbashsf 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"- Zero rows (no bots, or only inactive/retired bots — both count as zero for wiring) → hard-stop in the same turn. Do not load the runbook, do not delegate to or
service-digital-engagement-channel-configure, do not fabricate aservice-digital-engagement-deployment-configure, and do not present a "Create a new agent first"BOT_ID. Tell the user the portal needs an active agent to wire and point them atAskUserQuestionoragentforce-generateto create one first, then re-invoke this skill.service-helpagent-coordinate - One or more active agents → present ALL returned agents as options via , plus a "Create a new agent first" option. Do NOT assume the user wants the only/first agent — always ask explicitly.
AskUserQuestion
If the user selects "Create a new agent first": stop immediately with this message:Creating a new agent is outside the scope of this skill. Please run theskill (oragentforce-generatefor a full Help Agent setup) to create your agent, then re-invoke the Concierge portal skill.service-helpagent-coordinateIf the user selects an existing agent: captureandBOT_IDand continue.BOT_DEV_NAMELong-list rule: if there are more than 6 agents, paginate — show 6 at a time with a "Show more" option rather than presenting all at once. - Zero rows (no bots, or only inactive/retired bots — both count as zero for wiring) → hard-stop in the same turn. Do not load the runbook, do not delegate to
-
Loadand execute §0 top-to-bottom.
references/portal-deploy-runbook.md
-
询问组织别名:yaml
AskUserQuestion: question: "我应该将Concierge门户部署到哪个组织?" header: "组织别名" options: - label: "输入别名" description: "输入组织别名(例如 help-portal-dev, trailsignup)" -
查询活跃代理(激活状态由标识,而非
BotVersion.Status = 'Active'——未过滤的BotDefinition会返回已停用/退役的机器人,运行手册无法连接这些机器人,因此需显式过滤活跃的SELECT ... FROM BotDefinition):BotVersionbashsf 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"- 零结果(无机器人,或仅有已停用/退役的机器人——两种情况均视为无法连接)→ 在当前回合立即终止。请勿加载运行手册,请勿委托给或
service-digital-engagement-channel-configure,请勿伪造service-digital-engagement-deployment-configure,也请勿显示“先创建新代理”的BOT_ID。告知用户门户需要活跃代理才能连接,并引导他们先运行AskUserQuestion或agentforce-generate创建代理,然后重新调用此技能。service-helpagent-coordinate - 一个或多个活跃代理→ 通过展示所有返回的代理选项,同时添加“先创建新代理”选项。请勿假设用户想要唯一/第一个代理——始终明确询问。
AskUserQuestion
如果用户选择**“先创建新代理”**:立即终止操作并显示以下消息:创建新代理超出了本技能的范围。请运行技能(或agentforce-generate进行完整的帮助代理设置)创建代理,然后重新调用Concierge门户技能。service-helpagent-coordinate如果用户选择现有代理:捕获和BOT_ID并继续。BOT_DEV_NAME长列表规则:如果代理数量超过6个,请分页——每次显示6个,并提供“查看更多”选项,而非一次性展示全部。 - 零结果(无机器人,或仅有已停用/退役的机器人——两种情况均视为无法连接)→ 在当前回合立即终止。请勿加载运行手册,请勿委托给
-
加载并从上到下执行§0。
references/portal-deploy-runbook.md
Return values (for calling skills)
返回值(供调用技能使用)
On success, surface:
| Variable | Value |
|---|---|
| 18-char Network Id of the provisioned portal |
| Live customer-facing URL (for Incognito verification) |
| The |
| EmbeddedServiceConfig Id (auth path) |
成功完成后,返回:
| 变量 | 值 |
|---|---|
| 已配置门户的18位Network Id |
| 面向客户的实时URL(用于隐身模式验证) |
| 已连接到代理的 |
| EmbeddedServiceConfig Id(认证路径) |
Final report format
最终报告格式
On completion, summarize what was deployed and surface the four return values above in a clearly labeled block so the user (or a calling skill) can act on them. If the active-agent query returned zero rows, skip straight to the hard-stop message from step 2 — no return values to report.
完成后,总结已部署的内容,并将上述四个返回值放在清晰标记的区块中,以便用户(或调用技能)使用。如果活跃代理查询返回零结果,直接跳转到步骤2中的终止消息——无需返回任何值。
Rules / constraints
规则/约束
| Rule | Rationale |
|---|---|
| Run the skills inventory pre-flight before any user interaction | Delegation to missing skills fails mid-deploy, leaving the portal in a partial state |
| Agent must exist and be Active before starting | Wiring an inactive agent produces a portal that loads but never responds |
Read | The runbook's §0 stage table must be in context when executing each step |
| Never create MessagingChannel or EmbeddedServiceConfig inline — always delegate | |
| Never skip the guest-access flags in §L.0 | |
| Republish after every DEB flag change | |
| One operator pause only: §F.4 Agentforce Orchestrator toggle | Every other step is headless — never pause for UI unless the headless path returns an unrecoverable error |
| 规则 | 理由 |
|---|---|
| 在与用户交互前执行技能清单预检 | 委托调用缺失的技能会导致部署中途失败,使门户处于部分配置状态 |
| 代理必须已存在且处于活跃状态才能开始 | 连接已停用的代理会生成加载后无响应的门户 |
在开始§A的问题前完整阅读 | 执行每个步骤时,必须了解运行手册的§0阶段表内容 |
| 切勿在线创建MessagingChannel或EmbeddedServiceConfig——始终委托给对应技能 | |
| 切勿跳过§L.0中的访客访问标志 | |
| 每次修改DEB标志后重新发布 | |
| 仅在§F.4 Agentforce Orchestrator切换时暂停操作:其他所有步骤均为无头操作——除非无头路径返回不可恢复的错误,否则切勿因UI操作暂停 |
Reference file index
参考文件索引
| File | When to read |
|---|---|
| Always — the authoritative 20-step deploy runbook |
| 文件 | 阅读时机 |
|---|---|
| 始终阅读——权威的20步部署运行手册 |