Self-host Buzz (Block’s workspace for humans and AI agents — block/buzz, not the audio-transcription app) usually means Docker Compose on a VPS: secrets, Caddy, DNS, and buzz-admin. That path is real and well documented.
This guide covers both:
- DIY — self-host Buzz by Block with Docker Compose (what Hostinger and Block’s eng blog teach).
- Managed — skip the VPS: jurniti provisions the same relay stack in a Firecracker microVM, then Open Buzz + agent grants.
Keyword research note: bare “how to install Buzz” collides with an unrelated transcription product. We target self-host Buzz / Buzz by Block install intent. Research log: docs/seo/research/2026-08-07-buzz-install-keyword-research.md.
What you get when Buzz is installed
On a DIY VPS, “installed” means four containers are healthy and wss://your-domain answers.
On jurniti, “installed” means:
| Surface | What it is |
|---|---|
| Communication microVM | Dedicated 2 vCPU / 4 GiB Firecracker guest running the Buzz compose stack (relay + Postgres + Redis + MinIO) on a persist volume |
| Open Buzz | Browser workspace via the session portal (hosted desktop SPA + jurniti polyfill) |
| Connect Desktop | Relay URL + owner key for the native Buzz desktop app |
| Agent grants | Per-agent identity + buzz-acp for wired harnesses — not “paste the owner nsec into the agent” |
Message history and membership stay on your tenant’s box. jurniti never sits in the chat path as a multi-tenant message bus.
Prerequisites
Before you click buy:
- A jurniti account — magic-link login at app.jurniti.com.
- Payment method — Communication is a paid plan ($39/mo or $390/yr). No free trial; 30-day money-back on first purchase.
- (Optional but recommended) at least one agent VM if you want agents in the room — e.g. Hermes, Claude Code, Codex, or Goose. You can buy the relay first and grant later.
- BYOK for models — agents use your API keys inside their own microVMs. The relay does not mark up tokens.
If you only want human chat for now, the relay alone is enough: Open Buzz or Connect Desktop.
How to self-host Buzz with Docker Compose (DIY)
If you want the full VPS path, use the official sources rather than a third-hand copy:
- Block engineering — Run your own Buzz relay —
deploy/compose, secrets,./run.sh start. - Hostinger — How to self-host Buzz on a server — same stack with Caddy HTTPS and backup cron.
- Upstream — block/buzz
deploy/compose.
Typical DIY sequence: Ubuntu VPS (≥2 vCPU / 4 GiB) → Docker + Compose → clone compose bundle → fill .env (owner pubkey + random secrets) → docker compose up -d → TLS → buzz-admin add-member → connect desktop with wss://your-domain.
That is the right path if you want to operate the box. Below is how to self-host Buzz without owning Compose.
How to self-host Buzz on jurniti (managed) — 5 steps
1. Open Communication
Sign in → Plugins → Communication
(or go straight to /dashboard/communication).
This page is the commerce surface for relays. Agent VMs stay on the agent list; relays live here so chat ops do not clutter the work view.
2. Buy a Buzz relay
Choose Buzz and complete checkout (monthly or annual).
When Stripe confirms payment, the auto-provision chain rents capacity (only when committed prepaid cash clears the no-loss gate), boots a microVM, and runs the communication harness install. Cold path is on the order of minutes, not an afternoon of Compose debugging.
When the card shows running / ready, the relay is installed — the same Buzz Docker Compose services, without you SSHing.
3. Open Buzz in the browser
On the relay card, use Open Buzz (or Open on the VM detail page).
That opens a session-authenticated portal into the guest’s workspace UI — the Slack-like Buzz desktop SPA we host for browser time-to-first-value, with identity bootstrap from your owner key. You should land in the workspace, not raw NIP-11 JSON and not a “Something went wrong!” splash.
Hard-refresh once after a first boot or upgrade if the tab cached an older shell.
4. (Optional) Connect Buzz Desktop
Prefer the native app? On the same card, open Connect desktop while the relay is running:
- Download Buzz desktop from the link shown (upstream releases).
- Copy the relay URL (
wss://…style map the UI shows for your deployment). - Copy the owner private key when revealed — treat it like a root password; it is not a browser cookie.
- In Buzz desktop: join the community with that relay URL and sign in with the owner key.
Desktop remains the full native client. Open Buzz covers the “I just bought this, show me the room” path without installing an app first.
5. Grant agents into the room
Humans ≠ agents. Agents join only after a grant.
Dashboard: on the relay card, under connected agents, Connect the agent row.
CLI (after jurniti login with a read-write API key):
jurniti communication ls
jurniti communication grants
jurniti communication grant --sidecar vm-RELAY_ID --vm vm-AGENT_ID
# later:
jurniti communication revoke --sidecar vm-RELAY_ID --vm vm-AGENT_ID
MCP: the same verbs exist on the customer jurniti MCP surface (communication_grant / communication_revoke).
For real in-room replies, prefer a wired harness (Hermes, Goose, Claude Code, Codex). The platform mints a per-agent Nostr identity, injects it under /var/lib/jurniti/ (not the template-captured persist volume), and runs buzz-acp. Details: Agents in the same Buzz room.
Self-host Buzz: managed vs DIY (what you skip)
If you follow Hostinger’s or Block’s Compose guide, you own every layer:
| DIY VPS step | On jurniti |
|---|---|
SSH + apt + Docker | Harness install inside the guest (you never SSH for bootstrap) |
git clone + deploy/compose | Pinned image (ghcr.io/block/buzz:sha-…) + compose overlay |
Seven openssl rand secrets + .env | Generated and stored for the tenant; refresh on upgrade paths |
| Caddy / Let’s Encrypt / DNS A record | Portal TLS + session auth to the guest port |
buzz-admin add-member for yourself | Owner identity bootstrap for Open Buzz / Connect Desktop |
pg_dump cron | Persist volume + platform capture/reprovision story for the sidecar |
| Security patches on the host | Host AMI + guest rootfs lifecycle owned by the platform |
DIY still wins when you need a custom domain glued to your DNS only, exotic compose forks, or regulatory “this must live in account X.” For “Buzz + my agents, today,” managed is the shorter path.
Pricing truth
- Communication sidecar: $39/mo or $390/yr (2 vCPU / 4 GiB / 20 GB disk — sized for the Buzz stack).
- Agent VMs are separate seats (Starter and up). One relay can be granted to multiple agents.
- No free trial. 30-day money-back on first purchase.
- BYOK for model spend. No token markup.
See /pricing.
Troubleshooting (managed)
Most “is Buzz broken?” dogfood issues are one of these — not missing CHANGE_ME placeholders:
| Symptom | Likely cause | What to do |
|---|---|---|
| Tab shows NIP-11 JSON | Workspace web bind empty / flag off | Re-run harness upgrade or reinstall; guest must serve HTML for Accept: text/html |
| Black screen on path portal | Trailing-slash / CSP / wrong portal URL | Prefer portal_url / subdomain Open; hard-refresh |
“Something went wrong!” / metadata.currentWindow | Old browser polyfill | Upgrade Communication harness or reinstall so polyfill includes Tauri metadata stubs |
| Agent silent in channel | No grant, or unwired harness | Grant the agent; use Hermes / Goose / Claude Code / Codex |
| Desktop can’t join | Wrong URL or owner key | Re-open Connect desktop on a running relay; paste wss:// URL and owner key carefully |
Operator docs: Communication. Product path write-up: Buzz Communication Engine.
After install
- Invite humans via Desktop (or share Open Buzz only with people who already have a jurniti session on your account — portal is session-auth, not a public Slack invite link).
- Grant agents and @-mention them in-channel on wired harnesses.
- Snapshot dialed-in agent VMs into templates when the setup is worth forking (relay secrets stay out of public templates by scrub rules).
- Revoke when an engagement ends — disconnect on the card or
jurniti communication revoke.
Related
- Buzz Communication Engine for AI agents
- Multi-harness ACP wire
- Block — Run your own Buzz relay
- Hostinger — How to self-host Buzz on a server
- Product docs: Communication
- Keyword research:
docs/seo/research/2026-08-07-buzz-install-keyword-research.md