ワンクリックで
harmonyos-ark-docs-router
纯血鸿蒙 Ark 应用开发文档路由技能。将问题映射到主题子文档,并按官方来源优先级给出检索路径。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
纯血鸿蒙 Ark 应用开发文档路由技能。将问题映射到主题子文档,并按官方来源优先级给出检索路径。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
| name | harmonyos-ark-docs-router |
| description | 纯血鸿蒙 Ark 应用开发文档路由技能。将问题映射到主题子文档,并按官方来源优先级给出检索路径。 |
| globs | ["**/*.ets","**/*.ts","**/module.json5","**/oh-package.json5"] |
| 文档来源 | 对应版本 | 说明 |
|---|---|---|
| topics/ 大部分文件 | HarmonyOS 5.0 (API 12) | V5 官方文档离线版,当前最完整 |
| harmonyos-6-*.md | HarmonyOS 6.0 (API 20-22) | 仅含 API 变更/新增,非完整指南 |
| starter-kit/ 代码模板 | API 12+ 兼容 | 默认目标 API 12,标注了 V2 替代方案 |
若目标平台为 6.0+,先查
harmonyos-6-overview.md确认是否有 breaking change,再参考主题文件。
当需要读取华为开发者文档链接时,按以下优先级尝试:
web_fetch — 速度快、token 省,适合静态或服务端渲染页面agent-browser — 华为开发者文档站 (developer.huawei.com/consumer/cn/doc/) 是 SPA,web_fetch 返回空壳时需用浏览器自动化
--headed 模式(普通 headless 会超时).markdown-body(排除侧边栏噪音)以下规则为硬约束。编写任何 .ets/.ts 代码前必须遵守,违反将导致编译失败或运行时异常。
| ❌ 禁止 | ✅ 替代 |
|---|---|
any / unknown 类型 | 显式指定具体类型 |
var 关键字 | let |
解构赋值 const {a, b} = obj | 逐字段赋值 let a = obj.a |
函数表达式 function() {} | 箭头函数 () => {} |
obj["field"] 索引访问 | obj.field 点访问 |
for...in 遍历对象 | 普通 for 循环 |
| 嵌套函数 | lambda / 箭头函数 |
Function.apply/call/bind | 直接调用 |
交叉类型 A & B | 使用继承 extends |
| 构造函数中声明字段 | 在类声明体内声明字段 |
| 声明合并(class/interface/enum) | 保持定义紧凑不拆分 |
#privateField 私有标识符 | private 关键字 |
as const 断言 | 显式类型标注 |
delete 删除属性 | 可空类型赋值 null |
import 不在文件顶部 | 所有 import 必须在其他语句之前 |
| 规则 | 说明 |
|---|---|
| 禁止猜测 API | 不确定的 API 必须搜索华为官方文档确认 |
| import 声明 | 使用 API 前确认是否需要 import |
| 权限配置 | 调用前确认 module.json5 权限配置 |
| 资源引用 | UI 常量用 $r 引用,不直接用字面值 |
| 深色主题 | 新增颜色资源默认支持深色/浅色双主题 |
| 组件装饰器 | @Component vs @ComponentV2 与工程保持一致 |
@State 驱动动画 + 声明式 UIrenderGroup(true)width/height/padding/margin(严重影响性能)SymbolGlyph($r('sys.symbol.xxx')).fontSize(24).fontColor([Color.Black]) 矢量图标替代SymbolGlyph 支持 fontColor / renderingStrategy,随深色模式自动适配sys.symbol.* 资源名禁止凭名称猜测 → 在 DevEco Studio SDK 资源面板验证后使用@Builder 方法体内使用 let / var 声明变量(触发 10905209)private 方法,@Builder 内用 this.method() 内联@Builder 的 ForEach 回调中写内联 UI 组件(Flex/Grid 中尤其高发,触发 10905209)@Builder 方法,回调中仅调用 this.buildXxx()Record<string, Object> 初始化对象字面量(触发 10605038)interface 替代 Record,对象字面量必须对应已声明的 class/interfacestring[] 赋值 Particle 元组类型(触发 10505001,ParticleTuple 要求固定 2 元素)[color1, color2] as [ResourceColor, ResourceColor] 元组字面量Window.setWindowColorMode()(API 12+ 已移除,触发 10505001)context.getApplicationContext().setColorMode(ConfigurationConstant.ColorMode.XXX).accessibilityLabel()(ArkUI 无此属性,跨框架误用,触发 10505001).accessibilityText("朗读文本") / .accessibilityDescription("描述")LayoutType/LayoutData/liveViewManager 易猜错)📄 完整 60+ 条约束详见 → topics/arkts-coding-rules.md
Agent 首先判断任务类型,选择正确的 Skill 入口:
| 任务类型 | 使用 Skill | 说明 |
|---|---|---|
| 鸿蒙开发知识查询 | 本文件 (harmonyos-ark) | 文档路由 + 编码约束 |
| 从零开始新项目 | starter-kit/SKILL.md | 骨架 + 模板 + 10 天执行计划 |
| 编译报错 / deprecated 清理 | arkts-modernization-guard/SKILL.md | 自动扫描 + 修复建议 |
| 通用产品质量验收(非鸿蒙特定) | universal-product-quality/SKILL.md | 功能丰富度 / 深色 / 多端 / 发布前 |
| 鸿蒙 + 通用质量双验收 | 先 universal → 再 harmonyos-ark | 组合使用,universal 做通用把关 |
任务类型?
├─ 查文档/学 API ──────────→ 本文件 (SKILL.md 关键词表)
├─ 新建项目 ───────────────→ starter-kit/SKILL.md
├─ 编译报错/废弃 API ──────→ arkts-modernization-guard/SKILL.md
├─ V1→V2 状态管理迁移 ────→ topics/componentv2-migration.md
├─ 准备提审/发布 ──────────→ checklists/pre-submission-2025.md
└─ 质量验收 ───────────────→ 先 universal-product-quality → 再本 Skill
Agent 直接用关键词匹配目标文件,无需遍历路由树。
| 关键词 | → 文件 | 补充 |
|---|---|---|
| 下拉刷新、列表、加载更多 | starter-kit/modules/list-page.md | 代码: starter-kit/snippets/common-patterns.md §二十四 |
| 登录、注册、Token | starter-kit/modules/auth-login.md | API: topics/network-data.md §登录页从 Line 67 开始 |
| 免登录、离线优先、引导页 | starter-kit/modules/offline-no-login.md | 变体: starter-kit/modules/optional-login-upgrade.md |
| 表单、校验、上传 | starter-kit/modules/form-submit.md | 代码: starter-kit/snippets/common-patterns.md §十一 |
| 权限、相机、文件、媒体 | topics/media-device.md | 模板: starter-kit/modules/media-camera.md |
| 安全控件、剪贴板、SaveButton | topics/security-components.md | 权限: topics/acl-permissions.md |
| 深色模式、主题切换 | starter-kit/modules/dark-multi.md | 检查: topics/ux-standards.md |
| Navigation、路由、传参 | topics/routing-lifecycle.md | 模板: starter-kit/modules/tabbar-navigation.md; 传参: modules/detail-page.md §跳转调用 |
| 状态管理、@State、@Provide | topics/state-management.md | 高级: topics/state-management-advanced.md |
| @ComponentV2、V2 迁移、@Local、@Param | topics/componentv2-migration.md | §何时迁移 有决策矩阵; §迁移代码示例 有 7 组 Before/After |
| 网络请求、HTTP、下载 | topics/network-data.md | 代码: starter-kit/snippets/common-patterns.md §一 |
| WebSocket、实时、重连 | starter-kit/modules/websocket-realtime.md | 代码: starter-kit/snippets/common-patterns.md §三十三 |
| 数据库、持久化、Preferences | starter-kit/modules/data-persistence.md | 代码: starter-kit/snippets/common-patterns.md §二十六 |
| 通知、推送、角标 | topics/notification-kit.md | 模板: starter-kit/modules/notification-handling.md |
| 后台任务、Worker | topics/background-tasks-kit.md | 模板: starter-kit/modules/background-tasks.md |
| 支付、IAP、计费 | starter-kit/modules/payment-billing.md | 审核: topics/incentive-review-2025.md |
| WebView、H5、Bridge | topics/arkweb.md | 混合/同层渲染 |
| 图片、PixelMap、编解码 | topics/image-kit.md | 缓存: topics/network-data.md |
| 卡片、Form Kit | topics/form-kit.md | 扫码: topics/scan-kit.md |
| 指纹、人脸、认证 | topics/user-auth-kit.md | 代码: starter-kit/snippets/common-patterns.md §三十二 |
| 发布、签名、上架 | topics/testing-release.md | 清单: checklists/pre-submission-2025.md |
| 审核、激励、合规 | topics/incentive-review-2025.md | 设计: checklists/universal-product-design-suggestions.md |
| ACL、受限权限 | topics/acl-permissions.md | 审核: topics/incentive-review-2025.md |
| 编译报错、崩溃 | topics/arkts-error-prevention.md | 守卫: arkts-modernization-guard/ |
| 6.0 新特性、API 变更 | topics/harmonyos-6-overview.md | API: topics/harmonyos-6-api-*.md |
| ArkTS 语法、类型、装饰器 | topics/arkts.md | 深入: topics/arkts-lang-basics.md |
| ArkUI 组件、布局 | topics/arkui.md | 组件: topics/arkui-components.md |
| UX 设计、验收 | topics/ux-design-specs.md | 标准: topics/ux-standards.md |
| any 类型、var、解构 | topics/arkts-coding-rules.md | 60+ 条编码约束 |
按分类快速定位。每组第一行是入口文件,子行是细分方向。
仅在需要确认 6.0 API breaking change 或新增 API 时读取。优先读 overview 获取摘要。
当任务涉及 entry/src/main/ets/** 的代码编写或修改时,默认必须执行以下流程:
未满足第 1 步时,不允许开始代码编辑。
# 以下路径按实际安装位置选择一个可用的即可
bash skills/harmonyos-ark/arkts-modernization-guard/scripts/scan-arkts-modernization.sh # 仓库源目录
# 或 bash .codex/skills/harmonyos-ark/arkts-modernization-guard/scripts/scan-arkts-modernization.sh
# 或 bash .claude/skills/harmonyos-ark/arkts-modernization-guard/scripts/scan-arkts-modernization.sh
@Prop 函数回调await preferences.getPreferences(...)$r(...)bash skills/harmonyos-ark/arkts-modernization-guard/scripts/scan-arkts-modernization.sh # 同上,选可用路径
hvigor :entry:default@CompileArkTS
未满足上述门禁时,不得声称“已完成/可交付”。
发布前建议按以下顺序执行双 Skill 验收:
universal-product-quality/SKILL.md
harmonyos-ark)
checklists/pre-submission-2025.md 按应用类型逐项验收| 常见问题关键词 | 主题文件 | 补充 |
|---|---|---|
| ArkTS 入门、类型、装饰器 | topics/arkts.md | 深入: arkts-lang-basics.md |
| 状态管理、@State、@Provide | topics/state-management.md | 代码: snippets/state-management.md |
| 路由、页面跳转、Navigation | topics/routing-lifecycle.md | 模板: modules/tabbar-navigation.md |
| 网络请求、持久化、数据库 | topics/network-data.md | 代码: snippets/common-patterns.md § HttpUtil |
| 发布、签名、上架 | topics/testing-release.md | 清单: checklists/pre-submission-2025.md |
| ACL、受限权限、权限审批 | topics/acl-permissions.md | 审核: topics/incentive-review-2025.md |
| 安全控件、PasteButton、SaveButton | topics/security-components.md | 权限: topics/acl-permissions.md |
| 激励、审核、合规 | topics/incentive-review-2025.md | 设计建议: checklists/universal-product-design-suggestions.md |
| 编译报错、崩溃 | topics/arkts-error-prevention.md | 守卫: arkts-modernization-guard/SKILL.md |
| 6.0 新特性、API 变更 | topics/harmonyos-6-overview.md | API: harmonyos-6-api-*.md |
| 图片处理、PixelMap、编解码 | topics/image-kit.md | 缓存: network-data.md § 图片加载 |
| WebView、H5、JS Bridge | topics/arkweb.md | 混合开发/同层渲染 |
| 桌面卡片、服务卡片 | topics/form-kit.md | Stage 模型卡片 |
| 扫码、二维码、条形码 | topics/scan-kit.md | 图像识码/码图生成 |
| 指纹、人脸、生物认证 | topics/user-auth-kit.md | 支付认证/凭据感知 |
ℹ️ 下方
starter-kit/SKILL.md是独立的子路由表,覆盖项目初始化、目录骨架、Day-by-Day 执行顺序。与本文件是父子关系,不会重复路由。