nf-slack¶
Get Slack notifications for your Nextflow workflows - automatically notified when pipelines start, complete, or fail.

Features¶
- ๐ Automatic Notifications: Get notified when workflows start, complete, or fail
- ๐ฌ Custom Messages: Send custom messages from within your workflow scripts
- ๐ค Bot & Webhook Support: Supports both bot and webhook authentication
- ๐งต Threading: Keep channels clean by threading workflow notifications (Bot only)
- ๐จ Rich Formatting: Beautiful Slack messages with colors and custom fields
- โ๏ธ Highly Configurable: Control what notifications are sent and when
Quick Start¶
Get started in just 3 simple steps:
- Set up a Bot User - Create a Slack App and Bot User (Recommended)
- Configure your pipeline - Add the plugin to your
nextflow.config - Run your workflow - That's it! Notifications will be sent automatically
What You Get¶
Once configured, you'll automatically receive Slack messages for:
- ๐ Pipeline starts - Know when your workflow begins
- โ Successful completions - Celebrate when pipelines finish
- โ Failures - Get alerted immediately when something goes wrong
Each message includes relevant details like run name, duration, and error information.
Basic Example¶
Add to your nextflow.config:
plugins {
id 'nf-slack@0.3.1'
}
slack {
enabled = true
bot {
token = 'xoxb-your-bot-token'
channel = 'general'
}
}
That's it! Your workflow will now send notifications to Slack.
Customize Your Notifications¶
Choose Which Events to Notify¶
slack {
enabled = true
bot {
token = 'xoxb-your-bot-token'
channel = 'general'
}
onStart.enabled = false // Do not notify when pipeline starts
onComplete.enabled = true // Notify on successful completion
onError.enabled = true // Notify on failures
}

Customize Message Text¶
slack {
bot {
token = 'xoxb-your-bot-token'
channel = 'general'
}
onStart {
message = '๐ฌ *My analysis pipeline is starting!*'
}
onComplete {
message = '๐ *Analysis completed successfully!*'
}
onError {
message = '๐ฅ *Pipeline encountered an error!*'
}
}

Send Custom Messages from Your Workflow¶
include { slackMessage } from 'plugin/nf-slack'
params.sample_id = "SAMPLE_001"
workflow {
slackMessage("๐ฌ Starting analysis for sample ${params.sample_id}")
// Your workflow processes here
slackMessage("โ
Analysis complete!")
}

Learn More¶
- Installation Guide - Set up Bot User or Webhook
- Quick Start - Configure your first notification
- Usage Guide - Learn all the features
- Examples Gallery - 9 progressive examples with screenshots
- API Reference - Complete configuration options
Support¶
- ๐ Report bugs
- ๐ก Request features
- ๐ Read the docs
License¶
Copyright 2025, Seqera Labs. Licensed under the Apache License, Version 2.0.