Skip to main content

Agent Schedules & Triggers

Automate your agents with two powerful automation primitives:
  • Cron Schedules: Recurring tasks that run on a fixed schedule (e.g., daily reports, weekly summaries)
  • Webhook Triggers: Event-driven tasks that fire when external systems POST to a webhook URL
Both schedule types send messages to your agent’s message queue, allowing agents to respond to automated prompts just like they respond to user messages.

Cron Schedules

Create recurring tasks using standard cron expressions. When a schedule fires, the agent receives a message with template variables substituted.

Template Variables

Schedule messages support these template variables:

Cron Expression Examples

API Endpoints


Webhook Triggers

Create event-driven automation by exposing webhook URLs that external systems can call. When a webhook receives a POST request with a JSON payload, the agent receives a message with template variables substituted from the payload.

Template Variables

Webhook messages support {{payload.*}} dot-path substitution from the JSON payload: Example webhook payload:
Message template:
Rendered message:

Webhook Authentication

Webhooks support two authentication methods:

1. Plain Secret (X-Webhook-Secret)

2. HMAC Signature (X-Hub-Signature-256)

GitHub-style HMAC-SHA256 signature validation:
Both methods use timing-safe comparison to prevent timing attacks.

API Endpoints


Use Cases

Daily Standup Reports

Weekly Metrics Summary

GitHub CI/CD Integration

Incident Response


Best Practices

Schedules

  • Use descriptive names for easy identification
  • Set appropriate timezones to match your team’s working hours
  • Monitor execution history to catch failures
  • Use toggle_schedule instead of delete when temporarily disabling
  • Keep message templates clear and actionable

Triggers

  • Validate webhook secrets on the sending side
  • Use descriptive message templates that include relevant payload fields
  • Monitor trigger execution logs for debugging
  • Consider rate limiting on the sending system to prevent abuse
  • Store webhook secrets securely (they’re shown only once on creation)

Message Queue Behavior

  • Both schedules and triggers add messages to the agent’s queue
  • If the agent is busy, messages queue up (first-in, first-out)
  • Use the agent’s queue_mode setting to control interrupt behavior
  • Monitor message queue depth to detect backlog issues

See Also