Spam Detection
Every inbound email processed by Scitor receives a spam score from the email provider. This score is used to apply a label to the created issue, helping you quickly identify and manage spam.
How it works
Scitor receives a SpamAssassin score with each inbound email from SendGrid. This score indicates how likely the email is to be spam, based on various signals like email headers, content patterns, and sender reputation.
The score is mapped to one of four labels:
| Score | Label | Meaning |
|---|---|---|
| Below 2 | spam:clean |
Very low spam likelihood β legitimate email |
| 2 β 5 | spam:low |
Some spam indicators, but likely legitimate |
| 5 β 8 | spam:medium |
Multiple spam indicators β review recommended |
| 8+ | spam:high |
Strong spam indicators β likely spam |
Info
Lower scores are better. A negative score (e.g., -0.1) indicates a very clean email.
What happens with spam
Scitor does not automatically block or discard emails based on spam score. All emails are delivered as issues, with the spam label applied for your teamβs review. This approach ensures legitimate emails are never lost.
For persistent spam from specific senders, use the /block-sender command to prevent future emails from that address.
Automating spam handling
You can use GitHub Actions to automatically handle spam:
name: Auto-close high spam
on:
issues:
types: [labeled]
jobs:
close-spam:
if: github.event.label.name == 'spam:high'
runs-on: ubuntu-latest
steps:
- uses: actions/github-script@v7
with:
script: |
await github.rest.issues.update({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: context.issue.number,
state: 'closed',
state_reason: 'not_planned'
})
await github.rest.issues.createComment({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: context.issue.number,
body: 'π€ Automatically closed β high spam score detected.'
})
Tip
Combine spam labels with the /block-sender command for a manual-but-effective spam management workflow. Review spam:high issues periodically and block repeat offenders.