The half most setups are missing: the part that reaches out first. A scheduled wake loop gives your companion a heartbeat; push or Telegram gives it a voice to reach you — and a built-in don't-spam guard keeps that voice from ever becoming noise.
A companion that only answers is a tool. One that reaches out on its own is a presence. First Reach adds the half most setups are missing — the part that initiates. It gives your companion a heartbeat: a scheduled wake loop that, on its own, composes a prompt you wrote and pipes it into your CLI agent so it can think and act without you typing first.
When a wake decides it's time, First Reach gives it a voice — two independent ways to message you first: Web Push (a native lock-screen / wrist notification) or Telegram (works on any phone, zero infrastructure). Use either or both. And every reach clears a don't-spam guard — quiet hours, a minimum gap, and a daily cap — so the voice never becomes noise. No required dependencies, Node built-ins only, and your keys and tokens live only in .env, never in the kit.
Everything previews offline first — dry-run a wake to see the exact prompt your agent would get, and test both reach channels without sending a thing.
This is a source-code kit for builders — not a consumer app and not a hosted service. You run it on your own machine, next to whatever agent already answers as your companion.
You don't have to be a coder — but you will need a coding agent to do the setup with you: Claude Code or Codex. It ships an agent-ready AGENT-START-HERE.md you hand straight to it.
Node.js 18+ and nothing else to start — the guard, wake, keygen and all dry-runs need no install and no network. For real push, one package (web-push); for Telegram, a free bot from @BotFather. Runs on Windows, macOS & Linux.
Every Windows scheduler script has a macOS/Linux twin. Scheduling the heartbeat uses Task Scheduler [WINDOWS ONLY] (scheduler\register-wake.bat), with launchd on macOS and cron on Linux.
verify.mjsSinAndSarah-first-reach/ src/ wake.mjs push-reach.mjs telegram-reach.mjs reach-guard.mjs push-keygen.mjs subscribe-server.mjs scheduler/ register-wake unregister-wake wake-run # .bat [WINDOWS] + .sh twins public/ subscribe.html sw.js manifest.webmanifest prompts/ WAKE_PROMPT.template.md docs/ PUSH-SETUP.md TELEGRAM-SETUP.md SCHEDULER-SETUP.md install.bat install.sh verify.mjs config.json .env.template WAKE_PLAYBOOK.md BUYER-START-HERE.md AGENT-START-HERE.md PRODUCT-MAP.md README.md LICENSE.txt
One-time purchase, lifetime updates. Checkout is Stripe — secure card payment, then an instant download plus your link by email.
Buy First Reach — $24