-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathopenclaw.plugin.json
More file actions
80 lines (80 loc) · 2.76 KB
/
openclaw.plugin.json
File metadata and controls
80 lines (80 loc) · 2.76 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
{
"id": "task-watchdog",
"name": "Task Watchdog",
"description": "Dual-path notification architecture: soft nudge (system event injection) + forced heartbeat delivery for critical alerts. Tracks silence, consecutive tool calls, subagent failures, and exec abnormalities.",
"activation": {
"onStartup": true
},
"configSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"subagentNotifyOn": {
"type": "array",
"items": {
"type": "string",
"enum": ["error", "timeout", "killed", "reset", "deleted"]
},
"default": ["error", "timeout", "killed"],
"description": "Subagent outcomes that trigger a notification injection"
},
"execNotifyOnAbnormal": {
"type": "boolean",
"default": true,
"description": "Whether to inject notification on exec abnormal exit (non-zero exit code, timeout, OOM)"
},
"injectionTtlMs": {
"type": "integer",
"minimum": 5000,
"maximum": 600000,
"default": 300000,
"description": "TTL for next-turn injection messages (default 5 minutes)"
},
"heartbeatPatrol": {
"type": "boolean",
"default": false,
"description": "Enable heartbeat-based patrol (default false). Only effective when timerPatrol is disabled."
},
"timerPatrol": {
"type": "boolean",
"default": true,
"description": "Enable gateway_start timer-based patrol (default true). When enabled, heartbeat patrol is skipped."
},
"timerPatrolIntervalMs": {
"type": "integer",
"minimum": 30000,
"maximum": 600000,
"default": 120000,
"description": "Timer patrol interval in milliseconds (default 2 minutes)"
},
"staleThresholdMs": {
"type": "integer",
"minimum": 60000,
"maximum": 7200000,
"default": 1800000,
"description": "How long a running task is considered stale (default 30 minutes)"
},
"consecutiveToolCallThreshold": {
"type": "integer",
"minimum": 2,
"maximum": 20,
"default": 5,
"description": "Number of consecutive tool calls without a reply before triggering a nudge (default 5)"
},
"subagentConsecutiveThreshold": {
"type": "integer",
"minimum": 5,
"maximum": 50,
"default": 15,
"description": "Consecutive tool call threshold for subagent sessions (default 15)"
},
"silenceThresholdMs": {
"type": "integer",
"minimum": 60000,
"maximum": 1800000,
"default": 180000,
"description": "How long after a user message without reply before triggering a silence nudge (default 3 minutes)"
}
}
}
}