# harmony-next.skills

> HarmonyOS NEXT offline skill pack for DeepSeek Harness: 3700+ ArkTS/ArkUI/NDK documentation indices with DevEco simulator, UI testing, and performance trace automation scripts.

## Metadata

- Author: [@linhay](https://github.com/linhay)
- Repo: <https://github.com/linhay/harmony-next.skills.git>
- GitHub: [linhay/harmony-next.skills](https://github.com/linhay/harmony-next.skills)
- Stars: 332
- Language: Python
- Topics: `arkts`, `automation-testing`, `deveco-studio`, `dsh-plugin`, `harmonyos`, `harmonyos-next`, `openharmony`, `performance-tuning`
- Forks: 24
- Open Issues: 0
- Last push: 2026-08-18T08:05:29.000Z
- Added: 2026-08-15T00:00:00.000Z

## Install

```bash
dsh plugin --profile web add github:linhay/harmony-next.skills
```

## Wiki

## One-Line Positioning
harmony-next.skills is DeepSeek Harness's official HarmonyOS NEXT offline skill pack, bundling 3700+ ArkTS/ArkUI/NDK documents, DevEco toolchain documentation, and a set of executable Python automation scripts into a skill that can be instantly recalled during conversations, enabling the AI to provide verifiable HarmonyOS answers even without network access.

## Core Capabilities
- Inject the `harmony-next` skill into DSH conversations; the AI follows the hierarchical index `SKILL.md → KITS.md/TASK_MAP.md → INDEX.md` to hit real document paths, then reads only 1-3 target files to answer
- Covers offline snapshots for HarmonyOS API 12-23: 3678 documents under `JsEtsAPIReference/` including modules/topics/types/errors/guides, plus IDE debugging, signing, publishing, multi-device adaptation, performance, and other topics
- Uses 6 Python scripts to invoke DevEco toolchain from command line: CLI tool download/install, HDC emulator management and launch, device evidence collection, step-by-step UI operations, offline UI/UX health checks, Profiler trace offline analysis
- Provides copy-pasteable minimal HarmonyOS NEXT test project `empty-ability-app` template with Smoke UI and `hdc + uitest` verification paths
- Returns structured `blocked` JSON (with `decision`/`failureCode`/`missingConfig`) when script execution encounters missing environment, enabling AI to gracefully degrade to official CLI instead of infinite loops

## Technical Implementation
- **Language**: JavaScript (ESM) + Python 3
- **Key Dependencies**: Only depends on Node.js built-ins `node:fs`, `node:url` (index.js); scripts side depends on Python 3, optionally `cv2`/`numpy`/`PIL`/`requests`/`scipy`/`skimage`/`werkzeug`/`opencc` for UI/UX health checks
- **Architecture Pattern**: DSH profile bundle —— `package.json` uses `dsh.bundle.patch` to point to `cordis.patch.yml`, injecting a provider named `dsh-harmony-next`; `index.js`'s `apply(ctx)` registers a provider on `ctx.skills` that returns the `harmony-next` Skill definition
- **Entry Files**: `index.js` (DSH-side hook) + `harmony-next/SKILL.md` (skill content and frontmatter)

## Applicable Scenarios
When you need AI programming assistants (DSH, Gemini CLI, Claude Code, Codex, etc.) to answer HarmonyOS NEXT questions by looking up evidence in offline documents rather than guessing `@ohos.*` modules, ArkUI components, or DevEco commands based on model memory. Typical users are engineers doing ArkTS/ArkUI business development, NDK integration, emulator automation, or DevEco Studio debugging.

## Prerequisites and Compatibility
| Dependency | Minimum Version | Notes |
|---|---|---|
| DeepSeek Harness | 0.1.0-rc.6+ | Bundle real-device verification based on `@deepseek-ai/dsh@0.1.0-rc.6`, recorded by `docs/agent-portability.md:89` |
| Node.js | Not declared | Source doesn't declare `engines` field; `index.js` only uses built-in modules like `node:fs`/`node:url` |
| Python | 3.x (recommended) | 6 tool scripts are Python 3 implementations; users need this when invoking scripts |
| DevEco Studio | Matches local | Only emulator/HDC/UI automation/Profiler script paths depend on it; pure document queries don't depend on it |
| Platform | Cross-platform | Bundle itself is cross-platform; script verified paths mainly on macOS, Windows/Linux need self-verification |
| Native modules | None | `index.js` doesn't depend on any native modules |

## Installation
```bash
dsh plugin --profile web add github:linhay/harmony-next.skills
```

## Configuration
This plugin requires no additional configuration.

After installation, `index.js` reads frontmatter fields like `description`, `metadata.version`, `whenToUse` from `harmony-next/SKILL.md`, and registers them to DSH's `ctx.skills` provider list with `bundled` source and `rank=600`; the two boolean fields `disable-model-invocation` and `user-invocable` are also automatically parsed from frontmatter (former defaults to off, latter to on).

## FAQ

**Q: What exactly does this plugin do?**

A: It injects a skill named `harmony-next` into DSH. After entering the conversation, the AI searches the local 3700+ HarmonyOS documents following the path `SKILL.md → KITS/TASK_MAP → INDEX`, and calls Python scripts as needed for DevEco emulator launch, HDC evidence collection, UI/UX health checks, and Profiler trace auditing.

**Q: Why can't I see a new tool icon after installation?**

A: Normal. This bundle only registers Skills, not MCP/tools/apps; you should see the `harmony-next` skill using the `/` command or `skills list`.

**Q: Do I need to install DevEco Studio first to use it?**

A: Not for pure document scenarios like querying APIs, writing ArkUI components, or viewing NDK header files; you only need local DevEco when running emulator, HDC, UI automation, or performance trace scripts.

**Q: What if the documentation data doesn't match Huawei's official website?**

A: The built-in `references/` is an offline snapshot of API 12-23, not fetched in real-time; when users ask about "latest version" or encounter new APIs, the skill rules require comparing with GitHub Releases and checking Huawei's online documentation.

**Q: Can the emulator scripts run on Windows or Linux?**

A: The scripts themselves are cross-platform, but the repository-verified paths for `hvd_manager.py launch`, `device_evidence_bundle.py` mainly work on macOS DevEco installations; Windows/Linux need self-verification of DevEco installation paths, image root directories, and HDC port mappings.

**Q: How much space does the bundle take?**

A: The `references/` offline documents alone are about 54 MB, plus 10 scripts and tests, making it significantly larger than ordinary skill packs; ensure sufficient disk space before installation.

**Q: How to uninstall?**

A: Like other profile bundles, remove `dsh-harmony-next` from the DSH profile's bundle layer; you can also manually delete `~/.dsh/skills/harmony-next/` or `.dsh/skills/harmony-next/` directories.

## Difficulty Level
Beginner — the bundle is ready to use after installation with no configuration or hooks needed; if only using document retrieval, you don't even need to touch the scripts; running emulators or trace toolchains requires step-by-step configuration of the local DevEco environment.

## Known Issues and Limitations
- Offline documentation has latency vs. Huawei's official website: built-in `references/` is a snapshot of API 12-23; when encountering "latest interfaces" or new APIs, must check official online documentation (`harmony-next/SKILL.md:18-20`)
- Emulator image download is deliberately blocked: `hvd_manager.py download-image` returns `blocked`; currently verified path is still DevEco Studio SDK Manager UI operation (`harmony-next/SKILL.md:88`)
- First launch of DevEco Emulator requires explicit confirmation with `--accept-license` after user has read the agreement; scripts won't check this for you by default (`harmony-next/scripts/hvd_manager.py:670-671`)
- UI/UX health check scripts have heavy Python dependencies: when default interpreter lacks modules like `cv2`/`numpy`/`PIL`, scripts directly error with `missingConfig=["uxPythonDependencies"]` instead of degrading (`harmony-next/SKILL.md:72`)
- DevEco emulator and IDE private interfaces (CodeGenie, `devecostudio://`, `UxTestService`, `hdc`/`uitest` automation, etc.) are version-sensitive capabilities; plugin ID, paths, ports, and parameters must be re-confirmed before use; documentation explicitly states "not wrapping private interfaces into stable public APIs" (`harmony-next/SKILL.md:177-181`)

---

This document is auto-generated by [deepseek-plugin.org](https://deepseek-plugin.org). HTML page: [harmony-next.skills](https://deepseek-plugin.org/plugins/linhay/harmony-next.skills)
Wiki generated by AI (model: `MiniMax-M2.5`)
