@futdevpro/nts-dynamo 1.15.307 → 1.15.309
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/build/_modules/cli/_collections/cli-envelope.util.d.ts +52 -0
- package/build/_modules/cli/_collections/cli-envelope.util.d.ts.map +1 -0
- package/build/_modules/cli/_collections/cli-envelope.util.js +77 -0
- package/build/_modules/cli/_collections/cli-envelope.util.js.map +1 -0
- package/build/_modules/cli/_collections/cli-mcp-caller.util.d.ts +41 -0
- package/build/_modules/cli/_collections/cli-mcp-caller.util.d.ts.map +1 -0
- package/build/_modules/cli/_collections/cli-mcp-caller.util.js +67 -0
- package/build/_modules/cli/_collections/cli-mcp-caller.util.js.map +1 -0
- package/build/_modules/cli/_models/control-models/cli-command-params.control-model.d.ts +4 -3
- package/build/_modules/cli/_models/control-models/cli-command-params.control-model.d.ts.map +1 -1
- package/build/_modules/cli/_models/control-models/cli-command-params.control-model.js.map +1 -1
- package/build/_modules/cli/_models/interfaces/cli-common-options.interface.d.ts +20 -0
- package/build/_modules/cli/_models/interfaces/cli-common-options.interface.d.ts.map +1 -0
- package/build/_modules/cli/_models/interfaces/cli-common-options.interface.js +3 -0
- package/build/_modules/cli/_models/interfaces/cli-common-options.interface.js.map +1 -0
- package/build/_modules/cli/_models/interfaces/cli-envelope.interface.d.ts +28 -0
- package/build/_modules/cli/_models/interfaces/cli-envelope.interface.d.ts.map +1 -0
- package/build/_modules/cli/_models/interfaces/cli-envelope.interface.js +3 -0
- package/build/_modules/cli/_models/interfaces/cli-envelope.interface.js.map +1 -0
- package/build/_modules/cli/_services/cli-program.control-service.d.ts +106 -0
- package/build/_modules/cli/_services/cli-program.control-service.d.ts.map +1 -0
- package/build/_modules/cli/_services/cli-program.control-service.js +271 -0
- package/build/_modules/cli/_services/cli-program.control-service.js.map +1 -0
- package/build/_modules/cli/index.d.ts +5 -0
- package/build/_modules/cli/index.d.ts.map +1 -1
- package/build/_modules/cli/index.js +6 -0
- package/build/_modules/cli/index.js.map +1 -1
- package/build/_modules/mcp/_collections/mcp-client.util.d.ts +86 -0
- package/build/_modules/mcp/_collections/mcp-client.util.d.ts.map +1 -0
- package/build/_modules/mcp/_collections/mcp-client.util.js +169 -0
- package/build/_modules/mcp/_collections/mcp-client.util.js.map +1 -0
- package/build/_modules/mcp/_collections/mcp-error.util.d.ts +7 -0
- package/build/_modules/mcp/_collections/mcp-error.util.d.ts.map +1 -1
- package/build/_modules/mcp/_collections/mcp-error.util.js +22 -0
- package/build/_modules/mcp/_collections/mcp-error.util.js.map +1 -1
- package/build/_modules/mcp/index.d.ts +1 -0
- package/build/_modules/mcp/index.d.ts.map +1 -1
- package/build/_modules/mcp/index.js +1 -0
- package/build/_modules/mcp/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { DyCLI_Envelope, DyCLI_EnvelopeError } from '../_models/interfaces/cli-envelope.interface';
|
|
2
|
+
/**
|
|
3
|
+
* Builds and writes the result envelope of a CLI command (HP-DOPL MP-4.3) — the organizer `fo` shape
|
|
4
|
+
* `{ ok, action, requestId, elapsedMs, result | error }`, so an agent or a script reads every Dynamo CLI the same way.
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* ```ts
|
|
8
|
+
* const envelope: DyCLI_Envelope = DyCLI_Envelope_Util.failure({ action: 'tasks.list', requestId, startedAt, error });
|
|
9
|
+
* process.stderr.write(DyCLI_Envelope_Util.stringify(envelope, pretty));
|
|
10
|
+
* ```
|
|
11
|
+
*/
|
|
12
|
+
export declare class DyCLI_Envelope_Util {
|
|
13
|
+
/**
|
|
14
|
+
* The envelope of a successful command.
|
|
15
|
+
* @param set.action - the command name
|
|
16
|
+
* @param set.requestId - the id of the call
|
|
17
|
+
* @param set.startedAt - `Date.now()` at the start of the call
|
|
18
|
+
* @param set.result - the result
|
|
19
|
+
*/
|
|
20
|
+
static success(set: {
|
|
21
|
+
action: string;
|
|
22
|
+
requestId: string;
|
|
23
|
+
startedAt: number;
|
|
24
|
+
result: unknown;
|
|
25
|
+
}): DyCLI_Envelope;
|
|
26
|
+
/**
|
|
27
|
+
* The envelope of a failed command.
|
|
28
|
+
* @param set.action - the command name
|
|
29
|
+
* @param set.requestId - the id of the call
|
|
30
|
+
* @param set.startedAt - `Date.now()` at the start of the call
|
|
31
|
+
* @param set.error - the failure
|
|
32
|
+
*/
|
|
33
|
+
static failure(set: {
|
|
34
|
+
action: string;
|
|
35
|
+
requestId: string;
|
|
36
|
+
startedAt: number;
|
|
37
|
+
error: unknown;
|
|
38
|
+
}): DyCLI_Envelope;
|
|
39
|
+
/**
|
|
40
|
+
* The envelope error of a failure: a coded `DyFM_Error` keeps its code, its user message and its
|
|
41
|
+
* `additionalContent.suggestion`; a commander error keeps its code; anything else is `CLI_ERROR` with its message.
|
|
42
|
+
* @param error - the failure
|
|
43
|
+
*/
|
|
44
|
+
static errorOf(error: unknown): DyCLI_EnvelopeError;
|
|
45
|
+
/**
|
|
46
|
+
* The text of an envelope: one JSON line, or indented with `pretty`.
|
|
47
|
+
* @param envelope - the envelope
|
|
48
|
+
* @param pretty - indent the JSON
|
|
49
|
+
*/
|
|
50
|
+
static stringify(envelope: DyCLI_Envelope, pretty?: boolean): string;
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=cli-envelope.util.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-envelope.util.d.ts","sourceRoot":"","sources":["../../../../src/_modules/cli/_collections/cli-envelope.util.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAC;AAGnG;;;;;;;;;GASG;AACH,qBAAa,mBAAmB;IAC9B;;;;;;OAMG;IACH,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,OAAO,CAAA;KAAE,GAAG,cAAc;IAO9G;;;;;;OAMG;IACH,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAE,GAAG,cAAc;IAO7G;;;;OAIG;IACH,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,GAAG,mBAAmB;IAyBnD;;;;OAIG;IACH,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,cAAc,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,MAAM;CAGrE"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DyCLI_Envelope_Util = void 0;
|
|
4
|
+
const fsm_dynamo_1 = require("@futdevpro/fsm-dynamo");
|
|
5
|
+
/**
|
|
6
|
+
* Builds and writes the result envelope of a CLI command (HP-DOPL MP-4.3) — the organizer `fo` shape
|
|
7
|
+
* `{ ok, action, requestId, elapsedMs, result | error }`, so an agent or a script reads every Dynamo CLI the same way.
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```ts
|
|
11
|
+
* const envelope: DyCLI_Envelope = DyCLI_Envelope_Util.failure({ action: 'tasks.list', requestId, startedAt, error });
|
|
12
|
+
* process.stderr.write(DyCLI_Envelope_Util.stringify(envelope, pretty));
|
|
13
|
+
* ```
|
|
14
|
+
*/
|
|
15
|
+
class DyCLI_Envelope_Util {
|
|
16
|
+
/**
|
|
17
|
+
* The envelope of a successful command.
|
|
18
|
+
* @param set.action - the command name
|
|
19
|
+
* @param set.requestId - the id of the call
|
|
20
|
+
* @param set.startedAt - `Date.now()` at the start of the call
|
|
21
|
+
* @param set.result - the result
|
|
22
|
+
*/
|
|
23
|
+
static success(set) {
|
|
24
|
+
return {
|
|
25
|
+
ok: true, action: set.action, requestId: set.requestId, elapsedMs: Date.now() - set.startedAt,
|
|
26
|
+
result: set.result === undefined ? null : set.result,
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* The envelope of a failed command.
|
|
31
|
+
* @param set.action - the command name
|
|
32
|
+
* @param set.requestId - the id of the call
|
|
33
|
+
* @param set.startedAt - `Date.now()` at the start of the call
|
|
34
|
+
* @param set.error - the failure
|
|
35
|
+
*/
|
|
36
|
+
static failure(set) {
|
|
37
|
+
return {
|
|
38
|
+
ok: false, action: set.action, requestId: set.requestId, elapsedMs: Date.now() - set.startedAt,
|
|
39
|
+
error: DyCLI_Envelope_Util.errorOf(set.error),
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* The envelope error of a failure: a coded `DyFM_Error` keeps its code, its user message and its
|
|
44
|
+
* `additionalContent.suggestion`; a commander error keeps its code; anything else is `CLI_ERROR` with its message.
|
|
45
|
+
* @param error - the failure
|
|
46
|
+
*/
|
|
47
|
+
static errorOf(error) {
|
|
48
|
+
if (error instanceof fsm_dynamo_1.DyFM_Error) {
|
|
49
|
+
// the operation guardrails put their hint here (e.g. "Fetch the entity and send its current etag as ifMatch.")
|
|
50
|
+
const details = error.additionalContent;
|
|
51
|
+
const envelopeError = {
|
|
52
|
+
code: error._errorCode || 'CLI_ERROR',
|
|
53
|
+
message: error.__userMessage || error._message || 'The command failed.',
|
|
54
|
+
};
|
|
55
|
+
if (typeof details?.suggestion === 'string') {
|
|
56
|
+
envelopeError.nextStep = details.suggestion;
|
|
57
|
+
}
|
|
58
|
+
return envelopeError;
|
|
59
|
+
}
|
|
60
|
+
const failure = (error ?? {});
|
|
61
|
+
return {
|
|
62
|
+
code: typeof failure.code === 'string' && failure.code ? failure.code : 'CLI_ERROR',
|
|
63
|
+
message: typeof failure.message === 'string' && failure.message.trim() ?
|
|
64
|
+
failure.message.trim() : 'The command failed.',
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* The text of an envelope: one JSON line, or indented with `pretty`.
|
|
69
|
+
* @param envelope - the envelope
|
|
70
|
+
* @param pretty - indent the JSON
|
|
71
|
+
*/
|
|
72
|
+
static stringify(envelope, pretty) {
|
|
73
|
+
return `${JSON.stringify(envelope, null, pretty ? 2 : undefined)}\n`;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
exports.DyCLI_Envelope_Util = DyCLI_Envelope_Util;
|
|
77
|
+
//# sourceMappingURL=cli-envelope.util.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-envelope.util.js","sourceRoot":"","sources":["../../../../src/_modules/cli/_collections/cli-envelope.util.ts"],"names":[],"mappings":";;;AAAA,sDAAmD;AAKnD;;;;;;;;;GASG;AACH,MAAa,mBAAmB;IAC9B;;;;;;OAMG;IACH,MAAM,CAAC,OAAO,CAAC,GAA8E;QAC3F,OAAO;YACL,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,SAAS;YAC7F,MAAM,EAAE,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM;SACrD,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,OAAO,CAAC,GAA6E;QAC1F,OAAO;YACL,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,SAAS;YAC9F,KAAK,EAAE,mBAAmB,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC;SAC9C,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,OAAO,CAAC,KAAc;QAC3B,IAAI,KAAK,YAAY,uBAAU,EAAE,CAAC;YAChC,+GAA+G;YAC/G,MAAM,OAAO,GAAyC,KAAK,CAAC,iBAA6C,CAAC;YAC1G,MAAM,aAAa,GAAwB;gBACzC,IAAI,EAAE,KAAK,CAAC,UAAU,IAAI,WAAW;gBACrC,OAAO,EAAE,KAAK,CAAC,aAAa,IAAI,KAAK,CAAC,QAAQ,IAAI,qBAAqB;aACxE,CAAC;YAEF,IAAI,OAAO,OAAO,EAAE,UAAU,KAAK,QAAQ,EAAE,CAAC;gBAC5C,aAAa,CAAC,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC;YAC9C,CAAC;YAED,OAAO,aAAa,CAAC;QACvB,CAAC;QAED,MAAM,OAAO,GAA0C,CAAC,KAAK,IAAI,EAAE,CAA0C,CAAC;QAE9G,OAAO;YACL,IAAI,EAAE,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW;YACnF,OAAO,EAAE,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;gBACtE,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,qBAAqB;SACjD,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,SAAS,CAAC,QAAwB,EAAE,MAAgB;QACzD,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC;IACvE,CAAC;CACF;AAnED,kDAmEC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { DyCLI_Command_Params } from '../_models/control-models/cli-command-params.control-model';
|
|
2
|
+
import { DyCLI_OperationCaller } from '../_services/cli-program.control-service';
|
|
3
|
+
/**
|
|
4
|
+
* The server caller of generated CLI commands (HP-DOPL MP-4.5, decision D-4 C-branch): a command's values are the MCP
|
|
5
|
+
* arguments of its operation, so the call is one `tools/call` through `DyNTS_McpClient_Util`.
|
|
6
|
+
*
|
|
7
|
+
* - The target: `--base-url` / `--api-key` / `--timeout` of the call win over the defaults given here.
|
|
8
|
+
* - `--dry-run` (the common option) is sent as the `dryRun` argument.
|
|
9
|
+
* - The tool name: `toolPrefix` + the command name (= the operation name, the default MCP tool name).
|
|
10
|
+
* - Warnings of the call go to `onWarnings` (default: `warning: <w>` lines on stderr, so stdout stays pure JSON).
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```ts
|
|
14
|
+
* const cli: DyCLI_Program_ControlService = new DyCLI_Program_ControlService({
|
|
15
|
+
* name: 'fo', description: 'Organizer CLI', version, commands,
|
|
16
|
+
* callOperation: DyCLI_McpCaller_Util.create({ baseUrl: 'https://organizer.example.com/api', apiKey: savedKey }),
|
|
17
|
+
* });
|
|
18
|
+
* ```
|
|
19
|
+
*/
|
|
20
|
+
export declare class DyCLI_McpCaller_Util {
|
|
21
|
+
/**
|
|
22
|
+
* Creates the caller.
|
|
23
|
+
* @param set.baseUrl - the default server base URL (`--base-url` wins)
|
|
24
|
+
* @param set.apiKey - the default API key (`--api-key` wins)
|
|
25
|
+
* @param set.endpointPath - the MCP endpoint path; default `/mcp`
|
|
26
|
+
* @param set.timeoutMs - the default timeout (`--timeout` wins)
|
|
27
|
+
* @param set.toolPrefix - the server's `mcp_settings.toolPrefix`
|
|
28
|
+
* @param set.onWarnings - receives the warnings of a successful call
|
|
29
|
+
*/
|
|
30
|
+
static create(set?: {
|
|
31
|
+
baseUrl?: string;
|
|
32
|
+
apiKey?: string;
|
|
33
|
+
endpointPath?: string;
|
|
34
|
+
timeoutMs?: number;
|
|
35
|
+
toolPrefix?: string;
|
|
36
|
+
onWarnings?(warnings: string[], params: DyCLI_Command_Params): void;
|
|
37
|
+
}): DyCLI_OperationCaller;
|
|
38
|
+
/** The default warning output: one `warning:` line per warning on stderr. */
|
|
39
|
+
private static writeWarnings;
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=cli-mcp-caller.util.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-mcp-caller.util.d.ts","sourceRoot":"","sources":["../../../../src/_modules/cli/_collections/cli-mcp-caller.util.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,oBAAoB,EACrB,MAAM,4DAA4D,CAAC;AAEpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAC;AAGjF;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,oBAAoB;IAC/B;;;;;;;;OAQG;IACH,MAAM,CAAC,MAAM,CAAC,GAAG,GAAE;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,UAAU,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,oBAAoB,GAAG,IAAI,CAAC;KAChE,GAAG,qBAAqB;IA8B9B,6EAA6E;IAC7E,OAAO,CAAC,MAAM,CAAC,aAAa;CAK7B"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DyCLI_McpCaller_Util = void 0;
|
|
4
|
+
const fsm_dynamo_1 = require("@futdevpro/fsm-dynamo");
|
|
5
|
+
const global_settings_const_1 = require("../../../_collections/global-settings.const");
|
|
6
|
+
const mcp_client_util_1 = require("../../mcp/_collections/mcp-client.util");
|
|
7
|
+
/**
|
|
8
|
+
* The server caller of generated CLI commands (HP-DOPL MP-4.5, decision D-4 C-branch): a command's values are the MCP
|
|
9
|
+
* arguments of its operation, so the call is one `tools/call` through `DyNTS_McpClient_Util`.
|
|
10
|
+
*
|
|
11
|
+
* - The target: `--base-url` / `--api-key` / `--timeout` of the call win over the defaults given here.
|
|
12
|
+
* - `--dry-run` (the common option) is sent as the `dryRun` argument.
|
|
13
|
+
* - The tool name: `toolPrefix` + the command name (= the operation name, the default MCP tool name).
|
|
14
|
+
* - Warnings of the call go to `onWarnings` (default: `warning: <w>` lines on stderr, so stdout stays pure JSON).
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* ```ts
|
|
18
|
+
* const cli: DyCLI_Program_ControlService = new DyCLI_Program_ControlService({
|
|
19
|
+
* name: 'fo', description: 'Organizer CLI', version, commands,
|
|
20
|
+
* callOperation: DyCLI_McpCaller_Util.create({ baseUrl: 'https://organizer.example.com/api', apiKey: savedKey }),
|
|
21
|
+
* });
|
|
22
|
+
* ```
|
|
23
|
+
*/
|
|
24
|
+
class DyCLI_McpCaller_Util {
|
|
25
|
+
/**
|
|
26
|
+
* Creates the caller.
|
|
27
|
+
* @param set.baseUrl - the default server base URL (`--base-url` wins)
|
|
28
|
+
* @param set.apiKey - the default API key (`--api-key` wins)
|
|
29
|
+
* @param set.endpointPath - the MCP endpoint path; default `/mcp`
|
|
30
|
+
* @param set.timeoutMs - the default timeout (`--timeout` wins)
|
|
31
|
+
* @param set.toolPrefix - the server's `mcp_settings.toolPrefix`
|
|
32
|
+
* @param set.onWarnings - receives the warnings of a successful call
|
|
33
|
+
*/
|
|
34
|
+
static create(set = {}) {
|
|
35
|
+
return async (params, values, common) => {
|
|
36
|
+
const baseUrl = common.baseUrl ?? set.baseUrl;
|
|
37
|
+
if (!baseUrl) {
|
|
38
|
+
throw new fsm_dynamo_1.DyFM_Error({
|
|
39
|
+
status: 400,
|
|
40
|
+
errorCode: `${global_settings_const_1.DyNTS_global_settings.systemShortCodeName}|DyNTS-CLI-URL`,
|
|
41
|
+
message: `command "${params.command}" needs the server address`,
|
|
42
|
+
userMessage: `"${params.command}" needs the server address: pass --base-url <url>.`,
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
const outcome = await mcp_client_util_1.DyNTS_McpClient_Util.callTool({
|
|
46
|
+
baseUrl: baseUrl,
|
|
47
|
+
endpointPath: set.endpointPath,
|
|
48
|
+
apiKey: common.apiKey ?? set.apiKey,
|
|
49
|
+
timeoutMs: common.timeoutMs ?? set.timeoutMs,
|
|
50
|
+
name: `${set.toolPrefix ?? ''}${params.command}`,
|
|
51
|
+
arguments: common.dryRun ? { ...values, dryRun: true } : values,
|
|
52
|
+
});
|
|
53
|
+
if (outcome.warnings.length) {
|
|
54
|
+
(set.onWarnings ?? DyCLI_McpCaller_Util.writeWarnings)(outcome.warnings, params);
|
|
55
|
+
}
|
|
56
|
+
return outcome.data;
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
/** The default warning output: one `warning:` line per warning on stderr. */
|
|
60
|
+
static writeWarnings(warnings) {
|
|
61
|
+
warnings.forEach((warning) => {
|
|
62
|
+
process.stderr.write(`warning: ${warning}\n`);
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
exports.DyCLI_McpCaller_Util = DyCLI_McpCaller_Util;
|
|
67
|
+
//# sourceMappingURL=cli-mcp-caller.util.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-mcp-caller.util.js","sourceRoot":"","sources":["../../../../src/_modules/cli/_collections/cli-mcp-caller.util.ts"],"names":[],"mappings":";;;AAAA,sDAAmD;AAEnD,uFAAoF;AACpF,4EAA0G;AAQ1G;;;;;;;;;;;;;;;;GAgBG;AACH,MAAa,oBAAoB;IAC/B;;;;;;;;OAQG;IACH,MAAM,CAAC,MAAM,CAAC,MAOV,EAAE;QACJ,OAAO,KAAK,EAAE,MAA4B,EAAE,MAA2B,EAAE,MAA2B,EAAE,EAAE;YACtG,MAAM,OAAO,GAAuB,MAAM,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC;YAElE,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,IAAI,uBAAU,CAAC;oBACnB,MAAM,EAAE,GAAG;oBACX,SAAS,EAAE,GAAG,6CAAqB,CAAC,mBAAmB,gBAAgB;oBACvE,OAAO,EAAE,YAAY,MAAM,CAAC,OAAO,4BAA4B;oBAC/D,WAAW,EAAE,IAAI,MAAM,CAAC,OAAO,oDAAoD;iBACpF,CAAC,CAAC;YACL,CAAC;YAED,MAAM,OAAO,GAA+B,MAAM,sCAAoB,CAAC,QAAQ,CAAC;gBAC9E,OAAO,EAAE,OAAO;gBAChB,YAAY,EAAE,GAAG,CAAC,YAAY;gBAC9B,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM;gBACnC,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,GAAG,CAAC,SAAS;gBAC5C,IAAI,EAAE,GAAG,GAAG,CAAC,UAAU,IAAI,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE;gBAChD,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM;aAChE,CAAC,CAAC;YAEH,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;gBAC5B,CAAC,GAAG,CAAC,UAAU,IAAI,oBAAoB,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YACnF,CAAC;YAED,OAAO,OAAO,CAAC,IAAI,CAAC;QACtB,CAAC,CAAC;IACJ,CAAC;IAED,6EAA6E;IACrE,MAAM,CAAC,aAAa,CAAC,QAAkB;QAC7C,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAe,EAAQ,EAAE;YACzC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,OAAO,IAAI,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AArDD,oDAqDC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type * as Commander from 'commander';
|
|
2
2
|
import { DyFM_Operation_Settings } from '@futdevpro/fsm-dynamo';
|
|
3
3
|
import { DyCLI_Output_Type } from '../../_enums/cli-output.type-enum';
|
|
4
|
+
import { DyCLI_CommonOptions } from '../interfaces/cli-common-options.interface';
|
|
4
5
|
import { DyCLI_Flag, DyCLI_Flag_Settings } from '../interfaces/cli-flag.interface';
|
|
5
6
|
import { DyCLI_ExitCodes, DyCLI_Settings } from '../interfaces/cli-settings.interface';
|
|
6
7
|
/** The values of a command call, keyed by parameter name — the same object an MCP `tools/call` sends as arguments. */
|
|
@@ -52,8 +53,8 @@ export declare class DyCLI_Command_Params {
|
|
|
52
53
|
readonly exitCodes: Partial<DyCLI_ExitCodes>;
|
|
53
54
|
/** Where the params were constructed (for error diagnostics). */
|
|
54
55
|
readonly stackLocation: string;
|
|
55
|
-
/** Runs the command instead of calling the operation (required without an operation). */
|
|
56
|
-
action?(values: DyCLI_CommandValues, params: DyCLI_Command_Params): Promise<unknown>;
|
|
56
|
+
/** Runs the command instead of calling the operation (required without an operation); `common` = the parsed common options. */
|
|
57
|
+
action?(values: DyCLI_CommandValues, params: DyCLI_Command_Params, common?: DyCLI_CommonOptions): Promise<unknown>;
|
|
57
58
|
/** The human-readable text of a result (output `human`). */
|
|
58
59
|
formatHuman?(result: unknown): string;
|
|
59
60
|
/** Runs before the command, e.g. to ensure a local server runs. */
|
|
@@ -74,7 +75,7 @@ export declare class DyCLI_Command_Params {
|
|
|
74
75
|
};
|
|
75
76
|
output?: DyCLI_Output_Type;
|
|
76
77
|
exitCodes?: Partial<DyCLI_ExitCodes>;
|
|
77
|
-
action?(values: DyCLI_CommandValues, params: DyCLI_Command_Params): Promise<unknown>;
|
|
78
|
+
action?(values: DyCLI_CommandValues, params: DyCLI_Command_Params, common?: DyCLI_CommonOptions): Promise<unknown>;
|
|
78
79
|
formatHuman?(result: unknown): string;
|
|
79
80
|
before?(values: DyCLI_CommandValues, params: DyCLI_Command_Params): Promise<void>;
|
|
80
81
|
after?(result: unknown, values: DyCLI_CommandValues, params: DyCLI_Command_Params): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-command-params.control-model.d.ts","sourceRoot":"","sources":["../../../../../src/_modules/cli/_models/control-models/cli-command-params.control-model.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,SAAS,MAAM,WAAW,CAAC;AAE5C,OAAO,EAAiD,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAM/G,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACnF,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAUvF,sHAAsH;AACtH,MAAM,MAAM,mBAAmB,GAAG;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,CAAC;AAE/D;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,qBAAa,oBAAoB;IAC/B,2EAA2E;IAC3E,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,gEAAgE;IAChE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,iCAAiC;IACjC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;IAC3B,0DAA0D;IAC1D,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,0EAA0E;IAC1E,QAAQ,CAAC,SAAS,CAAC,EAAE,uBAAuB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,CAAC;IAC1E,iEAAiE;IACjE,QAAQ,CAAC,KAAK,EAAE,UAAU,EAAE,CAAC;IAC7B,+EAA+E;IAC/E,QAAQ,CAAC,MAAM,CAAC,EAAE,iBAAiB,CAAC;IACpC,2CAA2C;IAC3C,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;IAC7C,iEAAiE;IACjE,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAE/B
|
|
1
|
+
{"version":3,"file":"cli-command-params.control-model.d.ts","sourceRoot":"","sources":["../../../../../src/_modules/cli/_models/control-models/cli-command-params.control-model.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,SAAS,MAAM,WAAW,CAAC;AAE5C,OAAO,EAAiD,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAM/G,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AACjF,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACnF,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAUvF,sHAAsH;AACtH,MAAM,MAAM,mBAAmB,GAAG;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,CAAC;AAE/D;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,qBAAa,oBAAoB;IAC/B,2EAA2E;IAC3E,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,gEAAgE;IAChE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,iCAAiC;IACjC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;IAC3B,0DAA0D;IAC1D,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,0EAA0E;IAC1E,QAAQ,CAAC,SAAS,CAAC,EAAE,uBAAuB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,CAAC;IAC1E,iEAAiE;IACjE,QAAQ,CAAC,KAAK,EAAE,UAAU,EAAE,CAAC;IAC7B,+EAA+E;IAC/E,QAAQ,CAAC,MAAM,CAAC,EAAE,iBAAiB,CAAC;IACpC,2CAA2C;IAC3C,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;IAC7C,iEAAiE;IACjE,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAE/B,+HAA+H;IAC/H,MAAM,CAAC,CAAC,MAAM,EAAE,mBAAmB,EAAE,MAAM,EAAE,oBAAoB,EAAE,MAAM,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC;IAClH,4DAA4D;IAC5D,WAAW,CAAC,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM;IACrC,mEAAmE;IACnE,MAAM,CAAC,CAAC,MAAM,EAAE,mBAAmB,EAAE,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IACjF,uCAAuC;IACvC,KAAK,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAEjG;;OAEG;gBACS,GAAG,EAAE;QACf,SAAS,CAAC,EAAE,uBAAuB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,CAAC;QACjE,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,KAAK,CAAC,EAAE;YAAE,CAAC,KAAK,EAAE,MAAM,GAAG,mBAAmB,CAAA;SAAE,CAAC;QACjD,MAAM,CAAC,EAAE,iBAAiB,CAAC;QAC3B,SAAS,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;QACrC,MAAM,CAAC,CAAC,MAAM,EAAE,mBAAmB,EAAE,MAAM,EAAE,oBAAoB,EAAE,MAAM,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;QACnH,WAAW,CAAC,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAAC;QACtC,MAAM,CAAC,CAAC,MAAM,EAAE,mBAAmB,EAAE,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAClF,KAAK,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAClG,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB;IA6ED;;;;;OAKG;IACH,YAAY,CACV,SAAS,EAAE,OAAO,SAAS,EAC3B,QAAQ,EAAE,CAAC,MAAM,EAAE,mBAAmB,KAAK,OAAO,CAAC,IAAI,CAAC,GACvD,SAAS,CAAC,OAAO;IAsBpB;;;;OAIG;IACH,UAAU,CAAC,OAAO,EAAE;QAAE,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,GAAG,mBAAmB;IAc1E,oFAAoF;IACpF,SAAS,CAAC,QAAQ,GAAE,cAAc,GAAG,IAAyC,GAAG,iBAAiB;IAIlG;;;;;;OAMG;IACH,UAAU,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,GAAE,cAAc,GAAG,IAAyC,GAAG,MAAM;IAiCxG,6CAA6C;IAC7C,OAAO,CAAC,MAAM,CAAC,QAAQ;IA4BvB,uFAAuF;IACvF,OAAO,CAAC,MAAM,CAAC,cAAc;IAa7B,4FAA4F;IAC5F,OAAO,CAAC,MAAM,CAAC,OAAO;CAQvB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-command-params.control-model.js","sourceRoot":"","sources":["../../../../../src/_modules/cli/_models/control-models/cli-command-params.control-model.ts"],"names":[],"mappings":";;;AAIA,sDAA+G;AAE/G,0FAAuF;AACvF,oEAAmE;AACnE,kFAA2E;AAC3E,oFAA6E;AAC7E,4EAAsE;
|
|
1
|
+
{"version":3,"file":"cli-command-params.control-model.js","sourceRoot":"","sources":["../../../../../src/_modules/cli/_models/control-models/cli-command-params.control-model.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The common options every command of a `DyCLI_Program_ControlService` gets (HP-DOPL MP-4.3): `--json --pretty --dry-run`
|
|
3
|
+
* always, `--api-key --base-url --timeout` on commands that call a server operation. A command flag with the same name
|
|
4
|
+
* wins — e.g. the `dryRun` guardrail argument of an operation is a value of the call, not a common option.
|
|
5
|
+
*/
|
|
6
|
+
export interface DyCLI_CommonOptions {
|
|
7
|
+
/** Force the JSON envelope, whatever the command's output. */
|
|
8
|
+
json?: boolean;
|
|
9
|
+
/** Indent the JSON envelope. */
|
|
10
|
+
pretty?: boolean;
|
|
11
|
+
/** Validate and preview without saving (when the command has no own `--dry-run`). */
|
|
12
|
+
dryRun?: boolean;
|
|
13
|
+
/** The API key of the server call. */
|
|
14
|
+
apiKey?: string;
|
|
15
|
+
/** The server base URL. */
|
|
16
|
+
baseUrl?: string;
|
|
17
|
+
/** The server call timeout in milliseconds. */
|
|
18
|
+
timeoutMs?: number;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=cli-common-options.interface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-common-options.interface.d.ts","sourceRoot":"","sources":["../../../../../src/_modules/cli/_models/interfaces/cli-common-options.interface.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAClC,8DAA8D;IAC9D,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,gCAAgC;IAChC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,qFAAqF;IACrF,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,sCAAsC;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,2BAA2B;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,+CAA+C;IAC/C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-common-options.interface.js","sourceRoot":"","sources":["../../../../../src/_modules/cli/_models/interfaces/cli-common-options.interface.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/** The error part of a failed command envelope (HP-DOPL MP-4.3). */
|
|
2
|
+
export interface DyCLI_EnvelopeError {
|
|
3
|
+
/** A stable error code (e.g. `NIT|DyNTS-CLP-VAL`, `INVALID_ARGS`). */
|
|
4
|
+
code: string;
|
|
5
|
+
/** What went wrong, for the caller. */
|
|
6
|
+
message: string;
|
|
7
|
+
/** What the caller can do next, when known. */
|
|
8
|
+
nextStep?: string;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* The result envelope of every Dynamo CLI command (HP-DOPL MP-4.3) — the organizer `fo` shape, which the fleet CLIs
|
|
12
|
+
* copy: `{ ok, action, requestId, elapsedMs, result | error }`. Success goes to stdout, failure to stderr.
|
|
13
|
+
*/
|
|
14
|
+
export interface DyCLI_Envelope {
|
|
15
|
+
/** Whether the command succeeded. */
|
|
16
|
+
ok: boolean;
|
|
17
|
+
/** The command name (`cli.parse` for an argument error). */
|
|
18
|
+
action: string;
|
|
19
|
+
/** A unique id of this call. */
|
|
20
|
+
requestId: string;
|
|
21
|
+
/** The run time of the command in milliseconds. */
|
|
22
|
+
elapsedMs: number;
|
|
23
|
+
/** The result of a successful command. */
|
|
24
|
+
result?: unknown;
|
|
25
|
+
/** The error of a failed command. */
|
|
26
|
+
error?: DyCLI_EnvelopeError;
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=cli-envelope.interface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-envelope.interface.d.ts","sourceRoot":"","sources":["../../../../../src/_modules/cli/_models/interfaces/cli-envelope.interface.ts"],"names":[],"mappings":"AAAA,oEAAoE;AACpE,MAAM,WAAW,mBAAmB;IAClC,sEAAsE;IACtE,IAAI,EAAE,MAAM,CAAC;IACb,uCAAuC;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,qCAAqC;IACrC,EAAE,EAAE,OAAO,CAAC;IACZ,4DAA4D;IAC5D,MAAM,EAAE,MAAM,CAAC;IACf,gCAAgC;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,mDAAmD;IACnD,SAAS,EAAE,MAAM,CAAC;IAClB,0CAA0C;IAC1C,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,qCAAqC;IACrC,KAAK,CAAC,EAAE,mBAAmB,CAAC;CAC7B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-envelope.interface.js","sourceRoot":"","sources":["../../../../../src/_modules/cli/_models/interfaces/cli-envelope.interface.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
import type * as Commander from 'commander';
|
|
2
|
+
import { DyCLI_Command_Params, DyCLI_CommandValues } from '../_models/control-models/cli-command-params.control-model';
|
|
3
|
+
import { DyCLI_CommonOptions } from '../_models/interfaces/cli-common-options.interface';
|
|
4
|
+
import { DyCLI_Settings } from '../_models/interfaces/cli-settings.interface';
|
|
5
|
+
/** Where the program writes (injectable for specs). */
|
|
6
|
+
export interface DyCLI_ProgramIo {
|
|
7
|
+
/** Writes to stdout. */
|
|
8
|
+
stdout(text: string): void;
|
|
9
|
+
/** Writes to stderr. */
|
|
10
|
+
stderr(text: string): void;
|
|
11
|
+
}
|
|
12
|
+
/** Calls the server operation of a generated command (the MCP client of HP-DOPL MP-4.5 / MP-4.6). */
|
|
13
|
+
export type DyCLI_OperationCaller = (params: DyCLI_Command_Params, values: DyCLI_CommandValues, common: DyCLI_CommonOptions) => Promise<unknown>;
|
|
14
|
+
/**
|
|
15
|
+
* The commander program of a Dynamo CLI (HP-DOPL MP-4.3 + MP-4.4): the skeleton the fleet CLIs repeat by hand
|
|
16
|
+
* (`name / description / version / addHelpText / parse`), the common options, and ONE execution path per command —
|
|
17
|
+
* `before` → own `action` or the server call → `after` → the `fo` result envelope and the exit code.
|
|
18
|
+
*
|
|
19
|
+
* - Success: the envelope on stdout (or the `formatHuman` text when the command's output is `human` and no `--json`).
|
|
20
|
+
* - Failure: the envelope on stderr (or `<command>: <code>: <message>`), exit code by `DyCLI_Command_Params.exitCodeOf`.
|
|
21
|
+
* - An argument error (unknown option, invalid value, missing required flag): the `cli.parse` envelope, exit `usage`;
|
|
22
|
+
* `--help` / `--version` exit 0.
|
|
23
|
+
* - `run()` RETURNS the exit code and never calls `process.exit` — `process.exitCode = await program.run()`.
|
|
24
|
+
*
|
|
25
|
+
* `build()` gives the commander program before parsing, so `registerDynamoCommands(program, version)` of
|
|
26
|
+
* `@futdevpro/cli-dynamo` can still be called on it (or pass it as `configure`).
|
|
27
|
+
*
|
|
28
|
+
* @example
|
|
29
|
+
* ```ts
|
|
30
|
+
* const cli: DyCLI_Program_ControlService = new DyCLI_Program_ControlService({
|
|
31
|
+
* name: 'fo', description: 'Organizer CLI', version: '2.0.0',
|
|
32
|
+
* commands: [ listTasks, backup ],
|
|
33
|
+
* callOperation: mcpCaller, // generated commands call the server through MCP
|
|
34
|
+
* });
|
|
35
|
+
*
|
|
36
|
+
* process.exitCode = await cli.run();
|
|
37
|
+
* ```
|
|
38
|
+
*/
|
|
39
|
+
export declare class DyCLI_Program_ControlService {
|
|
40
|
+
/** The program name (the binary). */
|
|
41
|
+
readonly name: string;
|
|
42
|
+
/** The program description. */
|
|
43
|
+
readonly description: string;
|
|
44
|
+
/** The program version (`-v, --version`). */
|
|
45
|
+
readonly version: string;
|
|
46
|
+
/** The commands. */
|
|
47
|
+
readonly commands: DyCLI_Command_Params[];
|
|
48
|
+
/** Extra help text after the command list. */
|
|
49
|
+
readonly helpText?: string;
|
|
50
|
+
/** The exit code of the last command run through this program. */
|
|
51
|
+
private lastExitCode;
|
|
52
|
+
private readonly callOperation?;
|
|
53
|
+
private readonly configure?;
|
|
54
|
+
private readonly settings;
|
|
55
|
+
private readonly io;
|
|
56
|
+
/**
|
|
57
|
+
* @param set - the program settings; throws a coded `DyFM_Error` (500 `DyNTS-CLI-*`) when invalid
|
|
58
|
+
*/
|
|
59
|
+
constructor(set: {
|
|
60
|
+
name: string;
|
|
61
|
+
description: string;
|
|
62
|
+
version: string;
|
|
63
|
+
commands: DyCLI_Command_Params[];
|
|
64
|
+
helpText?: string;
|
|
65
|
+
callOperation?: DyCLI_OperationCaller;
|
|
66
|
+
configure?(program: Commander.Command): void | Promise<void>;
|
|
67
|
+
settings?: DyCLI_Settings | null;
|
|
68
|
+
io?: DyCLI_ProgramIo;
|
|
69
|
+
});
|
|
70
|
+
/**
|
|
71
|
+
* Builds the commander program with every command and its common options; nothing is parsed yet.
|
|
72
|
+
* @throws 501 `DyNTS-OPT-MIS` when `commander` is not installed
|
|
73
|
+
*/
|
|
74
|
+
build(): Promise<Commander.Command>;
|
|
75
|
+
/**
|
|
76
|
+
* Parses the command line and runs the command.
|
|
77
|
+
* @param argv - the full argv (default: `process.argv`)
|
|
78
|
+
* @returns the exit code — set it as `process.exitCode`
|
|
79
|
+
*/
|
|
80
|
+
run(argv?: string[]): Promise<number>;
|
|
81
|
+
/**
|
|
82
|
+
* Runs one command: `before` → `action` or the server call → `after`, then writes the envelope.
|
|
83
|
+
* @param params - the command
|
|
84
|
+
* @param values - the collected flag values
|
|
85
|
+
* @param common - the common options
|
|
86
|
+
* @returns the exit code
|
|
87
|
+
*/
|
|
88
|
+
execute(params: DyCLI_Command_Params, values: DyCLI_CommandValues, common: DyCLI_CommonOptions): Promise<number>;
|
|
89
|
+
/** Calls the operation of a generated command through the configured caller. */
|
|
90
|
+
private callServer;
|
|
91
|
+
/**
|
|
92
|
+
* Adds the common options a command does not already have (a command flag of the same name wins).
|
|
93
|
+
* @returns the added long flags
|
|
94
|
+
*/
|
|
95
|
+
private addCommonOptions;
|
|
96
|
+
/** The exit code of a commander argument error: the `usage` code of the settings (a command override does not apply). */
|
|
97
|
+
private exitCodeOfParse;
|
|
98
|
+
/**
|
|
99
|
+
* The common options from the parsed commander options — only the ones the program added to this command, so a
|
|
100
|
+
* command's own flag of the same name (e.g. the `dryRun` guardrail argument) stays a value, not a common option.
|
|
101
|
+
* @param options - the parsed options (`command.opts()`)
|
|
102
|
+
* @param added - the long flags of the common options added to the command
|
|
103
|
+
*/
|
|
104
|
+
private static commonOf;
|
|
105
|
+
}
|
|
106
|
+
//# sourceMappingURL=cli-program.control-service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-program.control-service.d.ts","sourceRoot":"","sources":["../../../../src/_modules/cli/_services/cli-program.control-service.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,SAAS,MAAM,WAAW,CAAC;AAW5C,OAAO,EACL,oBAAoB,EAAE,mBAAmB,EAC1C,MAAM,4DAA4D,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,oDAAoD,CAAC;AAGzF,OAAO,EAAE,cAAc,EAAE,MAAM,8CAA8C,CAAC;AAG9E,uDAAuD;AACvD,MAAM,WAAW,eAAe;IAC9B,wBAAwB;IACxB,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,wBAAwB;IACxB,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED,qGAAqG;AACrG,MAAM,MAAM,qBAAqB,GAAG,CAClC,MAAM,EAAE,oBAAoB,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,EAAE,mBAAmB,KACnF,OAAO,CAAC,OAAO,CAAC,CAAC;AAOtB;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAAa,4BAA4B;IACvC,qCAAqC;IACrC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,+BAA+B;IAC/B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,6CAA6C;IAC7C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,oBAAoB;IACpB,QAAQ,CAAC,QAAQ,EAAE,oBAAoB,EAAE,CAAC;IAC1C,8CAA8C;IAC9C,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAE3B,kEAAkE;IAClE,OAAO,CAAC,YAAY,CAAa;IACjC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAwB;IACvD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAuD;IAClF,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAwB;IACjD,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAkB;IAErC;;OAEG;gBACS,GAAG,EAAE;QACf,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;QACpB,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,oBAAoB,EAAE,CAAC;QACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,aAAa,CAAC,EAAE,qBAAqB,CAAC;QACtC,SAAS,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC,OAAO,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAC7D,QAAQ,CAAC,EAAE,cAAc,GAAG,IAAI,CAAC;QACjC,EAAE,CAAC,EAAE,eAAe,CAAC;KACtB;IAoDD;;;OAGG;IACG,KAAK,IAAI,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC;IAyBzC;;;;OAIG;IACG,GAAG,CAAC,IAAI,GAAE,MAAM,EAAiB,GAAG,OAAO,CAAC,MAAM,CAAC;IA6CzD;;;;;;OAMG;IACG,OAAO,CAAC,MAAM,EAAE,oBAAoB,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC;IAyCtH,gFAAgF;YAClE,UAAU;IAexB;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IA+BxB,yHAAyH;IACzH,OAAO,CAAC,eAAe;IAIvB;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ;CAiBxB"}
|