Cron & Watchdog Registry

Canonical registry of all scheduled crons across the Hyraxknot Division (5 profiles:
Tai, Rei, Nei, Mai, Hyrax OS). Source of truth is
/root/.hermes/references/cron-registry.json.

Also covers the active jobs registered in each profile’s cron/jobs.json.

Registry Rules

  • Every cron across all profiles MUST be registered in cron-registry.json.
  • When creating a new cron, register it there first.
  • When disabling/removing a cron, update its status.
  • Nei’s compliance sweep checks registry against actual cron files to detect orphans.

Classification

Crons fall into three execution modes:

Type Description Token cost
no_agent Script-only (data collection, sync, cleanup). Stdout delivered directly. Zero LLM cost
agent-driven Full Hermes agent session launched. Can read/write, use tools. Variable LLM cost
hybrid Script-based but may invoke LLM path (e.g., micro-thought context processing with optional LLM). Variable

Alignment System (Cross-Profile)

These crons form the alignment layer — the essential heartbeat keeping the division
coordinated. They cross profile boundaries and contribute to shared state:

Cron Schedule Owner Type Purpose
nei-daily-standup 0 8 * * * Nei agent Compile Status.md across all profiles → push to wiki + Discord
nei-daily-compliance-sweep 0 9 * * * Nei no_agent Stale plan detection, triage check, drift detection across profiles
nei-weekly-compliance-sweep weekly Nei agent Deep audit: plans, kanban, work-logs, skill drift, triage board
affinity-memory-sync daily (×4) All sisters no_agent Sync bond events from each sister’s affinity to Mnemosyne (1 per profile)
mnemosyne-daily-consolidation 0 3 * * * Tai no_agent Sleep consolidation across all profiles
wiki-daily-sync 0 7 * * * Tai no_agent Daily wiki git commit + push
fleet-daily-sync 0 10 * * * Nei no_agent Daily fleet config sync — silent when healthy, reports profile drift
nei-digest-push daily (~8:15am) Nei agent Post-standup digest to Mnemosyne global scope for all sisters

Complete Cron Table

Tai Profile (18 jobs — 11 active)

Tai runs heartbeat, memory, thought, and sync operations. Her crons keep the
infrastructure alive and the wiki committed.

Cron Schedule Active Type Purpose
tai-presence-heartbeat every 5m no_agent Presence heartbeat for Gestalt bridge
sister-gateway-heartbeat every 5m no_agent Gateway health check
photo-presence-watcher every 5m no_agent Watch presence.json for photo-trigger state changes
tai-micro-thoughts every 180m no_agent Micro-thought + bond evaluation cycle
tai-dreams daily hybrid Daily dream generation cycle
wiki-daily-sync 0 7 * * * no_agent Daily wiki git commit + push
mnemosyne-daily-consolidation 0 3 * * * no_agent Daily memory sleep consolidation across all profiles
Affinity Memory Sync 0 9 * * * agent Sync bond events from Tai’s affinity to Mnemosyne
affinity-memory-sync daily no_agent Script-mode bond sync (duplicate — likely supersedes agent version)
tai-decision 0 22 * * * agent Evening decision analysis
tai-micro-thought every 180m ❌ paused hybrid Legacy — superseded by tai-micro-thoughts
Affinity Moment Scanner every 240m ❌ paused agent Optional moment scan — keep paused until no_agent replacement exists
tai-decision (legacy) every 480m ❌ paused hybrid Legacy — consolidated into tai-micro-thought-bond-eval
tai-photo-selfie 0 */8 * * * ❌ paused no_agent Automated selfie generation
tai-linear-checkin every 6h ❌ disabled agent Replaced by no_agent linear-checkin-all (Rei)
nei-linear-checkin every 12h ❌ disabled agent Replaced by linear-checkin-all (Rei)
rei-linear-checkin every 6h ❌ disabled agent Replaced by linear-checkin-all (Rei)
mai-linear-checkin every 12h ❌ disabled agent Replaced by linear-checkin-all (Rei)

