Sleep Snooze

ReviewAudited by ClawScan on May 10, 2026.

Overview

The skill is mostly a local sleep-notification snoozer, but it can automatically reply to senders with your sleep status and schedule despite the main instructions saying messages should be silently queued.

Review this skill before installing if you care about privacy around your sleep schedule. It stores sleeping-hours messages locally, adds persistent cron jobs, and may automatically tell senders that you are asleep and when you wake up. If you install it, inspect the dm-guard behavior, protect the local data directory, and know how to remove the cron entries.

Findings (5)

Artifact-based informational review of SKILL.md, metadata, install specs, static scan signals, and capability signals. ClawScan does not execute the skill or run runtime probes.

What this means

People who message you during sleep hours may automatically be told that you are asleep and when you wake up.

Why it was flagged

This hook can send a provider-visible auto-reply that discloses the user's sleep status and sleep window. That is broader than simply snoozing notifications and conflicts with SKILL.md's instruction to not reply to senders during sleep unless urgent.

Skill content
event.messages.push(`💤 ${senderName}, the user is currently sleeping (${state.sleepStart}–${state.wakeTime} ${state.timezone}). ` + `Your message has been saved and they'll see it in their morning digest at ${state.wakeTime}.`)
Recommendation

Install only if you want automatic sender replies. Otherwise disable or edit the dm-guard hook before use, and confirm the skill's behavior with a test message.

What this means

Other agents may delay or queue their messages while sleep mode is active.

Why it was flagged

The hook injects a sleep-mode bootstrap file into agent context telling agents not to send messages and to use gate.js before sending. This is purpose-aligned but affects all agents during sleep mode.

Skill content
event.context.bootstrapFiles.push({ basename: 'SLEEP_MODE_ACTIVE.md', content: buildSleepNotice(state, QUEUE_SCRIPT) });
Recommendation

Use this only if you want sleep mode to apply globally across OpenClaw agents and providers.

What this means

Private messages received during sleep are stored locally until delivered or reset.

Why it was flagged

The skill persists message contents and sender details in a local SQLite queue for later digest generation.

Skill content
INSERT INTO queue (provider, sender_id, sender_name, message, received_at) VALUES (?, ?, ?, ?, datetime('now'))
Recommendation

Protect the local data directory, avoid installing on shared machines, and periodically clear the queue/history if needed.

What this means

The skill will continue performing scheduled local actions after setup until the cron entries are removed.

Why it was flagged

Setup writes recurring cron jobs so the skill continues to run sleep activation and digest scripts automatically.

Skill content
const sleepJob = `${sleepCron} node ${scriptDir}/set-sleep-mode.js --mode sleep`; ... execSync(`crontab ${tmpFile}`);
Recommendation

Review `crontab -l` after setup and remove the sleep-snooze entries if you uninstall or no longer want automatic operation.

What this means

Installation depends on packages resolved from the npm ecosystem at install time.

Why it was flagged

The supplied install metadata names npm packages without pinned versions in the reviewed artifacts.

Skill content
install:
  - kind: node
    package: better-sqlite3
  - kind: node
    package: node-cron
Recommendation

Install from a trusted registry environment and prefer pinned or reviewed dependency versions where possible.