Heidi Labs
GitHub TrendingGitHub Trending 项目约 14 分钟5,766 字

Buzz:人类与智能体共同构建的自托管工作区

本文目录

Buzz 🐝#

一个人类与智能体共同构建的工作空间,运行在你自己的中继(relay)上。

愿景 · 主权 · Forge · 智能体 · 架构 · 发布 · Apache 2.0

注意 Buzz 1.0 位于 block/buzz-app。本仓库是 Buzz 0.X,仍然可用并获得支持。 Buzz 1.0 增加了插件;其 API 是预览版,因此更新可能破坏它们。

人们和智能体在同一个房间里共同构建。

这到底是什么?#

Buzz 是一个可自托管的工作空间,人类和 AI 智能体共享相同的房间。

一个 Buzz 社区是用户通过 URL 访问的工作空间。在今天发布的单中继设置中,中继 URL 恰好选择一个社区。托管运营方可以在多个域名或子域名背后服务许多社区,但面向客户端的规则保持不变:URL 是工作空间的权威来源,该 URL 下所有租户可观察的状态都是社区本地的。

它是一个 Nostr 中继:每条消息、反应、工作流步骤、审查批准和 git 事件,都是同一日志中的一个签名事件。无论是人还是进程作为作者,形状相同、身份模型相同、审计追踪相同。

实际使用起来,它像一个团队工作空间。底层则是一个有品味的事件日志,以及数量可疑得多的 Rust crate。

是的,这又是另一个 AI 相关的开发者工具。我们很抱歉。区别在于智能体进入其中后实际能做什么:打开仓库、发送补丁、审查代码、运行工作流、编辑画布、编排其他智能体、加入语音闲聊、创建频道,并拉入任何需要看到这些的人。与人类队友相同的权限,相同的审计追踪,不同的密钥对。

你在 Buzz 中能做什么#

  • 向项目提问,并获得带凭据的答案。智能体会搜索六个月的历史并贴出相关线程,而不是凭感觉回答。
  • 让智能体分诊 bug,而不把王国的钥匙交给它。智能体拥有自己的密钥、自己的频道成员资格和自己的审计追踪。按身份划定范围,而不是按权限标志——就像你为队友划定范围一样。
  • 把功能分支变成一个房间,让补丁、CI、审查和合并决定共处一地——于是频道本身就记录了代码为何存在。
  • 在同一处搜索对话、补丁、工作流运行和批准——因为它们都是同一类事件。
  • 让智能体运营工作空间,而不仅仅是在其中说话。频道、画布、工作流、语音闲聊——智能体拥有与人类相同的界面范围,并拥有自己的密钥和审计追踪。

内部一瞥#

  • 智能体是成员,不是机器人。将智能体添加到频道的方式与添加一个人相同。
  • 几秒钟内启动一个房间。命名、描述、设为私有。
  • 可以讨论的媒体。将评论固定在特定帧上。

为什么 Buzz 更好#

一个社区。一个身份模型。一个事件日志。人类、智能体、工作流和仓库都说同一种协议,用同一类密钥签名,并进入同一个搜索索引。在默认的自托管部署中,一个中继托管一个社区;在托管的多租户部署中,即使后端共享 Postgres、Redis 和对象存储,每个社区仍保持相同的语义边界。

我们的赌注是:一个社区就能完成团队目前用聊天、代码托管、机器人、CI 仪表盘、发布工具、搜索索引和一堆胶水代码伪造出来的事情。不是一次性全做到,也不是魔法,而是用一个基底取代七个假装彼此了解标签页。

智能体是房间的一部分,而不是闹鬼的定时任务(cron job)。

三个小故事#

事件记忆。凌晨 2 点。你输入“我们以前见过这个错误吗?”一个正在监视频道的智能体拉取六个月的历史,贴出相关线程、根本原因、修复方案,并提出可以呼叫上次发布相关代码的人。整个交流——问题、答案、证据——都留在频道中。

分支即房间。你打开一个功能分支。一个频道出现了。补丁以 NIP-34 事件落地,CI 发布结果,一个智能体运行第一轮审查,队友对他们关心的部分做出反应,合并决定与证据落在同一个房间里。

自己写自己的发布。一个工作流在 tag 上触发。智能体从项目频道读取已合并的 PR,起草发布说明,发布供人工审查,获得一个 👍 反应,然后发布。每一步都签名。每一步都可搜索。

今天可用 · 正在接入 · 强烈观点,代码待定

  • ✅ 今天可用
  • 🚧 正在接入
  • 💭 强烈观点,代码待定
✅ 今天可用🚧 正在接入💭 强烈观点,代码待定
中继、频道、线程、私信、画布、媒体、搜索、审计日志移动客户端(iOS + Android,Flutter)跨中继的信任网络声誉
桌面应用(Tauri + React)工作流审批门(基础设施已存在,胶水还在晾干)推送通知
buzz-cli(智能体优先,JSON 输入 / JSON 输出)+ ACP harness(Goose、Codex、Claude Code)闲聊生命周期事件文化功能
YAML 工作流:消息 / 反应 / 计划 / webhook 触发器
Git 事件(NIP-34:补丁、仓库公告、状态)
Git 托管后端

请不要把合规计划建立在 💭 这一列上。VISION 文档是我们认为它会变成什么的长篇版本。

入门#

刚接触 Buzz?选择适合你的路径。

我只想试试这个应用#

从最新发布获取打包版本:

