@cello-protocol/cli 0.0.51 → 0.0.52
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/arg-parse.d.ts +6 -7
- package/dist/arg-parse.d.ts.map +1 -1
- package/dist/arg-parse.js +8 -9
- package/dist/arg-parse.js.map +1 -1
- package/dist/bin/cello.d.ts +4 -4
- package/dist/bin/cello.js +6 -6
- package/dist/bin/cello.js.map +1 -1
- package/dist/cli-args.d.ts +11 -12
- package/dist/cli-args.d.ts.map +1 -1
- package/dist/cli-args.js +11 -12
- package/dist/cli-args.js.map +1 -1
- package/dist/commands.d.ts +7 -46
- package/dist/commands.d.ts.map +1 -1
- package/dist/commands.js +94 -171
- package/dist/commands.js.map +1 -1
- package/dist/json-out.d.ts.map +1 -1
- package/dist/json-out.js +3 -4
- package/dist/json-out.js.map +1 -1
- package/dist/parity-commands.d.ts +32 -16
- package/dist/parity-commands.d.ts.map +1 -1
- package/dist/parity-commands.js +103 -35
- package/dist/parity-commands.js.map +1 -1
- package/dist/registry.d.ts +8 -9
- package/dist/registry.d.ts.map +1 -1
- package/dist/registry.js +89 -48
- package/dist/registry.js.map +1 -1
- package/package.json +3 -3
package/dist/commands.js
CHANGED
|
@@ -1,38 +1,41 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* CLI command implementations for the `cello` binary.
|
|
3
|
-
*
|
|
4
|
-
* Pseudocode:
|
|
5
|
-
* 1. login(celloDir, daemonBin):
|
|
6
|
-
* - Call connectOrStart(celloDir) to either connect to existing or spawn new daemon
|
|
7
|
-
* - Print status (already running / started)
|
|
8
|
-
* - Close IPC connection and exit 0
|
|
9
|
-
*
|
|
10
|
-
* 2. logout(celloDir):
|
|
11
|
-
* - Read lock file to find socket path
|
|
12
|
-
* - Connect to daemon
|
|
13
|
-
* - Send 'shutdown' method
|
|
14
|
-
* - Wait for acknowledgement
|
|
15
|
-
* - Exit 0
|
|
16
|
-
*
|
|
17
|
-
* 3. status(celloDir):
|
|
18
|
-
* - Read lock file to find socket path
|
|
19
|
-
* - Connect to daemon
|
|
20
|
-
* - Send 'status' method
|
|
21
|
-
* - Print response as structured JSON
|
|
22
|
-
* - Exit 0
|
|
23
3
|
*/
|
|
24
4
|
import { join } from "node:path";
|
|
25
5
|
import { connectOrStart, connectToDaemon, readLock, removeLock,
|
|
26
|
-
// isProcessAlive is deliberately NOT imported
|
|
27
|
-
//
|
|
28
|
-
//
|
|
6
|
+
// isProcessAlive is deliberately NOT imported. "Is that pid alive?" is the wrong question in both
|
|
7
|
+
// directions — a pid can be dead, or reused by an unrelated process. The kernel's lock is the only
|
|
8
|
+
// thing that knows whether a daemon exists.
|
|
29
9
|
probeSingletonLock, SINGLETON_LOCK_FILENAME, } from "@cello-protocol/daemon";
|
|
10
|
+
/**
|
|
11
|
+
* Open an IPC connection, run `fn`, and ALWAYS close it.
|
|
12
|
+
*
|
|
13
|
+
* The close belongs in a `finally`, never after the send. The daemon enforces IPC_CONNECTION_LIMIT,
|
|
14
|
+
* so a connection is a BOUNDED resource: a `client.close()` written after `client.send()` inside a
|
|
15
|
+
* try is SKIPPED on any throw, and each failed command leaks a socket the daemon never reclaims.
|
|
16
|
+
* Leak enough and it refuses new connections — a failure whose symptom looks nothing like its cause.
|
|
17
|
+
*
|
|
18
|
+
* Every single-call command goes through this. The three that cannot are `login` (the connection is
|
|
19
|
+
* created by connectOrStart and handed to us), `logout` (it must outlive the send to poll for death),
|
|
20
|
+
* and `daemonGone` (it races the connect against a timeout). Each closes in a `finally` or reaps the
|
|
21
|
+
* abandoned promise explicitly — see them. Any NEW command that reaches for connectToDaemon directly
|
|
22
|
+
* is reintroducing the leak.
|
|
23
|
+
*/
|
|
24
|
+
async function withIpc(socketPath, fn) {
|
|
25
|
+
const client = await connectToDaemon(socketPath);
|
|
26
|
+
try {
|
|
27
|
+
return await fn(client);
|
|
28
|
+
}
|
|
29
|
+
finally {
|
|
30
|
+
client.close();
|
|
31
|
+
}
|
|
32
|
+
}
|
|
30
33
|
/**
|
|
31
34
|
* M8C-LOGINSTART-1 CORE: bring every loaded agent online. Called by `cello login` after the daemon
|
|
32
|
-
* is up. login ALWAYS completes — a per-agent start failure is COLLECTED, never thrown
|
|
33
|
-
*
|
|
34
|
-
*
|
|
35
|
-
*
|
|
35
|
+
* is up. login ALWAYS completes — a per-agent start failure is COLLECTED, never thrown, so one bad
|
|
36
|
+
* agent can't abort login. `cello_start_agent` is idempotent, so re-login is safe. The per-agent
|
|
37
|
+
* `autoStart: false` opt-out is PARKED until the M9 config store lands (D14).
|
|
38
|
+
* Lives here rather than inline in login() so it is unit-testable against an in-process daemon.
|
|
36
39
|
*/
|
|
37
40
|
export async function autoStartAllAgents(client) {
|
|
38
41
|
const started = [];
|
|
@@ -78,7 +81,7 @@ export async function login(celloDir, daemonBin, logger) {
|
|
|
78
81
|
}
|
|
79
82
|
/**
|
|
80
83
|
* M8C-LOGINSTART-1: compose the operator-facing auto-start summary — every failed agent enumerated
|
|
81
|
-
* by name + reason
|
|
84
|
+
* by name + reason. Pure + exported so the enumeration string is directly testable.
|
|
82
85
|
*/
|
|
83
86
|
export function formatLoginSummary(result) {
|
|
84
87
|
const parts = [];
|
|
@@ -106,21 +109,33 @@ const LOGOUT_WAIT_POLL_MS = 50;
|
|
|
106
109
|
* 2. no process holds the singleton lock.
|
|
107
110
|
*
|
|
108
111
|
* (1) alone is not enough: a daemon wedged mid-shutdown may have closed its IPC server while still
|
|
109
|
-
* holding the DB. (2) alone is not enough either, because a daemon
|
|
110
|
-
* singleton lock at all —
|
|
111
|
-
*
|
|
112
|
-
*
|
|
112
|
+
* holding the DB. (2) alone is not enough either, because a pre-singleton-lock daemon holds no
|
|
113
|
+
* singleton lock at all — for those, "free" says nothing about whether it is alive, and only the
|
|
114
|
+
* socket can tell us. Together they are exactly the conditions under which the next daemon can
|
|
115
|
+
* safely start.
|
|
113
116
|
*
|
|
114
|
-
*
|
|
115
|
-
*
|
|
117
|
+
* Neither `isProcessAlive(lock.pid)` nor the lock FILE may be substituted for these two facts: a pid
|
|
118
|
+
* can be reused, and a lock file can be deleted by anyone.
|
|
116
119
|
*/
|
|
117
120
|
async function daemonGone(celloDir, socketPath, logger) {
|
|
121
|
+
// connectToDaemon has no connect timeout of its own — bound the probe so a pathological hang
|
|
122
|
+
// cannot stall the poll loop past its deadline. On the expected path the socket is already gone,
|
|
123
|
+
// so this fails fast (ENOENT/ECONNREFUSED).
|
|
124
|
+
//
|
|
125
|
+
// The race LOSER must still be closed. If the timeout wins, the connect promise is abandoned — but
|
|
126
|
+
// it can still resolve afterwards into a live IpcClient that nobody holds and nobody closes. This
|
|
127
|
+
// runs in a POLL LOOP inside one process, against the daemon's bounded IPC_CONNECTION_LIMIT, so
|
|
128
|
+
// those accumulate. Of every connect in this file it is the only one that can genuinely exhaust the
|
|
129
|
+
// pool — everywhere else the process exits and the OS reclaims the fd. So: keep the promise, and
|
|
130
|
+
// close whatever it eventually yields.
|
|
131
|
+
const connecting = connectToDaemon(socketPath);
|
|
132
|
+
connecting.then((late) => { try {
|
|
133
|
+
late.close();
|
|
134
|
+
}
|
|
135
|
+
catch { /* already closed by the winner below */ } }, () => { });
|
|
118
136
|
try {
|
|
119
|
-
// Review F4: connectToDaemon has no connect timeout of its own — bound the probe so a
|
|
120
|
-
// pathological hang cannot stall the poll loop past its deadline. On the expected path the
|
|
121
|
-
// socket is already gone, so this fails fast (ENOENT/ECONNREFUSED).
|
|
122
137
|
const probe = await Promise.race([
|
|
123
|
-
|
|
138
|
+
connecting,
|
|
124
139
|
new Promise((_, reject) => setTimeout(() => reject(new Error("probe_timeout")), 500)),
|
|
125
140
|
]);
|
|
126
141
|
probe.close();
|
|
@@ -133,29 +148,28 @@ async function daemonGone(celloDir, socketPath, logger) {
|
|
|
133
148
|
}
|
|
134
149
|
}
|
|
135
150
|
export async function logout(celloDir, onProgress,
|
|
136
|
-
//
|
|
137
|
-
//
|
|
151
|
+
// Injectable bounds so the timeout path is testable without a 5 s wait. Production (the bin)
|
|
152
|
+
// passes nothing and gets the named defaults.
|
|
138
153
|
waitOpts) {
|
|
139
154
|
const lockFilePath = join(celloDir, "daemon.lock");
|
|
140
155
|
const noopLogger = { debug() { }, info() { }, warn() { }, error() { } };
|
|
141
156
|
const timeoutMs = waitOpts?.timeoutMs ?? LOGOUT_WAIT_TIMEOUT_MS;
|
|
142
157
|
const pollMs = waitOpts?.pollMs ?? LOGOUT_WAIT_POLL_MS;
|
|
143
|
-
// The socket path is DETERMINISTIC. `daemon.lock`'s copy of it is metadata, and metadata is
|
|
144
|
-
//
|
|
158
|
+
// The socket path is DETERMINISTIC. `daemon.lock`'s copy of it is metadata, and metadata is not
|
|
159
|
+
// to be trusted here.
|
|
145
160
|
const socketPath = join(celloDir, "daemon.sock");
|
|
146
161
|
const lock = await readLock(lockFilePath);
|
|
147
162
|
// DOD-SINGLE-DAEMON-1 (AC4) — the lock file does not get to decide whether a daemon exists.
|
|
148
163
|
//
|
|
149
|
-
//
|
|
150
|
-
// SUCCESS WITHOUT DOING ANYTHING, and the state that triggers it is
|
|
151
|
-
//
|
|
152
|
-
//
|
|
153
|
-
//
|
|
154
|
-
// did the same thing. A kill switch may not lie.
|
|
164
|
+
// Never short-circuit on `if (!lock) return "No daemon running."`. That is a KILL SWITCH REPORTING
|
|
165
|
+
// SUCCESS WITHOUT DOING ANYTHING, and the state that triggers it is real: an exiting orphan unlinks
|
|
166
|
+
// a HEALTHY daemon's lock (so does `rm ~/.cello/daemon.lock`). The operator then runs `cello logout`
|
|
167
|
+
// to stop their agent, is told it was never running, and walks away — while the daemon is still
|
|
168
|
+
// online, still on the directory, still extending the hash chain. A kill switch may not lie.
|
|
155
169
|
//
|
|
156
170
|
// So we ask the daemon itself. If something ANSWERS on the socket, a daemon is running — that is
|
|
157
|
-
// the strongest evidence available, it needs no file, and it holds for a
|
|
158
|
-
//
|
|
171
|
+
// the strongest evidence available, it needs no file, and it holds even for a pre-singleton-lock
|
|
172
|
+
// daemon, which holds no singleton lock at all.
|
|
159
173
|
let client;
|
|
160
174
|
try {
|
|
161
175
|
client = await connectToDaemon(socketPath);
|
|
@@ -189,9 +203,9 @@ waitOpts) {
|
|
|
189
203
|
if (!lock) {
|
|
190
204
|
return { exitCode: 0, output: "No daemon running." };
|
|
191
205
|
}
|
|
192
|
-
// DOD-LOGOUT-WAIT-1
|
|
193
|
-
//
|
|
194
|
-
//
|
|
206
|
+
// DOD-LOGOUT-WAIT-1: only CLAIM the removal when it actually happened — removeLock swallows
|
|
207
|
+
// non-ENOENT errors into a (here discarded) warn, and printing "Removed" for a lock still on
|
|
208
|
+
// disk would be this unit's own lie in miniature.
|
|
195
209
|
const removed = await removeLock(lockFilePath, noopLogger)
|
|
196
210
|
.then(async () => (await readLock(lockFilePath)) === null)
|
|
197
211
|
.catch(() => false);
|
|
@@ -204,20 +218,23 @@ waitOpts) {
|
|
|
204
218
|
}
|
|
205
219
|
try {
|
|
206
220
|
await client.send("shutdown");
|
|
207
|
-
client.close();
|
|
208
221
|
}
|
|
209
222
|
catch (err) {
|
|
210
223
|
const message = err instanceof Error ? err.message : String(err);
|
|
211
224
|
return { exitCode: 1, output: `Failed to stop daemon: ${message}` };
|
|
212
225
|
}
|
|
226
|
+
finally {
|
|
227
|
+
// In the `finally`, not after the send: a throw from `shutdown` must not leak the connection.
|
|
228
|
+
client.close();
|
|
229
|
+
}
|
|
213
230
|
// The request is in — tell the operator NOW, then report "stopped" only when it is true.
|
|
214
231
|
onProgress?.("Shutting down the daemon…");
|
|
215
|
-
// DOD-LOGOUT-WAIT-1:
|
|
216
|
-
// where `cello logout && cello login`
|
|
217
|
-
// pid + connectable socket and
|
|
218
|
-
// out while being told otherwise. Wait until the daemon is genuinely gone; "Daemon stopped."
|
|
219
|
-
//
|
|
220
|
-
//
|
|
232
|
+
// DOD-LOGOUT-WAIT-1: do NOT return the instant the shutdown request is WRITTEN. That leaves a
|
|
233
|
+
// window where `cello logout && cello login` finds the daemon mid-death — connectOrStart sees a
|
|
234
|
+
// live pid + connectable socket and prints "Daemon already running.", leaving the operator logged
|
|
235
|
+
// out while being told otherwise. Wait until the daemon is genuinely gone; "Daemon stopped." for a
|
|
236
|
+
// daemon that is still running is the same class of lie as a success log on a failed send
|
|
237
|
+
// (DOD-SENDRAW-1).
|
|
221
238
|
const deadline = Date.now() + timeoutMs;
|
|
222
239
|
while (Date.now() < deadline) {
|
|
223
240
|
if (await daemonGone(celloDir, socketPath, noopLogger)) {
|
|
@@ -261,8 +278,8 @@ export async function register(celloDir, agent, preAuthToken, phoneStub = "") {
|
|
|
261
278
|
// Checking just the "CELLO-" prefix catches the common typo (pasting the literal words
|
|
262
279
|
// "CELLO_PREAUTH_TOKEN") without hard-coding the exact length/alphabet — the directory stays the
|
|
263
280
|
// authority on the full format, so a future format bump can't strand a valid token behind a
|
|
264
|
-
// client-side "malformed"
|
|
265
|
-
//
|
|
281
|
+
// client-side "malformed". A wrong-length CELLO- token reaches the daemon and is rejected there
|
|
282
|
+
// with a structured reason.
|
|
266
283
|
if (!preAuthToken.startsWith("CELLO-")) {
|
|
267
284
|
return {
|
|
268
285
|
exitCode: 1,
|
|
@@ -275,9 +292,7 @@ export async function register(celloDir, agent, preAuthToken, phoneStub = "") {
|
|
|
275
292
|
return { exitCode: 1, output: "No daemon running. Run 'cello login' first, then retry registration." };
|
|
276
293
|
}
|
|
277
294
|
try {
|
|
278
|
-
const
|
|
279
|
-
const result = (await client.send("cello_register", { agent, preAuthToken, phoneStub }));
|
|
280
|
-
client.close();
|
|
295
|
+
const result = (await withIpc(lock.socketPath, (client) => client.send("cello_register", { agent, preAuthToken, phoneStub })));
|
|
281
296
|
if (!result.ok) {
|
|
282
297
|
return {
|
|
283
298
|
exitCode: 1,
|
|
@@ -287,8 +302,8 @@ export async function register(celloDir, agent, preAuthToken, phoneStub = "") {
|
|
|
287
302
|
return {
|
|
288
303
|
exitCode: 0,
|
|
289
304
|
output: JSON.stringify({ ok: true, agent_id: result.agent_id, primary_pubkey: result.primary_pubkey }, null, 2) +
|
|
290
|
-
// M8C-ONBOARD-NEXTSTEP-1
|
|
291
|
-
//
|
|
305
|
+
// M8C-ONBOARD-NEXTSTEP-1: every command output carries the next step + state legibility.
|
|
306
|
+
// Broken onto multiple lines — a dense one-liner buries the three status cues.
|
|
292
307
|
`\n\nNext: run cello status to confirm '${agent}' is registered.\n` +
|
|
293
308
|
` • it's normal for this to take a minute or two while registration settles.\n` +
|
|
294
309
|
` • ready = the agent shows state 'online' and directory_signaling 'connected'.\n` +
|
|
@@ -316,9 +331,7 @@ export async function createAgent(celloDir, name) {
|
|
|
316
331
|
return { exitCode: 1, output: "No daemon running. Run 'cello login' first, then retry create-agent." };
|
|
317
332
|
}
|
|
318
333
|
try {
|
|
319
|
-
const
|
|
320
|
-
const result = (await client.send("cello_create_agent", { name }));
|
|
321
|
-
client.close();
|
|
334
|
+
const result = (await withIpc(lock.socketPath, (client) => client.send("cello_create_agent", { name })));
|
|
322
335
|
if (!result.ok) {
|
|
323
336
|
return { exitCode: 1, output: JSON.stringify({ ok: false, reason: result.reason, guidance: result.guidance }, null, 2) };
|
|
324
337
|
}
|
|
@@ -334,7 +347,7 @@ export async function createAgent(celloDir, name) {
|
|
|
334
347
|
}
|
|
335
348
|
/**
|
|
336
349
|
* refreshShares(celloDir, name): M8B DOD-REFRESH-1.
|
|
337
|
-
* - Connect to the daemon, send 'cello_refresh_shares' with {
|
|
350
|
+
* - Connect to the daemon, send 'cello_refresh_shares' with { agent }.
|
|
338
351
|
* - The daemon runs a proactive share refresh across the consortium: every shareholder rotates its
|
|
339
352
|
* share to a new epoch, the group public key is unchanged, and old-epoch shares no longer sign.
|
|
340
353
|
*/
|
|
@@ -348,9 +361,7 @@ export async function refreshShares(celloDir, name) {
|
|
|
348
361
|
return { exitCode: 1, output: "No daemon running. Run 'cello login' first, then retry refresh." };
|
|
349
362
|
}
|
|
350
363
|
try {
|
|
351
|
-
const
|
|
352
|
-
const result = (await client.send("cello_refresh_shares", { name }));
|
|
353
|
-
client.close();
|
|
364
|
+
const result = (await withIpc(lock.socketPath, (client) => client.send("cello_refresh_shares", { agent: name })));
|
|
354
365
|
if (!result.ok) {
|
|
355
366
|
return { exitCode: 1, output: JSON.stringify({ ok: false, reason: result.reason, guidance: result.guidance }, null, 2) };
|
|
356
367
|
}
|
|
@@ -366,7 +377,7 @@ export async function refreshShares(celloDir, name) {
|
|
|
366
377
|
}
|
|
367
378
|
/**
|
|
368
379
|
* relayReceipts(celloDir, name): M8B DOD-RELAYSIG-1.
|
|
369
|
-
* - Connect to the daemon, send 'cello_get_relay_receipts' with {
|
|
380
|
+
* - Connect to the daemon, send 'cello_get_relay_receipts' with { agent }.
|
|
370
381
|
* - Returns the agent's durably-stored, signature-verified relay ordering-record receipts.
|
|
371
382
|
*/
|
|
372
383
|
export async function relayReceipts(celloDir, name) {
|
|
@@ -380,9 +391,7 @@ export async function relayReceipts(celloDir, name) {
|
|
|
380
391
|
return { exitCode: 1, output: "No daemon running. Run 'cello login' first, then retry receipts." };
|
|
381
392
|
}
|
|
382
393
|
try {
|
|
383
|
-
const
|
|
384
|
-
const result = (await client.send("cello_get_relay_receipts", { name }));
|
|
385
|
-
client.close();
|
|
394
|
+
const result = (await withIpc(lock.socketPath, (client) => client.send("cello_get_relay_receipts", { agent: name })));
|
|
386
395
|
if (!result.ok) {
|
|
387
396
|
return { exitCode: 1, output: JSON.stringify({ ok: false, reason: result.reason, guidance: result.guidance }, null, 2) };
|
|
388
397
|
}
|
|
@@ -409,9 +418,7 @@ export async function removeAgent(celloDir, name) {
|
|
|
409
418
|
return { exitCode: 1, output: "No daemon running. Run 'cello login' first, then retry remove-agent." };
|
|
410
419
|
}
|
|
411
420
|
try {
|
|
412
|
-
const
|
|
413
|
-
const result = (await client.send("cello_remove_agent", { name }));
|
|
414
|
-
client.close();
|
|
421
|
+
const result = (await withIpc(lock.socketPath, (client) => client.send("cello_remove_agent", { name })));
|
|
415
422
|
if (!result.ok) {
|
|
416
423
|
return { exitCode: 1, output: JSON.stringify({ ok: false, reason: result.reason, guidance: result.guidance }, null, 2) };
|
|
417
424
|
}
|
|
@@ -445,9 +452,7 @@ export async function status(celloDir) {
|
|
|
445
452
|
};
|
|
446
453
|
}
|
|
447
454
|
try {
|
|
448
|
-
const
|
|
449
|
-
const result = (await client.send("status"));
|
|
450
|
-
client.close();
|
|
455
|
+
const result = (await withIpc(lock.socketPath, (client) => client.send("status")));
|
|
451
456
|
return { exitCode: 0, output: JSON.stringify(result, null, 2) };
|
|
452
457
|
}
|
|
453
458
|
catch (err) {
|
|
@@ -472,14 +477,12 @@ export async function sessions(celloDir, opts = {}) {
|
|
|
472
477
|
return { exitCode: 1, output: JSON.stringify({ daemon: "stopped" }, null, 2) };
|
|
473
478
|
}
|
|
474
479
|
try {
|
|
475
|
-
const client = await connectToDaemon(lock.socketPath);
|
|
476
480
|
const params = {};
|
|
477
481
|
if (opts.filter)
|
|
478
482
|
params.filter = opts.filter;
|
|
479
483
|
if (opts.limit !== undefined)
|
|
480
484
|
params.limit = opts.limit;
|
|
481
|
-
const result = await client.send("list_sessions", params);
|
|
482
|
-
client.close();
|
|
485
|
+
const result = (await withIpc(lock.socketPath, (client) => client.send("list_sessions", params)));
|
|
483
486
|
return { exitCode: 0, output: JSON.stringify(result, null, 2) };
|
|
484
487
|
}
|
|
485
488
|
catch (err) {
|
|
@@ -490,86 +493,6 @@ export async function sessions(celloDir, opts = {}) {
|
|
|
490
493
|
};
|
|
491
494
|
}
|
|
492
495
|
}
|
|
493
|
-
/** M8C-CONTACT-1: `cello contact add/remove/list [--agent <name>]`. Shared connect+dispatch. */
|
|
494
|
-
async function contactCommand(celloDir, method, params) {
|
|
495
|
-
const lockFilePath = join(celloDir, "daemon.lock");
|
|
496
|
-
const lock = await readLock(lockFilePath);
|
|
497
|
-
if (!lock) {
|
|
498
|
-
return { exitCode: 1, output: JSON.stringify({ daemon: "stopped" }, null, 2) };
|
|
499
|
-
}
|
|
500
|
-
try {
|
|
501
|
-
const client = await connectToDaemon(lock.socketPath);
|
|
502
|
-
await client.send("ipc.connect", { clientType: "cli" });
|
|
503
|
-
const result = (await client.send(method, params));
|
|
504
|
-
client.close();
|
|
505
|
-
return { exitCode: result.ok ? 0 : 1, output: JSON.stringify(result, null, 2) };
|
|
506
|
-
}
|
|
507
|
-
catch (err) {
|
|
508
|
-
const message = err instanceof Error ? err.message : String(err);
|
|
509
|
-
return { exitCode: 1, output: JSON.stringify({ daemon: "unreachable", error: message }, null, 2) };
|
|
510
|
-
}
|
|
511
|
-
}
|
|
512
|
-
export async function contactAdd(celloDir, pubkey, agent) {
|
|
513
|
-
const params = { pubkey };
|
|
514
|
-
if (agent)
|
|
515
|
-
params.agent = agent;
|
|
516
|
-
return contactCommand(celloDir, "cello_contact_add", params);
|
|
517
|
-
}
|
|
518
|
-
export async function contactRemove(celloDir, pubkey, agent) {
|
|
519
|
-
const params = { pubkey };
|
|
520
|
-
if (agent)
|
|
521
|
-
params.agent = agent;
|
|
522
|
-
return contactCommand(celloDir, "cello_contact_remove", params);
|
|
523
|
-
}
|
|
524
|
-
export async function contactList(celloDir, agent) {
|
|
525
|
-
const params = {};
|
|
526
|
-
if (agent)
|
|
527
|
-
params.agent = agent;
|
|
528
|
-
return contactCommand(celloDir, "cello_contact_list", params);
|
|
529
|
-
}
|
|
530
|
-
/** DOD-CONTACT-VIEW-1: `cello contact tier <pubkey> <tier> [--agent <name>]`. Validation (a known
|
|
531
|
-
* 0..4 constant) lives daemon-side; the CLI surfaces the verdict verbatim. */
|
|
532
|
-
export async function contactSetTier(celloDir, pubkey, tier, agent) {
|
|
533
|
-
const params = { pubkey, tier };
|
|
534
|
-
if (agent)
|
|
535
|
-
params.agent = agent;
|
|
536
|
-
return contactCommand(celloDir, "cello_contact_set_tier", params);
|
|
537
|
-
}
|
|
538
|
-
/** DOD-AWAY-TIER-1: `cello contact away <pubkey> <message> [--agent <name>]` — set a per-contact away
|
|
539
|
-
* message (or clear it with an empty message → null). */
|
|
540
|
-
export async function contactSetAway(celloDir, pubkey, message, agent) {
|
|
541
|
-
const params = { pubkey, message };
|
|
542
|
-
if (agent)
|
|
543
|
-
params.agent = agent;
|
|
544
|
-
return contactCommand(celloDir, "cello_contact_set_away", params);
|
|
545
|
-
}
|
|
546
|
-
/** DOD-SETTINGS-SURFACE-1: `cello settings get [key] [--agent <name>]` — a single key, or all set
|
|
547
|
-
* values when no key. Validation lives daemon-side; the CLI surfaces the verdict verbatim. */
|
|
548
|
-
export async function settingsGet(celloDir, key, agent) {
|
|
549
|
-
const params = {};
|
|
550
|
-
if (key !== undefined)
|
|
551
|
-
params.key = key;
|
|
552
|
-
if (agent)
|
|
553
|
-
params.agent = agent;
|
|
554
|
-
return contactCommand(celloDir, "cello_settings_get", params);
|
|
555
|
-
}
|
|
556
|
-
/** DOD-SETTINGS-SURFACE-1: `cello settings set <key> <value> [--agent <name>]` — the daemon validates
|
|
557
|
-
* the key (known) and, for bound keys, a finite positive integer (rejects Infinity/negative/0). */
|
|
558
|
-
export async function settingsSet(celloDir, key, value, agent) {
|
|
559
|
-
const params = { key, value };
|
|
560
|
-
if (agent)
|
|
561
|
-
params.agent = agent;
|
|
562
|
-
return contactCommand(celloDir, "cello_settings_set", params);
|
|
563
|
-
}
|
|
564
|
-
/** MONIKER-1: `cello moniker set <name>` / `cello moniker clear` — set (string) or clear (null)
|
|
565
|
-
* the agent's outbound-name override via cello_set_moniker. Validation lives daemon-side
|
|
566
|
-
* (shared MONIKER-0 rule); the CLI surfaces the daemon's verdict verbatim. */
|
|
567
|
-
export async function monikerSet(celloDir, moniker, agent) {
|
|
568
|
-
const params = { moniker };
|
|
569
|
-
if (agent)
|
|
570
|
-
params.agent = agent;
|
|
571
|
-
return contactCommand(celloDir, "cello_set_moniker", params);
|
|
572
|
-
}
|
|
573
496
|
/** M8C-TGDOOR-1: `cello telegram set-token <bot_token> <allowlisted_chat_id>` — persists the
|
|
574
497
|
* daemon-wide bot credentials (narrow, dedicated surface; NOT folded into the parked `cello
|
|
575
498
|
* config`, since a bot token has no sensible default and can't wait for M9-CFG-001). */
|
|
@@ -580,10 +503,10 @@ export async function telegramSetToken(celloDir, botToken, chatId) {
|
|
|
580
503
|
return { exitCode: 1, output: JSON.stringify({ daemon: "stopped" }, null, 2) };
|
|
581
504
|
}
|
|
582
505
|
try {
|
|
583
|
-
const
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
506
|
+
const result = (await withIpc(lock.socketPath, async (client) => {
|
|
507
|
+
await client.send("ipc.connect", { clientType: "cli" });
|
|
508
|
+
return client.send("cello_telegram_set_token", { bot_token: botToken, allowlisted_chat_id: chatId });
|
|
509
|
+
}));
|
|
587
510
|
return { exitCode: result.ok ? 0 : 1, output: JSON.stringify(result, null, 2) };
|
|
588
511
|
}
|
|
589
512
|
catch (err) {
|
package/dist/commands.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"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"}
|
package/dist/json-out.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json-out.d.ts","sourceRoot":"","sources":["../src/json-out.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B,kFAAkF;IAClF,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAMD;;;;GAIG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,IAAI,GAAE,WAAgB,GACrB,aAAa,
|
|
1
|
+
{"version":3,"file":"json-out.d.ts","sourceRoot":"","sources":["../src/json-out.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B,kFAAkF;IAClF,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAMD;;;;GAIG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,IAAI,GAAE,WAAgB,GACrB,aAAa,CAkBf;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,GAAE,WAAgB,GAAG,aAAa,CAM1G"}
|
package/dist/json-out.js
CHANGED
|
@@ -30,12 +30,11 @@ export function emitIpcResult(result, opts = {}) {
|
|
|
30
30
|
// conventions and only one of them carries `ok`:
|
|
31
31
|
// (a) ok-bearing — { ok: true, … } / { ok: false, reason, guidance }
|
|
32
32
|
// (b) payload-only — a bare result with NO `ok` at all: cello_list_agents returns { agents: [] },
|
|
33
|
-
// cello_await_session returns { type: "timeout" | … }.
|
|
34
|
-
// assumed.)
|
|
33
|
+
// cello_await_session returns { type: "timeout" | … }.
|
|
35
34
|
// `ok: false` is the daemon's ONE failure convention; a genuine transport/daemon failure THROWS
|
|
36
35
|
// and is handled by the caller as a transport error. So a payload without `ok` is a result, and
|
|
37
|
-
// routing it to stderr
|
|
38
|
-
//
|
|
36
|
+
// routing it to stderr would report working commands as broken — `cello agents` would exit 1 on
|
|
37
|
+
// success.
|
|
39
38
|
//
|
|
40
39
|
// This does NOT weaken the no-fabricated-success rule: we never synthesize an ok:true, never
|
|
41
40
|
// rewrite a body, and never swallow an ok:false. We report exactly what the daemon said.
|
package/dist/json-out.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json-out.js","sourceRoot":"","sources":["../src/json-out.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAaH,SAAS,MAAM,CAAC,KAAc,EAAE,MAA2B;IACzD,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AACzE,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAC3B,MAA+B,EAC/B,OAAoB,EAAE;IAEtB,kGAAkG;IAClG,iDAAiD;IACjD,wEAAwE;IACxE,oGAAoG;IACpG,
|
|
1
|
+
{"version":3,"file":"json-out.js","sourceRoot":"","sources":["../src/json-out.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAaH,SAAS,MAAM,CAAC,KAAc,EAAE,MAA2B;IACzD,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AACzE,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAC3B,MAA+B,EAC/B,OAAoB,EAAE;IAEtB,kGAAkG;IAClG,iDAAiD;IACjD,wEAAwE;IACxE,oGAAoG;IACpG,6DAA6D;IAC7D,gGAAgG;IAChG,gGAAgG;IAChG,gGAAgG;IAChG,WAAW;IACX,EAAE;IACF,6FAA6F;IAC7F,yFAAyF;IACzF,MAAM,MAAM,GAAG,MAAM,CAAC,EAAE,KAAK,KAAK,CAAC;IACnC,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;IAC1E,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;AAC1E,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAc,EAAE,QAAgB,EAAE,OAAoB,EAAE;IACzF,OAAO;QACL,MAAM,EAAE,EAAE;QACV,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC;QAC5D,QAAQ,EAAE,CAAC;KACZ,CAAC;AACJ,CAAC"}
|