mandala-computer-mcp 0.1.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 +544 -0
- package/dist/api.d.ts +186 -0
- package/dist/api.d.ts.map +1 -0
- package/dist/api.js +932 -0
- package/dist/api.js.map +1 -0
- package/dist/cli.d.ts +55 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +292 -0
- package/dist/cli.js.map +1 -0
- package/dist/errors.d.ts +560 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +873 -0
- package/dist/errors.js.map +1 -0
- package/dist/events.d.ts +406 -0
- package/dist/events.d.ts.map +1 -0
- package/dist/events.js +1679 -0
- package/dist/events.js.map +1 -0
- package/dist/format.d.ts +125 -0
- package/dist/format.d.ts.map +1 -0
- package/dist/format.js +180 -0
- package/dist/format.js.map +1 -0
- package/dist/http.d.ts +46 -0
- package/dist/http.d.ts.map +1 -0
- package/dist/http.js +792 -0
- package/dist/http.js.map +1 -0
- package/dist/index.d.ts +13 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +12 -0
- package/dist/index.js.map +1 -0
- package/dist/paths.d.ts +394 -0
- package/dist/paths.d.ts.map +1 -0
- package/dist/paths.js +677 -0
- package/dist/paths.js.map +1 -0
- package/dist/server.d.ts +18 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +97 -0
- package/dist/server.js.map +1 -0
- package/dist/session.d.ts +78 -0
- package/dist/session.d.ts.map +1 -0
- package/dist/session.js +166 -0
- package/dist/session.js.map +1 -0
- package/dist/stdio.d.ts +11 -0
- package/dist/stdio.d.ts.map +1 -0
- package/dist/stdio.js +43 -0
- package/dist/stdio.js.map +1 -0
- package/dist/tools/agent.d.ts +16 -0
- package/dist/tools/agent.d.ts.map +1 -0
- package/dist/tools/agent.js +147 -0
- package/dist/tools/agent.js.map +1 -0
- package/dist/tools/computers.d.ts +3 -0
- package/dist/tools/computers.d.ts.map +1 -0
- package/dist/tools/computers.js +1037 -0
- package/dist/tools/computers.js.map +1 -0
- package/dist/tools/events.d.ts +3 -0
- package/dist/tools/events.d.ts.map +1 -0
- package/dist/tools/events.js +1077 -0
- package/dist/tools/events.js.map +1 -0
- package/dist/tools/guest.d.ts +3 -0
- package/dist/tools/guest.d.ts.map +1 -0
- package/dist/tools/guest.js +761 -0
- package/dist/tools/guest.js.map +1 -0
- package/dist/tools/input.d.ts +3 -0
- package/dist/tools/input.d.ts.map +1 -0
- package/dist/tools/input.js +240 -0
- package/dist/tools/input.js.map +1 -0
- package/dist/tools/snapshots.d.ts +3 -0
- package/dist/tools/snapshots.d.ts.map +1 -0
- package/dist/tools/snapshots.js +333 -0
- package/dist/tools/snapshots.js.map +1 -0
- package/dist/tools/templates.d.ts +3 -0
- package/dist/tools/templates.d.ts.map +1 -0
- package/dist/tools/templates.js +492 -0
- package/dist/tools/templates.js.map +1 -0
- package/dist/tools/types.d.ts +18 -0
- package/dist/tools/types.d.ts.map +1 -0
- package/dist/tools/types.js +2 -0
- package/dist/tools/types.js.map +1 -0
- package/dist/tools/webhooks.d.ts +3 -0
- package/dist/tools/webhooks.d.ts.map +1 -0
- package/dist/tools/webhooks.js +260 -0
- package/dist/tools/webhooks.js.map +1 -0
- package/package.json +59 -0
package/dist/api.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
|
package/dist/cli.d.ts
ADDED
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
type Flags = Record<string, string | boolean>;
|
|
3
|
+
/**
|
|
4
|
+
* argv into flags.
|
|
5
|
+
*
|
|
6
|
+
* Exported for the tests, which is worth one line of surface: this is the one
|
|
7
|
+
* place a mistyped value becomes a credential or a URL that is subtly not what
|
|
8
|
+
* was typed, and the failure it produces surfaces somewhere else entirely.
|
|
9
|
+
*/
|
|
10
|
+
export declare function parse(argv: string[]): Flags;
|
|
11
|
+
/**
|
|
12
|
+
* Did these flags ask for the help, or for the version?
|
|
13
|
+
*
|
|
14
|
+
* Both spellings of each, and exported for the same reason `parse` is: `--v`
|
|
15
|
+
* parses to a `v` flag that nothing then read, so it started a server instead
|
|
16
|
+
* of printing a number, while `--h` had always been handled. The asymmetry was
|
|
17
|
+
* invisible in `parse`'s own output — the flag was there, and the failure was
|
|
18
|
+
* the one line further down that did not look for it.
|
|
19
|
+
*/
|
|
20
|
+
export declare const wantsHelp: (flags: Flags) => boolean;
|
|
21
|
+
export declare const wantsVersion: (flags: Flags) => boolean;
|
|
22
|
+
/** Whether lifecycle tools survive the flag/environment precedence rules. */
|
|
23
|
+
export declare function lifecycleEnabled(flags: Flags, configured?: string | undefined): boolean;
|
|
24
|
+
/**
|
|
25
|
+
* The port to listen on, or a refusal naming what was wrong with it.
|
|
26
|
+
*
|
|
27
|
+
* `--port` with nothing after it parses as the boolean true, and `Number(true)`
|
|
28
|
+
* is 1 — a privileged port nobody asked for, which also swallows the PORT
|
|
29
|
+
* environment variable on the way past, since `??` sees a value. Better to say
|
|
30
|
+
* so than to fail later with EACCES on a number the user never typed.
|
|
31
|
+
*/
|
|
32
|
+
export declare function port(flag: string | boolean | undefined): number;
|
|
33
|
+
/**
|
|
34
|
+
* A flag's value as a string, or a refusal naming the flag.
|
|
35
|
+
*
|
|
36
|
+
* `--key` with nothing after it parses as the boolean `true`, and every one of
|
|
37
|
+
* these values is then used as a string. Cast rather than checked, that ends as
|
|
38
|
+
* `Authorization: Bearer true` — a 401 from the platform that names nothing a
|
|
39
|
+
* reader could act on — or, for `--base-url`, a TypeError thrown from inside
|
|
40
|
+
* `String.prototype.replace` that mentions neither the flag nor the mistake.
|
|
41
|
+
* `port()` has always said so for its own flag; this says it for the rest.
|
|
42
|
+
*/
|
|
43
|
+
export declare function str(flag: string | boolean | undefined, name: string): string | undefined;
|
|
44
|
+
/**
|
|
45
|
+
* Is this module the program, rather than something a test imported?
|
|
46
|
+
*
|
|
47
|
+
* argv[1] is resolved through symlinks first, and that is the point rather
|
|
48
|
+
* than a nicety: npm installs `bin` as a symlink under node_modules/.bin, Node
|
|
49
|
+
* resolves the ESM entry through it but leaves argv[1] as the symlink path, so
|
|
50
|
+
* the raw comparison never matched. `npx mandala-computer-mcp` — every client
|
|
51
|
+
* spawning the installed binary — exited 0 with no server and no message.
|
|
52
|
+
*/
|
|
53
|
+
export declare function isEntrypoint(moduleUrl: string, arg: string | undefined): boolean;
|
|
54
|
+
export {};
|
|
55
|
+
//# sourceMappingURL=cli.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAiCA,KAAK,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC;AA2B9C;;;;;;GAMG;AACH,wBAAgB,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,KAAK,CA0C3C;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,SAAS,GAAI,OAAO,KAAK,KAAG,OAAyC,CAAC;AACnF,eAAO,MAAM,YAAY,GAAI,OAAO,KAAK,KAAG,OAA4C,CAAC;AAEzF,6EAA6E;AAC7E,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,qBAA8B,GAAG,OAAO,CAOhG;AAED;;;;;;;GAOG;AACH,wBAAgB,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,CAgC/D;AAED;;;;;;;;;GASG;AACH,wBAAgB,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CASxF;AAgGD;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAQhF"}
|
package/dist/cli.js
ADDED
|
@@ -0,0 +1,292 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import { realpathSync } from 'node:fs';
|
|
3
|
+
import { pathToFileURL } from 'node:url';
|
|
4
|
+
import { DEFAULT_BASE_URL } from './api.js';
|
|
5
|
+
import { runHttp } from './http.js';
|
|
6
|
+
import { SERVER_VERSION } from './server.js';
|
|
7
|
+
import { runStdio } from './stdio.js';
|
|
8
|
+
const USAGE = `mandala-computer-mcp — drive a Mandala Computer desktop over MCP
|
|
9
|
+
|
|
10
|
+
mandala-computer-mcp stdio (what an MCP client spawns)
|
|
11
|
+
mandala-computer-mcp --http [--port 3000] hosted, callers bring their own key
|
|
12
|
+
|
|
13
|
+
Environment
|
|
14
|
+
MANDALA_API_KEY com_… from Settings → API keys. Required on stdio; over
|
|
15
|
+
HTTP each caller sends their own as a bearer token.
|
|
16
|
+
MANDALA_BASE_URL default ${DEFAULT_BASE_URL}
|
|
17
|
+
MANDALA_COMPUTER_ID bind a computer at startup, so use_computer is not needed.
|
|
18
|
+
stdio only — over HTTP it is ignored rather than bound
|
|
19
|
+
into every caller's session
|
|
20
|
+
MANDALA_MODEL_KEY an Anthropic key; enables the run_agent tool. stdio only
|
|
21
|
+
— over HTTP each caller sends their own X-Model-Key, and
|
|
22
|
+
this is ignored rather than spent on their runs
|
|
23
|
+
MANDALA_NO_LIFECYCLE set to 1 to withhold create_computer, clone_computer,
|
|
24
|
+
clone_snapshot, delete_computer and delete_snapshot
|
|
25
|
+
PORT, HOST for --http (default 3000, 127.0.0.1)
|
|
26
|
+
MANDALA_ALLOWED_HOSTS, MANDALA_ALLOWED_ORIGINS
|
|
27
|
+
comma-separated; which Host and Origin values to answer
|
|
28
|
+
to. A loopback bind defaults to the address it was given,
|
|
29
|
+
so rebinding protection is on without configuration
|
|
30
|
+
|
|
31
|
+
Flags override the environment.`;
|
|
32
|
+
/**
|
|
33
|
+
* The flags that are a yes-or-no and never take a value.
|
|
34
|
+
*
|
|
35
|
+
* Without this list every flag eats the next token, so `--http false` sets
|
|
36
|
+
* `http` to the string "false" — which is truthy, and starts the HTTP server
|
|
37
|
+
* the user just said they did not want. `--no-lifecycle false` withheld the
|
|
38
|
+
* lifecycle tools for the same reason. A flag that means "on" is on by being
|
|
39
|
+
* present, and anything following it is the next argument, not its value.
|
|
40
|
+
*/
|
|
41
|
+
const BOOLEAN = new Set(['help', 'h', 'version', 'v', 'http', 'no-lifecycle']);
|
|
42
|
+
const KNOWN = new Set([
|
|
43
|
+
...BOOLEAN,
|
|
44
|
+
'port',
|
|
45
|
+
'host',
|
|
46
|
+
'base-url',
|
|
47
|
+
'computer',
|
|
48
|
+
'key',
|
|
49
|
+
'allowed-hosts',
|
|
50
|
+
'allowed-origins',
|
|
51
|
+
]);
|
|
52
|
+
/** What `--http=…` may say to mean no. */
|
|
53
|
+
const FALSEY = new Set(['false', '0', 'no', 'off']);
|
|
54
|
+
/**
|
|
55
|
+
* argv into flags.
|
|
56
|
+
*
|
|
57
|
+
* Exported for the tests, which is worth one line of surface: this is the one
|
|
58
|
+
* place a mistyped value becomes a credential or a URL that is subtly not what
|
|
59
|
+
* was typed, and the failure it produces surfaces somewhere else entirely.
|
|
60
|
+
*/
|
|
61
|
+
export function parse(argv) {
|
|
62
|
+
const flags = {};
|
|
63
|
+
for (let i = 0; i < argv.length; i++) {
|
|
64
|
+
const arg = argv[i];
|
|
65
|
+
// Single-dash short forms, for the two that every CLI is expected to
|
|
66
|
+
// answer. Skipping anything without a `--` meant `-h` fell through to a
|
|
67
|
+
// normal startup and exited 2 with "No API key" — the one message least
|
|
68
|
+
// like the help that was asked for. Only these two: a general short-flag
|
|
69
|
+
// grammar would have to guess which take values, and none of the rest here
|
|
70
|
+
// has a short form to guess about.
|
|
71
|
+
if (arg === '-h' || arg === '-v') {
|
|
72
|
+
flags[arg === '-h' ? 'help' : 'version'] = true;
|
|
73
|
+
continue;
|
|
74
|
+
}
|
|
75
|
+
if (!arg.startsWith('--')) {
|
|
76
|
+
throw new Error(`unexpected argument ${arg}. This program takes flags, not commands — try --help.`);
|
|
77
|
+
}
|
|
78
|
+
// Split at the first `=`, not with `split('=', 2)` — the limit argument
|
|
79
|
+
// discards the remainder rather than keeping it, so `--key=com_a=b` would
|
|
80
|
+
// silently yield `com_a`. Values with an `=` in them are the ordinary case
|
|
81
|
+
// here: API keys, base URLs with a query, and allowed-origin lists.
|
|
82
|
+
const body = arg.slice(2);
|
|
83
|
+
const eq = body.indexOf('=');
|
|
84
|
+
const name = eq < 0 ? body : body.slice(0, eq);
|
|
85
|
+
const inline = eq < 0 ? undefined : body.slice(eq + 1);
|
|
86
|
+
if (!KNOWN.has(name)) {
|
|
87
|
+
throw new Error(`unknown flag --${name}. Valid flags are: ${[...KNOWN].map((flag) => `--${flag}`).join(', ')}`);
|
|
88
|
+
}
|
|
89
|
+
// `--http=false` has to mean false. It is the one spelling that carries an
|
|
90
|
+
// explicit answer, and reading it as the truthy string "false" would turn
|
|
91
|
+
// the clearest way to say no into a yes.
|
|
92
|
+
if (BOOLEAN.has(name))
|
|
93
|
+
flags[name] = inline === undefined ? true : !FALSEY.has(inline.toLowerCase());
|
|
94
|
+
else if (inline !== undefined)
|
|
95
|
+
flags[name] = inline;
|
|
96
|
+
else if (argv[i + 1] && !argv[i + 1].startsWith('--'))
|
|
97
|
+
flags[name] = argv[++i];
|
|
98
|
+
else
|
|
99
|
+
flags[name] = true;
|
|
100
|
+
}
|
|
101
|
+
return flags;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Did these flags ask for the help, or for the version?
|
|
105
|
+
*
|
|
106
|
+
* Both spellings of each, and exported for the same reason `parse` is: `--v`
|
|
107
|
+
* parses to a `v` flag that nothing then read, so it started a server instead
|
|
108
|
+
* of printing a number, while `--h` had always been handled. The asymmetry was
|
|
109
|
+
* invisible in `parse`'s own output — the flag was there, and the failure was
|
|
110
|
+
* the one line further down that did not look for it.
|
|
111
|
+
*/
|
|
112
|
+
export const wantsHelp = (flags) => Boolean(flags.help || flags.h);
|
|
113
|
+
export const wantsVersion = (flags) => Boolean(flags.version || flags.v);
|
|
114
|
+
/** Whether lifecycle tools survive the flag/environment precedence rules. */
|
|
115
|
+
export function lifecycleEnabled(flags, configured = env('MANDALA_NO_LIFECYCLE')) {
|
|
116
|
+
// Presence is what establishes precedence. `--no-lifecycle=false` carries a
|
|
117
|
+
// false value deliberately and must not fall through to a true environment.
|
|
118
|
+
const disabled = Object.hasOwn(flags, 'no-lifecycle')
|
|
119
|
+
? Boolean(flags['no-lifecycle'])
|
|
120
|
+
: configured === '1';
|
|
121
|
+
return !disabled;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* The port to listen on, or a refusal naming what was wrong with it.
|
|
125
|
+
*
|
|
126
|
+
* `--port` with nothing after it parses as the boolean true, and `Number(true)`
|
|
127
|
+
* is 1 — a privileged port nobody asked for, which also swallows the PORT
|
|
128
|
+
* environment variable on the way past, since `??` sees a value. Better to say
|
|
129
|
+
* so than to fail later with EACCES on a number the user never typed.
|
|
130
|
+
*/
|
|
131
|
+
export function port(flag) {
|
|
132
|
+
if (flag === true)
|
|
133
|
+
throw new Error('--port needs a number, e.g. --port 3000');
|
|
134
|
+
// A flag that is PRESENT decides, even when it is empty — the same rule `str`
|
|
135
|
+
// applies to every other value flag, and the one the usage text promises when
|
|
136
|
+
// it says flags override the environment. `--port=` used to trim to `''` and
|
|
137
|
+
// fall through `||` to PORT, so the clearest way to say "not the environment's
|
|
138
|
+
// port" silently deferred to the environment. It is not a port either, so it
|
|
139
|
+
// is refused rather than turned into the default.
|
|
140
|
+
if (typeof flag === 'string' && !flag.trim()) {
|
|
141
|
+
throw new Error('--port needs a number, e.g. --port 3000');
|
|
142
|
+
}
|
|
143
|
+
// `??` is not enough here: PORT='' is a set-but-empty variable, which is the
|
|
144
|
+
// ordinary shape of an unset value in shell and compose files, and it passes
|
|
145
|
+
// `??` intact. `Number('')` is 0, which passes every check below and means
|
|
146
|
+
// "any free port" — so a server asked for 3000 bound something random and
|
|
147
|
+
// said so only in a line nobody reads.
|
|
148
|
+
const given = typeof flag === 'string' ? flag.trim() : '';
|
|
149
|
+
const fromEnv = process.env.PORT?.trim() ?? '';
|
|
150
|
+
const raw = given || fromEnv || '3000';
|
|
151
|
+
// Decimal digits only. `Number('0x12')` is 18 and `Number('1e3')` is 1000,
|
|
152
|
+
// both integers in range, so they used to bind those ports — the same
|
|
153
|
+
// `Number()` footgun this function already refuses for `true` and `''`.
|
|
154
|
+
// `contentLength` already gates on `/^\d+$/` before converting (adversarial
|
|
155
|
+
// review, OPL-4314).
|
|
156
|
+
if (!/^\d+$/.test(raw)) {
|
|
157
|
+
throw new Error(`not a port number: ${raw}`);
|
|
158
|
+
}
|
|
159
|
+
const n = Number(raw);
|
|
160
|
+
if (!Number.isInteger(n) || n < 0 || n > 65535) {
|
|
161
|
+
throw new Error(`not a port number: ${raw}`);
|
|
162
|
+
}
|
|
163
|
+
return n;
|
|
164
|
+
}
|
|
165
|
+
/**
|
|
166
|
+
* A flag's value as a string, or a refusal naming the flag.
|
|
167
|
+
*
|
|
168
|
+
* `--key` with nothing after it parses as the boolean `true`, and every one of
|
|
169
|
+
* these values is then used as a string. Cast rather than checked, that ends as
|
|
170
|
+
* `Authorization: Bearer true` — a 401 from the platform that names nothing a
|
|
171
|
+
* reader could act on — or, for `--base-url`, a TypeError thrown from inside
|
|
172
|
+
* `String.prototype.replace` that mentions neither the flag nor the mistake.
|
|
173
|
+
* `port()` has always said so for its own flag; this says it for the rest.
|
|
174
|
+
*/
|
|
175
|
+
export function str(flag, name) {
|
|
176
|
+
if (flag === true)
|
|
177
|
+
throw new Error(`--${name} needs a value, e.g. --${name} <value>`);
|
|
178
|
+
if (flag === false || flag === undefined)
|
|
179
|
+
return undefined;
|
|
180
|
+
// `--key=` is a value, and an empty one. `flag || undefined` folded it back
|
|
181
|
+
// into "not given", so the environment answered instead and the flag the
|
|
182
|
+
// usage text promises would override it did the opposite of nothing — it
|
|
183
|
+
// silently deferred. Trimmed for the reason `env` below is: an id or a key
|
|
184
|
+
// that arrived through a shell with a newline on it is not a different id.
|
|
185
|
+
return flag.trim();
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* An environment variable, trimmed, and absent when that leaves nothing.
|
|
189
|
+
*
|
|
190
|
+
* `port()` has always done this and the rest did not, which is a strange place
|
|
191
|
+
* to draw the line: the values that arrive with whitespace on them are the ones
|
|
192
|
+
* read out of a `.env` file, a Kubernetes secret or a `docker run --env-file`,
|
|
193
|
+
* and those carry keys, base URLs and computer ids far more often than they
|
|
194
|
+
* carry ports. Each failed differently and none of them named the cause — a
|
|
195
|
+
* trailing newline on an API key is rejected by Node's own header validation
|
|
196
|
+
* before the request is made, one on a base URL parses into a hostname nothing
|
|
197
|
+
* resolves, and one on a computer id reaches the platform trimmed while staying
|
|
198
|
+
* untrimmed in this process. An empty variable is treated as unset, which is
|
|
199
|
+
* what an unquoted assignment in a compose file usually means.
|
|
200
|
+
*/
|
|
201
|
+
function env(name) {
|
|
202
|
+
const v = process.env[name]?.trim();
|
|
203
|
+
return v ? v : undefined;
|
|
204
|
+
}
|
|
205
|
+
const list = (v) => v
|
|
206
|
+
? v
|
|
207
|
+
.split(',')
|
|
208
|
+
.map((s) => s.trim())
|
|
209
|
+
.filter(Boolean)
|
|
210
|
+
: undefined;
|
|
211
|
+
async function main() {
|
|
212
|
+
const flags = parse(process.argv.slice(2));
|
|
213
|
+
if (wantsHelp(flags)) {
|
|
214
|
+
console.log(USAGE);
|
|
215
|
+
return;
|
|
216
|
+
}
|
|
217
|
+
if (wantsVersion(flags)) {
|
|
218
|
+
// The same constant the server reports over the protocol. Printed from two
|
|
219
|
+
// places, a `--version` and an initialize response drift apart silently,
|
|
220
|
+
// and the number people quote in a bug report is the one that lies.
|
|
221
|
+
console.log(SERVER_VERSION);
|
|
222
|
+
return;
|
|
223
|
+
}
|
|
224
|
+
// `??` rather than `||` throughout, now that `str` distinguishes "not given"
|
|
225
|
+
// from "given as empty". `--base-url=` means the default, not the
|
|
226
|
+
// environment; a flag that is present says what it says.
|
|
227
|
+
const base = {
|
|
228
|
+
baseUrl: (str(flags['base-url'], 'base-url') ?? env('MANDALA_BASE_URL')) || DEFAULT_BASE_URL,
|
|
229
|
+
computerId: str(flags.computer, 'computer') ?? env('MANDALA_COMPUTER_ID'),
|
|
230
|
+
modelKey: env('MANDALA_MODEL_KEY'),
|
|
231
|
+
lifecycle: lifecycleEnabled(flags),
|
|
232
|
+
};
|
|
233
|
+
if (flags.http) {
|
|
234
|
+
await runHttp({
|
|
235
|
+
...base,
|
|
236
|
+
port: port(flags.port),
|
|
237
|
+
host: (str(flags.host, 'host') ?? env('HOST')) || '127.0.0.1',
|
|
238
|
+
allowedHosts: list(str(flags['allowed-hosts'], 'allowed-hosts') ?? env('MANDALA_ALLOWED_HOSTS')),
|
|
239
|
+
allowedOrigins: list(str(flags['allowed-origins'], 'allowed-origins') ?? env('MANDALA_ALLOWED_ORIGINS')),
|
|
240
|
+
});
|
|
241
|
+
return;
|
|
242
|
+
}
|
|
243
|
+
const fromFlag = str(flags.key, 'key');
|
|
244
|
+
const apiKey = fromFlag ?? env('MANDALA_API_KEY') ?? '';
|
|
245
|
+
// An argument vector is not a private place. `--key com_…` is readable by any
|
|
246
|
+
// `ps` on the machine, is what a shell writes into its history, and is what a
|
|
247
|
+
// process-exec audit log records verbatim — none of which is true of the
|
|
248
|
+
// environment variable that does the same job. The flag stays, because a
|
|
249
|
+
// caller launching several servers under different keys has a real use for
|
|
250
|
+
// it, but it should not be the quiet default anybody reaches for. Warned
|
|
251
|
+
// rather than refused, and the value itself is never echoed.
|
|
252
|
+
if (fromFlag) {
|
|
253
|
+
console.error('WARNING: --key puts your API key in this process’s command line, where `ps`, the shell ' +
|
|
254
|
+
'history and any exec audit log can read it. Prefer MANDALA_API_KEY.');
|
|
255
|
+
}
|
|
256
|
+
if (!apiKey) {
|
|
257
|
+
// stderr and a non-zero exit, not a thrown stack. On stdio the client sees
|
|
258
|
+
// a process that died; the person reading the log needs the one sentence
|
|
259
|
+
// that tells them what to set.
|
|
260
|
+
console.error('No API key. Set MANDALA_API_KEY (Settings → API keys at https://app.mandala.computer), ' +
|
|
261
|
+
'or run with --http and let each caller send their own.');
|
|
262
|
+
process.exit(2);
|
|
263
|
+
}
|
|
264
|
+
await runStdio({ ...base, apiKey });
|
|
265
|
+
}
|
|
266
|
+
/**
|
|
267
|
+
* Is this module the program, rather than something a test imported?
|
|
268
|
+
*
|
|
269
|
+
* argv[1] is resolved through symlinks first, and that is the point rather
|
|
270
|
+
* than a nicety: npm installs `bin` as a symlink under node_modules/.bin, Node
|
|
271
|
+
* resolves the ESM entry through it but leaves argv[1] as the symlink path, so
|
|
272
|
+
* the raw comparison never matched. `npx mandala-computer-mcp` — every client
|
|
273
|
+
* spawning the installed binary — exited 0 with no server and no message.
|
|
274
|
+
*/
|
|
275
|
+
export function isEntrypoint(moduleUrl, arg) {
|
|
276
|
+
if (!arg)
|
|
277
|
+
return false;
|
|
278
|
+
try {
|
|
279
|
+
return moduleUrl === pathToFileURL(realpathSync(arg)).href;
|
|
280
|
+
}
|
|
281
|
+
catch {
|
|
282
|
+
// argv[1] naming something unreadable is not this file being run.
|
|
283
|
+
return false;
|
|
284
|
+
}
|
|
285
|
+
}
|
|
286
|
+
if (isEntrypoint(import.meta.url, process.argv[1])) {
|
|
287
|
+
main().catch((err) => {
|
|
288
|
+
console.error(err instanceof Error ? err.message : String(err));
|
|
289
|
+
process.exit(1);
|
|
290
|
+
});
|
|
291
|
+
}
|
|
292
|
+
//# sourceMappingURL=cli.js.map
|
package/dist/cli.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|