operate

star 2

Watch an already-detached clawback proxy as an event stream — surface only actionable log lines (error/warn/4xx/5xx/crash signatures, plus rebind and runtime-mode toggles) AND announce a loud "PROXY DOWN" line the instant the proxy pid dies. Fills the gap that run_monitor.sh --attach leaves: a bare tail goes SILENT on a crash (BSD tail has no --pid), so silence reads as healthy-idle. Use when acting as the operator agent keeping the server alive — point an agent's Monitor tool at it (persistent), react to PROXY DOWN by reading the log tail for the crash cause and restarting via the restart skill.

zapgun-ai By zapgun-ai schedule Updated 6/10/2026

name: operate description: Watch an already-detached clawback proxy as an event stream — surface only actionable log lines (error/warn/4xx/5xx/crash signatures, plus rebind and runtime-mode toggles) AND announce a loud "PROXY DOWN" line the instant the proxy pid dies. Fills the gap that run_monitor.sh --attach leaves: a bare tail goes SILENT on a crash (BSD tail has no --pid), so silence reads as healthy-idle. Use when acting as the operator agent keeping the server alive — point an agent's Monitor tool at it (persistent), react to PROXY DOWN by reading the log tail for the crash cause and restarting via the restart skill.

clawback operate (operator watch)

Run .skills/operate/scripts/operator_watch.sh from the project root. It watches a proxy you already started with the monitor skill (run_monitor.sh --detach) and emits one line per actionable event on stdout, staying quiet during healthy idle.

.skills/operate/scripts/operator_watch.sh                              # defaults below
.skills/operate/scripts/operator_watch.sh data/clawback.run.log data/clawback.run.pid

Defaults match run_monitor.sh:

  • LOG_FILE = data/clawback.run.log
  • PID_FILE = data/clawback.run.pid
  • poll cadence: OPERATOR_WATCH_POLL_SEC (default 5s)

What it emits

  • log lines matching [error] / [warn] / → 4xx|5xx / failed / self-loop / EADDRINUSE / ECONN* / unhandled / Error:
  • two INFO signals an operator wants: clawback listening (a (re)bind) and runtime mode toggled (e.g. the baseline→armed flip after a fresh proxy's 5-turn capture window, or any admin toggle)
  • a synthetic [error] PROXY DOWN … line the moment the proxy pid stops responding — then it exits non-zero so the watch ends deliberately instead of hanging silent

Why not just run_monitor.sh --attach?

--attach only tails the log. macOS/BSD tail has no --pid, so a crash makes the log go quiet and an attached follower can't tell "dead" from "idle". Only run_monitor.sh's foreground follow mode has a liveness watcher — but that mode starts its own proxy and would collide on the port with one already detached. This script adds liveness to the already-detached case without touching the port.

Agent usage (the operator loop)

  1. .skills/scripts/run_monitor.sh --detach — start the proxy.
  2. Point the Monitor tool at .skills/operate/scripts/operator_watch.sh with persistent: true. Each emitted line becomes a notification.
  3. On a PROXY DOWN (or a crash signature), read the tail of data/clawback.run.log to find the cause — that's the "pattern in the logs that needs fixing" — then bring it back with the restart skill and re-arm the Monitor.

Stop the proxy with the shutdown skill; the watch exits on its own when the proxy is gone.

Install via CLI
npx skills add https://github.com/zapgun-ai/clawback --skill operate
Repository Details
star Stars 2
call_split Forks 0
navigation Branch main
article Path SKILL.md
More from Creator