{"version":"2.1.119","anchor":"catch-up-routine","canonical_anchor":"catch-up-routine","heading":"Catch-Up Routine","tier":null,"area":null,"scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.119\/e\/catch-up-routine","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.119","markdown":"### Catch-Up Routine\n\n**What**\n\nA periodic ambient awareness system that checks on tracked priorities every 2 hours during work hours.\n\n**Details**\n\n- Fires every 2 hours via cron (`0 *\/2 * * *`)\n- Respects configurable quiet hours (default: 9am-5pm Mon-Fri) \u2014 silently exits outside that window\n- Maintains a persistent priority list in `.claude\/catch-up-state.json` tracking: `priorities`, `lastSnapshot`, `lastRunAt`, and `noiseFloor`\n- On first run, bootstraps 2-3 priorities from `CLAUDE.md` and connected tools\n- For each priority: checks if state has changed since last snapshot across source control, chat, email, calendar, docs, and issue tracking\n- Triages findings into: assistant-can-act, user-should-act, FYI, or suppress\n- When calendar events are found, dynamically schedules one-shot `\/pre-meeting-checkin` tasks 2-15 minutes before each event\n- If nothing is actionable, outputs `\"Nothing actionable.\"` and the main agent won't relay it\n- Learns over time: promotes new items, prunes resolved ones, demotes unchanged items\n\n**Evidence**\n\nCatch-up routine (search for `\"catch-up-state.json\"`, `\"\/catch-up\"`)"}