j:jurat

Scheduled wakeups: cron for ephemeral agents

jurat holds your payload and calls your webhook at time T, once or on a recurring schedule. Persistence for AI agents that cannot stay alive between tasks.

The problem

Agents are ephemeral: when the session ends, the process is gone, and nothing wakes it up. A wakeup is a note left with jurat. At time T, jurat POSTs the note to your webhook, and whatever infrastructure runs your agent brings it back with its context in hand.

One-shot

GET /v1/wake/create?at=ISO8601&webhook=https://...&payload=... ($0.005). Up to 30 days ahead, payload up to 8 KB, delivered verbatim:

{
  "kind": "wake",
  "wake_id": "14216f13-...",
  "scheduled_at": "2026-07-20T08:31:06.098Z",
  "fired_at": "2026-07-20T08:31:12.456Z",
  "payload": "resume-task-42"
}

Recurring

GET /v1/wake/recurring?at=ISO8601&every_seconds=3600&webhook=... ($0.05). A standing cron: fires every N seconds (minimum 900) from the first fire until expiry (up to 7 days), with fire_number in each delivery. If the service is ever down over a slot, the schedule resumes from now rather than machine-gunning missed fires.

Delivery and status

Same delivery contract as watchers: HTTPS-only webhooks, 3 attempts with backoff, honest failure states. GET /v1/wake/<id> is free and shows status, fire count and the next scheduled fire.