scheduling

four ways to fire an agent: manual, cron, file triggers, and webhooks / mentions.

manual

the run button in the ui. thats it fam.

cron

standard 5-field cron in the agent frontmatter:

schedule: "0 9 * * 1"   # every monday 9am in your project timezone

timezone is set at project level in /.vibe/settings.md. defaults to UTC.

multiple schedules:

schedule:
  - "0 9 * * 1-5"       # weekdays 9am
  - "0 17 * * 5"        # friday 5pm

file triggers

fire when a file changes under a glob:

triggers:
  - file_change: /inbox/*.eml
  - file_change: /customers/**/*.md

the agent receives the changed path in {{trigger.path}}.

debounce is 5s — if a batch of files change together, the agent fires once and the trigger list includes all of them.

mention triggers

the agent fires whenever @<name> appears in a file body or a comment:

triggers:
  - mention: "@outreach"

the mention context is passed as {{trigger.mention}} — includes the file path, the line, and the text around it.

webhook triggers

declare a webhook name:

triggers:
  - webhook: stripe-invoice

then post to https://api.vibestartup.pro/v1/webhooks/<project>/stripe-invoice with your payload. the payload lands in {{trigger.webhook.payload}}.

signed secrets are set in project settings. we verify hmac-sha256 on every request fr.

concurrency

by default an agent cant double-fire — if its already running, a new trigger queues up. set concurrency: N in frontmatter to allow parallelism.

cost

scheduled runs count against your monthly message budget. there's no separate scheduler fee. if you blow through your budget mid-month, scheduled runs pause and you get an inbox notif — nothing runs silently beyond the paywall.