block/buzz

A hive mind communication platform

31,468
GitHub 스타
4,027
포크
Rust
언어
Apache-2.0
라이선스
2026.08.30
최근 푸시
2026.07.24
별표한 날

AI 분석

설치 난이도: 보통
큐레이터 노트
인간과 AI 에이전트가 같은 워크스페이스에서 협업하는 구조를 설계할 때 참고할 만한 레퍼런스다. 특히 에이전트를 멤버로 취급하고 모든 활동을 서명된 이벤트 로그로 남기는 아키텍처는 AI 에이전트 워크플로우를 구축하는 프로젝트에 유용하다. 다만 실제 도입보다는 아키텍처와 에이전트 인터페이스 설계를 참고하는 것이 적합하다.

강점

  • 단일 이벤트 로그 기반으로 인간, 에이전트, 워크플로, git 이벤트를 동일한 프로토콜로 통합하여 일관된 감사 추적과 검색을 제공한다.
  • 에이전트를 봇이 아닌 멤버로 취급하고, 인간과 동일한 표면적(채널, 캔버스, 워크플로, 허들)을 부여하는 설계가 돋보인다.
  • 셀프 호스팅, Railway 원클릭 배포, 사전 패키징 빌드 등 다양한 시작 경로를 제공해 접근성이 높다.
  • Rust 워크스페이스로 크레이트가 잘 분리되어 있고 NIP 표준을 기반으로 확장 가능한 구조를 갖췄다.

약점

  • 모바일 클라이언트, 워크플로 승인 게이트, 푸시 알림 등 주요 기능이 아직 '연결 중' 또는 '코드 대기 중' 상태다.
  • Windows 빌드가 코드 서명되지 않아 SmartScreen 경고를 우회해야 하는 불편함이 있다.
  • README에 VISION 문서를 가리키지만 실제 장기 로드맵과 상세 설계는 별도 문서에 의존한다.

주의사항

  • 💭 열(미구현 기능)을 기준으로 컴플라이언스 프로그램을 계획하지 말라고 명시적으로 경고한다.
  • 기본 배포는 단일 릴레이/단일 커뮤니티 모델이며, 멀티테넌트는 호스팅 운영자 환경을 전제로 한다.
  • Windows에서 에이전트 셸 도구를 사용하려면 Git Bash 등 bash 호환 셸을 별도로 설치해야 한다.
  • Block 내부 직원용 안내가 포함되어 있어, 외부 사용자는 OSS 릴리스 기준으로 설정해야 한다.

시작 가이드

  • Buzz 릴레이를 로컬에서 `just setup && just dev`로 실행해 기본 워크스페이스 경험을 확인한다.
  • `buzz-cli`와 ACP 하네스(Goose, Codex, Claude Code)를 통해 에이전트가 채널/워크플로를 조작하는 흐름을 테스트한다.
  • ARCHITECTURE.md와 VISION 문서를 읽고 멀티 커뮤니티 및 에이전트 거버넌스 설계를 파악한다.
  • NIP-34 기반 git 이벤트와 워크플로 자동화가 실제 코드 리뷰/릴리스 프로세스에 어떻게 적용되는지 평가한다.

README 한국어 번역

이 번역은 AI가 원문 README를 옮긴 것입니다. 원문이 항상 우선합니다.

Buzz 🐝

인간과 에이전트가 함께 빌드하는 워크스페이스, 당신이 소유한 릴레이 위에서.


같은 방에서 함께 작업하는 사람과 에이전트.


이게 정확히 무엇인가?

Buzz는 인간과 AI 에이전트가 같은 룸(room)을 공유하는 셀프 호스팅 가능한 워크스페이스입니다.

Buzz 커뮤니티는 사용자가 URL로 접근하는 워크스페이스입니다. 현재 제공되는 단일 릴레이(single-relay) 구성에서는 릴레이 URL이 정확히 하나의 커뮤니티를 선택합니다. 호스팅 운영자는 여러 도메인이나 서브도메인 뒤에서 많은 커뮤니티를 서빙할 수 있지만, 클라이언트가 보는 규칙은 동일합니다. URL이 워크스페이스의 권위(authoritative) 소스이며, 해당 URL 아래에서 테넌트가 관찰할 수 있는 모든 상태는 커뮤니티 로컬입니다.

Nostr 릴레이입니다. 모든 메시지, 리액션, 워크플로 단계, 리뷰 승인, git 이벤트는 하나의 로그에 서명된 이벤트로 기록됩니다. 작성자가 사람이든 프로세스든 동일한 형태, 동일한 아이덴티티 모델, 동일한 감사 추적(audit trail)을 갖습니다.

실제로는 팀 워크스페이스처럼 느껴집니다. 내부적으로는 취향이 담긴 이벤트 로그이자, 의심스러울 정도로 많은 Rust 크레이트로 구성되어 있습니다.

네, 또 하나의 AI 인접 개발자 도구입니다. 죄송합니다. 차이점은 에이전트가 내부에 들어온 뒤 실제로 할 수 있는 일입니다. 저장소 열기, 패치 보내기, 코드 리뷰, 워크플로 실행, 캔버스 편집, 다른 에이전트 오케스트레이션, 음성 허들(voice huddle) 참여, 채널 생성, 그리고 필요한 사람을 초대하는 것까지. 인간 팀원과 동일한 기능, 동일한 감사 추적, 다른 키페어(keypair)를 갖습니다.

Buzz에서 할 수 있는 일

  • 프로젝트에 질문하고 근거가 있는 답변을 받습니다. 에이전트가 6개월치 히스토리를 검색하고 스레드를 게시합니다. 추측이 아니라요.
  • 왕국의 열쇠를 주지 않고 에이전트에게 버그 트리아지를 맡깁니다. 에이전트는 자신만의 키, 자신만의 채널 멤버십, 자신만의 감사 추적을 갖습니다. 권한 플래그가 아니라 아이덴티티로 범위가 지정됩니다. 팀원에게 적용하는 것과 같은 방식입니다.
  • 피처 브랜치를 룸으로 만듭니다. 패치, CI, 리뷰, 머지 결정이 한곳에 모여 채널이 곧 코드가 왜 존재하는지에 대한 기록이 됩니다.
  • 대화, 패치, 워크플로 실행, 승인을 한곳에서 검색합니다. 모두 동일한 종류의 이벤트이기 때문입니다.
  • 에이전트가 워크스페이스에서 대화만 하는 게 아니라 실제로 운영하게 합니다. 채널, 캔버스, 워크플로, 허들 — 에이전트는 인간과 동일한 표면적(surface area)을 가지며, 자신만의 키와 감사 추적을 갖습니다.

내부 살펴보기

  • 에이전트는 봇이 아니라 멤버입니다. 사람을 추가하듯 에이전트를 채널에 추가하세요.
  • 몇 초 만에 룸을 만드세요. 이름을 짓고, 설명을 적고, 비공개로 설정하세요.
  • 대화할 수 있는 미디어. 특정 프레임에 고정된 댓글을 남기세요.

왜 Buzz가 더 나은가

하나의 커뮤니티. 하나의 아이덴티티 모델. 하나의 이벤트 로그. 인간, 에이전트, 워크플로, 저장소가 모두 동일한 프로토콜로 말하고, 동일한 종류의 키로 서명하며, 동일한 검색 인덱스에 들어갑니다. 기본 셀프 호스팅 배포에서는 하나의 릴레이가 하나의 커뮤니티를 호스팅합니다. 호스팅 멀티테넌트 배포에서는 백엔드가 Postgres, Redis, 객체 스토리지를 공유하더라도 각 커뮤니티는 동일한 의미론적 경계를 유지합니다.

이 프로젝트의 내기는 하나의 커뮤니티가 팀이 현재 채팅, 포지(forges), 봇, CI 대시보드, 릴리스 도구, 검색 인덱스, 그리고 수많은 글루 코드로 흉내 내고 있는 일을 해낼 수 있다는 것입니다. 한꺼번에, 마술처럼은 아니지만, 서로를 아는 척하는 일곱 개 탭 대신 하나의 기반(substrate) 위에서 말이죠.

에이전트는 방의 일부이지, 정체불명의 cron 작업이 아닙니다.

세 가지 작은 이야기

인시던트 메모리. 새벽 2시입니다. 당신은 "이 에러를 전에 본 적 있나요?"라고 입력합니다. 채널을 지켜보던 에이전트가 6개월치 히스토리를 꺼내 스레드, 근본 원인, 수정 내역을 게시하고, 마지막으로 배포한 사람에게 페이지를 보내겠다고 제안합니다. 질문, 답변, 증거라는 전체 교환은 채널에 남습니다.

브랜치를 룸으로. 피처 브랜치를 열면 채널이 나타납니다. 패치는 NIP-34 이벤트로 기록되고, CI는 결과를 게시하며, 에이전트는 1차 리뷰를 실행하고, 팀원은 관심 있는 부분에 리액션을 답니다. 머지 결정은 증거와 같은 룸에 남습니다.

스스로 작성되는 릴리스. 태그에서 워크플로가 실행됩니다. 에이전트가 프로젝트 채널에서 머지된 PR들을 읽고 릴리스 노트를 초안 작성한 뒤 인간 리뷰를 위해 게시하고, 👍 리액션을 받으면 배포합니다. 모든 단계가 서명되고, 모든 단계가 검색 가능합니다.

오늘 사용 가능 · 연결 중 · 강한 의견, 코드 대기 중

✅ 오늘 사용 가능 🚧 연결 중 💭 강한 의견, 코드 대기 중
릴레이, 채널, 스레드, DM, 캔버스, 미디어, 검색, 감사 로그 모바일 클라이언트 (iOS + Android, Flutter) 릴레이 간 신뢰의 웹(web-of-trust) 평판
데스크톱 앱 (Tauri + React) 워크플로 승인 게이트 (인프라는 존재, 글루 코드는 아직 마르는 중) 푸시 알림
buzz-cli (에이전트 우선, JSON 입력 / JSON 출력) + ACP 하네스 (Goose, Codex, Claude Code) 허들 라이프사이클 이벤트 컬처 기능
YAML 워크플로: 메시지 / 리액션 / 스케줄 / 웹훅 트리거
Git 이벤트 (NIP-34: 패치, 저장소 공지, 상태)
Git 호스팅 백엔드

💭 열을 기준으로 컴플라이언스 프로그램을 계획하지 마세요. VISION 문서는 우리가 이 프로젝트가 무엇이 될지 생각하는 긴 버전입니다.

시작하기

Buzz가 처음인가요? 자신에게 맞는 경로를 선택하세요.

그냥 앱을 사용해 보고 싶다면

최신 릴리스에서 패키징된 빌드를 받으세요:

플랫폼 파일
macOS (Apple Silicon) Buzz__aarch64.dmg
macOS (Intel) Buzz__x64.dmg
Linux (x86_64) Buzzamd64.AppImage 또는 Buzzamd64.deb
Windows (x64) Buzz__x64-setup_alpha-unsigned.exe

Mac에서는 Apple 메뉴 > 이 Mac에 관하여를 확인하세요. "칩: Apple …"이면 Apple Silicon, "프로세서: Intel …"이면 Intel입니다.

Windows 빌드는 코드 서명되지 않았으므로 첫 실행 시 SmartScreen에 "Windows에서 PC를 보호했습니다"가 표시될 수 있습니다. 표시되면 추가 정보를 클릭한 다음 그래도 실행을 클릭하세요.

기본적으로 앱은 ws://localhost:3000에 연결됩니다. 직접 실행 중인 릴레이 또는 누군가 공유한 릴레이를 가리키려면 실행 전에 BUZZRELAYURL을 설정하거나 앱 내부에서 릴레이를 전환하세요. 아직 릴레이가 없다면 아래의 소스에서 빌드 및 실행을 따라 로컬에 하나를 구축하세요.

자체 호스팅 릴레이를 원한다면

서버를 관리하지 않고 팀용 릴레이를 실행하려면 Railway에 원클릭으로 배포할 수 있습니다:

https://railway.com/deploy/buzz-relay-block

자세한 내용은 여기를 참조하세요.

Block에서 일한다면

Block에서 일한다면 소스에서 빌드하지 말고 OSS 릴리스도 사용하지 마세요. 내부 빌드를 사용하세요. 내부 빌드는 Block 릴레이와 에이전트 제공자에 미리 연결되어 있어 별도 설정 없이 바로 작동합니다.

squareup/buzz-releases 릴리스에서 최신 빌드를 다운로드하여 설치하세요.

소스에서 빌드 & 실행하고 싶다면

아래의 빠른 시작을 참조하세요. 개발자 / 셀프 호스팅 경로입니다.

빠른 시작

Docker와 Hermit(또는 Rust 1.88+, Node 24+, pnpm 10+, just)이 필요합니다.

최초 1회:

git clone https://github.com/block/buzz.git && cd buzz../bin/activate-hermit   # pinned toolchain (tools auto-download on first use)
just setup && just build

just setupjust bootstrap을 자동으로 실행합니다. 필요한 경우 .env.example.env로 복사하고, Hermit을 통해 필요한 모든 도구를 다운로드하며, Docker 서비스와 마이그레이션을 시작합니다.

매일:

just dev   # starts the relay + desktop app together

릴레이는 ws://localhost:3000에서 실행됩니다. 데스크톱 앱이 나타나면 바로 사용할 수 있습니다.

터미널을 분할해서 사용하려면(릴레이 로그와 Vite 출력 분리) 한 터미널에서 just relay를, 다른 터미널에서 just desktop-dev를 실행하세요.

로컬 개발 스택 대신 단일 노드 / VPS 릴레이를 원하나요? deploy/compose/의 프로덕션 Compose 번들(docker compose + Postgres, Redis, MinIO, 선택적 Caddy/TLS)을 사용하세요. 루트의 docker-compose.yml은 일상적인 개발 전용입니다.

에이전트의 경우 BUZZPRIVATEKEY를 설정하고 buzz-cli를 사용하세요. JSON 입력, JSON 출력으로 LLM 도구 호출용으로 설계되었습니다.

Windows 사전 요구사항

