72 lines
2.7 KiB
Markdown
72 lines
2.7 KiB
Markdown
---
|
|
title: Multi-Host Cron Topology
|
|
created: '2026-05-27'
|
|
updated: '2026-05-27'
|
|
type: concept
|
|
namespace: personal
|
|
tags: [system, agent, eagle, kraken, pipeline, sync]
|
|
confidence: medium
|
|
sources: []
|
|
---
|
|
|
|
# Multi-Host Cron Topology
|
|
|
|
Synthesis of how scheduled jobs are distributed across Eagle and Kraken.
|
|
Co-occurs in [[tech/hermes-eagle-mac]], [[tech/hermes-docker-kraken]],
|
|
[[concepts/watchlist-automation]], and [[personal-os-agent-rules]].
|
|
|
|
## Design Principle
|
|
|
|
Jobs run on the host closest to their data. Eagle handles
|
|
agent-intelligence tasks (briefs, wiki curation). Kraken handles
|
|
media-pipeline tasks (watchlist, arr stack). Duplication is a bug.
|
|
|
|
## Eagle (Mac M4) — Agent Jobs
|
|
|
|
| Job | Schedule | Purpose |
|
|
|-----|----------|---------|
|
|
| `wiki-curation` | daily 02:00 | Crystallise vault → wiki (llm-wiki skill) |
|
|
| `vault-enrichment` | daily 03:00 | Enrich personal/family notes |
|
|
| `cross-enrichment` | daily 04:00 | Cross-namespace enrichment + memory curation |
|
|
| `proactive-research` | Sat 05:00 | Proactive gap research |
|
|
| `data-pipeline` | 30min, workdays | sync.js + generate-status.js → status.md |
|
|
| `daily-brief` | workday morning | Morning brief to Zulip |
|
|
| `inbox-triage` | workday noon | Asana inbox triage |
|
|
| `weekly-review` | Fri evening | Weekly review |
|
|
|
|
Eagle crons are Hermes agent jobs — require LLM, vault access,
|
|
Asana context. All run via Hermes native (not Docker). See
|
|
[[tech/hermes-eagle-mac]].
|
|
|
|
## Kraken (RPi5) — Pipeline Jobs
|
|
|
|
| Job | Schedule | Purpose |
|
|
|-----|----------|---------|
|
|
| `watchlist-nightly` | daily 01:00 | process-thumbs + resolve + sync-down/up |
|
|
| `watchlist-discover` | Sun 09:00 | KP API top films → watchlist Новинки |
|
|
| `on-download-complete` | event-triggered | media-pipeline: sort + Jellyfin rescan |
|
|
|
|
Kraken crons are shell scripts or Python3 — deterministic, no LLM.
|
|
Run via Hermes cron on Kraken Hermes instance (port 8642, Docker).
|
|
See [[tech/hermes-docker-kraken]] and [[concepts/watchlist-automation]].
|
|
|
|
## Migration History
|
|
|
|
- 2026-05-27: `watchlist-nightly` and `watchlist-discover` moved from
|
|
Eagle to Kraken. Eagle was running them via SSH to Kraken which was
|
|
fragile and required Eagle's network path to Kraken to be stable.
|
|
Running on Kraken directly eliminates that dependency.
|
|
|
|
## Pitfall: Job Duplication
|
|
|
|
If the same shell-script job runs on both Eagle and Kraken, the
|
|
Radarr/Sonarr API sees double requests. Symptom: duplicate ⬇️
|
|
entries or double-adds. Check: `hermes cronjob list` on both hosts.
|
|
|
|
## See Also
|
|
|
|
- [[personal-os-agent-rules]] — Eagle's rules and allowed writes
|
|
- [[tech/hermes-eagle-mac]] — Eagle Hermes config
|
|
- [[tech/hermes-docker-kraken]] — Kraken Hermes Docker setup
|
|
- [[concepts/watchlist-automation]] — Full watchlist flow
|