# Install bruno-cli with Homebrew, Nix

CLI of the open-source IDE For exploring and testing APIs. Version 3.5.1 via Homebrew; verified 2026-07-04.

## Install

```sh
sudo av install brew:bruno-cli
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install bruno-cli
```

  Evidence: local Homebrew formula metadata

### Linux

- Nix (92%):

```sh
nix profile install nixpkgs#bruno-cli
```

  Evidence: nixpkgs package indexes: pkgs/by-name/br/bruno-cli/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

## Package facts

- **Package key:** brew:bruno-cli
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/bruno-cli>
- **Version:** 3.5.1
- **Source summary:** CLI of the open-source IDE For exploring and testing APIs
- **Homepage:** <https://www.usebruno.com/>
- **Repository:** <https://github.com/usebruno/bruno>
- **Upstream docs:** <https://docs.usebruno.com/bru-cli/overview>
- **License:** MIT
- **Source archive:** <https://registry.npmjs.org/@usebruno/cli/-/cli-3.5.1.tgz>
- **Last updated:** 2026-07-04T14:48:18Z
- **Generated:** 2026-07-08T18:08:21+00:00

## Executables

- bru (cli)
- bru (alias)

## Dependencies

- node

## Install behavior

- Post-install hook: not defined
- Bottle: available on all

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 3.5.1
- Package-manager updated: 2026-07-04
- Local data: ok
- Upstream repository: https://www.usebruno.com/
- info: Release/tag comparison is only available for GitHub repositories.
## Project history and usage

Bruno CLI is the command-line runner for Bruno, an open-source API client whose collections live as local files rather than in a hosted workspace. In package-manager terms it gives the Bruno collection format a scriptable interface: the GUI remains useful for authoring, while the `bru` executable runs requests, collections, and tests from terminals and CI systems.

### Project history

The CLI tracks the main Bruno project in the usebruno/bruno monorepo. Its changelog shows an early 0.x period adding operational features such as custom CA support, insecure TLS mode, environment-variable loading, output capture, proxy support, and authentication fixes before the 1.0.0 stable CLI release.

On 6 Feb 2024 the project changed release practice so that a new CLI version would be released with every Bruno application release. That tied the package-manager-facing `bruno-cli` artifact more closely to Bruno's desktop/API-client release cadence.

### Adoption history

Bruno CLI's adoption follows Bruno's larger appeal to developers who want API collections in git and local files instead of a cloud-synced service. The provided package facts show Homebrew and Nix packaging, which is enough to make `bru` convenient on macOS/Linux developer machines and in reproducible environments.

The official docs position the CLI for automated API testing, report generation, and CI/CD integration, making it the part of Bruno most likely to appear in build logs and package manifests.

### How it is used

Common usage is to run Bruno requests or collections from a project checkout, select environments, pass environment variables, and emit machine-readable reports such as JSON, JUnit, or HTML for test pipelines.

The CLI became more security-conscious over time: the official docs note that Bruno CLI v3.0.0 changed the default runtime from Developer Mode to Safe Mode, requiring an explicit sandbox flag for filesystem or external-package behavior.

### Why package nerds care

For package nerds, `bruno-cli` is interesting because it packages an API-client workflow as a normal Unix command. It is part of the broader shift from GUI-only API tools toward repository-native collections that can be reviewed, diffed, and executed in CI.

Its significance is not that it invented HTTP scripting, but that it makes Bruno's local collection format viable outside the desktop app, giving package managers a clean hook into API regression testing.

### Timeline

- 2023: Early 0.x CLI releases add TLS, environment, output, proxy, and authentication features.
- 2023: Bruno CLI 1.0.0 is marked as the stable release in the CLI changelog.
- 2024-02-06: The project announces that each Bruno app release will also have a matching CLI release.
- 2026: Official CLI documentation describes collection execution, report generation, CI/CD integration, and the v3.0.0 Safe Mode default.

### Related projects

- Bruno desktop app is the authoring environment and main upstream project for the CLI.
- Postman and Insomnia are adjacent API-client ecosystems; Bruno CLI occupies the package-manager-friendly lane for Bruno collections.
- Newman is a useful comparison point as the command-line runner for Postman collections.

### Sources

- <https://docs.usebruno.com/bru-cli/overview>
- <https://github.com/usebruno/bruno>
- <https://raw.githubusercontent.com/usebruno/bruno/main/packages/bruno-cli/changelog.md>
- source_facts.package-manager


## Security Notes

narrow executable package without higher-risk signals.

- **Geiger risk:** green / low
- narrow executable package without higher-risk signals


## Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.


## Configuration files

- Unix: <collection>/bruno.json, <collection>/opencollection.yml
## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** bruno-cli
- **Version Scheme:** 0
- **Revision:** 0
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** stable

## Other Package-Manager Records

- Nix - bruno-cli: normalized package name match | nixpkgs package indexes: pkgs/by-name/br/bruno-cli/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1


## Related links

- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Text processing packages](https://www.automicvault.com/pkg/text-processing-tools/) - Matched text, document, or structured-data processing metadata.
- [Developer build packages](https://www.automicvault.com/pkg/developer-build-tools/) - Matched build, compiler, generator, or developer workflow metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [node](https://www.automicvault.com/pkg/brew/node/) - Runtime dependency declared by Homebrew.
- [slumber](https://www.automicvault.com/pkg/brew/slumber/) - Shares av.db curated category or tags: api-client, api-testing, cli, developer-tools, http-client.
- [chiko](https://www.automicvault.com/pkg/brew/chiko/) - Shares av.db curated category or tags: api-client, cli, developer-tools.
- [cobo-cli](https://www.automicvault.com/pkg/brew/cobo-cli/) - Shares av.db curated category or tags: api-client, cli, developer-tools.
- [evans](https://www.automicvault.com/pkg/brew/evans/) - Shares av.db curated category or tags: api-client, cli, developer-tools.
- [flickcurl](https://www.automicvault.com/pkg/brew/flickcurl/) - Shares av.db curated category or tags: api-client, cli, developer-tools.
- [gitlab-gem](https://www.automicvault.com/pkg/brew/gitlab-gem/) - Shares av.db curated category or tags: api-client, cli, developer-tools.
- [goolabs](https://www.automicvault.com/pkg/brew/goolabs/) - Shares av.db curated category or tags: api-client, cli, developer-tools.
- [internetarchive](https://www.automicvault.com/pkg/brew/internetarchive/) - Shares av.db curated category or tags: api-client, cli, developer-tools.
- [graphqurl](https://www.automicvault.com/pkg/brew/graphqurl/) - Both packages touch the same language runtime or ecosystem. Shared terms: api, api-client, cli, client, developer.
- [httpyac](https://www.automicvault.com/pkg/brew/httpyac/) - Both packages touch the same language runtime or ecosystem. Shared terms: api, api-client, cli, client, developer.

## Combined YAML source

View the package source record on GitHub. [combined/bruno-cli.yml](https://github.com/automic-vault/db/blob/main/combined/bruno-cli.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated configuration and credential file locations
- curated package history
- package version freshness
- av.db category and tag curation
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
