Skip to content
eternego / docs

Commands

Every eternego subcommand, what it does, when to reach for it, and a real example. The flags here are the subcommand's own; the global flags (--debug, -v, --port, --host) go before the command.

For any command, eternego <command> --help prints its usage.


launch

Start the daemon and open the dashboard in your default browser. This is what the installed .app / .exe / .AppImage runs.

eternego launch
  • What it does. Boots the daemon (same loop as daemon), then opens http://<host>:<port> in your browser after a short delay for the server to bind. Before binding it checks the port: if --port (default 5000) is taken, it finds the next free port and prints Port <requested> was in use; using <chosen> instead. — the browser opens on the chosen port.
  • Honors the global flags (--debug, -v, --port, --host).
  • When. You're at the machine and want the UI open. For a headless or always-on setup, register the service instead.
  • Note. On a frozen macOS or Windows build, launch runs the tray-icon launcher (a persistent affordance to reopen the dashboard) instead of the plain browser-open path. The Linux AppImage and source runs use the browser-only launcher.
# open the dashboard on a custom port
eternego --port 8080 launch

daemon

Run the daemon process in the foreground. No browser is opened.

eternego daemon
  • What it does. Starts the persona manager and the web server and blocks, serving the HTTP API and the dashboard until interrupted (Ctrl-C). Before binding it checks the port: if --port (default 5000) is taken, it finds the next free port and prints Port <requested> was in use; using <chosen> instead. (same behavior as launch, which runs this loop).
  • Honors the global flags (--debug, -v, --port, --host).
  • When. This is the command the OS service manager runs under the hood (see service). Run it directly when developing, or when you supervise the process yourself and don't want a browser to pop open.
# foreground daemon with INFO logging echoed to the console
eternego -vv daemon

service

Register and control Eternego as a background OS service so she keeps running across logins and reboots. The implementation is per-OS:

  • Linux — a systemd user unit at ~/.config/systemd/user/eternego.service.
  • macOS — a launchd agent at ~/Library/LaunchAgents/com.eternego.plist (label com.eternego).
  • Windows — a Scheduled Task named Eternego, triggered at logon.

Each service runs eternego daemon. start and restart (re)write the unit/plist/task first, so any debug/verbosity flags you pass are baked into the command line the service runs.

eternego service {start,stop,restart,status,logs}

service start

Write the unit/plist/task and start the service.

eternego service start [--debug] [-v]
Flag Type Default Effect
--debug switch off Run the background daemon with --debug (debug + signal logs).
-v, --verbose count 0 Run the background daemon with this verbosity. Repeatable (-vv, -vvv).

These flags are written into the service's start command, e.g. a start --debug -vv produces an ExecStart of …/eternego --debug -vv daemon. (Pass debug/verbosity here, on service start/restart — not as top-level flags before service, which the service path ignores. See Which commands honor the global flags.)

  • Linux: writes the unit, runs systemctl --user daemon-reload, systemctl --user enable eternego, then systemctl --user start eternego.
  • macOS: writes the plist, launchctl bootout (quietly, in case it was already loaded), then launchctl bootstrap gui/<uid> <plist>.
  • Windows: registers the task via PowerShell Register-ScheduledTask, then Start-ScheduledTask -TaskName Eternego.
# install and start the service with debug logging
eternego service start --debug

service stop

Stop the running service. Takes no flags.

eternego service stop
  • Linux: systemctl --user stop eternego — stops it but leaves the unit installed (it will start again on next login). To remove it entirely, use uninstall.
  • macOS: launchctl bootout gui/<uid>/com.eternego.
  • Windows: Stop-ScheduledTask -TaskName Eternego.
eternego service stop

service restart

Rewrite the unit/plist/task and restart. Same flags as start.

eternego service restart [--debug] [-v]
  • Linux: rewrites the unit, then systemctl --user restart eternego.
  • macOS / Windows: rewrites the plist/task, then stops and starts it.
  • When. After changing flags (e.g. switching the service to --debug), or to recover a wedged process.
# turn debug logging on for the running service
eternego service restart --debug

service status

Show the OS service manager's view of the service. Streams the native tool's output (Ctrl-C to exit). Takes no flags.

eternego service status
  • Linux: systemctl --user status eternego.
  • macOS: launchctl print gui/<uid>/com.eternego.
  • Windows: Get-ScheduledTask -TaskName Eternego | Get-ScheduledTaskInfo.

This reports the process state (loaded / running / failed). For the persona's own vital state (active, hibernate, sick) ask the API or the Status panel — that is a different axis from whether the daemon process is up.

eternego service status

service logs

Follow the daily application log live (tail -f). Ctrl-C to stop following. Takes no flags.

eternego service logs
eternego service logs

If eternego service is run with no action (or an unrecognized one), it prints Usage: eternego service {start,stop,restart,status,logs} and exits non-zero.


uninstall

Remove the service and the installed Eternego source. Her data is preserved.

eternego uninstall
  • What it does. Prompts for confirmation (Continue? [y/N] — anything but y cancels), then:
    1. Stops and removes the service (the systemd unit / launchd plist / Scheduled Task, and on macOS the ~/Library/Logs/eternego.log file).
    2. Removes the eternego CLI launcher (the ~/.local/bin/eternego link on Linux/macOS; removes the venv Scripts directory from the user Path on Windows).
    3. Deletes the installed source at ~/.eternego/source.
  • What it does NOT touch. Your persona data at ~/.eternego (everything except the source/ subdirectory) is left intact, and the command prints where it lives plus the exact rm -rf / Remove-Item line to delete it yourself if you ever want to.
  • When. Removing a service install. (The downloadable .app / .exe / .AppImage aren't removed by this — uninstall those the OS way; this command targets the script/service install and its ~/.eternego/source tree.)
eternego uninstall

env

Check that a model is reachable, or pull / verify one before you assign it to a persona. Useful for confirming an Ollama model is pulled and running, or that a cloud provider key works, without going through the onboarding panel.

eternego env {check,prepare}

Both actions run the shared bootstrap, so the logging global flags (--debug, -v) apply; env never starts a web server, so --port / --host have no effect here. See Which commands honor the global flags.

env check

Report whether a model is available and running. Exits 0 and prints Model '<name>' is ready. on success; on failure prints Not ready: <reason> and exits 1.

eternego env check --model MODEL
Flag Required Effect
--model MODEL yes The model name to check (e.g. an Ollama tag like qwen2.5:14b, or a cloud model id).
eternego env check --model qwen2.5:14b

env prepare

Pull a model and verify it's ready. For local models this pulls via Ollama; with --model omitted it uses the Ollama default. Exits 0 and prints Environment is ready. Model: <name> on success; on failure prints Error: <reason> and exits 1.

eternego env prepare [--model MODEL]
Flag Required Default Effect
--model MODEL no empty (Ollama default) The model to pull. Omit to pull the default local model.
# pull a specific local model
eternego env prepare --model llama3.1:8b

# pull the default local model
eternego env prepare

If eternego env is run with no action (or an unrecognized one), it prints Usage: eternego env {check,prepare} and exits non-zero.