Overview
Notifications enable:- Automated standups: Send daily updates to your team channel
- PR announcements: Notify reviewers when PRs are created
- Weekly summaries: Share accomplishments with stakeholders
- Custom messages: Send any DevDaily output to chat
All notifications use webhooks - no OAuth or app installation required. Messages are sent via HTTPS POST requests.
Quick Setup
Run the interactive notification setup:- Ask which platform(s) you want to configure
- Guide you through webhook URL creation
- Test the connection with a sample message
- Save configuration to secrets.json
Slack Setup
Create Incoming Webhook
- Go to https://api.slack.com/apps
- Click “Create New App” → “From scratch”
- Name it “DevDaily” and select your workspace
- Under “Features” → “Incoming Webhooks”, toggle “Activate Incoming Webhooks”
- Click “Add New Webhook to Workspace”
- Select the channel (e.g.,
#engineering-standups) - Copy the webhook URL (starts with
https://hooks.slack.com/services/...)
Configuration Options
Enable Slack notifications
Slack incoming webhook URL (stored in secrets.json)
Default channel name (optional, for documentation only - webhook determines actual channel)
Environment Variable
Discord Setup
Create Webhook
- Open your Discord server
- Right-click the channel → “Edit Channel”
- Go to “Integrations” → “Webhooks”
- Click “New Webhook”
- Name it “DevDaily” and optionally set an avatar
- Copy the webhook URL (starts with
https://discord.com/api/webhooks/...)
Configuration Options
Enable Discord notifications
Discord webhook URL (stored in secrets.json)
Environment Variable
Scheduled Standups
Configure automatic daily standup delivery:.devdaily.json
Cron expression for standup schedule (e.g.,
0 9 * * 1-5 = 9am weekdays)Timezone for scheduled standups (e.g.,
America/Los_Angeles, Europe/London)Days of week to send standups:
monday, tuesday, wednesday, thursday, friday, saturday, sundayScheduled standups require setting up a cron job or CI workflow. See the Automation Guide below.
Sending Notifications
Manual Sending
Send any command output to configured channels:Automatic Sending
When notifications are enabled, you can configure commands to always send:.devdaily.json
Message Formats
Slack Format
Slack messages use Block Kit for rich formatting:- Header with emoji
- Markdown formatting (
*bold*,_italic_,strikethrough) - Clickable links for tickets
- Dividers between sections
- Contextual footer with timestamp
Discord Format
Discord messages use embeds:- Color-coded embeds (green for standup, blue for PR, purple for weekly)
- Markdown in description
- Fields for ticket metadata
- Timestamp and footer
- Custom username and avatar
Output Format Override
Send Slack-optimized output to any channel:**bold**→*bold**italic*→_italic_[link](url)→<url|link>- Code blocks → Slack code blocks
Automation
GitHub Actions
Send standups via GitHub Actions:.github/workflows/daily-standup.yml
Cron Job
Send standups via cron (Linux/macOS):~/.bashrc
Notification Types
Standup Notification
- Yesterday’s completed work
- Today’s planned work
- Blockers (if any)
- Related ticket links
- Commit/file statistics
- Title: “☀️ Daily Standup”
- Color: Green
- Emoji: ☀️
PR Notification
- PR title and link
- Description summary
- Ticket references
- Diff statistics
- Title: ”🔀 New PR: [title]”
- Color: Blue
- Emoji: 🔀
- Direct link to PR
Weekly Summary Notification
- Weekly accomplishments
- Commit and PR counts
- Ticket completions
- Stats footer
- Title: ”📊 Weekly Summary”
- Color: Purple
- Emoji: 📊
- Footer: ”📊 X commits · Y PRs this week”
Custom Messages
Send custom notifications programmatically:Troubleshooting
Webhook Test Fails
-
Verify webhook URL:
-
Test with curl:
-
Check webhook status:
- Slack: Verify webhook is active in https://api.slack.com/apps
- Discord: Check webhook hasn’t been deleted in channel settings
Messages Not Sending
Enabled but not sending
Enabled but not sending
Check configuration:Ensure:
enabled: truefor your platformwebhookUrlis set in secrets.json
Rate limit errors
Rate limit errors
Both platforms have rate limits:
- Slack: 1 message per second
- Discord: 30 messages per minute
--send sparingly.Formatting issues
Formatting issues
Test different formats:
Network/Firewall Issues
Ensure outbound HTTPS is allowed to:- Slack:
hooks.slack.com - Discord:
discord.com
Security Best Practices
-
Store in secrets.json, never in .devdaily.json:
-
Add secrets.json to .gitignore:
-
Use environment variables in CI/CD:
-
Rotate webhooks if exposed:
- Slack: Delete old webhook, create new one
- Discord: Delete webhook in channel settings, create new
-
Restrict channel permissions:
- Make notification channels read-only for most users
- Limit who can create/edit webhooks
Disabling Notifications
Temporarily disable without removing configuration:.devdaily.json
Related Configuration
Configuration Overview
Learn about all configuration options
Standup Command
Generate and send daily standups