@windsland52/maafw-live 0.0.0-stage → 0.3.0
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 +21 -0
- package/README.md +278 -2
- package/bin/maafw-live.mjs +25 -0
- package/docs/daemon-protocol.md +116 -0
- package/docs/keyframe-evidence-contract-v0.md +61 -0
- package/docs/keyframe-retention-contract-v0.md +236 -0
- package/lib/client/daemon.js +234 -0
- package/lib/client/daemon.js.map +1 -0
- package/lib/commands/annotate.js +172 -0
- package/lib/commands/annotate.js.map +1 -0
- package/lib/commands/calibrate.js +61 -0
- package/lib/commands/calibrate.js.map +1 -0
- package/lib/commands/color.js +73 -0
- package/lib/commands/color.js.map +1 -0
- package/lib/commands/crop.js +228 -0
- package/lib/commands/crop.js.map +1 -0
- package/lib/commands/env.js +215 -0
- package/lib/commands/env.js.map +1 -0
- package/lib/commands/index.js +64 -0
- package/lib/commands/index.js.map +1 -0
- package/lib/commands/input.js +219 -0
- package/lib/commands/input.js.map +1 -0
- package/lib/commands/kf.js +131 -0
- package/lib/commands/kf.js.map +1 -0
- package/lib/commands/reco.js +211 -0
- package/lib/commands/reco.js.map +1 -0
- package/lib/commands/repl.js +698 -0
- package/lib/commands/repl.js.map +1 -0
- package/lib/commands/runtime.js +514 -0
- package/lib/commands/runtime.js.map +1 -0
- package/lib/commands/skill.js +169 -0
- package/lib/commands/skill.js.map +1 -0
- package/lib/commands/timing.js +229 -0
- package/lib/commands/timing.js.map +1 -0
- package/lib/commands/version.js +66 -0
- package/lib/commands/version.js.map +1 -0
- package/lib/daemon/framed.mjs +2850 -0
- package/lib/daemon/reco_child.mjs +146 -0
- package/lib/exec.js +96 -0
- package/lib/exec.js.map +1 -0
- package/lib/flags.js +42 -0
- package/lib/flags.js.map +1 -0
- package/lib/image.js +90 -0
- package/lib/image.js.map +1 -0
- package/lib/index.js +139 -0
- package/lib/index.js.map +1 -0
- package/lib/interface/index.js +12 -0
- package/lib/interface/index.js.map +1 -0
- package/lib/interface/jsonc.js +95 -0
- package/lib/interface/jsonc.js.map +1 -0
- package/lib/interface/load.js +307 -0
- package/lib/interface/load.js.map +1 -0
- package/lib/interface/override.js +103 -0
- package/lib/interface/override.js.map +1 -0
- package/lib/interface/plan.js +188 -0
- package/lib/interface/plan.js.map +1 -0
- package/lib/pkg.js +18 -0
- package/lib/pkg.js.map +1 -0
- package/lib/protocol.js +90 -0
- package/lib/protocol.js.map +1 -0
- package/lib/runtime/actions.js +110 -0
- package/lib/runtime/actions.js.map +1 -0
- package/lib/runtime/keyframes.js +73 -0
- package/lib/runtime/keyframes.js.map +1 -0
- package/lib/runtime/session.js +86 -0
- package/lib/runtime/session.js.map +1 -0
- package/lib/types/client/daemon.d.ts +86 -0
- package/lib/types/commands/annotate.d.ts +3 -0
- package/lib/types/commands/calibrate.d.ts +7 -0
- package/lib/types/commands/color.d.ts +9 -0
- package/lib/types/commands/crop.d.ts +3 -0
- package/lib/types/commands/env.d.ts +2 -0
- package/lib/types/commands/index.d.ts +13 -0
- package/lib/types/commands/input.d.ts +17 -0
- package/lib/types/commands/kf.d.ts +10 -0
- package/lib/types/commands/reco.d.ts +23 -0
- package/lib/types/commands/repl.d.ts +2 -0
- package/lib/types/commands/runtime.d.ts +48 -0
- package/lib/types/commands/skill.d.ts +17 -0
- package/lib/types/commands/timing.d.ts +64 -0
- package/lib/types/commands/version.d.ts +3 -0
- package/lib/types/exec.d.ts +31 -0
- package/lib/types/flags.d.ts +58 -0
- package/lib/types/image.d.ts +27 -0
- package/lib/types/index.d.ts +1 -0
- package/lib/types/interface/index.d.ts +11 -0
- package/lib/types/interface/jsonc.d.ts +9 -0
- package/lib/types/interface/load.d.ts +113 -0
- package/lib/types/interface/override.d.ts +33 -0
- package/lib/types/interface/plan.d.ts +47 -0
- package/lib/types/pkg.d.ts +6 -0
- package/lib/types/protocol.d.ts +108 -0
- package/lib/types/runtime/actions.d.ts +166 -0
- package/lib/types/runtime/keyframes.d.ts +43 -0
- package/lib/types/runtime/session.d.ts +53 -0
- package/lib/types/update-check.d.ts +20 -0
- package/lib/types/usage.d.ts +3 -0
- package/lib/update-check.js +97 -0
- package/lib/update-check.js.map +1 -0
- package/lib/usage.js +50 -0
- package/lib/usage.js.map +1 -0
- package/package.json +81 -4
- package/skills/README.md +51 -0
- package/skills/maafw-live/SKILL.md +263 -0
- package/skills/maafw-live/references/examples.md +238 -0
- package/skills/maafw-live/references/pitfalls.md +118 -0
- package/skills/maafw-live/references/workflows.md +159 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"repl.js","sourceRoot":"","sources":["../../src/commands/repl.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,514 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 设备与运行时的命令面:probe / device / connect / disconnect / screencap / frame / run / stop。
|
|
3
|
+
*
|
|
4
|
+
* 这一层只做三件事:解析选项、调 runtime/actions、把它翻译成 CLI 信封。任何领域规则
|
|
5
|
+
* (控制器规划、资源解析、时间线)都不许写在这里——REPL 与其它壳(编辑器插件、面板)调的是同一批动作函数。
|
|
6
|
+
*/
|
|
7
|
+
import { mkdirSync } from 'node:fs';
|
|
8
|
+
import { dirname, join } from 'node:path';
|
|
9
|
+
import { defaultRunDir } from '../client/daemon.js';
|
|
10
|
+
import { computePipelineOverride, mergeOverride } from '../interface/index.js';
|
|
11
|
+
import { EXIT, fail } from '../protocol.js';
|
|
12
|
+
import * as act from '../runtime/actions.js';
|
|
13
|
+
import { withDaemon } from '../runtime/actions.js';
|
|
14
|
+
import { describeSession, ensureSession, SessionError } from '../runtime/session.js';
|
|
15
|
+
/** 连接类选项:凡是要设备的命令都接受同一组,保证"怎么连"只有一套说法。 */
|
|
16
|
+
export const CONNECT_OPTIONS = {
|
|
17
|
+
project: { type: 'string' },
|
|
18
|
+
controller: { type: 'string' },
|
|
19
|
+
resource: { type: 'string' },
|
|
20
|
+
hwnd: { type: 'string' },
|
|
21
|
+
address: { type: 'string' },
|
|
22
|
+
kind: { type: 'string' },
|
|
23
|
+
target: { type: 'string' },
|
|
24
|
+
'short-side': { type: 'string' },
|
|
25
|
+
'long-side': { type: 'string' },
|
|
26
|
+
raw: { type: 'boolean' },
|
|
27
|
+
};
|
|
28
|
+
export function sessionOptions(values) {
|
|
29
|
+
const num = (k) => {
|
|
30
|
+
const v = values[k];
|
|
31
|
+
return typeof v === 'string' && v !== '' ? Number(v) : undefined;
|
|
32
|
+
};
|
|
33
|
+
const str = (k) => (typeof values[k] === 'string' ? values[k] : undefined);
|
|
34
|
+
return {
|
|
35
|
+
project: str('project'),
|
|
36
|
+
controller: str('controller'),
|
|
37
|
+
resource: str('resource'),
|
|
38
|
+
hwnd: str('hwnd'),
|
|
39
|
+
address: str('address'),
|
|
40
|
+
kind: str('kind'),
|
|
41
|
+
target: str('target'),
|
|
42
|
+
shortSide: num('short-side'),
|
|
43
|
+
longSide: num('long-side'),
|
|
44
|
+
rawSize: values.raw === true,
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
/** daemon 抛出的错误一律翻译成结构化失败,不让堆栈进模型上下文。 */
|
|
48
|
+
export function daemonFail(e, hint) {
|
|
49
|
+
if (e instanceof SessionError)
|
|
50
|
+
return fail(e.code, e.message, hint, EXIT.ENV);
|
|
51
|
+
const msg = e instanceof Error ? e.message : String(e);
|
|
52
|
+
return fail('DAEMON_ERROR', msg, hint ?? '用 maafw-live probe 检查运行时;连接类错误先 maafw-live device 看有没有设备', EXIT.ENV);
|
|
53
|
+
}
|
|
54
|
+
export const probeCommand = {
|
|
55
|
+
name: 'probe',
|
|
56
|
+
summary: '自检 maa-node 运行时:绑定版本、adb/win32 设备发现数',
|
|
57
|
+
usage: 'maafw-live probe',
|
|
58
|
+
async run() {
|
|
59
|
+
try {
|
|
60
|
+
return await withDaemon(async (client) => {
|
|
61
|
+
const info = await act.probe(client);
|
|
62
|
+
const devices = await act.deviceList(client, 'all').catch(() => []);
|
|
63
|
+
const human = [
|
|
64
|
+
'maa-node ' + String(info.version ?? '(未知)'),
|
|
65
|
+
'adb 设备 ' + String(info.adb ?? '?'),
|
|
66
|
+
'win32 窗口 ' + String(info.win32 ?? '?'),
|
|
67
|
+
'可用于连接的设备 ' + devices.length + ' 个',
|
|
68
|
+
];
|
|
69
|
+
for (const err of info.errors ?? [])
|
|
70
|
+
human.push(' error: ' + err);
|
|
71
|
+
return { exitCode: EXIT.OK, human, data: { ...info, devices: devices.length } };
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
catch (e) {
|
|
75
|
+
return daemonFail(e, '探针失败通常意味着 @maaxyz/maa-node 未安装或原生包与平台不匹配');
|
|
76
|
+
}
|
|
77
|
+
},
|
|
78
|
+
};
|
|
79
|
+
export const deviceCommand = {
|
|
80
|
+
name: 'device',
|
|
81
|
+
summary: '列出可连接的设备:adb 设备与 win32 窗口',
|
|
82
|
+
usage: 'maafw-live device [--kind all|adb|win32]',
|
|
83
|
+
options: { kind: { type: 'string' } },
|
|
84
|
+
async run(ctx) {
|
|
85
|
+
const kind = (typeof ctx.values.kind === 'string' ? ctx.values.kind : 'all');
|
|
86
|
+
if (!['all', 'adb', 'win32'].includes(kind)) {
|
|
87
|
+
return fail('BAD_ARGUMENTS', 'kind 只能是 all / adb / win32', undefined, EXIT.USAGE);
|
|
88
|
+
}
|
|
89
|
+
try {
|
|
90
|
+
return await withDaemon(async (client) => {
|
|
91
|
+
const list = await act.deviceList(client, kind);
|
|
92
|
+
const human = list.length
|
|
93
|
+
? list.map((d) => {
|
|
94
|
+
const r = d;
|
|
95
|
+
return ' ' + String(r.kind) + ' ' + String(r.id) + ' ' + String(r.name ?? '') +
|
|
96
|
+
(r.cls ? ' [' + r.cls + ']' : '');
|
|
97
|
+
})
|
|
98
|
+
: ['(未发现设备)'];
|
|
99
|
+
return {
|
|
100
|
+
exitCode: list.length ? EXIT.OK : EXIT.FINDINGS,
|
|
101
|
+
human: ['设备 ' + list.length + ' 个:', ...human],
|
|
102
|
+
data: { count: list.length, devices: list },
|
|
103
|
+
...(list.length ? {} : { suggestedCommands: ['maafw-live device'] }),
|
|
104
|
+
};
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
catch (e) {
|
|
108
|
+
return daemonFail(e);
|
|
109
|
+
}
|
|
110
|
+
},
|
|
111
|
+
};
|
|
112
|
+
export const connectCommand = {
|
|
113
|
+
name: 'connect',
|
|
114
|
+
summary: '连接设备(进程态:命令退出即断开;多步操作用 maafw-live repl)',
|
|
115
|
+
usage: 'maafw-live connect --project <dir> | --kind win32|adb|gamepad [--target ...]',
|
|
116
|
+
options: { ...CONNECT_OPTIONS },
|
|
117
|
+
async run(ctx) {
|
|
118
|
+
const o = sessionOptions(ctx.values);
|
|
119
|
+
if (!o.project && !o.kind) {
|
|
120
|
+
return fail('BAD_ARGUMENTS', '要么给 --project <dir>(按 interface.json 规划),要么给 --kind', '推荐 --project:控制器类型/窗口正则/输入方法/识别缩放全跟项目走', EXIT.USAGE);
|
|
121
|
+
}
|
|
122
|
+
try {
|
|
123
|
+
return await withDaemon(async (client) => {
|
|
124
|
+
const s = await ensureSession(client, o);
|
|
125
|
+
const lines = describeSession(s);
|
|
126
|
+
if (s.streamStopped) {
|
|
127
|
+
/* 重建控制器会让旧流失效:如实说,别让调用方以为是设备卡了(曾经是"流静默死掉") */
|
|
128
|
+
lines.push('', '帧流:已停止(本次连接重建了控制器);要看帧就 stream start 重开。');
|
|
129
|
+
}
|
|
130
|
+
lines.push('', '注意:连接是进程态,本命令退出即断开。多步操作请用 maafw-live repl(连接一次、命令复用)。');
|
|
131
|
+
return {
|
|
132
|
+
exitCode: EXIT.OK,
|
|
133
|
+
human: lines,
|
|
134
|
+
data: {
|
|
135
|
+
session: s.session ?? null,
|
|
136
|
+
controller: s.plan?.controllerName ?? null,
|
|
137
|
+
resourcePaths: s.plan?.resource?.paths ?? null,
|
|
138
|
+
},
|
|
139
|
+
};
|
|
140
|
+
});
|
|
141
|
+
}
|
|
142
|
+
catch (e) {
|
|
143
|
+
return daemonFail(e, '没有匹配的窗口/设备时:先 maafw-live device 看目标是否存在,或用 --hwnd 显式指定');
|
|
144
|
+
}
|
|
145
|
+
},
|
|
146
|
+
};
|
|
147
|
+
export const disconnectCommand = {
|
|
148
|
+
name: 'disconnect',
|
|
149
|
+
summary: '断开设备并销毁 Tasker/Controller(一次性命令,等价于结束 REPL 会话)',
|
|
150
|
+
usage: 'maafw-live disconnect --project <dir> | --kind ...',
|
|
151
|
+
options: { ...CONNECT_OPTIONS },
|
|
152
|
+
async run(ctx) {
|
|
153
|
+
const o = sessionOptions(ctx.values);
|
|
154
|
+
if (!o.project && !o.kind) {
|
|
155
|
+
return fail('BAD_ARGUMENTS', '需要 --project 或 --kind 才能建立会话再断开', undefined, EXIT.USAGE);
|
|
156
|
+
}
|
|
157
|
+
try {
|
|
158
|
+
return await withDaemon(async (client) => {
|
|
159
|
+
await ensureSession(client, o);
|
|
160
|
+
const r = await act.disconnect(client);
|
|
161
|
+
return { exitCode: EXIT.OK, human: ['已断开:' + JSON.stringify(r)], data: r };
|
|
162
|
+
});
|
|
163
|
+
}
|
|
164
|
+
catch (e) {
|
|
165
|
+
return daemonFail(e);
|
|
166
|
+
}
|
|
167
|
+
},
|
|
168
|
+
};
|
|
169
|
+
export const screencapCommand = {
|
|
170
|
+
name: 'screencap',
|
|
171
|
+
summary: '截一帧图并落盘(需要连接:给 --project 或 --kind)',
|
|
172
|
+
usage: 'maafw-live screencap [--project <dir>|--kind ...] [--out <png>]',
|
|
173
|
+
options: { ...CONNECT_OPTIONS, out: { type: 'string' } },
|
|
174
|
+
async run(ctx) {
|
|
175
|
+
const o = sessionOptions(ctx.values);
|
|
176
|
+
const out = typeof ctx.values.out === 'string'
|
|
177
|
+
? ctx.values.out
|
|
178
|
+
: join(defaultRunDir(), 'png', 'shot_' + Date.now() + '.png');
|
|
179
|
+
try {
|
|
180
|
+
mkdirSync(dirname(out), { recursive: true });
|
|
181
|
+
}
|
|
182
|
+
catch { /* 落盘失败交给 daemon 报错 */ }
|
|
183
|
+
try {
|
|
184
|
+
return await withDaemon(async (client) => {
|
|
185
|
+
const s = await ensureSession(client, o);
|
|
186
|
+
const r = await act.screencap(client, out);
|
|
187
|
+
return {
|
|
188
|
+
exitCode: r.ok === false ? EXIT.FAIL : EXIT.OK,
|
|
189
|
+
human: [...describeSession(s), '截图:' + String(r.path ?? out) + (r.bytes ? ' (' + r.bytes + ' bytes)' : '')],
|
|
190
|
+
data: r,
|
|
191
|
+
written: r.path ? [String(r.path)] : [out],
|
|
192
|
+
};
|
|
193
|
+
});
|
|
194
|
+
}
|
|
195
|
+
catch (e) {
|
|
196
|
+
return daemonFail(e);
|
|
197
|
+
}
|
|
198
|
+
},
|
|
199
|
+
};
|
|
200
|
+
export const frameCommand = {
|
|
201
|
+
name: 'frame',
|
|
202
|
+
summary: '帧流状态与历史帧取用(环形缓冲只在 REPL 会话里才有内容)',
|
|
203
|
+
usage: 'maafw-live frame status | maafw-live frame get [seq] [--roi x,y,w,h] [--out <png>] [--src auto|full|ring]\n' +
|
|
204
|
+
' --src full 强制要控制器分辨率原图(L0 已淘汰则报错,绝不给缩小图冒充)',
|
|
205
|
+
options: { ...CONNECT_OPTIONS, roi: { type: 'string' }, out: { type: 'string' }, src: { type: 'string' } },
|
|
206
|
+
async run(ctx) {
|
|
207
|
+
const sub = ctx.positionals[0] ?? 'status';
|
|
208
|
+
const o = sessionOptions(ctx.values);
|
|
209
|
+
if (sub === 'status') {
|
|
210
|
+
try {
|
|
211
|
+
return await withDaemon(async (client) => {
|
|
212
|
+
const s = await ensureSession(client, o);
|
|
213
|
+
const st = await act.streamStatus(client);
|
|
214
|
+
return { exitCode: EXIT.OK, human: [...describeSession(s), '帧流:' + JSON.stringify(st)], data: st };
|
|
215
|
+
});
|
|
216
|
+
}
|
|
217
|
+
catch (e) {
|
|
218
|
+
return daemonFail(e);
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
if (sub !== 'get') {
|
|
222
|
+
return fail('BAD_ARGUMENTS', '用法:maafw-live frame status | maafw-live frame get [seq]', undefined, EXIT.USAGE);
|
|
223
|
+
}
|
|
224
|
+
const rawSeq = ctx.positionals[1];
|
|
225
|
+
const seq = rawSeq !== undefined ? Number(rawSeq) : undefined;
|
|
226
|
+
if (rawSeq !== undefined && !Number.isFinite(seq)) {
|
|
227
|
+
return fail('BAD_ARGUMENTS', 'seq 必须是数字', undefined, EXIT.USAGE);
|
|
228
|
+
}
|
|
229
|
+
const roi = typeof ctx.values.roi === 'string'
|
|
230
|
+
? ctx.values.roi.split(',').map((x) => Number(String(x).trim()))
|
|
231
|
+
: undefined;
|
|
232
|
+
if (roi && (roi.length !== 4 || roi.some((n) => !Number.isFinite(n)))) {
|
|
233
|
+
return fail('BAD_ARGUMENTS', '--roi 需要 4 个数字:x,y,w,h(控制器分辨率坐标,与 pipeline 的 roi 同空间)', undefined, EXIT.USAGE);
|
|
234
|
+
}
|
|
235
|
+
const out = typeof ctx.values.out === 'string' ? ctx.values.out : undefined;
|
|
236
|
+
const srcRaw = typeof ctx.values.src === 'string' ? ctx.values.src.toLowerCase() : 'auto';
|
|
237
|
+
if (!['auto', 'full', 'ring'].includes(srcRaw)) {
|
|
238
|
+
return fail('BAD_ARGUMENTS', '--src 只支持 auto | full | ring', undefined, EXIT.USAGE);
|
|
239
|
+
}
|
|
240
|
+
const src = srcRaw;
|
|
241
|
+
try {
|
|
242
|
+
return await withDaemon(async (client) => {
|
|
243
|
+
await ensureSession(client, o);
|
|
244
|
+
const r = await act.frameGet(client, { seq, roi, out, src });
|
|
245
|
+
if (r.ok === false) {
|
|
246
|
+
return fail('NO_FRAME', String(r.error ?? '取帧失败'), '帧流要先在 REPL 里 stream start;一次性命令的环形缓冲是空的', EXIT.FINDINGS);
|
|
247
|
+
}
|
|
248
|
+
/* 降级是**发现**不是失败:图能用,但分辨率与预期不符必须让人看见(退出 3)。
|
|
249
|
+
* 判据取自 daemon 的 `degraded`——它按"调用方要什么"判(带 roi 的 auto 退小图才算降级;
|
|
250
|
+
* 显式 ring 与整帧小图都是预期行为),比在命令面拿 `sourceResolution < 1` 反推准确。 */
|
|
251
|
+
const degraded = r.degraded === true;
|
|
252
|
+
return {
|
|
253
|
+
exitCode: degraded ? EXIT.FINDINGS : EXIT.OK,
|
|
254
|
+
human: [
|
|
255
|
+
'帧 ' + String(r.seq) + ' → ' + String(r.path) + ' (' + r.w + 'x' + r.h + ')'
|
|
256
|
+
+ ' 来源 ' + String(r.source ?? '?') + ' 有效分辨率 ' + String(r.sourceResolution ?? '?'),
|
|
257
|
+
...(r.warn ? [' 警告:' + String(r.warn)] : []),
|
|
258
|
+
],
|
|
259
|
+
data: r,
|
|
260
|
+
warnings: r.warn ? [String(r.warn)] : [],
|
|
261
|
+
written: [String(r.path)],
|
|
262
|
+
};
|
|
263
|
+
});
|
|
264
|
+
}
|
|
265
|
+
catch (e) {
|
|
266
|
+
return daemonFail(e);
|
|
267
|
+
}
|
|
268
|
+
},
|
|
269
|
+
};
|
|
270
|
+
export const waitCommand = {
|
|
271
|
+
name: 'wait',
|
|
272
|
+
summary: '等状态谓词成立:stable=画面静下来 / change=画面动了(取代硬睡时钟)',
|
|
273
|
+
usage: 'maafw-live wait stable|change [--timeout ms] [--quiet ms] [--roi x,y,w,h] [--threshold n]\n' +
|
|
274
|
+
' 超时不算命令失败(ok=true, satisfied=false, 退出码 3)——"没等到"是观测结果',
|
|
275
|
+
options: {
|
|
276
|
+
...CONNECT_OPTIONS,
|
|
277
|
+
timeout: { type: 'string' }, quiet: { type: 'string' },
|
|
278
|
+
roi: { type: 'string' }, threshold: { type: 'string' },
|
|
279
|
+
},
|
|
280
|
+
async run(ctx) {
|
|
281
|
+
const modeRaw = ctx.positionals[0];
|
|
282
|
+
if (modeRaw !== 'stable' && modeRaw !== 'change') {
|
|
283
|
+
return fail('BAD_ARGUMENTS', 'wait 只认 stable | change' + (modeRaw ? '(收到 ' + JSON.stringify(modeRaw) + ')' : ''), '用法:maafw-live wait stable|change [--timeout ms] [--quiet ms] [--roi x,y,w,h] [--threshold n]', EXIT.USAGE);
|
|
284
|
+
}
|
|
285
|
+
const mode = modeRaw;
|
|
286
|
+
const o = sessionOptions(ctx.values);
|
|
287
|
+
const timeout = ctx.values.timeout !== undefined ? Number(ctx.values.timeout) : undefined;
|
|
288
|
+
if (timeout !== undefined && !Number.isFinite(timeout)) {
|
|
289
|
+
return fail('BAD_ARGUMENTS', '--timeout 必须是毫秒数', undefined, EXIT.USAGE);
|
|
290
|
+
}
|
|
291
|
+
const quiet = ctx.values.quiet !== undefined ? Number(ctx.values.quiet) : undefined;
|
|
292
|
+
if (quiet !== undefined && !Number.isFinite(quiet)) {
|
|
293
|
+
return fail('BAD_ARGUMENTS', '--quiet 必须是毫秒数', undefined, EXIT.USAGE);
|
|
294
|
+
}
|
|
295
|
+
const threshold = ctx.values.threshold !== undefined ? Number(ctx.values.threshold) : undefined;
|
|
296
|
+
if (threshold !== undefined && !Number.isFinite(threshold)) {
|
|
297
|
+
return fail('BAD_ARGUMENTS', '--threshold 必须是数字', undefined, EXIT.USAGE);
|
|
298
|
+
}
|
|
299
|
+
const roi = typeof ctx.values.roi === 'string'
|
|
300
|
+
? ctx.values.roi.split(',').map((x) => Number(String(x).trim()))
|
|
301
|
+
: undefined;
|
|
302
|
+
if (roi && (roi.length !== 4 || roi.some((n) => !Number.isFinite(n)))) {
|
|
303
|
+
return fail('BAD_ARGUMENTS', '--roi 需要 4 个数字:x,y,w,h', undefined, EXIT.USAGE);
|
|
304
|
+
}
|
|
305
|
+
try {
|
|
306
|
+
return await withDaemon(async (client) => {
|
|
307
|
+
await ensureSession(client, o);
|
|
308
|
+
const r = await act.waitState(client, {
|
|
309
|
+
mode,
|
|
310
|
+
...(timeout !== undefined ? { timeout } : {}),
|
|
311
|
+
...(quiet !== undefined ? { quiet } : {}),
|
|
312
|
+
...(roi ? { roi } : {}),
|
|
313
|
+
...(threshold !== undefined ? { threshold } : {}),
|
|
314
|
+
});
|
|
315
|
+
if (r.ok === false)
|
|
316
|
+
return fail('WAIT', String(r.error ?? '等待失败'), undefined, EXIT.FINDINGS);
|
|
317
|
+
const ok = r.satisfied === true;
|
|
318
|
+
return {
|
|
319
|
+
exitCode: ok ? EXIT.OK : EXIT.FINDINGS,
|
|
320
|
+
human: [
|
|
321
|
+
'wait ' + mode + ':' + (ok ? '已成立' : '超时未成立')
|
|
322
|
+
+ ' 等了 ' + String(r.waitedMs) + 'ms 当前帧 seq=' + String(r.seq),
|
|
323
|
+
...(r.warn ? [' 警告:' + String(r.warn)] : []),
|
|
324
|
+
],
|
|
325
|
+
data: r,
|
|
326
|
+
warnings: r.warn ? [String(r.warn)] : [],
|
|
327
|
+
};
|
|
328
|
+
});
|
|
329
|
+
}
|
|
330
|
+
catch (e) {
|
|
331
|
+
return daemonFail(e);
|
|
332
|
+
}
|
|
333
|
+
},
|
|
334
|
+
};
|
|
335
|
+
export const runCommand = {
|
|
336
|
+
name: 'run',
|
|
337
|
+
summary: '运行 pipeline:项目模式(推荐)或 resource 目录模式;节点事件按帧序对齐。退出码按任务级 record.ok',
|
|
338
|
+
usage: 'maafw-live run --entry <task> --project <dir> | --resource-dir <dir> [--timeout <ms|0>] [--override <json>] [--preset <name>] [--resource <名|路径>]\n' +
|
|
339
|
+
' --timeout 0 = 不自动停止(停止权交调用方:事件流判断 + maafw-live stop / 客户端 run_stop);>0 时超时自动 post_stop\n' +
|
|
340
|
+
' 项目模式自动合成 pipeline_override(global→resource→controller→task,preset/default 取值),--override 最后覆盖',
|
|
341
|
+
options: {
|
|
342
|
+
...CONNECT_OPTIONS,
|
|
343
|
+
entry: { type: 'string' },
|
|
344
|
+
'resource-dir': { type: 'string' },
|
|
345
|
+
timeout: { type: 'string' },
|
|
346
|
+
override: { type: 'string' },
|
|
347
|
+
preset: { type: 'string' },
|
|
348
|
+
},
|
|
349
|
+
async run(ctx) {
|
|
350
|
+
const o = sessionOptions(ctx.values);
|
|
351
|
+
const entry = (typeof ctx.values.entry === 'string' ? ctx.values.entry : ctx.positionals[0]) ?? undefined;
|
|
352
|
+
const resourceDir = typeof ctx.values['resource-dir'] === 'string' ? ctx.values['resource-dir'] : undefined;
|
|
353
|
+
if (!entry) {
|
|
354
|
+
return fail('BAD_ARGUMENTS', '缺少入口任务名:--entry <task>', '项目模式=interface.json 的 task 名;bundle 模式=pipeline 首节点名', EXIT.USAGE);
|
|
355
|
+
}
|
|
356
|
+
if (!o.project && !resourceDir) {
|
|
357
|
+
return fail('BAD_ARGUMENTS', '要么给 --project <dir>,要么给 --resource-dir <dir>', undefined, EXIT.USAGE);
|
|
358
|
+
}
|
|
359
|
+
let override = {};
|
|
360
|
+
if (typeof ctx.values.override === 'string') {
|
|
361
|
+
try {
|
|
362
|
+
override = JSON.parse(ctx.values.override);
|
|
363
|
+
}
|
|
364
|
+
catch (e) {
|
|
365
|
+
return fail('BAD_ARGUMENTS', '--override 不是合法 JSON:' + String(e.message), undefined, EXIT.USAGE);
|
|
366
|
+
}
|
|
367
|
+
}
|
|
368
|
+
const timeoutMs = typeof ctx.values.timeout === 'string' ? Number(ctx.values.timeout) : 30000;
|
|
369
|
+
if (!Number.isFinite(timeoutMs)) {
|
|
370
|
+
return fail('BAD_ARGUMENTS', '--timeout 必须是毫秒数', undefined, EXIT.USAGE);
|
|
371
|
+
}
|
|
372
|
+
try {
|
|
373
|
+
return await withDaemon(async (client) => {
|
|
374
|
+
const s = await ensureSession(client, o);
|
|
375
|
+
let args;
|
|
376
|
+
let resolvedEntry = entry;
|
|
377
|
+
let chain = null;
|
|
378
|
+
let extraWarns = [];
|
|
379
|
+
let appliedLines = [];
|
|
380
|
+
if (o.project) {
|
|
381
|
+
const paths = s.plan?.resource?.paths ?? [];
|
|
382
|
+
if (!paths.length) {
|
|
383
|
+
return fail('RESOURCE_NOT_FOUND', '项目里没有解析出资源路径:检查 interface.json 的 resource[] 声明', undefined, EXIT.FINDINGS);
|
|
384
|
+
}
|
|
385
|
+
const task = s.plan?.loaded.tasks.find((t) => t.name === entry || t.entry === entry);
|
|
386
|
+
resolvedEntry = task?.entry ?? entry;
|
|
387
|
+
/* task 适用性(task.controller / task.resource 声明) */
|
|
388
|
+
const ctrlName = s.plan?.controllerName ?? null;
|
|
389
|
+
const resName = s.plan?.resource?.selected ?? null;
|
|
390
|
+
if (task?.controller?.length && ctrlName && !task.controller.includes(ctrlName)) {
|
|
391
|
+
return fail('TASK_NOT_APPLICABLE', '任务 ' + task.name + ' 不支持当前控制器 ' + ctrlName + '(声明:' + task.controller.join(' / ') + ')', '换 --controller ' + task.controller[0] + ',或选别的任务', EXIT.FINDINGS);
|
|
392
|
+
}
|
|
393
|
+
if (task?.resource?.length && resName && !task.resource.includes(resName)) {
|
|
394
|
+
extraWarns.push('任务 ' + task.name + ' 声明资源 ' + task.resource.join(' / ') + ',当前选中的是 ' + resName);
|
|
395
|
+
}
|
|
396
|
+
/* pipeline_override 四级合并链(preset > default_case 取值) + 用户 --override 最后覆盖 */
|
|
397
|
+
chain = computePipelineOverride({
|
|
398
|
+
loaded: s.plan.loaded,
|
|
399
|
+
controllerName: ctrlName,
|
|
400
|
+
resourceName: resName,
|
|
401
|
+
taskName: task?.name ?? null,
|
|
402
|
+
presetName: typeof ctx.values.preset === 'string' ? ctx.values.preset : null,
|
|
403
|
+
});
|
|
404
|
+
extraWarns = [...extraWarns, ...chain.warns];
|
|
405
|
+
appliedLines = chain.applied;
|
|
406
|
+
const pt = s.plan.loaded.pretask;
|
|
407
|
+
if (pt.length) {
|
|
408
|
+
extraWarns.push('项目声明了 ' + pt.length + ' 条 pretask(' + pt.map((p) => p.exec ?? p.name ?? '?').join(' , ') + '),本 CLI 不执行——需自行保证前置条件');
|
|
409
|
+
}
|
|
410
|
+
const agents = s.plan.loaded.agents;
|
|
411
|
+
if (agents.length) {
|
|
412
|
+
extraWarns.push('项目声明了 ' + agents.length + ' 个 agent 子进程(' +
|
|
413
|
+
agents.map((a) => [a.exec, ...a.args].join(' ')).join(' ; ') +
|
|
414
|
+
'),run 时自动 spawn 并桥接——注意 maa-node 与 agent 侧 maa 库须同版本(协议握手要求)');
|
|
415
|
+
}
|
|
416
|
+
args = {
|
|
417
|
+
resourceDirs: paths,
|
|
418
|
+
entry: resolvedEntry,
|
|
419
|
+
override: { ...chain.override },
|
|
420
|
+
timeoutMs,
|
|
421
|
+
/* agent 桥接:daemon spawn 子进程(identifier 追加为末参)并 bind/connect 到本次 Resource */
|
|
422
|
+
agents: s.plan.loaded.agents.map((a) => ({ exec: a.exec, args: a.args })),
|
|
423
|
+
agentCwd: s.plan.loaded.dir ?? undefined,
|
|
424
|
+
};
|
|
425
|
+
}
|
|
426
|
+
else {
|
|
427
|
+
args = { resourceDir, entry, override, timeoutMs };
|
|
428
|
+
}
|
|
429
|
+
if (o.project && chain) {
|
|
430
|
+
/* 用户 --override 最后覆盖合成结果;与四级链共用同一份合并实现(非对象值原样替换) */
|
|
431
|
+
mergeOverride(args.override, override);
|
|
432
|
+
}
|
|
433
|
+
const r = await act.run(client, args, timeoutMs);
|
|
434
|
+
if (r.ok === false || !r.record) {
|
|
435
|
+
/* 调用级失败:任务根本没跑起来(未连接 / 资源缺失 / 已有任务在跑)→ FINDINGS */
|
|
436
|
+
return {
|
|
437
|
+
exitCode: EXIT.FINDINGS,
|
|
438
|
+
human: [...describeSession(s), '调用失败:' + String(r.error ?? 'run 未返回记录')],
|
|
439
|
+
data: r,
|
|
440
|
+
warnings: [...extraWarns, ...(r.warns ?? [])],
|
|
441
|
+
};
|
|
442
|
+
}
|
|
443
|
+
/* 任务级结果以 record.ok 为准(daemon 外层 ok 只代表调用完成)。
|
|
444
|
+
* 任务失败退出 FAIL——不能吞成 0,也不占用 FINDINGS(那是调用级失败的语义)。 */
|
|
445
|
+
const rec = r.record;
|
|
446
|
+
const taskOk = rec.ok === true;
|
|
447
|
+
const nodes = rec.nodes ?? [];
|
|
448
|
+
const agentLines = [];
|
|
449
|
+
if (rec.agent) {
|
|
450
|
+
agentLines.push(rec.agent.ok
|
|
451
|
+
? ' agent 已连接' + (rec.agent.reused ? '(复用)' : '') + ':custom action ' +
|
|
452
|
+
String(rec.agent.actions?.length ?? '?') + ' 个 / recognition ' + String(rec.agent.recognitions?.length ?? '?') + ' 个'
|
|
453
|
+
: ' agent 连接失败:' + String(rec.agent.error ?? '?'));
|
|
454
|
+
}
|
|
455
|
+
const human = [
|
|
456
|
+
...describeSession(s),
|
|
457
|
+
'任务 ' + resolvedEntry + ':' + (taskOk ? '完成' : (rec.stopped ? '超时被停止(视为失败)' : '失败')) +
|
|
458
|
+
'(status=' + String(rec.status) + ',' + String(rec.durationMs) + 'ms,帧序 ' +
|
|
459
|
+
String(rec.startSeq) + '..' + String(rec.endSeq) + ')',
|
|
460
|
+
...agentLines,
|
|
461
|
+
...appliedLines.map((l) => ' override: ' + l),
|
|
462
|
+
...nodes.map((n) => ' [' + n.status + '] ' + n.name + ' ' + n.ms + 'ms'),
|
|
463
|
+
];
|
|
464
|
+
if (!taskOk) {
|
|
465
|
+
human.push('', 'daemon 原生日志尾部:', ...client.logTail(20).map((l) => ' ' + l));
|
|
466
|
+
/* agent 缺位的失败归因:原生层只会说 Action is null,翻译成可行动的诊断 */
|
|
467
|
+
if (/Action is null|Recognition is null/.test(client.logTail(40).join('\n'))) {
|
|
468
|
+
const agents = s.plan?.loaded.agents ?? [];
|
|
469
|
+
human.push('', '诊断:日志出现 Action/Recognition is null —— 节点依赖项目 agent 注册的 custom 回调。' +
|
|
470
|
+
(rec.agent?.ok
|
|
471
|
+
? 'agent 已连接但该动作未注册,检查 custom_action 拼写或 agent 版本。'
|
|
472
|
+
: agents.length
|
|
473
|
+
? 'agent 连接失败(版本错配?maa-node 与 agent 侧 maa 库须同版本)。'
|
|
474
|
+
: '项目未声明 agent,检查节点 custom_action/custom_recognition 拼写。'));
|
|
475
|
+
extraWarns.push('任务失败疑似缺 agent custom 回调(Action/Recognition is null)');
|
|
476
|
+
}
|
|
477
|
+
}
|
|
478
|
+
if (rec.agent && rec.agent.ok === false) {
|
|
479
|
+
extraWarns.push('agent 连接失败:' + String(rec.agent.error ?? '?'));
|
|
480
|
+
}
|
|
481
|
+
return {
|
|
482
|
+
exitCode: taskOk ? EXIT.OK : EXIT.FAIL,
|
|
483
|
+
human,
|
|
484
|
+
data: r,
|
|
485
|
+
warnings: [...extraWarns, ...(r.warns ?? [])],
|
|
486
|
+
};
|
|
487
|
+
});
|
|
488
|
+
}
|
|
489
|
+
catch (e) {
|
|
490
|
+
return daemonFail(e);
|
|
491
|
+
}
|
|
492
|
+
},
|
|
493
|
+
};
|
|
494
|
+
export const stopCommand = {
|
|
495
|
+
name: 'stop',
|
|
496
|
+
summary: '停止运行中的任务(post_stop)',
|
|
497
|
+
usage: 'maafw-live stop',
|
|
498
|
+
async run() {
|
|
499
|
+
try {
|
|
500
|
+
return await withDaemon(async (client) => {
|
|
501
|
+
const r = await act.runStop(client);
|
|
502
|
+
return { exitCode: EXIT.OK, human: ['已请求停止:' + JSON.stringify(r)], data: r };
|
|
503
|
+
});
|
|
504
|
+
}
|
|
505
|
+
catch (e) {
|
|
506
|
+
return daemonFail(e, '一次性进程里通常没有正在运行的任务;该命令主要用于 REPL 会话内中断');
|
|
507
|
+
}
|
|
508
|
+
},
|
|
509
|
+
};
|
|
510
|
+
export const RUNTIME_COMMANDS = [
|
|
511
|
+
probeCommand, deviceCommand, connectCommand, disconnectCommand,
|
|
512
|
+
screencapCommand, frameCommand, waitCommand, runCommand, stopCommand,
|
|
513
|
+
];
|
|
514
|
+
//# sourceMappingURL=runtime.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/commands/runtime.ts"],"names":[],"mappings":"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"}
|