@buaa_smat/hometrans 0.1.11 → 0.1.13

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.
@@ -0,0 +1,181 @@
1
+ {
2
+ "$comment": [
3
+ "Declarative environment requirements for `ht init`.",
4
+ "`ht init` reads this file to (1) detect external tools and (2) report which",
5
+ "skills/agents are BLOCKED / LIMITED / OK by anything missing.",
6
+ "",
7
+ "tools[<id>]:",
8
+ " source 'path' -> locate a runnable command (where/which) trying each alias;",
9
+ " 'env-dir' -> a directory existence check (envVar resolved from ht config).",
10
+ " aliases command names to try in order (e.g. python, python3, py). First hit wins.",
11
+ " verify argv passed to the resolved command to print its version (existence proof too).",
12
+ " Use a flag that prints-and-exits. NEVER use `python -v` (verbose REPL -> hangs);",
13
+ " use `python --version`.",
14
+ " versionStream 'stdout' (default) or 'stderr' (java -version prints to stderr).",
15
+ " versionRegex capture group(s) for the numeric version in the verify output.",
16
+ " version default required range for this tool, {min, max} as [min, max) — min",
17
+ " inclusive, max exclusive; either may be null/omitted = unbounded. A",
18
+ " requirement dependency may override this.",
19
+ " fallback when not on PATH, probe <base>/<segments>/<exe>. base is a config env key",
20
+ " (DEVECO_SDK_HOME / DEVECO_PATH). Mirrors how the skills resolve hdc/java.",
21
+ " hint shown when the tool is missing.",
22
+ "",
23
+ "requirements[]: name + kind (skill|agent) + dependencies[] of",
24
+ " { tool, level: 'required'|'optional', version?: {min,max} }.",
25
+ " A missing 'required' tool -> BLOCKED; only 'optional' missing -> LIMITED; else OK."
26
+ ],
27
+
28
+ "tools": {
29
+ "deveco": {
30
+ "source": "env-dir",
31
+ "envVar": "DEVECO_SDK_HOME",
32
+ "hint": "set DEVECO_SDK_HOME via `ht init` (DevEco Studio install)"
33
+ },
34
+ "adb": {
35
+ "source": "path",
36
+ "aliases": ["adb"],
37
+ "verify": ["version"],
38
+ "versionRegex": "(\\d+\\.\\d+(?:\\.\\d+)?)",
39
+ "hint": "Android SDK platform-tools (needed for Android-device capture)"
40
+ },
41
+ "hdc": {
42
+ "source": "path",
43
+ "aliases": ["hdc"],
44
+ "verify": ["-v"],
45
+ "versionRegex": "(\\d+\\.\\d+(?:\\.\\d+)?)",
46
+ "fallback": { "base": "DEVECO_SDK_HOME", "segments": ["default", "openharmony", "toolchains"], "exe": "hdc" },
47
+ "hint": "ships with DevEco: <sdk>/default/openharmony/toolchains"
48
+ },
49
+ "python": {
50
+ "source": "path",
51
+ "aliases": ["python", "python3", "py"],
52
+ "verify": ["--version"],
53
+ "versionRegex": "(\\d+\\.\\d+(?:\\.\\d+)?)",
54
+ "version": { "min": "3.10.0", "max": null },
55
+ "hint": "install Python >= 3.10 and add to PATH (UI-align capture/parse scripts)"
56
+ },
57
+ "uv": {
58
+ "source": "path",
59
+ "aliases": ["uv"],
60
+ "verify": ["--version"],
61
+ "versionRegex": "(\\d+\\.\\d+(?:\\.\\d+)?)",
62
+ "hint": "https://docs.astral.sh/uv (AutoTest runs under uv)"
63
+ },
64
+ "java": {
65
+ "source": "path",
66
+ "aliases": ["java"],
67
+ "verify": ["-version"],
68
+ "versionStream": "stderr",
69
+ "versionRegex": "(\\d+(?:\\.\\d+){1,2})",
70
+ "fallback": { "base": "DEVECO_PATH", "segments": ["jbr", "bin"], "exe": "java" },
71
+ "hint": "any JDK 17+, or reuse DevEco jbr: <deveco>/jbr/bin"
72
+ },
73
+ "gitnexus": {
74
+ "source": "path",
75
+ "aliases": ["gitnexus"],
76
+ "verify": ["--version"],
77
+ "versionRegex": "(\\d+\\.\\d+(?:\\.\\d+)?)",
78
+ "hint": "npm i -g gitnexus && gitnexus setup"
79
+ }
80
+ },
81
+
82
+ "requirements": [
83
+ {
84
+ "name": "hmos-spec-generate",
85
+ "kind": "skill",
86
+ "dependencies": [{ "tool": "gitnexus", "level": "required" }]
87
+ },
88
+ {
89
+ "name": "hmos-resources-convert",
90
+ "kind": "skill",
91
+ "dependencies": [{ "tool": "java", "level": "optional" }],
92
+ "note": "no java -> falls back to source res/"
93
+ },
94
+ {
95
+ "name": "hmos-batch-ui-align",
96
+ "kind": "skill",
97
+ "dependencies": [
98
+ { "tool": "python", "level": "required", "version": { "min": "3.10.0", "max": null } },
99
+ { "tool": "adb", "level": "optional" }
100
+ ],
101
+ "note": "adb only for page exploration"
102
+ },
103
+ {
104
+ "name": "hmos-incremental-ui-align",
105
+ "kind": "skill",
106
+ "dependencies": [
107
+ { "tool": "deveco", "level": "required" },
108
+ { "tool": "python", "level": "required", "version": { "min": "3.10.0", "max": null } },
109
+ { "tool": "hdc", "level": "required" },
110
+ { "tool": "adb", "level": "required" }
111
+ ]
112
+ },
113
+ {
114
+ "name": "hmos-integration-test",
115
+ "kind": "skill",
116
+ "dependencies": [
117
+ { "tool": "deveco", "level": "required" },
118
+ { "tool": "uv", "level": "required" },
119
+ { "tool": "hdc", "level": "required" }
120
+ ]
121
+ },
122
+ {
123
+ "name": "hmos-fix-build-errors",
124
+ "kind": "skill",
125
+ "dependencies": [{ "tool": "deveco", "level": "required" }]
126
+ },
127
+ {
128
+ "name": "hmos-convert-pipeline",
129
+ "kind": "skill",
130
+ "dependencies": [
131
+ { "tool": "deveco", "level": "required" },
132
+ { "tool": "uv", "level": "optional" },
133
+ { "tool": "hdc", "level": "optional" }
134
+ ],
135
+ "note": "test stage skippable via skip-test"
136
+ },
137
+ {
138
+ "name": "logic-context-builder",
139
+ "kind": "agent",
140
+ "dependencies": [{ "tool": "python", "level": "optional" }]
141
+ },
142
+ {
143
+ "name": "logic-coder",
144
+ "kind": "agent",
145
+ "dependencies": [{ "tool": "python", "level": "optional" }]
146
+ },
147
+ {
148
+ "name": "spec-generator",
149
+ "kind": "agent",
150
+ "dependencies": [{ "tool": "gitnexus", "level": "required" }]
151
+ },
152
+ {
153
+ "name": "build-fixer",
154
+ "kind": "agent",
155
+ "dependencies": [{ "tool": "deveco", "level": "required" }]
156
+ },
157
+ {
158
+ "name": "code-reviewer",
159
+ "kind": "agent",
160
+ "dependencies": [{ "tool": "deveco", "level": "optional" }]
161
+ },
162
+ {
163
+ "name": "review-fixer",
164
+ "kind": "agent",
165
+ "dependencies": []
166
+ },
167
+ {
168
+ "name": "self-tester",
169
+ "kind": "agent",
170
+ "dependencies": [
171
+ { "tool": "uv", "level": "required" },
172
+ { "tool": "hdc", "level": "required" }
173
+ ]
174
+ },
175
+ {
176
+ "name": "self-test-fixer",
177
+ "kind": "agent",
178
+ "dependencies": []
179
+ }
180
+ ]
181
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@buaa_smat/hometrans",
3
- "version": "0.1.11",
3
+ "version": "0.1.13",
4
4
  "description": "HomeTrans (Android-to-HarmonyOS) skill + agent installer. Run `ht init` to distribute conversion skills and subagents into AI editors.",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -17,7 +17,8 @@
17
17
  "skills",
18
18
  "agents",
19
19
  "tools",
20
- "resource"
20
+ "resource",
21
+ "env-requirements.json"
21
22
  ],
22
23
  "scripts": {
23
24
  "build": "node scripts/build.js",
@@ -1,11 +1,11 @@
1
1
  {
2
- "android.app_name": "Salt Player",
3
- "android.package": "com.salt.music",
4
- "android.project_dir": "E:\\SaltPlayerAndroid-main\\SuvineMusicX",
5
- "harmony.app_name": "Salt Player",
6
- "harmony.package": "com.xuncorp.sp2",
7
- "harmony.project_dir": "E:\\SPH_branches\\SaltPlayerHarmony",
8
- "hmos_sdk_dir": "E:\\DevEco Studio\\sdk\\default",
2
+ "android.app_name": "",
3
+ "android.package": "com.xxxxxx",
4
+ "android.project_dir": "",
5
+ "harmony.app_name": "",
6
+ "harmony.package": "com.xxxxxx",
7
+ "harmony.project_dir": "",
8
+ "hmos_sdk_dir": "",
9
9
  "glm_api_key": "",
10
- "capture_output_dir": "E:\\tmp_saltplayer"
10
+ "capture_output_dir": ""
11
11
  }