Buzz: 사람과 AI 에이전트가 같은 채널에서 일할 수 있도록 하는 자체 호스팅 워크스페이스

Buzz 소개

Buzz는 사람과 AI 에이전트가 같은 방을 쓰는 자체 호스팅 워크스페이스입니다. 지금 대부분의 팀은 채팅 도구와 코드 호스팅, 봇, CI 대시보드, 릴리스 도구, 검색 색인을 따로 두고 그 사이를 접착 코드로 잇습니다. 탭 일곱 개가 서로의 존재를 아는 척하는 상태에서, 어떤 결정이 왜 내려졌는지는 어느 도구에도 온전히 남지 않습니다. Buzz는 이 조각들을 하나의 기반 위로 옮겨서, 대화와 패치, 워크플로 실행, 승인, git 이벤트가 모두 같은 종류의 기록으로 남게 만듭니다.

기반은 Nostr 릴레이입니다. 메시지든 반응이든 워크플로 단계든 리뷰 승인이든 git 이벤트든, 모두 하나의 로그에 서명된 이벤트로 쌓입니다. 작성자가 사람이든 프로세스든 형태와 신원 모델, 감사 추적이 동일하다는 점이 핵심입니다. 사용자가 URL로 접근하는 작업 공간을 커뮤니티(community)라고 부르는데, 지금 배포되는 단일 릴레이 구성에서는 릴레이 URL 하나가 커뮤니티 하나를 가리킵니다. 호스팅 사업자가 여러 도메인 뒤에 여러 커뮤니티를 둘 수도 있지만, URL이 작업 공간을 결정한다는 규칙은 그대로 유지됩니다.

Buzz를 만든 곳은 Block, Inc.이며, 개발팀은 스스로 "또 하나의 AI 인접 개발자 도구" 라고 인정하면서도 차이는 에이전트가 들어와서 실제로 무엇을 할 수 있는지에 있다고 설명합니다. 저장소를 열고, 패치를 보내고, 코드를 리뷰하고, 워크플로를 돌리고, 캔버스를 편집하고, 다른 에이전트를 지휘하고, 음성 허들에 들어오고, 채널을 만들고, 봐야 할 사람을 불러오는 일까지 사람 동료와 같은 범위를 가집니다. 다른 점은 권한 플래그가 아니라 키가 다르다는 것뿐입니다.

Buzz의 구성 요소

Buzz는 릴레이 하나를 단일 진실 공급원으로 두고, 그 위아래에 클라이언트와 저장소를 붙이는 구조입니다. 사람이 쓰는 데스크톱 앱, 에이전트, 명령줄 도구가 모두 같은 프로토콜로 릴레이에 접속합니다.

릴레이는 NIP-01과 NIP-42 인증을 처리하고 채널, 다이렉트 메시지, 미디어, 워크플로, git에 대한 REST 경로와 감사 로그를 담당합니다. 그 뒤로는 이벤트와 전문 검색을 맡는 Postgres, 발행 구독과 접속 상태를 처리하는 Redis, 첨부 파일을 두는 S3 또는 MinIO가 붙습니다. 구현은 목적별로 잘게 나눈 Rust 크레이트 묶음이며, 전체 설계는 저장소의 ARCHITECTURE.md에 정리되어 있습니다.

주요 크레이트를 역할별로 보면 다음과 같습니다.

  • 핵심 프로토콜: buzz-core 는 입출력이 없는 타입과 NIP-01 필터, Schnorr 검증을 담고, buzz-relay 는 Axum 기반 웹소켓과 REST를 제공합니다.
  • 서비스: buzz-db, buzz-auth, buzz-pubsub, buzz-search, 그리고 해시 체인 로그를 담당하는 buzz-audit 로 나뉩니다.
  • 에이전트 표면: 저장소의 buzz-cli는 JSON을 넣고 JSON을 받는 에이전트 우선 CLI이고, buzz-acp 는 Goose와 Codex, Claude Code를 위한 ACP 하네스입니다. 셸과 파일 편집 도구를 제공하는 buzz-dev-mcp, YAML 자동화를 처리하는 buzz-workflow 도 여기에 속합니다.
  • git 연동: git-sign-nostrgit-credential-nostr 이 nostr 서명 기반 git을 담당합니다.

Buzz에서 에이전트가 하는 일

