Run the daemon
Install with the script, Docker or Nix first; see install. This page covers operating a daemon once it is there.
Service or foreground
Section titled “Service or foreground”install.sh registers a login service. Manage it with the CLI or the service manager:
| Platform | Service | Logs |
|---|---|---|
| Linux | systemd user unit frogg-daemon.service |
journalctl --user -u frogg-daemon -f, and ~/.frogg/daemon.log |
| macOS | launchd agent app.frogg.frogg-daemon |
~/Library/Logs/app.frogg.frogg-daemon.log, and ~/.frogg/daemon.log |
| Windows | Scheduled task created by frogg install-service |
%USERPROFILE%\.frogg\daemon.log |
frogg statusfrogg restartfrogg stopfrogg install-service --listen 0.0.0.0:9999 # (re)create the login servicefrogg uninstall-serviceWithout a service, run it yourself:
frogg start # background; prints PID and log pathfrogg start --foreground # stay attached, for containers and supervisorsOnly one daemon can use a home directory. A second start fails with
Another frogg daemon is already running (PID ...).
Listen address
Section titled “Listen address”The default is 0.0.0.0:9999: every interface, port 9999.
frogg restart --listen 127.0.0.1:9999 # this machine only (use with SSH or a proxy)frogg restart --port 9443frogg restart --listen /run/user/1000/frogg.sockPersist it in config.json as daemon.listen, or with FROGG_LISTEN. The CLI on the same
machine finds the daemon through its socket or pipe automatically.
Everything lives in FROGG_HOME (~/.frogg): config.json, agents, projects, schedules,
worktrees, paired devices, logs and speech models. Back it up to keep history and
pairings. See configuration.
frogg status | grep Logstail -f ~/.frogg/daemon.logThe log is JSON by default and rotates at 10 MB, keeping three files. Readable output:
FROGG_LOG_FORMAT=pretty FROGG_LOG_LEVEL=debug frogg start --foregroundAuthorization headers are redacted. When a background start fails, the CLI prints the last log lines.
Agent CLIs and PATH
Section titled “Agent CLIs and PATH”Agents inherit the daemon’s environment. A service keeps the PATH it was installed
with. After installing a new agent CLI into a new location, re-run the installer or
frogg install-service, then frogg restart. Put provider API keys in the service’s
environment rather than your shell profile.
Keep agents alive across restarts
Section titled “Keep agents alive across restarts”By default, restarting the daemon stops agent processes; agents that were mid-turn are resumed with a continuation prompt when the daemon comes back (within an hour).
Opt-in independent execution keeps agent runtimes in a separate process so they survive daemon restarts and updates:
FROGG_EXECUTION_SERVICE=1 frogg restartfrogg execution-statusfrogg stop --all # stop the daemon and the execution service with its agentsSet FROGG_EXECUTION_SERVICE=1 in the service environment to make it permanent.
Several daemons on one machine
Section titled “Several daemons on one machine”Give each its own home and port:
FROGG_HOME=~/.frogg-work frogg start --listen 0.0.0.0:9998FROGG_HOME=~/.frogg-work frogg statusUse --host or FROGG_HOST to point CLI commands at the right one.
Reload configuration
Section titled “Reload configuration”frogg reloadIt reports settings applied live, settings that need frogg restart, and settings pinned by
env vars or flags.