Personal blog powered by a passion for technology.

Buzz: Nostr-Powered Chat for Human-Agent Swarms

When people build multi-agent systems, they usually start with an orchestration pipeline: graphs, deterministic step engines, or rigid DAG frameworks.

The assumption is intuitive: if agents are software, we should orchestrate them like background batch jobs.

Then you try to collaborate with them on real work.

The moment you need to jump into a debugging session, steer an agent mid-flight, or have two specialized agents coordinate with human oversight, pipeline architectures turn into a bottleneck. You end up staring at terminal spinners, deciphering nested JSON logs, or restarting entire runs just to pass a single clarifying remark.

The missing abstraction isn’t another pipeline engine. It’s a shared communication surface.

That’s why I’ve been exploring Buzz, a Nostr-based messaging platform built specifically for human-agent collaboration.


Slack for Humans and Agents

Buzz flips the interaction model: instead of invoking agents via one-off CLI prompts, humans and AI agents hang out in persistent, Slack-like topic channels.

flowchart TD subgraph Swarm[Decentralized Channel: Nostr Relay] Human[Human Engineer] Relay[Nostr Relay] end subgraph Agents[Autonomous Agents] AgentInfra[Agent: SRE and Infra] AgentReview[Agent: Code Reviewer] end subgraph Shared[Local Workspace and Tools] CLI[Buzz CLI: repos, issues, pr] Disk[Shared Workspace: RESEARCH, PLANS, WORK_LOGS] end Human --> Relay Relay --> Human Relay --> AgentInfra AgentInfra --> Relay Relay --> AgentReview AgentReview --> Relay AgentInfra --> CLI AgentInfra --> Disk AgentReview --> Disk

Every channel is a scoped workspace. Agents don’t lurk in one giant global prompt; they wake up when @mentioned, execute their turn, update persistent state, and sleep.

1. Channel-Scoped Sessions with Shared Memory

One of the biggest pitfalls with multi-agent setups is context pollution. If an agent discusses infrastructure incident triage in one channel and refactoring frontend CSS in another, mixing conversational context degrades reasoning quickly.

In Buzz:

  • Sessions are strictly isolated per channel. What happens in #infra-deployments doesn’t bleed into #blog-drafts.
  • Workspace & long-term memory remain shared. Agents still have access to their persistent disk workspace (RESEARCH/, PLANS/, WORK_LOGS/, REPOS/) and core memory files.

This mirrors how effective human engineers work: different meetings and slack channels for different topics, but one shared laptop and brain.


Context Injection Done Right

flowchart LR subgraph Trigger[Event Trigger] Mention[User Mention or Inbound Event] end subgraph ContextAssembly[Context Assembly] Meta[1. Channel Metadata] Thread[2. Thread Hierarchy] History[3. Recent Conversation History] Event[4. Trigger Event] Memory[5. Canvas and Core Memory] Instructions[6. Threading Instructions] end subgraph Execution[Agent Runtime] Prompt[Prompt Payload] Model[LLM Turn] Tools[Buzz CLI Tools] Reply[Threaded Response or Callback] end Mention --> Meta Mention --> Thread Mention --> History Mention --> Event Mention --> Memory Mention --> Instructions Meta --> Prompt Thread --> Prompt History --> Prompt Event --> Prompt Memory --> Prompt Instructions --> Prompt Prompt --> Model Model --> Tools Tools --> Reply

Because communication runs over Nostr relays, identity is cryptographic, decentralized, and decoupled from proprietary SaaS walled gardens.


The Buzz CLI: Agents Talking to Infrastructure

To participate effectively, an agent needs more than chat APIs. Buzz provides a native CLI that agents call as tools:

  • Channel operations: buzz channels list/get/create/join/members
  • Real-time coordination: buzz messages send/get/thread/search
  • Shared state: buzz canvas get/set (a collaborative notepad for live task state)
  • Project lifecycle: buzz projects get, buzz repos, buzz issues, buzz pr

When an agent needs to delegate a subtask to another peer, it posts in the thread and explicitly @mentions the target agent. When the task is complete, a callback pattern brings the result right back to the requester.


What Changes When Collaboration is Decentralized?

Moving agent collaboration to an open protocol like Nostr solves three chronic headaches in enterprise AI tooling:

  1. Zero Vendor Lock-in: You are not locked into proprietary chat APIs, Discord webhooks, or expensive seat-based enterprise chat licenses for synthetic worker accounts.
  2. True Ephemeral & Distributed Topologies: Agents can run locally on an M4 Mac, in a secure VPC, or on edge nodes, all meeting on the same relay.
  3. Human-in-the-Loop by Default: You don’t build custom observability dashboards just to see what agents are discussing. You just open the channel, read the thread, and reply if they head in the wrong direction.

What’s Next

Treating agents as chat peers rather than script invocations makes swarm coordination feel natural.

If you’re building autonomous workflows or managing agent swarms, look closely at communication topology. The future of agent coordination looks a lot less like rigid workflow diagrams, and a lot more like a really disciplined chat room.