HypAware
View as Markdown

Manage the daemon

Usage
hyp daemon <subcommand> [args...]

Use hyp daemon --help to list service operations:

Terminal
hyp daemon --help

Daemon commands don't activate plugins.

hyp daemon install

Usage
hyp daemon install [--config <path>] [--bin <path>] [--force] [--dry-run [--json]]

Installs the persistent launchd or systemd user service. When invoked from an ephemeral npx path, it installs a durable global package before it writes the service. --force allows the existing CLI path if that global installation fails; removing that directory later can break capture. --dry-run renders the exact service definition without changing the host; add --json for structured plan output.

Terminal
hyp daemon install --dry-run --json

hyp daemon uninstall

Usage
hyp daemon uninstall

Warning: This command stops persistent capture and detaches clients. Check hyp status before you uninstall the daemon so you know which clients it changes.

Removes the persistent service, then detaches every attached client so no client points at a dead gateway. It keeps configuration, recordings, and logs. The command doesn't ask for confirmation. If service removal succeeds but a detach fails, the command returns 1 and prints the detach command needed to finish.

Terminal
hyp daemon uninstall

hyp daemon run

Usage
hyp daemon run [--config <path>]

Runs the daemon in the current terminal until it receives a stop signal. daemon start starts the installed service.

When the daemon applies a new organization configuration or a plugin change, it restarts as a new process to load the new code. An installed service relaunches it automatically. A foreground run with no service manager (a container, say) relaunches itself with the same arguments, environment and output, up to 5 times in 10 minutes, waiting a little longer each time. Past that it stops, prints the staged configuration it was applying, and exits with code 75. A run under systemd or launchd, or started by a Node process manager such as pm2, exits with 75 on every restart instead and leaves the relaunch to it. To keep relaunching after the limit, run it again on 75. This loop does that and exits with the daemon's own status otherwise, so a supervisor still sees a failed start:

Terminal
rc=75
while [ "$rc" -eq 75 ]; do hyp daemon run && rc=0 || rc=$?; done
exit "$rc"

The first daemon start after hyp join or hyp remote login --no-daemon usually takes this path, because that is when the organization configuration arrives.

Terminal
hyp daemon run

hyp daemon start

Usage
hyp daemon start

Starts the installed service. It returns 1 if no service is installed or the service manager can't start it.

Terminal
hyp daemon start

hyp daemon status

Usage
hyp daemon status [--json]

Reads the daemon status and process ID files without activating plugins. A missing status file prints not started and returns 0. Malformed status or read failures return 1.

Terminal
hyp daemon status --json

hyp daemon stop

Usage
hyp daemon stop

Signals the running daemon and waits up to five seconds. An already stopped daemon succeeds. A timeout returns 1.

Terminal
hyp daemon stop

hyp daemon restart

Usage
hyp daemon restart [--processing]

Restarts an installed service. If no service is installed, it stops a foreground daemon and tells you how to relaunch or install it.

--processing replaces only the supervised processing daemon (recording, sinks, backfill and maintenance) and leaves the gateway listener, its sockets and its in-flight streams alone. It asks the running gateway to bounce its child and returns as soon as the request is written; the gateway allows the child four seconds to stop before killing it. With no gateway supervising a processing daemon it prints that and returns 1.

Terminal
hyp daemon restart
hyp daemon restart --processing
Was this page useful?

↑↓ navigate↵ openesc close