Slack Notifications
How Tenpace keeps your team informed about pull requests without the noise.
Design philosophy
Most PR bots flood your Slack channel with a new message for every event. Tenpace takes a different approach: one message per PR, updated in place. Reviews, CI status, and other changes update the existing message instead of creating new ones. Your channel stays readable.
PR message lifecycle
When a PR opens
A message is posted to your configured Slack channel containing:
- PR title and link
- Author (with Slack @mention if they've linked their account)
- Requested reviewers (with Slack @mentions for linked members)
- PR description (optionally in a thread)
- Current CI status
- Diff stats (additions, deletions)
As the PR evolves
The existing message is edited in place when:
- A reviewer approves or requests changes
- CI checks complete (pass or fail)
- New commits are pushed
- The PR is merged or closed
The message status line always reflects the current state, so anyone can look at the channel and know exactly what's happening.
When a PR is converted to draft
The Slack message is deleted to avoid cluttering the channel with work-in-progress PRs. When the PR is marked ready for review, a new message is posted.
Reaction actions
Tenpace seeds two action reactions on each pull request notification:
- 🔍 Self-assign — Add the reaction to request yourself as a reviewer; remove it to remove that review request.
- ✅ Approve — Add the reaction to submit an approving GitHub review as your connected GitHub account.
Approval requires both your Slack identity and GitHub account to be connected in your Tenpace profile. Pull request authors cannot approve their own work. Removing the approval reaction does not dismiss the GitHub review, and repeated Slack deliveries do not create duplicate reviews.
Team admins can choose a different emoji for either action in Settings → Customizations.
Direct messages
Review notifications
When a reviewer submits a review, the PR author receives a Slack DM. This is immediate and personal — reviewers know their work is visible, authors know when they have feedback.
Daily PR digest
When the daily digest is enabled, each team member receives a personalized DM summarizing:
- Needs your review — PRs where you're a requested reviewer
- Your PRs awaiting review — Your open PRs that still need approvals
- Stale PRs — Your PRs with no recent activity
The digest only includes PRs that need action. If you have nothing pending, no DM is sent. Configure the digest in Settings → Reminders.
@mention policies
You can control how aggressively Tenpace @mentions people in the reviewer mention policy setting:
| Policy | Behavior |
|---|---|
all | @mention all requested reviewers (default) |
connected_only | Only @mention reviewers who've linked their GitHub account |
none | Show reviewer names without @mentions |
Configure this per channel in Settings → Channels.
CI status
Tenpace listens for GitHub check suite completion events and updates the PR message with the result. If a check suite fails, the PR message clearly shows the failure state.
CI status also gates the pr.ready_to_merge webhook event — a PR won't be considered ready
if CI is failing, even if all reviewers have approved.
External PR acknowledgment
When a PR from a contributor outside your team is opened on a watched repository, Tenpace can send them a DM acknowledging their contribution. Enable this in channel settings with Acknowledge external PRs.
Customizing notifications
Each Slack channel can be configured independently:
- Repository filters — Only show PRs from specific repositories
- Label filters — Only show PRs with specific GitHub labels
- Show repo name in messages — Useful for multi-repo channels
- Post descriptions to thread — Keeps the main channel message compact
- Show author in subtitle — Toggle author attribution