首页 效率提升 Bruno:4.7 万 Star 的离线 API 客户端,接口集合跟代码一起进 Git

Bruno:4.7 万 Star 的离线 API 客户端,接口集合跟代码一起进 Git

📅 2026/9/24 👁 阅读 8 🔗 工具访问 2 次 📂 效率提升
Bruno:4.7 万 Star 的离线 API 客户端,接口集合跟代码一起进 Git

工具地址

https://github.com/usebruno/bruno

🚀 访问工具

团队里应该都有这么个情况:接口文档和接口调试记录散在各个人的 Postman 账号里,谁改了一个参数、谁加了个环境变量,没人知道。等到某天要交接,或者要复现一条线上报错,才发现那些请求根本不在代码仓库里,而账号是绑在个人邮箱上的。

Bruno 就是想解决这个问题的。它把接口集合变成一堆纯文本文件,跟你的代码放在同一个仓库里,一起提交、一起评审。

Bruno 封面

是什么

Bruno 是一个开源的 API 客户端,定位很明确——Postman 和 Insomnia 的轻量替代品。仓库当前 47,140 个 Star、2,915 个 Fork,486 位贡献者,MIT 协议,最新版本 v4.2.0 发布于 2026 年 9 月 23 日,也就是昨天,同一天仓库还在提交代码。

它和前两者的根本差别在存储方式。Bruno 把每个请求存成一个 .bru 文件,用的是一种自研的纯文本标记语法,直接放在你指定的文件夹里。这意味着接口集合能像源码一样被 Git 管理——改了哪一行看得清清楚楚,冲突能手动解,Code Review 的时候可以逐字段评审。

官方在 README 里写了一句很硬的话:Bruno 只做离线,永远不会有云同步,这是他们的长期立场,没有改变计划。你可以说它保守,但数据留在自己设备上这件事,确实帮不少人省掉了合规上的解释工作。

Bruno 官网首页

Bruno 官网首页,副标题直接写着"Collections stored as code. Works with Git, your IDE, and your agents."

它比 Postman 好在哪儿

最值钱的一条就是前面说的纯文本存储。Postman 的集合也存在云端,导出成 JSON 是一大坨,两个人同时改一个请求,合并的时候基本靠肉眼找。Bruno 一个请求一个文件,粒度细,diff 干净,冲突范围小。这不是体验层面的"顺手一点",而是"能不能进流水线"的区别。

第二条是离线优先带来的确定性。没有登录、没有云端账号、没有哪天定价调整你就得连夜选替代品的问题。内网环境、隔离网络里也能正常用。这一点对做金融、政务这类项目的团队是刚需。

第三条是命令行能进 CI。Bruno CLI 在 npm 上,装完就能把整个接口集合当回归测试跑。bru run 加个环境变量,接口冒烟测试就不用单独写一套脚本了——你的调试集合本身就是测试用例,改接口的时候两边一起改,不会漂移。

第四条是协议覆盖够广。REST 不用说了,GraphQL、WebSocket、SSE、gRPC 都支持,还能从 OpenAPI 规范直接导入。大多数团队不会只用一个协议,工具少装一个是一个。

怎么装、怎么用

桌面端有 Mac、Windows、Linux 的安装包,包管理器基本都覆盖了:

# macOS
brew install bruno

# Windows
winget install Bruno.Bruno
choco install bruno
scoop bucket add extras && scoop install bruno

# Linux
snap install bruno
flatpak install com.usebruno.Bruno
yay -S bruno

命令行版本走 npm,适合放进自动化流程:

npm install -g @usebruno/cli
bru run --env prod

用起来的心智模型不复杂:新建一个 Collection 文件夹,把它放进你的项目仓库(或者单独建一个接口仓库),写请求,改配置,然后照常 git commit。环境变量也存在文件夹里,但敏感值记得用仓库的 secret 机制或者本地覆盖文件顶掉,别把生产 token 提交上去。

另外它刚集成了 VS Code 插件,接口集合能在编辑器里直接调试;仓库 Release 里能看到 v4.2.0 这一版,更新节奏挺稳,从 v4.0 到 v4.2 也就几个月。

Bruno 仓库首页

Bruno 的仓库首页。packages 目录下是各端实现,tests 里跑的是 Playwright 端到端用例,最新一次提交就在几小时前

不足也得说清楚

第一,团队协作你要自己搭。Postman 的云端共享虽然让人不放心,但它确实开箱就有。Bruno 走 Git 路线,等于把协作这件事外包给了你现有的代码托管流程——对已经在用 Git Flow 的团队是加分,对习惯点开客户端就共享的团队,前期会有摩擦,得先把接口仓库的规范和权限理清楚。

第二,插件和应用市场生态比 Postman 薄。Postman 有大量第三方集成和现成的测试模板,Bruno 这块还在长。你如果是重度依赖外部集成的工作流,得先确认常用的那几个有没有对应方案。

第三,商业版边界要提前看。Bruno 把大部分功能开源了,但也有付费档(企业协议、SSO、RBAC 之类)。个人和中小团队用社区版基本够,大企业要想清楚哪些能力必须买。

第四,1,850 个未关闭 Issue,功能请求堆得不少。项目活跃是好事,但也说明有些需求还没落地,别默认你想要的功能一定有。

跟同类怎么比

Postman 的优势是生态和协作开箱即用,劣势是重、云端绑定、以及你永远要担心它的商业策略变化。Insomnia 介于两者之间,但也被收购过,路线调整过一次,历史包袱在。

Hoppscotch 是另一个开源选项,Web 版体验很轻,但它的重心偏在线使用,跟 Bruno 的"文件在本地"不是同一个取向。你要的是纯本地、纯文件、纯 Git,Bruno 更对路。

还有一点值得提:Bruno 现在把自己往"跟 AI Agent 协作"的方向上也推了一把,仓库和官网上都能看到这类表述。接口集合是纯文本这件事,对让编码助手读懂并生成请求确实友好——这是个顺带的好处,不是它的主线卖点。

总结一句:如果你受够了接口配置和代码分家、受够了把接口测试单独维护一套,Bruno 值得花半小时试一下。迁移成本主要在"把 Postman 集合导进来再整理一遍"这一步,之后就是正常提代码的流程。

GitHub:https://github.com/usebruno/bruno
官方网站:https://www.usebruno.com/
文档:https://docs.usebruno.com/

标签:#Bruno #API客户端 #Postman替代 #接口测试 #Git管理 #开发者工具 #离线优先

你们团队的接口集合现在是放在工具账号里,还是跟代码放在一个仓库里?

💬 评论区 (0 条评论)

暂无评论,快来发表第一条评论吧!

📤 分享这篇文章

📌 相关推荐

微信扫码分享

打开微信扫一扫