Skip to main content
reticle stop reads the pid recorded for the port and stops that process.

Flags

How it stops

  1. SIGTERM first, then poll every 100ms.
  2. Still alive after 5 seconds: SIGKILL. A daemon that ignores SIGTERM is wedged, which is the one situation this command exists for, and giving up there left the port held and a human reaching for kill -9.
  3. Still alive 2 seconds after that: report reticle_daemon_stop_timeout with the pid and exit 1. Surviving SIGKILL means the pid is not yours to kill, or it is an unkillable zombie. Neither is retryable.

What it prints

Exit codes

Do not stop a daemon with lsof -ti tcp:4400 | xargs kill -9. That pattern matches the agent’s own reticle mcp proxy as well as the daemon and takes both down. Use this command, or reticle kill.

When this is not enough

stop needs the pid Reticle recorded. If the pid file is stale, was never written, or the port is held by a daemon from another checkout, stop reports reticle_daemon_not_running about a port that is demonstrably occupied. reticle kill asks the port instead and is the command for that case.

Worked example

Last modified on August 15, 2026