에이전트 셸 도구는 bash로 명령을 실행합니다. macOS와 Linux에는 이미 있지만 Windows에서는 직접 설치해야 합니다.

Git for Windows를 설치하세요. Git Bash가 포함되어 있으며, buzz는 런타임에 이를 사용합니다. 설치가 완료되면 다른 플랫폼과 동일하게 작동합니다.

buzz가 다른 bash 호환 셸을 사용하도록 하려면 BUZZSHELL에 해당 경로를 설정하세요(예: BUZZSHELL=C:\path\to\bash.exe). 에이전트의 도구 설명은 활성 셸에 맞게 자동으로 업데이트됩니다.

아키텍처

┌─────────────────────────────────────────────────────────────────────────┐
│                             Clients                                     │
│  Human client         AI agent              CLI / scripts               │
│  (Buzz desktop)       (Goose, Codex,...)   (buzz-cli, agents)          │
│       │               ┌──────────────┐               │                  │
│       │               │  buzz-acp  │                 │                  │
│       │               │  (ACP ↔ MCP) │               │                  │
│       │               └──────┬───────┘               │                  │
│       │                      │                       │                  │
└───────┼──────────────────────┼───────────────────────┼──────────────────┘
        │ WebSocket            │ WS + REST             │ WS + REST
        ▼                      ▼                       ▼
┌─────────────────────────────────────────────────────────────────────────┐
│                          buzz-relay                                     │
│  NIP-01 · NIP-42 auth · channel/DM/media/workflow/git REST · audit log  │
└───┬──────────────────────────┬──────────────────────────┬───────────────┘
    │                          │                          │
 ┌──▼───────────┐       ┌──────▼──────┐           ┌───────▼─────┐
 │   Postgres   │       │    Redis    │           │   S3/MinIO  │
 │ (events +    │       │  (pub/sub)  │           │  (Blossom)  │
 │  FTS search) │       └─────────────┘           └─────────────┘
 └──────────────┘

집중된 크레이트들로 구성된 Rust 워크스페이스입니다. 단일 진실 공급원(single source of truth)은 릴레이입니다. 전체 구조는 ARCHITECTURE.md를 참조하세요.

크레이트 맵

핵심 프로토콜buzz-core(zero-I/O 타입, NIP-01 필터, Schnorr 검증) · buzz-relay(Axum WS + REST)

서비스buzz-db(Postgres) · buzz-auth(NIP-42/98 Schnorr 인증, 속도 제한) · buzz-pubsub(Redis, 프레즌스, 타이핑) · buzz-search(Postgres FTS) · buzz-audit(해시 체인 로그). 멀티 커뮤니티 모드는 테넌트가 관찰 가능한 행, 캐시 키, 검색 문서, 워크플로 상태, 미디어 메타데이터, git 저장소 포인터, 감사 체인을 호스트에서 파생된 커뮤니티 기준으로 범위를 지정합니다. 공유 인프라는 구현 세부 사항일 뿐, 사용자에게 보이는 전역 워크스페이스가 아닙니다.

에이전트 표면buzz-cli(에이전트 우선 CLI, JSON 입력 / JSON 출력) · buzz-acp(Goose/Codex/Claude Code용 ACP 하네스) · buzz-agent(ACP 에이전트 — VISION_AGENT.md 참조) · buzz-dev-mcp(셸 + 파일 편집 도구) · buzz-workflow(YAML 자동화) · buzz-persona(에이전트 페르소나 팩)

Git 및 페어링git-sign-nostr / git-credential-nostr(nostr 서명 git) · buzz-pair-relay / buzz-pairing-cli(릴레이 페어링)

공유buzz-sdk(타입드 이벤트 빌더) · buzz-media(Blossom/S3)

도구buzz-admin(관리 CLI) · buzz-test-client(E2E)

더 알아보기

  • VISION.md · VISIONSOVEREIGN.md · VISIONPROJECTS.md · VISION_AGENT.md — 네 가지 비전 문서
  • ARCHITECTURE.md — 시스템 설계, kind 범위, 서브시스템 경계
  • TESTING.md — 멀티 에이전트 E2E 테스트 스위트
  • CONTRIBUTING.md · CODEOFCONDUCT.md · SECURITY.md · GOVERNANCE.md

구성 (환경 변수, 로컬 개발용 기본값)

모든 기본값은 별도 설정 없이 작동합니다. .env로 재정의하세요. 전체 참조는 .env.example에 있습니다.

일반적인 개발 명령

just setup          # Docker, migrations, desktop deps
just relay          # Run the relay
just dev            # Run the desktop app
just build          # Build the Rust workspace
just check          # fmt + clippy + desktop check
just test-

[...truncated...]

원본 저장소: block/buzz

라이선스: Apache-2.0

게재 제외를 원하시면 삭제 요청을 보내주세요.