@cotal-ai/cli 0.9.1 → 0.10.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/dist/command.d.ts +12 -3
- package/dist/command.d.ts.map +1 -1
- package/dist/command.js +58 -11
- package/dist/command.js.map +1 -1
- package/dist/commands/agents.d.ts +64 -0
- package/dist/commands/agents.d.ts.map +1 -0
- package/dist/commands/agents.js +83 -0
- package/dist/commands/agents.js.map +1 -0
- package/dist/commands/channels.d.ts +2 -1
- package/dist/commands/channels.d.ts.map +1 -1
- package/dist/commands/channels.js +3 -16
- package/dist/commands/channels.js.map +1 -1
- package/dist/commands/completion.d.ts +6 -5
- package/dist/commands/completion.d.ts.map +1 -1
- package/dist/commands/completion.js +37 -14
- package/dist/commands/completion.js.map +1 -1
- package/dist/commands/console.d.ts +2 -1
- package/dist/commands/console.d.ts.map +1 -1
- package/dist/commands/console.js +2 -12
- package/dist/commands/console.js.map +1 -1
- package/dist/commands/down.d.ts +3 -2
- package/dist/commands/down.d.ts.map +1 -1
- package/dist/commands/down.js +4 -12
- package/dist/commands/down.js.map +1 -1
- package/dist/commands/ext.d.ts +18 -0
- package/dist/commands/ext.d.ts.map +1 -0
- package/dist/commands/ext.js +220 -0
- package/dist/commands/ext.js.map +1 -0
- package/dist/commands/feedback.d.ts +2 -2
- package/dist/commands/feedback.d.ts.map +1 -1
- package/dist/commands/feedback.js +4 -283
- package/dist/commands/feedback.js.map +1 -1
- package/dist/commands/history.d.ts +2 -1
- package/dist/commands/history.d.ts.map +1 -1
- package/dist/commands/history.js +3 -13
- package/dist/commands/history.js.map +1 -1
- package/dist/commands/join.d.ts +2 -1
- package/dist/commands/join.d.ts.map +1 -1
- package/dist/commands/join.js +2 -18
- package/dist/commands/join.js.map +1 -1
- package/dist/commands/meshes.d.ts +2 -1
- package/dist/commands/meshes.d.ts.map +1 -1
- package/dist/commands/meshes.js +1 -1
- package/dist/commands/meshes.js.map +1 -1
- package/dist/commands/mint.d.ts +2 -1
- package/dist/commands/mint.d.ts.map +1 -1
- package/dist/commands/mint.js +3 -14
- package/dist/commands/mint.js.map +1 -1
- package/dist/commands/personas.d.ts +2 -2
- package/dist/commands/personas.d.ts.map +1 -1
- package/dist/commands/personas.js +23 -20
- package/dist/commands/personas.js.map +1 -1
- package/dist/commands/send.d.ts +2 -2
- package/dist/commands/send.d.ts.map +1 -1
- package/dist/commands/send.js +21 -24
- package/dist/commands/send.js.map +1 -1
- package/dist/commands/setup.d.ts +30 -8
- package/dist/commands/setup.d.ts.map +1 -1
- package/dist/commands/setup.js +151 -316
- package/dist/commands/setup.js.map +1 -1
- package/dist/commands/spawn.d.ts +117 -2
- package/dist/commands/spawn.d.ts.map +1 -1
- package/dist/commands/spawn.js +137 -48
- package/dist/commands/spawn.js.map +1 -1
- package/dist/commands/topology.d.ts +2 -1
- package/dist/commands/topology.d.ts.map +1 -1
- package/dist/commands/topology.js +4 -8
- package/dist/commands/topology.js.map +1 -1
- package/dist/commands/up.d.ts +9 -4
- package/dist/commands/up.d.ts.map +1 -1
- package/dist/commands/up.js +96 -56
- package/dist/commands/up.js.map +1 -1
- package/dist/commands/use.d.ts +2 -2
- package/dist/commands/use.d.ts.map +1 -1
- package/dist/commands/use.js +2 -2
- package/dist/commands/use.js.map +1 -1
- package/dist/ext-loader.d.ts +13 -0
- package/dist/ext-loader.d.ts.map +1 -0
- package/dist/ext-loader.js +121 -0
- package/dist/ext-loader.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +203 -70
- package/dist/index.js.map +1 -1
- package/dist/lib/attach-client.d.ts +20 -0
- package/dist/lib/attach-client.d.ts.map +1 -0
- package/dist/lib/attach-client.js +218 -0
- package/dist/lib/attach-client.js.map +1 -0
- package/dist/lib/completion.d.ts +8 -0
- package/dist/lib/completion.d.ts.map +1 -0
- package/dist/lib/completion.js +66 -0
- package/dist/lib/completion.js.map +1 -0
- package/dist/lib/connect.d.ts +1 -73
- package/dist/lib/connect.d.ts.map +1 -1
- package/dist/lib/connect.js +4 -90
- package/dist/lib/connect.js.map +1 -1
- package/dist/lib/control.d.ts +34 -0
- package/dist/lib/control.d.ts.map +1 -0
- package/dist/lib/control.js +65 -0
- package/dist/lib/control.js.map +1 -0
- package/dist/lib/delivery-proc.d.ts +2 -0
- package/dist/lib/delivery-proc.d.ts.map +1 -1
- package/dist/lib/manager-proc.d.ts +5 -13
- package/dist/lib/manager-proc.d.ts.map +1 -1
- package/dist/lib/manager-proc.js +3 -42
- package/dist/lib/manager-proc.js.map +1 -1
- package/dist/lib/manifest/live.d.ts.map +1 -1
- package/dist/lib/manifest/live.js +4 -1
- package/dist/lib/manifest/live.js.map +1 -1
- package/dist/lib/status.d.ts +8 -4
- package/dist/lib/status.d.ts.map +1 -1
- package/dist/lib/status.js +21 -5
- package/dist/lib/status.js.map +1 -1
- package/dist/ui.d.ts +1 -12
- package/dist/ui.d.ts.map +1 -1
- package/dist/ui.js +4 -12
- package/dist/ui.js.map +1 -1
- package/package.json +8 -6
- package/dist/commands/demo.d.ts +0 -2
- package/dist/commands/demo.d.ts.map +0 -1
- package/dist/commands/demo.js +0 -163
- package/dist/commands/demo.js.map +0 -1
- package/dist/commands/web.d.ts +0 -32
- package/dist/commands/web.d.ts.map +0 -1
- package/dist/commands/web.js +0 -307
- package/dist/commands/web.js.map +0 -1
- package/dist/web/app.js +0 -823
- package/dist/web/graph.html +0 -207
- package/dist/web/graph.js +0 -528
- package/dist/web/index.html +0 -350
package/dist/command.d.ts
CHANGED
|
@@ -1,5 +1,14 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import { type Registry } from "@cotal-ai/core";
|
|
2
|
+
/** Options a composition root passes to {@link runCli}. */
|
|
3
|
+
export interface RunCliOptions {
|
|
4
|
+
/** Load operator-installed extensions (`cotal ext add …`) into the surface: help/completion see
|
|
5
|
+
* manifest-cached stubs (no import), dispatch imports the owning package lazily with LIVE
|
|
6
|
+
* specs. OFF by default — library composition roots keep the explicit-import model; only the
|
|
7
|
+
* published binary opts in. */
|
|
8
|
+
extensions?: boolean;
|
|
9
|
+
}
|
|
2
10
|
/** Dispatch `argv` against the commands self-registered in a {@link Registry}.
|
|
3
|
-
* The single entry point a composition root calls — no hardcoded command list.
|
|
4
|
-
|
|
11
|
+
* The single entry point a composition root calls — no hardcoded command list.
|
|
12
|
+
* Parsing happens HERE, from the command's declared specs; `run` gets parsed args. */
|
|
13
|
+
export declare function runCli(registry: Registry, argv: string[], opts?: RunCliOptions): Promise<void>;
|
|
5
14
|
//# sourceMappingURL=command.d.ts.map
|
package/dist/command.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../src/command.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../src/command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgD,KAAK,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAuD7F,2DAA2D;AAC3D,MAAM,WAAW,aAAa;IAC5B;;;oCAGgC;IAChC,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;uFAEuF;AACvF,wBAAsB,MAAM,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,GAAE,aAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAqDxG"}
|
package/dist/command.js
CHANGED
|
@@ -1,4 +1,11 @@
|
|
|
1
|
+
import { commandUsage, parseCommandArgs } from "@cotal-ai/core";
|
|
1
2
|
import { c } from "./ui.js";
|
|
3
|
+
import { isExtensionStub, materializeExtensionCommand, overlayExtensions, setCommandSurface } from "./ext-loader.js";
|
|
4
|
+
/** Display order for the help groups — an explicit ranking, NOT registration order: modules
|
|
5
|
+
* self-register on import and the dev runner (tsx) doesn't guarantee entry-import evaluation
|
|
6
|
+
* order, so the daemon surface could otherwise print above Setup. Groups not listed here
|
|
7
|
+
* (e.g. an extension's custom group) follow, in first-registered order. */
|
|
8
|
+
const GROUP_ORDER = ["Setup", "Mesh", "Messaging", "Agents", "Observe", "Extensions", "Manager"];
|
|
2
9
|
function help(commands) {
|
|
3
10
|
// `__`-prefixed commands are internal (e.g. `__complete`, the completion dispatcher); `hidden`
|
|
4
11
|
// ones are runnable dev/test aids (e.g. `demo`) kept off the surface — hide both.
|
|
@@ -8,20 +15,35 @@ function help(commands) {
|
|
|
8
15
|
const g = cmd.group ?? "Commands";
|
|
9
16
|
(groups.get(g) ?? groups.set(g, []).get(g)).push(cmd);
|
|
10
17
|
}
|
|
18
|
+
const rank = (g) => {
|
|
19
|
+
const i = GROUP_ORDER.indexOf(g);
|
|
20
|
+
return i === -1 ? GROUP_ORDER.length : i;
|
|
21
|
+
};
|
|
22
|
+
const ordered = [...groups.entries()].sort(([a], [b]) => rank(a) - rank(b));
|
|
11
23
|
const pad = Math.max(...visible.map((c) => c.name.length));
|
|
12
24
|
let out = `${c.bold("cotal")} — lateral agent coordination over NATS\n`;
|
|
13
|
-
for (const [group, cmds] of
|
|
25
|
+
for (const [group, cmds] of ordered) {
|
|
14
26
|
out += `\n${c.bold(group)}\n`;
|
|
15
27
|
for (const cmd of cmds)
|
|
16
28
|
out += ` ${cmd.name.padEnd(pad)} ${c.dim(cmd.summary)}\n`;
|
|
17
29
|
}
|
|
18
30
|
console.log(out);
|
|
19
31
|
}
|
|
20
|
-
/**
|
|
32
|
+
/** Full help for one command, generated from its declared specs: summary, usage line, and a
|
|
33
|
+
* flag table (short, long, metavar, description). */
|
|
21
34
|
function commandHelp(cmd) {
|
|
22
35
|
console.log(`${c.bold(`cotal ${cmd.name}`)} — ${cmd.summary}`);
|
|
23
|
-
|
|
24
|
-
|
|
36
|
+
console.log(c.dim(`usage: ${commandUsage(cmd)}`));
|
|
37
|
+
const flags = cmd.flags ?? [];
|
|
38
|
+
if (!flags.length)
|
|
39
|
+
return;
|
|
40
|
+
const left = flags.map((f) => {
|
|
41
|
+
const metavar = f.type === "string" ? ` ${f.value ?? "<value>"}` : "";
|
|
42
|
+
return `${f.short ? `-${f.short}, ` : " "}--${f.name}${metavar}`;
|
|
43
|
+
});
|
|
44
|
+
const pad = Math.max(...left.map((s) => s.length));
|
|
45
|
+
console.log(c.bold("flags:"));
|
|
46
|
+
flags.forEach((f, i) => console.log(` ${left[i].padEnd(pad)} ${c.dim(f.description ?? "")}`));
|
|
25
47
|
}
|
|
26
48
|
/** node's parseArgs throws these for unknown/malformed flags; treat as a usage error. */
|
|
27
49
|
function isArgError(e) {
|
|
@@ -29,27 +51,52 @@ function isArgError(e) {
|
|
|
29
51
|
return typeof code === "string" && code.startsWith("ERR_PARSE_ARGS");
|
|
30
52
|
}
|
|
31
53
|
/** Dispatch `argv` against the commands self-registered in a {@link Registry}.
|
|
32
|
-
* The single entry point a composition root calls — no hardcoded command list.
|
|
33
|
-
|
|
34
|
-
|
|
54
|
+
* The single entry point a composition root calls — no hardcoded command list.
|
|
55
|
+
* Parsing happens HERE, from the command's declared specs; `run` gets parsed args. */
|
|
56
|
+
export async function runCli(registry, argv, opts = {}) {
|
|
57
|
+
let commands;
|
|
58
|
+
try {
|
|
59
|
+
commands = opts.extensions ? overlayExtensions(registry) : registry.all("command");
|
|
60
|
+
}
|
|
61
|
+
catch (e) {
|
|
62
|
+
// A corrupt extensions manifest must not silently shrink the surface — fatal and loud, but
|
|
63
|
+
// rendered as the CLI's one red line, not an unhandled-rejection stack dump.
|
|
64
|
+
console.error(c.red(`✗ ${e.message}`));
|
|
65
|
+
process.exit(1);
|
|
66
|
+
}
|
|
67
|
+
setCommandSurface(commands); // the completion dispatcher reads the SAME surface help renders
|
|
35
68
|
const [name, ...rest] = argv;
|
|
36
69
|
if (name === undefined || name === "help" || name === "-h" || name === "--help") {
|
|
37
70
|
help(commands);
|
|
38
71
|
return;
|
|
39
72
|
}
|
|
40
|
-
|
|
73
|
+
let cmd = commands.find((c) => c.name === name);
|
|
41
74
|
if (!cmd) {
|
|
42
75
|
console.error(c.red(`unknown command: ${name}`));
|
|
43
76
|
help(commands);
|
|
44
77
|
process.exit(1);
|
|
45
78
|
}
|
|
46
|
-
// `cotal <cmd> --help` / `-h` → that command's help, never run it.
|
|
47
|
-
|
|
79
|
+
// `cotal <cmd> --help` / `-h` → that command's help, never run it. This intercept also covers
|
|
80
|
+
// rawArgs commands and extension STUBS (cached specs are exactly the display surface) — only
|
|
81
|
+
// `__`-internal ones are exempt, because __complete's argv is ANOTHER command's half-typed
|
|
82
|
+
// line, where `--help` is a word being completed, not a request.
|
|
83
|
+
if (!cmd.name.startsWith("__") && (rest.includes("--help") || rest.includes("-h"))) {
|
|
48
84
|
commandHelp(cmd);
|
|
49
85
|
return;
|
|
50
86
|
}
|
|
87
|
+
// An extension stub materializes before parsing: verify the version pin, import the package
|
|
88
|
+
// (self-registers), and parse with the LIVE specs — the cache never drives run's input.
|
|
89
|
+
if (isExtensionStub(cmd)) {
|
|
90
|
+
try {
|
|
91
|
+
cmd = await materializeExtensionCommand(cmd);
|
|
92
|
+
}
|
|
93
|
+
catch (e) {
|
|
94
|
+
console.error(c.red(`✗ ${e.message}`));
|
|
95
|
+
process.exit(1);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
51
98
|
try {
|
|
52
|
-
await cmd.run(rest);
|
|
99
|
+
await cmd.run(parseCommandArgs(cmd, rest));
|
|
53
100
|
}
|
|
54
101
|
catch (e) {
|
|
55
102
|
// A bad flag/arg prints the command's help, not a stack trace. Trim node's verbose
|
package/dist/command.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.js","sourceRoot":"","sources":["../src/command.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"command.js","sourceRoot":"","sources":["../src/command.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { type CompletionResult, type ParsedArgs } from "@cotal-ai/core";
|
|
2
|
+
export declare const stopFlags: readonly [{
|
|
3
|
+
readonly name: "space";
|
|
4
|
+
readonly type: "string";
|
|
5
|
+
readonly value: "<s>";
|
|
6
|
+
readonly description: "target space (default: the resolved mesh)";
|
|
7
|
+
}, {
|
|
8
|
+
readonly name: "server";
|
|
9
|
+
readonly type: "string";
|
|
10
|
+
readonly value: "<url>";
|
|
11
|
+
readonly description: "broker URL (overrides the mesh registry entry)";
|
|
12
|
+
}, {
|
|
13
|
+
readonly name: "creds";
|
|
14
|
+
readonly type: "string";
|
|
15
|
+
readonly value: "<path>";
|
|
16
|
+
readonly description: "creds file for an off-registry connection";
|
|
17
|
+
}, {
|
|
18
|
+
readonly name: "name";
|
|
19
|
+
readonly type: "string";
|
|
20
|
+
readonly value: "<n>";
|
|
21
|
+
readonly description: string;
|
|
22
|
+
}];
|
|
23
|
+
export declare const psFlags: readonly [{
|
|
24
|
+
readonly name: "space";
|
|
25
|
+
readonly type: "string";
|
|
26
|
+
readonly value: "<s>";
|
|
27
|
+
readonly description: "target space (default: the resolved mesh)";
|
|
28
|
+
}, {
|
|
29
|
+
readonly name: "server";
|
|
30
|
+
readonly type: "string";
|
|
31
|
+
readonly value: "<url>";
|
|
32
|
+
readonly description: "broker URL (overrides the mesh registry entry)";
|
|
33
|
+
}, {
|
|
34
|
+
readonly name: "creds";
|
|
35
|
+
readonly type: "string";
|
|
36
|
+
readonly value: "<path>";
|
|
37
|
+
readonly description: "creds file for an off-registry connection";
|
|
38
|
+
}];
|
|
39
|
+
export declare const attachFlags: readonly [{
|
|
40
|
+
readonly name: "space";
|
|
41
|
+
readonly type: "string";
|
|
42
|
+
readonly value: "<s>";
|
|
43
|
+
readonly description: "target space (default: the resolved mesh)";
|
|
44
|
+
}, {
|
|
45
|
+
readonly name: "server";
|
|
46
|
+
readonly type: "string";
|
|
47
|
+
readonly value: "<url>";
|
|
48
|
+
readonly description: "broker URL (overrides the mesh registry entry)";
|
|
49
|
+
}, {
|
|
50
|
+
readonly name: "creds";
|
|
51
|
+
readonly type: "string";
|
|
52
|
+
readonly value: "<path>";
|
|
53
|
+
readonly description: "creds file for an off-registry connection";
|
|
54
|
+
}, {
|
|
55
|
+
readonly name: "name";
|
|
56
|
+
readonly type: "string";
|
|
57
|
+
readonly value: "<n>";
|
|
58
|
+
readonly description: string;
|
|
59
|
+
}];
|
|
60
|
+
export declare function managedAgentComplete(argv: string[]): CompletionResult;
|
|
61
|
+
export declare function stop(args: ParsedArgs): Promise<void>;
|
|
62
|
+
export declare function ps(args: ParsedArgs): Promise<void>;
|
|
63
|
+
export declare function attach(args: ParsedArgs): Promise<void>;
|
|
64
|
+
//# sourceMappingURL=agents.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agents.d.ts","sourceRoot":"","sources":["../../src/commands/agents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,gBAAgB,EAAkC,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAiBvH,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;EAAwG,CAAC;AAC/H,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;EAA0D,CAAC;AAC/E,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;EAA6G,CAAC;AAEtI,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,gBAAgB,CAQrE;AAED,wBAAsB,IAAI,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAc1D;AAED,wBAAsB,EAAE,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAkCxD;AAED,wBAAsB,MAAM,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAe5D"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { CONTROL_ADMIN } from "@cotal-ai/core";
|
|
2
|
+
import { loadMeshes, targetFlags } from "@cotal-ai/workspace";
|
|
3
|
+
import { c } from "../ui.js";
|
|
4
|
+
import { askManager, failIfNotOk, resolveControlTarget } from "../lib/control.js";
|
|
5
|
+
import { attachClient, detachKey } from "../lib/attach-client.js";
|
|
6
|
+
import { completingFlagValue } from "../lib/completion.js";
|
|
7
|
+
/**
|
|
8
|
+
* The manager's operator clients — thin control-plane request/reply commands (`stop`/`ps`/
|
|
9
|
+
* `attach`) that drive a RUNNING manager. Moved from `@cotal-ai/manager` in stage 2a of the CLI
|
|
10
|
+
* rework: they are operator client commands, not daemon code; the manager keeps `supervise`.
|
|
11
|
+
* Detached LAUNCH is `cotal spawn --detach` (spawn.ts) — one launch grammar for both modes.
|
|
12
|
+
*/
|
|
13
|
+
const nameFlag = (what) => ({ name: "name", type: "string", value: "<n>", description: what });
|
|
14
|
+
export const stopFlags = [...targetFlags, nameFlag("managed agent to stop (required)")];
|
|
15
|
+
export const psFlags = [...targetFlags];
|
|
16
|
+
export const attachFlags = [...targetFlags, nameFlag("managed agent to attach to (required)")];
|
|
17
|
+
export function managedAgentComplete(argv) {
|
|
18
|
+
const flag = completingFlagValue(argv, attachFlags);
|
|
19
|
+
if (flag?.name === "space")
|
|
20
|
+
return { items: loadMeshes().map((m) => ({ value: m.space })), directive: "nofiles" };
|
|
21
|
+
if (flag?.name === "creds")
|
|
22
|
+
return { items: [], directive: "default" };
|
|
23
|
+
if (flag?.name === "name")
|
|
24
|
+
return { items: [], directive: "nofiles" };
|
|
25
|
+
if (argv.length <= 1)
|
|
26
|
+
return { items: attachFlags.map((f) => ({ value: `--${f.name}`, description: f.description })), directive: "nofiles" };
|
|
27
|
+
return { items: [], directive: "nofiles" };
|
|
28
|
+
}
|
|
29
|
+
export async function stop(args) {
|
|
30
|
+
const v = args.values;
|
|
31
|
+
if (!v.name) {
|
|
32
|
+
console.error(c.red("--name is required"));
|
|
33
|
+
process.exit(1);
|
|
34
|
+
}
|
|
35
|
+
// Operator stop is a cross-agent (admin) op — the CLI operator isn't the agent's spawner, so the
|
|
36
|
+
// privileged subject would reject it; the admin tier reaches any agent. The scoped
|
|
37
|
+
// `control-caller-admin` cred holds ONLY `ctl.<admin>.<id>` (that IS the cross-agent authority —
|
|
38
|
+
// the manager doesn't re-check the caller), so it reaches this op and nothing else.
|
|
39
|
+
const t = await resolveControlTarget(v, "control-caller-admin");
|
|
40
|
+
const reply = await askManager(t.space, t.server, "stop", { name: v.name }, t.creds, CONTROL_ADMIN);
|
|
41
|
+
failIfNotOk(reply);
|
|
42
|
+
console.log(c.dim(`✓ stopped ${v.name}`));
|
|
43
|
+
}
|
|
44
|
+
export async function ps(args) {
|
|
45
|
+
const v = args.values;
|
|
46
|
+
const t = await resolveControlTarget(v, "control-caller-privileged");
|
|
47
|
+
const reply = await askManager(t.space, t.server, "ps", undefined, t.creds);
|
|
48
|
+
failIfNotOk(reply);
|
|
49
|
+
const rows = reply.data ?? [];
|
|
50
|
+
if (!rows.length) {
|
|
51
|
+
console.log(c.dim("(no managed agents)"));
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
54
|
+
for (const r of rows) {
|
|
55
|
+
const status = r.mesh === "absent"
|
|
56
|
+
? c.yellow("starting…")
|
|
57
|
+
: r.mesh === "offline"
|
|
58
|
+
? c.dim("offline")
|
|
59
|
+
: r.mesh === "working"
|
|
60
|
+
? c.green("working")
|
|
61
|
+
: r.mesh === "waiting"
|
|
62
|
+
? c.yellow("waiting")
|
|
63
|
+
: c.cyan(r.mesh);
|
|
64
|
+
console.log(`${c.bold(r.name)}${r.role ? c.dim("/" + r.role) : ""} ${c.dim(r.agent + " · " + r.mode)} ${status}`);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
export async function attach(args) {
|
|
68
|
+
const v = args.values;
|
|
69
|
+
if (!v.name) {
|
|
70
|
+
console.error(c.red("--name is required"));
|
|
71
|
+
process.exit(1);
|
|
72
|
+
}
|
|
73
|
+
// Operator attach is a cross-agent (admin) op — same reasoning as stop (the operator isn't the
|
|
74
|
+
// spawner; admin reaches any agent). Scoped `control-caller-admin`: ctl.<admin> only.
|
|
75
|
+
const t = await resolveControlTarget(v, "control-caller-admin");
|
|
76
|
+
const reply = await askManager(t.space, t.server, "attach", { name: v.name }, t.creds, CONTROL_ADMIN);
|
|
77
|
+
failIfNotOk(reply);
|
|
78
|
+
const { ws } = reply.data;
|
|
79
|
+
console.error(c.dim(`attached to ${v.name} — ${detachKey().label} to detach`));
|
|
80
|
+
await attachClient(ws);
|
|
81
|
+
console.error(c.dim(`\ndetached from ${v.name}`));
|
|
82
|
+
}
|
|
83
|
+
//# sourceMappingURL=agents.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agents.js","sourceRoot":"","sources":["../../src/commands/agents.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type ParsedArgs } from "@cotal-ai/core";
|
|
1
2
|
/**
|
|
2
3
|
* `cotal channels` — inspect and mutate the per-space channel registry (replay policy,
|
|
3
4
|
* description, instructions) while the mesh is up. Writes are privileged: on an auth mesh the
|
|
@@ -9,5 +10,5 @@
|
|
|
9
10
|
* cotal channels set <name> [--replay|--no-replay] [--desc <s>] [--instructions <s>]
|
|
10
11
|
* cotal channels default --replay|--no-replay
|
|
11
12
|
*/
|
|
12
|
-
export declare function channels(
|
|
13
|
+
export declare function channels(args: ParsedArgs): Promise<void>;
|
|
13
14
|
//# sourceMappingURL=channels.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"channels.d.ts","sourceRoot":"","sources":["../../src/commands/channels.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"channels.d.ts","sourceRoot":"","sources":["../../src/commands/channels.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,UAAU,EAChB,MAAM,gBAAgB,CAAC;AAIxB;;;;;;;;;;GAUG;AACH,wBAAsB,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAoD9D"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { parseArgs } from "node:util";
|
|
2
1
|
import { seedChannelRegistry, readChannelRegistry, effectiveReplay, } from "@cotal-ai/core";
|
|
3
2
|
import { connectOrExit } from "../lib/connect.js";
|
|
4
3
|
import { c } from "../ui.js";
|
|
@@ -13,21 +12,9 @@ import { c } from "../ui.js";
|
|
|
13
12
|
* cotal channels set <name> [--replay|--no-replay] [--desc <s>] [--instructions <s>]
|
|
14
13
|
* cotal channels default --replay|--no-replay
|
|
15
14
|
*/
|
|
16
|
-
export async function channels(
|
|
17
|
-
const
|
|
18
|
-
|
|
19
|
-
allowPositionals: true,
|
|
20
|
-
options: {
|
|
21
|
-
server: { type: "string" },
|
|
22
|
-
space: { type: "string" },
|
|
23
|
-
creds: { type: "string" },
|
|
24
|
-
replay: { type: "boolean" },
|
|
25
|
-
"no-replay": { type: "boolean" },
|
|
26
|
-
window: { type: "string" }, // backfill window, e.g. 24h / 30m / 7d
|
|
27
|
-
desc: { type: "string" },
|
|
28
|
-
instructions: { type: "string" },
|
|
29
|
-
},
|
|
30
|
-
});
|
|
15
|
+
export async function channels(args) {
|
|
16
|
+
const positionals = args.positionals;
|
|
17
|
+
const values = args.values;
|
|
31
18
|
// Validate the subcommand BEFORE connecting, so a typo (or a bare `cotal channels`) prints usage,
|
|
32
19
|
// not "no mesh running" — the same validate-first order as `history`.
|
|
33
20
|
const sub = positionals[0];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"channels.js","sourceRoot":"","sources":["../../src/commands/channels.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"channels.js","sourceRoot":"","sources":["../../src/commands/channels.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { type CompletionResult } from "@cotal-ai/core";
|
|
2
|
-
/** The hidden dispatcher the shell stubs call
|
|
3
|
-
*
|
|
4
|
-
|
|
5
|
-
export declare function
|
|
1
|
+
import { type CompletionResult, type ParsedArgs } from "@cotal-ai/core";
|
|
2
|
+
/** The hidden dispatcher the shell stubs call (`rawArgs`: its argv is another command's
|
|
3
|
+
* half-typed line, never parsed). The words after `cotal`, up to and including the (possibly
|
|
4
|
+
* empty) word being completed, arrive as `args.positionals` verbatim. */
|
|
5
|
+
export declare function complete(args: ParsedArgs): Promise<void>;
|
|
6
|
+
export declare function completion(args: ParsedArgs): Promise<void>;
|
|
6
7
|
/** Argument completion for `cotal completion` itself: the supported shells, plus `install`. */
|
|
7
8
|
export declare function completionComplete(argv: string[]): CompletionResult;
|
|
8
9
|
//# sourceMappingURL=completion.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"completion.d.ts","sourceRoot":"","sources":["../../src/commands/completion.ts"],"names":[],"mappings":"AAGA,OAAO,
|
|
1
|
+
{"version":3,"file":"completion.d.ts","sourceRoot":"","sources":["../../src/commands/completion.ts"],"names":[],"mappings":"AAGA,OAAO,EAGL,KAAK,gBAAgB,EACrB,KAAK,UAAU,EAChB,MAAM,gBAAgB,CAAC;AAgCxB;;0EAE0E;AAC1E,wBAAsB,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAmB9D;AA+FD,wBAAsB,UAAU,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAchE;AAqDD,+FAA+F;AAC/F,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,gBAAgB,CASnE"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { appendFileSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
|
|
2
2
|
import { homedir } from "node:os";
|
|
3
3
|
import { basename, join } from "node:path";
|
|
4
|
-
import {
|
|
4
|
+
import {} from "@cotal-ai/core";
|
|
5
|
+
import { commandSurface } from "../ext-loader.js";
|
|
5
6
|
import { c } from "../ui.js";
|
|
6
7
|
/**
|
|
7
8
|
* Shell completion, the standard two-layer way (Cobra/Click/clap): a thin per-shell stub —
|
|
@@ -29,26 +30,47 @@ function emit(items, directive) {
|
|
|
29
30
|
lines.push(`:${directive}`);
|
|
30
31
|
process.stdout.write(`${lines.join("\n")}\n`);
|
|
31
32
|
}
|
|
32
|
-
/** The hidden dispatcher the shell stubs call
|
|
33
|
-
*
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
33
|
+
/** The hidden dispatcher the shell stubs call (`rawArgs`: its argv is another command's
|
|
34
|
+
* half-typed line, never parsed). The words after `cotal`, up to and including the (possibly
|
|
35
|
+
* empty) word being completed, arrive as `args.positionals` verbatim. */
|
|
36
|
+
export async function complete(args) {
|
|
37
|
+
const argv = args.positionals;
|
|
38
|
+
// Mirror help()'s visibility: the SAME surface runCli resolved (registered commands plus
|
|
39
|
+
// extension stubs when the root opted in), minus `__`-internal and `hidden` ones. Extension
|
|
40
|
+
// candidates come from the manifest CACHE — a <TAB> never imports an extension.
|
|
41
|
+
const commands = commandSurface().filter((cmd) => !cmd.name.startsWith("__") && !cmd.hidden);
|
|
42
|
+
// No command word yet: offer the command names. If the lone word is an exact command, many
|
|
43
|
+
// shells omitted the trailing empty cursor word; complete inside that command instead.
|
|
44
|
+
if (argv.length === 0) {
|
|
42
45
|
emit(commands.map((cmd) => ({ value: cmd.name, description: cmd.summary })), "nofiles");
|
|
43
46
|
return;
|
|
44
47
|
}
|
|
45
48
|
const cmd = commands.find((cmd) => cmd.name === argv[0]);
|
|
49
|
+
if (argv.length === 1 && cmd)
|
|
50
|
+
return emitCommandCompletion(cmd, [""]);
|
|
51
|
+
if (argv.length === 1) {
|
|
52
|
+
emit(commands.map((cmd) => ({ value: cmd.name, description: cmd.summary })), "nofiles");
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
return emitCommandCompletion(cmd, argv.slice(1));
|
|
56
|
+
}
|
|
57
|
+
async function emitCommandCompletion(cmd, argv) {
|
|
58
|
+
// A word starting with `-` completes against the command's DECLARED flags — generated from
|
|
59
|
+
// the specs, so it can never drift from what parsing accepts. Value/positional completion
|
|
60
|
+
// stays with the command's own `complete` hook below.
|
|
61
|
+
const word = argv[argv.length - 1];
|
|
62
|
+
if (cmd && word.startsWith("-") && !word.includes("=")) {
|
|
63
|
+
const items = (cmd.flags ?? []).map((f) => ({ value: `--${f.name}`, description: f.description }));
|
|
64
|
+
emit(items, "nofiles");
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
46
67
|
if (!cmd?.complete) {
|
|
47
|
-
|
|
68
|
+
const items = (cmd?.flags ?? []).map((f) => ({ value: `--${f.name}`, description: f.description }));
|
|
69
|
+
emit(items, items.length ? "nofiles" : "default");
|
|
48
70
|
return;
|
|
49
71
|
}
|
|
50
72
|
try {
|
|
51
|
-
const res = await cmd.complete(argv
|
|
73
|
+
const res = await cmd.complete(argv);
|
|
52
74
|
emit(res.items, res.directive ?? "nofiles");
|
|
53
75
|
}
|
|
54
76
|
catch (e) {
|
|
@@ -66,7 +88,8 @@ const SCRIPTS = {
|
|
|
66
88
|
fish: lines("# cotal fish completion — forwards each <TAB> to `cotal __complete` (dynamic).", "function __cotal_complete", " set -l tokens (commandline -opc) (commandline -ct)", " cotal __complete $tokens[2..-1] 2>/dev/null | string match -rv '^:'", "end", "complete -c cotal -f -a '(__cotal_complete)'"),
|
|
67
89
|
powershell: lines("# cotal PowerShell completion — forwards each <TAB> to `cotal __complete` (dynamic).", "Register-ArgumentCompleter -Native -CommandName cotal -ScriptBlock {", " param($wordToComplete, $commandAst, $cursorPosition)", ' $elements = @($commandAst.CommandElements | Select-Object -Skip 1 | ForEach-Object { "$_" })', " if (-not $wordToComplete) { $elements += '' }", " $out = & cotal __complete @elements 2>$null", " foreach ($line in $out) {", " if ([string]::IsNullOrEmpty($line) -or $line.StartsWith(':')) { continue }", ' $parts = $line -split "`t", 2', " $val = $parts[0]", ' if ($val -notlike "$wordToComplete*") { continue }', " $desc = if ($parts.Length -gt 1) { $parts[1] } else { $val }", " [System.Management.Automation.CompletionResult]::new($val, $val, 'ParameterValue', $desc)", " }", "}"),
|
|
68
90
|
};
|
|
69
|
-
export async function completion(
|
|
91
|
+
export async function completion(args) {
|
|
92
|
+
const argv = args.positionals;
|
|
70
93
|
if (argv[0] === "install")
|
|
71
94
|
return install(argv[1]);
|
|
72
95
|
const script = argv[0] ? SCRIPTS[argv[0]] : undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"completion.js","sourceRoot":"","sources":["../../src/commands/completion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACjF,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,
|
|
1
|
+
{"version":3,"file":"completion.js","sourceRoot":"","sources":["../../src/commands/completion.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
+
import { type ParsedArgs } from "@cotal-ai/core";
|
|
1
2
|
/**
|
|
2
3
|
* `cotal console` — the live protocol view. A real terminal gets the lazygit-style Ink TUI; a pipe
|
|
3
4
|
* or `--plain` gets the passive line stream. With no `--space` on an open mesh it opens an admin
|
|
4
5
|
* overview of every space first (pick one to drill in, `b` to come back); `--space X` goes straight
|
|
5
6
|
* in. Renders over a read-only observer whose lifecycle `useMesh` owns. See docs/protocol-view.md.
|
|
6
7
|
*/
|
|
7
|
-
export declare function console_(
|
|
8
|
+
export declare function console_(args: ParsedArgs): Promise<void>;
|
|
8
9
|
//# sourceMappingURL=console.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"console.d.ts","sourceRoot":"","sources":["../../src/commands/console.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"console.d.ts","sourceRoot":"","sources":["../../src/commands/console.ts"],"names":[],"mappings":"AAIA,OAAO,EAAgB,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAM/D;;;;;GAKG;AACH,wBAAsB,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAiE9D"}
|
package/dist/commands/console.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { parseArgs } from "node:util";
|
|
2
1
|
import { writeSync } from "node:fs";
|
|
3
2
|
import { userInfo } from "node:os";
|
|
4
3
|
import { createElement } from "react";
|
|
@@ -14,17 +13,8 @@ import { Root, makeObserver } from "../console/root.js";
|
|
|
14
13
|
* overview of every space first (pick one to drill in, `b` to come back); `--space X` goes straight
|
|
15
14
|
* in. Renders over a read-only observer whose lifecycle `useMesh` owns. See docs/protocol-view.md.
|
|
16
15
|
*/
|
|
17
|
-
export async function console_(
|
|
18
|
-
const
|
|
19
|
-
args: argv,
|
|
20
|
-
allowPositionals: true,
|
|
21
|
-
options: {
|
|
22
|
-
space: { type: "string" },
|
|
23
|
-
server: { type: "string" },
|
|
24
|
-
plain: { type: "boolean" },
|
|
25
|
-
creds: { type: "string" },
|
|
26
|
-
},
|
|
27
|
-
});
|
|
16
|
+
export async function console_(args) {
|
|
17
|
+
const values = args.values;
|
|
28
18
|
// Resolve WHICH running mesh (server + trust material) from any directory — same as `spawn`/`web`.
|
|
29
19
|
// Auth mode self-mints an admin god-view cred (the console shows DMs/anycast, which the narrower
|
|
30
20
|
// `observer` profile denies → NATS Authorization Violation); an authed server hosts exactly one
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"console.js","sourceRoot":"","sources":["../../src/commands/console.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"console.js","sourceRoot":"","sources":["../../src/commands/console.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/down.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
import { type ParsedArgs } from "@cotal-ai/core";
|
|
2
|
+
/** Stop the background processes started by `cotal up --detach`: the manager, the
|
|
2
3
|
* delivery daemon, the web dashboard, and the mesh. With `-f <cotal.yaml>` (or `--run <id>`) it does
|
|
3
4
|
* an ownership-scoped teardown of a `spawn -f` deploy instead — removing ONLY what that run created
|
|
4
5
|
* (its agents + the channels it added), from the ledger, never the whole shared mesh. */
|
|
5
|
-
export declare function down(
|
|
6
|
+
export declare function down(args: ParsedArgs): Promise<void>;
|
|
6
7
|
//# sourceMappingURL=down.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"down.d.ts","sourceRoot":"","sources":["../../src/commands/down.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"down.d.ts","sourceRoot":"","sources":["../../src/commands/down.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAOjD;;;0FAG0F;AAC1F,wBAAsB,IAAI,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAiC1D"}
|