{
  "jobs": [
    {
      "id": "0ae7baffc114",
      "name": "Morning Briefing",
      "prompt": "Send the morning briefing ONLY via email (Apple iCloud SMTP). No WhatsApp delivery.\n\nSteps:\n1. Execute: bash /home/thesage/.hermes/scripts/run_send_briefing_email.sh\n2. Confirm from stdout that the email was sent successfully.",
      "skills": [],
      "skill": null,
      "model": null,
      "provider": null,
      "base_url": null,
      "script": null,
      "no_agent": false,
      "context_from": null,
      "schedule": {
        "kind": "cron",
        "expr": "0 7 * * *",
        "display": "0 7 * * *"
      },
      "schedule_display": "0 7 * * *",
      "repeat": {
        "times": null,
        "completed": 35
      },
      "enabled": true,
      "state": "scheduled",
      "paused_at": null,
      "paused_reason": null,
      "created_at": "2026-06-14T15:19:24.378400+00:00",
      "next_run_at": "2026-07-18T07:00:00+00:00",
      "last_run_at": "2026-07-17T07:00:34.039214+00:00",
      "last_status": "ok",
      "last_error": null,
      "last_delivery_error": null,
      "deliver": "local",
      "origin": null,
      "enabled_toolsets": [
        "terminal"
      ],
      "workdir": null,
      "fire_claim": null
    },
    {
      "id": "4189fb27840d",
      "name": "pirate-campaign-auto-sync",
      "prompt": "Run the Pirate Campaign Obsidian vault iCloud sync. Source credentials from /home/thesage/.hermes/.env and execute /home/thesage/.hermes/scripts/run_pirate_campaign_sync.sh. Do not print credentials. Report only whether the sync succeeded, failed, or requires 2FA re-authentication. If 2FA is required, notify the user immediately.",
      "skills": [],
      "skill": null,
      "model": null,
      "provider": null,
      "provider_snapshot": "custom",
      "model_snapshot": "kimi-k2.7-code:cloud",
      "base_url": null,
      "script": null,
      "no_agent": false,
      "context_from": null,
      "schedule": {
        "kind": "cron",
        "expr": "*/10 * * * *",
        "display": "*/10 * * * *"
      },
      "schedule_display": "*/10 * * * *",
      "repeat": {
        "times": null,
        "completed": 445
      },
      "enabled": false,
      "state": "paused",
      "paused_at": "2026-07-03T19:45:32.131101+00:00",
      "paused_reason": null,
      "created_at": "2026-06-30T17:39:35.078986+00:00",
      "next_run_at": "2026-07-03T19:50:00+00:00",
      "last_run_at": "2026-07-03T19:40:39.918527+00:00",
      "last_status": "ok",
      "last_error": null,
      "last_delivery_error": null,
      "deliver": "local",
      "origin": null,
      "enabled_toolsets": [
        "terminal"
      ],
      "workdir": null
    },
    {
      "id": "3c94e2b30e35",
      "name": "Stock Price Monitor \u2014 TSLA & SPCX",
      "prompt": "Run the stock price monitor script and email alerts if any thresholds are crossed.\n\nExecute: python3 /home/thesage/.hermes/scripts/stock_price_monitor.py\n\nThis script fetches TSLA and SPCX prices from Yahoo Finance and sends email alerts via Apple iCloud SMTP when prices cross configured thresholds (50, 75, 100, 125, 150, 175, 200, 225, 250, 275, 300).",
      "skills": [],
      "skill": null,
      "model": null,
      "provider": null,
      "base_url": null,
      "script": null,
      "no_agent": false,
      "context_from": null,
      "schedule": {
        "kind": "cron",
        "expr": "0 13-21 * * 1-5",
        "display": "0 13-21 * * 1-5"
      },
      "schedule_display": "0 13-21 * * 1-5",
      "repeat": {
        "times": null,
        "completed": 51
      },
      "enabled": true,
      "state": "scheduled",
      "paused_at": null,
      "paused_reason": null,
      "created_at": "2026-07-10T15:07:59.638539+00:00",
      "next_run_at": "2026-07-17T20:00:00+00:00",
      "last_run_at": "2026-07-17T19:00:33.797355+00:00",
      "last_status": "ok",
      "last_error": null,
      "last_delivery_error": null,
      "deliver": "local",
      "origin": {
        "platform": "whatsapp",
        "chat_id": "264755205914837@lid",
        "chat_name": "Sage Stockmans",
        "thread_id": null
      },
      "enabled_toolsets": [
        "terminal"
      ],
      "workdir": null,
      "fire_claim": null
    },
    {
      "id": "ba11c02f7997",
      "name": "pirate-vault-icloud-sync",
      "prompt": "Sync Pirate Campaign vault to iCloud Drive. Runs the sync wrapper that reads credentials from ~/.hermes/.env and pushes changes. Requires active pyicloud session (run manually first with 2FA).",
      "skills": [],
      "skill": null,
      "model": null,
      "provider": null,
      "provider_snapshot": null,
      "model_snapshot": null,
      "base_url": null,
      "script": "scripts/sync-wrapper.sh",
      "no_agent": true,
      "context_from": null,
      "schedule": {
        "kind": "interval",
        "minutes": 120,
        "display": "every 120m"
      },
      "schedule_display": "every 120m",
      "repeat": {
        "times": null,
        "completed": 39
      },
      "enabled": true,
      "state": "scheduled",
      "paused_at": null,
      "paused_reason": null,
      "created_at": "2026-07-14T12:56:22.517430+00:00",
      "next_run_at": "2026-07-17T21:00:28.103277+00:00",
      "last_run_at": "2026-07-17T19:00:28.103277+00:00",
      "last_status": "error",
      "last_error": "Script not found: /home/thesage/.hermes/scripts/scripts/sync-wrapper.sh",
      "last_delivery_error": null,
      "deliver": "local",
      "origin": null,
      "enabled_toolsets": null,
      "workdir": "/home/thesage/obsidian-vault/Pirate-Campain",
      "fire_claim": null
    },
    {
      "id": "6b7d6e716d1c",
      "name": "pirate-vault-analyzer",
      "prompt": "Run vault analyzer on Pirate Campaign vault and report statistics. Navigate to ~/obsidian-vault/Pirate-Campain and run: python3 scripts/analyzer.py --all",
      "skills": [],
      "skill": null,
      "model": null,
      "provider": null,
      "provider_snapshot": "custom",
      "model_snapshot": "kimi-k2.6:cloud",
      "base_url": null,
      "script": null,
      "no_agent": false,
      "context_from": null,
      "schedule": {
        "kind": "cron",
        "expr": "0 9 * * *",
        "display": "0 9 * * *"
      },
      "schedule_display": "0 9 * * *",
      "repeat": {
        "times": null,
        "completed": 3
      },
      "enabled": true,
      "state": "scheduled",
      "paused_at": null,
      "paused_reason": null,
      "created_at": "2026-07-14T12:56:23.541656+00:00",
      "next_run_at": "2026-07-18T09:00:00+00:00",
      "last_run_at": "2026-07-17T09:00:38.793112+00:00",
      "last_status": "ok",
      "last_error": null,
      "last_delivery_error": null,
      "deliver": "local",
      "origin": null,
      "enabled_toolsets": null,
      "workdir": "/home/thesage/obsidian-vault/Pirate-Campain",
      "fire_claim": null
    },
    {
      "id": "28bff3aaca7f",
      "name": "pirate-vault-index-update",
      "prompt": "Update all _Index.md files in the Pirate Campaign vault. Navigate to ~/obsidian-vault/Pirate-Campain and run: python3 scripts/index-generator.py --all",
      "skills": [],
      "skill": null,
      "model": null,
      "provider": null,
      "provider_snapshot": "custom",
      "model_snapshot": "kimi-k2.6:cloud",
      "base_url": null,
      "script": null,
      "no_agent": false,
      "context_from": null,
      "schedule": {
        "kind": "cron",
        "expr": "0 */6 * * *",
        "display": "0 */6 * * *"
      },
      "schedule_display": "0 */6 * * *",
      "repeat": {
        "times": null,
        "completed": 13
      },
      "enabled": true,
      "state": "scheduled",
      "paused_at": null,
      "paused_reason": null,
      "created_at": "2026-07-14T12:56:24.618424+00:00",
      "next_run_at": "2026-07-18T00:00:00+00:00",
      "last_run_at": "2026-07-17T18:00:34.754913+00:00",
      "last_status": "ok",
      "last_error": null,
      "last_delivery_error": null,
      "deliver": "local",
      "origin": null,
      "enabled_toolsets": null,
      "workdir": "/home/thesage/obsidian-vault/Pirate-Campain",
      "fire_claim": null
    },
    {
      "id": "6f1b6894df1a",
      "name": "dnd-wiki-party-interest",
      "prompt": "",
      "skills": [],
      "skill": null,
      "model": null,
      "provider": null,
      "provider_snapshot": null,
      "model_snapshot": null,
      "base_url": null,
      "script": "echo \"Reminder: Ask your DnD party if they would be interested in a custom wiki page for the Pirate Campaign! (BookStack or Wiki.js)\"",
      "no_agent": true,
      "context_from": null,
      "schedule": {
        "kind": "once",
        "run_at": "2026-07-18T17:00:00+00:00",
        "display": "once at 2026-07-18 17:00"
      },
      "schedule_display": "once at 2026-07-18 17:00",
      "repeat": {
        "times": 1,
        "completed": 0
      },
      "enabled": true,
      "state": "scheduled",
      "paused_at": null,
      "paused_reason": null,
      "created_at": "2026-07-15T08:47:34.046451+00:00",
      "next_run_at": "2026-07-18T17:00:00+00:00",
      "last_run_at": null,
      "last_status": null,
      "last_error": null,
      "last_delivery_error": null,
      "deliver": "local",
      "origin": null,
      "enabled_toolsets": null,
      "workdir": null
    }
  ],
  "updated_at": "2026-07-17T19:00:33.797924+00:00"
}