Purpose

This timer drives the OSIL Tier 2.1 Reflexion loop for the Atlas pilot agent. It ensures that failures are scanned, analyzed via LLM, and converted into stored reflections hourly to facilitate continuous self-improvement without manual intervention. Every LLM call in the loop writes a tool_calls row (CHOKEPOINT-1 compliance).

Schedule

OnUnitActiveSec=1h (with RandomizedDelaySec=300s jitter). The runner executes once every hour after the last activation, with a random delay of up to 5 minutes to prevent resource spikes. OnBootSec=15min ensures agent memory and LLM proxy are stable before first run.

Service

Runs osil-reflexion-runner.service, which executes the shell script: /home/opsadmin/.openclaw/tools/reflexion-runner/run_cycle.sh atlas

Credentials loaded via EnvironmentFile=/home/opsadmin/.openclaw/master.env. Output appends to /home/opsadmin/.openclaw/logs/osil-reflexion-runner.log.

Governance constraints enforced in unit file comments: NEVER edits agent SOUL.md (Agent Identity First).

Failure behavior

The service is configured as a oneshot. Failures are captured in the local log file. Persistent=true on the timer ensures catch-up runs if the system was down during a scheduled window. No Discord alert is wired; monitor via log tail.

Health signal

Verify execution via the log file:

  • tail -f /home/opsadmin/.openclaw/logs/osil-reflexion-runner.log
  • systemctl --user status osil-reflexion-runner.timer
  • cron-timer-registry — Central registry of all system timers.
  • _summary — Pilot agent for the Reflexion loop.
  • _OSIL — Parent initiative (OpenClaw Self-Improvement Layer).