Power-user scheduler that creates persisted OS-native timers (systemd/launchd/Task Scheduler) which later run user-configured argv command hooks (--pre-cmd, --post-cmd, --on-pong-command, --if-unconfirmed-command) and agent prompts under your user account, without a daemon. Also ships an opt-in --apply migration helper that rewrites the OpenClaw config (with a timestamped backup) to disable native heartbeat polling, and an opt-in vector-tone mode that POSTs intent text to OLLAMA_URL (loopback-only unless POKE_ALLOW_REMOTE_OLLAMA=1). Reply-aware with escalation and quiet hours. Use for time-based requests — "remind me", "wake me", "every morning", "keep poking until I reply". *Linux only for now; mac coming VERY soon. Windows eventually.*

Install

openclaw skills install @plaer1/pokecron

Poke

When to Use

Use poke for reminders, alarms, recurring nudges, deferred agent work, reply-driven escalation, and reminder side effects such as scripts that start before delivery or stop when the user replies.

Core Workflow

  1. Classify the poke style from the user's request.
  2. Read the matching sub-skills/*.md file before building the command.
  3. Check for an existing matching reminder before creating a duplicate.
  4. Use --dry-run for unfamiliar flag combinations.
  5. Forward plausible user replies with poke --reply; read sub-skills/replies.md first when handling replies.

Sub-skill Routing

If making or handling...Read first
Basic one-shot, exact-time, recurring reminders, or deferred taskssub-skills/scheduling.md
"Keep poking until I reply", escalation, rotating tones, heartbeat-style checks, unconfirmed followups, task intervalssub-skills/escalation.md
Pre/post actions, side-effect scripts, wake lights, or stop-on-reply hookssub-skills/stages.md
User replies such as done, cancel, snooze, later, or ambiguous inbound messagessub-skills/replies.md
Quiet hours, active hours, DND, urgent delivery, or "do not wake me" behaviorsub-skills/quiet-hours.md
Multiple channels, dependency chains, or per-channel visibilitysub-skills/multi-channel.md
Listing, showing, cancelling, history, stats, presets, tones, path sets, or state layoutsub-skills/management.md
Inferred promises like "I'll check on that tomorrow" without a precise fire timesub-skills/commitments.md
Migrating OpenClaw heartbeat polling into scheduled poke taskssub-skills/migration.md

Notes

  • --remind is for static reminder text.
  • --task is for deferred agent work and needs --agent.
  • --channel and --target identify where delivery and replies happen.
  • Poke has no ears; inbound user messages must be forwarded explicitly.
  • Command hooks (--pre-cmd, --post-cmd, --on-pong-command, --if-unconfirmed-command) execute real local programs under your user account at scheduled time — only configure hooks with scripts you wrote or explicitly trust.