关于 service-omni-sidebar-configure
这项 Salesforce skill 为 Lightning 控制台应用启用固定的 Omni-Channel 侧边栏,并验证设置结果。它面向配置控制台体验的管理员,只修改所需的元数据标志。
主要功能
- 01启用固定的 Omni-Channel 侧边栏
- 02自动检测唯一的控制台应用
- 03验证部署后的设置
- 04不改动无关的应用配置
适用场景
- 01在控制台记录旁固定 Omni-Channel
- 02检查侧边栏设置是否已启用
- 03每次配置一个控制台应用
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ forcedotcom/ sf-skills --skill service-omni-sidebar-configure安装后在 Claude Code 中输入/service-omni-sidebar-configure确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/api-notes.mdscripts/enable-and-report.shscripts/tests/_bootstrap.pytest_sidebar_contracts.py详细介绍
service-omni-sidebar-configure
通过在 Lightning 控制台应用的 CustomApplication 元数据中设置 isOmniPinnedViewEnabled=true 并确认该标志往返无误,启用 Omni-Channel 侧边栏——固定在 Lightning 控制台应用侧边的 Omni 实用工具区域。对于控制台/演示组织,这是推荐的 Omni 界面:客服代表可以在记录旁边的停靠区域中查看传入的工作、状态和工作列表,而不只是使用可折叠的实用工具栏。此操作针对每个控制台应用运行一次,并由 service-omni-channel-setup-coordinate 作为客服代表体验配置的最后一步调用。
输入
bash scripts/enable-and-report.sh <org-alias> [app_developer_name]
org-alias(必需)。app_developer_name(可选)。Lightning 控制台应用的CustomApplicationDeveloperName。省略时,该技能会查询AppDefinition中的 Lightning 控制台应用:恰好找到一个 → 采用该应用;找到零个或多个 →blocked(需明确指定名称)。
前提条件与安全
- 目标组织已通过
sfCLI 进行身份验证,拥有 Service Cloud 许可证,且sfCLI ≥ 2.139.6。 - 已启用 Omni-Channel 基本设置(
service-omni-base-settings-configure)。 - 目标必须是可作为
CustomApplication元数据部署的 Lightning 控制台应用。标准应用和 Aura 应用不在范围内。 - 适用三项式
safe_to_write生产环境保护措施。
运行
enable-and-report.sh 会解析目标应用、检索其 CustomApplication,并读取当前的 isOmniPinnedViewEnabled 值:
- 已为
true→reused(不部署)。 - 为
false或缺失 → 将其设为true,并通过一次原子 Metadata API 调用部署这一个CustomApplication,然后重新检索以确认该标志为true后再报告成功。
部署会显式使用 --metadata "CustomApplication:<name>"(绝不使用 --source-dir),并单独执行——Metadata 部署具有原子性,因此任何失败都不会改变应用。
行为
**幂等且非破坏性。**该技能只切换这一个布尔值;不会重写选项卡、品牌或导航配置。字段缺失时,会按其 XSD 顺序插入(紧挨 <label> 之前);字段已存在时,则在原位置替换其值。
**自动检测遵循保守原则。**仅当恰好存在一个 Lightning 控制台应用时,才会自动采用该应用,因此在拥有多个应用的组织中,绝不会悄然固定错误的应用。
输出约定
单个 JSON 对象:status ∈ enabled | reused | blocked,app_developer_name、app_label、before(布尔值)、after(布尔值)、deploy_id、manual_actions、blocking_issue。
enabled— 该标志原为false/缺失,现在已确认是true。reused— 该标志原本就是true。blocked— 未找到控制台应用或找到多个、检索/部署失败,或部署后验证未确认其为true;blocking_issue会说明原因,manual_actions会列出修复方法或前置技能。
限制
- 每次调用处理一个应用;需要为多个控制台应用启用侧边栏时,请分别运行。
- 仅适用于 Lightning 控制台
CustomApplication——不适用于 Aura、标准应用或实用工具栏中的 Omni 小组件。 - 不会创建或布局控制台应用、其选项卡或 Omni 实用工具项。
参考资料
| 文件 | 阅读时机 |
|---|---|
references/api-notes.md | 了解 CustomApplication 的 isOmniPinnedViewEnabled 架构/顺序、AppDefinition 检测查询以及检索/部署说明 |