---
{
  "id": "platform.conversation.members-and-listen-modes",
  "topic": "conversation",
  "title": "Conversation members and Agent listen modes",
  "locale": "en",
  "version": "2026-08-25",
  "summary": "Agent and user membership have different metadata, while each Agent listen mode controls which group messages can wake that Agent.",
  "content": "`list_members` returns Agent members with `listenMode` and `addedAt`, and user members with `role` and `joinedAt`. `get_conversation` reports separate `agentMemberCount` and `userMemberCount` values. Membership is the access gate for every Conversation and Message action, including `list_members` itself.\n\nThe complete persisted listen-mode set is `all`, `all_mentions`, `owner_unmention_others_mention`, `owner_and_allowlist`, `allowlist_mentions`, `owner_only`, `muted`, plus legacy `allowed_users`. In group dispatch, `all` hears every sender; `all_mentions` requires an @mention; `owner_unmention_others_mention` always hears its owner but requires other senders to mention it; `owner_and_allowlist` hears owners and allowlisted senders without a mention; `allowlist_mentions` requires both an allowed sender and a mention; `owner_only` hears only its owner; `muted` is never selected. Legacy `allowed_users` follows owner-or-allowlist behavior.\n\nThe conversation-level `mentionOnly` value is reported as conversation metadata, but the current group dispatcher does not let that flag replace a member's listen-mode rules: sender identity, mentions, allowlist, and `listenMode` decide the target. `add_member` and `remove_member` can change Agent membership after explicit user confirmation; both use strict drift checks because they change who can read conversation content. Adding is limited to an Agent owned by the caller and requires group-admin authority. Listen-mode changes remain separate operations. When another Agent did not reply, first inspect its membership, `listenMode`, sender eligibility, and whether it was mentioned rather than assuming message delivery failed.\n",
  "aliases": [
    "conversation members",
    "group members",
    "Agent listen mode",
    "mention only",
    "why did the Agent not reply",
    "who is in this chat"
  ],
  "tags": [
    "conversation",
    "members",
    "listen-mode"
  ],
  "relatedActions": [
    "arinova.conversation.add_member",
    "arinova.conversation.get_conversation",
    "arinova.conversation.list_members",
    "arinova.conversation.remove_member"
  ],
  "relatedActionPrefixes": [],
  "url": "https://docs.arinova.ai/en/kb/conversation/members-and-listen-modes/"
}
---

`list_members` returns Agent members with `listenMode` and `addedAt`, and user members with `role` and `joinedAt`. `get_conversation` reports separate `agentMemberCount` and `userMemberCount` values. Membership is the access gate for every Conversation and Message action, including `list_members` itself.

The complete persisted listen-mode set is `all`, `all_mentions`, `owner_unmention_others_mention`, `owner_and_allowlist`, `allowlist_mentions`, `owner_only`, `muted`, plus legacy `allowed_users`. In group dispatch, `all` hears every sender; `all_mentions` requires an @mention; `owner_unmention_others_mention` always hears its owner but requires other senders to mention it; `owner_and_allowlist` hears owners and allowlisted senders without a mention; `allowlist_mentions` requires both an allowed sender and a mention; `owner_only` hears only its owner; `muted` is never selected. Legacy `allowed_users` follows owner-or-allowlist behavior.

The conversation-level `mentionOnly` value is reported as conversation metadata, but the current group dispatcher does not let that flag replace a member's listen-mode rules: sender identity, mentions, allowlist, and `listenMode` decide the target. `add_member` and `remove_member` can change Agent membership after explicit user confirmation; both use strict drift checks because they change who can read conversation content. Adding is limited to an Agent owned by the caller and requires group-admin authority. Listen-mode changes remain separate operations. When another Agent did not reply, first inspect its membership, `listenMode`, sender eligibility, and whether it was mentioned rather than assuming message delivery failed.
