inline

When this happens, inline does that

An automation is a trigger, a few conditions and a list of actions. When a pull request opens, a check fails, a schedule fires or a signed webhook arrives, inline runs the actions in order, each with its owner's permissions, and records every run with its reason.

Automations, Slack and issue trackers1:31 · narrated, with captionsChapters and transcript

How it works

Triggers from
where work happens

A pull request opened, updated, labeled or merged. Commits landing on the default branch. A check suite or a GitHub Actions workflow failing or timing out. An issue labeled. A cron expression read in the time zone you choose. A signed HTTP POST to the automation's own URL, and incidents from PagerDuty.

Conditions,
not a model's guess

Conditions filter on repositories, branches, changed paths, labels and authors, plus an exact-match filter, with globs such as src/billing/** or feature/*. Every condition must hold. No model decides whether an automation runs, so the same event always gets the same answer.

Actions that do
the follow-up

Comment on the pull request as inline. Review it now, or re-review it from scratch. Start a whole-codebase audit. Hand a typed brief to a coding session that plans, edits, verifies and opens a pull request, or declines. After a merge, update the changelog or the docs. Notify a Slack or Teams channel, or members by email.

Runs as its owner,
on the record

Actions run in order, each with the owner's permissions, checked again on the repository at the moment it runs. Every firing is recorded, including the ones a condition or a guard turned away, with the reason. Recorded payloads have anything shaped like a credential redacted.

Test it before
it runs for real

A dry run checks the conditions and shows what each action would do, without posting, starting or sending anything. Guards bound how often an automation fires in an hour and how many runs go at once. Nothing past a bound is dropped silently: it is recorded as skipped, or waits its turn.

Included

Signed webhooksHMAC-SHA256 over the timestamp and raw body
Replay refuseddeliveries older than five minutes, or seen before
Schedulescron in your time zone, once per listed repository
Templatespull request title, author, branch and more in any text
Dry runwould run or would skip, with the reason
Run historyevery firing, every action, where it went

Put it on one repository

Connect GitHub or GitLab, enable a repo, and the next pull request opened gets a review.