Buzz에서 에이전트는 봇 계정이 아니라 채널 구성원입니다. 사람을 채널에 추가하듯 에이전트를 추가하고, 에이전트는 자기 키와 자기 채널 소속, 자기 감사 추적을 가집니다. 권한을 플래그로 붙이는 대신 신원 단위로 범위를 정하는 방식이라, 동료 한 명에게 접근 권한을 주는 것과 같은 감각으로 다룰 수 있습니다.

개발팀이 예로 든 사용 장면은 세 가지입니다. 새벽에 "이 오류를 전에 본 적 있나" 라고 물으면 채널을 지켜보던 에이전트가 6개월치 기록에서 관련 스레드와 근본 원인, 수정 내역을 찾아 붙이고 마지막으로 배포한 사람을 호출할지 물어봅니다. 기능 브랜치를 열면 채널이 하나 생기고, 패치는 NIP-34 이벤트로 들어오고 CI가 결과를 남기고 에이전트가 1차 리뷰를 돌린 뒤 병합 결정이 근거와 같은 방에 남습니다. 태그를 달면 워크플로가 시작되어 에이전트가 병합된 PR을 읽고 릴리스 노트 초안을 올리고, 사람이 반응 이모지로 승인하면 배포가 진행됩니다.

미디어도 대화 대상이 됩니다. 영상 재생 화면 옆에서 특정 프레임에 고정되는 댓글을 남길 수 있습니다.

Buzz 프로젝트의 로드맵

Buzz 개발팀은 현재 프로젝트 무엇이 가능하고, 무엇이 아직 구현이 되지 않았는지를 표로 정리하여 공개하고 있습니다. 또한, 향후 목표에 대해서도 VISION.md 문서에 상세히 정리해두었습니다.

프로젝트 스스로 밝히는 경계도 분명합니다. 서명된 이벤트를 쓰지만 블록체인은 아니고, 사람을 대체하려는 계획도 아니며, 완성되지 않았다는 점을 문서에 그대로 적어 두었습니다.

Buzz 설치 및 실행 방법

앱만 먼저 써 보려면 최신 릴리스에서 macOS용 .dmg, Linux용 .AppImage 또는 .deb, Windows용 .exe 를 받으면 됩니다. 기본 접속 주소는 ws://localhost:3000 이므로, 다른 릴레이를 쓰려면 실행 전에 BUZZ_RELAY_URL 을 지정하거나 앱 안에서 릴레이를 바꿉니다.

소스에서 빌드하려면 Docker와 Hermit이 필요합니다. Hermit 대신 Rust 1.88 이상과 Node 24 이상, pnpm 10 이상, just 를 직접 갖춰도 됩니다.

git clone https://github.com/block/buzz.git && cd buzz
. ./bin/activate-hermit   # 고정된 툴체인, 첫 사용 시 자동 내려받음
just setup && just build

just setup.env.example.env 로 복사하고 필요한 도구를 받은 뒤 Docker 서비스와 마이그레이션까지 실행합니다. 이후 매일 쓰는 명령은 두 줄입니다.

. ./bin/activate-hermit
just dev   # 릴레이와 데스크톱 앱을 함께 시작

VPS에 단일 노드 릴레이를 올리려면 저장소의 deploy/compose/ 디렉토리에 있는 프로덕션용 Compose 번들을 씁니다. 최상위 docker-compose.yml 은 개발 전용입니다. 에이전트에서 접속할 때는 BUZZ_PRIVATE_KEY 를 설정하고 buzz-cli 를 사용합니다. Windows에서는 에이전트의 셸 도구가 bash 위에서 돌기 때문에 Git for Windows를 함께 설치해야 하며, 다른 bash 호환 셸을 쓰려면 BUZZ_SHELL 에 경로를 지정합니다.

Buzz의 라이선스

Buzz는 Apache License 2.0으로 공개되어 있어 개인 및 상업적 목적으로 자유롭게 사용할 수 있습니다.

:github: Buzz 프로젝트 GitHub 저장소

더 읽어보기




이 글은 GPT 모델로 정리한 글을 바탕으로 한 것으로, 원문의 내용 또는 의도와 다르게 정리된 내용이 있을 수 있습니다. 관심있는 내용이시라면 원문도 함께 참고해주세요! 읽으시면서 어색하거나 잘못된 내용을 발견하시면 덧글로 알려주시기를 부탁드립니다. :hugs:

이 도구를 직접 설치해 사용해보셨다면, :pytorch:파이토치 한국 사용자 모임:south_korea: 회원들을 위해 경험이나 팁을 댓글로 남겨주세요! :folded_hands: