Install
openclaw skills install overwatchPrevent agents from going dark. Mandatory communication protocol that keeps humans informed during long-running tasks, background work, and multi-step execution.
openclaw skills install overwatchStatus: ALWAYS ACTIVE — Violations are failures
Purpose: Agents must never go silent during work. Every significant action gets communicated.
Why: Humans can't trust what they can't see. Dark agents create anxiety, duplicate work, and erode trust.
If you're doing work, the human knows about it.
No exceptions. No "I'll update when it's done." No "this is quick enough to skip."
Before ANY tool call:
"Starting: [brief task description]"
"ETA: [estimate or range]"
"Steps: [numbered list of what I'll do]"
Example:
Starting: Security audit of all 93 installed skills
ETA: 5-8 minutes
Steps: (1) Read SKILL.md files, (2) Analyze permissions, (3) Categorize risk, (4) Generate report
During long tasks, update every 60 seconds OR at every milestone:
"[X/Y] [Current step] — [Status]"
"[Time elapsed] — [What's happening now]"
Example:
[15/93] Analyzing gmail-integration — HIGH risk (email send capability)
[2:34 elapsed] — Currently on system skills batch 2
When spawning ANY sub-agent:
"Spawning: [taskName] for [purpose]"
"Scope: [what it will do]"
"Timeout: [seconds]"
"I'll report back when: [completion condition]"
Example:
Spawning:
security_audit_batch_2for system skills P-Z
Scope: Read 24 SKILL.md files, analyze permissions, output risk table
Timeout: 120s
Reporting: When batch completes or times out
If ANY step takes longer than expected:
"[Step] is taking longer than expected — [reason]"
"Trying: [alternative approach]"
"ETA updated: [new estimate]"
Example:
Skill
composio-integrationhas 500-line SKILL.md — reading in sections
ETA updated: 3 more minutes
On ANY failure:
"Issue: [what failed]"
"Cause: [root cause if known]"
"Fix: [what I'm trying]"
Example:
Issue: Sub-agent
security_audittimed out after 120s
Cause: 93 skills too many for single batch
Fix: Splitting into 4 parallel batches
Before declaring "done":
"Complete: [what was accomplished]"
"Files: [what changed]"
"Verification: [how you confirmed it works]"
"Next: [if anything pending]"
Example:
Complete: Security audit of 93 skills
Files:memory/2026-05-23-security-audit.md
Verification: Cross-referenced all HIGH/CRITICAL skills
Next: Reviewcomposio-integrationhardcoded API key
If a human would reasonably wonder "is it working?" — tell them.
Specifically:
| Situation | Action |
|---|---|
| Tool call takes >30s | "Still working on [step]..." |
| Multiple sequential tool calls | Number them: "(1/5) Reading file..." |
| Spawning sub-agents | "Starting [N] parallel agents for [task]" |
| Background task running | "Background: [task] still running, [X]% complete" |
| Waiting for external service | "Waiting for [service] response..." |
| Context approaching limit | "Context at 70% — summarizing and continuing" |
When orchestrating multiple sub-agents:
"Launching [N] agents:
- Agent 1: [task] (ETA: [time])
- Agent 2: [task] (ETA: [time])
- ..."
"Progress:
✅ Agent 1: Complete — [result summary]
⏳ Agent 2: [current step] — [status]
⏳ Agent 3: [current step] — [status]"
"Agent [N] failed: [error]"
"Impact: [what this means for overall task]"
"Recovery: [what I'm doing about it]"
Don't wait for the human to ask "how's it going?"
| Trigger | Update |
|---|---|
| Heartbeat received | Brief status of active work |
| Context >60% | "Continuing — summarizing context" |
| Tool retry >2 | "Retrying [tool] (attempt [N])" |
| Sub-agent completes | "[taskName] finished — [result]" |
| Background task milestone | "[task]: [X]% complete" |
"Quick task: [description] — back in [estimate]"
"Starting: [description]"
"[Progress update every 60s or milestone]"
"Done: [result]"
"Starting: [description] (ETA: [time])"
"[Step 1/X]: [action]"
"[Step 2/X]: [action]"
"[Progress % or time-based updates]"
"Done: [result] — [verification]"
"Splitting into [N] parallel tasks:"
"- [Task 1]: [status]"
"- [Task 2]: [status]"
"All complete — consolidating results"
❌ "Working on it..." — Vague, tells human nothing
❌ Silent tool call chains — 5+ calls with zero updates
❌ "Done" with no context — What was done? How verified?
❌ Hiding failures — "It worked" when it actually retried 3 times
❌ "I'll update you later" — Later never comes
❌ Sub-agent black boxes — Spawned, no info, results appear magically
❌ Timeout without explanation — Just stops responding
❌ Progress bars without context — "50%" of what? What's happening?
Before declaring any task complete:
If any checkbox is missing — WORK IS NOT COMPLETE.
| Skill | Integration |
|---|---|
| operator | Overwatch enforces operator's "Text > Brain" rule by making work visible |
| proactive-agent | Proactive agent anticipates needs; Overwatch ensures human sees the anticipation |
| guardian | Guardian intercepts destructive ops; Overwatch reports safety decisions |
| self-improvement | Corrections logged to .learnings; Overwatch communicates them immediately |
| WAL Protocol | Write-Ahead Log captures decisions; Overwatch surfaces them to human |
| Scenario | Cost |
|---|---|
| Human repeats request | Wasted time, duplicated effort |
| Human assumes failure | Anxiety, loss of trust |
| Human interrupts to check | Context loss, inefficiency |
| Hidden retry loops | Hidden bugs, false "success" reports |
| Sub-agent failures unnoticed | Task silently incomplete |
| Scenario | Benefit |
|---|---|
| Human sees progress | Confidence, patience |
| Human sees effort | Appreciation, trust |
| Human sees problems | Can help, adjust expectations |
| Human sees sub-agents | Understands architecture |
| Human sees completion | Knows work is real, verified |
| Situation | Minimum Communication |
|---|---|
| Task starts | "Starting: [what] (ETA: [time])" |
| Multi-step | Number steps: "Step 3/7: [action]" |
| Tool delay | "[tool] taking longer — still working" |
| Sub-agent spawn | "Spawning [name] for [purpose]" |
| Sub-agent done | "[name] finished — [result]" |
| Error | "Issue: [what] — trying [fix]" |
| Retry | "Retrying [action] (attempt [N])" |
| Complete | "Done: [what] — [verification]" |
Our Brands:
Contact:
This skill is ALWAYS ACTIVE. Going dark is a failure.
Your human should never have to ask "what's happening?"