Automated recovery for OpenClaw browser environment failures.
When a browser tool call fails, follow this workflow:
scripts/check_state.sh to inspect current statescripts/recover.sh to clean up| Error Pattern | Likely Cause | Recovery Action |
|---|---|---|
| --------------- | -------------- | ----------------- |
Target closed | Stale CDP connection | recover.sh --kill-processes |
ECONNREFUSED on port 9222/18800 | Port conflict | recover.sh --clear-ports |
timeout during browser.start | Lock file conflict | recover.sh --clear-locks |
| Multiple chromium processes | Zombie processes | recover.sh --full |
Profile in use | Stale lock files | recover.sh --clear-locks |
Diagnose browser environment without making changes.
Usage:
bash scripts/check_state.sh
Output:
Clean up stale browser resources.
Usage:
# Full recovery (default)
bash scripts/recover.sh
# Specific actions
bash scripts/recover.sh --kill-processes
bash scripts/recover.sh --clear-ports
bash scripts/recover.sh --clear-locks
# Explicit full recovery
bash scripts/recover.sh --full
Actions:
Configuration:
~/.openclaw/config/openclaw.json for browser settingsSession-level tracking:
Implementation:
Attempt 1: browser fails → diagnose → recover → retry → success ✓
Attempt 2: browser fails → diagnose → recover → retry → fails → STOP
When to stop:
DO:
~/.openclaw/browserDON'T:
~/.config/chrome, etc.)kill -9 without verificationSee references/safety.md for detailed guidelines.
If recovery fails or behaves unexpectedly:
check_state.sh to diagnose~/.openclaw/logs/~/.openclaw/config/openclaw.jsonScripts automatically read OpenClaw config for:
browser.debugPort)browser.userDataDir)See references/configuration.md for:
User: "Open https://example.com"
Assistant: [calls browser tool]
Error: "ECONNREFUSED on port 9222"
Assistant: Detected port conflict. Running recovery...
[runs check_state.sh]
[runs recover.sh --clear-ports]
[waits 2 seconds]
[retries browser tool]
Success: Browser opened https://example.com
共 1 个版本
暂无安全检测报告