[GH-ISSUE #1353] Declare Cypht as the mailer through the User-Agent and X-Mailer email headers #636

Open
opened 2026-02-25 21:35:33 +03:00 by kerem · 5 comments
Owner

Originally created by @nekohayo on GitHub (Nov 16, 2024).
Original GitHub issue: https://github.com/cypht-org/cypht/issues/1353

Originally assigned to: @Shadow243, @camilevahviraki on GitHub.

🗣 Suggestion

From emails I have received from @marclaporte, I noticed that there seems to be no mail client identification string in the message headers when sent by Cypht.

If that is indeed the case, I think it would be good for Cypht to advertise itself in the metadata of outgoing emails. I suspect some email servers / filters might frown upon the lack of identification otherwise, but also, it makes troubleshooting more difficult.

Examples of such mail headers, that can be seen with Evolution's "View > All message headers" menu action:

  • User-Agent: Mozilla Thunderbird
  • X-Mailer: Usermin 2.102
  • X-Mailer: Microsoft Outlook 16.0
  • User-Agent: Evolution 3.51.1
  • User-Agent: Evolution 3.54.1 (3.54.1-1.fc41)
  • User-Agent: K-9 Mail for Android

As you can see, the industry is a bit of a mix from both (X-Mailer apparently is the old informal standard, and User-Agent seems to be the newer one, as evidenced by its popularity among FLOSS email clients), also observed in this old Thunderbird ticket. I suspect that you'll want to use at least User-Agent, though presumably using both at the same time wouldn't be a bad thing?

Originally created by @nekohayo on GitHub (Nov 16, 2024). Original GitHub issue: https://github.com/cypht-org/cypht/issues/1353 Originally assigned to: @Shadow243, @camilevahviraki on GitHub. ## 🗣 Suggestion From emails I have received from @marclaporte, I noticed that there seems to be no mail client identification string in the message headers when sent by Cypht. If that is indeed the case, I think it would be good for Cypht to advertise itself in the metadata of outgoing emails. I suspect some email servers / filters might frown upon the lack of identification otherwise, but also, it makes troubleshooting more difficult. Examples of such mail headers, that can be seen with Evolution's "View > All message headers" menu action: * `User-Agent: Mozilla Thunderbird` * `X-Mailer: Usermin 2.102` * `X-Mailer: Microsoft Outlook 16.0` * `User-Agent: Evolution 3.51.1` * `User-Agent: Evolution 3.54.1 (3.54.1-1.fc41)` * `User-Agent: K-9 Mail for Android` As you can see, the industry is a bit of a mix from both (`X-Mailer` apparently is the old informal standard, and `User-Agent` seems to be the newer one, as evidenced by its popularity among FLOSS email clients), also observed in [this old Thunderbird ticket](https://bugzilla.mozilla.org/show_bug.cgi?id=65472). I suspect that you'll want to use at least User-Agent, though presumably using both at the same time wouldn't be a bad thing?
Author
Owner

@Shadow243 commented on GitHub (Aug 20, 2025):

From emails I have received from @marclaporte, I noticed that there seems to be no mail client identification string in the message headers when sent by Cypht.

If that is indeed the case, I think it would be good for Cypht to advertise itself in the metadata of outgoing emails. I suspect some email servers / filters might frown upon the lack of identification otherwise, but also, it makes troubleshooting more difficult.

Examples of such mail headers, that can be seen with Evolution's "View > All message headers" menu action:

  • User-Agent: Mozilla Thunderbird
  • X-Mailer: Usermin 2.102
  • X-Mailer: Microsoft Outlook 16.0
  • User-Agent: Evolution 3.51.1
  • User-Agent: Evolution 3.54.1 (3.54.1-1.fc41)
  • User-Agent: K-9 Mail for Android

As you can see, the industry is a bit of a mix from both (X-Mailer apparently is the old informal standard, and User-Agent seems to be the newer one, as evidenced by its popularity among FLOSS email clients), also observed in this old Thunderbird ticket. I suspect that you'll want to use at least User-Agent, though presumably using both at the same time wouldn't be a bad thing?

Sorry for the delay in responding, and thanks for pointing this out. At the moment Cypht does set:

X-Mailer: Cypht

in outgoing messages, but you’re right that we don’t also include a User-Agent header. I’ll add support for User-Agent: Cypht <version> and other in addition to X-Mailer so that both conventions are covered.

<!-- gh-comment-id:3208325836 --> @Shadow243 commented on GitHub (Aug 20, 2025): > From emails I have received from [@marclaporte](https://github.com/marclaporte), I noticed that there seems to be no mail client identification string in the message headers when sent by Cypht. > > If that is indeed the case, I think it would be good for Cypht to advertise itself in the metadata of outgoing emails. I suspect some email servers / filters might frown upon the lack of identification otherwise, but also, it makes troubleshooting more difficult. > > Examples of such mail headers, that can be seen with Evolution's "View > All message headers" menu action: > > * `User-Agent: Mozilla Thunderbird` > * `X-Mailer: Usermin 2.102` > * `X-Mailer: Microsoft Outlook 16.0` > * `User-Agent: Evolution 3.51.1` > * `User-Agent: Evolution 3.54.1 (3.54.1-1.fc41)` > * `User-Agent: K-9 Mail for Android` > > As you can see, the industry is a bit of a mix from both (`X-Mailer` apparently is the old informal standard, and `User-Agent` seems to be the newer one, as evidenced by its popularity among FLOSS email clients), also observed in [this old Thunderbird ticket](https://bugzilla.mozilla.org/show_bug.cgi?id=65472). I suspect that you'll want to use at least User-Agent, though presumably using both at the same time wouldn't be a bad thing? Sorry for the delay in responding, and thanks for pointing this out. At the moment Cypht does set: ``` X-Mailer: Cypht ``` in outgoing messages, but you’re right that we don’t also include a User-Agent header. I’ll add support for `User-Agent: Cypht <version>` and other in addition to X-Mailer so that both conventions are covered.
Author
Owner

@marclaporte commented on GitHub (Sep 1, 2025):

@Shadow243 seems like a good task to train a new dev...

<!-- gh-comment-id:3240651163 --> @marclaporte commented on GitHub (Sep 1, 2025): @Shadow243 seems like a good task to train a new dev...
Author
Owner

@Shadow243 commented on GitHub (Sep 2, 2025):

@Shadow243 seems like a good task to train a new dev...

Exactly, I’m creating it and asking for a volunteer.

<!-- gh-comment-id:3245646172 --> @Shadow243 commented on GitHub (Sep 2, 2025): > @Shadow243 seems like a good task to train a new dev... Exactly, I’m creating it and asking for a volunteer.
Author
Owner

@IrAlfred commented on GitHub (Nov 27, 2025):

@Shadow243 seems like a good task to train a new dev...

Exactly, I’m creating it and asking for a volunteer.

@Shadow243 Is the task already created ?

<!-- gh-comment-id:3584498823 --> @IrAlfred commented on GitHub (Nov 27, 2025): > > [@Shadow243](https://github.com/Shadow243) seems like a good task to train a new dev... > > Exactly, I’m creating it and asking for a volunteer. @Shadow243 Is the task already created ?
Author
Owner

@Shadow243 commented on GitHub (Nov 27, 2025):

@Shadow243 seems like a good task to train a new dev...

Exactly, I’m creating it and asking for a volunteer.

@Shadow243 Is the task already created ?

Yes, let me share with you

<!-- gh-comment-id:3585052929 --> @Shadow243 commented on GitHub (Nov 27, 2025): > > > [@Shadow243](https://github.com/Shadow243) seems like a good task to train a new dev... > > > > Exactly, I’m creating it and asking for a volunteer. > > @Shadow243 Is the task already created ? Yes, let me share with you
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/cypht#636
No description provided.