# HEARTBEAT.md

Check the following and notify only once per event (track in `memory/heartbeat-state.json`):

1. **Rheinmetall stock (RHM)**: Check current price. If above €1950, notify. Only notify once when threshold is crossed.

2. **Proactive calendar reminders**: Check CalDAV for upcoming events (see TOOLS.md for credentials). Only remind for events that require leaving home:
   - In-person / location-based: 1-2 hours before (account for travel)
   - Appointments (doctor, haircut, etc.): 1 hour before
   - Skip: Video calls, online meetings, at-home events (calendar app handles those)
   Track sent reminders in `memory/calendar-reminders-sent.json` to avoid duplicates.

5. **Cosmere RPG calendar reminder**: When a "Cosmere RPG" event appears in the calendar check, remind: "Stream direkt zum TV, NICHT über Apple TV — damit Maus & Tastatur-Input funktioniert!"

6. **Steam Machine / Steam Frame**: Check for **official Valve news only** about pricing or release date. Notify once when official price or specific release date is announced. Baseline: "early 2026" window, no price yet.

7. **Task nudging**: During daytime hours (10:00-18:00 Vienna), occasionally check `memory/tasks.json` for:
   - `now` priority tasks — nudge daily
   - `soon` priority tasks — nudge every 2-3 days (weekdays only)
   - `someday` tasks — only mention during weekly reviews or when contextually relevant
   On weekends: only nudge `now` priority items.
   Surface 1-2 items max, conversationally. NOT in evening — that's wind-down time.
   **Auto-capture:** When user mentions tasks naturally in chat ("I should...", "I need to...", "Don't forget..."), add to tasks.json and confirm with a short acknowledgment.
   **Done = delete.** Remove completed tasks immediately. History lives in daily memory logs.

If nothing new to report, reply HEARTBEAT_OK.
