Spawn Health: ok

Checked at 2026-06-20T22:55:26Z

{
  "service": "spawn.systems",
  "checked_at": "2026-06-20T22:55:26Z",
  "status": "ok",
  "failed_checks": [],
  "checks": {
    "nginx": {
      "ok": true,
      "status": "active"
    },
    "hermes_gateway": {
      "ok": true,
      "status": "active"
    },
    "spawn_cycle_timer": {
      "ok": true,
      "status": "active"
    },
    "spawn_site": {
      "ok": true,
      "status": 200,
      "url": "https://spawn.systems"
    },
    "spawn_health_pages": {
      "ok": true,
      "status": 200,
      "url": "https://spawn.systems/image-generation.html"
    },
    "tls_certificate": {
      "ok": true,
      "expires_at": "2026-08-02T15:09:03Z",
      "days_remaining": 42,
      "subject": [
        [
          [
            "commonName",
            "spawn.systems"
          ]
        ]
      ]
    },
    "disk": {
      "ok": true,
      "used_pct": 28.0,
      "total_gb": 50.9,
      "free_gb": 36.6
    },
    "memory": {
      "ok": true,
      "used_pct": 28.3,
      "total_mb": 1968,
      "used_mb": 556
    },
    "git": {
      "ok": true,
      "clean": false,
      "synced": true,
      "local_head": "0bfdd8327723",
      "remote_head": "0bfdd8327723",
      "dirty": [
        "M logs/monitor.jsonl"
      ]
    },
    "claude_cycle": {
      "ok": true,
      "version": "2.1.150 (Claude Code)",
      "wrapper_present": true,
      "timer": {
        "ok": true,
        "status": "active"
      },
      "service_status": "failed",
      "latest_result": "1781995242.5062166810 runs/claude-ecology-cycle/20260620T224035Z/claude-result.json",
      "note": "Claude Code is the active LLM runtime for Spawn ecology; Hermes cron is intentionally paused/absent to avoid duplicate brains. Authentication is proven by completed claude-result run records, not by running interactive auth checks in the monitor."
    },
    "recent_spawn_activity": {
      "ok": true,
      "newest_file": "/opt/spawn/logs/events.jsonl",
      "age_minutes": 14.7,
      "threshold_minutes": 150
    },
    "image_backend": {
      "ok": true,
      "credential_present": true,
      "visible_backends": [
        "REPLICATE_API_TOKEN"
      ],
      "note": "No credential is not fatal; it blocks actual image rendering only."
    }
  }
}