AgentMeshLog inStart free

How-to

How to run AI agents automatically (schedules & webhooks)

AI Workflow Triggers: Manual, Scheduled & Webhook · Watch on YouTube

There are three triggers: Manual, Scheduled and Webhook. The first two lines of this page are the easy part; the section at the bottom is the one that matters, because an unattended agent fails differently from one you are watching.

I built this scheduler and later found it had been running two-week-old code on my own production server, so that section is written from the inside.

Run on a schedule

  1. Open the Schedules page and add a schedule to the workflow.
  2. Enter a cron expression — `0 9 * * *` is every day at 9am.
  3. Save. It runs on that timetable and every run lands in Executions like any other.

Be deliberate about frequency. A five-minute schedule is about 288 runs a day and a fifteen-minute one about 96. At $0.0144 for a support-ticket-sized worked example, 288 of those is roughly $4 a day of usage — against a free allowance of $0.50. Source: two runs costed step by step.

Run on an event

  1. Add a Webhook trigger to the workflow on the Schedules page.
  2. Copy the generated URL. It holds an unguessable token, so treat it like a password.
  3. Have your system POST JSON to it — the body becomes the workflow input and the run starts immediately.
  4. Send one real request before you rely on it, and check the input arrived shaped the way you expected.

Anyone with that URL can start your workflow. If it leaks, delete the trigger and add a new one; the old token stops working.

The limits that apply when nobody is looking

LimitValueWhat happens
Run timeabout 61 minutesThe run is stopped
Stuck-run sweeper90 minutesAnything still pending or running is marked TIMEOUT, so nothing stays “running” forever
Runs a day on our AI key100 Free / 1,000 ProThe run fails with the limit message
Usage a day on our AI key$0.50 Free / $2.00 ProReached first if your runs are expensive — it stops the next one

Those last two both apply and whichever is hit first wins. Your own LLM key removes both.

How an unattended agent actually fails

It runs perfectly and does nothing

The failure with no symptom. A condition that never matches skips its branch, the run reports COMPLETED, and no alert fires because nothing went wrong by the only definition the status knows. Source: a cleanup job of mine ran hourly for weeks logging “removed 0 expired results” and had never deleted anything.

It answers, and the answer is invented

An agent whose tool calls came back empty, or refused, can still write something plausible and finish successfully. Unattended, that reaches whoever it was addressed to before anyone reads the run.

The check to build instead

Do not alert on status. Have the run report how many items it processed and compare that against what the source says it handed over. A count of zero on a normally-busy slot is a signal; a green status is not.

Next

  1. Read a run that went wrong — see How to troubleshoot a failed run.
  2. Give the scheduled workflow real tools — see Give agents tools & integrations.