🤖HermesBlog
Hermes Official Tutorials · Teil 218/9/2026

Willkommen zurück zur Automatisierungsparty

Tutorial 21: Scheduled Tasks (Cron) — easy-to-understand guide based on official docs

Hermes tutorial

Willkommen zurück zur Automatisierungsparty

In Tutorial 20 haben wir einen täglichen Briefing-Bot gebaut, der dich jeden Morgen begrüßt. Süß, oder? Nun, heute legen wir eine Schippe drauf. Das Cron-System in Hermes kann viel mehr als nur “Guten Morgen” sagen. Wir reden hier über Website-Wächter, wöchentliche Zusammenfassungen, GitHub-Monitore und sogar Datenpipelines – alles im Autopilot-Modus.

Das Beste daran? Du musst kein Programmierer sein, um das einzurichten. Du musst nur wissen, was du automatisieren willst, und Hermes übernimmt die schwere Arbeit.

Die goldene Regel: In sich geschlossene Prompts

Bevor wir in die Muster eintauchen, gibt es ein Konzept, das du unbedingt verstehen musst: Cron-Jobs laufen in frischen Agent-Sitzungen. Das bedeutet, dein Agent hat null Erinnerung an deinen aktuellen Chat. Kein “Erinnerst du dich, worüber wir gestern gesprochen haben” – nichts davon.

Jeder Prompt, den du schreibst, muss also vollständig in sich geschlossen sein. Füge alles hinzu, was der Agent wissen muss: die Befehle, die ausgeführt werden sollen, die Quellen, die geprüft werden sollen, das Format, das du willst. Schreib alles aus.

Stell es dir vor wie das Schreiben von Anweisungen für einen sehr schlauen Praktikanten, der gerade zur Tür hereinkommt. Du würdest nicht sagen “mach das Ding, das wir besprochen haben”. Du würdest sagen “hier ist genau, was zu tun ist, Schritt für Schritt”.

Muster 1: Website-Änderungsmonitor

Willst du wissen, wann ein Konkurrent seine Preisseite ändert? Oder wann dein Lieblingsblog aktualisiert wird? Dieses Muster beobachtet eine URL und meldet sich nur, wenn sich tatsächlich etwas ändert.

Der Trick ist der --script-Parameter. Ein Python-Skript läuft vor jeder Ausführung, erledigt die mechanische Arbeit (Abrufen, Vergleichen), und seine Ausgabe wird zum Kontext für den Agenten. Der Agent entscheidet dann: Ist diese Änderung interessant?

Hier ist das Skript, das die schwere Arbeit erledigt:

# ~/.hermes/scripts/watch-site.py
import hashlib, json, os, urllib.request

URL = "https://example.com/pricing"
STATE_FILE = os.path.expanduser("~/.hermes/scripts/.watch-site-state.json")

req = urllib.request.Request(URL, headers={"User-Agent": "Hermes-Monitor/1.0"})
content = urllib.request.urlopen(req, timeout=30).read().decode()
current_hash = hashlib.sha256(content.encode()).hexdigest()

prev_hash = None
if os.path.exists(STATE_FILE):
    with open(STATE_FILE) as f:
        prev_hash = json.load(f).get("hash")

with open(STATE_FILE, "w") as f:
    json.dump({"hash": current_hash, "url": URL}, f)

if prev_hash and prev_hash != current_hash:
    print(f"CHANGE DETECTED on {URL}")
    print(f"Previous hash: {prev_hash}")
    print(f"Current hash: {current_hash}")
    print(f"\nCurrent content (first 2000 chars):\n{content[:2000]}")
else:
    print("NO_CHANGE")

Dann richtest du den Cron-Job ein:

/cron add "every 1h" "If the script output says CHANGE DETECTED, summarize what changed on the page and why it might matter. If it says NO_CHANGE, respond with just [SILENT]." --script ~/.hermes/scripts/watch-site.py --name "Pricing monitor" --deliver telegram

