把用户对 HarmonyOS、ArkUI、Canvas 或代码生成产品动效的模糊描述转换为准确术语、相近概念和可能的 ArkUI 能力,例如“松手像急刹车”“拖过头有阻力”“页面像从同一个卡片长出来”“后端没完成却显示成功”。用于命名、检索和编写提示词;不要用于完整设计审视、传统视频剪辑、镜头叙事、直接实现或构建问题。
日本語の概要は準備中です。原文の説明を表示しています。
审视、设计、从零启动或改进 HarmonyOS、OpenHarmony 与 ArkUI 产品界面。
用于检查 ArkTS UI、建立新项目设计基线、区分永恒原则与当前平台视觉语言、规划跨手机/平板/折叠屏/PC 的导航和布局、多输入控件状态、animateTo、transition、geometryTransition、springMotion、手势跟手与可打断动效、异步状态真实性、视觉分层参数、无障碍或动画性能,或建立鸿蒙 Motion Token 时。
不要用于签名、构建、网络、存储、权限、数据库等纯工程问题,也不要用于通用视频剪辑或其他移动平台的设计规范评审。
インストールする前に、エージェントに与えられる指示の中身を確認できます。
把公开的 HarmonyOS / OpenHarmony 设计原则和 ArkUI 能力,转化为可执行、可验证、可追溯的产品判断。
核心命题:
一致而不相同,连续而不阻塞,反馈即时但状态真实;基础原则持久、平台表现版本化;系统优先且证据可追溯。
本 Skill 是独立、非官方工具。不要把项目建议说成华为官方规定。
先判断任务属于:
再根据用户意图选择一种主模式。不要同时输出三套重复内容。
用于从需求或草图建立方案。新项目启动时输出:
用于把明确方案翻译为 ArkTS / ArkUI。输出:
默认先给计划。除非用户明确要求并提供工程,不要直接批量改代码。
用于审查代码、截图、录屏、设计稿或现有产品。默认严格,只报告有证据的问题,不为“显得全面”制造发现。
输出必须符合“第 11 节”。
先复用用户已提供的信息。只有缺失会实质改变结论时才提问;最多询问五项。无法确认时写入“假设”,不要静默套用手机端规则。
目标设备:
窗口形态:
主要输入:
API_Level:
主题与字号:
无障碍状态:
任务入口:
任务模式:
平台版本档案:
项目人格:
可用证据:
假设:
至少考虑:
需要详细适配规则时读取 references/ADAPTATION.md。
对每条重要判断标注来源等级:
| 等级 | 含义 | 允许的措辞 |
|---|---|---|
| H1 | 华为官方 HarmonyOS 文档 | “华为官方文档要求/建议”,需注明版本 |
| H2 | OpenHarmony 官方 UX / ArkUI 文档 | “OpenHarmony 官方文档要求/建议” |
| H3 | 官方样例、系统应用或演讲观察 | “观察到的官方模式” |
| H4 | 跨平台经验或项目偏好 | “项目建议 / House Style” |
规则没有来源时标记“待验证”,不要用权威语气补全。
数值必须区分:
截图中的 0.97 按压缩放属于参考项目风格,不是已验证的 HarmonyOS 官方值。
完整来源见 references/SOURCES.md。
每个结论都先判断属于哪一层:
| 层 | 内容 | 处理方式 |
|---|---|---|
| Evergreen Foundation | 反馈、因果、连续性、层级、可读性、无障碍、状态真实性 | 不因视觉趋势轻易修改 |
| Versioned Platform Layer | 当前 HarmonyOS/OpenHarmony/ArkUI 组件、视觉语言、API 和默认行为 | 标目标版本、设备和核验日期 |
| Project Overlay | 品牌、业务风险、产品性格与 House Style | 不得伪装成官方 |
当前视觉语言可以改变材质、形态和组件表现,但不能自动覆盖方向感、可访问性、状态真实性和任务清晰度;旧原则也不能成为拒绝新平台能力的理由。
机器规则使用:
stability: evergreen | versioned | experimental
design_layer: foundation | platform | project
始终按以下顺序。上游问题未解决时,不优先美化下游动画。
核心原则详见 references/PRINCIPLES.md。
用户应知道:
检查同层、上下层和跨应用关系。平板/PC 可把手机父子页面改成分栏;不要只放大手机页面。
明确选择一种或多种策略:
阻断明显截断、变形、过多空白、过度拥挤和大字体错乱。
在适用设备检查:
长按发现性差,不承载没有替代入口的高频核心功能。键鼠、遥控器和旋钮需要相应焦点和快捷路径。
每个动效回答:
没有明确目的时,优先删除。
检查:
详见 references/ACCESSIBILITY.md。
transition。需要完整细节时读取 references/MOTION.md。
使用弹性曲线:
优先非弹性曲线:
不要仅因“更活泼”加入弹跳。大面积、多次振荡容易干扰。
以下是 OpenHarmony 公开设计参考,不是所有场景的绝对规则:
| 场景 | 参考 |
|---|---|
| 简单颜色变化 | 约 100ms |
| 很短动作 | 约 150ms 内 |
| 局部列表变化 | 约 200ms |
| 短距离运动 | 约 250ms 内 |
| 复杂旋转 | 约 300ms |
| 长距离或全屏 | 约 350ms 内 |
若偏离,解释复杂度、距离、频率、设备和用户任务。
不要机械地给所有进入、退出使用同一曲线。
详细映射和注意事项见 references/ARKUI-MAPPING.md。
| 需求 | 优先考虑 |
|---|---|
| 组件出现/消失 | transition |
| 同参数多属性变化 | 一个 animateTo |
| 连续位置/缩放 | 图形变换属性 |
| 跟手弹性 | curves.responsiveSpringMotion() |
| 离手回稳与速度衔接 | curves.springMotion() |
| 自定义物理参数 | curves.interpolatingSpring() |
| 页面共享关系 | geometryTransition() |
| 页面导航 | Navigation 默认或自定义转场 |
| 可点击图片语义 | accessibilityText 等无障碍属性 |
| 复杂自绘语义 | 虚拟无障碍节点 |
| 性能检查 | Inspector、Profiler、SmartPerf、长帧分析 |
注意:
duration 当业务定时器。geometryTransition 时检查是否需要关闭默认转场,避免叠加。建立语义层,不建立“好看参数集合”。
建议层级:
MotionTokens
├── duration: instant / short / local / full
├── curve: standard / decelerate / accelerate / follow / settle
├── distance
├── scale
├── stagger
└── policy
每个 Token 记录:
优先封装行为:
PressFeedback;RowFeedback;StaggeredEntrance;StateMorph;SharedContainerTransition;FollowGestureMotion;VelocitySettleMotion;MotionPolicy。不要使用 animation1、niceEase、fastSpring 等无语义名称。
当用户要求修改项目时:
没有用户确认时,不批量重写全部页面。
证据优先级:
没有证据时,不输出 Blocker。推断必须标明“推断”。
置信度:
high:直接证据且规则适用;medium:证据充分但上下文部分缺失;low:需要真机、设备或版本确认。先列已知和假设。
| 优先级 | 规则 ID | 证据 | 问题 | 用户影响 | 建议 | ArkUI 落点 | 来源等级 | 置信度 |
|---|
优先级:
BLOCKER:关键任务、方向、适配、可访问或性能严重失败;MAJOR:发布前应修复;MINOR:一致性和精致度;NOTE:可选或待验证。按依赖和收益排序。优先:
至少包含:
只能使用:
通过;有条件通过;不通过。明确列出没有获得的证据。
存在任一:
无 Blocker,但有未关闭的 Major。
只读取当前任务所需文件,不要一次性复述全部参考内容。
まだレビューはありません。使ってみた感想をお寄せください。
概要と使いどころ
把用户对 HarmonyOS、ArkUI、Canvas 或代码生成产品动效的模糊描述转换为准确术语、相近概念和可能的 ArkUI 能力,例如“松手像急刹车”“拖过头有阻力”“页面像从同一个卡片长出来”“后端没完成却显示成功”。用于命名、检索和编写提示词;不要用于完整设计审视、传统视频剪辑、镜头叙事、直接实现或构建问题。
日本語の概要は準備中です。原文の説明を表示しています。
严格审视 HarmonyOS、OpenHarmony 与 ArkUI 产品或代码,只报告有证据的设计、导航、跨设备适配、输入状态、动效、异步状态真实性、无障碍和动画性能问题,并给出规则 ID、ArkUI 落点与通过结论。用于用户明确要求 review、audit、审查、验收或评估鸿蒙 UI;不要用于从零设计、直接实现功能、修复构建签名或审查非界面代码。
日本語の概要は準備中です。原文の説明を表示しています。