mcpField
U
ui5-best-practices-integration-cards

ui5-best-practices-integration-cards

github.com/ui5开发44183 次安装1 周前更新
代码仓库

关于 ui5-best-practices-integration-cards

一项为 Agent 提供 UI Integration Cards 创建、修改、验证和预览规则的 skill。它强调声明式卡片类型、正确的数据与绑定位置,以及 manifest 验证。

主要功能

  1. 01声明式卡片类型指导
  2. 02参数与 destination 绑定规则
  3. 03用户可见字符串的 i18n 绑定
  4. 04数据请求位置与 JSON 响应规范
  5. 05manifest 与 schema 验证
  6. 06卡片预览设置指导

适用场景

  1. 01创建新的 UI Integration Card
  2. 02检查卡片绑定与数据路径
  3. 03验证卡片 manifest
  4. 04准备卡片预览

MCP 相关

该 skill 要求 Agent 在创建声明式卡片时使用 `create_integration_card` MCP 工具,并使用 `run_manifest_validation` 进行 schema 检查。

安装

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

$npx skills add https://github.com/ui5/plugins-coding-agents --skill ui5-best-practices-integration-cards

安装后在 Claude Code 中输入/ui5-best-practices-integration-cards确认已加载。

附带文件references/analytical_chart_types.mdreferences/configuration_editor_example.md

详细介绍

UI 集成卡片开发最佳实践

Agent 在创建、修改、验证或预览 UI 集成卡片时必须遵守的规则。严格遵守这些规则对卡片正常运行至关重要。

何时加载各参考资料

触发条件加载
正在处理或规划分析型卡片references/analytical_chart_types.md
dt/Configuration.js 已存在、正在创建或正在修改references/configuration_editor_example.md

如果符合触发条件,请在输出任何内容之前加载相应资料。不要凭记忆操作。

1. 核心规则

规则详情
优先使用声明式卡片类型:List、Table、Calendar、Timeline、Object、Analytical。仅在特殊情况下创建 Extension。
使用 create_integration_card MCP 工具创建新的声明式卡片时。
参数绑定语法{parameters>/parameterKey/value} —— 单花括号、> 分隔符、value 后缀。
目标绑定语法{{destinations.destinationName}} —— 双花括号、点号。在 sap.card/configuration/destinations/ 下配置。通过名称引用;切勿替换为原始 URL。
使用目标存放服务 URL将每个外部服务 URL 封装在 sap.card/configuration/destinations/ 下的目标中,并以 {{destinations.name}} 引用。
i18n 绑定将所有非数据、面向用户显示的字符串绑定到 i18n 模型。
链接使用 actions 属性;切勿内联 <a> 或手动编写 URL 处理程序。
完成前验证请参阅 3. 验证。
按要求显示预览请参阅 4. 预览。
不要修改提供的数据按原样使用。
仅限 JSON 响应sap.card/data/request 背后的端点必须返回 JSON。对于 OData 服务,请在请求 URL 或参数中追加 $format=json。

2. 数据放置位置

sap.card/data/ 是数据请求唯一正确的顶层位置。

路径用途
sap.card/data/path主数据路径
sap.card/content/data/path内容专用路径;若已设置,则覆盖主路径
sap.card/header/data/path标题专用路径;若已设置,则覆盖主路径

禁止:将请求本身放在 sap.card/content/data/ 或 sap.card/header/data/ 下。

症状——“没有可显示的数据”: 通常是由覆盖主数据路径的 content/data 块导致的。排查其他问题之前,请先核对 2. 数据放置位置。

3. 验证

规则详情
有效的 JSONmanifest.json 必须能够解析。
sap.app/type必须为 "card"。
架构验证使用 run_manifest_validation MCP 工具。
不得使用已弃用属性在 manifest.json 或其他位置均不得使用。
不是 UI5 项目Component 类型的卡片除外。

4. 预览

如果要求预览,请先检查卡片文件夹中是否已有预览入口——package.json 的 start 脚本、README.md 或现有 HTML 文件。如有,请复用。否则,创建一个包含 <ui-integration-card> 元素的 HTML 页面,并让该元素指向清单,然后通过 http 服务器提供服务。

5. 配置编辑器

编辑器允许管理员、页面/内容管理员和翻译人员角色自定义卡片,而无需直接编辑 manifest.json。

包含两部分:

  1. dt/Configuration.js — 导出一个返回 new Designtime({ form: {...} }) 的函数。
  2. manifest.json — 在 sap.card/configuration/editor 中引用该文件。

以管理员角色进行设计。

规则详情
与清单保持一致编辑器应准确反映 manifest.json 的当前结构和参数。manifestpath 可以指向任何现有路径 — 参数化字段的 configuration/parameters/*/value,或静态清单属性的直接路径,例如 /sap.card/header/icon/shape。
所有现有字段均可编辑标题、副标题、标题图标、参数 — 都要设为可配置。
询问用户在决定要公开哪些字段之前,询问:“要让所有清单字段都可编辑吗?还要添加其他内容吗?”
不得虚构字段绝不要添加 manifest.json 中不存在的编辑器字段。
保持同步在 manifest.json 中添加或删除字段时,也要在编辑器中同步添加或删除。

加载 references/configuration_editor_example.md,查看规范的配套示例。

6. 分析卡片

加载 references/analytical_chart_types.md,查看完整的图表类型目录(UID 和各类型示例)。

规则详情
设置 chartTypesap.card/content/chartType 为必填项。
让数据馈送与图表类型匹配measures、dimensions 和 feeds 必须与图表类型所需的 UID 匹配。参考文件列出了各图表对应的 UID。
每个数据馈送需要三个键type(Dimension|Measure)、uid、values。
chartProperties用于设置标签、颜色、图例等。不要虚构键。如果默认值合适,则完全省略。

最简数据馈送示例(圆环图/饼图):

"feeds": [
  { "type": "Dimension", "uid": "color", "values": ["Store Name"] },
  { "type": "Measure", "uid": "size", "values": ["Revenue"] }
]

7. 卡片浏览器(参考)

评论

支持 Markdown