90 lines
3.7 KiB
Markdown
90 lines
3.7 KiB
Markdown
---
|
|
title: Hermes Cron Jobs
|
|
aliases: [hermes cron, scheduled jobs, cron jobs]
|
|
tags: [personal-os, hermes, automation, cron]
|
|
updated: 2026-06-24
|
|
---
|
|
|
|
# Hermes Cron Jobs
|
|
|
|
All scheduled jobs running in Hermes on Eagle. Managed via **Eagle Dashboard → Crons tab** (`http://localhost:8880`).
|
|
|
|
Управление через Dashboard API: `GET/PATCH/POST/DELETE /api/crons`.
|
|
Файл: `~/.hermes/cron/jobs.json` (Eagle), `~/.hermes/hermes-whale/cron/jobs.json` (Whale).
|
|
|
|
## Job Format (jobs.json)
|
|
|
|
```json
|
|
{
|
|
"id": "531b242c30ad",
|
|
"name": "data-pipeline",
|
|
"prompt": "[SILENT] Run the data pipeline: bash ~/scripts/run-pipeline.sh",
|
|
"skills": [],
|
|
"script": null,
|
|
"schedule": { "kind": "cron", "expr": "*/30 7-21 * * 1-5", "display": "*/30 7-21 * * 1-5" },
|
|
"schedule_display": "*/30 7-21 * * 1-5",
|
|
"enabled": false,
|
|
"state": "paused",
|
|
"deliver": "local",
|
|
"enabled_toolsets": null,
|
|
"workdir": null,
|
|
"model": null,
|
|
"provider": null,
|
|
"created_at": "...",
|
|
"last_run_at": "...",
|
|
"last_status": "ok"
|
|
}
|
|
```
|
|
|
|
Editable fields via API: name, schedule, prompt, script, deliver, skills, model, provider, enabled_toolsets, workdir.
|
|
|
|
## All 22 Jobs (Eagle)
|
|
|
|
### Active (1)
|
|
|
|
| Job | Schedule | Description | Delivery |
|
|
|-----|----------|-------------|----------|
|
|
| `sync-vault` | `*/5 * * * *` | Syncs obsidian vault via `sync-vault.sh` | local |
|
|
|
|
### Paused (21)
|
|
|
|
| Job | Schedule | Notes |
|
|
|-----|----------|-------|
|
|
| `data-pipeline` | `*/30 7-21 * * 1-5` | Runs `bash ~/scripts/run-pipeline.sh` |
|
|
| `eod-summary` | `0 18 * * 1-5` | EOD brief → zulip:daily-brief::EOD Summary |
|
|
| `inbox-check` | `*/30 9-19 * * 1-5` | Inbox triage → discord:#inbox |
|
|
| `weekly-plan` | `0 8 * * 1` | Weekly plan → zulip:daily-brief::Weekly Plan |
|
|
| `weekly-review` | `0 17 * * 5` | Weekly review → zulip:daily-brief::Weekly Review |
|
|
| `generate-daily-brief` | `0 7 * * 1-5` | Daily brief → zulip:daily-brief::Daily Brief |
|
|
| `retrospector` | `30 17 * * 5` | Retrospector → discord:#retrospector |
|
|
| `executor-autonomous` | `*/30 * * * *` | Paused — replaced by executor-runner |
|
|
| `executor-runner` | `*/5 * * * *` | Paused — waiting for new executor arch |
|
|
| `executor-analyzer` | `*/5 * * * *` | Paused — waiting for new executor arch |
|
|
| `wiki-curation-daily` | `0 2 * * *` | wiki curator (skills: llm-wiki, toolsets: file,web,terminal) |
|
|
| `AI-психолог` | `0 23 * * 1,4` | Психолог сессия (Пн/Чт) (toolsets: file,web) |
|
|
| `vault-enrichment` | `0 3 * * 0` | Vault enrichment (toolsets: file,terminal) |
|
|
| `vault-cross-enrichment` | `0 4 * * 0` | Cross-domain enrichment (toolsets: file,web,terminal) |
|
|
| `vault-cross-enrichment-overflow` | `30 5 * * 0` | Overflow handler (toolsets: file,web,terminal) |
|
|
| `memory-curation` | `0 4 * * *` | Memory curator (toolsets: file,terminal) |
|
|
| `proactive-research` | `0 5 * * 6` | Research queue (toolsets: file,web,terminal) |
|
|
| `watchlist-nightly` | `0 1 * * *` | Watchlist nightly (toolsets: terminal) |
|
|
| `watchlist-discover` | `0 9 * * 0` | Watchlist discover (toolsets: terminal) |
|
|
| `claude-auth-login` | `28 6 * * *` | Claude auth refresh |
|
|
| `obsidian-inbox-sort` | `0 1 * * *` | Inbox sort (skills: obsidian-inbox-sort) |
|
|
|
|
## Whale Jobs
|
|
|
|
0 jobs currently. Whale cron state at `~/.hermes/hermes-whale/cron/jobs.json`.
|
|
|
|
## Delivery Targets
|
|
|
|
- `local` — saved to `~/.hermes/cron/output/`, not delivered to any chat
|
|
- `origin` — back to the Zulip thread where the job was created
|
|
- `zulip:stream:topic` — Zulip stream+topic
|
|
- `discord:#channel` — Discord channel
|
|
|
|
## Known Issues
|
|
|
|
- `weekly-review` — last run (2026-06-12) failed with `HTTP 500: init handshake timed out after 30000ms`
|
|
- `generate-daily-brief` — delivery to Zulip hit 502 on 2026-06-16 morning (Zulip was down)
|