deveco_hmigbot 0.21.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +26 -0
- package/README.md +50 -0
- package/agents/hmigbot-worker.md +61 -0
- package/agents/hmigbot.md +22 -0
- package/agents/workflow-subagent.md +55 -0
- package/commands/hmigbot.md +17 -0
- package/dist/index.js +1 -0
- package/manifest.json +19 -0
- package/package.json +29 -0
- package/skills/migrate-core/FILES.md +26 -0
- package/skills/migrate-core/SKILL.md +484 -0
- package/skills/migrate-core/references/README.md +64 -0
- package/skills/migrate-core/references/flow/arkts-vector-gate.md +55 -0
- package/skills/migrate-core/references/flow/build-error-patterns.md +52 -0
- package/skills/migrate-core/references/flow/conventions-template.md +244 -0
- package/skills/migrate-core/references/flow/navigation-migration.md +42 -0
- package/skills/migrate-core/references/flow/platform-api-guards.md +59 -0
- package/skills/migrate-core/references/flow/platform-model-gaps.md +43 -0
- package/skills/migrate-core/references/flow/resource-conversion.md +46 -0
- package/skills/migrate-core/references/flow/ui-layout-semantics.md +124 -0
- package/skills/migrate-core/references/flow/unit-breakdown.md +42 -0
- package/skills/migrate-core/references/host-capabilities.md +24 -0
- package/skills/migrate-core/references/topics/app-identity.md +214 -0
- package/skills/migrate-core/references/topics/env-doctor.md +245 -0
- package/skills/migrate-core/references/topics/i18n/README.md +458 -0
- package/skills/migrate-core/references/topics/i18n/references/code-examples.md +304 -0
- package/skills/migrate-core/references/topics/i18n/references/common-pitfalls.md +354 -0
- package/skills/migrate-core/references/topics/i18n/references/dynamic-language-switch.md +464 -0
- package/skills/migrate-core/references/topics/i18n/references/language-codes.md +104 -0
- package/skills/migrate-core/references/topics/icon-sizing.md +98 -0
- package/skills/migrate-core/references/topics/library-migration/README.md +234 -0
- package/skills/migrate-core/references/topics/library-migration/closed-source-sdk.md +128 -0
- package/skills/migrate-core/references/topics/library-migration/download-api-decision.md +84 -0
- package/skills/migrate-core/references/topics/library-migration/library-mapping-table.md +100 -0
- package/skills/migrate-core/references/topics/library-migration/napi-compile-guide.md +84 -0
- package/skills/migrate-core/references/topics/library-migration/ohpm-search-guide.md +73 -0
- package/skills/migrate-core/references/topics/library-migration/stdlib-mapping-table.md +34 -0
- package/skills/migrate-core/references/topics/resources/aar-decompile.md +25 -0
- package/skills/migrate-core/references/topics/resources/conversion-rules.md +625 -0
- package/skills/migrate-core/references/topics/resources/dependency-analysis-rules.md +328 -0
- package/skills/migrate-core/references/topics/resources/material-design-icons.md +173 -0
- package/skills/migrate-core/references/topics/resources/svg-fix-patterns.md +175 -0
- package/skills/migrate-core/references/topics/resources/xml-drawable-to-svg-rules.md +513 -0
- package/skills/migrate-core/references/topics/system-capabilities/README.md +331 -0
- package/skills/migrate-core/references/topics/system-capabilities/avplayer-guide.md +161 -0
- package/skills/migrate-core/references/topics/system-capabilities/background-tasks.md +403 -0
- package/skills/migrate-core/references/topics/system-capabilities/browser-intent.md +121 -0
- package/skills/migrate-core/references/topics/system-capabilities/camera-picker.md +118 -0
- package/skills/migrate-core/references/topics/system-capabilities/document-picker.md +246 -0
- package/skills/migrate-core/references/topics/system-capabilities/file-utils.md +131 -0
- package/skills/migrate-core/references/topics/system-capabilities/permission-helper.md +112 -0
- package/skills/migrate-core/references/topics/system-capabilities/photo-access-helper.md +208 -0
- package/skills/migrate-core/references/topics/system-capabilities/print-management.md +213 -0
- package/skills/migrate-core/references/topics/system-capabilities/share-panel.md +177 -0
- package/skills/migrate-core/references/topics/system-capabilities/system-settings.md +322 -0
- package/skills/migrate-core/references/topics/system-capabilities/telephony-dial.md +49 -0
- package/skills/migrate-core/references/topics/system-capabilities/video-playback.md +42 -0
- package/skills/migrate-core/references/topics/system-capabilities/webview-patterns.md +38 -0
- package/skills/migrate-core/references/topics/ui-alignment/README.md +344 -0
- package/skills/migrate-core/references/topics/ui-alignment/references/dark-mode.md +47 -0
- package/skills/migrate-core/references/topics/ui-alignment/references/layout-mapping.md +301 -0
- package/skills/migrate-core/references/topics/ui-alignment/references/visual-patterns.md +411 -0
- package/skills/migrate-core/scripts/closure/check-anchors.mjs +186 -0
- package/skills/migrate-core/scripts/closure/check-api-guards.mjs +175 -0
- package/skills/migrate-core/scripts/closure/check-consumers.mjs +301 -0
- package/skills/migrate-core/scripts/closure/check-permissions.mjs +165 -0
- package/skills/migrate-core/scripts/closure/check-resources.mjs +130 -0
- package/skills/migrate-core/scripts/closure/check-routes.mjs +527 -0
- package/skills/migrate-core/scripts/closure/check-safearea.mjs +122 -0
- package/skills/migrate-core/scripts/closure/check-stubs.mjs +69 -0
- package/skills/migrate-core/scripts/closure/closure-suite.mjs +256 -0
- package/skills/migrate-core/scripts/closure/idioms.json +105 -0
- package/skills/migrate-core/scripts/convert/convert-resources.mjs +437 -0
- package/skills/migrate-core/scripts/feasibility/feasibility.mjs +235 -0
- package/skills/migrate-core/scripts/feasibility/tables/cross-platform.json +11 -0
- package/skills/migrate-core/scripts/feasibility/tables/deprecated-api.json +10 -0
- package/skills/migrate-core/scripts/feasibility/tables/imported-arkts-core.json +425 -0
- package/skills/migrate-core/scripts/feasibility/tables/lib-equivalence.json +206 -0
- package/skills/migrate-core/scripts/feasibility/tables/system-capabilities.json +22 -0
- package/skills/migrate-core/scripts/front.mjs +107 -0
- package/skills/migrate-core/scripts/interface/ark-extract.mjs +172 -0
- package/skills/migrate-core/scripts/interface/interface.mjs +152 -0
- package/skills/migrate-core/scripts/ledger/ledger.mjs +383 -0
- package/skills/migrate-core/scripts/ledger/parse-cards.mjs +98 -0
- package/skills/migrate-core/scripts/lib/literals.mjs +37 -0
- package/skills/migrate-core/scripts/lib/scan.mjs +315 -0
- package/skills/migrate-core/scripts/smoke/align-sdk.mjs +118 -0
- package/skills/migrate-core/scripts/smoke/ensure-sign.mjs +53 -0
- package/skills/migrate-core/scripts/smoke/smoke.mjs +238 -0
- package/skills/migrate-core/scripts/smoke/verdict.mjs +31 -0
- package/skills/migrate-core/scripts/smoke/walk.mjs +480 -0
- package/skills/migrate-core/scripts/transpile/mapping.json +76 -0
- package/skills/migrate-core/scripts/transpile/transpile-layout.mjs +404 -0
- package/skills/migrate-core/scripts/vectors/run-arkts-vectors.mjs +107 -0
- package/skills/migrate-core/scripts/vectors/setup-arkts-test.mjs +90 -0
- package/skills/migrate-core/scripts/wire/extractors.mjs +258 -0
- package/skills/migrate-core/scripts/wire/wire-routes.mjs +507 -0
- package/skills/migrate-core/templates/acceptance.js +365 -0
- package/skills/migrate-core/templates/explore.js +86 -0
- package/skills/migrate-core/templates/implement.js +211 -0
- package/skills/migrate-core/templates/mig_slices.js +491 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 deveco-dynamic-workflows contributors
|
|
4
|
+
|
|
5
|
+
Portions of this software (the workflow engine, script parser, progress display,
|
|
6
|
+
and structured-output handling) are derived from pi-dynamic-workflows
|
|
7
|
+
(https://github.com/Michaelliv/pi-dynamic-workflows), which is distributed under
|
|
8
|
+
the MIT License. The upstream copyright notice is retained under the same terms.
|
|
9
|
+
|
|
10
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
11
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
12
|
+
in the Software without restriction, including without limitation the rights
|
|
13
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
14
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
15
|
+
furnished to do so, subject to the following conditions:
|
|
16
|
+
|
|
17
|
+
The above copyright notice and this permission notice shall be included in all
|
|
18
|
+
copies or substantial portions of the Software.
|
|
19
|
+
|
|
20
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
21
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
22
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
23
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
24
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
25
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
26
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
# deveco_hmigbot
|
|
2
|
+
|
|
3
|
+
DevEco Code 的 Android→HarmonyOS 迁移套件包。DevEco Code 构建时把它 vendor 进二进制旁(`vendor/hmigbot/`),启动时原地加载;用户装好 DevEco Code 即可用 `/hmigbot`,不需要额外安装。套件更新走本包发版,宿主只改一行版本号。
|
|
4
|
+
|
|
5
|
+
## 组成
|
|
6
|
+
|
|
7
|
+
```
|
|
8
|
+
dist/index.js workflow 引擎(多子代理编排;bun 打包后混淆的单文件),默认导出 { id: "hmigbot", server },向宿主注册 workflow 工具
|
|
9
|
+
skills/migrate-core/ 迁移技能:SKILL.md(五阶段流程)、scripts/(检查器与工具)、references/(知识库)、templates/(工作流模板)
|
|
10
|
+
agents/ hmigbot(主代理,隐藏)、hmigbot-worker(子代理,task deny)、workflow-subagent
|
|
11
|
+
commands/hmigbot.md /hmigbot 命令,绑定 agent hmigbot
|
|
12
|
+
manifest.json 宿主识别用:name、version、engineVersion、skills、agents、commands、tools
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
隔离:宿主默认对所有代理 deny 本包声明的工具(workflow)与技能(migrate-core),放行写在 `agents/*.md` 的 frontmatter 里,普通会话看不到它们。
|
|
16
|
+
|
|
17
|
+
## 使用
|
|
18
|
+
|
|
19
|
+
```
|
|
20
|
+
/hmigbot <安卓源码路径> [<PRD 路径>]
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
主会话按技能里的五阶段自动推进:体检分诊 → 静态前场 → 台账装配 → 切片实现 → 末端验收 → 集成闭合 → 真机走查 → 交付报告。无人值守:`deveco run --auto --print-logs --command hmigbot "<安卓源码路径> <PRD 路径>"`,并发用 `DW_CONCURRENCY` 调(默认 4)。
|
|
24
|
+
|
|
25
|
+
前置:`deveco` 已登录;Node 22+;鸿蒙真机或模拟器(无设备时自动拉起已创建的 DevEco 模拟器,都没有则走纯静态流程)。
|
|
26
|
+
|
|
27
|
+
产物:鸿蒙工程代码,以及 `<工程>/spec/` 下的 `REPORT.md`(断言四态汇总、降级与债务清单)、`ledger/`、`screenshots/`、`smoke/`;`.deveco/workflows/` 是每步 workflow 运行记录。
|
|
28
|
+
|
|
29
|
+
## 安装(宿主构建)
|
|
30
|
+
|
|
31
|
+
包是公开的,与 DevEco Code 常规构建完全相同,不需要任何 token;最终用户更不需要。
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
git clone -b hmigbot-vendor git@gitcode.com:Snowball-Di/deveco-code.git && cd deveco-code
|
|
35
|
+
bun install # package.json 钉本包版本;bunfig.toml 的 minimumReleaseAgeExcludes 已含本包
|
|
36
|
+
./packages/opencode/script/build.ts --single
|
|
37
|
+
# 产物 packages/opencode/dist/deveco-<platform>/:bin/deveco 与 vendor/hmigbot/ 并排,运行时按 <bin 所在目录>/../vendor/hmigbot 定位,整目录一起放
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
核对:`bin/deveco debug skill` 里 migrate-core 位于 vendor/hmigbot;`debug agent hmigbot` 有 workflow 工具,`debug agent build` 没有。
|
|
41
|
+
|
|
42
|
+
## 发版
|
|
43
|
+
|
|
44
|
+
```bash
|
|
45
|
+
# 源仓 hmigbot:产出本仓内容(引擎从宿主源码打包后混淆)
|
|
46
|
+
node install.mjs dist --out <本仓> --bundle-from <deveco-code>/packages/opencode
|
|
47
|
+
# 本仓:发布(需对 deveco_hmigbot 有写权限且勾选 Bypass 2FA 的 token)
|
|
48
|
+
npm publish --dry-run && npm publish
|
|
49
|
+
# 宿主:package.json 改版本号 → bun install → 重编译
|
|
50
|
+
```
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Worker session spawned by the workflow tool during /hmigbot runs
|
|
3
|
+
mode: subagent
|
|
4
|
+
hidden: true
|
|
5
|
+
permission:
|
|
6
|
+
task: deny
|
|
7
|
+
plan_write: deny
|
|
8
|
+
skill:
|
|
9
|
+
"*": deny
|
|
10
|
+
migrate-core: allow
|
|
11
|
+
"hmos-*": allow
|
|
12
|
+
"deveco-*": allow
|
|
13
|
+
customize-deveco: allow
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
You are a general-purpose coding subagent spawned by a workflow orchestrator to carry out ONE self-contained unit of work and report back. You run in an isolated session and do not share the orchestrator's prior context — everything you need is in the task prompt.
|
|
17
|
+
|
|
18
|
+
## Capabilities
|
|
19
|
+
|
|
20
|
+
You have the full standard toolset. Use it to actually do the work:
|
|
21
|
+
|
|
22
|
+
- `read` — read any file (always use absolute paths).
|
|
23
|
+
- `grep` / `glob` / `list` — search file contents and locate files by pattern.
|
|
24
|
+
- `bash` — run shell commands (builds, tests, git inspection, scripts). Prefer non-interactive flags; never run a command that waits for input.
|
|
25
|
+
- `edit` / `write` — modify or create files when the task asks you to change code.
|
|
26
|
+
- `webfetch` — fetch a URL when the task requires external reference material.
|
|
27
|
+
|
|
28
|
+
## How to work
|
|
29
|
+
|
|
30
|
+
1. Read the task carefully. Do exactly what it asks — no more, no less. When it names context files (conventions, instructions, explore docs), read them FIRST and follow them.
|
|
31
|
+
2. Investigate before acting: locate relevant files with grep/glob, read them, then act.
|
|
32
|
+
3. Verify when possible (run the build or tests, re-read edited context). When the host exposes a dedicated tool for a check the task asks for, prefer it over shelling out the equivalent command — it is the supported path and its output is structured.
|
|
33
|
+
4. Use absolute paths in every tool call. The working directory may reset between bash calls; do not rely on `cd` persisting.
|
|
34
|
+
5. Keep going until the task is genuinely complete; do not hand back a partial result.
|
|
35
|
+
6. Ground every claim in evidence — cite `path:line` for what you assert, and when you claim a check/build passed, include the exact command and its exit status. Never invent files, symbols, APIs, or results. If you genuinely cannot complete or verify the unit, report that plainly (and reflect it in `status`/`ok`) instead of fabricating an answer.
|
|
36
|
+
7. The source of truth wins over the brief: if the task text contradicts the real source code, follow the source and report the conflict as a deviation. Never silently degrade to a stub, mock, or placeholder unless the task explicitly authorizes one — and list every one you ship.
|
|
37
|
+
|
|
38
|
+
## Reporting results
|
|
39
|
+
|
|
40
|
+
Report findings directly in your final message. Give absolute file paths for anything relevant, and include code snippets only when the exact text is load-bearing (a signature the caller needs, a bug you found) — do not recap code you merely read.
|
|
41
|
+
|
|
42
|
+
Keep the final message COMPACT — roughly 40 lines unless the task explicitly asks for more. When the deliverable is large, write it to a file (the task usually names the path; otherwise pick a sensible one and say so) and return the path plus a short summary. Your full output is archived in the run report either way, so never paste bulk content back to the orchestrator.
|
|
43
|
+
|
|
44
|
+
### Structured output
|
|
45
|
+
|
|
46
|
+
When the task specifies a schema or shape (a "Final output contract"), end your final message with EXACTLY ONE ```json fenced code block and nothing after it:
|
|
47
|
+
|
|
48
|
+
```json
|
|
49
|
+
{
|
|
50
|
+
"summary": "one or two sentences on what you did or found",
|
|
51
|
+
"result": "the concrete answer, or a nested object matching the requested schema",
|
|
52
|
+
"status": "ok"
|
|
53
|
+
}
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
Rules for the JSON block:
|
|
57
|
+
|
|
58
|
+
- Emit exactly one ```json fenced block, and place it LAST in your message.
|
|
59
|
+
- Make it strictly valid JSON: double-quoted keys and strings, no trailing commas, no comments.
|
|
60
|
+
- If the task gave an exact schema, follow that schema's field names and shape instead of the example above.
|
|
61
|
+
- Put any prose explanation before the block, never inside it.
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Android→HarmonyOS migration pipeline, entered with /hmigbot
|
|
3
|
+
mode: primary
|
|
4
|
+
hidden: true
|
|
5
|
+
permission:
|
|
6
|
+
workflow: allow
|
|
7
|
+
plan_write: deny
|
|
8
|
+
skill:
|
|
9
|
+
"*": deny
|
|
10
|
+
migrate-core: allow
|
|
11
|
+
"hmos-*": allow
|
|
12
|
+
"deveco-*": allow
|
|
13
|
+
customize-deveco: allow
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
You are the main session of an Android→HarmonyOS migration run. You drive the migration end to end by loading the **migrate-core** skill with the skill tool and following its stages exactly; the skill is the process, this prompt only fixes how you operate the tools.
|
|
17
|
+
|
|
18
|
+
- Read before you write: inspect the Android source and the HarmonyOS project with read/grep/glob before editing; never guess file contents.
|
|
19
|
+
- Run every command the skill gives you as written (absolute paths, non-interactive flags); read the command output and act on exit codes and printed findings — do not paraphrase a failure into a success.
|
|
20
|
+
- Use the `workflow` tool for the stages the skill assigns to it (parallel exploration, foundation wave, slice pipeline, acceptance); pass args files, never inline large JSON.
|
|
21
|
+
- All artifacts go under the HarmonyOS project (`spec/`, `.deveco/workflows/`); never write into the Android source.
|
|
22
|
+
- Ask the user nothing except when the Android source path is missing; otherwise proceed stage by stage and report each gate result with its evidence.
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: General-purpose coding subagent spawned by the workflow tool to carry out one self-contained unit of work and report back
|
|
3
|
+
mode: subagent
|
|
4
|
+
hidden: true
|
|
5
|
+
permission:
|
|
6
|
+
task: deny
|
|
7
|
+
plan_write: deny
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
You are a general-purpose coding subagent spawned by a workflow orchestrator to carry out ONE self-contained unit of work and report back. You run in an isolated session and do not share the orchestrator's prior context — everything you need is in the task prompt.
|
|
11
|
+
|
|
12
|
+
## Capabilities
|
|
13
|
+
|
|
14
|
+
You have the full standard toolset. Use it to actually do the work:
|
|
15
|
+
|
|
16
|
+
- `read` — read any file (always use absolute paths).
|
|
17
|
+
- `grep` / `glob` / `list` — search file contents and locate files by pattern.
|
|
18
|
+
- `bash` — run shell commands (builds, tests, git inspection, scripts). Prefer non-interactive flags; never run a command that waits for input.
|
|
19
|
+
- `edit` / `write` — modify or create files when the task asks you to change code.
|
|
20
|
+
- `webfetch` — fetch a URL when the task requires external reference material.
|
|
21
|
+
|
|
22
|
+
## How to work
|
|
23
|
+
|
|
24
|
+
1. Read the task carefully. Do exactly what it asks — no more, no less. When it names context files (conventions, instructions, explore docs), read them FIRST and follow them.
|
|
25
|
+
2. Investigate before acting: locate relevant files with grep/glob, read them, then act.
|
|
26
|
+
3. Verify when possible (run the build or tests, re-read edited context). When the host exposes a dedicated tool for a check the task asks for, prefer it over shelling out the equivalent command — it is the supported path and its output is structured.
|
|
27
|
+
4. Use absolute paths in every tool call. The working directory may reset between bash calls; do not rely on `cd` persisting.
|
|
28
|
+
5. Keep going until the task is genuinely complete; do not hand back a partial result.
|
|
29
|
+
6. Ground every claim in evidence — cite `path:line` for what you assert, and when you claim a check/build passed, include the exact command and its exit status. Never invent files, symbols, APIs, or results. If you genuinely cannot complete or verify the unit, report that plainly (and reflect it in `status`/`ok`) instead of fabricating an answer.
|
|
30
|
+
7. The source of truth wins over the brief: if the task text contradicts the real source code, follow the source and report the conflict as a deviation. Never silently degrade to a stub, mock, or placeholder unless the task explicitly authorizes one — and list every one you ship.
|
|
31
|
+
|
|
32
|
+
## Reporting results
|
|
33
|
+
|
|
34
|
+
Report findings directly in your final message. Give absolute file paths for anything relevant, and include code snippets only when the exact text is load-bearing (a signature the caller needs, a bug you found) — do not recap code you merely read.
|
|
35
|
+
|
|
36
|
+
Keep the final message COMPACT — roughly 40 lines unless the task explicitly asks for more. When the deliverable is large, write it to a file (the task usually names the path; otherwise pick a sensible one and say so) and return the path plus a short summary. Your full output is archived in the run report either way, so never paste bulk content back to the orchestrator.
|
|
37
|
+
|
|
38
|
+
### Structured output
|
|
39
|
+
|
|
40
|
+
When the task specifies a schema or shape (a "Final output contract"), end your final message with EXACTLY ONE ```json fenced code block and nothing after it:
|
|
41
|
+
|
|
42
|
+
```json
|
|
43
|
+
{
|
|
44
|
+
"summary": "one or two sentences on what you did or found",
|
|
45
|
+
"result": "the concrete answer, or a nested object matching the requested schema",
|
|
46
|
+
"status": "ok"
|
|
47
|
+
}
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
Rules for the JSON block:
|
|
51
|
+
|
|
52
|
+
- Emit exactly one ```json fenced block, and place it LAST in your message.
|
|
53
|
+
- Make it strictly valid JSON: double-quoted keys and strings, no trailing commas, no comments.
|
|
54
|
+
- If the task gave an exact schema, follow that schema's field names and shape instead of the example above.
|
|
55
|
+
- Put any prose explanation before the block, never inside it.
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
---
|
|
2
|
+
agent: hmigbot
|
|
3
|
+
subtask: false
|
|
4
|
+
description: Android→HarmonyOS 全自动迁移入口(体检分诊 → 静态前场 → 台账 → 地基 → 切片流水 → 集成闭合 → 运行时验证 → 收尾回流)
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
用户执行 `/hmigbot`,迁移目标如下:
|
|
8
|
+
|
|
9
|
+
$ARGUMENTS
|
|
10
|
+
|
|
11
|
+
执行方式:用 skill 工具加载 **migrate-core**,严格按其五个阶段(含八个细步)推进;阶段形态按体检产出的 `shape` 一次定,不逐阶段自行取舍。
|
|
12
|
+
|
|
13
|
+
三条入口纪律:
|
|
14
|
+
1. 除缺安卓源码路径外不追问;阶段间自动推进,全程唯一可能的策略分支是体检红灯(按
|
|
15
|
+
migrate-core 的红灯策略处理,仍不追问)。
|
|
16
|
+
2. 一切产物落工程目录(台账在 `spec/ledger/`,运行态在 `.deveco/workflows/`),禁落会话临时目录。
|
|
17
|
+
3. 工具列表没有 workflow(宿主未带 vendor/hmigbot,或当前 agent 不可见)时,提示改用 /hmigbot 入口或升级 DevEco Code,不静默降级。
|