chore: sync OpenClaw runtime state

Sync latest runtime state from zap VM: credential rotations,
device registrations, completion scripts, cron jobs, and
telemetry offsets.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
William Valentin
2026-03-19 15:35:58 -07:00
parent 905d2eb58c
commit d96efca2c4
19 changed files with 510 additions and 87 deletions

View File

@@ -7,7 +7,7 @@
"description": "15m homelab service monitoring with Telegram alerting",
"enabled": true,
"createdAtMs": 1772676352724,
"updatedAtMs": 1773327610735,
"updatedAtMs": 1773903614233,
"schedule": {
"kind": "cron",
"expr": "0 */4 * * *",
@@ -18,7 +18,7 @@
"wakeMode": "now",
"payload": {
"kind": "agentTurn",
"message": "Run homelab service monitoring and send alerts only when needed.\n\n1) Execute: bash scripts/ops-sentinel.sh\n2) If verdict is OK, reply exactly: NO_REPLY\n3) If verdict is MONITOR or NEEDS_ATTENTION, send a concise alert with:\n - Verdict\n - P1/P2 counts\n - Failing or degraded components by name\n - Up to 3 concrete next actions\n4) Keep it short and operational. Do not include secrets.",
"message": "Run homelab service monitoring and send alerts only when needed.\n\n1) Execute: BACKUP_LOG=/home/openclaw/.openclaw/workspace/memory/minio-backup.log bash /home/openclaw/.openclaw/workspace/scripts/ops-sentinel.sh\n2) If verdict is OK, reply exactly: NO_REPLY\n3) If verdict is MONITOR or NEEDS_ATTENTION, send a concise alert with:\n - Verdict\n - P1/P2 counts\n - Failing or degraded components by name\n - Up to 3 concrete next actions\n4) Keep it short and operational. Do not include secrets.",
"timeoutSeconds": 120
},
"delivery": {
@@ -28,11 +28,11 @@
"bestEffort": true
},
"state": {
"nextRunAtMs": 1773342000000,
"lastRunAtMs": 1773327600006,
"nextRunAtMs": 1773918000000,
"lastRunAtMs": 1773903600006,
"lastRunStatus": "ok",
"lastStatus": "ok",
"lastDurationMs": 10729,
"lastDurationMs": 14227,
"lastDeliveryStatus": "delivered",
"consecutiveErrors": 0,
"lastDelivered": true
@@ -153,7 +153,7 @@
"description": "Weekly check of official tool/skills best practices and workspace hint sync",
"enabled": true,
"createdAtMs": 1772745966431,
"updatedAtMs": 1773213742911,
"updatedAtMs": 1773809649024,
"schedule": {
"kind": "cron",
"expr": "0 9 * * 1",
@@ -171,16 +171,14 @@
"bestEffort": true
},
"state": {
"nextRunAtMs": 1773676800000,
"lastRunAtMs": 1773072000005,
"lastRunStatus": "error",
"lastStatus": "error",
"lastDurationMs": 65819,
"lastDelivered": false,
"lastDeliveryStatus": "not-delivered",
"consecutiveErrors": 1,
"lastError": "⚠️ ✍️ Write: `to skills/llm-tool-best-practices/hints/openai.md (4 chars)` failed",
"lastDeliveryError": "⚠️ ✍️ Write: `to skills/llm-tool-best-practices/hints/openai.md (4 chars)` failed"
"nextRunAtMs": 1774281600000,
"lastRunAtMs": 1773785229140,
"lastRunStatus": "ok",
"lastStatus": "ok",
"lastDurationMs": 57801,
"lastDelivered": true,
"lastDeliveryStatus": "delivered",
"consecutiveErrors": 0
},
"agentId": "automation"
},
@@ -190,7 +188,7 @@
"description": "Download latest MinIO backup, verify sha256, extract to temp dir, validate structure",
"enabled": true,
"createdAtMs": 1773006976709,
"updatedAtMs": 1773213742889,
"updatedAtMs": 1773570608127,
"schedule": {
"kind": "cron",
"expr": "30 3 * * 0",
@@ -210,13 +208,13 @@
"bestEffort": true
},
"state": {
"nextRunAtMs": 1773570600000,
"lastRunAtMs": 1773006988635,
"nextRunAtMs": 1774175400000,
"lastRunAtMs": 1773570600007,
"lastRunStatus": "ok",
"lastStatus": "ok",
"lastDurationMs": 54288,
"lastDelivered": false,
"lastDeliveryStatus": "not-delivered",
"lastDurationMs": 8120,
"lastDelivered": true,
"lastDeliveryStatus": "delivered",
"consecutiveErrors": 0
},
"agentId": "automation"
@@ -226,9 +224,9 @@
"agentId": "automation",
"sessionKey": "agent:main:tui-eff442f9-0f62-4e3d-8e21-2fd24475d23f",
"name": "Inbox priority triage to Telegram",
"enabled": true,
"enabled": false,
"createdAtMs": 1773213945899,
"updatedAtMs": 1773330396923,
"updatedAtMs": 1773811342013,
"schedule": {
"kind": "every",
"everyMs": 14400000,
@@ -249,14 +247,13 @@
"bestEffort": true
},
"state": {
"nextRunAtMs": 1773344785984,
"lastRunAtMs": 1773330385984,
"lastRunAtMs": 1773799251561,
"lastRunStatus": "ok",
"lastStatus": "ok",
"lastDurationMs": 10939,
"lastDelivered": true,
"lastDurationMs": 23785,
"lastDeliveryStatus": "delivered",
"consecutiveErrors": 0
"consecutiveErrors": 0,
"lastDelivered": true
}
},
{
@@ -266,7 +263,7 @@
"name": "litellm model sync",
"enabled": true,
"createdAtMs": 1773260226908,
"updatedAtMs": 1773303436051,
"updatedAtMs": 1773908231724,
"schedule": {
"kind": "every",
"everyMs": 43200000,
@@ -277,7 +274,6 @@
"payload": {
"kind": "agentTurn",
"message": "In /home/openclaw/.openclaw/workspace, run the LiteLLM model sync script:\n\npython3 /home/openclaw/.openclaw/workspace/scripts/sync-litellm-models.py\n\nThen verify whether fallback metadata count is zero by running:\npython3 /home/openclaw/.openclaw/workspace/scripts/sync-litellm-models.py --audit-only --json\n\nIf the sync succeeds and fallbackCount is 0, finish silently.\nIf there is any error, or fallbackCount is not 0, produce a concise summary of the problem including the affected model count and next recommended action.",
"model": "gpt-5-mini",
"thinking": "low",
"timeoutSeconds": 600
},
@@ -285,14 +281,14 @@
"mode": "none"
},
"state": {
"nextRunAtMs": 1773346626913,
"lastRunAtMs": 1773303426913,
"nextRunAtMs": 1773951427013,
"lastRunAtMs": 1773908227013,
"lastRunStatus": "ok",
"lastStatus": "ok",
"lastDurationMs": 9138,
"lastDelivered": false,
"lastDurationMs": 4711,
"lastDeliveryStatus": "not-delivered",
"consecutiveErrors": 0
"consecutiveErrors": 0,
"lastDelivered": false
}
},
{
@@ -302,7 +298,7 @@
"name": "litellm weekly audit",
"enabled": true,
"createdAtMs": 1773260257511,
"updatedAtMs": 1773260286640,
"updatedAtMs": 1773809648991,
"schedule": {
"kind": "cron",
"expr": "17 9 * * 1",
@@ -313,7 +309,6 @@
"payload": {
"kind": "agentTurn",
"message": "Audit the LiteLLM/OpenClaw model sync state for drift.\n\nIn /home/openclaw/.openclaw/workspace:\n1. Run:\n python3 /home/openclaw/.openclaw/workspace/scripts/sync-litellm-models.py --audit-only --json\n2. Check whether LiteLLM metadata/detail endpoints appear healthy enough to use beyond /models.\n3. Compare current model count and audit status with a normal healthy state.\n\nIf everything looks normal, finish silently.\nIf any of the following are true, produce a concise summary:\n- fallbackCount > 0\n- model count changed unexpectedly\n- new unknown/alias-derived models appeared that should get first-class metadata\n- LiteLLM endpoint health/details look worse than expected\n\nInclude only the key findings and the next recommended action.",
"model": "gpt-5-mini",
"thinking": "low",
"timeoutSeconds": 600
},
@@ -321,7 +316,227 @@
"mode": "none"
},
"state": {
"nextRunAtMs": 1773652620000
"nextRunAtMs": 1774257420000,
"lastRunAtMs": 1773785195975,
"lastRunStatus": "ok",
"lastStatus": "ok",
"lastDurationMs": 22938,
"lastDelivered": false,
"lastDeliveryStatus": "not-delivered",
"consecutiveErrors": 0
}
},
{
"id": "3bc270ac-a841-4ba5-b193-3a409fdbc214",
"agentId": "automation",
"sessionKey": "agent:main:tui-0cc62af4-9547-4c2b-b078-fa8d5c7fc1d1",
"name": "memory-reindex",
"enabled": true,
"createdAtMs": 1773778927874,
"updatedAtMs": 1773914405934,
"schedule": {
"kind": "cron",
"expr": "*/5 * * * *"
},
"sessionTarget": "isolated",
"wakeMode": "now",
"payload": {
"kind": "agentTurn",
"message": "Run `openclaw memory index` via exec tool. No reply needed, just run it silently.",
"timeoutSeconds": 60
},
"delivery": {
"mode": "none"
},
"state": {
"nextRunAtMs": 1773914700000,
"lastRunAtMs": 1773914400006,
"lastRunStatus": "ok",
"lastStatus": "ok",
"lastDurationMs": 5928,
"lastDelivered": false,
"lastDeliveryStatus": "not-delivered",
"consecutiveErrors": 0
}
},
{
"id": "b398c988-8b12-4f9d-8e37-513e1ae2837a",
"agentId": "automation",
"sessionKey": "agent:main:tui-0cc62af4-9547-4c2b-b078-fa8d5c7fc1d1",
"name": "obsidian-inbox-watcher",
"enabled": true,
"createdAtMs": 1773780426888,
"updatedAtMs": 1773914409598,
"schedule": {
"kind": "cron",
"expr": "*/5 * * * *"
},
"sessionTarget": "isolated",
"wakeMode": "now",
"payload": {
"kind": "agentTurn",
"message": "You are zap. Check /mnt/swarm-common/obsidian-vault/will/inbox/ for any .md files (ignore the processed/ subdirectory). If none found, do nothing silently.\n\nFor each file found:\n1. Read the file content with the read tool\n2. Use memory_search to check if this topic/task is already known\n3. Determine what kind of note it is:\n - **Task/todo** → capture it in memory/tasks.json (or today's daily note if tasks.json doesn't exist) and reply to Will via Telegram\n - **Direct question or ask** → answer it and reply via Telegram\n - **Reference/info** → save to an appropriate memory file (daily note or memory/references/)\n - **Reminder** → create a cron reminder\n4. Move the processed file to /mnt/swarm-common/obsidian-vault/will/inbox/processed/ using exec\n5. Always tell Will via Telegram what you did with the note",
"timeoutSeconds": 120
},
"delivery": {
"mode": "none"
},
"state": {
"nextRunAtMs": 1773914700000,
"lastRunAtMs": 1773914405934,
"lastRunStatus": "ok",
"lastStatus": "ok",
"lastDurationMs": 3664,
"lastDelivered": false,
"lastDeliveryStatus": "not-delivered",
"consecutiveErrors": 0
}
},
{
"id": "46d4f9d5-0d67-4ec6-b81e-690e3d926e0c",
"agentId": "main",
"sessionKey": "agent:main:cron:b398c988-8b12-4f9d-8e37-513e1ae2837a",
"name": "Tax Reminder",
"enabled": true,
"deleteAfterRun": true,
"createdAtMs": 1773780918595,
"updatedAtMs": 1773780918595,
"schedule": {
"kind": "at",
"at": "2026-04-14T12:00:00.000Z"
},
"sessionTarget": "main",
"wakeMode": "now",
"payload": {
"kind": "systemEvent",
"text": "Reminder: Tax deadline is tomorrow! Make sure filing is complete or resolve any steps remaining related to taxes."
},
"state": {
"nextRunAtMs": 1776168000000
}
},
{
"id": "00a2a0aa-2035-472c-a8ad-c308eecbb9c1",
"agentId": "main",
"sessionKey": "agent:main:tui-fccdd396-61e9-467f-a439-f909307f4f25",
"name": "Weekly recycling reminder",
"enabled": true,
"createdAtMs": 1773853175958,
"updatedAtMs": 1773853175958,
"schedule": {
"kind": "cron",
"expr": "0 2 * * 5",
"tz": "America/Los_Angeles"
},
"sessionTarget": "isolated",
"wakeMode": "now",
"payload": {
"kind": "agentTurn",
"message": "Remind Will to take the recycling out tonight."
},
"delivery": {
"mode": "announce"
},
"state": {
"nextRunAtMs": 1773997200000
}
},
{
"id": "793fd52c-3a69-404d-9c6d-f4ddc997c04f",
"agentId": "main",
"sessionKey": "agent:main:tui-297f760f-d770-417b-8a77-e6af92bcdb30",
"name": "Shift water reminder",
"enabled": false,
"createdAtMs": 1773863287211,
"updatedAtMs": 1773863287211,
"schedule": {
"kind": "cron",
"expr": "0 14,15,16,17,18,19,20,21 * * 1-5",
"tz": "America/Los_Angeles"
},
"sessionTarget": "isolated",
"wakeMode": "now",
"payload": {
"kind": "agentTurn",
"message": "Send a Telegram reminder to Will: 💧 Time to drink some water!"
},
"delivery": {
"mode": "none"
},
"state": {}
},
{
"id": "215f7ef2-9090-4727-b80e-1c8788e24e8b",
"agentId": "main",
"sessionKey": "agent:main:tui-297f760f-d770-417b-8a77-e6af92bcdb30",
"name": "Shift walk reminder",
"enabled": false,
"createdAtMs": 1773863294899,
"updatedAtMs": 1773863294899,
"schedule": {
"expr": "0 14,20 * * 1-5",
"kind": "cron",
"tz": "America/Los_Angeles"
},
"sessionTarget": "isolated",
"wakeMode": "now",
"payload": {
"kind": "agentTurn",
"message": "Send a Telegram reminder to Will: 🚶 Time to get up and walk for 510 minutes!"
},
"delivery": {
"mode": "none"
},
"state": {}
},
{
"id": "5f1377fc-da4c-40bc-9c3b-14c652e32d3c",
"agentId": "main",
"sessionKey": "agent:main:tui-297f760f-d770-417b-8a77-e6af92bcdb30",
"name": "Shift walk reminder (30min offset)",
"enabled": false,
"createdAtMs": 1773863299201,
"updatedAtMs": 1773863299201,
"schedule": {
"expr": "30 15,18,21 * * 1-5",
"kind": "cron",
"tz": "America/Los_Angeles"
},
"sessionTarget": "isolated",
"wakeMode": "now",
"payload": {
"kind": "agentTurn",
"message": "Send a Telegram reminder to Will: 🚶 Time to get up and walk for 510 minutes!"
},
"delivery": {
"mode": "none"
},
"state": {}
},
{
"id": "5d90c263-7c9c-4a25-8639-72135973d8f9",
"agentId": "main",
"sessionKey": "agent:main:tui-297f760f-d770-417b-8a77-e6af92bcdb30",
"name": "Enable shift reminders",
"enabled": true,
"deleteAfterRun": true,
"createdAtMs": 1773863331585,
"updatedAtMs": 1773863331585,
"schedule": {
"kind": "at",
"at": "2026-04-07T16:00:00.000Z"
},
"sessionTarget": "isolated",
"wakeMode": "now",
"payload": {
"kind": "agentTurn",
"message": "Today is April 7th — the new daily schedule goes live. Enable the following cron jobs: 'Shift water reminder' (793fd52c), 'Shift walk reminder' (215f7ef2), 'Shift walk reminder (30min offset)' (5f1377fc). Use the cron tool to set enabled=true on each. Then send Will a Telegram message letting him know his shift reminders are now active."
},
"delivery": {
"mode": "announce"
},
"state": {
"nextRunAtMs": 1775577600000
}
}
]