From 780fec474040cf930b31813e73a60889e1981edf Mon Sep 17 00:00:00 2001 From: box-ctl Date: Mon, 5 Oct 2026 05:26:20 +0000 Subject: [PATCH] Add job auto-work-swarm-g17 via box-ctl --- jobs/auto-work-swarm-g17.json | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 jobs/auto-work-swarm-g17.json diff --git a/jobs/auto-work-swarm-g17.json b/jobs/auto-work-swarm-g17.json new file mode 100644 index 0000000..285122e --- /dev/null +++ b/jobs/auto-work-swarm-g17.json @@ -0,0 +1,21 @@ +{ + "name": "auto-work-swarm-g17", + "description": "Swarm & sidechat hygiene sweep 17/20 - swarm status, stale cleanup, ephemeral sidechat archive, result harvest", + "schedule": "51 * * * *", + "agent": "opm", + "timeout": 600, + "prompt_template": "Swarm and sidechat hygiene sweep (slot 17/20).\nJob ID: {job_id}\nTime: {datetime}\n\n1. Run `box swarm-list`. Note any swarm whose status is not completed/killed.\n2. For non-terminal swarms, run `box swarm-status `. If a swarm is stale (>2h old, zero running slots), record it; do not kill without clear stale evidence.\n3. Sidechat hygiene: `box thread-list --agent opm --limit 30`. Identify terminal swarm-slot threads that are unarchived; report them.\n4. Harvest: `box swarm-results ` for recently completed swarms; one-line summary per swarm.\n\nReport-only unless threads/swarms are unambiguously stale. Do not touch other agents' work.\nConclude with a one-line summary: swarms=/ threads=.", + "sidechat": { + "create": true, + "name_template": "auto-work-swarm-g17-{date}", + "reuse_key": "auto-work-swarm-g17" + }, + "followup": { + "expect_reply": true, + "timeout": "30m", + "nudges": 1, + "escalate": "opm", + "route": "swarm-hygiene" + }, + "on_failure": "alert" +}