docs(cli): daemon coverage in --help, daemon usage block, SKILL.md
Some checks failed
CI / Lint (push) Has been cancelled
CI / Typecheck (push) Has been cancelled
CI / Broker tests (Postgres) (push) Has been cancelled
CI / Docker build (linux/amd64) (push) Has been cancelled

- Root --help now lists the daemon subcommand suite (was missing).
- claudemesh daemon (no subcommand) prints a usage block instead of
  silently launching the foreground daemon. Adds help|--help|-h aliases.
- SKILL.md gains a "Daemon path (v0.9.0, opt-in, fastest)" section
  explaining the runtime, lifecycle, and that it's independent from
  claudemesh install.

Released as 1.22.1 on npm.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Alejandro Gutiérrez
2026-05-03 20:33:17 +01:00
parent a2568ad9f4
commit 4eff4f5a20
5 changed files with 83 additions and 3 deletions

View File

@@ -22,6 +22,8 @@ export async function runDaemonCommand(
): Promise<number> {
switch (sub) {
case undefined:
return printDaemonUsage();
case "up":
case "start":
return runDaemon({
@@ -31,6 +33,11 @@ export async function runDaemonCommand(
displayName: opts.displayName,
});
case "help":
case "--help":
case "-h":
return printDaemonUsage();
case "status":
return runStatus(opts);
@@ -54,12 +61,47 @@ export async function runDaemonCommand(
return runUninstallService(opts);
default:
process.stderr.write(`unknown daemon subcommand: ${sub}\n`);
process.stderr.write(`usage: claudemesh daemon [up|status|version|down|accept-host|outbox|install-service|uninstall-service]\n`);
process.stderr.write(`unknown daemon subcommand: ${sub}\n\n`);
printDaemonUsage(process.stderr);
return 2;
}
}
function printDaemonUsage(stream: NodeJS.WritableStream = process.stdout): number {
stream.write(`claudemesh daemon — long-lived peer mesh runtime (v0.9.0)
USAGE
claudemesh daemon <command> [options]
COMMANDS
up | start start the daemon in the foreground
status show running pid + IPC health
version ipc + schema version of the running daemon
down | stop stop the running daemon (SIGTERM, then wait)
accept-host pin the current host fingerprint
outbox list list local outbox rows (newest first)
outbox requeue <id> re-enqueue an aborted / dead outbox row
install-service --mesh <s> write launchd (macOS) / systemd-user (Linux) unit
uninstall-service remove the platform service unit
OPTIONS
--mesh <slug> attach to / target this mesh
--name <displayName> override CLAUDEMESH_DISPLAY_NAME
--no-tcp disable the loopback TCP listener (UDS only)
--public-health expose /v1/health unauthenticated on TCP
--json machine-readable output where supported
OUTBOX FLAGS (for 'daemon outbox list')
--pending --inflight --done --failed --aborted filter by status
OUTBOX FLAGS (for 'daemon outbox requeue')
--new-client-id <id> mint the new row with this client_message_id
See ${"https://claudemesh.com/docs"} for the full daemon spec.
`);
return 0;
}
interface OutboxRowResp {
id: string;
client_message_id: string;

View File

@@ -180,6 +180,17 @@ Security
claudemesh backup [file] encrypt config → portable recovery file
claudemesh restore <file> restore config from a backup file
Daemon (long-lived peer mesh runtime, v0.9.0)
claudemesh daemon up start daemon (alias: start) [--mesh <slug>] [--no-tcp]
claudemesh daemon status show running pid + IPC health [--json]
claudemesh daemon down stop daemon (alias: stop)
claudemesh daemon version ipc + schema version of running daemon
claudemesh daemon outbox list list local outbox rows [--failed|--pending|--inflight|--done]
claudemesh daemon outbox requeue <id> re-enqueue an aborted/dead row [--new-client-id <id>]
claudemesh daemon accept-host pin current host fingerprint
claudemesh daemon install-service --mesh <slug> write launchd / systemd-user unit
claudemesh daemon uninstall-service remove the unit
Setup
claudemesh install register MCP server + hooks
claudemesh uninstall remove MCP server + hooks