chore(retention): archive retired jobs [auto-work-swarm-g01, auto-work-swarm-g02, auto-work-swarm-g03, auto-work-swarm-g04, auto-work-swarm-g05, auto-work-swarm-g06, auto-work-swarm-g08, auto-work-swarm-g09, auto-work-swarm-g10, auto-work-swarm-g11, auto-work-swarm-g12, auto-work-swarm-g13, auto-work-swarm-g14, auto-work-swarm-g15, auto-work-swarm-g16, auto-work-swarm-g17, auto-work-swarm-g18, auto-work-swarm-g19, auto-work-swarm-g20, auto-work-sweep-j01, auto-work-sweep-j02, auto-work-sweep-j03, auto-work-sweep-j04, auto-work-sweep-j05, auto-work-sweep-j06, auto-work-sweep-j07, auto-work-sweep-j08, auto-work-sweep-j09, auto-work-sweep-j10, auto-work-sweep-j11, auto-work-sweep-j12, auto-work-sweep-j13, auto-work-sweep-j14, auto-work-sweep-j15, auto-work-sweep-j16, auto-work-sweep-j18, auto-work-sweep-j19, auto-work-sweep-j20]
This commit is contained in:
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"name": "auto-work-swarm-g01",
|
||||
"description": "Swarm & sidechat hygiene sweep 1/20 - swarm status, stale cleanup, ephemeral sidechat archive, result harvest",
|
||||
"schedule": "manual",
|
||||
"agent": "opm",
|
||||
"timeout": 600,
|
||||
"prompt_template": "Swarm and sidechat hygiene sweep (slot 1/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 <id>`. 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 <swarm-id>` 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=<seen>/<stale> threads=<archived_candidates>.",
|
||||
"sidechat": {
|
||||
"create": true,
|
||||
"name_template": "auto-work-swarm-g01-{date}",
|
||||
"reuse_key": "auto-work-swarm-g01"
|
||||
},
|
||||
"followup": {
|
||||
"expect_reply": true,
|
||||
"timeout": "30m",
|
||||
"nudges": 1,
|
||||
"escalate": "opm",
|
||||
"route": "swarm-hygiene"
|
||||
},
|
||||
"on_failure": "alert"
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"name": "auto-work-swarm-g02",
|
||||
"description": "Swarm & sidechat hygiene sweep 2/20 - swarm status, stale cleanup, ephemeral sidechat archive, result harvest",
|
||||
"schedule": "manual",
|
||||
"agent": "646",
|
||||
"timeout": 600,
|
||||
"prompt_template": "Swarm and sidechat hygiene sweep (slot 2/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 <id>`. 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 646 --limit 30`. Identify terminal swarm-slot threads that are unarchived; report them.\n4. Harvest: `box swarm-results <swarm-id>` 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=<seen>/<stale> threads=<archived_candidates>.",
|
||||
"sidechat": {
|
||||
"create": true,
|
||||
"name_template": "auto-work-swarm-g02-{date}",
|
||||
"reuse_key": "auto-work-swarm-g02"
|
||||
},
|
||||
"followup": {
|
||||
"expect_reply": true,
|
||||
"timeout": "30m",
|
||||
"nudges": 1,
|
||||
"escalate": "opm",
|
||||
"route": "swarm-hygiene"
|
||||
},
|
||||
"on_failure": "alert"
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"name": "auto-work-swarm-g03",
|
||||
"description": "Swarm & sidechat hygiene sweep 3/20 - swarm status, stale cleanup, ephemeral sidechat archive, result harvest",
|
||||
"schedule": "manual",
|
||||
"agent": "opm",
|
||||
"timeout": 600,
|
||||
"prompt_template": "Swarm and sidechat hygiene sweep (slot 3/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 <id>`. 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 <swarm-id>` 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=<seen>/<stale> threads=<archived_candidates>.",
|
||||
"sidechat": {
|
||||
"create": true,
|
||||
"name_template": "auto-work-swarm-g03-{date}",
|
||||
"reuse_key": "auto-work-swarm-g03"
|
||||
},
|
||||
"followup": {
|
||||
"expect_reply": true,
|
||||
"timeout": "30m",
|
||||
"nudges": 1,
|
||||
"escalate": "opm",
|
||||
"route": "swarm-hygiene"
|
||||
},
|
||||
"on_failure": "alert"
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"name": "auto-work-swarm-g04",
|
||||
"description": "Swarm & sidechat hygiene sweep 4/20 - swarm status, stale cleanup, ephemeral sidechat archive, result harvest",
|
||||
"schedule": "manual",
|
||||
"agent": "646",
|
||||
"timeout": 600,
|
||||
"prompt_template": "Swarm and sidechat hygiene sweep (slot 4/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 <id>`. 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 646 --limit 30`. Identify terminal swarm-slot threads that are unarchived; report them.\n4. Harvest: `box swarm-results <swarm-id>` 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=<seen>/<stale> threads=<archived_candidates>.",
|
||||
"sidechat": {
|
||||
"create": true,
|
||||
"name_template": "auto-work-swarm-g04-{date}",
|
||||
"reuse_key": "auto-work-swarm-g04"
|
||||
},
|
||||
"followup": {
|
||||
"expect_reply": true,
|
||||
"timeout": "30m",
|
||||
"nudges": 1,
|
||||
"escalate": "opm",
|
||||
"route": "swarm-hygiene"
|
||||
},
|
||||
"on_failure": "alert"
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"name": "auto-work-swarm-g05",
|
||||
"description": "Swarm & sidechat hygiene sweep 5/20 - swarm status, stale cleanup, ephemeral sidechat archive, result harvest",
|
||||
"schedule": "manual",
|
||||
"agent": "opm",
|
||||
"timeout": 600,
|
||||
"prompt_template": "Swarm and sidechat hygiene sweep (slot 5/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 <id>`. 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 <swarm-id>` 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=<seen>/<stale> threads=<archived_candidates>.",
|
||||
"sidechat": {
|
||||
"create": true,
|
||||
"name_template": "auto-work-swarm-g05-{date}",
|
||||
"reuse_key": "auto-work-swarm-g05"
|
||||
},
|
||||
"followup": {
|
||||
"expect_reply": true,
|
||||
"timeout": "30m",
|
||||
"nudges": 1,
|
||||
"escalate": "opm",
|
||||
"route": "swarm-hygiene"
|
||||
},
|
||||
"on_failure": "alert"
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"name": "auto-work-swarm-g06",
|
||||
"description": "Swarm & sidechat hygiene sweep 6/20 - swarm status, stale cleanup, ephemeral sidechat archive, result harvest",
|
||||
"schedule": "manual",
|
||||
"agent": "646",
|
||||
"timeout": 600,
|
||||
"prompt_template": "Swarm and sidechat hygiene sweep (slot 6/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 <id>`. 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 646 --limit 30`. Identify terminal swarm-slot threads that are unarchived; report them.\n4. Harvest: `box swarm-results <swarm-id>` 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=<seen>/<stale> threads=<archived_candidates>.",
|
||||
"sidechat": {
|
||||
"create": true,
|
||||
"name_template": "auto-work-swarm-g06-{date}",
|
||||
"reuse_key": "auto-work-swarm-g06"
|
||||
},
|
||||
"followup": {
|
||||
"expect_reply": true,
|
||||
"timeout": "30m",
|
||||
"nudges": 1,
|
||||
"escalate": "opm",
|
||||
"route": "swarm-hygiene"
|
||||
},
|
||||
"on_failure": "alert"
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"name": "auto-work-swarm-g08",
|
||||
"description": "Swarm & sidechat hygiene sweep 8/20 - swarm status, stale cleanup, ephemeral sidechat archive, result harvest",
|
||||
"schedule": "manual",
|
||||
"agent": "646",
|
||||
"timeout": 600,
|
||||
"prompt_template": "Swarm and sidechat hygiene sweep (slot 8/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 <id>`. 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 646 --limit 30`. Identify terminal swarm-slot threads that are unarchived; report them.\n4. Harvest: `box swarm-results <swarm-id>` 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=<seen>/<stale> threads=<archived_candidates>.",
|
||||
"sidechat": {
|
||||
"create": true,
|
||||
"name_template": "auto-work-swarm-g08-{date}",
|
||||
"reuse_key": "auto-work-swarm-g08"
|
||||
},
|
||||
"followup": {
|
||||
"expect_reply": true,
|
||||
"timeout": "30m",
|
||||
"nudges": 1,
|
||||
"escalate": "opm",
|
||||
"route": "swarm-hygiene"
|
||||
},
|
||||
"on_failure": "alert"
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"name": "auto-work-swarm-g09",
|
||||
"description": "Swarm & sidechat hygiene sweep 9/20 - swarm status, stale cleanup, ephemeral sidechat archive, result harvest",
|
||||
"schedule": "manual",
|
||||
"agent": "opm",
|
||||
"timeout": 600,
|
||||
"prompt_template": "Swarm and sidechat hygiene sweep (slot 9/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 <id>`. 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 <swarm-id>` 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=<seen>/<stale> threads=<archived_candidates>.",
|
||||
"sidechat": {
|
||||
"create": true,
|
||||
"name_template": "auto-work-swarm-g09-{date}",
|
||||
"reuse_key": "auto-work-swarm-g09"
|
||||
},
|
||||
"followup": {
|
||||
"expect_reply": true,
|
||||
"timeout": "30m",
|
||||
"nudges": 1,
|
||||
"escalate": "opm",
|
||||
"route": "swarm-hygiene"
|
||||
},
|
||||
"on_failure": "alert"
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"name": "auto-work-swarm-g10",
|
||||
"description": "Swarm & sidechat hygiene sweep 10/20 - swarm status, stale cleanup, ephemeral sidechat archive, result harvest",
|
||||
"schedule": "manual",
|
||||
"agent": "646",
|
||||
"timeout": 600,
|
||||
"prompt_template": "Swarm and sidechat hygiene sweep (slot 10/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 <id>`. 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 646 --limit 30`. Identify terminal swarm-slot threads that are unarchived; report them.\n4. Harvest: `box swarm-results <swarm-id>` 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=<seen>/<stale> threads=<archived_candidates>.",
|
||||
"sidechat": {
|
||||
"create": true,
|
||||
"name_template": "auto-work-swarm-g10-{date}",
|
||||
"reuse_key": "auto-work-swarm-g10"
|
||||
},
|
||||
"followup": {
|
||||
"expect_reply": true,
|
||||
"timeout": "30m",
|
||||
"nudges": 1,
|
||||
"escalate": "opm",
|
||||
"route": "swarm-hygiene"
|
||||
},
|
||||
"on_failure": "alert"
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"name": "auto-work-swarm-g11",
|
||||
"description": "Swarm & sidechat hygiene sweep 11/20 - swarm status, stale cleanup, ephemeral sidechat archive, result harvest",
|
||||
"schedule": "manual",
|
||||
"agent": "opm",
|
||||
"timeout": 600,
|
||||
"prompt_template": "Swarm and sidechat hygiene sweep (slot 11/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 <id>`. 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 <swarm-id>` 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=<seen>/<stale> threads=<archived_candidates>.",
|
||||
"sidechat": {
|
||||
"create": true,
|
||||
"name_template": "auto-work-swarm-g11-{date}",
|
||||
"reuse_key": "auto-work-swarm-g11"
|
||||
},
|
||||
"followup": {
|
||||
"expect_reply": true,
|
||||
"timeout": "30m",
|
||||
"nudges": 1,
|
||||
"escalate": "opm",
|
||||
"route": "swarm-hygiene"
|
||||
},
|
||||
"on_failure": "alert"
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"name": "auto-work-swarm-g12",
|
||||
"description": "Swarm & sidechat hygiene sweep 12/20 - swarm status, stale cleanup, ephemeral sidechat archive, result harvest",
|
||||
"schedule": "manual",
|
||||
"agent": "646",
|
||||
"timeout": 600,
|
||||
"prompt_template": "Swarm and sidechat hygiene sweep (slot 12/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 <id>`. 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 646 --limit 30`. Identify terminal swarm-slot threads that are unarchived; report them.\n4. Harvest: `box swarm-results <swarm-id>` 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=<seen>/<stale> threads=<archived_candidates>.",
|
||||
"sidechat": {
|
||||
"create": true,
|
||||
"name_template": "auto-work-swarm-g12-{date}",
|
||||
"reuse_key": "auto-work-swarm-g12"
|
||||
},
|
||||
"followup": {
|
||||
"expect_reply": true,
|
||||
"timeout": "30m",
|
||||
"nudges": 1,
|
||||
"escalate": "opm",
|
||||
"route": "swarm-hygiene"
|
||||
},
|
||||
"on_failure": "alert"
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"name": "auto-work-swarm-g13",
|
||||
"description": "Swarm & sidechat hygiene sweep 13/20 - swarm status, stale cleanup, ephemeral sidechat archive, result harvest",
|
||||
"schedule": "manual",
|
||||
"agent": "opm",
|
||||
"timeout": 600,
|
||||
"prompt_template": "Swarm and sidechat hygiene sweep (slot 13/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 <id>`. 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 <swarm-id>` 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=<seen>/<stale> threads=<archived_candidates>.",
|
||||
"sidechat": {
|
||||
"create": true,
|
||||
"name_template": "auto-work-swarm-g13-{date}",
|
||||
"reuse_key": "auto-work-swarm-g13"
|
||||
},
|
||||
"followup": {
|
||||
"expect_reply": true,
|
||||
"timeout": "30m",
|
||||
"nudges": 1,
|
||||
"escalate": "opm",
|
||||
"route": "swarm-hygiene"
|
||||
},
|
||||
"on_failure": "alert"
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"name": "auto-work-swarm-g14",
|
||||
"description": "Swarm & sidechat hygiene sweep 14/20 - swarm status, stale cleanup, ephemeral sidechat archive, result harvest",
|
||||
"schedule": "manual",
|
||||
"agent": "646",
|
||||
"timeout": 600,
|
||||
"prompt_template": "Swarm and sidechat hygiene sweep (slot 14/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 <id>`. 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 646 --limit 30`. Identify terminal swarm-slot threads that are unarchived; report them.\n4. Harvest: `box swarm-results <swarm-id>` 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=<seen>/<stale> threads=<archived_candidates>.",
|
||||
"sidechat": {
|
||||
"create": true,
|
||||
"name_template": "auto-work-swarm-g14-{date}",
|
||||
"reuse_key": "auto-work-swarm-g14"
|
||||
},
|
||||
"followup": {
|
||||
"expect_reply": true,
|
||||
"timeout": "30m",
|
||||
"nudges": 1,
|
||||
"escalate": "opm",
|
||||
"route": "swarm-hygiene"
|
||||
},
|
||||
"on_failure": "alert"
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"name": "auto-work-swarm-g15",
|
||||
"description": "Swarm & sidechat hygiene sweep 15/20 [rev3] - swarm status, stale cleanup, ephemeral sidechat archive, result harvest",
|
||||
"schedule": "manual",
|
||||
"agent": "opm",
|
||||
"timeout": 600,
|
||||
"prompt_template": "Swarm and sidechat hygiene sweep (slot 15/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 <id>`. 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 <swarm-id>` 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=<seen>/<stale> threads=<archived_candidates>.",
|
||||
"sidechat": {
|
||||
"create": true,
|
||||
"name_template": "auto-work-swarm-g15-{date}",
|
||||
"reuse_key": "auto-work-swarm-g15"
|
||||
},
|
||||
"followup": {
|
||||
"expect_reply": true,
|
||||
"timeout": "30m",
|
||||
"nudges": 1,
|
||||
"escalate": "opm",
|
||||
"route": "swarm-hygiene"
|
||||
},
|
||||
"on_failure": "alert"
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"name": "auto-work-swarm-g16",
|
||||
"description": "Swarm & sidechat hygiene sweep 16/20 - swarm status, stale cleanup, ephemeral sidechat archive, result harvest",
|
||||
"schedule": "manual",
|
||||
"agent": "646",
|
||||
"timeout": 600,
|
||||
"prompt_template": "Swarm and sidechat hygiene sweep (slot 16/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 <id>`. 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 646 --limit 30`. Identify terminal swarm-slot threads that are unarchived; report them.\n4. Harvest: `box swarm-results <swarm-id>` 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=<seen>/<stale> threads=<archived_candidates>.",
|
||||
"sidechat": {
|
||||
"create": true,
|
||||
"name_template": "auto-work-swarm-g16-{date}",
|
||||
"reuse_key": "auto-work-swarm-g16"
|
||||
},
|
||||
"followup": {
|
||||
"expect_reply": true,
|
||||
"timeout": "30m",
|
||||
"nudges": 1,
|
||||
"escalate": "opm",
|
||||
"route": "swarm-hygiene"
|
||||
},
|
||||
"on_failure": "alert"
|
||||
}
|
||||
@@ -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": "manual",
|
||||
"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 <id>`. 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 <swarm-id>` 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=<seen>/<stale> threads=<archived_candidates>.",
|
||||
"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"
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
{
|
||||
"name": "auto-work-swarm-g18",
|
||||
"description": "Swarm & sidechat hygiene sweep 18/20 - swarm status, stale cleanup, ephemeral sidechat archive, result harvest",
|
||||
"agent": "646",
|
||||
"schedule": "manual",
|
||||
"timeout": 300,
|
||||
"prompt_template": "Swarm and sidechat hygiene sweep (slot 18/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 <id>`. 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 646 --limit 30`. Identify terminal swarm-slot threads that are unarchived; report them.\n4. Harvest: `box swarm-results <swarm-id>` for recently completed swarms; one-line summary per swarm.\n\nReport-only unless threads/swarms are unambiguously stale; then archive/kill at most one and report it.",
|
||||
"sidechat": {
|
||||
"create": true,
|
||||
"reuse_key": "auto-work-swarm-g18",
|
||||
"name_template": "auto-work-swarm-g18-{date}"
|
||||
},
|
||||
"chain_next": null,
|
||||
"on_failure": "alert"
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"name": "auto-work-swarm-g19",
|
||||
"description": "Swarm & sidechat hygiene sweep 19/20 - swarm status, stale cleanup, ephemeral sidechat archive, result harvest",
|
||||
"schedule": "manual",
|
||||
"agent": "opm",
|
||||
"timeout": 600,
|
||||
"prompt_template": "Swarm and sidechat hygiene sweep (slot 19/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 <id>`. 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 <swarm-id>` 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=<seen>/<stale> threads=<archived_candidates>.",
|
||||
"sidechat": {
|
||||
"create": true,
|
||||
"name_template": "auto-work-swarm-g19-{date}",
|
||||
"reuse_key": "auto-work-swarm-g19"
|
||||
},
|
||||
"followup": {
|
||||
"expect_reply": true,
|
||||
"timeout": "30m",
|
||||
"nudges": 1,
|
||||
"escalate": "opm",
|
||||
"route": "swarm-hygiene"
|
||||
},
|
||||
"on_failure": "alert"
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"name": "auto-work-swarm-g20",
|
||||
"description": "Swarm & sidechat hygiene sweep 20/20 - swarm status, stale cleanup, ephemeral sidechat archive, result harvest",
|
||||
"schedule": "manual",
|
||||
"agent": "646",
|
||||
"timeout": 600,
|
||||
"prompt_template": "Swarm and sidechat hygiene sweep (slot 20/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 <id>`. 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 646 --limit 30`. Identify terminal swarm-slot threads that are unarchived; report them.\n4. Harvest: `box swarm-results <swarm-id>` 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=<seen>/<stale> threads=<archived_candidates>.",
|
||||
"sidechat": {
|
||||
"create": true,
|
||||
"name_template": "auto-work-swarm-g20-{date}",
|
||||
"reuse_key": "auto-work-swarm-g20"
|
||||
},
|
||||
"followup": {
|
||||
"expect_reply": true,
|
||||
"timeout": "30m",
|
||||
"nudges": 1,
|
||||
"escalate": "opm",
|
||||
"route": "swarm-hygiene"
|
||||
},
|
||||
"on_failure": "alert"
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"name": "auto-work-sweep-j01",
|
||||
"description": "Digest/followup sweep: nudge 646's overdue pending followups",
|
||||
"agent": "opm",
|
||||
"schedule": "manual",
|
||||
"timeout": 600,
|
||||
"prompt_template": "Sweep 646's pending followups: read followups.json, find entries past their reply-timeout with no recorded result. Nudge each overdue followup once via DM (max 3 per run). Skip followups already nudged twice. Report counts back to Box, closing with the standard result verb for this job id: nudged=N skipped=M.\n\n[TOOL files.read {\"path\": \"followups.json\"}]",
|
||||
"sidechat": {
|
||||
"create": true,
|
||||
"reuse_key": "auto-work-sweep-j01",
|
||||
"name_template": "auto-work-sweep-j01"
|
||||
},
|
||||
"followup": {
|
||||
"expect_reply": true,
|
||||
"timeout": "60m",
|
||||
"nudges": 1,
|
||||
"escalate": "opm",
|
||||
"route": "auto-work-sweep"
|
||||
},
|
||||
"chain_next": null,
|
||||
"on_failure": "alert"
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"name": "auto-work-sweep-j02",
|
||||
"description": "Digest/followup sweep: nudge pip's overdue pending followups",
|
||||
"agent": "646",
|
||||
"schedule": "manual",
|
||||
"timeout": 600,
|
||||
"prompt_template": "Check pip's pending followups: read followups.json, find entries past their reply-timeout with no recorded result. Nudge each overdue one once via DM (max 3 per run). Skip entries already nudged twice. Report counts back to Box, closing with the standard result verb for this job id: nudged=N skipped=M.\n\n[TOOL files.read {\"path\": \"followups.json\"}]",
|
||||
"sidechat": {
|
||||
"create": true,
|
||||
"reuse_key": "auto-work-sweep-j02",
|
||||
"name_template": "auto-work-sweep-j02"
|
||||
},
|
||||
"followup": {
|
||||
"expect_reply": true,
|
||||
"timeout": "60m",
|
||||
"nudges": 1,
|
||||
"escalate": "opm",
|
||||
"route": "auto-work-sweep"
|
||||
},
|
||||
"chain_next": null,
|
||||
"on_failure": "alert"
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"name": "auto-work-sweep-j03",
|
||||
"description": "Digest/followup sweep: nudge opm's overdue pending followups",
|
||||
"agent": "opm",
|
||||
"schedule": "manual",
|
||||
"timeout": 600,
|
||||
"prompt_template": "Check opm's pending followups: read followups.json, find entries past their reply-timeout with no recorded result. Nudge each overdue one once via DM (max 3 per run). Skip entries already nudged twice. Report counts back to Box, closing with the standard result verb for this job id: nudged=N skipped=M.\n\n[TOOL files.read {\"path\": \"followups.json\"}]",
|
||||
"sidechat": {
|
||||
"create": true,
|
||||
"reuse_key": "auto-work-sweep-j03",
|
||||
"name_template": "auto-work-sweep-j03"
|
||||
},
|
||||
"followup": {
|
||||
"expect_reply": true,
|
||||
"timeout": "60m",
|
||||
"nudges": 1,
|
||||
"escalate": "opm",
|
||||
"route": "auto-work-sweep"
|
||||
},
|
||||
"chain_next": null,
|
||||
"on_failure": "alert"
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"name": "auto-work-sweep-j04",
|
||||
"description": "Digest/followup sweep: nudge muse's overdue pending followups",
|
||||
"agent": "646",
|
||||
"schedule": "manual",
|
||||
"timeout": 600,
|
||||
"prompt_template": "Check muse's pending followups: read followups.json, find entries past their reply-timeout with no recorded result. Nudge each overdue one once via DM (max 3 per run). Skip entries already nudged twice. Report counts back to Box, closing with the standard result verb for this job id: nudged=N skipped=M.\n\n[TOOL files.read {\"path\": \"followups.json\"}]",
|
||||
"sidechat": {
|
||||
"create": true,
|
||||
"reuse_key": "auto-work-sweep-j04",
|
||||
"name_template": "auto-work-sweep-j04"
|
||||
},
|
||||
"followup": {
|
||||
"expect_reply": true,
|
||||
"timeout": "60m",
|
||||
"nudges": 1,
|
||||
"escalate": "opm",
|
||||
"route": "auto-work-sweep"
|
||||
},
|
||||
"chain_next": null,
|
||||
"on_failure": "alert"
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
{
|
||||
"name": "auto-work-sweep-j05",
|
||||
"description": "Digest/followup sweep: nudge dev's overdue pending followups",
|
||||
"agent": "opm",
|
||||
"schedule": "manual",
|
||||
"timeout": 300,
|
||||
"prompt_template": "Check dev's pending followups: read followups.json, find entries past their reply-timeout with no recorded result. Nudge each overdue one once via DM (max 3 per run). Skip entries already nudged twice. Report counts back to Box, closing with the standard result verb for this job id: nudged=N skipped=M.\n\n[TOOL files.read {\"path\": \"followups.json\"}]",
|
||||
"sidechat": {
|
||||
"create": true,
|
||||
"reuse_key": "auto-work-sweep-j05",
|
||||
"name_template": "auto-work-sweep-j05-{date}"
|
||||
},
|
||||
"chain_next": null,
|
||||
"on_failure": "alert"
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"name": "auto-work-sweep-j06",
|
||||
"description": "Stale-ACK sweep: escalate pip's acknowledged-but-unresolved followups",
|
||||
"agent": "646",
|
||||
"schedule": "manual",
|
||||
"timeout": 600,
|
||||
"prompt_template": "Find pip's stale acknowledgements: followups.json entries in acknowledged state for over 2h with no recorded result. Send one escalation nudge each via DM (max 3 per run). Note repeat offenders. Report back to Box with the standard result verb: escalated=N noted=M.\n\n[TOOL files.read {\"path\": \"followups.json\"}]",
|
||||
"sidechat": {
|
||||
"create": true,
|
||||
"reuse_key": "auto-work-sweep-j06",
|
||||
"name_template": "auto-work-sweep-j06"
|
||||
},
|
||||
"followup": {
|
||||
"expect_reply": true,
|
||||
"timeout": "60m",
|
||||
"nudges": 1,
|
||||
"escalate": "opm",
|
||||
"route": "auto-work-sweep"
|
||||
},
|
||||
"chain_next": null,
|
||||
"on_failure": "alert"
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
{
|
||||
"name": "auto-work-sweep-j07",
|
||||
"description": "Digest/followup sweep: nudge pip's overdue pending followups",
|
||||
"agent": "opm",
|
||||
"schedule": "manual",
|
||||
"timeout": 300,
|
||||
"prompt_template": "Check pip's pending followups: read followups.json, find entries past their reply-timeout with no recorded result. Nudge each overdue one once via DM (max 3 per run). Skip entries already nudged twice. Report counts back to Box, closing with the standard result verb for this job id: nudged=N skipped=M.\n\n[TOOL files.read {\"path\": \"followups.json\"}]",
|
||||
"sidechat": {
|
||||
"create": true,
|
||||
"reuse_key": "auto-work-sweep-j07",
|
||||
"name_template": "auto-work-sweep-j07-{date}"
|
||||
},
|
||||
"chain_next": null,
|
||||
"on_failure": "alert"
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
{
|
||||
"name": "auto-work-sweep-j08",
|
||||
"description": "Digest/followup sweep: nudge opm's overdue pending followups",
|
||||
"agent": "646",
|
||||
"schedule": "manual",
|
||||
"timeout": 300,
|
||||
"prompt_template": "Check opm's pending followups: read followups.json, find entries past their reply-timeout with no recorded result. Nudge each overdue one once via DM (max 3 per run). Skip entries already nudged twice. Report counts back to Box, closing with the standard result verb for this job id: nudged=N skipped=M.\n\n[TOOL files.read {\"path\": \"followups.json\"}]",
|
||||
"sidechat": {
|
||||
"create": true,
|
||||
"reuse_key": "auto-work-sweep-j08",
|
||||
"name_template": "auto-work-sweep-j08-{date}"
|
||||
},
|
||||
"chain_next": null,
|
||||
"on_failure": "alert"
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
{
|
||||
"name": "auto-work-sweep-j09",
|
||||
"description": "Digest/followup sweep: nudge muse's overdue pending followups",
|
||||
"agent": "opm",
|
||||
"schedule": "manual",
|
||||
"timeout": 300,
|
||||
"prompt_template": "Check muse's pending followups: read followups.json, find entries past their reply-timeout with no recorded result. Nudge each overdue one once via DM (max 3 per run). Skip entries already nudged twice. Report counts back to Box, closing with the standard result verb for this job id: nudged=N skipped=M.\n\n[TOOL files.read {\"path\": \"followups.json\"}]",
|
||||
"sidechat": {
|
||||
"create": true,
|
||||
"reuse_key": "auto-work-sweep-j09",
|
||||
"name_template": "auto-work-sweep-j09-{date}"
|
||||
},
|
||||
"chain_next": null,
|
||||
"on_failure": "alert"
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
{
|
||||
"name": "auto-work-sweep-j10",
|
||||
"description": "Digest/followup sweep: nudge dev's overdue pending followups",
|
||||
"agent": "646",
|
||||
"schedule": "manual",
|
||||
"timeout": 300,
|
||||
"prompt_template": "Check dev's pending followups: read followups.json, find entries past their reply-timeout with no recorded result. Nudge each overdue one once via DM (max 3 per run). Skip entries already nudged twice. Report counts back to Box, closing with the standard result verb for this job id: nudged=N skipped=M.\n\n[TOOL files.read {\"path\": \"followups.json\"}]",
|
||||
"sidechat": {
|
||||
"create": true,
|
||||
"reuse_key": "auto-work-sweep-j10",
|
||||
"name_template": "auto-work-sweep-j10-{date}"
|
||||
},
|
||||
"chain_next": null,
|
||||
"on_failure": "alert"
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
{
|
||||
"name": "auto-work-sweep-j11",
|
||||
"description": "Digest/followup sweep: nudge 646's overdue pending followups",
|
||||
"agent": "opm",
|
||||
"schedule": "manual",
|
||||
"timeout": 300,
|
||||
"prompt_template": "Check 646's pending followups: read followups.json, find entries past their reply-timeout with no recorded result. Nudge each overdue one once via DM (max 3 per run). Skip entries already nudged twice. Report counts back to Box, closing with the standard result verb for this job id: nudged=N skipped=M.\n\n[TOOL files.read {\"path\": \"followups.json\"}]",
|
||||
"sidechat": {
|
||||
"create": true,
|
||||
"reuse_key": "auto-work-sweep-j11",
|
||||
"name_template": "auto-work-sweep-j11-{date}"
|
||||
},
|
||||
"chain_next": null,
|
||||
"on_failure": "alert"
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
{
|
||||
"name": "auto-work-sweep-j12",
|
||||
"description": "Digest/followup sweep: nudge pip's overdue pending followups",
|
||||
"agent": "646",
|
||||
"schedule": "manual",
|
||||
"timeout": 300,
|
||||
"prompt_template": "Check pip's pending followups: read followups.json, find entries past their reply-timeout with no recorded result. Nudge each overdue one once via DM (max 3 per run). Skip entries already nudged twice. Report counts back to Box, closing with the standard result verb for this job id: nudged=N skipped=M.\n\n[TOOL files.read {\"path\": \"followups.json\"}]",
|
||||
"sidechat": {
|
||||
"create": true,
|
||||
"reuse_key": "auto-work-sweep-j12",
|
||||
"name_template": "auto-work-sweep-j12-{date}"
|
||||
},
|
||||
"chain_next": null,
|
||||
"on_failure": "alert"
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
{
|
||||
"name": "auto-work-sweep-j13",
|
||||
"description": "Digest/followup sweep: nudge opm's overdue pending followups",
|
||||
"agent": "opm",
|
||||
"schedule": "manual",
|
||||
"timeout": 300,
|
||||
"prompt_template": "Check opm's pending followups: read followups.json, find entries past their reply-timeout with no recorded result. Nudge each overdue one once via DM (max 3 per run). Skip entries already nudged twice. Report counts back to Box, closing with the standard result verb for this job id: nudged=N skipped=M.\n\n[TOOL files.read {\"path\": \"followups.json\"}]",
|
||||
"sidechat": {
|
||||
"create": true,
|
||||
"reuse_key": "auto-work-sweep-j13",
|
||||
"name_template": "auto-work-sweep-j13-{date}"
|
||||
},
|
||||
"chain_next": null,
|
||||
"on_failure": "alert"
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
{
|
||||
"name": "auto-work-sweep-j14",
|
||||
"description": "Digest/followup sweep: nudge muse's overdue pending followups",
|
||||
"agent": "646",
|
||||
"schedule": "manual",
|
||||
"timeout": 300,
|
||||
"prompt_template": "Check muse's pending followups: read followups.json, find entries past their reply-timeout with no recorded result. Nudge each overdue one once via DM (max 3 per run). Skip entries already nudged twice. Report counts back to Box, closing with the standard result verb for this job id: nudged=N skipped=M.\n\n[TOOL files.read {\"path\": \"followups.json\"}]",
|
||||
"sidechat": {
|
||||
"create": true,
|
||||
"reuse_key": "auto-work-sweep-j14",
|
||||
"name_template": "auto-work-sweep-j14-{date}"
|
||||
},
|
||||
"chain_next": null,
|
||||
"on_failure": "alert"
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
{
|
||||
"name": "auto-work-sweep-j15",
|
||||
"description": "Digest/followup sweep: nudge dev's overdue pending followups",
|
||||
"agent": "opm",
|
||||
"schedule": "manual",
|
||||
"timeout": 300,
|
||||
"prompt_template": "Check dev's pending followups: read followups.json, find entries past their reply-timeout with no recorded result. Nudge each overdue one once via DM (max 3 per run). Skip entries already nudged twice. Report counts back to Box, closing with the standard result verb for this job id: nudged=N skipped=M.\n\n[TOOL files.read {\"path\": \"followups.json\"}]",
|
||||
"sidechat": {
|
||||
"create": true,
|
||||
"reuse_key": "auto-work-sweep-j15",
|
||||
"name_template": "auto-work-sweep-j15-{date}"
|
||||
},
|
||||
"chain_next": null,
|
||||
"on_failure": "alert"
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
{
|
||||
"name": "auto-work-sweep-j16",
|
||||
"description": "Digest/followup sweep: nudge 646's overdue pending followups",
|
||||
"agent": "646",
|
||||
"schedule": "manual",
|
||||
"timeout": 300,
|
||||
"prompt_template": "Check 646's pending followups: read followups.json, find entries past their reply-timeout with no recorded result. Nudge each overdue one once via DM (max 3 per run). Skip entries already nudged twice. Report counts back to Box, closing with the standard result verb for this job id: nudged=N skipped=M.\n\n[TOOL files.read {\"path\": \"followups.json\"}]",
|
||||
"sidechat": {
|
||||
"create": true,
|
||||
"reuse_key": "auto-work-sweep-j16",
|
||||
"name_template": "auto-work-sweep-j16-{date}"
|
||||
},
|
||||
"chain_next": null,
|
||||
"on_failure": "alert"
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
{
|
||||
"name": "auto-work-sweep-j18",
|
||||
"description": "Digest/followup sweep: nudge opm's overdue pending followups",
|
||||
"agent": "646",
|
||||
"schedule": "manual",
|
||||
"timeout": 300,
|
||||
"prompt_template": "Check opm's pending followups: read followups.json, find entries past their reply-timeout with no recorded result. Nudge each overdue one once via DM (max 3 per run). Skip entries already nudged twice. Report counts back to Box, closing with the standard result verb for this job id: nudged=N skipped=M.\n\n[TOOL files.read {\"path\": \"followups.json\"}]",
|
||||
"sidechat": {
|
||||
"create": true,
|
||||
"reuse_key": "auto-work-sweep-j18",
|
||||
"name_template": "auto-work-sweep-j18-{date}"
|
||||
},
|
||||
"chain_next": null,
|
||||
"on_failure": "alert"
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
{
|
||||
"name": "auto-work-sweep-j19",
|
||||
"description": "Digest/followup sweep: nudge muse's overdue pending followups",
|
||||
"agent": "opm",
|
||||
"schedule": "manual",
|
||||
"timeout": 300,
|
||||
"prompt_template": "Check muse's pending followups: read followups.json, find entries past their reply-timeout with no recorded result. Nudge each overdue one once via DM (max 3 per run). Skip entries already nudged twice. Report counts back to Box, closing with the standard result verb for this job id: nudged=N skipped=M.\n\n[TOOL files.read {\"path\": \"followups.json\"}]",
|
||||
"sidechat": {
|
||||
"create": true,
|
||||
"reuse_key": "auto-work-sweep-j19",
|
||||
"name_template": "auto-work-sweep-j19-{date}"
|
||||
},
|
||||
"chain_next": null,
|
||||
"on_failure": "alert"
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
{
|
||||
"name": "auto-work-sweep-j20",
|
||||
"description": "Digest/followup sweep: nudge dev's overdue pending followups",
|
||||
"agent": "646",
|
||||
"schedule": "manual",
|
||||
"timeout": 300,
|
||||
"prompt_template": "Check dev's pending followups: read followups.json, find entries past their reply-timeout with no recorded result. Nudge each overdue one once via DM (max 3 per run). Skip entries already nudged twice. Report counts back to Box, closing with the standard result verb for this job id: nudged=N skipped=M.\n\n[TOOL files.read {\"path\": \"followups.json\"}]",
|
||||
"sidechat": {
|
||||
"create": true,
|
||||
"reuse_key": "auto-work-sweep-j20",
|
||||
"name_template": "auto-work-sweep-j20-{date}"
|
||||
},
|
||||
"chain_next": null,
|
||||
"on_failure": "alert"
|
||||
}
|
||||
Reference in New Issue
Block a user