macOS Logging
OpenClaw logging: rolling diagnostics file log + unified log privacy flags
Rolling diagnostics file log (Debug pane)
OpenClaw routes macOS app logs through swift-log (unified logging by default) and can write a local, rotating file log to disk when you need a durable capture.
- Verbosity: Debug pane β Logs β App logging β Verbosity
- Enable: Debug pane β Logs β App logging β "Write rolling diagnostics log (JSONL)"
- Location: ''~/Library/Logs/OpenClaw/diagnostics.jsonl'' (rotates automatically; old files are suffixed with ''.1'', ''.2'', β¦)
- Clear: Debug pane β Logs β App logging β "Clear"
Notes:
- This is off by default. Enable only while actively debugging.
- Treats file as sensitive; don't share it without review.
Unified logging private data on macOS
Unified logging redacts most payloads unless a subsystem opts into ''privacy -off''. Per Peter's write-up on macOS ''logging privacy shenanigans'' (2025) this is controlled by a plist in ''/Library/Preferences/Logging/Subsystems/'' keyed by subsystem name. Only new log entries pick up the flag, so enable it before reproducing an issue.
Enable for OpenClaw (`bot.molt`)
- Write the plist to a temp file first, then install it atomically as root:
cat '<<''EOF'' >'/tmp/bot.molt.plist
'<?xml version="1.0" encoding="UTF-8"?>'
'<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">'
'<plist version="1.0">'
'<dict>'
'<key>'DEFAULT-OPTIONS'</key>'
'<dict>'
'<key>'Enable-Private-Data'</key>'
'<true/>'
'</dict>'
'</dict>'
'</plist>'
EOF
sudo install -m 644 -o root -g wheel /tmp/bot.molt.plist /Library/Preferences/Logging/Subsystems/bot.molt.plist- No reboot is required; logd notices the file quickly, but only new log lines will include private payloads.
- View richer output with the existing helper, e.g. ''./scripts/clawlog.sh --category WebChat --last 5m''.
Disable after debugging
- Remove the override: ''sudo rm /Library/Preferences/Logging/Subsystems/bot.molt.plist''.
- Optionally run ''sudo log config --reload'' to force logd to drop the override immediately.
- Remember this surface can include phone numbers and message bodies; keep the plist in place only while you actively need the extra detail.