Nested groups or auto-sync membership: mention all sub-group members with a single @mention

Use case: I manage 12 Analysis Working Groups (AWGs) for NASA’s Open Science Data Repository, with ~1,700 members across 60+ countries. Each AWG has its own Discourse group (e.g. @AIMLawg, @AnimalAWG, @HUMANawg, etc. til 12 of them, and growing). When I or my team need to send an announcement to the full community, we have to manually @mention all 12 groups in every post: which is error-prone, tedious, and easy to forget one.

I want a single @AWGall group that automatically reflects membership from all 12 sub-groups, so one @mention reaches everyone.

What I tried:

  1. Created an @AWGall group manually and wrote an API script to bulk-add members from all sub-groups — this works as a one-time snapshot but does not stay in sync. Every time a new member joins any of the 12 AWGs (which happens constantly), @AWGall goes stale.
  2. Searched for a native nested groups / group-of-groups feature — it doesn’t exist. The closest prior discussion is Hierarchical group membership (groups inside groups) from 2021, which confirmed no plans to implement this at the time.

What I’m asking for:

Either of these would solve the problem:

  • Option A — Nested groups: Allow a group to include other groups as members, so membership resolves transitively. When someone joins @AIMLawg, they automatically appear in @AWGall.
  • Option B — Auto-sync trigger: When a user is added to or removed from a group, fire a configurable membership sync that adds/removes them from a designated parent group.

Why this matters beyond my case:

Any community with sub-communities (departments, cohorts, teams, age brackets, regions) hits this wall. The current workaround — manually maintaining a separate flat group — breaks immediately as membership evolves. This is a general Discourse limitation, not a niche edge case.

Happy to discuss implementation tradeoffs. Is there a plugin that already handles this, or is there appetite to build it natively?

1 Like

You could create an automatic group with members of all the other groups using the Discourse Dynamic Groups plugin

2 Likes

Nice! Will try that out. Much thanks