You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Real screenshots, layouts, log bundles, installs/uninstalls, port forwarding, and HVD create/delete flows run non-interactively; missing target, artifact directory, redaction policy, or timeout returns a machine-readable blocked result.
110
110
- This repo provides `python3 harmony-next/scripts/hvd_manager.py`: `doctor` environment probing, `list`, `create`, `delete`, `launch-preflight`, and `launch` are supported.
111
111
- HVD launch adaptation: use `--root` / `HARMONY_HVD_ROOT` for the HVD root, `--emulator` / `HARMONY_EMULATOR` for Emulator, `--image-root` / `HARMONY_EMULATOR_IMAGE_ROOT` for the emulator image root, and `--hdc` / `HARMONY_HDC` for HDC. `--sdk-root` / `DEVECO_SDK_HOME` means the DevEco build SDK root, not necessarily the emulator image root.
112
-
- On macOS the emulator image root is commonly `~/Library/Huawei/Sdk`; the script validates it against the HVD `imageSubPath`. The current `launch` command detaches Emulator and the trace holder, then waits for HDC, boot, and stability checks. The next lifecycle model should add an attached terminal-scoped mode that runs cleanup through `Emulator -stop` when the terminal session ends, while keeping detached mode for compatibility. `download-image` currently returns blocked because image downloads have only been verified through the IDE SDK Manager UI.
112
+
- On macOS the emulator image root is commonly `~/Library/Huawei/Sdk`; the script validates it against the HVD `imageSubPath`. The current `launch` command detaches Emulator and the trace holder, then waits for HDC, boot, and stability checks. A first-run Huawei Emulator license/agreement prompt returns `result=license-agreement-required` / `missingConfig=["emulatorLicenseAgreement"]`; the script only writes `y` to Emulator stdin when `--accept-license` is passed explicitly. The next lifecycle model should add an attached terminal-scoped mode that runs cleanup through `Emulator -stop` when the terminal session ends, while keeping detached mode for compatibility. `download-image` currently returns blocked because image downloads have only been verified through the IDE SDK Manager UI.
113
113
- For emulator traffic capture and proxy diagnostics, HTTP proxy capture tools such as Charles, mitmproxy, and Proxyman require checking the emulator NAT, a host address reachable from the emulator, and app-level proxy settings. The usual debugging path is to make the target app explicitly use `10.0.2.2:9090`, for example `setAppHttpProxy` plus `usingProxy: true`; a macOS forwarding script should not be documented as a general transparent interception solution.
114
114
115
115
### DevEco Studio IDE Private Interfaces
@@ -188,7 +188,7 @@ Entry files:
188
188
| Version | Highlights |
189
189
| --- | --- |
190
190
|`v1.3.7`| Added a copyable HarmonyOS NEXT Empty Ability minimal test project template: `references/templates/empty-ability-app`; defaults to `com.example.emptyability` / `EntryAbility` / `5.0.0(12)` and documents SDK override validation including `6.0.2(22)` / `DEVECO_SDK_HOME=/Applications/DevEco-Studio.app/Contents/sdk`, `ohpm install`, `hvigorw --mode module`, HDC launch, `uitest dumpLayout`, and `uitest uiInput click` smoke capabilities |
191
-
|`Unreleased`| Added guarded DevEco Emulator CLI launch entries: `hvd_manager.py launch-preflight` only prints a command plan with `-t <trace-name>`, while `hvd_manager.py launch` creates the trace socket, detaches Emulator and the trace holder, then starts the runtime; launch now validates the emulator image root against the HVD `imageSubPath`, distinguishes the build SDK root from `~/Library/Huawei/Sdk`, and returns machine-readable diagnostics such as process exit code, log path, HDC snapshot, HVD runtime state, and stability checks on failures/timeouts; docs now include an attached terminal-scoped lifecycle checklist for binding terminal exit to `Emulator -stop` cleanup |
191
+
|`Unreleased`| Added guarded DevEco Emulator CLI launch entries: `hvd_manager.py launch-preflight` only prints a command plan with `-t <trace-name>`, while `hvd_manager.py launch` creates the trace socket, detaches Emulator and the trace holder, then starts the runtime; launch now validates the emulator image root against the HVD `imageSubPath`, distinguishes the build SDK root from `~/Library/Huawei/Sdk`, and returns machine-readable diagnostics such as process exit code, log path, HDC snapshot, HVD runtime state, and stability checks on failures/timeouts; first-run license prompts are classified as `license-agreement-required` with an explicit `--accept-license` opt-in; docs now include an attached terminal-scoped lifecycle checklist for binding terminal exit to `Emulator -stop` cleanup |
192
192
|`Unreleased`| Release assets now use `harmony-next.skill.zip`; the package includes `BUILD_INFO.json` with version, release tag, and git commit metadata, plus `ISSUE_GUIDE.md` for agent-led reproduction, redaction, classification, and issue filing |
193
193
|`v1.3.6`| Added a non-interactive automation policy for the DevEco emulator playbook: users are assumed to have full authority and `policy` only means execution mode; supports `readonly/evidence/automation/diagnostic/break-glass`, artifact directories, redaction metadata, and machine-readable blocked output |
194
194
|`v1.3.5`| Added a private, undocumented DevEco Studio IDE capability reference covering CodeGenie local RAG/MCP/LanceDB, `devecostudio://`, Previewer, ArkUI Inspector, Profiler, Doctor, UxTestService, plugin entry indexes, and privacy risk gates; updated README and trigger terms |
Copy file name to clipboardExpand all lines: harmony-next/SKILL.md
+5-3Lines changed: 5 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,7 +2,7 @@
2
2
name: harmony-next
3
3
description: Use for HarmonyOS NEXT development help and local DevEco automation. Covers ArkTS/ArkUI/NDK API lookup, offline guide navigation, DevEco Studio and HarmonyOS Emulator tasks, hdc/uitest/aa/bm/hilog/hidumper diagnostics, and private DevEco interfaces such as CodeGenie, MCP, LanceDB, devecostudio://, ArkUI Inspector, Previewer, Profiler, Doctor, and UxTestService.
4
4
metadata:
5
-
version: "1.3.7"
5
+
version: "1.3.22"
6
6
---
7
7
8
8
# HarmonyOS NEXT Agent Guide
@@ -13,7 +13,7 @@ Paths like `references/...` are relative to this skill directory (`harmony-next/
13
13
14
14
## Version
15
15
16
-
Current local skill version: `v1.3.7`.
16
+
Current local skill version: `v1.3.22`.
17
17
18
18
Reference snapshot: bundled `references/` are an offline HarmonyOS API 12-23 snapshot, not live web docs.
19
19
@@ -126,13 +126,15 @@ HVD manager command map:
126
126
|`list --json`| List registered HVDs without exposing UUIDs |`name`, `device_type`, `api_version`, `hdc_port`, `image_sub_path`, `exists`|
|`launch --name <hvd> --image-root <dir> --trace-name <name> --json`| Current implementation: create trace socket, detach Emulator and trace holder, then wait for HDC, boot, and stability |`traceHolder`, `hdcWait`, `bootWait`, `stabilityWait`, `logPath`|
129
+
|`launch --accept-license ... --json`| Explicitly answer yes to the first-run Huawei Emulator agreement prompt after the operator has reviewed it |`result=started` or `result=license-agreement-required`|
129
130
130
131
HVD launch rules:
131
132
132
133
-`--sdk-root` / `DEVECO_SDK_HOME` is the DevEco build SDK root. Do not treat it as the emulator image root.
133
134
-`--image-root` / `HARMONY_EMULATOR_IMAGE_ROOT` is the emulator image root. On macOS this is commonly `~/Library/Huawei/Sdk`.
134
135
-`launch` and `launch-preflight` validate `<image-root>/<imageSubPath>` from HVD `config.ini`; failures return `missingConfig=["imageRootSystemImage"]`.
135
136
- Current `launch` defaults: trace holder stays alive for 1800 seconds, and the post-boot stability check runs for 60 seconds.
137
+
- First-run Emulator license/agreement prompts are classified as `result="license-agreement-required"` with `missingConfig=["emulatorLicenseAgreement"]`; do not silently accept them. Use `--accept-license` only as an explicit opt-in after the agreement has been reviewed.
136
138
- If another process needs to install HAPs, deep link, screenshot, or dump layout after current detached `launch`, use the returned `hdcWait.target` and keep the trace holder alive long enough with `--trace-hold-seconds`.
137
139
- Attached lifecycle checklist: the runner must stay foreground, keep the trace socket in-process, trap `SIGINT` / `SIGTERM` / `SIGHUP`, call `Emulator -stop`, close the socket, remove only its own trace path, and verify `hdc list targets -v` no longer reports the selected target.
138
140
- Failure/timeout diagnostics should include `logPath`, `processExitCode`, `hvdRuntime`, `hdcSnapshot`, `hdcWait`, `bootWait`, and `stabilityWait` when present.
0 commit comments