@melra/cli 0.3.0-alpha.4 → 0.3.0-alpha.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/dist/bin.d.ts +3 -0
- package/dist/bin.d.ts.map +1 -0
- package/dist/bin.js +31 -0
- package/dist/bin.js.map +1 -0
- package/dist/environment.d.ts +1 -0
- package/dist/environment.d.ts.map +1 -1
- package/dist/environment.js +2 -0
- package/dist/environment.js.map +1 -1
- package/dist/index.js +229 -13
- package/dist/index.js.map +1 -1
- package/package.json +9 -9
package/dist/bin.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bin.d.ts","sourceRoot":"","sources":["../src/bin.ts"],"names":[],"mappings":""}
|
package/dist/bin.js
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
// Copyright 2026 XAGI Labs Private Limited
|
|
3
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
4
|
+
// The `melra` executable. Its only job is to silence one Node warning before
|
|
5
|
+
// the rest of the CLI loads, then hand over to `index.ts`.
|
|
6
|
+
//
|
|
7
|
+
// `node:sqlite` emits an ExperimentalWarning the first time it is linked, which
|
|
8
|
+
// meant two lines of Node noise on every invocation — `melra help` and
|
|
9
|
+
// `melra version` included — about a dependency the user did not choose and
|
|
10
|
+
// cannot change. Under an MCP client the same lines land in the server log,
|
|
11
|
+
// where they read like a fault.
|
|
12
|
+
//
|
|
13
|
+
// It has to happen here rather than as the first import of `index.ts`: static
|
|
14
|
+
// imports are linked before any module body runs, so a patch applied in a
|
|
15
|
+
// sibling module is already too late. Loading the CLI with a dynamic import is
|
|
16
|
+
// what puts the whole graph, `node:sqlite` included, after this file's body.
|
|
17
|
+
//
|
|
18
|
+
// Only that one warning is dropped. Deprecations and everything else still
|
|
19
|
+
// print, because those are warnings a user can act on.
|
|
20
|
+
const SQLITE_EXPERIMENTAL = /SQLite is an experimental feature/;
|
|
21
|
+
const emitWarning = process.emitWarning.bind(process);
|
|
22
|
+
// Node's overloads disagree on the tail arguments, so accept and forward them.
|
|
23
|
+
process.emitWarning = ((warning, ...rest) => {
|
|
24
|
+
const text = typeof warning === "string" ? warning : warning.message;
|
|
25
|
+
if (SQLITE_EXPERIMENTAL.test(text))
|
|
26
|
+
return;
|
|
27
|
+
emitWarning(warning, ...rest);
|
|
28
|
+
});
|
|
29
|
+
await import("./index.js");
|
|
30
|
+
export {};
|
|
31
|
+
//# sourceMappingURL=bin.js.map
|
package/dist/bin.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bin.js","sourceRoot":"","sources":["../src/bin.ts"],"names":[],"mappings":";AACA,2CAA2C;AAC3C,sCAAsC;AAEtC,6EAA6E;AAC7E,2DAA2D;AAC3D,EAAE;AACF,gFAAgF;AAChF,uEAAuE;AACvE,4EAA4E;AAC5E,4EAA4E;AAC5E,gCAAgC;AAChC,EAAE;AACF,8EAA8E;AAC9E,0EAA0E;AAC1E,+EAA+E;AAC/E,6EAA6E;AAC7E,EAAE;AACF,2EAA2E;AAC3E,uDAAuD;AAEvD,MAAM,mBAAmB,GAAG,mCAAmC,CAAC;AAChE,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAEtD,+EAA+E;AAC/E,OAAO,CAAC,WAAW,GAAG,CAAC,CAAC,OAAuB,EAAE,GAAG,IAAe,EAAQ,EAAE;IAC3E,MAAM,IAAI,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IACrE,IAAI,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO;IAC1C,WAA4C,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;AAClE,CAAC,CAA+B,CAAC;AAEjC,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC"}
|
package/dist/environment.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"environment.d.ts","sourceRoot":"","sources":["../src/environment.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"environment.d.ts","sourceRoot":"","sources":["../src/environment.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,cAAc;IAC7B,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,sBAAsB;IACrC,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;CACd;AAOD,wBAAgB,YAAY,CAC1B,eAAe,EAAE,MAAM,EACvB,OAAO,EAAE,MAAM,GACd;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CAIrC;AA0CD,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,MAAM,CAAC,UAAU,EACzB,QAAQ,GAAE,sBAGT,GACA,cAAc,CAgChB"}
|
package/dist/environment.js
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
import { homedir } from "node:os";
|
|
4
4
|
import { isAbsolute, join, resolve } from "node:path";
|
|
5
|
+
import { unhingedFromEnvironment } from "@melra/server";
|
|
5
6
|
// A generated client config has to name a command the client can actually
|
|
6
7
|
// spawn. `npx` runs the CLI out of its own cache and leaves nothing on PATH,
|
|
7
8
|
// so `melra` would fail to start for exactly the users who took the shortest
|
|
@@ -67,6 +68,7 @@ export function parseCliEnvironment(source, defaults = {
|
|
|
67
68
|
return {
|
|
68
69
|
workspaceRoot: resolve(source.MELRA_WORKSPACE ?? defaults.cwd),
|
|
69
70
|
dataDirectory: resolve(source.MELRA_HOME ?? join(defaults.home, ".melra")),
|
|
71
|
+
unhinged: unhingedFromEnvironment(source),
|
|
70
72
|
...(source.MELRA_POLICY === undefined
|
|
71
73
|
? {}
|
|
72
74
|
: { policyPath: resolve(source.MELRA_POLICY) }),
|
package/dist/environment.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"environment.js","sourceRoot":"","sources":["../src/environment.ts"],"names":[],"mappings":"AAAA,2CAA2C;AAC3C,sCAAsC;AAEtC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"environment.js","sourceRoot":"","sources":["../src/environment.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -6,8 +6,8 @@ import { constants } from "node:fs";
|
|
|
6
6
|
import { basename, join, resolve } from "node:path";
|
|
7
7
|
import { createInterface } from "node:readline/promises";
|
|
8
8
|
import { DatabaseSync } from "node:sqlite";
|
|
9
|
-
import { ApprovalResponseSchema, TaskRequestSchema, WorkflowDefinitionSchema, PRODUCT_VERSION, } from "@melra/protocol";
|
|
10
|
-
import { createMelraRuntime, serveStdio, } from "@melra/server";
|
|
9
|
+
import { ApprovalResponseSchema, TaskRequestSchema, WorkflowDefinitionSchema, WorkflowInputSchema, PRODUCT_VERSION, } from "@melra/protocol";
|
|
10
|
+
import { createMelraRuntime, serveHttp, serveStdio, unconfinedRoot, } from "@melra/server";
|
|
11
11
|
import { detectBrowserExecutable } from "@melra/browser-runtime";
|
|
12
12
|
import { createSystemComputerAdapter } from "@melra/computer-runtime";
|
|
13
13
|
import { createDefaultPolicy, evaluatePolicy } from "@melra/policy-core";
|
|
@@ -24,11 +24,44 @@ async function existingPolicyPath(env) {
|
|
|
24
24
|
return undefined;
|
|
25
25
|
}
|
|
26
26
|
}
|
|
27
|
+
/**
|
|
28
|
+
* The banner unhinged mode prints before it does anything.
|
|
29
|
+
*
|
|
30
|
+
* It goes to stderr, which is where it has to go: in `serve` the stdout stream
|
|
31
|
+
* is the MCP transport and any prose written there corrupts the protocol. stderr
|
|
32
|
+
* is what MCP clients surface in their server logs, so the operator still sees
|
|
33
|
+
* it. Ordinary runs get it too — the mode is per-process, not per-command, and a
|
|
34
|
+
* developer who exported the variable in one shell and forgot deserves the
|
|
35
|
+
* reminder on every invocation rather than only at startup.
|
|
36
|
+
*/
|
|
37
|
+
function unhingedBanner(root) {
|
|
38
|
+
return [
|
|
39
|
+
"",
|
|
40
|
+
" ############################################################",
|
|
41
|
+
" # MELRA IS RUNNING UNHINGED. NO GUARDRAILS ARE APPLIED. #",
|
|
42
|
+
" ############################################################",
|
|
43
|
+
"",
|
|
44
|
+
" Disabled for every task this process runs:",
|
|
45
|
+
" - policy decisions: nothing is denied, no approval is ever asked for",
|
|
46
|
+
" - the command allowlist, including shells and sudo",
|
|
47
|
+
" - the evidence requirement on mutations and destructive operations",
|
|
48
|
+
" - the browser's block on private, loopback, and cloud-metadata hosts",
|
|
49
|
+
` - workspace confinement: files and commands can reach all of ${root}`,
|
|
50
|
+
"",
|
|
51
|
+
" A caller can now delete, overwrite, exfiltrate, or execute anything this",
|
|
52
|
+
" OS user can. Receipts are still written, so you will be able to read what",
|
|
53
|
+
" happened — after it has happened.",
|
|
54
|
+
"",
|
|
55
|
+
" Turn it off by unsetting MELRA_UNHINGED and dropping --unhinged.",
|
|
56
|
+
"",
|
|
57
|
+
].join("\n");
|
|
58
|
+
}
|
|
27
59
|
async function runtime(env) {
|
|
28
60
|
const policyPath = await existingPolicyPath(env);
|
|
29
61
|
return await createMelraRuntime({
|
|
30
62
|
workspaceRoot: env.workspaceRoot,
|
|
31
63
|
dataDirectory: env.dataDirectory,
|
|
64
|
+
unhinged: env.unhinged,
|
|
32
65
|
...(policyPath === undefined ? {} : { policyPath }),
|
|
33
66
|
...(env.browserExecutablePath === undefined
|
|
34
67
|
? {}
|
|
@@ -51,16 +84,56 @@ function argument(name, args) {
|
|
|
51
84
|
const index = args.indexOf(name);
|
|
52
85
|
return index < 0 ? undefined : args[index + 1];
|
|
53
86
|
}
|
|
87
|
+
/**
|
|
88
|
+
* A flag this command does not know is a typo, and a typo must not be silently
|
|
89
|
+
* ignored: `melra run --requst t.json` fell through to reading stdin, which in
|
|
90
|
+
* a terminal prints nothing and in a pipeline that never closes hangs forever.
|
|
91
|
+
*/
|
|
92
|
+
function rejectUnknownFlags(args, known) {
|
|
93
|
+
const allowed = new Set([...known, "--unhinged"]);
|
|
94
|
+
// A flag's own value can look like a flag (`--input node=--x`), so skip the
|
|
95
|
+
// slot after any known flag that takes one.
|
|
96
|
+
const valued = new Set(known.filter((flag) => flag !== "--http"));
|
|
97
|
+
for (let index = 0; index < args.length; index += 1) {
|
|
98
|
+
const argument_ = args[index];
|
|
99
|
+
if (argument_ === undefined || !argument_.startsWith("--"))
|
|
100
|
+
continue;
|
|
101
|
+
if (!allowed.has(argument_)) {
|
|
102
|
+
throw new Error(`unknown flag ${argument_}. Known here: ${[...allowed].sort().join(", ")}`);
|
|
103
|
+
}
|
|
104
|
+
if (valued.has(argument_))
|
|
105
|
+
index += 1;
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
// `JSON.parse` reports a character offset and nothing about where it was
|
|
109
|
+
// reading, so a typo in a workflow definition surfaced as a bare
|
|
110
|
+
// "Expected property name or '}' in JSON at position 1". Name the source.
|
|
111
|
+
function parseJson(text, source) {
|
|
112
|
+
try {
|
|
113
|
+
return JSON.parse(text);
|
|
114
|
+
}
|
|
115
|
+
catch (error) {
|
|
116
|
+
const detail = error instanceof Error ? error.message : String(error);
|
|
117
|
+
throw new Error(`${source} is not valid JSON: ${detail}`);
|
|
118
|
+
}
|
|
119
|
+
}
|
|
54
120
|
async function readTaskRequest(args) {
|
|
55
121
|
const requestPath = argument("--request", args);
|
|
56
122
|
if (requestPath !== undefined) {
|
|
57
|
-
|
|
123
|
+
const absolute = resolve(requestPath);
|
|
124
|
+
return TaskRequestSchema.parse(parseJson(await readFile(absolute, "utf8"), absolute));
|
|
58
125
|
}
|
|
59
126
|
if (!process.stdin.isTTY) {
|
|
60
127
|
let input = "";
|
|
61
128
|
for await (const chunk of process.stdin)
|
|
62
129
|
input += String(chunk);
|
|
63
|
-
|
|
130
|
+
// Redirected-but-empty stdin is what a script gets wrong, and `JSON.parse`
|
|
131
|
+
// answers it with "Unexpected end of JSON input" — true, and no help at
|
|
132
|
+
// all. Say the same thing an interactive shell would.
|
|
133
|
+
if (input.trim() === "") {
|
|
134
|
+
throw new Error("provide --request <file> or pipe a JSON task request");
|
|
135
|
+
}
|
|
136
|
+
return TaskRequestSchema.parse(parseJson(input, "the piped task request"));
|
|
64
137
|
}
|
|
65
138
|
throw new Error("provide --request <file> or pipe a JSON task request");
|
|
66
139
|
}
|
|
@@ -69,11 +142,16 @@ async function readWorkflowDefinition(args) {
|
|
|
69
142
|
if (definitionPath === undefined) {
|
|
70
143
|
throw new Error("workflow plan requires --definition <file>");
|
|
71
144
|
}
|
|
72
|
-
|
|
145
|
+
const absolute = resolve(definitionPath);
|
|
146
|
+
return WorkflowDefinitionSchema.parse(parseJson(await readFile(absolute, "utf8"), absolute));
|
|
73
147
|
}
|
|
74
148
|
function workflowExitCode(status) {
|
|
75
149
|
if (status === "awaiting_approval")
|
|
76
150
|
return 3;
|
|
151
|
+
// A run waiting on a person is not a failure — it is a prompt. Its own exit
|
|
152
|
+
// code lets a script tell "answer me" apart from "approve me" and "broke".
|
|
153
|
+
if (status === "awaiting_input")
|
|
154
|
+
return 4;
|
|
77
155
|
if ([
|
|
78
156
|
"failed",
|
|
79
157
|
"partially_complete",
|
|
@@ -84,6 +162,28 @@ function workflowExitCode(status) {
|
|
|
84
162
|
}
|
|
85
163
|
return 0;
|
|
86
164
|
}
|
|
165
|
+
// `--input <node-id>=<value>`. `=` rather than `:` because a node ID never
|
|
166
|
+
// contains one but an answer very often does (URLs, times, ratios).
|
|
167
|
+
function workflowInputs(args) {
|
|
168
|
+
const inputs = [];
|
|
169
|
+
for (let index = 0; index < args.length; index += 1) {
|
|
170
|
+
if (args[index] !== "--input")
|
|
171
|
+
continue;
|
|
172
|
+
const value = args[index + 1];
|
|
173
|
+
if (value === undefined)
|
|
174
|
+
throw new Error("--input requires a value");
|
|
175
|
+
const separator = value.indexOf("=");
|
|
176
|
+
if (separator < 1 || separator === value.length - 1) {
|
|
177
|
+
throw new Error("--input must be <node-id>=<value>");
|
|
178
|
+
}
|
|
179
|
+
inputs.push(WorkflowInputSchema.parse({
|
|
180
|
+
nodeId: value.slice(0, separator),
|
|
181
|
+
value: value.slice(separator + 1),
|
|
182
|
+
}));
|
|
183
|
+
index += 1;
|
|
184
|
+
}
|
|
185
|
+
return inputs;
|
|
186
|
+
}
|
|
87
187
|
function workflowApprovals(args) {
|
|
88
188
|
const approvals = [];
|
|
89
189
|
for (let index = 0; index < args.length; index += 1) {
|
|
@@ -119,7 +219,8 @@ async function workflowCommand(args, env) {
|
|
|
119
219
|
if (workflowId === undefined) {
|
|
120
220
|
throw new Error("workflow advance requires a workflow ID");
|
|
121
221
|
}
|
|
122
|
-
const
|
|
222
|
+
const rest = actionArgs.slice(1);
|
|
223
|
+
const result = await melra.workflows.advance(workflowId, workflowApprovals(rest), workflowInputs(rest));
|
|
123
224
|
output(result);
|
|
124
225
|
return workflowExitCode(result.run.status);
|
|
125
226
|
}
|
|
@@ -140,8 +241,23 @@ async function workflowCommand(args, env) {
|
|
|
140
241
|
output(run);
|
|
141
242
|
return workflowExitCode(run.status);
|
|
142
243
|
}
|
|
244
|
+
case "pause":
|
|
245
|
+
case "resume":
|
|
246
|
+
case "suspend": {
|
|
247
|
+
const workflowId = actionArgs[0];
|
|
248
|
+
if (workflowId === undefined) {
|
|
249
|
+
throw new Error(`workflow ${action} requires a workflow ID`);
|
|
250
|
+
}
|
|
251
|
+
const run = action === "pause"
|
|
252
|
+
? melra.workflows.pause(workflowId)
|
|
253
|
+
: action === "suspend"
|
|
254
|
+
? melra.workflows.suspend(workflowId)
|
|
255
|
+
: melra.workflows.resume(workflowId);
|
|
256
|
+
output(run);
|
|
257
|
+
return workflowExitCode(run.status);
|
|
258
|
+
}
|
|
143
259
|
default:
|
|
144
|
-
throw new Error("workflow supports plan, advance, inspect, and
|
|
260
|
+
throw new Error("workflow supports plan, advance, inspect, cancel, pause, resume, and suspend");
|
|
145
261
|
}
|
|
146
262
|
}
|
|
147
263
|
finally {
|
|
@@ -176,6 +292,16 @@ async function doctor(env) {
|
|
|
176
292
|
status: major >= 22 ? "pass" : "fail",
|
|
177
293
|
detail: process.version,
|
|
178
294
|
});
|
|
295
|
+
// A `warn`, not a `fail`: the operator asked for this, so `doctor` must still
|
|
296
|
+
// exit zero. But a machine running with no guardrails should never be able to
|
|
297
|
+
// report a clean bill of health without saying so.
|
|
298
|
+
checks.push(env.unhinged
|
|
299
|
+
? {
|
|
300
|
+
name: "guardrails",
|
|
301
|
+
status: "warn",
|
|
302
|
+
detail: "UNHINGED: no policy, approval, evidence, confinement, or destination check is applied",
|
|
303
|
+
}
|
|
304
|
+
: { name: "guardrails", status: "pass", detail: "enforced" });
|
|
179
305
|
try {
|
|
180
306
|
await access(env.workspaceRoot, constants.R_OK | constants.W_OK);
|
|
181
307
|
checks.push({
|
|
@@ -258,6 +384,9 @@ async function doctor(env) {
|
|
|
258
384
|
product: "MELRA",
|
|
259
385
|
version: PRODUCT_VERSION,
|
|
260
386
|
ready: !failed,
|
|
387
|
+
// Alongside the `guardrails` check so a script does not have to read a
|
|
388
|
+
// detail string to find out whether this machine has any.
|
|
389
|
+
unhinged: env.unhinged,
|
|
261
390
|
checks,
|
|
262
391
|
},
|
|
263
392
|
failed,
|
|
@@ -349,7 +478,12 @@ async function inspectTask(args, env) {
|
|
|
349
478
|
}
|
|
350
479
|
async function policyTest(args, env) {
|
|
351
480
|
const request = await readTaskRequest(args);
|
|
352
|
-
|
|
481
|
+
// Reports what this process would actually decide, unhinged mode included —
|
|
482
|
+
// a dry run that disagreed with the server it is previewing is worse than none.
|
|
483
|
+
const policy = {
|
|
484
|
+
...createDefaultPolicy(env.workspaceRoot),
|
|
485
|
+
unhinged: env.unhinged,
|
|
486
|
+
};
|
|
353
487
|
const taskId = "00000000-0000-4000-8000-000000000000";
|
|
354
488
|
output(evaluatePolicy(taskId, request, policy));
|
|
355
489
|
}
|
|
@@ -360,21 +494,34 @@ Usage:
|
|
|
360
494
|
melra setup [--client <claude|cursor|vscode|codex|generic>]
|
|
361
495
|
melra doctor
|
|
362
496
|
melra init --client <claude|cursor|vscode|codex|generic>
|
|
363
|
-
melra serve
|
|
497
|
+
melra serve [--http] [--port <port>]
|
|
364
498
|
melra run --request <task.json>
|
|
365
499
|
melra inspect <task-id>
|
|
366
500
|
melra workflow plan --definition <workflow.json>
|
|
367
501
|
melra workflow advance <workflow-id> [--approval <id>:<exact-phrase>]
|
|
502
|
+
[--input <node-id>=<value>]
|
|
368
503
|
melra workflow inspect <workflow-id>
|
|
369
504
|
melra workflow cancel <workflow-id>
|
|
505
|
+
melra workflow pause|resume|suspend <workflow-id>
|
|
370
506
|
melra demo durable-core
|
|
371
507
|
melra policy test --request <task.json>
|
|
372
508
|
melra version
|
|
373
509
|
|
|
510
|
+
Flags:
|
|
511
|
+
--unhinged Run with no policy and no guardrails. Everything the OS user
|
|
512
|
+
can do, any caller can now do. Same as MELRA_UNHINGED=1.
|
|
513
|
+
--http Serve MCP over loopback HTTP instead of stdio, alongside a
|
|
514
|
+
read-only REST API, a workflow event stream, and the console.
|
|
515
|
+
Prints a bearer token; every request must carry it.
|
|
516
|
+
--port <port> HTTP port (default: 7457, or MELRA_HTTP_PORT).
|
|
517
|
+
|
|
374
518
|
Environment:
|
|
375
519
|
MELRA_WORKSPACE Workspace boundary (default: current directory)
|
|
376
520
|
MELRA_HOME Local database and artifact directory
|
|
377
521
|
MELRA_POLICY Optional local policy JSON
|
|
522
|
+
MELRA_UNHINGED Set to 1 to disable every guardrail (see --unhinged)
|
|
523
|
+
MELRA_HTTP_PORT Port for 'serve --http' (default: 7457)
|
|
524
|
+
MELRA_HTTP_TOKEN Fixed bearer token for 'serve --http' (default: random)
|
|
378
525
|
MELRA_BROWSER Optional Chrome/Chromium/Edge executable
|
|
379
526
|
MELRA_BROWSER_CDP_ENDPOINT Optional HTTP(S) CDP endpoint
|
|
380
527
|
MELRA_BROWSER_CDP_CONTEXT_INDEX External context index (-1 is last)
|
|
@@ -383,25 +530,60 @@ Environment:
|
|
|
383
530
|
}
|
|
384
531
|
async function main() {
|
|
385
532
|
const [command = "help", ...args] = process.argv.slice(2);
|
|
386
|
-
const
|
|
533
|
+
const parsed = parseCliEnvironment(process.env);
|
|
534
|
+
// `--unhinged` is an alias for the variable, not a second setting: one field
|
|
535
|
+
// carries the answer so no code path can consult the weaker of the two.
|
|
536
|
+
const env = args.includes("--unhinged")
|
|
537
|
+
? { ...parsed, unhinged: true }
|
|
538
|
+
: parsed;
|
|
539
|
+
// Before the command runs, and for every command including `help` — the mode
|
|
540
|
+
// is a property of the process, so there is no invocation where staying quiet
|
|
541
|
+
// about it is right.
|
|
542
|
+
if (env.unhinged) {
|
|
543
|
+
process.stderr.write(`${unhingedBanner(unconfinedRoot(env.workspaceRoot))}\n`);
|
|
544
|
+
}
|
|
387
545
|
switch (command) {
|
|
388
546
|
case "doctor": {
|
|
547
|
+
rejectUnknownFlags(args, []);
|
|
389
548
|
const { report, failed } = await doctor(env);
|
|
390
549
|
output(report);
|
|
391
550
|
process.exitCode = failed ? 1 : 0;
|
|
392
551
|
return;
|
|
393
552
|
}
|
|
394
553
|
case "init":
|
|
554
|
+
rejectUnknownFlags(args, ["--client"]);
|
|
395
555
|
output(await init(args, env));
|
|
396
556
|
return;
|
|
397
557
|
case "setup":
|
|
558
|
+
rejectUnknownFlags(args, ["--client"]);
|
|
398
559
|
process.exitCode = await setup(args, env);
|
|
399
560
|
return;
|
|
400
561
|
case "serve": {
|
|
562
|
+
rejectUnknownFlags(args, ["--http", "--port"]);
|
|
401
563
|
const melra = await runtime(env);
|
|
402
|
-
const
|
|
564
|
+
const http = args.includes("--http");
|
|
565
|
+
const port = argument("--port", args);
|
|
566
|
+
const server = http
|
|
567
|
+
? undefined
|
|
568
|
+
: await serveStdio(melra);
|
|
569
|
+
const endpoint = http
|
|
570
|
+
? await serveHttp({
|
|
571
|
+
runtime: melra,
|
|
572
|
+
...(port === undefined ? {} : { port: Number(port) }),
|
|
573
|
+
})
|
|
574
|
+
: undefined;
|
|
575
|
+
if (endpoint !== undefined) {
|
|
576
|
+
// stdout stays clean for the stdio transport's sake even here, so the
|
|
577
|
+
// one command an operator has to copy goes where they can read it.
|
|
578
|
+
process.stderr.write(`MELRA HTTP server listening on http://${endpoint.host}:${endpoint.port}\n` +
|
|
579
|
+
` Console: ${endpoint.url}\n` +
|
|
580
|
+
` MCP: ${endpoint.mcpUrl}\n` +
|
|
581
|
+
` Token: ${endpoint.token}\n` +
|
|
582
|
+
`Loopback only. Anyone who can read this token can drive this machine.\n`);
|
|
583
|
+
}
|
|
403
584
|
const close = async () => {
|
|
404
|
-
await server
|
|
585
|
+
await server?.close();
|
|
586
|
+
await endpoint?.close();
|
|
405
587
|
await melra.close();
|
|
406
588
|
};
|
|
407
589
|
process.once("SIGINT", () => void close().finally(() => process.exit(0)));
|
|
@@ -409,16 +591,20 @@ async function main() {
|
|
|
409
591
|
return;
|
|
410
592
|
}
|
|
411
593
|
case "run":
|
|
594
|
+
rejectUnknownFlags(args, ["--request"]);
|
|
412
595
|
process.exitCode = await runTask(args, env);
|
|
413
596
|
return;
|
|
414
597
|
case "inspect":
|
|
415
598
|
case "export":
|
|
599
|
+
rejectUnknownFlags(args, []);
|
|
416
600
|
await inspectTask(args, env);
|
|
417
601
|
return;
|
|
418
602
|
case "workflow":
|
|
603
|
+
rejectUnknownFlags(args, ["--definition", "--approval", "--input"]);
|
|
419
604
|
process.exitCode = await workflowCommand(args, env);
|
|
420
605
|
return;
|
|
421
606
|
case "demo":
|
|
607
|
+
rejectUnknownFlags(args, []);
|
|
422
608
|
if (args[0] !== "durable-core") {
|
|
423
609
|
throw new Error("demo supports only 'durable-core'");
|
|
424
610
|
}
|
|
@@ -427,6 +613,7 @@ async function main() {
|
|
|
427
613
|
case "policy":
|
|
428
614
|
if (args[0] !== "test")
|
|
429
615
|
throw new Error("policy supports only 'test'");
|
|
616
|
+
rejectUnknownFlags(args.slice(1), ["--request"]);
|
|
430
617
|
await policyTest(args.slice(1), env);
|
|
431
618
|
return;
|
|
432
619
|
case "version":
|
|
@@ -443,8 +630,37 @@ async function main() {
|
|
|
443
630
|
throw new Error(`unknown command: ${basename(command)}`);
|
|
444
631
|
}
|
|
445
632
|
}
|
|
633
|
+
/**
|
|
634
|
+
* A schema rejection, rendered as one line per problem.
|
|
635
|
+
*
|
|
636
|
+
* Zod's `message` is the JSON dump of its issue array, so an input missing one
|
|
637
|
+
* field used to fill the terminal with brackets and offsets. The useful part of
|
|
638
|
+
* each issue is where it is and what is wrong with it.
|
|
639
|
+
*
|
|
640
|
+
* Detected by shape rather than `instanceof ZodError` so the CLI does not take
|
|
641
|
+
* a direct zod dependency to print an error — every schema it parses comes from
|
|
642
|
+
* `@melra/protocol`, and matching on `issues` also survives a major zod bump.
|
|
643
|
+
*/
|
|
644
|
+
function schemaIssues(error) {
|
|
645
|
+
if (typeof error !== "object" || error === null)
|
|
646
|
+
return undefined;
|
|
647
|
+
const { issues } = error;
|
|
648
|
+
if (!Array.isArray(issues) || issues.length === 0)
|
|
649
|
+
return undefined;
|
|
650
|
+
const lines = issues.map((issue) => {
|
|
651
|
+
const path = (issue.path ?? [])
|
|
652
|
+
.map((segment) => typeof segment === "number" ? `[${segment}]` : `.${segment}`)
|
|
653
|
+
.join("")
|
|
654
|
+
.replace(/^\./, "");
|
|
655
|
+
const message = issue.message ?? "invalid value";
|
|
656
|
+
return ` ${path === "" ? "(root)" : path}: ${message}`;
|
|
657
|
+
});
|
|
658
|
+
return ["input does not match the schema:", ...lines].join("\n");
|
|
659
|
+
}
|
|
446
660
|
main().catch((error) => {
|
|
447
|
-
|
|
661
|
+
const message = schemaIssues(error) ??
|
|
662
|
+
(error instanceof Error ? error.message : String(error));
|
|
663
|
+
process.stderr.write(`melra: ${message}\n`);
|
|
448
664
|
process.exitCode = 1;
|
|
449
665
|
});
|
|
450
666
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@melra/cli",
|
|
3
|
-
"version": "0.3.0-alpha.
|
|
3
|
+
"version": "0.3.0-alpha.5",
|
|
4
4
|
"description": "MELRA local execution runtime and command-line interface.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"repository": {
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
"bugs": "https://github.com/XAGI-Lab/melra/issues",
|
|
13
13
|
"type": "module",
|
|
14
14
|
"bin": {
|
|
15
|
-
"melra": "./dist/
|
|
15
|
+
"melra": "./dist/bin.js"
|
|
16
16
|
},
|
|
17
17
|
"exports": {
|
|
18
18
|
".": {
|
|
@@ -25,15 +25,15 @@
|
|
|
25
25
|
"README.md"
|
|
26
26
|
],
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@melra/
|
|
29
|
-
"@melra/
|
|
30
|
-
"@melra/
|
|
31
|
-
"@melra/
|
|
32
|
-
"@melra/
|
|
33
|
-
"@melra/
|
|
28
|
+
"@melra/computer-runtime": "0.3.0-alpha.5",
|
|
29
|
+
"@melra/policy-core": "0.3.0-alpha.5",
|
|
30
|
+
"@melra/server": "0.3.0-alpha.5",
|
|
31
|
+
"@melra/storage-sqlite": "0.3.0-alpha.5",
|
|
32
|
+
"@melra/protocol": "0.3.0-alpha.5",
|
|
33
|
+
"@melra/browser-runtime": "0.3.0-alpha.5"
|
|
34
34
|
},
|
|
35
35
|
"scripts": {
|
|
36
|
-
"build": "tsc -p tsconfig.json && chmod +x dist/index.js",
|
|
36
|
+
"build": "tsc -p tsconfig.json && chmod +x dist/bin.js dist/index.js",
|
|
37
37
|
"clean": "rm -rf dist",
|
|
38
38
|
"dev": "tsx src/index.ts",
|
|
39
39
|
"start": "tsx src/index.ts",
|