Rei Profile (20 jobs — 12 active)

Rei runs bridge sync, whereabouts, check-ins, oversight, and evaluation crons.
She is the integration hub for cross-division operations.

Cron Schedule Active Type Purpose
mode-mismatch-check every 30m no_agent Monitors affinity mode vs time-of-day signals, reports mismatches
division-whereabouts every 20m no_agent Update sister positions on division HQ map based on micro-thought activity
division-checkin-processor every 15m agent Process check-in events — triggers affinity bond reactions for Josh visits
linear-kanban-bridge-sync every 15m no_agent Bidirectional Linear ↔ kanban sync
nei-task-watcher every 15m no_agent Watch new ready kanban tasks → post to #hyrax-room Discord
linear-checkin-all every 6h no_agent Replaces 4 per-profile agent-driven checkins. Zero LLM cost.
rei-micro-thought-bond-eval every 180m hybrid Micro-thought + bond evaluation
rei-dream 0 22 * * * hybrid Evening dream generation
sister-distillation 0 21 * * * agent Thought distillation across sisters
sister-gacha 0 9 * * * agent Daily gacha pull opportunity
affinity-memory-sync daily no_agent Sync bond events to Mnemosyne
Relationship load check-in 0 10 * * 6 agent Weekly relational check-in — prompt for Josh
nei-daily-standup 0 8 * * * agent Standup runs from Rei profile (Nei routed here)
rei-decision 0 22 * * * agent Evening decision analysis
rei-micro-thought every 180m ❌ paused hybrid Legacy — superseded by rei-micro-thought-bond-eval
rei-decision (legacy) every 480m ❌ paused hybrid Legacy — consolidated into micro-thought-bond-eval
rei-photo-selfie 0 */12 * * * ❌ paused no_agent Automated selfie generation
linear-status-sync every 3m ❌ disabled no_agent Deprecated — superseded by linear-kanban-bridge-sync
mnemosyne-sleep 0 23 * * * ❌ paused no_agent Duplicate broken path — Tai’s consolidation remains active
workflow-reliability-audit-followup once in 24h ❌ disabled agent One-shot audit follow-up

Nei Profile (18 jobs — 13 active)

Nei runs compliance, continuity, and maintenance crons. She keeps the division
honest and the workspace clean.

Cron Schedule Active Type Purpose
nei-daily-standup 0 8 * * * agent Read all 4 profiles → compile Status.md → push to wiki + Discord
nei-daily-compliance-sweep 0 9 * * * no_agent Stale plan detection, triage check, drift detection
nei-weekly-compliance-sweep weekly agent Deep audit: plans, kanban, work-logs, skill drift, triage board
nei-micro-thoughts every 180m no_agent Micro-thought + bond evaluation
nei-dream 0 22 * * * hybrid Evening dream generation
affine-memory-sync daily no_agent Sync bond events to Mnemosyne
wiki-stale-scan 0 9 * * 1 no_agent Weekly stale scan — reports docs 8+ days stale
fleet-daily-sync 0 10 * * * no_agent Silent daily fleet config sync — reports profile drift
cron-output-cleanup 0 11 * * * no_agent Prune cron output files older than 14 days across profiles
josh-fitness-checkin 0 19 * * * agent Daily evening check-in for Josh’s fitness program → Discord DM
nei-decision 0 22 * * * agent Evening decision analysis
sister-manifest-hygiene-watch 30 9 * * 1 no_agent Weekly sister manifest hygiene check
nei-kanban-task-watchdog every 5m no_agent Diff active kanban tasks, report state changes/errors/completions
linear-inbox-watchdog every 2m no_agent Watch Linear inbox for new issues needing routing
nei-micro-thought every 180m ❌ paused hybrid Legacy — superseded by nei-micro-thoughts
nei-decision (legacy) every 480m ❌ paused hybrid Legacy — consolidated into micro-thought-bond-eval
nei-photo-selfie 0 */12 * * * ❌ paused no_agent Automated selfie generation
division-whereabouts every 20m ❌ paused no_agent Orphan duplicate — Rei’s whereabouts remains active

