Skip to content

Triggers

Triggers define when a skill runs. Each skill can have one or more triggers. Triggers can override output settings and the main agent model.

typeenum
pull_request, local, or schedule.
actionsstring[]
Event actions for pull_request triggers.
draftboolean
Draft state for pull_request triggers. Set false to run only on non-draft PRs.
labelsstring[]
Pull request labels that can also match the trigger. Use with draft = false to let a label opt draft PRs into a run.
failOnseverity
Override failure threshold.
reportOnseverity
Override reporting threshold.
maxFindingsnumber
Override maximum findings.
reportOnSuccessboolean
Override report-on-success behavior.
requestChangesboolean
Override REQUEST_CHANGES behavior.
failCheckboolean
Override check failure behavior.
modeloptional
Override the main agent model for this trigger. See Models and Runtimes.
maxTurnsnumber
Override max agentic turns.
ActionMeaning
openedPR created.
synchronizeNew commits pushed.
reopenedPR reopened.
closedPR closed or merged.
warden.toml
[[skills]]
name = "security-review"
[[skills.triggers]]
type = "pull_request"
actions = ["opened", "synchronize"]
draft = false

Add the labeled pull request action in both GitHub Actions and warden.toml when labels should trigger Warden.

.github/workflows/warden.yml
on:
pull_request:
types: [opened, synchronize, reopened, labeled]
warden.toml
[[skills]]
name = "security-review"
[[skills.triggers]]
type = "pull_request"
actions = ["opened", "synchronize", "reopened", "labeled"]
draft = false
labels = ["Warden"]

This runs on non-draft PRs as usual. Draft PRs stay quiet unless the Warden label is present.

Schedule triggers run on cron workflows instead of PR events. They require paths so Warden knows which files to scan.

issueTitlestring
Title for the tracking issue. Default: Warden: {name}.
createFixPRboolean
Create a PR with fixes when available. Default: false.
fixBranchPrefixstring
Branch prefix for fix PRs. Default: warden-fix.
warden.toml
[[skills]]
name = "security-review"
paths = ["src/**/*.ts"]
[[skills.triggers]]
type = "schedule"
createFixPR = true