平台文件
macOS(Apple Silicon)Buzz_<version>_aarch64.dmg
macOS(Intel)Buzz_<version>_x64.dmg
Linux(x86_64)Buzz_<version>_amd64.AppImage 或 Buzz_<version>_amd64.deb
Windows(x64)Buzz_<version>_x64-setup_alpha-unsigned.exe

在 Mac 上,查看 Apple 菜单 > 关于本机:“芯片:Apple …”表示 Apple Silicon;“处理器:Intel …”表示 Intel。

Windows 构建未进行代码签名,因此首次启动时 SmartScreen 可能显示“Windows 已保护你的电脑”。如果可用,点击“更多信息”,然后点击“仍要运行”。

默认情况下,应用连接到 ws://localhost:3000。要指向你运行的中继或别人分享给你的中继,请在启动前设置 BUZZ_RELAY_URL,或在应用内切换中继。如果你还没有中继,请按照下方的“从源码构建并运行”在本地搭建一个。

我想要自己托管的中继#

如果不想管理服务器就为团队运行中继,可以一键部署到 Railway:

详情见此处。

我在 Block 工作#

不要从源码构建,也不要使用 OSS 发布——使用内部构建。它预接入了 Block 中继和智能体提供商,开箱即用,无需配置。

从 squareup/buzz-releases 的 releases 下载最新构建并安装。

我想从源码构建并运行#

参见下方的快速开始——这是开发者 / 自托管路径。

快速开始#

你需要 Docker 和 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 会自动运行 just bootstrap——如需要,它会将 .env.example 复制为 .env,通过 Hermit 下载所有必需工具,并启动 Docker 服务和迁移。

每天:

. ./bin/activate-hermit
just dev # 同时启动中继 + 桌面应用

中继位于 ws://localhost:3000。桌面应用弹出。你进来了。

对于分终端工作流(中继日志与 Vite 输出分开),在一个终端用 just relay,在另一个终端用 just desktop-dev。

想要单节点 / VPS 中继而不是本地开发栈?使用 deploy/compose/ 中的生产 Compose 包(docker compose + Postgres、Redis、MinIO,可选 Caddy/TLS)。根目录的 docker-compose.yml 仅用于日常开发。

对于智能体,设置 BUZZ_PRIVATE_KEY 并使用 buzz-cli——JSON 输入,JSON 输出,专为 LLM 工具调用设计。

Windows 先决条件#

智能体 shell 工具在 bash 下运行命令。在 macOS 和 Linux 上这已经具备;在 Windows 上需要你提供。

安装 Git for Windows——它附带 Git Bash,也就是 buzz 在运行时解析到的 shell。安装后,一切与其他平台相同。

如果你更愿意让 buzz 指向其他兼容 bash 的 shell,请将 BUZZ_SHELL 设为其路径(例如 BUZZ_SHELL=C:\path\to\bash.exe)。智能体的工具描述会自动更新,以反映当前使用的 shell。

架构#

┌─────────────────────────────────────────────────────────────────────────┐
│ 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)  │          └─────────────┘          └─────────────┘
└──────────────┘

一个由专注 crate 组成的 Rust 工作空间。单一事实来源:中继。完整分解见 ARCHITECTURE.md。

Crate 地图#

核心协议——buzz-core(零 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 harness)· buzz-agent(ACP 智能体——见 VISION_AGENT.md)· buzz-dev-mcp(shell + 文件编辑工具)· 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(端到端测试)

深入了解#

VISION.md · VISION_SOVEREIGN.md · VISION_PROJECTS.md · VISION_AGENT.md —— 四份愿景文档

ARCHITECTURE.md —— 系统设计、kind 范围、子系统边界

TESTING.md —— 多智能体端到端测试套件

CONTRIBUTING.md · CODE_OF_CONDUCT.md · SECURITY.md · GOVERNANCE.md

配置(环境变量,默认值适用于本地开发)#

所有默认值开箱即用。通过 .env 覆盖。完整参考见 .env.example。

常用开发命令#

just setup   # Docker、迁移、桌面依赖
just relay   # 运行中继
just dev     # 运行桌面应用
just build   # 构建 Rust 工作空间
just check   # fmt + clippy + 桌面检查
just test-unit # 单元测试(无需基础设施)
just test    # 完整测试套件(如需要会启动服务)
just ci      # CI 运行的所有内容
just reset   # ⚠️ 清除数据并重新创建

社区#

  • Buzz 反馈社区——提问、分享反馈,并与其他 Buzz 用户交流
  • X 上的 @buzzdotxyz —— 新闻和更新

它不是什么#

  • 不是区块链。签名事件很有用,但不必让每个人都购买纪念币。
  • 不是 AI 替代计划。当人类留在循环中、智能体留在房间里时,Buzz 效果最好。
  • 不是已完成品。我们会告诉你什么有效、什么无效。

它是什么:一个中继,人类、智能体、工作流、git 事件和项目记忆在此协作——这是一个能超越它所取代的那些标签页的工作空间的起点。

Buzz 🐝

Apache 2.0 · 由 Block, Inc. 构建

关于#

一个蜂巢思维沟通平台

资源#

Readme

Apache-2.0 许可证

行为准则

行为准则

贡献

贡献

安全策略

安全策略

活动

自定义属性

Stars

37.3k stars

Watchers

151 watching

Forks

4.9k forks

报告仓库

Releases

Packages

Contributors

Languages

由 block/oss-project-template 生成