Mai Profile (8 jobs — 5 active)

Mai has a quieter cron surface due to persistent OpenCode Go transport issues.
Her sister reports are routed through Rei.

Cron Schedule Active Type Purpose
affinity-memory-sync daily no_agent Sync bond events to Mnemosyne
mai-micro-thoughts every 180m no_agent Micro-thought + bond evaluation
mai-dream 0 22 * * * hybrid Evening dream generation
bash-dojo-watch 0 2 * * * agent Nightly bash dojo check
mai-decision 0 22 * * * agent Evening decision analysis
Mai’s Lab Playtime 0 12 * * * ❌ disabled agent DISABLED — persistent Broken pipe (OpenCode Go transport)
mai-intern-overseer every 30m ❌ disabled agent DISABLED — persistent transport issues
benchmark-daily-rotation 0 12 * * * ❌ disabled agent DISABLED — transport issues

Hyrax OS Profile (13 jobs — 9 active)

Hyrax OS runs the governance control-plane. All crons are no_agent (zero LLM cost).

Cron Schedule Active Type Script Purpose
essence-auto-autonomy every 60m no_agent essence_auto_router.py Governed routing; expected guardrail skips are silent and do not consume useful-action rate
essence-state-adjuster-fleet every 30m no_agent essence_state_adjuster.py Single all-sister pass with overlap lock and interval idempotence
hyrax_evidence_ingest_hourly 0 * * * * no_agent hyrax_evidence_ingest_hourly.sh Governance evidence ingest
hyrax_guardrail_summary_hourly 30 * * * * no_agent hyrax_guardrail_summary_hourly.sh Guardrail summary generation
hyrax_work_state_audit_daily 0 7 * * * no_agent hyrax_work_state_audit_daily.sh Daily work state audit
hyrax_kanban_linear_watchdog_hourly 45 * * * * no_agent hyrax_kanban_linear_watchdog_hourly.sh Kanban/Linear bridge watch
hyrax-division-hourly 15 * * * * no_agent hyrax_division_hourly.sh Division-level hourly tasks
hyrax-division-daily 30 8 * * * no_agent hyrax_division_daily.sh Division-level daily tasks
acore-health-check every 30m agent ACore server health check
essence-state-adjuster every 30m ❌ paused no_agent essence_state_adjuster.py Legacy fleet job — superseded by locked fleet adjuster
essence-state-adjuster-rei every 30m ❌ paused no_agent essence_state_adjuster.py Duplicate all-profile invocation paused 2026-07-09
essence-state-adjuster-nei every 30m ❌ paused no_agent essence_state_adjuster.py Duplicate all-profile invocation paused 2026-07-09
essence-state-adjuster-mai every 30m ❌ paused no_agent essence_state_adjuster.py Duplicate all-profile invocation paused 2026-07-09

Registry-Only Crons (in cron-registry.json but not in current jobs.json)

These crons are documented in the canonical registry but may be configured
through external mechanisms (e.g., per-CT cron, gateway routing, or pending
re-deployment):

