How I built a quiet heartbeat for my AI assistant: HEARTBEAT_OK, exact-match silence, and a skipped-busy rule
Description and use
<h1> How I built a quiet heartbeat for my AI assistant: HEARTBEAT_OK, exact-match silence, and a skipped-busy rule </h1> <p>The problem I actually had: I want Ankita — my open-source desktop AI assistant — to watch my projects while I'm away and tell me when something needs attention. But every scheduler demo I've seen ends the same way: the assistant pings you about nothing. "Here's your 9 AM update!" with a list of things you already know. Three of those and you mute the channel. The assistant goes from operator to nagware.</p> <p>The hard part of proactive isn't acting. It's knowing when to
Problem
<h1> How I built a quiet heartbeat for my AI assistant: HEARTBEAT_OK, exact-match silence, and a skipped-busy rule </h1> <p>The problem I actually had: I want Ankita — my open-source desktop AI assistant — to watch my projects while I'm away and tell me when something needs attention. But every scheduler demo I've seen ends the same way: the assistant pings you about nothing. "Here's your 9 AM update!" with a list of things you already know. Three of those and you mute the channel. The assistant goes from operator to nagware.</p> <p>The hard part of proactive isn't acting. It's knowing when to
Outcome
<h1> How I built a quiet heartbeat for my AI assistant: HEARTBEAT_OK, exact-match silence, and a skipped-busy rule </h1> <p>The problem I actually had: I want Ankita — my open-source desktop AI assistant — to watch my projects while I'm away and tell me when something needs attention. But every scheduler demo I've seen ends the same way: the assistant pings you about nothing. "Here's your 9 AM update!" with a list of things you already know. Three of those and you mute the channel. The assistant goes from operator to nagware.</p> <p>The hard part of proactive isn't acting. It's knowing when to
Evidence
How I built a quiet heartbeat for my AI assistant: HEARTBEAT_OK, exact-match silence, and a skipped-busy rule
- Record date: 2026-10-07T11:40:55.148Z