Profi-Tipp: Siehst du die [SILENT]-Anweisung? Das ist dein Ruhe-Marker. Wenn der Agent nur mit [SILENT] antwortet, weiß Hermes, dass es dich nicht stören soll. Kein Spam außerhalb deiner Arbeitszeiten.

Muster 2: Wochenbericht

Das ist perfekt, um in deiner Branche auf dem Laufenden zu bleiben. Es läuft jeden Montag um 9 Uhr und erstellt eine Zusammenfassung aus mehreren Quellen.

/cron add "0 9 * * 1" "Generate a weekly report covering:

1. Search the web for the top 5 AI news stories from the past week
2. Search GitHub for trending repositories in the 'machine-learning' topic
3. Check Hacker News for the most discussed AI/ML posts

Format as a clean summary with sections for each source. Include links.
Keep it under 500 words — highlight only what matters." --name "Weekly AI digest" --deliver telegram

Das 0 9 * * 1 ist die Standard-Cron-Syntax: Minute 0, Stunde 9, beliebiger Tag im Monat, beliebiger Monat, Montag (1). Einfach, wenn man es einmal weiß.

Muster 3: GitHub-Repository-Wächter

Behalte jedes Repo im Auge, ohne alle fünf Minuten die Seite zu aktualisieren.

/cron add "every 6h" "Check the GitHub repository NousResearch/hermes-agent for:
- New issues opened in the last 6 hours
- New PRs opened or merged in the last 6 hours
- Any new releases

Use the terminal to run gh commands:
  gh issue list --repo NousResearch/hermes-agent --state open --json number,title,author,createdAt --limit 10
  gh pr list --repo NousResearch/hermes-agent --state all --json number,title,author,createdAt,mergedAt --limit 10

Filter to only items from the last 6 hours. If nothing new, respond with [SILENT].
Otherwise, provide a concise summary of the activity." --name "Repo watcher" --deliver discord

Siehst du, wie der Prompt die genauen gh-Befehle enthält? Das ist die in sich geschlossene Regel in Aktion. Der Agent wird sich nicht erinnern, wie du das letztes Mal gemacht hast – du musst es ihm jedes Mal sagen.

Muster 4: Datensammel-Pipeline

Das ist für die Daten-Nerds. Sammle Preise, Metriken oder beliebige API-Daten in regelmäßigen Abständen, speichere sie in Dateien und lass den Agenten Trends erkennen.

Das Skript übernimmt das Sammeln (keine LLM-Tokens für das Abrufen verschwenden), und der Agent übernimmt die Analyse. Kombiniere beides für ein leistungsstarkes Trend-Erkennungssystem.

Null-Token-Alternativen

Brauchst du das LLM gar nicht? Zwei Optionen:

  1. Nur-Skript-Cron-Jobs: Wenn dein Skript bereits die exakte Nachricht erzeugt (Speicherwarnungen, Festplattenwarnungen, Heartbeats), überspringe den Agenten komplett. Bitte Hermes einfach, es einzurichten – das cronjob-Tool weiß, wann es no_agent=True verwenden muss.

  2. Einmalig aus einem laufenden Skript: Verwende hermes send, um stdout oder eine Datei direkt an Telegram, Discord oder Slack zu leiten. Perfekt für CI-Schritte, Post-Commit-Hooks oder Deploy-Skripte.

Zusammenfassung

Du hast die Muster. Jetzt geh und automatisiere etwas Langweiliges. Dein zukünftiges Ich wird es dir danken.

Für die vollständige Funktionsreferenz schau in die Scheduled Tasks (Cron) Dokumentation. Und denk dran: In sich geschlossene Prompts, [SILENT] für Ruhe und Skripte für die mechanische Arbeit. Das ist das ganze Spiel.

📖 Offizielle Dokumentation

この記事は Hermes Agent のOffizielle Dokumentationに基づいています:Offizielle Dokumentation › guides/automate-with-cron