The Novacula Agent ships its own CLI built on Citty. The same binary that runs as theDocumentation Index
Fetch the complete documentation index at: https://docs.novacula.io/llms.txt
Use this file to discover all available pages before exploring further.
systemd service also exposes operator commands you’ll need for install, lifecycle, status, and manual upgrade.
bun build --compile; it has no runtime dependency on Bun, Node, or anything else.
Subcommands
run
Run the agent daemon in the foreground. This is what the systemd unit ExecStart=s — you only run it by hand for debugging or for non-systemd setups.
| Flag | Default | Description |
|---|---|---|
--config, -c | /etc/novacula/agent.toml | Path to the agent TOML config file |
NOVACULA_CONFIG env var if set), loads all chain adapters, registers with the control plane, and runs the three loops (PollingClient, Reconciler, Reporter) until killed with SIGTERM / SIGINT.
install
Install the systemd units and enable the service. Runs once per host, after dropping the binary onto the system and writing the config file.
| Flag | Default | Description |
|---|---|---|
--config, -c | /etc/novacula/agent.toml | Path the unit file will reference |
--binary, -b | process.execPath | Path the unit file will ExecStart= |
/etc/systemd/system/novacula-agent.service(main unit)/etc/systemd/system/novacula-agent-rollback.service(one-shot OnFailure rollback)
systemctl daemon-reload && systemctl enable novacula-agent.
uninstall
Inverse of install. Removes the systemd units; does not stop a running service or remove the binary or data_dir.
start / stop / restart
Thin wrappers around systemctl <verb> novacula-agent.service:
systemctl directly; provided so the agent is the single entrypoint for ops scripts.
status
Print a one-line status summary derived from systemctl show:
ActiveState, MainPID, and ExecMainStatus. For full status, systemctl status novacula-agent.service remains the right tool.
upgrade
Manually trigger a self-upgrade against a known release artifact — used for out-of-band upgrades when you can’t or don’t want to drive the upgrade from the control plane UI. Requires the same SHA-256 + minisign verification as the automated path.
AgentUpgradeSpec. Refer to the source if you need to script this; the typical operator path is to re-issue the upgrade from the UI rather than run this by hand.
Exit codes
0 on success; non-zero from any underlying systemctl call is propagated up.
Logging
Logs go to stdout in JSON by default (orpretty if [logging] format = "pretty" in the config). When run as the systemd service, journalctl -u novacula-agent is the right reader.
Related
- Provision an executor on bare-metal — full install walkthrough.
- Apply executor upgrades — recovery for stuck self-updates.
- Configuration reference — the agent TOML schema.