How replies thread
Threading uses standard RFC message headers, not subject matching.- Every outbound email carries a
Message-IDheader. When a recipient replies, their mail client echoes that ID inIn-Reply-ToandReferences. - On each inbound email, Anyreach collects the IDs from
In-Reply-ToandReferencesand looks for an existing conversation whose stored message IDs match. - If a match is found, the inbound email threads onto that existing
EMAILconversation. If there is no match, a newEMAILconversation is created and seeded from the inbound message.
Message-ID and a growing References chain so that the agent’s next reply sets In-Reply-To and References correctly and the recipient’s mail client keeps everything in one thread.
Threading is keyed on message IDs, so a reply with a changed subject line still threads correctly, and two unrelated emails that happen to share a subject do not get merged.
Reply-all CC audience
When the agent replies, it replies to the sender and CCs the rest of the thread, mirroring a reply-all. The CC list is computed from the latest inbound message’sTo and Cc recipients, then filtered:
The dropped automated mailboxes are matched on their local-part, including
no-reply, noreply, do-not-reply, donotreply, mailer-daemon, postmaster, bounce, and bounces (with common spelling variants).
When the agent will not reply
Several checks can suppress a reply. The conversation and inbound message are always recorded either way; only the outbound reply is skipped. Each skip records a reason that is surfaced in the conversation detail view.The sender-identity check looks only at the
From header, not Reply-To. A human whose mail carries a Reply-To pointing at a platform agent (common with mailing lists and help-desk forwarders) still receives a reply.CC-only handling
When the agent is only CC’d on a message,cc_reply_policy decides what happens:
When the agent is a direct
To recipient, the CC policy does not apply and the reply gate still runs.
Closing the conversation
The reply gate also reports whether the conversation is complete. Whenauto_close_on_conclusion is on (the default), a complete conversation is closed proactively instead of waiting for the idle timeout. The system is conservative: any uncertainty defaults to replying and not closing.
Quoted history
Inbound email bodies are trimmed before the agent reads them. Anyreach splits off quoted reply history and signatures, keeping only the new top-post content. Quote markers it recognizes includeOn ... wrote: attribution lines, ----- Original Message -----, leading From: headers, and any line beginning with >.
On the outbound side, quote_history controls whether prior history is quoted back beneath the reply:
With
quote_history off (the default), the reply contains only the agent’s response and is not padded with the prior thread.
Related
Configuring an email agent
Set
cc_reply_policy, require_dmarc_pass, quote_history, and the rest of the email channel properties.Conversation detail
See the recorded reply decision and reason for each inbound turn.