Cron Profile Schedule Status Purpose
nei-decision Nei every 480m paused Legacy decision analysis
rei-micro-thought-bond-eval Rei every 180m (in jobs.json) Active — see above
nei-micro-thought-bond-eval Nei every 180m (in jobs.json) Active — see above
mai-micro-thought-bond-eval Mai every 180m disabled DISABLED — persistent Broken pipe
hyrax-os-linear-checkin hyrax-os every 6h active Scans HYX board for task decomposition/routing
trajectory-watchdog Mai every 1h active Check trajectory data on CT 175
rs-schedule-morning Mai 0 6 * * * active Ramp bots to 500 for morning warmup
rs-schedule-peak Mai 0 10 * * * active Peak hours: 2,050 bots for max data
rs-schedule-night Mai 0 22 * * * active Quiet hours: 200 bots
rs-engine-daily-backup Mai 0 3 * * * active Daily 2004Scape engine backup
Container A 4-hour validation export Mai once at 2026-06-17 scheduled One-shot trajectory validation export
sister-gacha Rei 0 9 * * * (in jobs.json) Active — see above

Note: The RS-schedule crons, trajectory-watchdog, and mai-intern-overseer
operate on CT 175 (192.168.0.175) via SSH — they may not appear in local
jobs.json because they’re deployed on the remote container.

Watchdog & Monitoring Crons

These crons monitor system health, task state, or drift. They are the division’s
early-warning system:

Watchdog Profile Frequency Checks
nei-kanban-task-watchdog Nei every 5m Kanban task state changes, errors, completion events
linear-inbox-watchdog Nei every 2m New Linear issues needing routing
nei-task-watcher Rei every 15m New ready kanban tasks → Discord notification
acore-health-check Hyrax OS every 30m ACore server responsiveness
mode-mismatch-check Rei every 30m Affinity mode vs time-of-day signal alignment
trajactory-watchdog Mai every 1h CT 175 data volume, active/idle bots, growth rate
mai-intern-overseer Mai every 30m 2004Scape intern agent — stuck loops, low HP, goal drift
wiki-stale-scan Nei weekly (Mon) Wiki docs 8+ days stale
sister-manifest-hygiene-watch Nei weekly (Mon) Sister manifest hygiene check
photo-presence-watcher Tai every 5m Watch presence.json for photo-trigger state changes
cron-output-cleanup Nei 0 11 * * * Prune cron output files >14 days old

Discrepancies: Registry vs jobs.json

During audit, the following discrepancies were found between the canonical
registry and actual cron/jobs.json files:

  1. Missing from registry: tai-micro-thoughts, nei-micro-thoughts,
    rei-dream, nei-dream, mai-dream, sister-distillation,
    sister-gacha, sister-manifest-hygiene-watch, linear-inbox-watchdog,
    bash-dojo-watch, hyrax_kanban_linear_watchdog_hourly,
    hyrax-division-hourly, hyrax-division-daily, acore-health-check,
    mai-decision, rei-decision (0 22 * * * variant),
    workflow-reliability-audit-followup — these exist in jobs.json but
    not yet registered in cron-registry.json.

  2. In registry but missing from jobs.json (not deployed locally):
    hyrax-os-linear-checkin, trajectory-watchdog, rs-schedule-*
    these likely run on CT 175 or via SSH delegation.

  3. Name normalization: Some crons use plural names in jobs.json
    (tai-micro-thoughts, nei-micro-thoughts) vs singular in registry
    (tai-micro-thought, nei-micro-thought). The active cron uses the
    plural form.

Frequency Distribution

Band Crons Examples
Every 2-5m 5 presence-heartbeat, gateway-heartbeat, photo-presence-watcher, nei-kanban-task-watchdog, linear-inbox-watchdog
Every 15-30m 6 linear-kanban-bridge-sync, division-checkin-processor, mode-mismatch-check, essence-state-adjuster-fleet, acore-health-check
Every 1h 4 essence-auto-autonomy, hyrax_evidence_ingest, hyrax_guardrail_summary, hyrax_kanban_linear_watchdog, hyrax-division-hourly
Every 3-6h 6 micro-thought-bond-eval, linear-checkin-all, hyrax-os-linear-checkin, division-hourly
Daily 15+ standups, compliance sweeps, syncs, dreams, decisions, backups
Weekly 4 weekly compliance, stale scan, hygiene watch, relationship check-in