A trigger runs one of your agents when an inbound webhook is hit. Create a trigger, copy its webhook URL into your app or GitHub, and every time that URL receives a POST the platform runs your agent as you with the request payload as input. The event-driven sibling of Schedules.
Create a trigger
The response includes webhookUrl (and, for signed sources, signingSecret) — shown only once. Copy them immediately.
Two kinds of trigger
Custom (any app)
The default. The webhook URL carries an unguessable token — possessing the URL authorizes it (like a Slack/Zapier incoming webhook). Just POST any JSON:
The whole payload is handed to the agent alongside your prompt.
GitHub (verified)
Set source: github. RunTools verifies GitHub’s X-Hub-Signature-256 against your signing secret and can filter by event type. Set it up in your repo:
- Settings → Webhooks → Add webhook
- Payload URL = the
webhookUrl from create
- Content type =
application/json
- Secret = the
signingSecret from create
- Choose the events you want (matching the trigger’s
events filter)
Now opening a PR runs your agent on the PR payload — it can review, label, or comment back via the GitHub tool.
Manage
Good to know
- Runs as you. Fires execute with the creator’s permissions, billed to your org. Credit-aware — a fire is skipped (not failed) when you’re out of credits.
- Fast ack. The webhook returns
202 immediately and runs the agent in the background; senders that retry on non-2xx won’t double-fire (GitHub deliveries dedupe on the delivery id).
- Thread mode.
per_fire (a new thread per event) or rolling (one continuous thread).
- Auto-disable after repeated failures; rotate the secret any time (the previous URL stops working immediately).
Use the Triggers page in the dashboard to create a trigger, copy the URL/secret once, and watch the deliveries log.