block / block/buzz

Cross-desktop @mention autocomplete doesn't discover managed agents from other Desktop instances

Open
#4,187 1 comment 1 reaction 0 assignees View on GitHub
Dominant language
Rust
Stars
32.7k
Forks
4.3k
Avg merge
1d 13h
Merged PRs (30d)
253

Description

## Bug Description

When a managed agent is created on one Buzz Desktop instance (Machine A), it is not discoverable in the `@mention` autocomplete picker on a second Buzz Desktop instance (Machine B) connected to the same relay.

## Steps to Reproduce

1. On Machine A, create a managed agent via Buzz Desktop UI using the Claude Code (native) runtime
2. The agent starts, connects to the relay, and responds to mentions from Machine A's Buzz Desktop
3. On Machine B, open a channel where the agent is a member
4. Type `@` to open the mention autocomplete picker
5. The agent from Machine A does not appear in the picker

## Expected Behavior

Agents managed by other Desktop instances should appear in the `@mention` autocomplete picker when they are channel members and have valid profiles on the relay.

## Actual Behavior

Only locally-managed agents appear in the autocomplete picker. Relay-discovered agents (from `list_relay_agents` / kind:10100 events) are not showing despite:
- Being channel members with `role: "bot"`
- Having valid kind:0 profiles
- Having kind:10100 agent profile events published (via `buzz-acp` connection)

## Key Observation

An agent created via the standalone `buzz-acp` binary (ACP harness, e.g., Goose) **IS** visible in the cross-desktop autocomplete. Only agents created via Buzz Desktop's native managed agent system with Claude Code harness are **NOT** visible.

This suggests the native Claude Code managed agent runtime publishes different Nostr events than the ACP harness, or doesn't publish kind:10100 events at all.

## Workaround

Mentions work when sent from the same Desktop that manages the agent, or via the `buzz` CLI with explicit `--mention `. The agents respond correctly — only the autocomplete picker is affected.

## Environment

- Two Buzz Desktop instances (v0.5.3) on separate machines, connected to the same self-hosted relay
- Both Desktop instances authenticate and see the same channel data
- Closed relay (`BUZZ_REQUIRE_RELAY_MEMBERSHIP=true`)

## Diagnostic Details

- `buzz channels members` confirms all agents are channel members with `role: "bot"`
- `buzz users get --pubkey ` returns valid profiles for all agents
- `buzz users presence --pubkeys ` shows agents as `"status":"online"`
- `buzz-acp` was run with each agent's private key for ~10 seconds to publish kind:10100 events
- Buzz Desktop on Machine B was restarted after kind:10100 publication — picker still doesn't show the agents

Contributor guide

Open the contributing guide

Research direction

Start at the @mention autocomplete picker and trace how relay-discovered agents from list_relay_agents and kind:10100 events are included. Compare the events published by the native Claude Code managed-agent runtime with those from buzz-acp. Done means a valid native managed agent from another Desktop instance appears for channel members in the picker.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
desktop, distributed-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.