Skip to content

Mention picker validates against local managed-agents store instead of relay membership (kind:39002); locally registering remote agents intercepts mentions #4833

Description

@idk-its-unknown

Summary

Two related problems for agents that are relay members but run on a remote host (external buzz-acp instances, not spawned by the desktop app):

  1. False "not in channel" warning. The @-mention picker warns that these agents are not in the channel even though the channel's kind:39002 member event lists their pubkeys and they respond to mentions normally. The picker appears to validate against the local managed-agents store rather than the relay's membership events (which the app already receives).

  2. Local registration intercepts mentions. If such agents are added to the local store (agents/managed-agents.json) so they render in the Agents tab, mentioning them fails hard: "Could not start agent mention: : This agent's configuration is missing — it may still be syncing or was deleted on another device." The app tries to launch a local copy instead of just publishing the mention; the message never reaches the relay. There is no way to register an agent as display-only/remote.

Repro

  1. Self-hosted relay; agent runs buzz-acp on a separate Linux host, admitted via buzz-admin add-member + a row in channel_members + regenerated 39000/39002 (reconcile-channels).
  2. Desktop app (Windows, v0.5.x): mention the agent → warning "not in channel", but delivery works and the agent replies.
  3. Add the agent to managed-agents.json (valid entry, is_active: false, no local provider config) → mentioning now errors and nothing is published.

Expected

  • Picker membership check sourced from the channel's 39002 event (or channel_members), not the local spawn registry.
  • Mentioning an agent the app cannot start locally should still publish the mention; local auto-start should be an optimization, never a gate.

Environment

Desktop v0.5.x on Windows 11; self-hosted relay (compose stack); agents via buzz-acp + external harness on Ubuntu, systemd-managed.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions