alertChannels section of devhelm.yml defines where incident notifications are sent. Each channel has a name and a config block whose channelType discriminator selects the integration.
Common fields
The schema is
.strict() — any extra top-level keys (like a bare type:) are
rejected at validate / plan / deploy. Always nest the integration kind inside
config.channelType.
Channel types
Slack
PagerDuty
OpsGenie
Discord
Microsoft Teams
Webhook
Other channel types
AdditionalchannelType values are accepted: telegram, google_chat, pushover, mattermost, splunk_oncall, pushbullet, linear, incident_io, rootly, zapier, datadog, jira, and gitlab. Their config fields mirror the dashboard form for each integration — see Integrations for the required fields per channel.
Referencing channels
Monitors and notification policies reference channels by name:Using environment variables
Store sensitive values (webhook URLs, API keys, routing keys) as environment variables and reference them with${VAR} syntax. Set them in your shell or CI secrets — they’re resolved at deploy time.
Next steps
Notification policies
Route incidents through escalation chains.
Integrations
Setup guides for each channel type.