{
  "schemaVersion": "1.0",
  "item": {
    "slug": "ohos-react-native-performance",
    "name": "OpenHarmony React Native Performance",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/code-sunbo/ohos-react-native-performance",
    "canonicalUrl": "https://clawhub.ai/code-sunbo/ohos-react-native-performance",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/ohos-react-native-performance",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=ohos-react-native-performance",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "README.md",
      "SKILL.md",
      "rules/rnoh-bundle-release.md",
      "rules/rnoh-lifecycle-foreground-background.md",
      "rules/rnoh-list-key.md",
      "rules/rnoh-render-avoid-same-state.md"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "slug": "ohos-react-native-performance",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-05-06T13:48:53.572Z",
      "expiresAt": "2026-05-13T13:48:53.572Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=ohos-react-native-performance",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=ohos-react-native-performance",
        "contentDisposition": "attachment; filename=\"ohos-react-native-performance-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null,
        "slug": "ohos-react-native-performance"
      },
      "scope": "item",
      "summary": "Item download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this item.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/ohos-react-native-performance"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/ohos-react-native-performance",
    "agentPageUrl": "https://openagent3.xyz/skills/ohos-react-native-performance/agent",
    "manifestUrl": "https://openagent3.xyz/skills/ohos-react-native-performance/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/ohos-react-native-performance/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "OpenHarmony React Native Performance Static Check Skills",
        "body": "Static-check rules and config for React Native for OpenHarmony, from the official performance-optimization doc. This skill is English-only to reduce token usage; Chinese content is available via links below."
      },
      {
        "title": "When to Apply",
        "body": "Use this skill when:\n\nWriting or reviewing React Native for OpenHarmony (RNOH) application code or OpenHarmony project configuration\nOptimizing React Native page rendering, setState, or list performance\nConfiguring bundle-harmony build, Hermes bytecode, or Release build\nIntegrating or reviewing RNAbility lifecycle (onForeground/onBackground)\nDesigning or implementing TurboModule (main vs worker thread)\nPreparing for performance analysis with Trace, React Marker, FCP, etc."
      },
      {
        "title": "Rule Categories by Priority",
        "body": "PriorityCategoryImpactPrefix1Render optimizationCRITICALrnoh-render-2Bundle & nativeHIGHrnoh-bundle-, rnoh-native-3Lifecycle & monitorHIGHrnoh-lifecycle-4TurboModuleMEDIUMrnoh-turbo-5List & keyMEDIUMrnoh-list-"
      },
      {
        "title": "1. Render optimization (CRITICAL)",
        "body": "rnoh-render-avoid-same-state — Avoid setState when state unchanged to prevent extra renders\nrnoh-render-pure-memo — Use PureComponent or React.memo to avoid unnecessary re-renders\nrnoh-render-props-once — Create callbacks/prop objects once (constructor or outside component)\nrnoh-render-split-child — Split independent UI into child components\nrnoh-render-merge-setstate — Merge setState to avoid multiple commits and renders\nrnoh-render-state-not-mutate — Use new objects in setState; do not mutate existing state\nrnoh-render-batching — Keep React 18 Automatic Batching enabled (RNOH default concurrentRoot: true)"
      },
      {
        "title": "2. Bundle & native config (HIGH)",
        "body": "rnoh-bundle-release — Use --dev=false --minify=true for performance/production bundle\nrnoh-bundle-hbc — Prefer Hermes bytecode (hermesc) for production\nrnoh-native-release — Use Release build on native side; lower LOG_VERBOSITY_LEVEL when appropriate\nrnoh-native-bisheng — Optionally use BiSheng compiler (buildOption.nativeCompiler: \"BiSheng\")"
      },
      {
        "title": "3. Lifecycle & monitoring (HIGH)",
        "body": "rnoh-lifecycle-foreground-background — Call onForeground/onBackground in onPageShow/onPageHide or onShown/onHidden\nrnoh-lifecycle-fcp — First-frame monitoring: use mount event or root onLayout to report FCP"
      },
      {
        "title": "4. TurboModule (MEDIUM)",
        "body": "rnoh-turbo-worker — Run heavy TurboModules (JSON, crypto, image, network, I/O) on worker thread; avoid ImageLoader on worker"
      },
      {
        "title": "5. List & key (MEDIUM)",
        "body": "rnoh-list-key — Provide stable keys for list items; avoid using index as key"
      },
      {
        "title": "How to Use",
        "body": "Static checks: Apply the rules above in code review or scripts (JS/TS and config).\nDetails and examples: See the corresponding rule files under rules/ (e.g. rules/rnoh-render-pure-memo.md).\nFull doc: Performance optimization (en)."
      },
      {
        "title": "Relation to general React Native skills",
        "body": "This skill focuses on OpenHarmony-specific React Native performance (RNAbility, bundle-harmony, HBC, TurboModule worker, Trace/React Marker).\nIt complements vercel-react-native-skills and react-native-best-practices: list virtualization (FlashList), Pressable, expo-image, StyleSheet, etc. still apply; this skill adds OpenHarmony-side config and render-optimization details."
      }
    ],
    "body": "OpenHarmony React Native Performance Static Check Skills\n\nStatic-check rules and config for React Native for OpenHarmony, from the official performance-optimization doc. This skill is English-only to reduce token usage; Chinese content is available via links below.\n\nWhen to Apply\n\nUse this skill when:\n\nWriting or reviewing React Native for OpenHarmony (RNOH) application code or OpenHarmony project configuration\nOptimizing React Native page rendering, setState, or list performance\nConfiguring bundle-harmony build, Hermes bytecode, or Release build\nIntegrating or reviewing RNAbility lifecycle (onForeground/onBackground)\nDesigning or implementing TurboModule (main vs worker thread)\nPreparing for performance analysis with Trace, React Marker, FCP, etc.\nRule Categories by Priority\nPriority\tCategory\tImpact\tPrefix\n1\tRender optimization\tCRITICAL\trnoh-render-\n2\tBundle & native\tHIGH\trnoh-bundle-, rnoh-native-\n3\tLifecycle & monitor\tHIGH\trnoh-lifecycle-\n4\tTurboModule\tMEDIUM\trnoh-turbo-\n5\tList & key\tMEDIUM\trnoh-list-\nQuick Reference\n1. Render optimization (CRITICAL)\nrnoh-render-avoid-same-state — Avoid setState when state unchanged to prevent extra renders\nrnoh-render-pure-memo — Use PureComponent or React.memo to avoid unnecessary re-renders\nrnoh-render-props-once — Create callbacks/prop objects once (constructor or outside component)\nrnoh-render-split-child — Split independent UI into child components\nrnoh-render-merge-setstate — Merge setState to avoid multiple commits and renders\nrnoh-render-state-not-mutate — Use new objects in setState; do not mutate existing state\nrnoh-render-batching — Keep React 18 Automatic Batching enabled (RNOH default concurrentRoot: true)\n2. Bundle & native config (HIGH)\nrnoh-bundle-release — Use --dev=false --minify=true for performance/production bundle\nrnoh-bundle-hbc — Prefer Hermes bytecode (hermesc) for production\nrnoh-native-release — Use Release build on native side; lower LOG_VERBOSITY_LEVEL when appropriate\nrnoh-native-bisheng — Optionally use BiSheng compiler (buildOption.nativeCompiler: \"BiSheng\")\n3. Lifecycle & monitoring (HIGH)\nrnoh-lifecycle-foreground-background — Call onForeground/onBackground in onPageShow/onPageHide or onShown/onHidden\nrnoh-lifecycle-fcp — First-frame monitoring: use mount event or root onLayout to report FCP\n4. TurboModule (MEDIUM)\nrnoh-turbo-worker — Run heavy TurboModules (JSON, crypto, image, network, I/O) on worker thread; avoid ImageLoader on worker\n5. List & key (MEDIUM)\nrnoh-list-key — Provide stable keys for list items; avoid using index as key\nHow to Use\nStatic checks: Apply the rules above in code review or scripts (JS/TS and config).\nDetails and examples: See the corresponding rule files under rules/ (e.g. rules/rnoh-render-pure-memo.md).\nFull doc: Performance optimization (en).\nRelation to general React Native skills\nThis skill focuses on OpenHarmony-specific React Native performance (RNAbility, bundle-harmony, HBC, TurboModule worker, Trace/React Marker).\nIt complements vercel-react-native-skills and react-native-best-practices: list virtualization (FlashList), Pressable, expo-image, StyleSheet, etc. still apply; this skill adds OpenHarmony-side config and render-optimization details."
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/code-sunbo/ohos-react-native-performance",
    "publisherUrl": "https://clawhub.ai/code-sunbo/ohos-react-native-performance",
    "owner": "code-sunbo",
    "version": "1.0.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/ohos-react-native-performance",
    "downloadUrl": "https://openagent3.xyz/downloads/ohos-react-native-performance",
    "agentUrl": "https://openagent3.xyz/skills/ohos-react-native-performance/agent",
    "manifestUrl": "https://openagent3.xyz/skills/ohos-react-native-performance/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/ohos-react-native-performance/agent.md"
  }
}