There are two ways to try Buzz, the workspace Jack Dorsey’s Block just shipped that fuses team chat, AI agents and Git hosting into a single app. You can grab the hosted desktop build and click through Builderlab sign-in, or you can clone the repo and run the relay yourself. The hosted route sounds friendlier – it is not. As of launch week, hosted onboarding has open bugs that can lock you out of your own community (issue #2484, issue #2367). Self-hosting takes ten more minutes and skips the whole hosted-auth funnel. That’s the path we’ll follow.
What Buzz actually is (30-second version)
On July 21, 2026, Block released Buzz, a free open-source workspace that combines team chat, AI agents and Git hosting in a single interface – Dorsey pitched it as “model-agnostic, decentralized, self-sovereign, and open source.”The code is Apache 2.0 at github.com/block/buzz and ships at version 0.4.21 with desktop apps for macOS, Windows, and Linux; mobile clients remain unfinished.
The trick isn’t the feature list. It’s the plumbing. The relay is a Nostr server where every message, reaction, workflow step, review approval, and git event is a signed event in one log – same identity model, same audit trail, whether the author is a person or a process. That’s why an AI agent posting a pull request in Buzz has a cryptographic signature you can trace back to the human who authorized it. Slack bots don’t do that.
Setting up Buzz locally (the tutorial)
Before anything: this is a developer install. If you don’t have a terminal open right now, close this tab and use buzz.xyz instead – but read the pitfalls section first.
1. Prerequisites
Per the official README, you need Docker plus Hermit – or Rust 1.88+, Node 24+, pnpm 10+, just if you’d rather manage toolchains yourself. Hermit is the easier route because it pins everything for you.
2. Clone and bootstrap
git clone https://github.com/block/buzz.git && cd buzz
. ./bin/activate-hermit
just setup && just build
just dev
`just setup` runs `just bootstrap` automatically – it copies .env.example to .env if needed, downloads all required tools via Hermit, and starts Docker services plus migrations. When it finishes, the relay comes up on ws://localhost:3000, the desktop app pops up, and you’re in.
3. Add an agent
Buzz doesn’t lock you to one AI provider. The platform supports Goose, OpenAI Codex, and Anthropic Claude Code as agent harnesses through the open Agent Client Protocol standard.Goose is the open-source agent framework Block first released in January 2025, so it’s the path of least resistance on day one. You wire it up through the `buzz-acp` package, which is the ACP use for Goose/Codex/Claude Code included in the monorepo.
4. Host a repo inside a channel
This is the part that makes Buzz different from every other chat tool. Buzz includes a built-in Git software forge using standard Git Smart HTTP, so teams can host repositories and manage code reviews entirely within Buzz without a separate GitHub account – feature branches become dedicated channels where patches, CI results, and review comments are stored alongside the discussion that produced them.
Push a branch, get a channel. That’s the model.
Pro tip: Before you invite an agent to a channel, remember that agents in Buzz can act on triggers, not just replies. Workflows fire on a message, a reaction, a schedule, or a webhook. Scope the channel narrowly the first time – one repo, one workflow – until you’ve watched what the agent actually does under real events.
Common pitfalls on launch week
None of these show up in the marketing post. They show up in the GitHub issue tracker, filed by people trying Buzz right now.
- Hosted signup can silently hang.During first-run onboarding, selecting “Create a community” opens Builderlab authentication in the browser, and the endpoint can fail before any signup UI loads with ERR_SSL_PROTOCOL_ERROR. Buzz stays on “Waiting for your browser…” with no way to switch to self-host from that screen. Workaround: quit and use the self-host path above.
- 3-community hard cap on hosted.The 3-community limit (limit_reached) and the resulting address shape (<name>.communities.buzz.xyz) aren’t communicated before creation. You only see it when you try to make a fourth. Plan community structure up front.
- CLI fails silently on a fresh machine.Every relay-touching command fails with a JSON relay/network error, because the default BUZZ_RELAY_URL is http://localhost:3000 and nothing is listening there on a fresh machine (and BUZZ_PRIVATE_KEY is unset). Fix: run `just dev` first so the relay is actually up, then export a keypair before touching buzz-cli.
- You may not see your own community URL after creating one.The UI doesn’t surface the community ID/URL after create, so you can end up stuck outside on the “Join a community” screen. Copy the npub / relay URL from the terminal output before closing anything.
What “decentralized” actually means here
Read the launch posts and you’d think Buzz is peer-to-peer. It isn’t – not yet. Despite the “decentralized” framing, each workspace runs on a single relay, which the project’s repository calls its “single source of truth.” The decentralization is about who owns that relay: you, Block, or anyone else. It’s portable, not distributed.
Is that a problem? Depends what you were expecting.
Performance and what you actually get today
Buzz is v0.4.21 software, so raw benchmarks aren’t meaningful yet. But two data points are worth flagging.
| Capability | Status at launch |
|---|---|
| Chat, threads, DMs, channels, media, search, audit log, desktop app | Working |
| YAML workflows with message/reaction/schedule/webhook triggers | Working |
| Git forge (Git Smart HTTP), repo hosting inside channels | Working, framed as “still early” |
| Agent harnesses (Goose, Codex, Claude Code via ACP) | Working |
| Mobile clients | Unfinished |
| Peer-to-peer relay replication | Does not exist yet |
One less obvious signal of intent: the multi-tenant isolation spec has been mechanized in TLA+ – a formal specification language for distributed systems – and its authorization properties have been verified in Tamarin, an automated security protocol prover; that level of formal verification is unusual for v0.4.21 software. Block is treating Buzz as infrastructure, not a demo.
When NOT to use Buzz
Honest list. Skip Buzz if:
- You’re a solo dev or a two-person team. The whole value proposition is agents and humans coordinating in shared rooms. If you have no team, GitHub + Cursor + a Discord server does the same job with fewer moving parts.
- You need a mobile client that works. As of v0.4.21, mobile isn’t ready. Not “has bugs” – not shipped.
- Your team can’t tolerate onboarding friction. Every teammate needs a Nostr keypair. That’s a concept, not a click. If half your team will bounce at “generate a keypair,” wait a release cycle or two.
- You need mature compliance certifications. SOC 2, HIPAA, FedRAMP – none of the launch-day coverage claims Buzz has them. If your enterprise buyer needs those pieces of paper, this isn’t your tool this quarter.
- You want a Slack replacement without the Git and agent parts. Buzz is heavier than Slack. Using it for chat alone is like driving a truck to buy coffee.
FAQ
Is Buzz free?
Yes. Apache 2.0 open source, plus a free hosted relay in beta with no usage limits during that period.
Can I use my existing Claude or OpenAI API keys with Buzz instead of Goose?
Yes – and this is where Buzz’s model-agnostic pitch actually matters. Say your team already pays for Claude Code seats. You can wire Claude Code as the use through ACP, keep your existing subscription, and Buzz just becomes the room the agent lives in. On X, a developer asked Dorsey directly whether Buzz supports “bring your own” harnesses like Claude Code or Codex instead of being locked to one; Dorsey’s reply was a one-word “yes.”
How is Buzz different from just running Slack + GitHub + a bot?
The difference is that in Slack, a bot is a bot – one account, one token, everything it does looks the same. In Buzz, every agent has its own cryptographic keypair and every action it takes is a signed event tied back to the human who authorized it. That changes what “accountability” means when an agent merges a PR at 3 a.m. It’s a legal and compliance shift, not just a UI one. Whether the industry actually cares yet – that’s the open question.
Next action: Open a terminal, run the four commands from step 2 above, and get the desktop app booting locally. Once the relay is up on port 3000, invite a Goose agent into a channel and give it one narrow task – like reviewing diffs on a throwaway repo. Twenty minutes of hands-on will tell you more than any launch post can.