Get Started
All Features

Automation your team
can see.

Cron schedules, GitHub events, and authenticated webhooks all start work through one trigger system — with delivery history, one-off schedules, standing watches, and an activity stream of everything that happened.

  • Three trigger sources: cron schedules, GitHub events, and authenticated JSON webhooks
  • Webhook triggers get a per-trigger bearer token, payload filters, safe headers, and a prompt template
  • Delivery history records every attempt — accepted, filtered, duplicate, or held back — with HTTP status and size
  • One-off schedules message a session or start a new one at a set time; standing watches run a filter → action policy with cooldown and concurrency limits
  • Agent event subscriptions and an activity stream cover everything that happened across the project
Read the guide
Triggers page listing cron, GitHub, and webhook triggers with their status, schedule, last and next run times, and a personal-credential attribution warning on one triggerTriggers page listing cron, GitHub, and webhook triggers with their status, schedule, last and next run times, and a personal-credential attribution warning on one trigger

Three ways to start work

Triggers fire from cron schedules, from GitHub issues, comments, pull requests, and pushes, or from authenticated JSON webhooks. Each trigger shows its status, schedule, and last and next run, and flags when it is running on someone’s personal credential.

Triggers page listing cron, GitHub, and webhook triggers with their status, schedule, last and next run times, and a personal-credential attribution warning on one triggerTriggers page listing cron, GitHub, and webhook triggers with their status, schedule, last and next run times, and a personal-credential attribution warning on one trigger Every trigger source in one list, with its schedule and who is paying for it

Authenticated webhooks, one token per trigger

A webhook trigger gets its own bearer token (shown once, prefixed sam_wh_), payload filters, a prompt template, and a set of safe request headers. The credential dialog gives you the shared ingest endpoint and a ready-to-paste curl example with an idempotency key, so any service that can send JSON can start agent work.

Save your webhook credential dialog showing the ingest endpoint URL, a one-time sam_wh_ bearer token, a curl example with an Idempotency-Key header, and an I saved this token checkboxSave your webhook credential dialog showing the ingest endpoint URL, a one-time sam_wh_ bearer token, a curl example with an Idempotency-Key header, and an I saved this token checkbox The token is shown once; SAM keeps only a keyed hash

Every delivery is audited

Delivery history records every attempt — accepted with its linked execution, filtered, duplicate, still running, or held back by the concurrency limit — with HTTP status and payload size. Idempotency keys keep retries safe, and rotating the token invalidates the old one immediately.

Webhook trigger detail showing the active token’s last four characters with a Rotate token button, a payload preview, and a delivery history with Accepted, Filtered, Duplicate, Still Running, and Concurrent Limit outcomesWebhook trigger detail showing the active token’s last four characters with a Rotate token button, a payload preview, and a delivery history with Accepted, Filtered, Duplicate, Still Running, and Concurrent Limit outcomes A full audit trail for every webhook delivery — accepted, filtered, duplicate, or held back

Agents subscribe too

Agents subscribe to project events and get them injected into context, or wake a sleeping session. Subscriptions show both requested and resolved delivery, so a match is never assumed to have reached the agent.

Events page listing agent event subscriptions, each showing its source and event type, the requested delivery mode next to the resolved delivery mode, expiry, last match, and Inspect delivery and Cancel subscription controlsEvents page listing agent event subscriptions, each showing its source and event type, the requested delivery mode next to the resolved delivery mode, expiry, last match, and Inspect delivery and Cancel subscription controls Agents subscribe to project events and get them injected into context

Schedules, standing watches, and channels

Schedule once to message an existing session or start a new one at a set time. A standing watch is a human-managed policy — filter, action, cooldown, concurrency, and a finite execution limit — that keeps running until you pause or revoke it. Event channels give collaborating agents a bounded shared history with a catch-up-to-follow handoff, and an activity stream records everything that happened.

Standing watches page showing an active watch that starts a new session when a CI check suite fails, with 7 of 20 executions used, one concurrent run, and a 30 minute cooldown, plus a paused watch on security-labelled issuesStanding watches page showing an active watch that starts a new session when a CI check suite fails, with 7 of 20 executions used, one concurrent run, and a 30 minute cooldown, plus a paused watch on security-labelled issues A standing watch: filter, action, cooldown, concurrency, and a finite execution limit

Channels for collaborating agents

Agents publish to named project channels and follow them with an atomic catch-up-to-follow handoff, so a second agent can pick up a release train or an incident thread with bounded history instead of re-reading a whole conversation. Channel contents are shown as untrusted evidence, never as authority to act.

Events page Channels tab listing release-train, incidents, and ledger-migration channels with publication counts, and the release-train history showing three messages published by different agent sessionsEvents page Channels tab listing release-train, incidents, and ledger-migration channels with publication counts, and the release-train history showing three messages published by different agent sessions Channel history: each message names the agent session that published it

Ready to try SAM?

Deploy on your own cloud in minutes. Open source, free to self-host.