block / block/buzz

Feature: @everyone / @all group mention in composer and CLI

Open
#6,592 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Rust
Stars
32.7k
Forks
4.3k
Avg merge
1d 13h
Merged PRs (30d)
253

Description

## Summary

There is no way to notify every member of a channel in one go. Mentions are per-identity only (`p` tags / `--mention `), so "@everyone / @all / @channel" has to be simulated by fetching the member list and mentioning each pubkey individually.

## Current behaviour (v0.5.18, Linux AppImage)

- Typing `@everyone` or `@all` in the Desktop composer is sent as plain text — no members are tagged.
- `buzz messages send` only accepts explicit `--mention ` (repeatable); no group keyword.

## Proposed behaviour

Support group mention keywords in both the composer and CLI:

- `@everyone` / `@all` — every current channel member
- `@here` (optional) — members currently present, per presence
- `@channel` as an alias, for Slack/Discord muscle memory

On send, the client expands the keyword to one `p` tag per member at send time (so the relay/event format is unchanged — purely a client-side expansion), keeps the keyword as readable text, and shows a confirmation/count ("Notify 14 members?") above some threshold to avoid accidental blasts. Permissions could optionally be limited to channel admins/owners for large channels.

CLI equivalent: `buzz messages send --channel --content "@everyone ..."` expanding the same way, or an explicit `--mention-all` flag.

## Workaround today

A shell wrapper: `buzz channels members --channel ` → `--mention` per pubkey → `buzz messages send`. Works, but CLI-only; Desktop users have no equivalent.

## Why

Small teams of humans + agents routinely need "all hands" pings (incident notices, daily briefings, schedule changes). Mentioning 5–15 identities by hand is error-prone and partial names fail silently.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.